Ssrs 2008 日期和时间的单独参数

Ssrs 2008 日期和时间的单独参数,ssrs-2008,Ssrs 2008,我想在我的报告中使用一个参数表示日期,另一个参数表示时间,如下所示。 开始时间[16/01/2012][12.00 am] 有人能帮我吗?确定这是一个多步骤的过程: 将文本变量设置为“日期”作为变量值并提示 将左窗格中的“默认值”设置为“1/16/2012” 将文本变量设置为“TIME”作为变量值并提示 将左窗格中的“默认值”设置为“00:00” 设置一个数据集“AvailableDateTime”,将两者合并为一个合法的日期时间字段: SELECT CAST(@Date + '

我想在我的报告中使用一个参数表示日期,另一个参数表示时间,如下所示。 开始时间
[16/01/2012][12.00 am]


有人能帮我吗?

确定这是一个多步骤的过程:

  • 将文本变量设置为“日期”作为变量值并提示
  • 将左窗格中的“默认值”设置为“1/16/2012”
  • 将文本变量设置为“TIME”作为变量值并提示
  • 将左窗格中的“默认值”设置为“00:00”
  • 设置一个数据集“AvailableDateTime”,将两者合并为一个合法的日期时间字段:

    SELECT        CAST(@Date + ' ' + @Time AS DateTime) AS Datetime
    
  • 将DATETIME的第三个变量设置为“DATETIME”作为变量值并提示

  • 将此变量设置为使用属性左窗格中的“可用值”作为“从查询中获取值”。使用步骤5中的数据集
  • 现在,您已经为数据和时间设置了单独的字段

    进一步考虑避免用户输入错误。您可能希望将第一个变量绑定为只能从“可用值”中设置的值或查询中选择。问题在于,如果一个用户胖手指的日期或时间,它将不会运行,因为系统只是试图结合两个字符串,并使其日期时间。您可能希望直接从getgo查询中列出值

    编辑以更改前两个变量:

  • 您可以将第一个变量设置为datetime,从而为最终用户提供日历
  • 您可以设置第二个数据集以获取最终用户的可用时间:

    declare @time table ( tm int)
    
    declare @cursor int = 0
    
    while @cursor <= 23
    Begin
        insert into @time values (@cursor)
    
        set @cursor += 1
    End
    
    select cast(CAST(tm as varchar) + ':00' as time) as HourOfTheDay
    from @time
    
    declare@time table(tm int)
    声明@cursor int=0
    
    正如我在评论中所说,@cursor,
    SSRS
    不允许为
    日期
    时间
    设置单独的参数。 它只有一个参数
    Date/Time

    我看你有两个选择

    添加文本参数并将其视为时间。然后你就可以做了 一些验证取决于您使用的技术
  • 解决这个问题的另一种方法是创建一个可能的列表 价值观例如,您可以选择
    Integer
    type,然后创建一个列表
    可用值的数量
    。(见图片)

  • 你会硼酸吗?您想在报表中有两个字段或作为参数传递?我想使用两个参数,第一个用于日期,第二个用于时间。我不会对参数使用任何数据集。对于日期,它类似于日历,时间类似于00.00、01.00、02.00等,并且还希望隐藏时间参数标签。有可能吗?不幸的是,没有。我将添加一个答案,以便您可以查看您的选项。非常感谢您的回复。但是我想把这些参数当作日期时间选择器来处理。这些参数将没有数据集。那怎么可能呢?只需为前两个选项设置不同的数据类型,然后选择它们。将第一个设置为datetime,然后它将应用日历。将第二个设置为text或int,如果需要,可以首先验证数字。您可以在SQL中设置while循环来选择所有可能的小时数,然后绑定到该小时数。您可以使用左窗格绑定一个变量,该窗格声明“可用值”>“从查询中获取值”。我会更新我的例子给你信息。