我在SSRS
中有一张表,按客户编号分组。
我需要在填充表达式中评估相同的列。
评估应该是 -
如果两个不同客户的ABTAX
相同且AIMAXO
也相同,则填充红色,否则将列留白。
我已经尝试了下面的表达式,但它只是将整个列填充为红色。
=iif(Fields!ABTAX.Value = Fields!ABTAX.Value and (Fields!AIMAXO.Value = Fields!AIMAXO.Value), "RED","WHITE")
数据:
CustomerNo ABTAX AIMAXO
--------------------------------------------
999991 00592235 COF 235000
999992 00592235 COF 235000
答案 0 :(得分:0)
假设你可以改变底层SQL,我会创建一个标志来显示重复。像这样的查询会引发正确的标志*
SELECT
A.CustomerNo,
ABTAX,
AIMAXO,
CASE WHEN B.CustomerNo = A.CustomerNo THEN 1 ELSE 0 END AS Duplicate
FROM @Temp A
LEFT JOIN (
SELECT CustomerNo FROM @Temp
WHERE ABTAX = (
SELECT ABTAX
FROM @Temp
GROUP BY ABTAX,AIMAXO
HAVING COUNT(*) > 1)
AND AIMAXO =(
SELECT AIMAXO
FROM @Temp
GROUP BY ABTAX,AIMAXO
HAVING COUNT(*) > 1)
ON A.CustomerNo = B.CustomerNo
使用此源数据集
CustomerNo ABTAX AIMAXO
999991 00592235 COF 235000
999992 00592235 COF 235000
999993 00592236 COF 235000
999994 00592235 COF 235001
将使用标志
返回以下数据集CustomerNo ABTAX AIMAXO Duplicate
999991 00592235 COF 235000 1
999992 00592235 COF 235000 1
999993 00592236 COF 235000 0
999994 00592235 COF 235001 0
然后,您可以使用此重复标记来适当地为单元格着色
*(我愿意承认可能有更有效的编码方式)