代码之家  ›  专栏  ›  技术社区  ›  user470091

根据值更改SSRS中的文本框颜色

  •  0
  • user470091  · 技术社区  · 8 年前

    我正在创建一个SSRS报告,我有一个名为Priority的列,我想根据该值更改该特定框的背景色。

    这就是我尝试过的

    =SWITCH(Fields!Priority.Value = Critical, "Red", Fields!Priority.Value = High, "Green", Fields!Priority.Value = Average, "Yellow", Fields!Priority.Value = Low, "Blue")
    

    错误: 文本框优先级1的BackgroundColor表达式包含错误:[BC30451]未声明名称“Critical”。

    非常感谢。

    1 回复  |  直到 8 年前
        1
  •  1
  •   C Black    8 年前

    等号右侧的值需要用双引号括起来。

    =SWITCH(Fields!Priority.Value = "Critical", "Red", Fields!Priority.Value = "High", "Green", Fields!Priority.Value = "Average", "Yellow", Fields!Priority.Value = "Low", "Blue")
    

    编辑: 如果不清楚的话,只需添加一点描述:您需要这些双引号,因为您要与这些字符串进行比较。表达式中的裸词被假设为关键字,因此当它到达关键词并且找不到任何与之相关的关键字时,它不知道该做什么。如果要比较数字,则不需要引号,但因为在本例中处理的是字符串,所以需要引号。

    推荐文章