5つの異なるSQL照会を使用してレポートを準備する必要があります。各クエリは、1つのレポートテーブルを提供します。複数のjrxmlジャスパーレポートを1つのpdf出力ファイルに照合する方法
は、だから私は、今、私はコンパイルすることができる午前
など、5 jrxmlはそれぞれ独自の見出し、タイトルの設定、フッター、pagenumbersと上記のクエリの1つに対応するファイルを書いたプリントとのそれぞれをエクスポート5つの異なるpdfsにjrxmlsを上回ります。
ただし、クライアントはすべてのレポートを1つの単一のpdfに照合したいと考えています。最終的なpdfには、最初の4ページはレポート1と、次の5ページは2レポート、次に3レポートなどとなります。
1)これを達成する方法は?
2)各レポートは、1/4、2/4、3/4などのページ番号を有する。ここで、第2の部分、すなわち完全なページ番号は、評価時間をレポートとして評価される。したがって、すべてのレポートを単一のpdf(可能な場合)で照合する際、正当性のあるページを最終PDFに再度番号付けすることも可能ですか?
下の回答に基づいて、私は私のJavaクラスに以下のなかったし、それが動作します:
try
{
JasperReport jreport1 = JasperCompileManager.compileReport(input1);
JasperPrint jprint1 = JasperFillManager.fillReport(jreport1, new HashMap(), new JREmptyDataSource());
//JasperExportManager.exportReportToPdfFile(jprint, "/home/ashutosh/Desktop/desktop/nikunj/JasperTestApp/output/mytest.pdf");
JasperReport jreport2 = JasperCompileManager.compileReport(input2);
JasperPrint jprint2 = JasperFillManager.fillReport(jreport2, new HashMap(), new JREmptyDataSource());
JasperReport jreport3 = JasperCompileManager.compileReport(input3);
JasperPrint jprint3 = JasperFillManager.fillReport(jreport3, new HashMap(), new JREmptyDataSource());
List<JasperPrint> jprintlist = new ArrayList<JasperPrint>();
jprintlist.add(jprint1);
jprintlist.add(jprint2);
jprintlist.add(jprint3);
JRExporter exporter = new JRPdfExporter();
exporter.setParameter(JRPdfExporterParameter.JASPER_PRINT_LIST, jprintlist);
OutputStream output = new FileOutputStream(new File("/home/ashutosh/Desktop/desktop/nikunj/JasperTestApp/output/mytestbatch.pdf"));
exporter.setParameter(JRPdfExporterParameter.OUTPUT_STREAM, output);
exporter.exportReport();
}catch(Exception e)
{
e.printStackTrace();
}
上:INPUT1、INPUT2、入力jrxmls
どこJRXMLファイルに文字列パスがINPUT3です読書のためのHello World 1、Hello Worldの2、Hello Worldの3
<?xml version="1.0"?>
<!DOCTYPE jasperReport
PUBLIC "-//JasperReports//DTD Report Design//EN"
"http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport name="Simple_Report">
<detail>
<band height="20">
<staticText>
<reportElement x="180" y="0" width="200" height="20"/>
<text><![CDATA[Hello World One!]]></text>
</staticText>
</band>
</detail>
</jasperReport>
ありがとう:ちょうど3つのメッセージをプリント!
アレックスKの答えは良いです。個々のレポートを1つのマスターレポートのサブレポートに入れることで、必要なものを得ることもできます。それはより多くの作業になりますが、ページ番号の要件を処理できるようになります。間違いなくこれにも投票してください。それは、あなたが何を記述しているかを正確にカバーするでしょう:http://jasperforge.org/projects/jasperreports/tracker/view.php?id=4178 – mdahlman