0

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

我现在要解决的问题是根据我的数据集的结果创建新选项卡,但在网上找不到任何好的答案。

最简单的例子是为每一年的数据创建一个新选项卡,所以现在我们在 2017 年,我希望报告会为 2017 年的数据添加一个新选项卡(这只是一个假设示例)。

这在 SSRS-2014 中是否可行,还是每次我想要一个新标签时都必须接受手动更新/添加?

4

2 回答 2

6

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

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

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

如果您的数据返回超过一年的信息,则在导出到 Excel 后,您每年将获得一张表。

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

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

现在床单应该标有年份。

于 2017-01-17T22:24:27.300 回答
0

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

如果您的组是动态的,那么工作表的数量也将如此。

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

于 2017-01-17T22:22:50.567 回答