带开关的SSRS 2012表达式无法按预期工作

时间:2018-09-10 18:44:35

标签: reporting-services sql-server-2012 ssrs-2012

我在SSRS中有一个表达式,它查看客户#,县和最终的服务类型,以确定是否需要进行调整。

我的问题是我的Switch语句似乎总是选择默认值,而不是对服务类型起作用。

这是我的SSRS表达式:

=IIf(Fields!ClientNo.Value="2139",
    IIF(Fields!County.Value="RIVERSIDE" or Fields!County.Value="SAN BERNARDINO",
        Switch(
            UCase(Fields!ServiceType.Value)="NOT FOUND",-29.50, 
            UCase(Fields!ServiceType.Value)="PERSONAL",-20.50, 
            UCase(Fields!ServiceType.Value)="SUB",-20.50, 
            True,Fields!ServiceType.Value
        )
    ,"")
,"")

我正在查看的记录的服务类型为“未找到”,并且满足表达式的条件(参见图片)。 Record that needs an adjustment

我无法弄清楚为什么Switch语句没有作用于“未找到”。而是将其降至默认值并显示“未找到”。调整金额应出现在“服务费”和69.00美元之间。

在我的SP中,我对服务类型执行ltrim / rtrim,因此应该删除多余的空格。

这个表情对我来说直截了当。我不知道我在想什么。

谢谢

经过修改可更正San Bernardino中的拼写

0 个答案:

没有答案