Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.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 根据不同的值标记单元格_Reporting Services - Fatal编程技术网

Reporting services 根据不同的值标记单元格

Reporting services 根据不同的值标记单元格,reporting-services,Reporting Services,有没有办法标记组中包含不同值的单元格? 例如: 在同一单元格中的第一个groupid=1值中,无需执行任何操作 在第二组中,列Col1中的GroupId=2值单元格不同,我需要用红色标记GroupId=2 Col1中的单元格 在Col2中的第三组GroupId=3中有不同的值,需要将Col2中GroupId=3的所有单元格标记为红色 p.S.值可以是字符串或数字,组的大小>=2行实现这一点的最简单方法是向查询中添加一个字段,或向报表中添加第二个查询 第二个数据集可能类似于 SELECT Grou

有没有办法标记组中包含不同值的单元格? 例如:

在同一单元格中的第一个groupid=1值中,无需执行任何操作 在第二组中,列Col1中的GroupId=2值单元格不同,我需要用红色标记GroupId=2 Col1中的单元格 在Col2中的第三组GroupId=3中有不同的值,需要将Col2中GroupId=3的所有单元格标记为红色
p.S.值可以是字符串或数字,组的大小>=2行

实现这一点的最简单方法是向查询中添加一个字段,或向报表中添加第二个查询

第二个数据集可能类似于

SELECT
GroupID,
CASE WHEN COUNT(DISTINCT Col1) > 1 THEN 1 ELSE 0 END AS HighlightCol1,
CASE WHEN COUNT(DISTINCT Col2) > 1 THEN 1 ELSE 0 END AS HighlightCol2
FROM MyTable
GROUP BY GroupID
然后,您可以使用SSRS 2008R2中添加的函数设置公式,该函数将根据当前数据集中的参考值从第二个数据集中检索值

=IIF(LOOKUP(
        Fields!GroupID.Value,
        Fields!GroupID.Value,
        Fields!HighlightCol1.Value,
        "DataSet2Name") = 1,
     "red",
     "white")
如果您使用的SSRS早于2008R2,我会考虑向当前数据集添加新字段。然后可以跳过查找功能

您可以在报表层完成同样的事情,但这比上面的解决方案要复杂一些

=IIF(LOOKUP(
        Fields!GroupID.Value,
        Fields!GroupID.Value,
        Fields!HighlightCol1.Value,
        "DataSet2Name") = 1,
     "red",
     "white")