GeneXus はエンドユーザーに、レポート出力の特定の側面 (フォント、コントロールの位置、色など) を変更するためのシンプルな方法を提供します。
GeneXus を使用した開発の観点では、レポートは
レイアウトを指定した
Procedure オブジェクトの作成によって定義され、
PDF 形式で結果を取得するにはいくつか簡単な設定が必要です。レポートの生成時には、対応する言語のコード行に加え、レイアウトを指定したプロシージャーごとに XML ファイルが生成されます。このファイルには、表示に関連する情報 (コントロール、位置、フォントなど) が含まれています。
XML ファイルは、各プロシージャーの出力を設計するために実行環境で取得されるメタデータです (出力は生成されたコード内でハードコードされません)。そのため、XML ファイルが編集可能であるとしても、GeneXus は出力を変更するための別の簡単な方法をエンドユーザーに提供します。
GeneXus には、
GeneXus Report Editor (GxReportEditor.exe) というエディターが用意されています。このエディターは、GeneXus のインストールルートにあります。
エンドユーザーは、このエディターを使用して、レポート (
レイアウトを指定した
Procedure オブジェクト) に関連付けられている .rpt ファイルを開き、その
printblock を更新できます。
.rpt ファイルは既定では生成されません。レイアウトを指定したプロシージャーごとに .rpt ファイルを生成する場合は、
ナレッジベースにジェネレーターレベルで
[ Customizable Layout ] プロパティを設定する必要があります。また、特定のプロシージャー用の .rpt ファイルを生成する場合は、オブジェクトレベルで同じプロパティを設定する必要があります。
.rpt ファイルは、ナレッジベースのパスに格納されます。具体的には、ジェネレーターの [
web ] > [
LayoutMetadata ] ディレクトリーにあります:
C:\Models\KBTravelAgency\CSharpModel\web\LayoutMetadata
GeneXus Report Editor を使用して .rpt ファイルを開いた場合、GeneXus の
プロシージャーのレイアウトと同じ表示になります。つまり、printblock からコントロールを削除したり、フォントや色などのコントロールのプロパティを変更したりできます。
printblock 内のコントロールの配置を変更することもできます。ただし、printblock 間でコントロールを移動したり、当初 GeneXus でプロシージャーを設計したときに printblock に含まれていなかったコントロールを追加したりすることはできません。
変更内容を保存すると、変更された .rpt ファイルに対応するプロシージャーの次回実行時に、変更内容が反映され、新しいレイアウトが表示されます。