2011-09-09 39 views
20

在SSRS 2008中,我使用多值参数来为特定参数选择多个值。如何检查是否在多值参数中选择了一个值

在我的报告中,我有条件格式:如果选择了该项目,则特定标签必须是蓝色;否则会保持黑色。我的直觉是试图用SQL方式 - 但我错了:-)

Switch(
    Fields!groupType.Value = "firstValue", "#00ffffff", 
    Fields!groepType.Value = "secondValue", "Tomato", 
    Fields!groepType.Value = "thirdValue", "DimGray", 
    Fields!groepType.Value IN Parameters!p_myMultipleValueParameter.Values, "Blue" 
) 

什么是正确的方法来处理?

回答

44

我认为最干净的方法可能是以下

Array.IndexOf(Parameters!p_myMultipleValueParameter.Value, Fields!groepType.Value) > -1 

运行加入每一次可能是低效的,因为分配额外的字符串的开销,特别是如果该函数将在大名单中运行,或说,每行一格。

相关问题