1

我创建了一个报告,它应该使用 tablix 对数据进行分组,如下所示:

Region  |  State  |  Customer  |  CustomerKey | Status
North   | NY      |  Bob       |  111         | VIP
        |         |  Mary      |  112         | VIP
        | MA      |  Bob       |  111         | Regular
        |         |  Tim       |  113         | Regular
East    | MD      |  Greg      |  114         | VIP
        | VA      |  Bob       |  111         | VIP
West    | CA      |  Greg      |  114         | Regular
        |         |  Mary      |  112         | VIP
        |         |  Sean      |  115         | Regular
        | WA      |  Sean      |  115         | VIP

这相对容易,因为我使用具有所有适当字段和关系的视图来简化 tablix 中的分组。我只遇到了我的 VIP 客户的问题。在视图中,具有 VIP 身份的客户也具有与普通身份相同的重复记录。例如,数据存储如下:

Region  |  State  |  Customer  |  CustomerKey | Status
North   | NY      |  Bob       |  111         | VIP
North   | NY      |  Bob       |  111         | Regular
North   | NY      |  Mary      |  112         | VIP
North   | NY      |  Mary      |  112         | Regular
North   | MA      |  Bob       |  111         | Regular
North   | MA      |  Tim       |  113         | Regular
East    | MD      |  Greg      |  114         | VIP
East    | MD      |  Greg      |  114         | Regular
East    | VA      |  Bob       |  111         | VIP
East    | VA      |  Bob       |  111         | Regular
West    | CA      |  Greg      |  114         | Regular
West    | CA      |  Mary      |  112         | VIP
West    | CA      |  Mary      |  112         | Regular
West    | CA      |  Sean      |  115         | Regular
West    | WA      |  Sean      |  115         | VIP
West    | WA      |  Sean      |  115         | Regular

因此,我的 SSRS 报告显示数据如下:

Region  |  State  |  Customer  |  CustomerKey | Status
North   | NY      |  Bob       |  111         | VIP
        |         |            |              | Regular
        |         |  Mary      |  112         | VIP
        |         |            |              | Regular
        | MA      |  Bob       |  111         | Regular
        |         |  Tim       |  113         | Regular
East    | MD      |  Greg      |  114         | VIP
        |         |            |              | Regular
        | VA      |  Bob       |  111         | VIP
        |         |            |              | Regular
West    | CA      |  Greg      |  114         | Regular
        |         |  Mary      |  112         | VIP
        |         |            |              | Regular
        |         |  Sean      |  115         | Regular
        | WA      |  Sean      |  115         | VIP
        |         |            |              | Regular

如果用户具有 VIP 状态,我不关心他们的常规状态记录(针对该特定区域/州)。无论如何我可以有条件地隐藏这些吗?提前致谢

4

1 回答 1

1

就个人而言,我首先会考虑在数据库查询级别解决这个问题。

也就是说,报告级别的一种方法是根据RegionStateCustomer设置Groups,然后在Status列中,您可以使用如下表达式:

=IIf(CountRows("CustomerGroup") = 2, "VIP", "Regular")

这有点笨拙,但应该可以工作,因为似乎每个客户可以在区域/州级别拥有一或两行 - 如果有两行,它们必须是 VIP,并且由于您设置了一个组,因此您可以获得不同的客户值在每个地区/州组合内。

于 2013-01-24T17:44:20.030 回答