And*_*dre 5 jasper-reports export-to-csv
我想导出为CSV,页眉和页脚只显示一次
The current output:
Name Address Hobby
AAA US XXXXX
BBB UK XXXXX
(Footer)
Name Address Hobby
CCC ID XXXXX
DDD CC XXXXX
(Footer)
Name Address Hobby
EEE SA XXXXX
FFF ZM XXXXX
(Footer)
The desired output:
Name Address Hobby
AAA US XXXXX
BBB UK XXXXX
CCC ID XXXXX
DDD CC XXXXX
EEE SA XXXXX
FFF ZM XXXXX
(Footer)
Run Code Online (Sandbox Code Playgroud)
那么如何让页眉和页脚只显示一次呢?
编辑:
页脚看起来像
版本:1.0.0
AcademicProgramBusinessEntityCentreDoma执行时间:00:00:00.00
/ NWU/StudentInformation/AcademicProgramDevelopment Build:v1.0.9 - Dev
您可以使用net.sf.jasperreports.export.{format} .exclude.origin.{suffix}.{arbitrary_name}(请参阅http://jasperreports.sourceforge.net/config.reference.html页面了解详细信息)属性排除出口商的乐队(您的案例中的页眉和页脚).
例子:
输入数据,csv文件(数据源):
AAA,US,XXXXX
BBB,UK,XXXXX
CCC,ID,XXXXX
DDD,CC,XXXXX
EEE,SA,XXXXX
FFF,ZM,XXXXX
Run Code Online (Sandbox Code Playgroud)
该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="exclude_band_for_csv" language="groovy" pageWidth="595" pageHeight="120" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="0" bottomMargin="0" uuid="daaa60dc-b91b-4e9b-bbc0-6189af985ef9">
<property name="net.sf.jasperreports.export.csv.exclude.origin.band.1" value="pageHeader"/>
<property name="net.sf.jasperreports.export.csv.exclude.origin.band.2" value="pageFooter"/>
<queryString>
<![CDATA[]]>
</queryString>
<field name="Name" class="java.lang.String"/>
<field name="Address" class="java.lang.String"/>
<field name="Hobby" class="java.lang.String"/>
<pageHeader>
<band height="35" splitType="Stretch">
<staticText>
<reportElement uuid="9da294e6-b5b7-489f-9469-7edb539315da" x="117" y="0" width="380" height="20"/>
<textElement textAlignment="Center" verticalAlignment="Middle">
<font size="14"/>
</textElement>
<text><![CDATA[Page Header]]></text>
</staticText>
</band>
</pageHeader>
<detail>
<band height="20" splitType="Stretch">
<textField>
<reportElement uuid="6a615d39-86f1-4a74-8ae7-4f8ca8e19afe" x="0" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$F{Name}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="df0929d2-34c0-4561-ab98-e6e5ce37fd11" x="100" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$F{Address}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="675381d8-57b3-427f-88e4-ec4725ea3462" x="200" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$F{Hobby}]]></textFieldExpression>
</textField>
</band>
</detail>
<pageFooter>
<band height="45" splitType="Stretch">
<staticText>
<reportElement uuid="9da294e6-b5b7-489f-9469-7edb539315da" x="127" y="10" width="380" height="20"/>
<textElement textAlignment="Center" verticalAlignment="Middle">
<font size="14"/>
</textElement>
<text><![CDATA[Page Footer]]></text>
</staticText>
</band>
</pageFooter>
</jasperReport>
Run Code Online (Sandbox Code Playgroud)
该报告在iReport中的设计:
JRPdfExporter的结果将是:
两个波段都存在于PDF文件中
JRCsvExporter的结果将是(输出csv文件):
AAA,US,XXXXX
BBB,UK,XXXXX
CCC,ID,XXXXX
DDD,CC,XXXXX
EEE,SA,XXXXX
FFF,ZM,XXXXX
Run Code Online (Sandbox Code Playgroud)
Both bands are absent in CSV file.
As you can see I've excluded two bands (Page Header and Page Footer) only for JRCsvExporter.
For more details you can also see this post: JasperReports: hide textfield when not HTML view
归档时间: |
|
查看次数: |
9910 次 |
最近记录: |