reporting-services - SSRS 表达式 IIF() 和 sum
问题描述
我在尝试运行报告时弹出此错误消息。它是 Dynamics AX 2012 的 SSRS 报告。
System.Web.Services.Protocols.SoapException:文本框“Textbox183”的 Visibility.Hidden 表达式具有对聚合函数无效的范围参数。范围参数必须设置为字符串常量,该常量等于包含组的名称、包含数据区域的名称或数据集的名称。在 Microsoft.ReportingServices.Library.ReportingService2005Impl.CreateReport(String Report, String Parent, Boolean Overwrite, Byte[] Definition, Property[] Properties, Guid batchId, Warning[]&Warnings) 在 Microsoft.ReportingServices.WebServer.ReportingService2005.CreateReport(字符串报告、字符串父级、布尔覆盖、字节 [] 定义、属性 [] 属性、警告 [] 和警告)*
下面的这个表达式是在文本框的可见性上设置的。
Format(sum(IIF(Fields!InventOnHand.Value <= Parameters!CutOff.Value, Sum(Fields!InventOnHand.Vallue), 0 )), "#, ##0.00")
请帮助我理解为什么上面显示的错误以及如何修复这个表达式。
解决方案
你想什么时候看到你的文本框?您的表达式正在计算美元金额,而不是导致需要Visibility的 True/False 条件。
由于错误询问您的数据集,我假设它不在表格中 - 表格中的文本框不需要数据集,因为表格与数据集相关联。
假设您只想在 Inventory 的 SUM 大于 CutOff 参数时查看文本框,您需要:
=IIF(SUM(Fields!InventOnHand.Value, "Dataset1") <= Parameters!CutOff.Value, True, False)
推荐阅读
- python - 带有路线起点和终点位置的 Google ORTools VRPTW
- javascript - 我无法在控制台或终端中查看我的 JSON 对象,但我收到 200 状态代码
- vb.net - 如何在 Visual Basic 中访问多维数组中的对象
- node.js - 有时在 Windows 上正常转换失败并出现错误 1
- android - Android 使用 twitter API 获取附近的推文
- java - 如何用这个创建万花筒照片?
- sql - 将查询结果作为新列插入到您正在查询的表中
- html - 如何将 JSON-LD 标记与 REGEX 匹配?
- command-line - 如何使用盐来测试 jinja 功能?
- pandoc - Pandoc:docx 和 LaTeX 格式的不同输出