【发布时间】:2017-09-08 09:56:18
【问题描述】:
我有一个程序在 SQL db 中填充 2 个表,我们称它们为 tUser 和 tItems。
tItems 将包含 3 行带有 piece 字段的行,而tUser 将包含 1 行带有 totalNoOfPieces 字段的行。
我在 MS Report Builder 3.0 中创建了一个报告,显示我需要的任何内容,将这两个表都添加到我的数据集中,其中一个表达式应该使用上述字段显示 Piece 1 of 3。
我正在使用
=CStr(First(Fields!piece.Value, "DataSet1")) + " of " + CStr(First(Fields!totalNoOfPieces.Value, "DataSet1"))
我将如何让 RB 为我生成 totalNoOfPieces 相同的报告,其中唯一改变的是 Piece x of y 部分?
(我想我要问的是如何做到这一点,所以我得到了 3 份代表报告
SELECT * FROM tItems
INNER JOIN tUser ON tItems.ID=tUser.ID
在那些报告中)
编辑:我应该指定,我知道我可以添加一个参数并使可用值成为SELECT piece FROM tItems,但我想知道如何为所有可用值自动生成报告。
【问题讨论】:
-
您的意思是您希望报告文件以编程方式生成,因此有单独的 RDL 文件,或者您只是希望报告本身具有用于不同数据的多个部分?跨度>
-
@Rich 我的意思是我希望报告是 3 个相同的部分,但参数已更改,可以在同一个文件中。就像我有一个值为 1、2 和 3 的片段的参数一样,我想获得具有更改该参数的 3 个相同部分的报告。
-
您想要三个部分,还是只想要一个部分,具体取决于用户输入的参数?如果您想要三个部分,请运行您在问题中指定的查询。您可以制作一个因piece.Value 而异的“列表”,并在其中为每个piece.Value 创建一个表格。如果您只想要一个部分,则需要创建一个 SSRS 参数,向用户询问piece.value,以及来自不同部分的可用值。
-
@Rich 也许这会澄清更多:这就是我点击运行时得到的:i.imgur.com/4uumd2g.jpg;这是我点击运行时想要得到的:i.imgur.com/0dgKJYl.jpg - 当然总数取决于实际有多少。
-
查看在报表上使用列表(它的另一个控件,如表格或矩阵),其中列出了不同的部分。然后在列表中,包括您当前的视觉内容。你不再需要用户参数了。
标签: sql-server reporting-services reportbuilder3.0