【发布时间】:2019-01-22 15:50:32
【问题描述】:
这是从数据库返回的数据
一个季节的数据样本(报告返回两个值):
您可以看到分组,按季节、剧院然后表演编号,最后我们有收入和门票列。
SSRS 报告包含三个级别的分组。 Pkg(对以下内容进行分组的另一个 ID)、场地——场地列和 perf_desc——链接到 perf_no 的描述列。
看起来像这样——
我需要做的是获取每个 Performance 的收入列(一个唯一值)并将其返回到单独的列中 - 所以我使用这个公式。
sum(Max(Fields!perf_tix.Value, "perf_desc"))
这很好用,为我提供了每个性能的总独特价值——并按 pkg 级别总结它们。
问题是我需要按季节提取数据。 我创建了一个单独的列,如下所示
它是黄色的,因为它是不可见的并且在其他地方被引用。但表达式是如果季节值 = 参数(传递的季节值) - 然后基本上拉出每个 tix 值的总和并将它们相加。这在下一行也很有效 - pkg 存在分组的行 - 在我的情况下为浅蓝色。
=iif(Fields!season.Value = Parameters!season.Value, Sum(Max(Fields!perf_tix.Value, "perf_desc")), 0)
但是,上面的行 - 父/标题行给了我两个季节值的总和。基本上全部加起来。这不是我想要的,也是为什么要这样做。季节值不等于第二个季节值的传递参数,所以为什么要将其添加到分组值中。
我该如何解决这个问题?
【问题讨论】:
-
您可以发布报告 XML 吗?否则,很难知道您是如何对报告进行分组的。如果您右键单击 .rdl 文件,您可以将其作为文本打开以复制 XML。
-
这是一个巨大的,但请持有一个,我会看看我是否可以拉出适当的部分。 (此模块/部分是报告中的 7 个模块/部分之一)。
-
@aduguid 你能准确地告诉我你在寻找什么 xml 文件超过 1000 页。我应该拉哪个部分?
标签: tsql reporting-services group-by aggregate ssrs-2008-r2