SSRS动态创建选项卡

时间:2017-01-17 22:01:18

标签: reporting-services tabs ssrs-2014

我创建了许多带有多个标签的SSRS报告,并且能够使用给定Tablix的属性窗口的分页符/页面名称部分随意命名标签。

我现在要解决的问题是,无法在网上找到任何好的答案,就是根据我的数据集结果创建新的标签。

最简单的例子是每年数据的新标签,所以现在我们在2017年,我希望报告添加到2017年数据的新标签中(这只是一个假设的例子)。 / p>

这是否可以在SSRS-2014中使用,或者每次我想要新标签时是否必须满足手动更新/添加?

2 个答案:

答案 0 :(得分:4)

你可以这样做。您需要做的是将报表正文中的控件放入List控件。在该列表控件的“详细信息”组属性中,按年份分组,并将其设置为每个组之间的分页符。

基本步骤在下面的答案中。

  1. 创建一个空体的新报告。
  2. 添加所需的数据源,参数和数据集。确保在主数据集中包含Year。
  3. 将一个List对象添加到正文中。将其从工具箱拖放到正文中。
  4. 将列表的数据集设置为包含年份的主数据。
  5. 在Visual Studio报表设计器的“行组”窗格中,右键单击“详细信息”行,然后选择“组属性”。在“常规”页面上,单击“组表达式”下的“添加”按钮,从下拉组中选择Year。这假设您在数据中得到了这个。
  6. 在同一个对话框中,转到“分页符”页面并选中“组的每个实例之间”选项。单击“确定”。
  7. 在列表中添加Tablix。这将显示您的数据。
  8. 向Tablix添加一些字段。
  9. 运行报告。
  10. 如果您的数据在一年多的时间内返回信息,则在导出到Excel后,您每年都会有一张表。

    要设置工作表标签,请在“列表详细信息属性”窗格上设置PageName属性。

    1. 单击“列表控件”
    2. 在Visual Studio报表设计器的“行组”窗格中,单击“详细信息”行
    3. 在“属性”窗格中查找“页面名称”属性,并将表达式设置为数据集=Fields!Year.Value
    4. 中的“年”值

      现在表格应标有年份。

答案 1 :(得分:0)

Per alejandro zuleta的评论,将所需的组属性设置为组的每个实例之间的分页符,当报表呈现为excel时,它应将其解释为分页符。

如果您的论坛是动态的,那么张数也是如此。

您还可以考虑使用嵌套表(另一个表中的一个表),其中“父”表没有标题,单个组(和单元格)控制您的分页。例如;在您的假设中,您可以将分组设置为= YEAR(fields!date.Value)。然后“子”表包含组成报告的标题和组。