2016-06-14 10 views
0

重複する値を比較するSSRSレポートがあります。同じID値で行を比較し、違いがある列を強調表示したい。ここに希望のレポートの例があります。SSRSレポートの行の違いを強調表示

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 

答えて

3

あなたは、バックグラウンドでの名前の欄については

のような式を作成する(それはあなたのレポートに影響を与えるdoes'tだから、それを抑制する)id列上のグループを作成することができます。

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

だからこそ。それは単に空白を処理しません。私は空白の例を含めるように私の出力例を更新しました。 – Matt

+0

私はブランクとヌルのアカウントに私の答えを更新しました – Kostya

+0

素敵な答え!私は以前このパターンを見てきましたが、私の心を別の方向に集中させました。 –

0

私のデータセットで使用されたクエリの簡単な例です。

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

これが役立つかどうか教えてください。

+0

ありがとうございます。それは近いですが、私はそれが2番目の行だけを強調すると思います。残念ながら、次の機能はないようです。 – Matt

+0

データセットで使用しているクエリを共有できますか? –

+0

私は私のクエリの簡略版を追加しました。ありがとう。 – Matt

関連する問題