2

我正在为 Server 2008 R2 运行 SSRS 并在 Report Builder 3.0 中创建报告

我有一份名为缺失周数的报告,它显示了一年中我们公司缺少财务报表的周数。现在,报告在报告的单独行中显示了所有缺少的周,如下所示:

Group  Cmp_code  town      Owner    Year  Week
001    004       townname  mr ozzy  2012  50
                                          52
                                    2013  25
                                          26
       005       townname  mr bark  2013  32
                                          33
002    235       townname  mr woof  2013  17
ETC..

是否可以让该组和 cmp_code 的所有周显示在同一行中?

Group  Cmp_code  town      Owner    Year  Week
001    004       townname  mr ozzy  2012  50, 52
                                    2013  25, 26, etc...
       005       townname  mr bark  2013  32, 33, etc...
002    235       townname  mr woof  2013  17

理想情况下,我想在 SSRS 中完成此操作,而不是更改我在 sql server 上所做的事情。

4

2 回答 2

2

您可以使用LookupSet函数来帮助解决这个问题。

这是我的测试数据集:

在此处输入图像描述

我添加了一个调用CmpYear数据集的计算字段,其表达式为:

=Fields!Cmp_code.Value & CStr(Fields!Year.Value)

稍后我们将使用它。

现在,制作您的报告表:

在此处输入图像描述

您可以看到有基于GroupCmp_code的行组Year。我假设townOwner基于Cmp_code.

最重要的部分是 的表达式Week

=Join(LookupSet(Fields!CmpYear.Value, Fields!CmpYear.Value, Fields!Week.Value, "DataSet1")
  , ",")

由于我们对特定公司/年份组合的所有周感兴趣,我们使用基于这些的计算字段作为查找键 - 这LookupSet将返回特定公司/年份组中所有周的数组,然后我们Join使用将数组转换为分隔列表:

在此处输入图像描述

在我看来还不错。当然,您可能需要对基础数据稍作更改,但希望这能给您一些有用的想法。

于 2013-09-27T15:00:27.233 回答
0

Create a column group on the week.

enter image description here

于 2013-09-27T14:44:04.603 回答