作成日: 2017/02/24 最終更新日: 2019/09/24
文書種別
使用方法
詳細
Webアプリケーションでプレビュー表示せずにレポートを印刷する場合、印刷したいプリンタの場所によって実装方法が異なります。
(この方法は、規模の小さなイントラネットなど、使用環境が限られます。)
この方法で印刷する場合、アプリケーションプールIDに設定されているアカウントがプリンタに対するアクセス権限を持っている必要があります。
アプリケーションプールの設定については、以下の技術情報などをご参照ください。
アプリケーション プール ID
IIS 7.0 での組み込みユーザーとグループ アカウントとは
また、製品ヘルプの以下のトピックもあわせてご覧ください。
ActiveReportsユーザーガイド
- よくある質問
- セクションレポート
- Web
- 「サーバー側で印刷を行う」
クライアント側のプリンタに印刷する場合
ActiveReports for .NET を使用した Webアプリケーションで、クライアント側のプリンタに直接印刷する場合、いくつかの方法が考えられます。- PDFを使用する方法
PDFを使用する場合、WebViewerコントロールをWebForm上に配置し、そのViewerTypeプロパティを"AcrobatReader"に設定し、OnlyForPrintプロパティをTrueに設定します。このように設定することで、生成されたレポートはビューワ上に表示されることなく、印刷設定ダイアログが表示されます。詳細については、製品ヘルプの以下の内容をご参照ください。
ActiveReportsユーザーガイド
- 基本操作
- WebViewerでプレビュー無し直接印刷の設定(Professional)
※注意事項
- 印刷設定ダイアログを表示させずに直接プリンタに印刷することはできません。
- WebViewerコントロールはProfessional限定の機能です。Standardではご利用いただけません。
- この方法はInternet Explorerでのみ有効です。Microsoft Edge、Chromeでは印刷が実行されません。
- Flashビューワを使用する方法
Flashビューワを使用する場合、WebViewerコントロールをWebForm上に配置し、そのViewerTypeプロパティを"FlashViewer"に設定してください。なお、Flashビューワを使用した直接印刷には、StartPrintプロパティを使用する方法と、クライアントスクリプトを使用する方法があります。
- StartPrintプロパティを使用する方法
WebForm上に小さなサイズ(例:1×1)に設定したWebViewerコントロールを配置し、FlashビューワのStartPrintプロパティを"True"に設定します。このように設定することで、サイズが1×1のFlashビューワがブラウザにロードされ、ロードが完了した時点で、印刷設定ダイアログが表示されますので、結果的にプレビュー表示なしの印刷が実現できます。
詳細については、製品ヘルプの以下の内容をご参照ください。
ActiveReportsユーザーガイド
- レポートの表示
- ASP.NET用のビューワの使用
- Flashビューワの使用
- 基本操作
- WebViewerでプレビュー無し直接印刷の設定(Professional)
- サンプルとチュートリアル
- サンプル
- Professionalのサンプル
- Professional Web サンプル - クライアントスクリプトを使用する方法
WebForm上に小さなサイズ(例:1×1)に設定したWebViewerコントロールを配置し、Flashビューワのクライアントスクリプトを使用して印刷を開始します。具体的には、OnLoadProgressイベントでレポートの読み込みが完了した状態("Completed")を取得し、Printメソッドで印刷を開始することにより印刷設定ダイアログが表示され、結果的にプレビュー表示なしの印刷が実現できます。
◆サンプルコード(Javascript)
viewer.setEventsHandler({
OnLoadProgress: function(e) {
if (e.State == "Completed") {
// 印刷オプションを定義します。
var ops = viewer.CreatePrintOptions();
ops.AdjustPaperOrientation = "Auto"; // (用紙方向の調整)
ops.ScalePages = "Auto"; // (用紙サイズの調整)
ops.ClearPageRanges(); // (印刷範囲の初期化)
ops.AddPageRange(1, e.PageCount); // (印刷範囲の設定)
// 印刷を実行します。
viewer.Print(ops);
}
}
})
詳細については、製品ヘルプの以下の内容をご参照ください。
ActiveReportsユーザーガイド
- サンプルとチュートリアル
- サンプル
- Professionalのサンプル
- Professional Web サンプル
- チュートリアル
- 共通のチュートリアル(ページレポート、RDLレポートとセクションレポート)
- Professional
- Flashビューワのカスタマイズ
- 印刷設定ダイアログを表示させずに直接プリンタに印刷することはできません。
- WebViewerコントロールはProfessional限定の機能です。Standardではご利用いただけません。
- Flashビューワの使用にはAdobe Flash Playerが必要です。
- StartPrintプロパティを使用する方法
- ClickOnce で印刷機能を提供する方法
.NET Framework が提供するClickOnce機能を使用することでWebサーバー上に配置されたWindowsフォームアプリケーションを容易にクライアントに配置することが可能です。
ClickOnce のセキュリティと配置
直接印刷用のWindowsフォームアプリケーションを予め作成し、クライアントからの要求に応じて、当該アプリケーションをClickOnceアプリケーションとしてクライアント側にインストール/実行することで直接印刷を実現することが可能です。
詳細につきましては、こちらのサンプルをご覧ください。
【サンプル動作の概念図】

拡大表示
サーバー側のプリンタに印刷する場合
サーバー上のWebアプリケーションから、PrinterNameプロパティで出力先のプリンタ名を指定し、Printメソッドを使用してレポートを直接印刷します。(この方法は、規模の小さなイントラネットなど、使用環境が限られます。)
この方法で印刷する場合、アプリケーションプールIDに設定されているアカウントがプリンタに対するアクセス権限を持っている必要があります。
アプリケーションプールの設定については、以下の技術情報などをご参照ください。
アプリケーション プール ID
IIS 7.0 での組み込みユーザーとグループ アカウントとは
また、製品ヘルプの以下のトピックもあわせてご覧ください。
ActiveReportsユーザーガイド
- よくある質問
- セクションレポート
- Web
- 「サーバー側で印刷を行う」
関連情報
旧文書番号
39683