2016-09-07 16 views
0

我GOOGLE了太多的链接,但我所得到的仅仅是在服务器端使用报表查看器来处理以上要求。如何使用报告属性或在报告代码部分编写自定义代码来限制SSRS rdlc文件中的导出选项?

我只想在我的最后解决一些问题。

例如:在创建\修改rdlc文件时,是否可以限制导出选项?使用报告属性或在报告代码部分中编写自定义代码。

我已经在rdl文件上工作&不是rdlc的,所以对它没有太多的想法。

我希望这个问题能够在堆栈标准下正确显示!

感谢,

编辑:这是不是因为这个问题集中在如何实现在报告本身的要求,而无需在服务器使得在配置文件中的任何改变可能重复的问题。其他问题\答案侧重于服务器上配置文件的更改。

+1

的可能的复制[的ReportViewer - 隐藏PDF导出](http://stackoverflow.com/questions/1499885/reportviewer-hide-pdf-export) – bitnine

回答

1

使用报表自定义代码或任何报表属性限制导出选项是不可能的。使用报告属性可以做的最接近的事情是隐藏基于Globals!RenderFormat.IsInteractive内置字段的报告组件。

但是,您可以自定义Report Viewer Web应用程序以更改符合您需要的导出选项。报告查看器有几个属性,可让您修改Show export menu item之类的内容。

REFERENCE

又读this article那里是PDF导出自定义的一个例子。

让我知道这是否有帮助。

+0

嗨亚历杭德罗·苏莱塔,正如你所说,是完美的正确。还有一个问题,是否可以在SSRS报告的工具栏中启用\ show print按钮?或者使用任何表达式在SSRS中进行编码?我能够编写window.open(),但它是打印滚动条和所有... – Aditya

+1

@Aditya,使用表达式是不可能的,报告查看器工具栏默认显示打印按钮,您可以通过编程禁用/启用它( SSRS 2008)。[检查此](https://msdn.microsoft.com/en-us/library/ms155874(v = sql.105).aspx)。请注意,如果您从浏览器生成报告,则某些浏览器与打印SSRS控件不兼容。在SSRS 2012环境中,打印控件在Chrome中不可见,但可在IE和Microsoft Edge中使用。 –

1

谢谢@alejandro zuleta。

我们可以为显示报表中的数据的特定表\对象编写可见性表达式。只有在应用程序中查看报告或导出为PDF时,数据才会显示。

=IIF(Globals!RenderFormat.IsInteractive = "True", False, IIF(Globals!RenderFormat.Name = "PDF", False, True)) 

OR

我们可以抑制比PDF其他导出选项的所有SSRS报告(rdlc)可用。为此,我们需要在代码的</body>SSRSReportViewer.aspx报告查看器控件的末尾添加代码。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
<script> 
$(document).ready(function() { 
      $("a[title='Word']").parent().hide(); 
      $("a[title='Excel']").parent().hide(); }); 
</script> 
+0

不客气。我很高兴你设法达到你的要求。 –