【发布时间】:2018-11-25 10:56:16
【问题描述】:
我有一个 SSRS,其中包含游戏。在每场比赛中,有多个球队,然后将他们分为进攻球队和防守球队。所以有一个游戏,然后是游戏细节。其中有多个团队,然后是有关团队的信息,无论他们是进攻型还是防守型。然后,如果他们被指定为攻击性的,他们将拥有攻击性记录和 ID。如果有防守,他们会有防守记录和ID。
我设置了一个基于存储过程的主报告,其中包含游戏和主要游戏详细信息。然后我为团队创建了一个子报告,其中包含团队的详细信息,无论他们是进攻型还是防守型。这是一个游戏团队的记录。每场比赛记录多个。所以层次结构和报表/子报表设置如下:
- 游戏(存储的 proc 参数作为 GID 传递 - 游戏 ID)
- 游戏团队(具有相同 GID 参数的存储过程)
- 游戏团队 - 进攻(使用相同 GID 参数存储的过程)
- 游戏团队 - 防御(具有相同 GID 参数的存储过程)
在游戏报告中,我有一个 tablix,其中包含 fields ,然后是一个额外的 tablix 行,其中合并了列。我在其中放置了一个子报表对象,并将其设置为 Game Teams 报表对象。
子报表属性具有参数集 Name GID(匹配子报表参数名称)和 value = ID(即 GID 字段)。
该游戏团队报告有一个带有详细信息字段的 tablix,然后是 2 个额外的 tablix 行,每行都包含合并的列。一种将进攻性报告设置在子报告对象中,另一种将防御性报告设置在子报告对象中。它们中的每一个都具有来自其存储过程的相同 GID 参数,然后我设置了一个 GTID 参数,并将 Game Teams 报告中的参数链接到 Game Teams 数据集中的 GTID 字段。
我可以运行报告,但链接似乎无法正确提取数据。我一直在研究这个,但它太令人困惑了。
当我在 Game Teams - Offensive/Defensive 报告中设置 GTID 报告参数时,我看不到我如何告诉报告当此参数链接到 Game Teams 报告时,子报告应该过滤数据集结果到 GTID 字段。
我希望我说的是有道理的。这是我第一次尝试做一个 SSRS 子报表,它是如此令人困惑。我在水晶报告中做过,在过去,在 Access 中。您将字段链接到字段。我不明白你为什么不在 SSRS 中这样做。
【问题讨论】:
标签: sql-server reporting-services parameter-passing ssrs-2012 subreport