2013年3月4日月曜日

◆レポート作成の基本操作

ウィザードによるマトリックスレポートの作成

NorthwindJデータベースを使って、「区分/年毎の受注金額合計」を表示するマトリックス形式のクロス集計レポートを作成する。

マトリックスは「テーブルまたはマトリックスウィザード」を使うと簡単に作成できる。

  1. レポートビルダーを起動する
  2. 「作業の開始」ページが表示されたら「新しいレポート」から「テーブルまたはマトリックスウィザード」をクリック
    image
    もし、間違って閉じてしまった場合は「新規作成」で開きなおす。
    image
  3. データセットの選択で「データセットを作成する」をチェックして「次へ」
    image
  4. 「データソースへの接続の選択」ページで「新規」ボタンをクリックし、表示された「データソースのプロパティ」ダイアログで「ビルド」ボタンをクリックする
    image
  5. 「接続のプロパティ」ダイアログが表示されたら「サーバー名」と「データベース名」を入力して「OK」
    image
    ちなみに、サーバー側でファイアウォール設定が済んでいないと繋がらなかったりする。
    その場合は以下を参照して設定しておく。
    MTG Blog: ◆SQLServerへの接続を許可するファイアウォール設定
  6. 「データソースのプロパティ」ダイアログへ戻ったら「名前」へ任意のデータソース名を入力して「OK」
  7. 「データソースへの接続の選択」に戻ったら今設定したデータソースが選択されているのを確認して「次へ」
    image
  8. 「クエリのデザイン」ページでレポートのもとになるデータを指定するためにテーブルと列を選択する
    image
  9. 「テキストとして編集」をクリックし自動生成されたSQLを表示させる
    image
  10. 以下の2か所のSQLをカスタマイズする
    image
  11. ツールバーの実行ボタンをクリックし、カスタマイズした「受注金額」と「年」が表示されるのを確認して「次へ」
    image
  12. 「フィールドの配置」ページで「使用できるフィールド」から「年」を「列グループ」へ、「受注金額」を「∑値」へ、「区分名」を「行グループ」へドラッグ&ドロップして「次へ」
    (ピボットテーブルと同じイメージ)
    image
  13. 「レイアウトの選択」ページで「小計と総計を表示」がチェックされているのを確認して「次へ」
    image
  14. 「スタイルの選択」ページで好みのスタイルを選択して「完了」
  15. デザイン画面に戻ったら「実行」ボタンをクリックして結果を表示してみる
    image
    image
  16. デザインボタンをクリックするとデザイン画面に戻る。
    書式を設定すれば小数点以下非表示、通貨表示に出来る。(設定方法は後述)
    image
マトリックスの各セルの書式を変更する
マトリックス(Tablix)の書くセルの書式を変更する
  1. 書式を変更したいセルを右クリックし表示されたメニューで「テキストボックスのプロパティ」を選択
    image
  2. 左側の一覧で「番号」を選択するとExcelの書式と同様の設定画面が表示される
    image
複数のセルを纏めて書式変更する

複数のセルの書式を纏めて変更するには、変更対象のセルを複数選択して書式設定する。

複数のセルを選択する方法はExcelと同じ操作が使える。(セルをドラッグしていくと複数選択が可能。隣接していない場合はCtrlを押しながらクリックする方法も使える)

また、この場合コンテキストメニューが使えないのでリボンにある書式設定ボタンを使う。
纏めて設定できるのは元の書式が共通の場合のみである。

image

詳細な書式設定

プロパティペインを表示させることにより詳細な設定が可能になる

image

マトリックス(Tablix)の各要素の名称

マトリックス(Tablix)の各要素の名称は、次のとおり。

image

コーナー ハンドルはマトリックス全体を選択する場合などに利用し、列ハンドルは列全体を、行ハンドルは行全体を選択するときに利用する。

マトリックス(Tablix)の移動とコピー
マトリックス(Tablix)の移動

マトリックス(Tablix)を移動したい場合は、次のように左上のコーナー ハンドルをクリックして、[移動]ボタン()を表示し、このボタンをマウスでドラッグ&ドロップすると、任意の場所へ移動させることができる。

image

マトリックス(Tablix)のコピー

マトリックス(Tablix)をコピーしたい場合は、コーナー ハンドルをクリックしてマトリックス全体を選択し、そのまま Ctrl キーと C キーを押下。

image

画像の配置
画像の配置

サンプルスクリプトの中にある画像(他の物でも良い)を配置してみる。

  1. 画像を配置するには、次のようにデザイン上の任意の場所を右クリックして、[挿入]の[画像]をクリック。
    image
  2. [画像のプロパティ]ダイアログが表示されたら、画像ファイルを指定するために[インポート]ボタンをクリック。
    image
  3. [開く]ダイアログが表示されるので、サンプル スクリプト内の画像ファイル「NorthwindJ_logo.jpg」を選択して、[開く]ボタンをクリック。
    image
  4. [画像のプロパティ]ダイアログへ戻ったら、[OK]ボタンをクリックすると、次のようにレポート上に画像オブジェクトが貼り付けられる。
    追加した画像は、「レポート データ」ペインの[画像]フォルダーにも格納される。
    image
画像の移動

一旦配置した画像を移動する手順。

  1. 画像を移動するには、画像を選択して、次のようにマトリックスの上までドラッグ&ドロップ
    image
  2. 画像とマトリックスが重ならないように、次のようにマトリックスを下へドラッグ&ドロップ
    image
タイトルの入力

レポートのタイトルを入力してみる。

  1. レポートには、あらかじめタイトル用のテキスト ボックスが配置されている。次のように、任意のタイトル(商品売上など)へ変更してみる。
    image
  2. 入力後、タイトルをセンタリング(中央揃え)したり、任意のフォントへ変更したりするなどして、任意の書式へ変更しておく。
    image
  3. プレビューを表示し、タイトルが表示されることを確認
    image
レポート ファイルの保存(.rdl)

作成したレポートは、レポート サーバー(Reporting Services をインストールしたサーバー上)へ保存することで、共有することができる。

  1. 、[レポート ビルダー]メニューから[オプション]ボタンをクリック
    image
    [レポート ビルダー オプション]ダイアログが表示されるので、[既定で使用するレポート サーバーまたは SharePoint サイト]で、レポート サーバー(Reporting Services がインストールされているマシン)の URL を次のように入力。
    image
    入力後、[OK]ボタンをクリック。
  2. 、[レポート ビルダー]メニューから[名前を付けて保存]をクリック
    image
    これにより、[レポート サーバーへの接続]ダイアログが表示される。
  3. [レポートとして保存]ダイアログが表示されたら、[最近使ったサイトとサーバー]をクリックすると、レポート サーバーの URL(前の手順で設定した URL)が表示されるので、これをダブル クリック。
    image
    [検索対象]へ選択したレポート サーバーの URL が表示されていることを確認して、[名前]へ任意のレポート名(画面は repo1.rdl)を入力し、[保存]ボタンをクリック。
    以上で、保存完了。
Web ブラウザーからの参照

レポート サーバー上へ保存(配置)したレポートは、Web ブラウザーから参照が可能。

  1. Internet Explorer を起動して、アドレスへ次のように入力して接続
    image
    image
    保存したレポートの名前と、保存された日時が表示されていることを確認できる。
  2. レポート名をクリックすると、レポートを表示することができる。
    image
Excel へのエクスポート

レポートは、Microsoft Office Excel や Microsoft Office Word、PDF ファイルなどへエクスポートすることもできる。Word へのエクスポートは SQL Server 2008 から提供された機能で、SQL Server 2012 からは Office 2007/2010 のファイル形式 .xlsx や .docx などでエクスポートされるようになった。

  1. Excel へのエクスポートを行うには、次のように、[エクスポート]ボタンから「Excel」をクリック
    image
  2. これにより、[ファイルのダウンロード]ダイアログが表示されるので、[保存]ボタンをクリックし、任意の場所へ保存する。
レポート マネージャーからのレポートの参照

Reporting Services には、レポート マネージャーというレポートを管理するためのツールが用意されているので、これを試してみる。

  1. レポート マネージャーを起動するには、Internet Explorer のアドレスへ次のように入力
    image
    これにより、レポートの一覧が表示されます。また、ツール バーの「ファイルのアップロード」をクリックすれば、レポート(.rdl ファイル)をアップロードすることも可能。
    image
  2. レポートをクリックすると、レポートを表示することもできる。
    image
共有データ ソースと共有データセットの作成

レポートの元となるデータを定義している「データ ソース」や「データセット」は、レポート サーバー上に保存して、複数のレポートから共有することができる。これらは、それぞれ「共有データ ソース」と「共有データセット」と呼ばれている。なお、データセットの共有ができるようになったのは SQL Server 2008 R2 から。
この自習書では、この後、何度も同じデータ ソース/データセットを利用してレポートを作成するので、ここで共有データ ソースと共有データセットを作成しておく。

共有データ ソースの作成
  1. 共有データ ソースを作成するには、次のように、レポート マネージャーで、[新しいデータ ソース]をクリック
    image
  2. [新しいデータ ソース]ページが表示されたら、[名前]へ任意のデータ ソース名(画面は DS_NorthwindJ1)を入力。
    image
    [接続文字列]には、次のように入力。
    image
    「Server=」に続けて SQL Server の名前(画面は localhost)、「Database=」に続けてデータベースの名前(NorthwindJ など)を入力します。
    [接続に使用する認証]では、[レポート サーバーに保存され、セキュリティで保護された資格情報]を選択して、[ユーザー名]と[パスワード]へ SQL Server の NorthwindJ データベースへアクセス可能なユーザー名(ログイン アカウント名。画面は moon\administ rator)とパスワードを入力し、[データ ソースへの接続時に Windows 資格情報として使用する]を選択します。
    設定後、[接続テスト]ボタンをクリックして、[接続が正常に作成されました]と表示されれば、接続情報が正しく入力されています。最後に、[OK]ボタンをクリックすれば、データ ソースの作成が完了です。
共有データセットの作成

レポートサーバー上に作っておくビューといった感じ。

  1. 共有データセットを作成するには、まずレポート ビルダーを起動
  2. [作業の開始]ページが表示されたら、[新しいデータセット]を選択して、[他のデータ ソースを参照します]をクリック。
    image
    [データ ソースの選択]ダイアログが表示されたら、事前に作成した共有データ ソース(画面は DS_NorthwindJ1)を選択。
  3. [作業の開始]ページへ戻ったら、選択した共有データ ソースが表示されていることを確認して、[作成]ボタンをクリック。
    image
  4. [データ ソースの資格情報の入力]ダイアログが表示されたら、データ ソースに接続するための適切な資格情報を入力して、[OK]ボタンをクリック。
    image
  5. 次に、クエリ デザイナー画面が表示されるので、前回と同様、[テーブル]フォルダーを展開して、「受注」テーブルの「受注コード」と「受注日」、「受注明細」テーブルの「単価」と「数量」、「商品」テーブルの「商品名」、「商品区分」テーブルの「区分名」列を選択。
    image
  6. 、ツールバーの[テキストとして編集]ボタンをクリックして、自動生成された SELECT ステートメントを次のように編集(4ヶ所を編集)。
    image
    imageクエリの編集後、ツール バーの[!](実行)ボタンをクリックして、結果を確認する。このクエリでは、"受注年" を取得するために、「受注」テーブルの「受注日」列に対して YEAR 関数を利用、DATENAME 関数を利用して、四半期と月をそれぞれ取得するようにしている。
    クエリ結果を確認したら、画面上部の[保存]ボタン(フローピーの形をしたアイコン)をクリック。
  7. [データセットとして保存]ダイアログが表示されたら、任意のデータセット名(画面は ds_受注クエリ.rsd)を入力して[OK]ボタンをクリック
    image
  8. 作成した共有データセットをレポート マネージャーで確認すると、次のように表示される。
    image

    0 件のコメント:

    コメントを投稿