将返回的数据作为表达式执行
Execute Returned Data as Expression
我有一个(共享)数据集,当通过
选择时
=First(Fields!TableColumn.Value, "DatasetName")
将 return 类似于
=IIF(ROWNUMBER(NOTHING) MOD 2, "WHITE", "WHITESMOKE")
我正在尝试使用它,这样我就可以拥有多个具有动态的、基于表达式的格式(主要是行背景色)的报告,我可以通过修改数据集中的单个记录来更新这些报告。问题是 Report Builder 似乎不想执行此代码,而是将其解释为转义字符串。有什么方法可以指定它应该作为表达式执行吗?
我试过:
=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")"
我认为 SSRS 不会将您的字段值解释为表达式,而是始终将其视为字符串。
但是,要实现您的目标,将其分解成更小的部分如何。
名为 "colors" 的共享数据集:
SELECT 'WHITE' as color1, 'WHITESMOKE' as color
背景色表达式:
=IIF(
ROWNUMBER(NOTHING) MOD 2,
First(Fields!Color1.Value, "Colors"),
First(Fields!Color2.Value, "Colors"))
我有一个(共享)数据集,当通过
选择时=First(Fields!TableColumn.Value, "DatasetName")
将 return 类似于
=IIF(ROWNUMBER(NOTHING) MOD 2, "WHITE", "WHITESMOKE")
我正在尝试使用它,这样我就可以拥有多个具有动态的、基于表达式的格式(主要是行背景色)的报告,我可以通过修改数据集中的单个记录来更新这些报告。问题是 Report Builder 似乎不想执行此代码,而是将其解释为转义字符串。有什么方法可以指定它应该作为表达式执行吗?
我试过:
=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")"
我认为 SSRS 不会将您的字段值解释为表达式,而是始终将其视为字符串。
但是,要实现您的目标,将其分解成更小的部分如何。
名为 "colors" 的共享数据集:
SELECT 'WHITE' as color1, 'WHITESMOKE' as color
背景色表达式:
=IIF(
ROWNUMBER(NOTHING) MOD 2,
First(Fields!Color1.Value, "Colors"),
First(Fields!Color2.Value, "Colors"))