Posts Tagged ‘ JasperReport

Merge 2 JasperReport to Single PDF file

ผมเคยได้รับมอบหมายให้ทำรายงานด้วย Jasper Report แล้วทำการ รวมไฟล์รายงานทั้งรายงานออกมาเป็นรายงานเดียว ตอนที่ print รายงานออกมาเป็น pdf แล้ว ซึ่งรายงานที่นำมารวมกันนั้น เป็นรายงานที่แตกต่างกันทั้ง Layout, ขนาดประดาษ เพราะ ตัวแรกเป็น ขนาด A4 แนวตั้งส่วนอีกตัวเป็นแนวนอน วิธีการที่ผมใช้ก็คือ Fill Report แต่ละตัวให้เรียบร้อยก่อน โดยให้ข้อมูลที่ Fill นั้นออกมาในรูปแบบของ Object JasperPrint จากนั้นก็นำทั้งสอง Object จากรายงานคนละตัวที่ว่ามาทำการ วนลูป เพื่อใส่ Page ของรายงานอีกตัวเข้าไป ดังนี้

JasperPrint jp1 = JasperFillManager.fillReport(reportFile1,reportParams,Connection);  
JasperPrint jp2 = JasperFillManager.fillReport(reportFile2,reportParams,Connection);  
for (int j = 0; j < jp1.getPages().size(); j++) {  
	//Add First report to second report
	jp2.addPage((JRPrintPage) jp1.getPages().get(j));  
}  

จากนั้นก็ค่อยนำ Object jp2 ไปใช้งานต่อ เช่น Render เป็น PDF File