reporting-services - 将返回的数据作为表达式执行

标签 reporting-services ssrs-2008 reportbuilder3.0

我有一个(共享)数据集,当通过

选择时
=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")"

最佳答案

我不相信 SSRS 会将您的字段值解释为表达式,而是始终将其视为字符串。

但是,为了实现您想要做的事情,可以将其分解成更小的部分。

名为“colors”的共享数据集:

SELECT 'WHITE' as color1, 'WHITESMOKE' as color

背景颜色表达式:

=IIF(
   ROWNUMBER(NOTHING) MOD 2,
   First(Fields!Color1.Value, "Colors"), 
   First(Fields!Color2.Value, "Colors"))

关于reporting-services - 将返回的数据作为表达式执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45196401/

相关文章:

sql - 根据子报表结果隐藏/显示 tablix 行

sql - 有人可以解释 Count 在此 SQL 查询中的工作原理吗?

reporting-services - 如何更改SSRS中参数下拉框的宽度?

css - 为什么向 Sharepoint 2010 添加 ssrs 报告会在列中创建额外的空间

reporting-services - SSRS 本地报告失败 - 错误 "An error has occurred during report processing"

reporting-services - 隐藏(或过滤)列组的某些列

sql - 在生产环境中部署 Sql Server Reporting Services 报告

sql - 将数据从 MS Sql Server 存储过程导出到 Excel 文件

reporting-services - SSRS 2012 中的 Excel 函数

reporting-services - LookUpSet - 分组依据