SSRS - 禁用导出选项单独报告(例如PDF)。(SSRS - Disabling export

2019-08-19 19:01发布

我们有我们使用网站上的许多报告。 虽然出口一些报道为PDF格式,文件大小变得庞大,服务器崩溃,由于加载。 因此,这将是巨大的,如果我可以禁用出口只对某些问题的报告PDF选项。

那么,有没有一种方法来禁用某些输出选项:在报表查看器9.0(SSRS)(例如导出为PDF),个别报道?

谢谢。

Answer 1:

万一别人说出声之前在这里或在相关报道:

该neatiest全球解决办法是找到在RS配置文件中的渲染引擎(矿山坐落在:C:\ Program Files文件\ Microsoft SQL Server的\ MSRS12.MSSQLSERVER \ Reporting Services的\的ReportServer \ rsreportserver.config),转到XML密钥: 扩展 > 渲染和你要隐藏的每个条目的末尾插入以下属性:

可见=“假”

例:

<扩展名= “XML”类型= “Microsoft.ReportingServices.Rendering.DataRenderer.XmlDataReport,Microsoft.ReportingServices.DataRendering” 可见= “假”/>

或者把<! -- >(HTML注释标记)在入口的开始和结束。

对于个别报道这些功能就可以了。



Answer 2:

您可以在这里在一个特定的配置文件隐藏全球PDF按钮:

“安装路径\ Reporting Services的\的ReportServer \ rsreportserver.config”

欲了解更多的信息,已经有一个关于这个StackOverflow上的话题。

这里更多的答案,请查看: 的ReportViewer -隐藏PDF导出



Answer 3:

您可以在报表查看器中使用Pre_render事件。

  protected void ReportViewer1_PreRender(object sender, EventArgs e)
        {
            DisableUnwantedExportFormat((ReportViewer)sender, "Excel");
            DisableUnwantedExportFormat((ReportViewer)sender, "Word");
        } 

看看这个帖子

例如删除保存为SSRS



Answer 4:

我对这个解决方案

$(document).ready(function() {
        var sel = $("select#ReportViewer2_ctl01_ctl05_ctl00");
        sel.find("option[value='XML']").remove();
        sel.find("option[value='CSV']").remove();
        sel.find("option[value='IMAGE']").remove();
        sel.find("option[value='MHTML']").remove();
        sel.find("option[value='PDF']").remove();
        sel.find("option[value='EXCEL']").remove();
});


Answer 5:

这解决了问题(部分为我们):

http://social.msdn.microsoft.com/Forums/en-US/sqlreportingservices/thread/0c680c69-9f7d-42aa-a6b4-b1178eab8adf



Answer 6:

我用的是MvcReportViewer库来获得我们的MVC应用程序SSRS的报表查看器。 该库不支持用户控制生命周期事件,所以我不能够使用由shamcs给出的prerender方法。 通过Ristanovic马尔科描述的Javascript方法部分的工作,但选择不为SSRS的版本中,我们使用的工作,它需要的JQuery在iframe中被加载,并没有描述的方式仅适用于特定报表做到这一点。 以下是我想出了:

在我的ReportViewer部分,添加以下脚本块:

var frame = $('#reportframe');
var src = frame.attr('src');
frame.attr('src', src + '?showAdditionalExports=' + @ViewBag.ShowExportsAttribute);

在ReportViewerWebForm.aspx,我添加了另一个脚本块:

var urlParams = new URLSearchParams(location.search);
if (urlParams.get('showAdditionalExports') === 'true') {
    document.addEventListener("DOMContentLoaded",
        function() {
            ['Word', 'Excel'].map(function(title) {
                var menuItem = document.querySelector("#ReportViewer1 a[title='" + title + "']")
                    .parentNode;
                menuItem.parentNode
                    .removeChild(menuItem);
            });
        });
    }


Answer 7:

您可以使用一个div在那个保存按钮并设置其属性如下图所示

<div style="
    background-color: white;
    z-index: 100;
    height: 61px;
    position: absolute;
    padding-left: 500;
    padding-left: 36px;
    margin-left: 370px;
    opacity: 0.5;
"></div> 


Answer 8:

现在的问题是不是新的,但也许对别人有同样的问题,我的回答是有用的,太。 在web.config => configuration => configSections部分粘贴Telerik的报告新的配置,如果你不具备:

<section
      name="Telerik.Reporting"
      type="Telerik.Reporting.Configuration.ReportingConfigurationSection, Telerik.Reporting, Version=11.0.17.118, Culture=neutral, PublicKeyToken=a9d7983dfcc261be"
      allowLocation="true"
      allowDefinition="Everywhere"/>

用你的优化版本Telerik的的version属性。 你可以找到Solution Explorer => your project name => References => TelerikReporting => Properties ,并在<configrations>体,贴:

 <Telerik.Reporting>
<extensions>
  <render>
    <extension name="RTF" visible="false">
    </extension>
    <extension name="PDF" visible="false">
    </extension>
    <extension name="CSV" visible="false">
    </extension>
    <extension name="IMAGE" visible="false">
    </extension>
    <extension name="MHTML" visible="false">
    </extension>
    <extension name="XPS" visible="false">
    </extension>
  </render>
</extensions>
  </Telerik.Reporting>

在上面的代码我禁用任何类型的出口,除了Excel中。



文章来源: SSRS - Disabling export options (eg. PDF) for individual reports