reporting-services - SSRS 2008 钻取参数过滤 >= 不工作
问题描述
我有一个具有计数的主要摘要报告和一个显示详细信息的钻取报告,该详细信息具有一个参数,其中来自主报告的计数被传递给钻取。但是我想查看计数大于或等于 2 的钻取报告。如果我在指定钻取报告名称和参数的参数部分中给出 >=2,则在运行时钻取中不会选择任何内容主要报告。如果我指定一个值,它运行良好,但如果我给出 >=2,则主报告正在运行,但如果我将参数指定为文本,则在参数中也没有选择任何值。如果我将参数定义为整数,则会给出数据不匹配错误,并且报告根本没有运行。如果我定义为文本,则主报告正在运行但未选择任何参数。有人可以请教。谢谢你的时间
从主报告中,我想查看具有 count>=2 的钻取报告。如何在钻取报告中将 >=2 传递给 count 参数。我只有一个要求 - 将 >=2 作为参数传递。我如何做到这一点。
解决方案
该参数需要一个数字。如果您希望它有时等于参数并且大于其他参数,则需要创建第二个参数,然后让您的详细报告使用过滤器的 OR 来处理它。`
在查询中(假设 CNT 是计数字段):
WHERE (CNT = @CNT AND @OPERATOR = '=') OR (CNT >= @CNT AND @OPERATOR = '>=')
对于数据集过滤器,表达式类似于:
=IIF((Fields!CNT.Value = Parameters!CNT.Value AND Parameters!OPERATOR.Value = "=") OR (Fields!CNT.Value >= Parameters!CNT.Value AND Parameters!OPERATOR.Value = ">="), 1, 0)
将 Type 设置为 INTEGER,将Operator设置为 =,将Value设置为 1。
表达式检查记录是否等于选择 = 时的计数或 >= 选择 >= 时的计数,并为该记录提供值 1,否则为 0。然后过滤器检查等于1.
推荐阅读
- javascript - Prismjs 高亮文件
- python - 在条件是与集合匹配百分比的选择行中的性能
- mysql - 将 6 个月添加到 mysql 中的 CURRENT_TIMESTAMP
- java - 如何从 HackerEarth 优化这个练习?
- go - go语言读取并合并两个yaml文件
- bash - bash 修复嘈杂的数据法语字符
- xslt - 如何使用 xslt 在 c 数据中包装输入 xsml
- php - 更新集合的最佳实践
- odoo - 如何通过编码在 odoo ir.attachment 模型中上传 zip 文件?
- selenium - Microsoft 测试管理器的界面,如 Selenium