如何在Reporting Services表达式语言中编写if else语句?

Jus*_*tin 8 sql-server-2008 reporting-services ssrs-expression

我想写一个"Expression"基本上表现如下(伪代码)的Reporting Services ...

if ([Fields!StateProvinceId.Value] == 1)
{
   return "Ontario";
}
else if ([Fields!StateProvinceId.Value] == 2)
{
   return "Quebec";
}
else if ([Fields!StateProvinceId.Value] == 3)
{
   return "Manitoba";
}
// ...
// more cases same pattern
Run Code Online (Sandbox Code Playgroud)

我没有看到这种类型的逻辑我必须嵌套一堆IIF吗?

=IIF(Fields!StateProvinceId.Value = 1, "Ontario", IIF(Fields!StateProvinceId.Value = 2, "Quebec", IFF(Fields!StateProvinceId.Value = 3, "Manitoba", "Unknown Province")))
Run Code Online (Sandbox Code Playgroud)

Ano*_*246 14

你试过一个switch语句吗?

= Switch( Fields!StateProvinceId.value=1,"Ontario", Fields!StateProvinceId.value=2,"Quebec", Fields!StateProvinceId.value=3,"Manitoba")
Run Code Online (Sandbox Code Playgroud)

请参阅此页面上的"决策功能",例如:

http://msdn.microsoft.com/en-us/library/ms157328.aspx