在 SSRS 报告中突出显示行差异
Highlight Row Differences in SSRS Report
我有一个比较重复值的 SSRS 报告。我想比较具有相同 ID 值的行并突出显示具有差异的列。这是我想要的报告的示例。
在 SSRS 中实现此目的的最佳方法是什么?
这是我的数据集中使用的查询的简化示例
Select Diffs.ID
, Diffs.Name
, Diffs.Hobby
FROM
(
SELECT a.ID
, a.Name
, a.Hobby
FROM Table1 as a
INNER JOIN Table2 as b
ON a.ID = b.ID
WHERE a.Name <> b.Name
OR a.Hobby <> b.Hobby
UNION
SELECT b.ID
, b.Name
, b.Hobby
FROM Table1 as a
INNER JOIN Table2 as b
ON a.ID = b.ID
WHERE a.Name <> b.Name
OR a.Hobby <> b.Hobby
) AS Diffs
ORDER BY Diffs.ID
在单元格背景颜色中试试这个 属性:
对于名称列。
=IIF(Fields!ID.Value=PREVIOUS(Fields!ID.Value) and
Fields!Name.Value<>PREVIOUS(Fields!Name.Value),"Yellow","Transparent")
爱好专栏。
=IIF(Fields!ID.Value=PREVIOUS(Fields!ID.Value) and
Fields!Hobby.Value<>PREVIOUS(Fields!Hobby.Value),"Yellow","Transparent")
如果有帮助请告诉我。
你可以在 id 列上创建一个组(只是抑制它,所以它不会影响你的报告)然后在后台创建一个像
这样的公式
对于名称列。
=iif(CountDistinct(iif(isnothing(Fields!Name.Value) or
Fields!Name.Value ="","x",Fields!Name.Value),"ID")<> 1 ,"Yellow","Transparent")
我有一个比较重复值的 SSRS 报告。我想比较具有相同 ID 值的行并突出显示具有差异的列。这是我想要的报告的示例。
在 SSRS 中实现此目的的最佳方法是什么?
这是我的数据集中使用的查询的简化示例
Select Diffs.ID
, Diffs.Name
, Diffs.Hobby
FROM
(
SELECT a.ID
, a.Name
, a.Hobby
FROM Table1 as a
INNER JOIN Table2 as b
ON a.ID = b.ID
WHERE a.Name <> b.Name
OR a.Hobby <> b.Hobby
UNION
SELECT b.ID
, b.Name
, b.Hobby
FROM Table1 as a
INNER JOIN Table2 as b
ON a.ID = b.ID
WHERE a.Name <> b.Name
OR a.Hobby <> b.Hobby
) AS Diffs
ORDER BY Diffs.ID
在单元格背景颜色中试试这个 属性:
对于名称列。
=IIF(Fields!ID.Value=PREVIOUS(Fields!ID.Value) and
Fields!Name.Value<>PREVIOUS(Fields!Name.Value),"Yellow","Transparent")
爱好专栏。
=IIF(Fields!ID.Value=PREVIOUS(Fields!ID.Value) and
Fields!Hobby.Value<>PREVIOUS(Fields!Hobby.Value),"Yellow","Transparent")
如果有帮助请告诉我。
你可以在 id 列上创建一个组(只是抑制它,所以它不会影响你的报告)然后在后台创建一个像
这样的公式对于名称列。
=iif(CountDistinct(iif(isnothing(Fields!Name.Value) or
Fields!Name.Value ="","x",Fields!Name.Value),"ID")<> 1 ,"Yellow","Transparent")