ActiveReports for .NET 18.0J
レイアウト
ActiveReportsユーザーガイド > よくある質問 > ページレポート/RDLレポート > レイアウト

グループ単位で改ページする(1ページ内に複数のグループを出力させない)

ページレポートまたはRDLレポートでは、グループ化の方法や、使用するデータ領域によって、グループ単位での改ページの方法が異なります。以下の内容をご覧ください。

数値フィールドに実行時にデータが表示されません

Visual Basicの構文では、数字から開始する識別子が許可されていないため、数値フィールド名が含まれる式では実行時にデータが表示されません。

例: =Fields!2004.Value 

回避方法として、以下のように数値フィールド名を文字列に変更することで、データを表示できます。  

=Fields("2004").Value

または、

=Fields.Item("2004").Value

日付データを和暦(平成yy年mm月dd日)で出力する

TextBoxコントロールのCalendarプロパティを使用することで実現可能です。

日付を和暦で表示したいTextBoxコントロールのCalendarプロパティを"Japanese"に設定し、Formatプロパティに"ggyy年MM月dd日"などの書式指定文字列を設定してください。

ラベル形式(A行×B列)のレポートを作成する

ListコントロールとOverflowPlaceHolderコントロールを使用することで、ラベル形式のレポートを作成することが可能です。

具体的なレイアウトについては、「レポートギャラリー サンプル」のTackSealレポートをご参照ください。

なお、上記のサンプルは、用紙の左上から下に向かってデータを出力し、用紙の一番下に達したら、次は右側の列に出力するようなレイアウト構成となっております。(セクションレポートにおける、ColumnDirectionプロパティ=DownAcrossと同じ状態)

出力方向などを変更したい場合は、コントロールの配置自体を変更する必要があります。

なお、ラベルの出力開始位置を調整する機能・方法は、ページレポートまたはRDLレポートには用意されておりません。レポートのデータソースに空のレコードを追加するなどして、開始位置を調整してください。

レポート上に動的に画像を表示させる

ImageコントロールのSourceプロパティを"External"に設定し、Valueプロパティに画像ファイルのパスなどを設定することで、表示する画像を動的に変更することが可能です。

また、Valueプロパティに「IIF関数」などを使用した「式」を設定することで、条件に応じて表示する画像を動的に変更することも可能です。

たとえば、以下のような式で、フィールド「ID」の値が奇数の時は、プロジェクトの「image」フォルダに含まれる"1.jpg"を、偶数の時は"2.jpg"を表示します。

=IIF(Fields!ID.Value mod 2 = 1,"image¥1.jpg", "image¥2.jpg")

また、以下のようにプロジェクトに含まれていない画像を表示させることも可能です。

=IIF(Fields!ID.Value mod 2 = 1,"c:¥data¥1.jpg", "c:¥data¥2.jpg")

レポートに行番号を出力する

TextBoxコントロールのValueプロパティに「式」としてRowNumber関数を設定することで行番号を出力できます。以下のような手順になります。

  1. TextBoxコントロールのプロパティ設定ダイアログを開き「全般」タブ、「値」から、「式」を選択して式エディタを開きます。(式エディタはプロパティウィンドウからも開くことができます。)
  2. フィールド「共通の関数→その他」から、RowNumberを選択し、「置換」ボタンを押してください。「式」に"=RowNumber()"が入りましたら、エディタを閉じます。

グループ毎に行番号をリセットしたい場合には、RowNumber関数の引数にそのグループを指定します。 たとえばBandedListコントロールで"BandedList1_Group1"というグループが設定されていると仮定し、このグループ毎に行番号をリセットしたい場合、"=RowNumber( BandedList1_Group1 )" のように設定します。

関連トピック