我在这里有疑问,
我需要在SSRS中显示一个饼图,根据他们的状态(通过/失败)显示学生结果.......我只有4个条件男性通过,男性失败,女性通过,女性失败,我需要用自己的颜色展示这些东西,
这是使用开关条件
=Switch(
((Fields!Gender.Value = "Male")&(Fields!Status.Value="Pass")), "Blue",
((Fields!Gender.Value = "Male")&(Fields!Status.Value="Fail")), "HotPink",
((Fields!Gender.Value = "Female")&(Fields!Status.Value="Fail")), "Orange",
((Fields!Gender.Value = "Female")&(Fields!Status.Value="Pass")),"LimeGreen" )
但在预览中它只显示默认颜色设置,而不是自定义颜色设置,任何人都可以修复此设置...提前感谢
答案 0 :(得分:4)
尝试使用类似
的内容 =IIf((Fields!Gender.Value = "Male") and (Fields!Status.Value="Pass"),"Green",
IIf((Fields!Gender.Value = "Male") and(Fields!Status.Value="Fail"),"Red" ,
IIf((Fields!Gender.Value = "Female") and (Fields!Status.Value="Fail") ,"Blue",
(Fields!Gender.Value = "Female") and (Fields!Status.Value="Pass"),"Yellow","Orange"
,"#00000000"))))
答案 1 :(得分:4)
您也应该能够使用Switch语句使其正常工作。表达式的问题在于SSRS中的逻辑“和”运算符是和,而不是&符号。在SSRS中,单个&符号用于连接字符串。因此,您的表达式连接两个布尔结果的字符串表示形式,从而产生类似TrueFalse的字符串。这实际上应该在Switch评估中给出错误。
正确的Switch语句是这样的:
=Switch(
Fields!Gender.Value = "Male" And Fields!Status.Value="Pass", "Blue",
Fields!Gender.Value = "Male" And Fields!Status.Value="Fail", "HotPink",
Fields!Gender.Value = "Female" And Fields!Status.Value="Fail", "Orange",
Fields!Gender.Value = "Female" And Fields!Status.Value="Pass","LimeGreen"
, True, "SomeOtherColor"
)
如果某些记录未被其他条件覆盖,我还在交换机中添加了“else”部分。如果您100%确定不会发生这种情况,则可以删除以“True”开头的行。但保持它也不应该受到伤害。
更多信息:Pie Chart Techniques (look for Custom Coloring chapter)