【发布时间】:2016-03-10 23:38:57
【问题描述】:
我们有带有 Reporting Service 插件的 SharePoint 2013。
我们有可以在 IFRAME 中运行 SSRS 报告的 ERP。
ERP dns 是 ERP.OURDOMAIN.COM,SharePoint 是 SP.OURDOMAIN.COM
我的报告具有转到 ERP 的 URL 操作。
问题是我们需要在新窗口或 IFRAME 中打开链接。
这适用于 TARGET=_BLANK 或例如。目标=_erpIFrame。
问题是由于某种原因 SSRS 将 TARGET="_TOP" 添加到 Go To URL。
我尝试使用 javascript 打开链接,例如。
javascript:void(window.open('http://erp.ourdomain.com/default.aspx?ProjectCode=12345','_blank'))
当我直接从 SharePoint 2013 报告库运行该链接时,该链接可以正常工作。
但是当报表在 ERP 服务器的 IFRAME 中运行时,链接根本不起作用。
当我点击链接时没有任何反应。
我不知道是否是 IFRAME 和域名导致某些 IE11 安全阻塞。或者 HTML 源代码中的链接看起来像这样的事实:
<a tabindex="1" class="A45592b6319f04852ae690abb779bfb4393a" href="javascript:void(window.open('http://erp.ourdomain.com/default.aspx?ProjectCode=12345','_blank'))" target="_top">12345</a>
请注意,最后一个 target="_top" 是 SSRS 添加的,我找不到任何方法告诉 SSRS 不要添加它。
如果我使用普通链接 http://erp.ourdomain.com/default.aspx?ProjectCode=12345,链接会在 _TOP 中打开并删除 ERP 导航。
我也尝试在报告 URL 中添加 target='_blank',例如。
http://sp.ourdomain.com/_layouts/ReportServer/RSViewerPage.aspx?rc:LinkTarget=_blank&rv:RelativeReportUrl=/Reports/report.rdl
或者
http://sp.ourdomain.com/_layouts/ReportServer/RSViewerPage.aspx?rv:RelativeReportUrl=/Reports/report.rdl&rc:LinkTarget=_blank
但是当我检查报告上的 HTML 源代码时,链接总是有 target="_top"
所以 rc:LinkTarget 没有效果。
请帮忙,有没有办法让它工作?
【问题讨论】:
标签: iframe sharepoint reporting-services