Вы можете извлечь данные и «рассчитать», что изменилось следующим образом:
SELECT n.ID, n.[Name], n.[Desc],
CASE
WHEN n.[Name] = o.[Name] THEN 0
WHEN n.[Name] IS NULL AND o.[Name] IS NULL THEN 0
ELSE 1
END AS NameChanged,
CASE
WHEN n.[Desc] = o.[Desc] THEN 0
WHEN n.[Desc] IS NULL AND o.[Desc] IS NULL THEN 0
ELSE 1
END AS DescChanged
FROM new_data n
LEFT OUTER JOIN old_data o ON n.ID = o.ID;
В отчете используйте таблицу для отображения данных (только столбцы ID
, Name
и Desc
).Затем для свойства BackgroundColor (для обоих текстовых полей Name
и Desc
) используйте Выражение :
- для текстового поля
Name
: =IIf(Fields!NameChanged.Value = 1, "Gold", Nothing)
- для текстового поля
Desc
: =IIf(Fields!DescChanged.Value = 1, "Gold", Nothing)
Вы можете использовать имя цвета, который знает SSRS, например "Gold"
, или указатьцветовой код как "#FFD800"
.