6

我正在开发一个带有图表的 SSRS 2008 R2 RDL。目前,我在这个图表中内置了一个子报表,如果他们点击一个饼图,它会直接进入这个子报表。它当前通过“转到报告”配置为对系列的操作。

但是,我的客户希望它改为打开一个新的浏览器窗口,以便他们仍然可以看到原始图表而无需重新运行我的报告。此外,此子报表需要几个输入参数。我尝试了“转到 URL”操作链接,并在那里输入了 URL。但这不起作用,因为我无法传入我的输入参数。我怎样才能做到这一点?

此子报表采用多个参数。我将其配置为:

="javascript:void(window.open('http://evolvdb/Reports/Pages/Report.aspx?ItemPath=%2fIncoming%2fCensus_by_Date_Range2_Subreport&rs:Command=Render&startdate="+Parameters!startdate.Value+"&enddate="+Parameters!enddate.Value+"&region="+Parameters!region.Value+"&state="+Parameters!state.Value+"&office="+Parameters!office.Value+"&status="+Parameters!status.Value+"&program_hyperlink="+Fields!program_code.Value+"&funding_source_param="+Parameters!funding_source.Value+"'))"

但是当我尝试单击此子报告时,它是不可单击的。

我也试过这个,但这超过了 255 个字符数:

="javascript:void(window.open('http://evolvdb/Reports/Pages/Report.aspx?ItemPath=%2fIncoming%2fCensus_by_Date_Range2_Subreport&rs:Command=Render&startdate=" & Parameters!startdate.Value & "&enddate=" & Parameters!enddate.Value & "&region=" & Parameters!region.Value & "&state=" & Parameters!state.Value & "&office=" & Parameters!office.Value & "&status=" & Parameters!status.Value & "&program_hyperlink=" & Fields!program_code.Value & "&funding_source_param=" & Parameters!funding_source.Value & "'))"

我也试过这个,但这也不能点击:

="javascript:void(window.open('http://evolvdb/Reports/Pages/Report.aspx?ItemPath=%2fIncoming%2fCensus_by_Date_Range2_Subreport&rs:Command=Render
&startdate="+Parameters!startdate.Value+"
&enddate="+Parameters!enddate.Value+"
&region="+Parameters!region.Value+"
&state="+Parameters!state.Value+"
&office="+Parameters!office.Value+"
&status="+Parameters!status.Value+"
&program_hyperlink="+Fields!program_code.Value+"
&funding_source_param="+Parameters!funding_source.Value+"'))"
4

1 回答 1

1

我正在查看您尝试的最后一个代码片段,这是我的反馈:

  • 报告路径看起来不正确。应该是格式http://evolvdb/ReportServer/Path/To/Report&Parameters=XX
  • 您不能将 SSRS 中的字符串与+并且需要改为使用&

例子:

="javascript:void(window.open('http://evolvdb/ReportServer/Incoming%2fCensus_by_Date_Range2_Subreport&rs:Command=Render
&startdate=" & Parameters!startdate.Value & "
&enddate=" & Parameters!enddate.Value & "
&region=" & Parameters!region.Value & "
&state=" & Parameters!state.Value & "
&office=" & Parameters!office.Value & "
&status=" & Parameters!status.Value & "
&program_hyperlink=" & Fields!program_code.Value & "
&funding_source_param=" & Parameters!funding_source.Value & "'))"

我对创建 SSRS 链接的一般建议是使用您的浏览器并从零编程开始。确保您的报表路径正确,然后手动添加参数并确保报表正确接受参数值。一旦你有一个有效的 URL 示例,在你的报告中创建一个文本框,它会输出你正在尝试创建的 URL 字符串。这是一种确保您获得预期输出的简单方法,并且您可以与您在第一步中手动制作的 URL 进行比较。最后,将完成的表达式放入“Go to URL”操作中,您应该很可能拥有一个可以按预期工作的链接。

于 2017-12-20T17:35:48.977 回答