[]
レポートにパラメータを設定して、特定の基準に基づいてデータをフィルタリングすることができます。最終結果を制御できるように、ユーザーにパラメータを入力するダイアログを表示するか、バックグラウンドでパラメータを指定することができます。
このチュートリアルでは、最終結果を表示する前、レポートにパラメータを追加してプロンプトとして使用する手順を説明します。
このチュートリアルを完了すると、次のようなレポートが作成されます。
プレビューで選択されたパラメーターは次のとおりです。
Parameter1 = RJ and Parameter2 = HANAR
新しいレポートを作成します。デフォルトでは、空白の RDLレポート が作成されます。
データソースに接続します。
[データ] タブをクリックして、データソースの [+ 追加] をクリックします。
[データソースの編集] ダイアログでは、次のURLをリモートJSONプロバイダの [エンドポイント] に指定します。
https://demodata-jp.grapecity.com/northwind/odata/v1/Orders
データセットを追加します。
追加したデータソースの [新規データセット] をクリックします。
[新規データセットの編集] ダイアログでは、 JSONパス に「$.value[*]」を入力します。
データソースへの接続とデータセットの追加については、データの連結を参照してください。
データセットのフィールドを展開して、 [フィールドを選択...] オプションを有効にします。
必要なフィールドを選択して、デザイン面にドラッグ&ドロップします。
列がフィールドにバインドされたテーブルが作成されます。 詳細行の上のヘッダー行は、自動的にラベルが記入されます。
または、最初に Table データ領域 をレポートのデザイン面にドラッグ&ドロップし、フィールドを詳細行にドラッグ&ドロップすることもできます。
レポートにパラメータを2つ追加します。 このパラメータは、データをフィルタするために使用されます。1つは[ShipRegion]フィールドのフィルタとして利用し、もう1つは[CustomerId]フィールドのフィルタとして利用します。
[ShipRegion]フィールドのデータをフィルタリングするパラメータを追加するために、次の手順を行います。
[データ] タブをクリックします。レポートデザイナの右上隅から、 [データ] アイコンをクリックします。
[パラメータ] の隣にある [+ 追加] をクリックします。 [レポートパラメータ1] というパラメータが追加されます。
[レポートパラメータ1]をクリックして、[パラメータの編集]を表示します。
データタイプ プロパティをStringに設定します。
[使用できる値] セクションの [クエリから値を取得] タブをクリックし、プロパティを次のように設定します。
プロパティ名 | プロパティの値 |
---|---|
データセットの名前 | Dataset |
値フィールド | ShipName |
ラベルフィールド | ShipName |
以上の設定の結果、画像のようになります。
[CustomerId]フィールドのデータをフィルタリングするパラメータを追加するために、次の手順を行います。
[データ] タブをクリックします。
[パラメータ] の隣にある [+ 追加] をクリックします。 [レポートパラメータ2] というパラメータが追加されます。
[レポートパラメータ2]をクリックして、[パラメータの編集]を表示します。
データタイプ プロパティをStringに設定します。
[使用できる値] セクションの [クエリから値を取得] タブをクリックし、プロパティを次のように設定します。
| プロパティ名 | プロパティの値 |
| -------- | ----- |
| データセットの名前 | Dataset |
| 値フィールド | CustomerId |
| ラベルフィールド | CustomerId |
以上の設定の結果、画像のようになります。
これで、[パラメータ]セクションは次のように表示されます。
レポートに描画するデータ量を制御するには、Tableデータ領域にパラメータをフィルタとして追加します。
ユーザーがShipRegionパラメータ(Parameter1)に入力した値にしたがってデータを描画するフィルタを追加するために、次の手順を行います。
テーブルを選択し、[プロパティ]タブをクリックします。
[データ] セクションの [フィルタ] プロパティで、 [項目の表示] をクリックし、 [+ 項目の追加] をクリックします。
をクリックして、[フィルタのプロパティ]を表示します。
[式] プロパティの隣にあるボタンをクリックして、フィールドのリストを表示し、 「ShipRegion」 を選択します。
[演算子] プロパティの隣にあるドロップダウンを開き、 「Equal」 を選択します。
[値] プロパティに「=Parameters!Parameter1.Value」式を入力します。
CustomerIdパラメータ(Parameter2)にしたがってデータを制限するフィルタを追加するために、次の手順を行います。
[← フィルタのプロパティ] をクリックして [プロパティ] タブへ戻ります。 [データ] セクションの [フィルタ] プロパティの横にある [項目の表示] をクリックし、 [+ 項目の追加] を選択します。
をクリックして、[フィルタのプロパティ]を表示します。
[式] プロパティの隣にあるラジオボタンをクリックして、フィールドのリストを表示し、 「CustomerId」 を選択します。
[演算子] プロパティの横にあるドロップダウンを開き、 「Equal」 を選択します。
[値] プロパティに「=Parameters!Parameter2.Value」の式を入力します。
これで、[← フィルタのプロパティ]をクリックして[プロパティ]タブに戻ると、[フィルタ]プロパティには次のように表示されています。
デザイナの上部にある [レポート] タブに移動し、 [ヘッダの追加] オプションを選択します。
TextBox コントロール をヘッダー面にドラッグ&ドロップします。
テキストボックスでクリックし、「Customer Orders Report」を入力します。
メモ: 必要に応じてデータを格納する各コントロールの位置やサイズを調整し、外観を整えてください。
テキストの配置を設定するには、 [テキスト] セクションの [水平方向の整列] (Left、 Right、 Center、 など) プロパティおよび [テキスト] セクションの [水平方向の整列] (Top、 Middle、 または Bottom) プロパティを設定します。
テーブルのページヘッダとヘッダ行の背景色するには、 [背景] セクションの [背景色] プロパティを 「#f1f1f1」 に設定します。
[フォント名] プロパティを使用して、フォントを「Song」に設定します。
[テキスト] セクションの [色] プロパティを使用して、ページヘッダのテキスト色を「#3da7a8」に設定します。
ページヘッダのテキストの [TEXT] セクションの [フォントサイズ] を16ptに設定します。同様に、テーブルのテキストを8ptに設定します。
テーブル内のテキストボックスの罫線プロパティを設定します。 [罫線] セクションの [幅] を「0.25pt」、 [罫線] セクションの [スタイル] を 「Solid」 、および [罫線] セクションの [色] を 「Gainsboro」 に設定します。
[プレビュー] をクリックして、レポートの出力結果を表示します。Parameter1(ship region)とParameter2(customer id)を選択するように求められますので、それぞれドロップダウンから値を選択し、 [レポートのプレビュー] をクリックします。
メモ: [パラメータ]プロパティにリストされている値は、デフォルトでは並べ替えが設定されていません。設定するには、並べ替えを設定したデータセットが必要になります。
プレビューモードを終了するには、デザイナの左上にある [戻る] をクリックします。
[名前を付けて保存] をクリックして、レポートの名前を任意のものに変更し、 [レポートの保存] をクリックします。