[]
ActiveReportsJSではレポートをデザインするために2つのレポートテンプレートが用意されています。以下のレポートテンプレートから選択できます。
テンプレート名 | 説明 |
---|---|
ページレポート | 、ページ単位でレポートをデザインするレポート形式です。そのため、デザイン時のレイアウトは実行時の出力結果と同一になるレポートテンプレートです。 |
RDLレポート | セクションの出力位置やページの用紙サイズといったレイアウト上の制約を意識することなく、自由にレポートコントロールをレイアウトすることができ、データソースのデータに基づいて拡大するレポートテンプレートです。 |
[ファイル]メニューから [新規作成] をクリックします。表示される [新規レポートの作成] から、必要に応じて ページレポート または RDLレポート を選択します。選択したテンプレートに基づいて空のレポートが作成されます。
レポートは以下のコンテンツで構成されます。
静的コンテンツ: 実行時、デザイン時に指定したサイズの通り表示するコンテンツ。たとえば、レポートタイトルに表示する会社のロゴなど。
動的コンテンツ: バインドされたデータを視覚化し、実行時に垂直方向と水平方向の両方に拡大するコンテンツ。たとえば、Tableコントロールなど。
レポートをプレビューするか、サポートされている形式にエクスポートすると、デフォルトでページ分割された出力が生成されます。エクスプローラでレポートを選択するか、デザイン面の周囲にあるグレーの領域をクリックすると、プロパティタブに [用紙サイズ] 、 [余白] 、および [印刷の方向] プロパティが表示されます。
新しいレポートを作成して余白を設定する方法
用紙サイズ、余白、およびその他のプロパティの詳細については、「レポートプロパティ」を参照してください。
ページレポート は、ページ上でデータ領域が必要なスペースを指定し、データを収容するために新しいページが必要な場合にデータ領域を継続する場所を指定します。また、高度なデータ連結機能も備えています。
ページレポートでは、 [固定の幅] および [固定の高さ] プロパティが提供され、データ領域が実行時に取得できるサイズを指定できるようにます。
たとえば、商品リストを表示するTableコントロールを含むレポートがあるとします。1行目と2行目は、各ページにレポートタイトル、列ヘッダ、およびページ番号を印刷します。3行目は、レコードごとに繰り返されます。その際、 [固定の高さ] プロパティに 「7in」 を設定しています。
最終的には次の画像のようなレポートとなります。すべてのテーブルデータは6つのグループに分割し、各グループの高さが [固定の高さ] に設定した高さで、別々のページに出力されます。画像に示したように、定義した領域を埋めるために十分なデータがない場合、空白行が出力されて領域を埋めます。
ページレポート にてデザイン時にページを追加し、 OverflowPlaceHolder コントロールを使用して、データ領域からあふれたデータを表示することができます。たとえば、以下の画像のように設計時に2つのページがあるとします。最初のページでは、請求書ヘッダと注文詳細を含むテーブルが表示されます。テーブルのデータが1ページに収まらない場合、次のページに表示されます。
ページレポートでは、各データ領域にて [オーバーフローデータ連結先] プロパティが提供されており、ここで設定した OverflowPlaceHolder コントロールに対してあふれたデータを表示します。
新しいページを追加し、OverflowPlaceHolderを設定する方法
既定では、 OverflowPlaceHolder コントロールのサイズは元になるデータ領域の [固定の幅] および [固定の高さ] プロパティによって設定されます。このサイズを変更して、1つのグループを他のグループよりも大きくしたり小さくしたりすることができます。 OverflowPlaceHolder コントロールの [オーバーフローデータ連結先] プロパティを使用すると、データ領域と複数のOverflowPlaceHolderによってレイアウトチェーンを構築することができます。
データ領域では、グループ間で改ページが発生する場合があります。 ページレポート は、改ページが発生するまでデータ領域を拡大し、チェーン内の次のOverflowPlaceHolderに移動します。
ページレポートは、RDLレポートに無い以下の固有のレイアウトプロパティがあります。
空のプレースホルダーを表示しない: 配置したOverflowPlaceHolderコントロールに表示するコンテンツがない場合、レポート出力でページを省略するかどうかを設定します。
表示:静的または動的なページの可視性を設定できます。
ページレポート を使用して、各マスターレコードごとに詳細データを印刷するマスター詳細レポートを作成できます。たとえば、製品カタログでは、各製品カテゴリ(マスターレコード)にタイトルページとそれに続いて価格表(詳細データ)が表示されます。
この機能は、次のプロパティを使用して実装できます。これらのプロパティは、[エクスプローラ]でレポートを選択するか、デザイン面の周囲にあるグレーの領域をクリックすると、プロパティタブに表示されます。
データ
データセット: データソースより取得したデータセットを設定します。
フィルタ: 特定条件ののデータを除外することが可能です。たとえば、上記の製品カタログは、8つの製品カテゴリのうち2つだけを印刷することができます。その場合、次のようにフィルタを設定します。
グループ
名前: グループの名前です。
式: バインドされたフィールドの参照またはより高度な式のコレクションです。グループ式の個別の値は、マスターレコードを生成します。たとえば、製品カタログには「{categoryId}
」式が設定されています。
見出しマップラベル: 見出しマップにリンクされたマスターレコードのテキストを設定します。
フィルタ: 特定のグループを除外する場合に設定します。
RDLレポート は、現在のページの最後までデータ領域を拡大してから、新しいページを生成します。たとえば、商品リストを表示するTableコントロールを含むレポートがあるとします。1行目と2行目は、各ページにレポートタイトル、列ヘッダ、およびページ番号を印刷します。3行目は、レコードごとに繰り返されます。
実行時に、テーブル内のデータを収容するために4ページが生成されます。
また、データ領域のグループや詳細行に改ページを設定している場合、RDLレポートは改ページが発生するまでデータ領域を拡大し、その後新しいページを生成します。
同様に、Tablixコントロールを使用する場合、ページにスペースがなくなるか、改ページが発生すると、RDLレポートによって新しいページが生成されます。
実行時にゲラモードにすると、改ページを適用せずにRDLレポートを単一ページで表示できます。ページサイズと余白は無視されますが、改ページは発生します。このモードは印刷できないダッシュボードのようなレポートを確認するのに非常に役立ちます。