【问题标题】:multiple column value to single value with IIF condition in SSRSSSRS中具有IIF条件的多列值到单个值
【发布时间】:2017-02-21 22:33:48
【问题描述】:

您好团队, 我有一个这样的 SSRS 报告,用户希望看到如下图所示的数据。对于第 2 列,如果值为 N/A,则第 3 列的值将在列表中并用逗号分隔。并且多行将转换为仅存在 N/A 的一行。

【问题讨论】:

    标签: reporting-services ssrs-2008 ssrs-2008-r2 ssrs-2012 ssrs-tablix


    【解决方案1】:

    首先,您需要为两列创建行组。我假设它们被称为装运和描述。然后您可以使用JoinLookupSet 进行CSV 聚合。类似于答案here

    类似这样的:

    =Join(LookupSet(Fields!Shipment.Value & "-" & Fields!Description.Value,
                    Fields!Shipment.Value & "-" & Fields!Description.Value,
                    Fields!PartNumber.Value, "YourDataset"), ",")
    

    【讨论】:

    • 我们可以在其中使用 if 子句吗? iif pname = "N/A" begin Join(LookupSet(Fields!Description.Value, Fields!Description.Value, Fields!PartNumber.Value, "YourDataset"), ",") end
    • @AshishMandal 你可以使用 inline if,但它不应该是必要的吗?所有不是 N/A 的描述都只有一个 PartNumber,因此不会创建列表。
    • 谢谢,FrumRoll。当我应用您在开头所述的逻辑时,它会给我所有行的 concat 结果,但要求是仅获取第 1 列特定组的结果。有可能得到结果吗?请帮忙
    • @AshishMandal 我已经更新了我的答案,您需要在应用过滤器之前连接您的群组。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-06
    • 2021-12-19
    相关资源
    最近更新 更多