在SSMS 2016中为SSRS报告创建时间参数

问题描述 投票:1回答:1

我正在尝试创建一个SSRS报告,该报告允许用户除日期外还按时间范围搜索工作订单。例如:从5/1 / 20-5 / 27/20发出的请求发生在下午5:00之间。下午7:00以下是我来自SSMS 2016的存储过程,由于它们不起作用,我注释了时间参数。这会产生我需要的未精炼的数据,并且日期参数起作用,这是我遇到问题的时间参数。

@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;

这是我第一次发布,所以我希望所有这些都有意义!谢谢您的帮助!

sql sql-server sql-server-2016
1个回答
0
投票

[就像我说的,假设DATETIMEINITdatetime /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;
© www.soinside.com 2019 - 2024. All rights reserved.