SSRS Enable-Disable Client-Side Printing


Report server administrators have the option of disabling the remote print feature by setting the report server system property EnableClientPrinting to false. This will disable client-side printing for all reports managed by that server. By default, EnableClientPrinting is set to true. You can disable client-side printing in the following ways:

·         For a Native mode report server:

1.    Start Management Studio with administrative privileges.

2.    Connect to a report server instance in Management Studio.

3.    Right-click the report server node, and then click Properties. If the Properties option is disabled, verify you started Management Studio with administrative privileges.

4.    Click Advanced.

5.    Select EnableClientPrinting.

6.    Set to True or False and then Click OK.

ssrs_ssmsproperties_clientprinting

·         For a SharePoint mode report server:

1.    In SharePoint Central Administration, click Application Management.

2.    Click Manage service applications.

3.    Click the name of your Reporting Services service application, and then click Manage in the SharePoint ribbon.

4.    Click System Settings.

5.    Select Enable Client Printing. The Enable Client Printing option is near the bottom of the page.

6.    Click OK.

·         Write script or code to set the report server system property EnableClientPrinting to false.

The following sample script illustrates one approach for disabling client-side printing. Compile and then run the following Microsoft Visual Basic code to set the EnableClientPrinting property to False. After you run the code, restart IIS.

Imports System
Imports System.Web.Services.Protocols
Class Sample
Public Shared Sub Main()
Dim rs As New ReportingService()
rs.Credentials = System.Net.CredentialCache.DefaultCredentials
Dim props(0) As [Property]
Dim setProp As New [Property]
setProp.Name = “EnableClientPrinting”
setProp.Value = “False”
props(0) = setProp
Try
rs.SetSystemProperties(props)
Catch ex As System.Web.Services.Protocols.SoapException
Console.Write(ex.Detail.InnerXml)
Catch e as Exception
Console.Write(e.Message)
End Try
End Sub ‘Main
End Class ‘Sample

Advertisements