目次
ReportViewerコントロール(Windowsアプリケーション)
市販のレポートコントロールにはひけをとりますがVS2013標準のReportViewerコントロール(Windowsアプリケーション)を使用したサンプルソースを 紹介したいと思います。rdlcファイルの知っていると得するちょっとしたサンプルも平行して紹介します。
レポートファイル(*.rdlc)をReportViewerコントロールにて起動
using Microsoft.Reporting.WinForms;
repview.LocalReport.ReportPath = "レポートファイルのフルパス";
repview.RefreshReport();
外部パラメータ渡し
using Microsoft.Reporting.WinForms;
ReportParameter[] rp = new ReportParameter[2];
rp[0] = new ReportParameter("ReportParameter1", "xxxa");
rp[1] = new ReportParameter("ReportParameter2", "xxxb");
repview.LocalReport.SetParameters(rp);
「レポートデザイン(*.rdlc)」「レポートデータ」「パラメーターの追加」にてReportParameter1,ReportParameter2を追加してください。
「レポートデザイン(*.rdlc)」にて追加したパラメーターフィールドを適当な場所にD&Dします。レポートを実行すれば出力されます。
スポンサーリンク
テーブルヘッダーを改ページ後も出力
グループ設定の横にある▼にて詳細設定モードを有効にする。 行グループの最上位に(静的)と言う固定行の設定が出現。
出現した行グループの(静的)をクリックするとレポートデザインでテーブルヘッダー部分が選択されます。 プロパティでRepeatOnNewPageをTrueに設定する。
※詳細設定モードを有効にできれば、大丈夫だと思います。自分も最初、少し苦労しました。
ReportViewerを印刷レイアウトモードで表示
using Microsoft.Reporting.WinForms;
//印刷レイアウトモードで表示
repview.SetDisplayMode(Microsoft.Reporting.WinForms.DisplayMode.PrintLayout);
ReportViewerのエクスポートボタンを無効
using Microsoft.Reporting.WinForms;
//エクスポートボタン非表示
repview.ShowExportButton = false;
ReportViewerを使用した際に作成されるファイルについて
ReportViewerを使用していると以下のフォルダにページ数+αのファイル(20ページの場合,21ファイル)が作成されます。 ファイル名は「ReportPageTempFile-xxxxx」
ファイルが作成されるフォルダ名「C:\Users\UserName\AppData\Local\IsolatedStorage \bdjne022.5kz\2swrikii.oo5 \Publisher.hrvyd13ddpxak55x41ce0efyq30aahdz\AssemFiles」
Windows8.1Pro(x64),Windows7Pro(x64)の2台のマシンで検証した結果,上記赤線は環境により異なります。 どちらにせよ作成したアプリなどでクリア処理が必要となります。
実行環境に必要なランタイムについて
VSがインストールされていない環境で実行するときは、以下のランタイムが必要です。
Microsoft System CLR Types for SQLServer2012(x86,x64のバージョンがあります) Microsoft ReportViewer2012 Runtime