在ssms 2016中为ssrs报表创建时间参数

lrpiutwd  于 2021-08-13  发布在  Java
关注(0)|答案(1)|浏览(318)

我正在尝试创建一个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;

这是我第一次发帖,所以我希望这一切都有意义!谢谢你的帮助!

shyt4zoc

shyt4zoc1#

就像我说的,假设 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;

相关问题