Reporting services 使用可用值指定SSRS报告URL参数
我在SSRS 2012中有一个相对简单的报告(本机),有两个报告参数。这两个参数都是文本类型参数,并且都有数据集提供的可用值列表 我试图通过URL访问此报告,并为这两个参数指定值 我正在使用的URL的格式如下Reporting services 使用可用值指定SSRS报告URL参数,reporting-services,Reporting Services,我在SSRS 2012中有一个相对简单的报告(本机),有两个报告参数。这两个参数都是文本类型参数,并且都有数据集提供的可用值列表 我试图通过URL访问此报告,并为这两个参数指定值 我正在使用的URL的格式如下 http://<hostname>/ReportServer/Pages/ReportViewer.aspx?/<path_to_report>/<report_name>&<param1>=<value1>&&l
http://<hostname>/ReportServer/Pages/ReportViewer.aspx?/<path_to_report>/<report_name>&<param1>=<value1>&<param2>=<value2>&rc:Parameters=false&rs:ClearSession=true
http:///ReportServer/Pages/ReportViewer.aspx?//&=&=&rc:Parameters=false&rs:ClearSession=true
这将导致错误消息
“param1”参数缺少值
我已经验证了我确实使用了正确的参数名(不是提示名)和值(不是显示值)
如果我从报表定义中的参数中删除了可用值,那么它将按我所希望的方式工作,而不更改URL。但是,这是不可取的,因为理想情况下,可以通过报表管理器访问报表,在报表管理器中,可以向用户显示可用值,也可以直接通过URL从单独的web应用程序访问报表
我在这里试图实现的是可能的还是URL参数的限制?发生此问题是因为您正在传递
&rc:parameters=false
此参数在reportserver中为报表禁用。
如果你删除这个,你就会得到你的结果
http://<hostname>/ReportServer/Pages/ReportViewer.aspx?/<path_to_report>/<report_name>&<param1>=<value1>&<param2>=<value2>&rs:ClearSession=true
http:///ReportServer/Pages/ReportViewer.aspx?//&=&=&rs:ClearSession=true
更新的答案
您的参数是存储数据集中的值还是空的??
如果是,则传递给参数的值可能不匹配
例如:
如果我的参数具有可用值“ABC”,并且您正在url中传递“ABC”,那么它将抛出值丢失错误
要获得结果,您必须首先设置&rc:Parameters=true
,并检查参数值是否已设置
然后按原样设置
&rc:Parameters=false
情况并非如此。如问题中所述,从参数中删除可用值会导致URL正常工作,包括rc:Parameters=false。这会对报表查看器隐藏参数栏(强制在URL中包含参数),但不会完全禁用参数。省略rc:Parameters=false(或将其设置为true)只会启用参数下拉列表,但不会导致URL中指定的值产生任何影响。URL中的参数名称和值是正确的。但是,如果显示,它们不会更新下拉列表中的选定值。