- 作成するレポート(商品区分ごとの売上レポート)
- 区分コードのパラメーター化
- パラメーター値をレポートへ表示
- ドロップダウン リストによるパラメーターの選択
- ラベル フィールドをレポートへ表示
- パラメーターの複数選択
- レポート サーバーへレポートの保存
- ジャンプ レポートの作成
作成するレポート(商品区分ごとの売上レポート)
この Step では、次のようなパラメーターを含んだレポートを作成する手順を説明します。
区分コードのパラメーター化
区分コードのパラメーター化
まずは、商品の「区分コード」をパラメーター化して、選択した区分コードの売上データだけを表示するようにしてみましょう。
共有データセットの変更
- 最初に、レポート ビルダーを起動します。
- パラメーター化を行うには、データセットを変更する必要があるので、[作業の開始]ページでは、[開く]を選択します。
- [レポートを開く]ダイアログが表示されたら、[アイテムの種類]で[データセット(.rsd)]を選択して、Step2 で作成した共有データセット「ds_受注クエリ」を選択し、[開く]ボタンをクリックします。
- [データ ソースの資格情報の入力]ダイアログが表示されたら、データ ソースに接続するための適切な資格情報を入力して、[OK]ボタンをクリックします。
- これにより、[クエリ デザイナー]ダイアログが表示されて、データセットの変更が行えるようになります。
クエリ デザイナーでは、クエリの一番最後へ「WHERE 商品.区分コード = @p1」を追加して、[!](実行)ボタンをクリックします。
[クエリ パラメーターの定義]ダイアログが表示されたら、[パラメーター名]の「@p1」の[パラメーター値]へ「1」と入力して、「OK」ボタンをクリックします。これで、次のように商品区分コードが 1(飲料)のデータのみを取得することができます。
- 次に、左上のレポート ビルダー メニューから[名前を付けて保存]をクリックして、違う名前で共有データセットを保存します。
[データセットとして保存]ダイアログでは、[名前]に任意の名前(ds_受注クエリpara など)を入力して、[OK]ボタンをクリックします。
レポートの作成
次に、新しいレポートを作成します。
- レポートを作成するために、別途レポート ビルダーを起動します(共有データセットを編集しているレポート ビルダーは開いたままにしておいてください)。
- [作業の開始]ページでは、[新しいレポート]の[空のレポート]を選択します。
- レポートのデザイン画面が表示されたら、デザイン上の任意の場所を右クリックして、[挿入]から[マトリックス]をクリックします。
- [データセットのプロパティ]ダイアログが表示されたら、[参照]ボタンをクリックして、前の手順で作成した共有データセット(ds_受注クエリpara)を選択し、[開く]ボタンをクリックします。
- [データセットのプロパティ]ダイアログへ戻ったら、[OK]ボタンをクリックしてダイアログを閉じます。
- 次に、配置したマトリックスの[行グループ]へ「区分名」、[列グループ]へ「年」、[データ]へ「受注金額」フィールドを配置します。
- 次に、受注金額の書式を「通貨」へ変更します。
- 次に、「商品名」フィールドを「区分名」グループの下へ追加して、子グループを作成します。
- 次に、各セルの書式(フォントや背景色など)を任意に設定して見栄えを調整します。
パラメーターの設定
次に、パラメーターを設定します。データセットのクエリの中で、「@」マークを付けたもの(前の手順では @p1 を作成)は、自動的にパラメーターへ設定されているので、これを確認/変更します。
- パラメーターを確認するには、[レポート データ]ペインの[パラメーター]フォルダーを展開します。
p1 という名前のパラメーターが自動的に作成されていることを確認できます。 - 次に、「p1」パラメーターを右クリックして、[パラメーターのプロパティ]をクリックします。
- [レポート パラメーターのプロパティ]ダイアログが表示されたら、[プロンプト]で「商品区分」など、パラメーターの内容を表す任意の文字を入力し、[データ型]で「整数」を選択します。
- 続いて、次のように[既定値]ページをクリックして開き、[値の指定]を選択して、[追加]ボタンをクリックします。
[値]へ「1」(飲料)など、任意の商品区分コードを入力して、パラメーターの既定値を設定し、[OK]ボタンをクリックします。 - [実行]ボタンをクリックしてプレビューを表示し、ここまでの結果を確認してみます。
レポートの上部へ「パラメーター ボックス」が表示されて、既定値として設定した値(ここでは 1)が格納され、商品区分コード「1」の飲料区分の商品のみが表示されていることを確認できます。 - 次に、パラメーター ボックスの値を「2」(調味料)へ変更して、[レポートの表示]をクリックしてみましょう。
今度は、商品区分コードが「2」(調味料)の商品のみが表示されることを確認できます。このようにパラメーターを利用すると、レポートの結果を動的に変更できるようになります。
なお、「区分コード」と「区分名」の対応は、次のように Management Studio で「商品区分」テーブルの中身を参照することで確認することができます。
パラメーター値をレポートへ表示
次に、パラメーター値をレポート内へ表示するようにしてみましょう。
- まずは、次のようにレポート上のタイトルのテキスト ボックス内へ「区分」と入力します。
続いて、[パラメーター]フォルダーから「p1」パラメーターを、タイトルのテキスト ボックス内へドラッグ&ドロップします。さらに、テキスト ボックス内へ「の受注金額」と入力します。 - ここまでの設定をプレビュー表示して、結果を確認してみましょう。
パラメーター値が、レポート内へ表示されていることを確認できます。 - 続いて、パラメーター ボックスの値を「2」へ変更して、[レポートの表示]をクリックします。
今度は、レポート内の表示が「2」へ変わったことを確認できます。 - 確認後、タイトルを任意の書式(フォントなど)へ変更しておきましょう。
ドロップダウン リストによるパラメーターの選択
次に、パラメーターの値を、ドロップダウン リストで選択できるようにしてみましょう。また、このときに表示するのは区分コートではなく、区分名が表示されるようにしましょう。
- まずは、ドロップダウン リストへ表示する「区分名」を取得するために、新しくデータセットを追加します。次のように[データセット]フォルダーを右クリックして、[データセットの追加]をクリックします。
[データセットのプロパティ]ダイアログが表示されたら、[レポートに埋め込まれたデータセットを使用します]を選択して、[新規]ボタンをクリックします。 - [データ ソースのプロパティ]ダイアログが表示されたら、Step2 で作成した共有データ ソース(DS_NorthwindJ1)を選択して、[OK]ボタンをクリックします。
- [データセットのプロパティ]ダイアログへ戻ったら、[クエリ デザイナー]ボタンをクリックします。
- [データ ソースの資格情報の入力]ダイアログが表示されたら、データ ソースに接続するための適切な資格情報を入力して、[OK]ボタンをクリックします。
- [クエリ デザイナー]ダイアログが表示されたら、次のように[テーブル]フォルダーを展開して、「商品区分」テーブルの「区分コード」と「区分名」列を選択して、[クエリの実行]ボタンをクリックします。
商品区分コードと区分名が取得できていることを確認します。確認後、[OK]ボタンをクリックして、[クエリ デザイナー]を閉じます。 - [データセットのプロパティ]ダイアログへ戻ったら、[OK]ボタンをクリックしてダイアログを閉じます。
- [レポート データ]ペインの[データセット]フォルダーに、新しく「DataSet2」が追加されていることを確認できます。
- 次に、[パラメーター]フォルダーの「p1」を右クリックして、[パラメーターのプロパティ]をクリックします。
[レポート パラメーターのプロパティ]ダイアログが表示されたら、[使用できる値]ページを開いて、「クエリから値を取得」を選択します。[データセット]には「DataSet2」、[値フィールド]で「区分コード」、[ラベル フィールド]で「区分名」を選択して、[OK]ボタンをクリックします。これで、パラメーターをドロップダウン形式に変更して、区分名フィールドを表示できるようになります。 - ここまでの設定をプレビュー表示して、結果を確認してみましょう。
パラメーター ボックスがドロップダウン リストへ変更されて、区分名が選択できるようになっていることを確認できます。 - 次に、パラメーターのドロップダウン リストから任意の区分名(菓子類など)を選択して、[レポートの表示]をクリックしてみましょう。
選択した商品区分のデータが表示されることを確認できます。
ラベル フィールドをレポートへ表示
次に、パラメーターで選択した区分名を、レポートへ表示するように変更してみましょう。
- まずは、タイトルのテキスト ボックス内の [@p1] を選択して右クリックし、[式]をクリックします。
- [式]ダイアログが表示されたら、式を次のように変更します(Value を Label へ変更)。
=Parameters!p1.Label
「p1.Value」を「p1.Label」へ変更することで、パラメーターのラベル フィールドの値を表示できるようになります(ラベル フィールドには、前の手順で区分名を割り当てるように設定しています)。 - ここまでの設定をプレビュー表示して、結果を確認してみます。
任意の商品区分を選択し、[レポートの表示]をクリックすると、今度は、区分コードではなく、区分名が表示されることを確認できます。
パラメーターの複数選択
次に、「年度」を選択するパラメーターを追加して、複数の値を選択できるようにしてみましょう。
- まず、共有データセット(ds_受注クエリpara)を編集している側のレポート ビルダーを開きます。レポート ビルダーを閉じてしまっている場合は、新しくレポート ビルダーを起動して、[開く]から共有データセットを開いておいてください。
- クエリ デザイナーで、WHERE 句の最後へ「 AND YEAR(受注.受注日) IN (@p2)」を追加して、[!](実行)ボタンをクリックします。
[クエリ パラメーターの定義]ダイアログが表示されたら、「@p1」には「1」、「@p2」には「2005」と入力して、「OK」ボタンをクリックします。これで、次のように 2005年度の商品区分コードが「1」(飲料)のデータのみを取得することができます。
確認後、画面上部の[保存]ボタン(フロッピーの形をしたアイコン)をクリックして、データセットを保存します。 - 次に、レポートを作成している側のレポート ビルダーへ戻って、[レポート データ]ペインで共有データセット(DataSet1)を右クリックして、[データセットのプロパティ]をクリックします。
[データセットのプロパティ]ダイアログが表示されたら、[フィールドの更新]ボタンをクリックします。これで共有データセット側で更新された情報をレポート側に反映させることができます。
実行後、[OK]ボタンをクリックしてダイアログを閉じます。 - [パラメーター]フォルダーを展開すると、「p2」パラメーターが自動的に作成されていることを確認できます。
- 次に、p2 パラメーターを右クリックして、[パラメーターのプロパティ]をクリックします。
[レポート パラメーターのプロパティ]ダイアログが表示されたら、[プロンプト]へ「年度」など、パラメーターの内容を表す任意の文字を入力し、[複数の値を許可]をチェックします。 - 続いて、[使用できる値]ページをクリックして開き、[値の指定]を選択します。[追加]ボタンをクリックして、[値]へ「2005」と入力します。
同様の操作で、「2006」と「2007」の[値]を追加していきます。 - 次に、[既定値]ページを開いて、既定値を指定します。
[値の指定]を選択して、[追加]ボタンをクリックし、[値]へ「2005」と入力します。同様の操作で、「2006」と「2007」の[値]を追加していきます。 - 設定後、プレビューを表示して、結果を確認してみましょう。
レポートの上部に[年度]のパラメーター ボックスが表示されることを確認できます。 - パラメーター ボックスで任意の年度を複数選択して(2006と2007など)、[レポートの表示]ボタンをクリックします。
2006年と2007年のデータのみが表示されることを確認できます。
このように、クエリで IN 演算子でパラメーターを定義して、[複数値を許可]するように設定すれば、複数の値を選択できるようになります。
レポート サーバーへレポートの保存
レポート サーバーへレポートの保存
以上で、この Step のレポート作成が完了ですが、作成したレポートは、次の Step でも使用するので、名前を付けてレポート サーバー上へ保存しておきます。
レポート マネージャーからパラメーターの確認
レポート サーバー上に保存したパラメーター付きのレポートは、レポート マネージャーからパラメーターを確認/変更することもできます。これも確認しておきましょう。
- まずは、Internet Explorer を起動して、次のように URL を入力して、レポート マネージャーへアクセスします。
http://サーバー名/Reports
レポートの一覧が表示されたら、「SalesRepo」の[▼]ボタンをクリックして、[管理]をクリックします。 - 次に、[パラメーター]ページをクリックして開くと、パラメーターの既定値やプロンプト(文字列の表示)などを変更することができます。
ジャンプ レポートの作成
ジャンプ レポートの作成
Reporting Services のレポートは、次のように別のレポートへジャンプさせることも簡単に行うことができます。
グラフやレポート内の任意の値をクリックしたときに、その値をジャンプ先となるレポートのパラメーターへ代入する値として渡すことができます。
- ジャンプ先のレポートには、この Step で作成した SalesRepo レポートを利用します。
- ジャンプ元のレポートには、次のように区分ごとの受注金額を「円グラフ」で表示するレポートを利用します。
作成方法は、Step 3 で作成したグラフとほとんど同じで、[Σ値]へ「受注金額」、[カテゴリ グループ]へ「区分名」を設定して、区分ごとの受注金額を円グラフで表示するようにします。
上画面のレポートは、データ ラベルを設定していますが、これを設定する方法については、Step 11 で説明します。 - ジャンプ先となるレポートを設定するには、次のようにグラフを選択して右クリックし、[系列のプロパティ]をクリックします。
- [系列のプロパティ]ダイアログが開いたら、[アクション]ページを開いて、[レポートに移動する]を選択し、[レポートの指定]で[参照]ボタンをクリックします。
- [レポートの選択]ダイアログが表示されたら、レポート サーバー上の「SalesRepo」レポートを選択して、[開く]ボタンをクリックします。
- [系列のプロパティ]ダイアログへ戻ったら、[レポートの実行に使用するパラメーター]では、[追加]ボタンをクリックして、[名前]で「p1」、[値]で「[区分コード]」を選択し、[OK]ボタンをクリックします。
以上で、ジャンプ レポートの設定が完了です。
なお、上記ダイアログで、パラメーターへ渡す値として「区分コード」を選択するには、データセットのクエリとして、次のように「区分コード」を取得しておく必要があります(Step 2 で作成した共有データセットは、区分コードを取得していないため、新しいデータセットを作成する必要があります)。
- 設定後、レポートをレポート サーバー上へ保存します。
- Internet Explorer でレポートへアクセスし、ジャンプ レポートが正しく動作することを確認しておきましょう。
0 件のコメント:
コメントを投稿