突出显示SSRS报告中的行差异

时间:2016-06-14 18:54:46

标签: sql reporting-services ssrs-2008 ssrs-2012

我有一份比较重复值的SSRS报告。我想比较具有相同ID值的行,并突出显示具有差异的列。这是我想要的报告的一个例子。

enter image description here

在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

2 个答案:

答案 0 :(得分:3)

您可以在ID列上创建一个组(只是禁止它,因此它不会影响您的报告)然后在后台创建一个类似

的公式

对于名称列。

      =iif(CountDistinct(iif(isnothing(Fields!Name.Value) or 
Fields!Name.Value ="","x",Fields!Name.Value),"ID")<> 1 ,"Yellow","Transparent")

答案 1 :(得分:0)

在单元格背景颜色属性中尝试此操作:

对于名称列。

# config/application.rb
module MyApi
  class Application < Rails::Application
    config.middleware.use Rack::MethodOverride
  end
end

对于Hobby专栏。

=IIF(Fields!ID.Value=PREVIOUS(Fields!ID.Value) and
Fields!Name.Value<>PREVIOUS(Fields!Name.Value),"Yellow","Transparent")

如果有帮助,请告诉我。