在 SSRS 中。我正在尝试创建一个 SSRS 报告,该报告为每行数据创建一个新页面,并为每页插入一个相同的模板

In SSRS. I am trying to create a SSRS report that creates a new page per row of data and inserts into an identical template per each page

在 SSRS 中。我正在尝试创建一个 SSRS 报告,该报告为共享数据集中查询的每一行数据创建一个新页面。然后它将在文本框下插入值。每个页面上的模板都相同。我将如何具体地做到这一点?我的最终目标是生成 PDF 格式的报告,在每个 header/text 标题下的模板中插入数据,并为每个 record/row 数据创建一个新的 page/template。

这里有两个主要选项。

选项 1:行组 创建一个行组,该组按使您的记录唯一的内容(可能是 ID 列或类似列)进行分组。

在该行组中添加您需要放置所有文本框的行数。

在行组属性中将分页符设置为 "between each instance"

选项 2:子报告 该方法有点冗长,但我发现它更容易维护。

创建接受标识单个记录的参数的报告。例如,如果每条记录都有一个唯一的 ID,例如

ID    FirstName    LastName
1     Dave         Smith
2     Bob          Jones
3     Mary         Scary

然后创建一个接受 ID 作为参数的报告。

您的数据集查询类似于

SELECT * FROM myTable WHERE ID = @ID

根据需要构建报告,以便生成 1 条记录的报告。

测试并正常工作后,创建一个新的 'master' 报告。

添加一个数据集查询,returns 您要报告的记录。在我们的简单示例中,这可能类似于

SELECT ID FROM myTable

将 table 添加到您的报告并将其数据集 属性 设置为您刚刚创建的数据集。 接下来,在第一个单元格中 table 的详细信息行上,右键单击并选择 "Insert => Subreport"。

右键单击子报表占位符并将子报表设置为指向我们之前创建的子报表。在子报表属性的参数选项卡上,单击 "add" 并在左侧选择参数名称。在右侧 "value" select 数据集中的 ID 列。

您可以删除任何空白 rows/columns,应该就是这样。

在详细信息行组中,将分页符设置为 "between each instance"

报表运行时,每条记录生成一行,并且在每一行中,将为每条记录生成一个子报表副本。