[英]Creating time parameter in SSMS 2016 for SSRS report
I'm trying to create a SSRS report that allows users to search work orders by time range in addition to date.我正在尝试创建一个 SSRS 报告,该报告允许用户除日期外按时间范围搜索工作订单。 For example: requests from 5/1/20-5/27/20 that took place between 5:00 pm and 7:00 pm Below is my stored procedure from SSMS 2016, I commented out the time parameters since they're not working.例如:从 5/1/20-5/27/20 下午 5:00 到 7:00 之间发生的请求 下面是我在 SSMS 2016 中的存储过程,我注释掉了时间参数,因为它们不起作用. This produces the unrefined data I need and the date parameters work, it's the time parameters I'm having issues with.这会产生我需要的未精炼数据并且日期参数有效,这是我遇到问题的时间参数。
@STARTDATE DATE,
@ENDDATE DATE
--@STARTTIME TIME,
--@ENDTIME TIME
AS
SELECT
[PROBLEMCODE]
,FORMAT([DATETIMEINIT], 'yyyy-MM-dd') AS 'DATE'
,FORMAT([DATETIMEINIT], 'hh:mm tt') AS 'TIME'
,[STATUS]
FROM [Cityworks].[azteca].[REQUEST]
WHERE REQCATEGORY IN ('WATER', 'SEWER')
AND [DATETIMEINIT] BETWEEN @STARTDATE AND @ENDDATE
--AND FORMAT([DATETIMEINIT], 'HH:mm') BETWEEN @STARTTIME AND @ENDTIME;
This is my first time posting, so I hope all that made sense!这是我第一次发帖,所以我希望一切都有意义! Thank you for your help!谢谢您的帮助!
Like I said, assuming that DATETIMEINIT
is a datetime
/ datetime2
/ datetimeoffset
:就像我说的,假设DATETIMEINIT
是datetime
/ datetime2
/ datetimeoffset
:
CREATE dbo.YourProc @StartDate date, @EndDate DATE --Or datetime2, etc, depending on requirement
AS
BEGIN
SELECT [PROBLEMCODE],
DATETIMEINIT,
[STATUS]
FROM [Cityworks].[azteca].[REQUEST]
WHERE REQCATEGORY IN ('WATER', 'SEWER')
AND [DATETIMEINIT] >= @STARTDATE
AND DATETIMEINIT < @ENDDATE;
END;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.