2015-06-15 106 views
0
=Switch(Fields!CompnyID.Value=5, "company 1" "dsSalesManagement", Fields!CompnyID.Value=6, "company 2" "dsSalesManagement") 

试图使用switch语句在报告中显示两个不同的结果。 也许正在寻找语法修正或有没有办法使用else if语句?问题是我想这个表达式依赖于来自另一个表达式的值。这在ssrs中可能吗? ErrorList尝试在SSRS中使用Switch语句

+0

你在每个结果('“公司1”,“dsSalesManagement”')有两个字符串 - 你有什么期望的输出是什么? –

+0

SSRS要求我指定一个数据集聚合。我不知道如何绕过它,并将其包含在我的其他表情中。 –

回答

2

您的报表似乎有多个数据源,因此您必须指定您的聚合函数的正确范围。

例如:

=Switch(
    First(Fields!CompnyID.Value, "dsSalesManagement") = 5, "company 1", 
    First(Fields!CompnyID.Value, "dsSalesManagement") = 6, "company 2" 
) 
+0

男人,你是如此的金钱,你甚至不知道它! –

+0

@LeonardoTrimarchi ho dovuto guardare su http://www.urbandictionary.com il potenato! ;) – tezzo

+0

Stavo cercando di dire che questa era una soluzione brillante che veramente mi ha lasciato senza fiato。 Grazie mille fratello –

2

的语法错误是在这里:

        V-----------------------------V 
=Switch(Fields!CompnyID.Value=5, "company 1" "dsSalesManagement", 

表达只能返回一个值,所以是这样的:

=Switch(Fields!CompnyID.Value=5, "company 1" , ...) 

语法正确,但我不清楚如何涉及"dsSalesManagement",所以实际结果表达式可能会有所不同。

SSRS问我指定一个数据集聚合。

那么你可能要对使用Switch返回正确的字段值数据集的计算的字段,然后在总使用场。