我正在学习SSRS,所以这可能是一个非常简单的解决方案。我有一堆报告被重建以匹配一些旧的Access报告。对于每个报告,我们必须能够运行Current,Last,Next或Adhoc日期。如果用户选择Adhoc然后显示Adhoc选择的开始日期和结束日期的参数选择,是否有一种简单的方法?现在,我有人选择当前,然后去投入日期。
WHERE (:AGNT='--AllNoFilter--' OR AGNT =:AGNT)
AND (:DateRunOption <> 'CM' OR TO_CHAR(MONTH_END_DT, 'Month YYYY') = TO_CHAR(CURRENT_DATE, 'Month YYYY'))
AND (:DateRunOption <> 'LM' OR TO_CHAR(MONTH_END_DT, 'Month YYYY') = TO_CHAR(ADD_MONTHS(CURRENT_DATE, -1), 'Month YYYY'))
AND (:DateRunOption <> 'AD' OR MONTH_END_DT>= :BeginDateFrom)
AND (:DateRunOption <> 'AD' OR MONTH_END_DT<= :BeginDateTo)
感谢您提供的任何帮助
答案 0 :(得分:0)
我使用存储过程来处理日期范围参数。每个报告的下拉列表都提供“上个月”或“前7天”等动态范围。其中一个选项是“特定日期”,如果用户选择它,则需要取消选中“开始日期”和“结束日期”参数旁边的“空”框并填写它们。验证是通过存储过程完成的,只是抛出如果提供动态范围和特定日期,则为描述性错误。
答案 1 :(得分:0)
您可以在Reporting Services中使用级联参数。
您还可以指定参数是否具有默认值,甚至可以使用查询来指定默认值。
您可以将'日期运行类型'作为下拉列表,然后显示两个日期,其中一个日期默认为NULL。
或者,如果用户愿意,您可以将文本字段转换为日期。