JasperReport 設計ファイルは、レポートのレイアウトと外観を指定します。 作業設計ファイル (拡張子が .jasper) をインポートしない場合は、この設計ファイル を作成または変更する必要があります。
拡張子が .xml のファイルをソースに使用することができます。 ただし、これによってコンパイルが遅くなることがあります。JasperReports は、.jrxml 拡張子を使用したときに最大限の能力を発揮します。
以下に、レポート設計ファイルの例を示します。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE jasperReport PUBLIC
"//JasperReports//DTD Report Design//EN"
"http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport name="simpleReport">
<field name="CUSTOMER_ID" class="java.lang.String" />
<field name="FIRST_NAME" class="java.lang.String" />
<field name="LAST_NAME" class="java.lang.String" />
<field name="PHONE" class="java.lang.String" />
<pageHeader>
<band height="30">
<staticText>
<reportElement x="0" y="0" width="70" height="24" />
<text>
<![CDATA[Customer ID: ]]>
</text>
</staticText>
<staticText>
<reportElement x="140" y="0" width="70" height="24" />
<text>
<![CDATA[First name: ]]>
</text>
</staticText>
<staticText>
<reportElement x="280" y="0" width="70" height="24" />
<text>
<![CDATA[Last name: ]]>
</text>
</staticText>
<staticText>
<reportElement x="420" y="0" width="70" height="24" />
<text>
<![CDATA[Phone: ]]>
</text>
</staticText>
</band>
</pageHeader>
<detail>
<band height="30">
<textField>
<reportElement x="0" y="0" width="70" height="24" />
<textFieldExpression>
<![CDATA[$F{CUSTOMER_ID}]]>
</textFieldExpression>
</textField>
<textField>
<reportElement x="140" y="0" width="70" height="24" />
<textFieldExpression>
<![CDATA[$F{FIRST_NAME}]]>
</textFieldExpression>
</textField>
<textField>
<reportElement x="280" y="0" width="70" height="24" />
<textFieldExpression>
<![CDATA[$F{LAST_NAME}]]>
</textFieldExpression>
</textField>
<textField>
<reportElement x="420" y="0" width="70" height="24" />
<textFieldExpression>
<![CDATA[$F{PHONE}]]>
</textFieldExpression>
</textField>
</band>
</detail>
</jasperReport>
このレポート設計ファイルの例は、ID 番号、ファーストネーム、ラストネーム、および電話番号といった 4 つの情報列を出力します。 <pageHeader> セクションは列見出しを出力し、<detail> セクションは、レポート・ドライバー・プログラムによって提供されたデータに基づくデータ行を出力します。
以下のセクションでは、異なるタイプの XML ソース・ファイルの特性を示しています。 この情報でカバーされているのは、非常にシンプルなケースです。 より複雑な例については、上述の JasperReports Web サイトまたはご使用の設計ツールの資料 (ツールを使用しようと決めている場合) を参照してください。
<queryString><![CDATA[SELECT * FROM Table_Name]]></queryString>
<field name="Field_Name" class="java.lang.class_type"></field>
<textFieldExpression class="java.lang.class_type">
<![CDATA[$F{Field_Name}]]>
</textFieldExpression>
<field name="Field_Name" class="java.lang.class_type"></field>
<textFieldExpression class="java.lang.class_type">
<![CDATA[$F{Field_Name}]]>
</textFieldExpression>
<field name="Field_Name" class="java.lang.class_type"></field>
<textFieldExpression class="java.lang.class_type">
<![CDATA[$F{Field_Name}]]>
</textFieldExpression>
EGL は、コンパイルされた .jasper ファイル を Java Resources¥package_name ディレクトリーに配置します。 このディレクトリーは、EGLSource¥package_name と並列のものです。 ご使用の EGL レポート・ドライバーを正常に生成すると、製品は .jasper ファイルのリンクされたコピーを、並列の bin¥package_name ディレクトリーに配置します。 またはと選択することで、.jasper ファイルを手動で作成してコピーすることができます。
XML 設計文書とレポート・ハンドラーを同時に作成する場合のガイドラインについては、 JasperReports によるレポートの作成を参照してください。 XML 設計文書がレポート・ハンドラーからレポート・データ・レコードを取得する方法を示す例については、JasperReport 型のレポートを実行するコードの作成を参照してください。