控制用于开始和结束日期拣配的SSRS ReportViewer的UI

时间:2011-06-20 15:31:46

标签: asp.net reporting-services reportviewer

我有一种情况,我希望用户输入报告数据的开始日期和结束日期。此外,应该有一个下拉列表,允许用户选择以下之一:

  • 过去7天
  • 最近14天
  • 过去30天

如果用户选择其中一个值,那么日期选择器应调整那些值吗?我无法弄清楚如何处理这个问题。任何人都有任何想法。

2 个答案:

答案 0 :(得分:1)

这不可能仅来自SSRS内部。但是,您仍然可以通过一些额外的工作来实现目标。这里有一些伪代码让你去。这种技术很有效,我们经常在我们的组织中使用它。

  1. 在SSRS中,隐藏报告参数
  2. 创建一个新的空白HTML / ASPX页面
  3. 仅使用HTML,创建您自己的数据采集器和自定义“最近7天”下拉列表。
  4. 在客户端上使用Javascript / jQuery来处理您的自定义逻辑。
  5. 在页面上放置“生成报告”按钮。
  6. 在页面上插入隐藏的iFrame
  7. 当用户点击“生成报告”时,执行HTTP POST传递URL中的报告参数(类似http://server/reportserver?/dir/Report&rs:Command=Render&Parm1=VALUE1&Parm1=VALUE2&Parm1=VALUE3
  8. 在iFrame中显示报告
  9. 您的用户不会知道差异,这样您就可以完全控制报告参数的布局和显示。

答案 1 :(得分:1)

您可以在SSRS中执行此操作。不太好但可以接受。 让第一个参数成为有两个选项的选择列表。   选择日期或最近X天。   将下一个参数作为开始日期。   第三个参数是另一个选择列表。它可以是日期列表,也可以是数字列表,具体取决于他们在开头做出的选择。

另一种方法是向用户显示两个报告。一个具有开放日期范围,另一个具有预定义的日期选择列表。这些是链接报告,它们调用相同的基础报告但显示不同的参数。这是我为这样的用户请求采取的方法。