从SSRS日期参数中删除时间

时间:2015-08-07 12:37:55

标签: tsql reporting-services parameters casting

  

我想从参数选择下拉列表中删除时间,而不是引用参数

的单元格

我有一个简单的参数weekEndingDate,由dataset

提供
SELECT TOP (8) Convert(Date,FullDate, 101) AS FullDate
FROM DimDate
WHERE (DayNameOfWeek = 'Friday') AND (CAST(FullDate AS Date) < CAST(GETDATE() AS Date))
ORDER BY FullDate DESC

我也试过

SELECT TOP (8) CAST(FullDate as Date) AS FullDate
FROM DimDate
WHERE (DayNameOfWeek = 'Friday') AND (CAST(FullDate AS Date) < CAST(GETDATE() AS Date))
ORDER BY FullDate DESC
  

问题是参数选项仍然显示时间。

如果我在查询设计器中执行查询,我会得到基本正确的输出(转换给我m/dd/yyyy,而不是mm/dd/yyyy),这对于强制转换和转换是正确的,但参数下拉仍然有时间,如果我把参数放入一个单元格,它也有时间

  

我删除了.data文件

     

我删除并重新创建了参数,但没有部署或重建或没有参数的任何内容,我删除并立即重新创建然后点击预览

     

我已尝试过CAST和CONVERT

     

我尝试过预览,运行和部署报告

在所有情况下,时间仍然存在,我傻眼了,所有人都很感激,我很乐意澄清任何事情

2 个答案:

答案 0 :(得分:3)

尝试将参数数据类型设置为文本而不是日期/时间。

还需要更改数据集以返回varchar

最终数据集代码:

SELECT TOP (8) CAST(CONVERT(Date, FullDate, 101)as VARCHAR) AS FullDate
FROM DimDate
WHERE (DayNameOfWeek = 'Friday') AND (CAST(FullDate AS Date) < CAST(GETDATE() AS Date))
ORDER BY FullDate DESC

答案 1 :(得分:0)

来自:https://social.msdn.microsoft.com/Forums/sqlserver/en-US/95d23f74-d7d3-41e1-8538-dbeff6e65ee2/ssrs-2008-r2-parameter-datetime-how-to-hide-time

  1. 在SQL Server Business Intelligence Development Studio或Report Builder3.0中打开报表。

  2. 单击“设计”选项卡,右键单击将显示@Time参数的文本框,选择表达式。

  3. 清除表达式对话框,然后输入:
    = FormatDateTime(参数!Timer.Value,DateFormat.ShortDate)或= FormatDateTime(参数!Timer.Value,2)。