単一の詳細セクションを持つJasperReportがあり、詳細セクション内には、印刷されるデータベースの単一のフィールドがあります。したがって、クエリが100行を返す場合、100行を取得します。これは、10レコードがページに収まるため、約10ページの長さのレポートを生成します。
そのフィールドを列に印刷して、たとえば10レコードではなく40レコードをページに収めることができる方法はありますか?(10の4列を持つことによって)
単一の詳細セクションを持つJasperReportがあり、詳細セクション内には、印刷されるデータベースの単一のフィールドがあります。したがって、クエリが100行を返す場合、100行を取得します。これは、10レコードがページに収まるため、約10ページの長さのレポートを生成します。
そのフィールドを列に印刷して、たとえば10レコードではなく40レコードをページに収めることができる方法はありますか?(10の4列を持つことによって)
複数列のレポートを構成できます。iReportを使用している場合は、レポート名のレポートインスペクターを右クリックして、[ページ形式]を選択します。[列]1
セクションで、[列]をからに増やします。4
必要に応じて、スペースを構成して列間の距離を定義します。レポートをクリックすると、[プロパティ]パネルで[印刷順序]を選択することもできます。
レポートデザイナで、詳細バンドの最初の列のフィールドをドラッグします。
JRXMLに追加されたプロパティは<jasperreports ...
タグにあります:
columnCount="4"
:4列printOrder="Horizontal"
:充填順序は水平です。さらに参照できるようにJRXMLを添付しました。
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="report8" language="groovy" columnCount="4" printOrder="Horizontal" pageWidth="595" pageHeight="842" columnWidth="138" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="5e2835cc-bc36-4f77-8631-08a8deaa28d7">
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<queryString>
<![CDATA[select 'A' as field]]>
</queryString>
<field name="field" class="java.lang.String"/>
<detail>
<band height="20" splitType="Stretch">
<textField>
<reportElement uuid="76707cdd-7dbe-477e-b3a4-38f9ba3bd003" x="0" y="0" width="136" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$F{field}]]></textFieldExpression>
</textField>
</band>
</detail>
</jasperReport>