技术问询:如何用报表变量替换字段名,改写表达式=Fields!FieldName.Value
动态通过报表变量获取字段值的正确表达式
兄弟,直接把FieldName替换成MyReportVariable写成=Fields!MyReportVariable.Value是踩坑了——SSRS会把MyReportVariable当成一个固定的字段名,而不是去读取你报表变量里存的字段名称。
如果你的报表变量MyReportVariable里存储的是数据集里的字段名字符串(比如"UserName"或者"OrderAmount"),想要动态获取这个字段对应的值,正确的表达式应该用Fields集合的索引器来实现:
=Fields(Variables!MyReportVariable.Value).Value
额外说明:
- 要确保报表变量
MyReportVariable里存的字段名和数据集里的字段名完全一致,大小写也要匹配(SSRS在字段名匹配上是区分大小写的) - 如果你其实只是想直接引用报表变量本身的值(不是变量指向的字段),那表达式应该是
=Variables!MyReportVariable.Value,不需要加Fields!前缀,因为报表变量和数据集字段是两个不同的对象
内容的提问来源于stack exchange,提问作者Tex
相关产品推荐
相关产品推荐

