Reporting Services のクライアント側印刷機能の有効化と無効化
レポート ビューアーのツールバーにある印刷ボタンをクリックすると、ブラウザーに表示される Reporting Services レポートのクライアント側印刷機能で Portable Document Format (PDF) 形式が使用されます。 新しいリモート印刷の動作では、 Reporting Servicesに含まれている PDF 表示拡張機能を使用して、レポートを PDF 形式で表示します。 PDF 形式のレポートはダウンロードできます。また、PDF ファイルを表示するためのアプリケーションがインストールされている場合は、印刷ボタンをクリックすると、PDF ファイルのページ サイズ、印刷の向き、プレビュー画像など、ページに共通の設定項目が印刷ダイアログ ボックスに表示されます。 クライアント側印刷機能は既定で有効になっていますが、無効にして使用できないようにすることもできます。
以前のバージョンの Reporting Services で使用されていた ActiveX コントロールは、レポート サーバーからクライアント コンピューターにダウンロードする必要がありました。 レポート サーバーを SQL Server 2016 以降にアップグレードしても、この印刷コントロールはレポート サーバーまたはクライアント コンピューターから削除されません。
印刷時の動作
レポート ビューアーのツールバーで印刷 ボタンをクリックしたときの動作は、クライアント コンピューターにインストールされている PDF 閲覧アプリケーションの種類と、使用しているブラウザーの種類によって異なります。 クライアント コンピューターの環境に応じて、PDF ファイルのダウンロード、ダイアログ ボックスでの印刷オプションの設定、またはその両方を行うことができます。
相互作用 | ユーザー インターフェイス |
---|---|
最初のダイアログ ボックスは、すべてのブラウザーで同じです。印刷の向きなどの基本的なレイアウト プロパティを変更できます。 [印刷] をクリックしたときの動作は、使用しているブラウザーによって多少異なります。 | ![]() |
Chrome では、詳細なブラウザーの印刷ダイアログ ボックスが開きます。 印刷設定を変更したり、印刷を実行したり、オペレーティング システムの印刷ダイアログ ボックスを開いたりすることができます。 | ![]() ![]() |
PDF リーダー アプリケーションがインストール済みの場合、印刷ボタンをクリックすると PDF ファイルのプレビュー ウィンドウが表示され、保存または印刷することができます。 | |
PDF リーダー アプリケーションがインストールされていない場合は、次の 2 種類の動作になります。 レポートが自動的に表示され、使用しているブラウザーのダウンロード プロセスを使用して PDF ファイルがダウンロードされます。 注: 複雑なレポートになるほど、 [印刷] をクリックしてからブラウザーのダウンロード通知が表示されるまでの時間が長くなります。 [レポートの PDF を表示するには、ここをクリックしてください。] をクリックして、PDF ファイルを再度ダウンロードすることもできます。 [レポートの PDF を表示するには、ここをクリックしてください。] をクリックして、PDF ファイルをダウンロードします。 |
![]() |
クライアント側印刷機能のトラブルシューティング
レポート ビューアーのツールバーで印刷ボタンが無効になっている場合は、次のことを確認します。
Management Studioのレポート サーバーでクライアント側印刷機能が無効になっています。 このトピックの「クライアント側印刷機能を有効または無効にする」セクションを参照してください。
SQL Server 2016 Reporting Services 以降 (SSRS) の PDF 表示拡張機能が無効になっています。
<Extension Name="PDF"
rsreportserver.config ファイルの セクションを確認してください。レポートを互換モードで表示しています。この場合、古い SQL Server 2016 Reporting Services 以降 (SSRS) HTML4 レンダリング エンジンが使用されます。 PDF の印刷には、HTML 5 レンダリング エンジンが必要です。 ツールバーの [プレビューを試す] ボタンをクリックしてください。
クライアント側印刷機能を有効または無効にする
レポート サーバー管理者は、レポート サーバーのシステム プロパティ EnableClientPrinting を falseに設定して、リモート印刷機能を無効にすることができます。 これにより、サーバーが管理しているすべてのレポートでクライアント側印刷機能が無効になります。 既定では、 EnableClientPrinting は trueに設定されています。 クライアント側印刷機能は、次の方法で無効にすることができます。
ネイティブ モードのレポート サーバーの場合:
管理者特権を使用して Management Studio を開始します。
Management Studioでレポート サーバー インスタンスに接続します。
レポート サーバー ノードを右クリックして、 [プロパティ] をクリックします。 [プロパティ] オプションが無効になっている場合は、管理者特権を使用して Management Studio を開始したことを確認してください。
[詳細設定] をクリックします。
[EnableClientPrinting] を選択します。
True または False に設定して、 [OK] をクリックします。
SharePoint モードのレポート サーバーの場合:
SharePoint サーバーの全体管理で、 [アプリケーション構成の管理] をクリックします。
[サービス アプリケーションの管理] をクリックします。
Reporting Services サービス アプリケーションの名前をクリックし、SharePoint リボンで [管理] をクリックします。
[システム設定] をクリックします。
[クライアントの印刷を有効にする] を選択します。 [クライアントの印刷を有効にする] オプションは、ページの下部付近にあります。
[OK] をクリックします。
レポート サーバー システム プロパティの EnableClientPrinting を false. に設定するスクリプトまたはコードを記述します。
次のサンプル スクリプトは、クライアント側印刷機能を無効にする方法の一例を示しています。 この Microsoft Visual Basic コードをコンパイルして実行すると、EnableClientPrinting プロパティが False に設定されます。 コードの実行後、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