Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reporting services SSRS场表达改变细胞的背景颜色_Reporting Services_Field_Cell_Background Color_Ssrs Expression - Fatal编程技术网

Reporting services SSRS场表达改变细胞的背景颜色

Reporting services SSRS场表达改变细胞的背景颜色,reporting-services,field,cell,background-color,ssrs-expression,Reporting Services,Field,Cell,Background Color,Ssrs Expression,我正在尝试为报表中的单元格编写一个字段表达式,其中必须根据单元格中的字符串值更改单元格的背景色。例如:如果列中有值“Approved”,则单元格应显示绿色背景色。我尝试了以下方法: = IIF(fields!column.value = "Approved", "Green") 及 两者都不起作用。。我知道我在语法上遗漏了一些东西。。可能我在语法中没有将绿色指代为背景色。请帮忙 IIF(Fields!column.Value=“Approved”,“Green”)的问题在于缺少第三个参数。正确

我正在尝试为报表中的单元格编写一个字段表达式,其中必须根据单元格中的字符串值更改单元格的背景色。例如:如果列中有值“Approved”,则单元格应显示绿色背景色。我尝试了以下方法:

= IIF(fields!column.value = "Approved", "Green")

两者都不起作用。。我知道我在语法上遗漏了一些东西。。可能我在语法中没有将绿色指代为背景色。请帮忙

IIF(Fields!column.Value=“Approved”,“Green”)的问题在于缺少第三个参数。正确的语法是IIF([某些布尔表达式],[布尔表达式为真时的结果],[布尔表达式为假时的结果])

试试这个

=IIF(Fields!Column.Value = "Approved", "Green", "No Color")
下面是一个表达式示例列表


利用颜色和背景色属性为查询编写表达式。将以下内容添加到要满足的颜色特性的表达式选项中)

范例

=iif(fields!column.value = "Approved", "Green","<other color>")
=iif(字段!column.value=“已批准”、“绿色”、“绿色”)
iif
需要3个值,第一个是相关列,第二个是处理True,第三个是处理
iif
语句的False

=iif(Fields!ADPAction.Value.ToString().ToUpper().Contains(“FAIL”),“Red”,“White”)

还需要转换为大写进行比较的是二进制测试。

=IIF(fields!column.value=条件,“Red”,“Black”)

您可以使用SWITCH()函数计算多个条件以给单元格着色。节点
是单元格填充,
是字体颜色

表达式:

=SWITCH(
    (
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND (Fields!User_Name.Value.Contains("TOTAL"))
    ), "Black"
    ,(
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND NOT(Fields!User_Name.Value.Contains("TOTAL"))
    ), "#595959"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND Fields!OLAP_Cube.Value.Contains("TOTAL") 
    ), "#c65911"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND NOT(Fields!OLAP_Cube.Value.Contains("TOTAL")) 
    ), "#ed7d31"
    ,true, "#e7e6e6"
    )

'Daily Totals... CellFill.&[Dark Orange]-[#c65911], TextBold.&[True]'Daily Totals... CellFill.&[Dark Orange]-[#c65911], TextBold.&[True]
'Daily Cube Totals... CellFill.&[Medium Orange]-[#eb6e19]
'Daily User List... CellFill.&[Light Grey]-[#e7e6e6]
'Date Totals All Users Total... CellFill.&[Black]-["black"], TextColor.&[Light Orange]-[#ed7d31]
'Date Totals Per User... CellFill.&[Dark Grey]-[#595959], TextColor.&[Yellow]-["yellow"]
'(ALL OTHER CONDITIONS)
'Daily User List... CellFill.&[Light Grey]-[#e7e6e6]
                <TablixRow>
                  <Height>0.2in</Height>
                  <TablixCells>
                    <TablixCell>
                      <CellContents>
                        <Textbox Name="Usage_Date1">
                          <CanGrow>true</CanGrow>
                          <KeepTogether>true</KeepTogether>
                          <Paragraphs>
                            <Paragraph>
                              <TextRuns>
                                <TextRun>
                                  <Value>=Fields!Usage_Date.Value</Value>
                                  <Style>
                                    <FontSize>8pt</FontSize>
                                    <FontWeight>=SWITCH(
    (
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND Fields!OLAP_Cube.Value.Contains("TOTAL") 
    ), "Bold"
    ,true, "Normal"
    )</FontWeight>
                                    <Color>=SWITCH(
    (
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND (Fields!User_Name.Value.Contains("TOTAL"))
    ), "#ed7d31"
    ,(
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND NOT(Fields!User_Name.Value.Contains("TOTAL"))
    ), "Yellow"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND Fields!OLAP_Cube.Value.Contains("TOTAL") 
    ), "Black"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND NOT(Fields!OLAP_Cube.Value.Contains("TOTAL")) 
    ), "Black"
    ,true, "Black"
    )

'Daily Totals... CellFill.&amp;[Dark Orange]-[#c65911], TextBold.&amp;[True]'Daily Totals... CellFill.&amp;[Dark Orange]-[#c65911], TextBold.&amp;[True]
'Daily Cube Totals... CellFill.&amp;[Medium Orange]-[#eb6e19]
'Daily User List... CellFill.&amp;[Light Grey]-[#e7e6e6]
'Date Totals All Users Total... CellFill.&amp;[Black]-["black"], TextColor.&amp;[Light Orange]-[#ed7d31]
'Date Totals Per User... CellFill.&amp;[Dark Grey]-[#595959], TextColor.&amp;[Yellow]-["yellow"]
'(ALL OTHER CONDITIONS)
'Daily User List... CellFill.&amp;[Light Grey]-[#e7e6e6]</Color>
                                  </Style>
                                </TextRun>
                              </TextRuns>
                              <Style />
                            </Paragraph>
                          </Paragraphs>
                          <rd:DefaultName>Usage_Date1</rd:DefaultName>
                          <Style>
                            <Border>
                              <Color>LightGrey</Color>
                              <Style>Solid</Style>
                            </Border>
                            <BackgroundColor>=SWITCH(
    (
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND (Fields!User_Name.Value.Contains("TOTAL"))
    ), "Black"
    ,(
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND NOT(Fields!User_Name.Value.Contains("TOTAL"))
    ), "#595959"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND Fields!OLAP_Cube.Value.Contains("TOTAL") 
    ), "#c65911"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND NOT(Fields!OLAP_Cube.Value.Contains("TOTAL")) 
    ), "#ed7d31"
    ,true, "#e7e6e6"
    )

'Daily Totals... CellFill.&amp;[Dark Orange]-[#c65911], TextBold.&amp;[True]'Daily Totals... CellFill.&amp;[Dark Orange]-[#c65911], TextBold.&amp;[True]
'Daily Cube Totals... CellFill.&amp;[Medium Orange]-[#eb6e19]
'Daily User List... CellFill.&amp;[Light Grey]-[#e7e6e6]
'Date Totals All Users Total... CellFill.&amp;[Black]-["black"], TextColor.&amp;[Light Orange]-[#ed7d31]
'Date Totals Per User... CellFill.&amp;[Dark Grey]-[#595959], TextColor.&amp;[Yellow]-["yellow"]
'(ALL OTHER CONDITIONS)
'Daily User List... CellFill.&amp;[Light Grey]-[#e7e6e6]</BackgroundColor>
                            <PaddingLeft>2pt</PaddingLeft>
                            <PaddingRight>2pt</PaddingRight>
                          </Style>
                        </Textbox>
                        <rd:Selected>true</rd:Selected>
                      </CellContents>
                    </TablixCell>
报告定义文件(SSRS-2016/VS-2015)中的XML节点:

=SWITCH(
    (
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND (Fields!User_Name.Value.Contains("TOTAL"))
    ), "Black"
    ,(
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND NOT(Fields!User_Name.Value.Contains("TOTAL"))
    ), "#595959"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND Fields!OLAP_Cube.Value.Contains("TOTAL") 
    ), "#c65911"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND NOT(Fields!OLAP_Cube.Value.Contains("TOTAL")) 
    ), "#ed7d31"
    ,true, "#e7e6e6"
    )

'Daily Totals... CellFill.&[Dark Orange]-[#c65911], TextBold.&[True]'Daily Totals... CellFill.&[Dark Orange]-[#c65911], TextBold.&[True]
'Daily Cube Totals... CellFill.&[Medium Orange]-[#eb6e19]
'Daily User List... CellFill.&[Light Grey]-[#e7e6e6]
'Date Totals All Users Total... CellFill.&[Black]-["black"], TextColor.&[Light Orange]-[#ed7d31]
'Date Totals Per User... CellFill.&[Dark Grey]-[#595959], TextColor.&[Yellow]-["yellow"]
'(ALL OTHER CONDITIONS)
'Daily User List... CellFill.&[Light Grey]-[#e7e6e6]
                <TablixRow>
                  <Height>0.2in</Height>
                  <TablixCells>
                    <TablixCell>
                      <CellContents>
                        <Textbox Name="Usage_Date1">
                          <CanGrow>true</CanGrow>
                          <KeepTogether>true</KeepTogether>
                          <Paragraphs>
                            <Paragraph>
                              <TextRuns>
                                <TextRun>
                                  <Value>=Fields!Usage_Date.Value</Value>
                                  <Style>
                                    <FontSize>8pt</FontSize>
                                    <FontWeight>=SWITCH(
    (
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND Fields!OLAP_Cube.Value.Contains("TOTAL") 
    ), "Bold"
    ,true, "Normal"
    )</FontWeight>
                                    <Color>=SWITCH(
    (
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND (Fields!User_Name.Value.Contains("TOTAL"))
    ), "#ed7d31"
    ,(
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND NOT(Fields!User_Name.Value.Contains("TOTAL"))
    ), "Yellow"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND Fields!OLAP_Cube.Value.Contains("TOTAL") 
    ), "Black"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND NOT(Fields!OLAP_Cube.Value.Contains("TOTAL")) 
    ), "Black"
    ,true, "Black"
    )

'Daily Totals... CellFill.&amp;[Dark Orange]-[#c65911], TextBold.&amp;[True]'Daily Totals... CellFill.&amp;[Dark Orange]-[#c65911], TextBold.&amp;[True]
'Daily Cube Totals... CellFill.&amp;[Medium Orange]-[#eb6e19]
'Daily User List... CellFill.&amp;[Light Grey]-[#e7e6e6]
'Date Totals All Users Total... CellFill.&amp;[Black]-["black"], TextColor.&amp;[Light Orange]-[#ed7d31]
'Date Totals Per User... CellFill.&amp;[Dark Grey]-[#595959], TextColor.&amp;[Yellow]-["yellow"]
'(ALL OTHER CONDITIONS)
'Daily User List... CellFill.&amp;[Light Grey]-[#e7e6e6]</Color>
                                  </Style>
                                </TextRun>
                              </TextRuns>
                              <Style />
                            </Paragraph>
                          </Paragraphs>
                          <rd:DefaultName>Usage_Date1</rd:DefaultName>
                          <Style>
                            <Border>
                              <Color>LightGrey</Color>
                              <Style>Solid</Style>
                            </Border>
                            <BackgroundColor>=SWITCH(
    (
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND (Fields!User_Name.Value.Contains("TOTAL"))
    ), "Black"
    ,(
        Fields!Usage_Date.Value.Contains("TOTAL") 
        AND NOT(Fields!User_Name.Value.Contains("TOTAL"))
    ), "#595959"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND Fields!OLAP_Cube.Value.Contains("TOTAL") 
    ), "#c65911"
    ,(
        NOT(Fields!Usage_Date.Value.Contains("TOTAL")) 
        AND Fields!User_Name.Value.Contains("TOTAL") 
        AND NOT(Fields!OLAP_Cube.Value.Contains("TOTAL")) 
    ), "#ed7d31"
    ,true, "#e7e6e6"
    )

'Daily Totals... CellFill.&amp;[Dark Orange]-[#c65911], TextBold.&amp;[True]'Daily Totals... CellFill.&amp;[Dark Orange]-[#c65911], TextBold.&amp;[True]
'Daily Cube Totals... CellFill.&amp;[Medium Orange]-[#eb6e19]
'Daily User List... CellFill.&amp;[Light Grey]-[#e7e6e6]
'Date Totals All Users Total... CellFill.&amp;[Black]-["black"], TextColor.&amp;[Light Orange]-[#ed7d31]
'Date Totals Per User... CellFill.&amp;[Dark Grey]-[#595959], TextColor.&amp;[Yellow]-["yellow"]
'(ALL OTHER CONDITIONS)
'Daily User List... CellFill.&amp;[Light Grey]-[#e7e6e6]</BackgroundColor>
                            <PaddingLeft>2pt</PaddingLeft>
                            <PaddingRight>2pt</PaddingRight>
                          </Style>
                        </Textbox>
                        <rd:Selected>true</rd:Selected>
                      </CellContents>
                    </TablixCell>

0.2英寸
真的
真的
=字段!用法\日期值
8pt
=开关(
(
NOT(字段!用法\u日期.Value.Contains(“总计”))
和字段!User_Name.Value.Contains(“总计”)
和字段!OLAP_Cube.Value.Contains(“总计”)
),“粗体”
,对,“正常”
)
=开关(
(
字段!用法\u Date.Value.Contains(“总计”)
和(字段!User_Name.Value.Contains(“总计”))
)“#ed7d31”
,(
字段!用法\u Date.Value.Contains(“总计”)
和非(字段!User_Name.Value.Contains(“总计”))
)“黄色”
,(
NOT(字段!用法\u日期.Value.Contains(“总计”))
和字段!User_Name.Value.Contains(“总计”)
和字段!OLAP_Cube.Value.Contains(“总计”)
)“黑色”
,(
NOT(字段!用法\u日期.Value.Contains(“总计”))
和字段!User_Name.Value.Contains(“总计”)
而不是(字段!OLAP_Cube.Value.Contains(“总计”))
)“黑色”
,对,“黑色”
)
“每日总计。。。CellFill&;[深橙色][#c65911],TextBold&;[正确]'每日总计。。。CellFill&;[深橙色][#c65911],TextBold&;[对]
'每日多维数据集总计。。。CellFill&;[中橙色]-[#eb6e19]
'每日用户列表。。。CellFill&;[浅灰色][e7e6e6]
'日期总计所有用户总计。。。CellFill&;[黑色]-[“黑色”],TextColor&;[浅橙色][#ed7d31]
'每个用户的日期总计。。。CellFill&;[深灰色][#5959],文本颜色;[黄色]-[“黄色”]
"(所有其他条件)
'每日用户列表。。。CellFill&;[浅灰色][e7e6e6]
使用日期1
浅灰色
固体
=开关(
(
字段!用法\u Date.Value.Contains(“总计”)
和(字段!User_Name.Value.Contains(“总计”))
)“黑色”
,(
字段!用法\u Date.Value.Contains(“总计”)
和非(字段!User_Name.Value.Contains(“总计”))
), "#595959"
,(
NOT(字段!用法\u日期.Value.Contains(“总计”))
和字段!User_Name.Value.Contains(“总计”)
和字段!OLAP_Cube.Value.Contains(“总计”)
)“#c65911”
,(
NOT(字段!用法\u日期.Value.Contains(“总计”))
和字段!User_Name.Value.Contains(“总计”)
而不是(字段!OLAP_Cube.Value.Contains(“总计”))
)“#ed7d31”
,对,“#e7e6”
)
“每日总计。。。CellFill&;[深橙色][#c65911],TextBold&;[正确]'每日总计。。。CellFill&;[深橙色][#c65911],TextBold&;[对]
'每日多维数据集总计。。。CellFill&;[中橙色]-[#eb6e19]
'每日用户列表。。。CellFill&;[浅灰色][e7e6e6]
'日期总计所有用户总计。。。CellFill&;[黑色]-[“黑色”],TextColor&;[浅橙色][#ed7d31]
'每个用户的日期总计。。。CellFill&;[深灰色][#5959],文本颜色;[黄色]-[“黄色”]
"(所有其他条件)
'每日用户列表。。。CellFill&;[浅灰色][e7e6e6]
2吨
2吨
真的

=IIF(Fields!Column.Value=“Approved”,“Green”,“No Color”)

非常感谢您的回复。。它解决了语法部分。。但是当我预览报告时,我看到字符串值“Approved”被字符串值“Green”替换。我希望背景颜色不改变字符串值。无论您使用报表生成器还是BIDS,当您在属性窗口中单击“查看单元格属性”时,都会显示