[{"id":"08e0fe96-3025-463b-bcee-87f4b29c462b","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"0d5035e7-1a53-4dc5-b32e-9ce261bfa47e","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"2fb2b485-f567-436c-9ca9-06dd71ceadb3","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"c1466f0c-9710-41d3-9812-c7321630328a","tags":[{"product":null,"links":null,"id":"e1d31134-0bda-4c05-bee0-b1f21f82940b","name":"new","color":"#00A273","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"b0e616b5-b520-405e-b108-e81363a8dd74","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"f5712fda-d364-4652-9783-3073e2560b97","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"8f03c498-1e02-459a-a6de-ee619033d6d2","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"2b701643-01a1-40e0-b49b-0a6e93c1f847","tags":[{"product":null,"links":null,"id":"e1d31134-0bda-4c05-bee0-b1f21f82940b","name":"new","color":"#00A273","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"07b4f367-7ddc-4c8a-932c-b180f112364e","tags":[{"product":null,"links":null,"id":"e1d31134-0bda-4c05-bee0-b1f21f82940b","name":"new","color":"#00A273","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]}]
SubReportコントロールは、別のレポートのデータを表示するためのプレイスホルダーです。サブレポートは、1つのデータ領域の中に異なるデータソースからのデータのグループを入れ子にする場合や、ある特定のサブレポートを複数のレポートで再利用する場合に役立ちます。
Subreportで使用することができる主なプロパティを説明します。すべてのプロパティを表示するには、プロパティモードを [詳細プロパティを表示] にする必要があります。
名前: まだレポートに使用されていない一意の名前を入力します。
レポートの名前: サブレポートとして使用するレポートファイルの名前をドロップダウンリストから選択します。
レポートパラメータ: サブレポートのレポートパラメータに設定するパラメータを追加します。パラメータ名はサブレポートのレポートパラメータ名と正確に一致する必要があります。
幅: 罫線の幅に設定する値をポイント単位で入力します。
スタイル: 罫線のスタイルを選択します。
色: カラーピッカー、標準色、Webカラーから罫線の色を示すカラーを選択します。
左: コンテナを基準としたレポートアイテムの左上端の位置。
上: コンテナを基準としたレポートアイテムの左上端の位置。
幅: レポートアイテムのサイズ。
高さ: レポートアイテムのサイズ。
パディング: テキストまたはグラフィックとレポートアイテムの端との間に配置するパディングの量。
レイヤー名: 含まれるレイヤーの名前。
Zインデックス: コントロール同士の重なりの優先順位を設定します。
1ページ内に収める: サブレポートの途中で改ページを行うか設定します。設定し、サブレポートが複数ページにまたがる場合は、出力前に改ページされます。RDLレポートのみ有効です。
データが0件の場合のメッセージ: データ行がない場合、データ領域に表示するメッセージを設定します。
色: カラーピッカー、標準色、Webカラーからメッセージに使用するカラーを選択します。
フォント名: テキストのレンダリングに使用されるフォント。
サイズ: フォントサイズを設定します。
スタイル: メッセージにフォントスタイルを適用します。次のスタイルを選択できます。
Normal: メッセージを通常のスタイルで表示します。
Italic: メッセージを斜体で表示します。
太さ: フォントの太さを設定します。
文字飾り: 線を使用してメッセージを装飾できます。以下のオプションを選択できます。
Underline: メッセージに下線を設定します。
Overline: メッセージに上線を設定します。
LineThrough: メッセージに取り消し線を設定します。
水平方向の整列: テキストの水平方向の配置。
垂直方向の整列: テキストの垂直方向の配置。
表示形式: ドロップダウンリストからメッセージの数値書式を選択します。
非表示: レポートアイテムを表示するか非表示にするかを示します。
トグルスイッチにする項目: レポートアイテムを表示するか非表示にするかを示します。
方向: テキストの書き込みが左から右と右から左のどちらの方向に行われるかを示します。
言語: テキストの主要言語を選択します。
文字表記の方向: テキストの書き込みが水平と垂直のどちらの方向に行われるかを示します。
スタイルシートの継承: 親レポートのスタイルシートがサブレポートで使用されるかどうか設定します。
ページ名: Excelエクスポートで、シート名を設定します。
ツールチップ: HTMLレポートにTITLEまたはALT属性を含めるために使用されるレポートアイテムのテキストラベル。
ラベル: 見出しマップラベルおよび検索の機能用のレポートアイテムのインスタンスを識別するラベル。
ブックマークID: [ブックマークにジャンプ]のアクションのターゲットを指定するアンカー。
サブレポートのサブテーマ: 親レポートのテーマがサブレポートで使用されるかどうか設定します。
オーバーフローデータの連結先: ページレポートのオーバーフロープレースホルダの名前。
次の例では、 Subreport コントロールを使用して、別の詳細レポートからのデータを表示するマスター詳細レポートを作成する方法を示します。マスター詳細レポートは、従業員の名前、役職、市、国などの基本情報とともに、詳細レポートから取得した注文一覧を表示します。
マスターレポートは、データを表示するための TextBox コントロールを含む List データ領域を使用します。 List データ領域は、含んでいるすべてのレポートコントロールにバインドされているデータを繰り返し表示します。マスターレポートは、詳細をフィルタリングするために、マスターレポートから詳細レポートにパラメータを渡します。
メモ: この例ではレポートファイルに、以下のようなデータソースを使用します。
データソースのリンク
https://demodata.mescius.jp/northwind/odata/v1/Employees
https://demodata.mescius.jp/northwind/odata/v1/Orders
最終的には次の画像のようなレポートとなります。
RDLレポートを作成し、 Table データ領域をデザイン面上にドラッグ&ドロップします。
データセットから、 [OrderId] 、 [OrderDate] 、 [ShippedDate] 、 [RequiredDate] 、 [ShipVia] 、および [Freight] のフィールドをドラッグして Table データ領域の詳細行にドロップします。詳細行の上のヘッダ行にラベルが自動的に表示されます。
テーブルのフッタ行の最後のセルを選択し、 [値] プロパティに「=Sum(Fields!Freight.Value)
」の式を入力します。テーブルは、次の画像のようになります。
レポートにパラメータを追加するには、 [データ] タブに移動し、 [パラメータ] の隣にある [+ 追加] をクリックします。 [Parameter1] というパラメータが追加されます。
[Parameter1] をクリックして、次のようにプロパティを設定します。
[データタイプ] プロパティを 「Integer」 に設定します。
[非表示] プロパティを 「はい」 に有効にします。
Table データ領域を選択し、 [プロパティ] タブに移動します。
[フィルタ] プロパティで、 [項目の表示] をクリックし、 [+ 項目の追加] をクリックします。
表示される [[A]=[B]] の隣にあるアイコンをクリックして、 [フィルタのプロパティ] を表示します。
[式] プロパティの隣にあるボタンをクリックしてフィールドのリストを表示し、 「EmployeeId」 を選択します。
[演算子] プロパティの隣にあるドロップダウンを開き、 「Equal」 を選択します。
[値] プロパティの隣にあるボタンをクリックして、「=Parameters!Parameter1.Value
」の式を入力します。
List データ領域をデザイン面上にドラッグ&ドロップします。
3つの TextBox コントロールを List データ領域にドラッグ&ドロップします。
Subreport コントロールを List データ領域にドラッグ&ドロップします。
Subreport コントロールを選択し、 [レポートの名前] プロパティに、隣にあるドロップダウンから詳細レポートのレポート名を選択するか、または詳細レポートのレポート名を直接入力します。
詳細レポートに渡されるパラメータを使用するために、 [レポートパラメータ] プロパティに移動します。
[レポートパラメータ] プロパティの隣にある [項目の表示] をクリックし、 [+ 項目の追加] を選択します。
[パラメータ1] の隣にある [値] プロパティに「=Fields!EmployeeId.Value
」の式を入力します。
TextBox1 を選択し、 [値] プロパティに「="氏名:" & Fields!LastName.Value & ", " & Fields!FirstName.Value
」の式を入力します。
TextBox2 を選択し、 [値] プロパティに「= "役職:" & Fields!Title.Value
」の式を入力します。
TextBox3 を選択し、 [値] プロパティに「=Fields!City.Value & ", " & Fields!Country.Value
」の式を入力します。
レポートにタイトルを追加するには、 TextBox コントロールを先に配置したリストとテキストボックスよりも高い位置にドラッグ&ドロップします。
タイトルの内側をクリックし、 「従業員注文レポート(マスター詳細レポート)」 とテキストを入力します。
レポートに配置する各コントロールのサイズや位置を調整して、レポートの外観をカスタマイズします。
レポートをプレビューします。