我有一个(共享)数据集,当通过
选择时=First(Fields!TableColumn.Value, "DatasetName")
将返回类似于
的内容=IIF(ROWNUMBER(NOTHING) MOD 2, "WHITE", "WHITESMOKE")
我正在尝试使用这个,以便我可以使用动态的,基于表达式的格式化(主要是行背景颜色)的多个报表,我可以通过修改数据集中的单个记录来更新。问题是报表生成器似乎不想执行此代码,而是将其解释为转义字符串。有没有办法指定这应该作为表达式执行?
我试过了:
=IIF(ROWNUMBER(NOTHING) MOD 2, "WHITE", "WHITESMOKE")
IIF(ROWNUMBER(NOTHING) MOD 2, "WHITE", "WHITESMOKE")
"=IIF(ROWNUMBER(NOTHING) MOD 2, "WHITE", "WHITESMOKE")"
"IIF(ROWNUMBER(NOTHING) MOD 2, "WHITE", "WHITESMOKE")"
答案 0 :(得分:2)
我不相信SSRS会将您的字段值解释为表达式,而是将其视为字符串。
然而,为了实现您的目标,将其分解为更小的部分。
名为" colors"的共享数据集:
SELECT 'WHITE' as color1, 'WHITESMOKE' as color
背景颜色的表达式:
=IIF(
ROWNUMBER(NOTHING) MOD 2,
First(Fields!Color1.Value, "Colors"),
First(Fields!Color2.Value, "Colors"))