在 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")