根据表格中的值更改正文报告的颜色

时间:2017-06-04 14:10:51

标签: reporting-services ssrs-2008-r2

我在SQL Server 2008中有报告。

报告有一个参数,参数值:

organization1
organization2
organization3
organization4

要显示带有值的参数列表,我使用了“可用值”“从查询中获取值”。

Parameter

  • 如果“值”列中的organization1参数值大于 20,然后报告表格的正文和背景应为红色。

  • 如果选择参数organization1表格和报告正文的背景应为红色。

  • 如果选择参数organization2表格和报告正文的背景不应为红色。

  • 如果选择参数organization3表格和报告正文的背景应为红色。

  • 如果选择参数organization4表格和报告正文的背景不应为红色。

Ugliest report ever created by man

以下表达式不适用于所选参数。

=IIF(Fields!AVID.Value, "summ_work">20 and
First(Parameters!ReportParameter1.Value, "test")="Organization1","Red","Transparent")

我该如何解决?

1 个答案:

答案 0 :(得分:0)

对于报告中的BackGround表达式,您需要这样的内容。

=Switch(Sum(Fields!value.Value, "DataSet1") > 20 And Parameters!Organization.Value = "Organization1", "Red",
    Parameters!Organization.Value = "Organization1", "Red",
    Parameters!Organization.Value = "Organization2", "White",
    Parameters!Organization.Value = "Organization3", "Red",
    Parameters!Organization.Value = "Organization4", "White",
    True, "Yellow")

Switch的最后一行是一个可以将背景变为黄色的所有内容。如果您认为情况不会发生在有人传递参数值而非列表中的参数值的情况下,请执行您想要的操作,或者完全删除它。

我选择White作为“不应该是红色”的颜色,如果你愿意,可以将其改为别的。