บทแนะนำการใช้งาน JasperReports: Jasper Report คืออะไร? Java?

⚡ สรุปอย่างชาญฉลาด

JasperReports สำหรับ Java Jaspersoft Studio เป็นเอนจิ้นสร้างรายงานแบบโอเพนซอร์สที่แปลงข้อมูลจากแอปพลิเคชันให้เป็นเอกสารคุณภาพสูงระดับพิกเซลสมบูรณ์แบบ บทความนี้จะอธิบายวงจรชีวิตของการสร้างรายงาน การติดตั้ง Jaspersoft Studio การสร้างเทมเพลตรายงาน โครงสร้างกลุ่ม การเปรียบเทียบกับ Pentaho และข้อจำกัดในทางปฏิบัติที่ทีมต่างๆ พบเจอ

  • 📊 คำจำกัดความหลัก: JasperReports คือ Java ไลบรารีคลาสที่ใช้แสดงผลข้อมูลไปยังหน้าจอ เครื่องพิมพ์ PDF HTML XLS RTF CSV XML ODT และ TXT
  • 🔄 ระยะวงจรชีวิต: กระบวนการนี้ประกอบด้วยสี่ขั้นตอนตามลำดับ ได้แก่ การออกแบบ JRXML การคอมไพล์เป็นไฟล์ .jasper การใส่ข้อมูลลงในไฟล์ และการส่งออกผลลัพธ์
  • 🖥️ สภาพแวดล้อมการออกแบบ: Jaspersoft Studio Community Edition มีเครื่องมือออกแบบภาพ และเวอร์ชัน 6.21.3 เป็นเวอร์ชันชุมชนล่าสุด
  • 🧩 โครงสร้างแถบพลังงาน: แถบหัวเรื่อง แถบหัวหน้า แถบหัวคอลัมน์ แถบรายละเอียด แถบท้ายคอลัมน์ แถบท้ายหน้า และแถบสรุป จะควบคุมว่าแต่ละองค์ประกอบจะพิมพ์ออกมาที่ใด
  • 🔌 ความยืดหยุ่นของข้อมูล: รายงานฉบับเดียวสามารถรวบรวมข้อมูลได้หลายอย่าง Javaคอลเลกชันของ Bean, ชุดผลลัพธ์ SQL, ไฟล์ XML และอะแดปเตอร์ข้อมูลแบบกำหนดเอง
  • 🇧🇷 การเปรียบเทียบแพลตฟอร์ม: Jaspersoft เป็นผู้นำด้านการจัดทำเอกสารและระบบวิเคราะห์ข้อมูลทางธุรกิจบนมือถือ ในขณะที่ Pentaho เป็นผู้นำด้านแดชบอร์ดและการวิเคราะห์ข้อมูล
  • ⚠️ ข้อจำกัดที่ทราบ: ต้องมีการรวบรวมข้อมูลรายงานก่อนนำไปใช้งาน ดังนั้นนักพัฒนาโปรแกรมรายงานทุกคนจึงจำเป็นต้องมีความรู้พื้นฐานอย่างครบถ้วน Java ติดตั้ง SDK แล้ว

บทช่วยสอน JasperReports

JasperReports มีไว้เพื่ออะไร Java?

แจสเปอร์รีพอร์ตส์ เป็นเครื่องมือการรายงานแบบโอเพ่นซอร์สสำหรับ Java โปรแกรมนี้ใช้สำหรับสร้างรายงานเกี่ยวกับแอปพลิเคชัน เครื่องมือสร้างรายงานนี้ช่วยในการเขียนเนื้อหาที่หลากหลายลงบนหน้าจอ ไปยังเครื่องพิมพ์ หรือลงในไฟล์ต่างๆ เช่น HTML, PDF, XLS, RTF, CSV, XML, ODT และ TXT นอกจากนี้ JasperReports ยังสามารถใช้เพื่อวัตถุประสงค์อื่นๆ ได้อีกด้วย Java- เปิดใช้งานแอปพลิเคชันเช่น Java EE หรือเว็บแอปพลิเคชันเพื่อสร้างเนื้อหาแบบไดนามิก

ในบทสนทนาส่วนใหญ่ ชื่อผลิตภัณฑ์ทั้งสามมักปรากฏอยู่ด้วยกัน การแยกชื่อเหล่านั้นตั้งแต่ต้นจะช่วยป้องกันความสับสนในภายหลังบนหน้านี้

ชื่อ มันคืออะไร ใครใช้มัน
ห้องสมุด JasperReports การขอ Java ไลบรารีที่รวบรวม กรอกข้อมูล และส่งออกรายงาน Java นักพัฒนาฝังรายงานลงในแอปพลิเคชัน
แจสเปอร์ซอฟต์ สตูดิโอ การขอ Eclipse โปรแกรมออกแบบภาพที่สร้างไฟล์ JRXML รายงานการออกแบบผังอาคาร
เซิร์ฟเวอร์ JasperReports เซิร์ฟเวอร์แบบสแตนด์อโลนที่จัดเก็บ กำหนดเวลา และส่งรายงาน ทีมงานกำลังเผยแพร่รายงานให้แก่ผู้ใช้งานทางธุรกิจ

หน้านี้เน้นที่ไลบรารีและ Jaspersoft Studio เนื่องจากส่วนประกอบทั้งสองนี้เพียงพอสำหรับการออกแบบและเรียกใช้รายงานฉบับแรก โปรดทราบว่าเวอร์ชันชุมชนในปัจจุบันครอบคลุมเฉพาะส่วนประกอบทั้งสองนี้เท่านั้น เนื่องจาก JasperReports Server ไม่ได้มีให้ดาวน์โหลดในเวอร์ชันชุมชนอีกต่อไปแล้ว

เหตุใดจึงใช้รายงานแจสเปอร์

ต่อไปนี้คือเหตุผลมากมายที่ควรใช้เครื่องมือสร้างรายงาน Jasper:

  • นำเสนอประสิทธิภาพการสร้างรายงานและการส่งมอบให้กับผู้ใช้
  • ช่วยให้คุณแสดงข้อมูลของคุณในรูปแบบข้อความหรือกราฟิก
  • เป็นเซิร์ฟเวอร์การรายงานแบบสแตนด์อโลนและแบบฝังสำหรับการรวบรวมและการดำเนินการรายงาน
  • อนุญาตให้มีการควบคุมการเข้าถึงตามบทบาทสำหรับรายงานทั้งหมดในที่เก็บ
  • เฟรมเวิร์ก Spring Security พร้อมใช้งานสำหรับการผสานรวมเข้ากับระบบการตรวจสอบสิทธิ์ภายในองค์กร
  • ระบบนี้มีฟังก์ชันการสร้างรายงานแบบโต้ตอบที่ปลอดภัย สามารถกำหนดเวลาได้ และส่งมอบรายงานโดยอัตโนมัติ
  • คุณสามารถฝังรายงานลงไปได้ Java หรือไม่ -Java การใช้งาน
  • สามารถส่งออกรายงานได้หลากหลายรูปแบบ
  • มันสามารถสร้างลายน้ำที่วางอยู่เหนือภาพหลักได้
  • นำเสนอชุดที่สมบูรณ์ของ สบู่, REST และบริการทางเว็บ
  • อนุญาตให้คุณใช้ข้อมูลรายงานเดียวจากแหล่งข้อมูลหลายแหล่ง

เนื่องจากไลบรารีนี้เผยแพร่ภายใต้ใบอนุญาต LGPL จึงสามารถรวมไว้ในผลิตภัณฑ์เชิงพาณิชย์ได้โดยไม่ต้องคิดค่าธรรมเนียมต่อที่นั่ง ซึ่งเป็นเหตุผลที่หลายๆ คนเลือกใช้ Java ทีมต่างๆ เลือกใช้ระบบนี้แทนระบบรายงานเฉพาะของตนเอง

คุณสมบัติของรายงานแจสเปอร์

ต่อไปนี้เราจะกล่าวถึงคุณสมบัติของ JasperReports

ต่อไปนี้คือคุณสมบัติสำคัญของเครื่องมือ Jasper Reports:

  • นำเสนอรูปแบบรายงานที่ยืดหยุ่นได้ทั้งในรูปแบบแถบ คอลัมน์ และพื้นที่แบบอิสระ
  • นักพัฒนาสามารถป้อนข้อมูลได้หลายวิธี รวมถึง Javaคอลเลกชันของ Bean, คำสั่ง SQL และเอกสาร XML
  • สามารถรวมแหล่งข้อมูลหลายแหล่งเข้าไว้ในรายงานเดียวได้โดยใช้รายงานย่อยและตัวเชื่อมต่อข้อมูล
  • สามารถใส่ลายน้ำทับลงบนภาพหลักได้เช่นกัน
  • คุณสามารถสร้างรายงานย่อยที่ซ้อนอยู่ภายในโครงสร้างหลักได้
  • ช่วยให้คุณส่งออกรายงานได้หลากหลายรูปแบบเช่น รูปแบบไฟล์ PDFHTML, RTF และ Microsoft ไฟล์ Excel
  • ระบบนี้อนุญาตให้กำหนดรายงานโดยรวมถึงแผนภูมิประเภทต่างๆ เช่น แผนภูมิแท่ง แผนภูมิวงกลม แผนภูมิเส้น และแผนภูมิอนุกรมเวลา
  • สามารถเขียนนิพจน์รายงานได้ในรูปแบบ Java, Groovyหรือ Javaต้นฉบับ

ความสามารถเหล่านี้จะถูกเปิดเผยผ่านลำดับการประมวลผลที่กำหนดไว้ ซึ่งส่วนถัดไปจะอธิบายทีละขั้นตอน

วงจรชีวิตของ JasperReports

ต่อไปนี้เราจะมาเรียนรู้เกี่ยวกับวงจรชีวิตของ JasperReports กัน

ต่อไปนี้คือลำดับขั้นตอนโดยทั่วไปของวงจรชีวิตของรายงาน Jasper:

วงจรชีวิตของ JasperReports

แผนภาพด้านบนแสดงขั้นตอนทั้งสี่ตามลำดับ แต่ละขั้นตอนจะสร้างไฟล์ซึ่งจะกลายเป็นข้อมูลป้อนเข้าสำหรับขั้นตอนถัดไป ดังนั้นลำดับขั้นตอนจึงไม่สามารถย้อนกลับได้

ระยะ อินพุต เอาท์พุต ส่วนขยายของไฟล์
การออกแบบ การตัดสินใจเกี่ยวกับการจัดวาง แม่แบบรายงาน .jrxml
กำลังรวบรวม ไฟล์ .jrxml เทมเพลตไบนารีที่คอมไพล์แล้ว แจสเปอร์
การดำเนินการ ไฟล์ .jasper พร้อมข้อมูล รายงานที่กรอกแล้ว .jrprint
การส่งออก ไฟล์ .jrprint เอกสารขั้นสุดท้าย .pdf, .html, .xls และอื่นๆ

การออกแบบรายงาน

นี่จะเป็นขั้นตอนแรกที่เราจะสร้างไฟล์ JRXML ขึ้นมา ไฟล์นี้เป็นเอกสาร XML อย่างง่ายที่กำหนดโครงสร้างของรายงาน คุณสามารถสร้างไฟล์นี้ได้โดยใช้โปรแกรมแก้ไขข้อความใดๆ หรือโปรแกรมออกแบบรายงานก็ได้

อย่างไรก็ตาม หากคุณใช้โปรแกรมออกแบบรายงาน เราสามารถแสดงภาพเค้าโครงของรายงานได้ และโครงสร้างที่แท้จริงของ JRXML ก็ไม่จำเป็นต้องสนใจ

การจัดทำรายงาน

ในขั้นตอนนี้ JRXML ที่สร้างขึ้นในขั้นตอนแรกจะถูกคอมไพล์ และสร้างเป็นอ็อบเจ็กต์ไบนารีที่เรียกว่าไฟล์ Jasper (ไฟล์ที่มีนามสกุล jasper)

การรวบรวมนี้จัดทำขึ้นเพื่อให้ได้ประสิทธิภาพที่ดีขึ้นระหว่างการดำเนินการ ไฟล์ Jasper ที่สร้างขึ้นเหล่านี้ควรจัดส่งพร้อมกับแอปพลิเคชันของคุณเพื่อเรียกใช้รายงาน

การดำเนินการรายงาน

ในขั้นตอนนี้ ข้อมูลจากแอปพลิเคชันจะถูกรวบรวมและกรอกในรูปแบบรายงานที่รวบรวมไว้ มีคลาสชื่อ net.sf.jasperreports.engine.JasperFillManager ซึ่งมีฟังก์ชันในการกรอกข้อมูลในรายงาน

ผลลัพธ์จะถูกบันทึกไว้ในไฟล์งานพิมพ์ของ Jasper (ไฟล์ที่มีนามสกุล jrprint) ซึ่งสามารถใช้ในการพิมพ์หรือส่งออกรายงานได้

การส่งออกรายงานไปยังรูปแบบที่ต้องการ

ในขั้นตอนสุดท้ายนี้ คุณต้องส่งออกไฟล์การพิมพ์ Jasper ซึ่งสร้างขึ้นก่อนหน้านี้เป็นรูปแบบใดๆ โดยใช้คลาส JasperExportManager เนื่องจาก Jasper มีรูปแบบการส่งออกที่หลากหลาย เราจึงสามารถใช้อินพุตเดียวกันเพื่อสร้างการแสดงข้อมูลที่หลากหลายได้

วิธีการติดตั้ง Jasper Reports – การตั้งค่าสภาพแวดล้อม

ต่อไปนี้ เราจะมาเรียนรู้ขั้นตอนการตั้งค่าสภาพแวดล้อม JasperReports ทีละขั้นตอนกัน ภาพหน้าจอที่แสดงด้านล่างนี้ ถ่ายจากตัวติดตั้งเวอร์ชัน 6.9 เวอร์ชันปัจจุบันที่เผยแพร่โดยชุมชนคือ 6.21.3 ซึ่งเผยแพร่เมื่อวันที่ 23 เมษายน 2024 และลำดับของหน้าจอยังคงเหมือนเดิม แม้ว่าหมายเลขเวอร์ชันในชื่อไฟล์จะแตกต่างกันก็ตาม

ขั้นตอน 1) ดาวน์โหลดรายงาน Jasper Community Edition
ไปที่นี้ ลิงค์ จากนั้นคลิกที่ตัวเลือก "ดาวน์โหลดเดี๋ยวนี้" เพื่อติดตั้ง Jasper Reports รุ่น Community Edition

ติดตั้ง Jasper Reports- การตั้งค่าสภาพแวดล้อม

ขั้นตอน 2) เลือก Jaspersoft Studio CE
จากตัวเลือกเวอร์ชันสำหรับชุมชน ให้เลือก Jaspersoft Studio CE

ติดตั้ง Jasper Reports- การตั้งค่าสภาพแวดล้อม

ขั้นตอน 3) ดาวน์โหลด Jaspersoft Studio
ไปที่นี้ ลิงค์ จากนั้นคลิกที่ปุ่มดาวน์โหลด แล้วเปิดไฟล์ติดตั้งที่ดาวน์โหลดมาสำหรับระบบปฏิบัติการของคุณ

ติดตั้ง Jasper Reports- การตั้งค่าสภาพแวดล้อม

ขั้นตอน 4) คลิกที่ปุ่มยอมรับ
หน้าจอต่อไปนี้จะปรากฏขึ้น เลือกปุ่ม "ฉันเห็นด้วย"

ติดตั้ง Jasper Reports- การตั้งค่าสภาพแวดล้อม

ขั้นตอน 5) เลือกสถานที่
เลือกตำแหน่งที่จะติดตั้ง แล้วคลิกปุ่มถัดไป

ติดตั้ง Jasper Reports- การตั้งค่าสภาพแวดล้อม

ขั้นตอน 6) ความคืบหน้ากำลังทำงานอยู่ในขณะนี้
คุณจะเห็นความคืบหน้าในหน้าจอถัดไป

ติดตั้ง Jasper Reports- การตั้งค่าสภาพแวดล้อม

ขั้นตอน 7) คลิกที่ปุ่มเสร็จสิ้น
ในหน้าจอถัดไป คลิกที่ปุ่มเสร็จสิ้น

ติดตั้ง Jasper Reports- การตั้งค่าสภาพแวดล้อม

ขั้นตอน 8) ความคืบหน้าเสร็จสมบูรณ์
หน้าจอต่อไปนี้จะปรากฏในหน้าต่างของคุณ

ติดตั้ง Jasper Reports- การตั้งค่าสภาพแวดล้อม

ขั้นตอน 9) เริ่มต้นดำเนินการ
ถัดไป คลิกที่ตัวเลือก "เริ่มต้นใช้งาน"

ติดตั้ง Jasper Reports- การตั้งค่าสภาพแวดล้อม

ขั้นตอน 10) เริ่มต้นทำงานกับสตูดิโอ Jasper Reports
หน้าจอต่อไปนี้จะปรากฏขึ้น และคุณสามารถเริ่มใช้งาน Jasper Reports Studio ได้เลย

ติดตั้ง Jasper Reports- การตั้งค่าสภาพแวดล้อม

💡 เคล็ดลับ: Jaspersoft Studio คือ Eclipse แอปพลิเคชันพื้นฐานและต้องการความเข้ากันได้ Java มีรันไทม์อยู่ในเครื่อง หากตัวติดตั้งไม่สามารถเริ่มต้นได้ โปรดตรวจสอบเวอร์ชัน JDK ที่ติดตั้งไว้ก่อนทำการติดตั้งใหม่

การสร้างตัวอย่างเทมเพลตรายงาน

ต่อไปนี้เราจะมาเรียนรู้วิธีการสร้างเทมเพลตรายงานใน JasperReports กัน

ไฟล์แม่แบบรายงานที่ใช้ใน JasperReports เป็นไฟล์ XML อย่างง่ายที่มีนามสกุล .jrxml ไฟล์นี้มีแท็ก jasperReport เป็นองค์ประกอบหลัก เฟรมเวิร์ก JasperReports สามารถจัดการกับแหล่งข้อมูลประเภทต่างๆ ได้

แม่แบบรายงานถูกออกแบบและสร้างขึ้นโดยใช้ขั้นตอนต่อไปนี้

ขั้นตอน 1) การสร้างไฟล์ JRXML ใน Jaspersoft Studio

  1. ไปที่ตัวเลือกไฟล์
  2. เลือกเมนูย่อย "ใหม่"
  3. คลิกที่ตัวเลือก Jasper Report

การสร้างตัวอย่างเทมเพลตรายงาน

ขั้นตอน 2) การเลือกเทมเพลตที่ต้องการ

  1. เลือกเทมเพลตของคุณ เช่น เชอร์รี่
  2. คลิกที่ปุ่ม "ถัดไป"

การสร้างตัวอย่างเทมเพลตรายงาน

ขั้นตอน 3) การเลือกโฟลเดอร์หลัก

  1. เลือกโฟลเดอร์ MyReports
  2. ป้อนชื่อไฟล์ เช่น “Cherry Report”
  3. คลิกที่ปุ่ม "ถัดไป"

การสร้างตัวอย่างเทมเพลตรายงาน

ขั้นตอน 4) ในหน้าต่างแหล่งข้อมูล ให้คลิกปุ่ม “ใหม่” เพื่อสร้างอะแดปเตอร์ข้อมูลใหม่

การสร้างตัวอย่างเทมเพลตรายงาน

ขั้นตอน 5) การเลือกอะแดปเตอร์ข้อมูล

  1. เลือกตัวแปลงข้อมูลจากกล่องรายการ ตัวอย่างเช่น “ชุดของ” Javaถั่ว."
  2. คลิกที่ปุ่ม "ถัดไป"

การสร้างตัวอย่างเทมเพลตรายงาน

ขั้นตอน 6) ป้อนรายละเอียดอะแดปเตอร์ข้อมูลและเลือกคลาสโรงงาน

  1. ป้อนชื่ออะแดปเตอร์ของคุณ
  2. เลือกคลาสโรงงานโดยคลิกที่ปุ่ม “…”

การสร้างตัวอย่างเทมเพลตรายงาน

ขั้นตอน 7) ป้อนคำนำหน้าหรือรูปแบบ

  1. ป้อนคำนำหน้าชื่อหรือรูปแบบ
  2. คลิกรายการที่ตรงกัน
  3. คลิกที่ปุ่ม "ตกลง"

การสร้างตัวอย่างเทมเพลตรายงาน

ขั้นตอน 8) กำหนดคลาสโรงงานและเพิ่มเส้นทางไปยังไฟล์ jar

  1. ป้อนชื่อของวิธีการคงที่ในคลาสโรงงาน ในตัวอย่างรายงาน Jasper นี่คือ createBeanCollection
  2. หากคุณ Javaคำจำกัดความของ Bean มีคำอธิบายฟิลด์ และหากคุณต้องการใช้คำอธิบายเหล่านี้เป็นชื่อใน Jaspersoft Studio ให้เลือกช่องทำเครื่องหมาย "ใช้คำอธิบายฟิลด์"
  3. เพิ่มเส้นทางไปยังไฟล์ jar ของคุณ
  4. คลิกที่ปุ่ม “เสร็จสิ้น”

การสร้างตัวอย่างเทมเพลตรายงาน

ขั้นตอน 9) คลิกที่ปุ่ม "ถัดไป"

การสร้างตัวอย่างเทมเพลตรายงาน

ขั้นตอน 10) ขอแสดงความยินดี! คุณได้เพิ่มข้อมูลการสร้างรายงานที่จำเป็นทั้งหมดเรียบร้อยแล้ว คลิกที่ปุ่ม “เสร็จสิ้น”

การสร้างตัวอย่างเทมเพลตรายงาน

รายงานจะถูกสร้างขึ้นตามที่แสดงในภาพหน้าจอด้านล่าง

การสร้างตัวอย่างเทมเพลตรายงาน

ไฟล์ข้างต้นจำเป็นต้องคอมไพล์ให้อยู่ในรูปแบบไบนารีของ JasperReport ซึ่งเรียกว่าไฟล์ jasper

อินเทอร์เฟซ net.sf.jasperreports.engine.design.JRCompiler ซึ่งเป็นส่วนหนึ่งของไลบรารี JasperReports มีบทบาทสำคัญในการคอมไพล์ไฟล์แม่แบบรายงานนี้

การใช้งานอินเทอร์เฟซนี้สามารถเขียนได้ Java, Javaต้นฉบับ, Groovyหรือภาษาสคริปต์อื่นๆ

คุณสามารถคอมไพล์ไฟล์ JRXML ได้โดยใช้สองวิธีต่อไปนี้:

  • การรวบรวมโปรแกรมจาก Java รหัส.
  • การคอมไพล์โดยใช้ มดอาปาเช่ งาน.

โค้ดตัวอย่างด้านล่างแสดงเส้นทางการเขียนโปรแกรม โดยบรรทัดแรกจะคอมไพล์เทมเพลต และบรรทัดที่สองจะเติมข้อมูลลงในเทมเพลตนั้น Javaคอลเล็กชั่นถั่ว

import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;

public class ReportRunner {

    public static void main(String[] args) throws JRException {

        // 1. Compile the JRXML template into a .jasper file
        JasperReport report = JasperCompileManager.compileReport("CherryReport.jrxml");

        // 2. Fill the compiled template with a collection of beans
        JRBeanCollectionDataSource source =
                new JRBeanCollectionDataSource(EmployeeFactory.createBeanCollection());

        JasperPrint print = JasperFillManager.fillReport(report, null, source);

        // 3. Export the filled report to PDF
        JasperExportManager.exportReportToPdfFile(print, "CherryReport.pdf");

        System.out.println("Report exported successfully");
    }
}

Output:

Report exported successfully

ทำความเข้าใจเกี่ยวกับระดับรายงานต่างๆ

เค้าโครงของ JasperReports แบ่งออกเป็นส่วนแนวนอนที่เรียกว่าแถบ แต่ละแถบมีกฎการพิมพ์ที่กำหนดไว้ และการเข้าใจกฎเหล่านั้นจะช่วยให้นักออกแบบสามารถควบคุมได้อย่างแม่นยำว่าค่าใดจะปรากฏที่ใดในเอกสารที่เสร็จสมบูรณ์

ต่อไปนี้คือแถบรายงานมาตรฐานที่เครื่องมือสร้างรายงานเชิงพาณิชย์ส่วนใหญ่ใช้

  • ชื่อหนังสือ
  • ส่วนหัวของหน้า
  • ส่วนหัวของคอลัมน์
  • รายละเอียด
  • ส่วนท้ายของคอลัมน์
  • ส่วนท้ายของหน้า
  • ส่วนท้ายหน้าสุดท้าย
  • สรุป
  • ส่วนหัวของกลุ่ม
  • ส่วนท้ายกลุ่ม
  • พื้นหลัง
  • ไม่มีข้อมูล

เรามาเรียนรู้รายละเอียดของแต่ละระดับการรายงานกันเถอะ

ชื่อหนังสือ

แถบนี้จะปรากฏอยู่ตอนต้นของรายงาน สามารถแยกไปไว้ในหน้าแรกได้โดยการตั้งค่าแอตทริบิวต์ isTitleNewPage="true".

ส่วนหัวของหน้า

แถบส่วนหัวของหน้าจะแสดงขึ้นที่จุดเริ่มต้นของแต่ละหน้า โดยจะไม่แสดงในหน้าแรกหากมีการใช้แถบชื่อเรื่อง และจะไม่แสดงในหน้าสุดท้ายหากมีการใช้แถบสรุปตามการตั้งค่า isSummaryWithPageHeaderAndFooter="false".

ส่วนหัวคอลัมน์

ส่วนหัวของคอลัมน์จะปรากฏก่อนแถบรายละเอียดในแต่ละหน้า

รายละเอียด

ส่วนรายละเอียดจะถูกทำซ้ำสำหรับแต่ละระเบียนในแหล่งข้อมูลที่ให้มา นอกจากนี้ยังอนุญาตให้มีแถบรายละเอียดหลายแถบได้ (1, 2 และอื่นๆ)

ส่วนท้ายคอลัมน์

ส่วนนี้จะปรากฏอยู่ด้านล่างแถบรายละเอียดในแต่ละหน้าที่มีแถบรายละเอียดอยู่ การตั้งค่าเริ่มต้นคืออยู่ท้ายหน้า แต่สามารถเปลี่ยนให้อยู่ใต้แถบรายละเอียดสุดท้ายได้โดยการตั้งค่าแอตทริบิวต์ isFloatColumnFooter="true".

ส่วนท้ายของหน้า

ส่วนนี้จะแสดงอยู่ที่ท้ายสุดของแต่ละหน้า โดยไม่รวมส่วนสรุป ส่วนหัวเรื่อง และส่วนสุดท้ายที่ไม่ใช่ส่วนสรุป

ส่วนท้ายหน้าสุดท้าย

ส่วนนี้จะปรากฏบนหน้าสุดท้าย แทนที่ส่วนท้ายหน้าตามปกติ เมื่อไม่มีแถบสรุปเนื้อหา

สรุป

ส่วนสรุปจะปรากฏเฉพาะตอนท้ายรายงานในหน้าใหม่เมื่อ... isSummaryNewPage="true" ถูกตั้งค่าแล้ว และมีส่วนหัวและส่วนท้ายของหน้าเมื่อ isSummaryWithPageHeaderAndFooter="true" ถูกตั้งค่า

ส่วนหัวของกลุ่ม

ส่วนนี้จะปรากฏขึ้นเฉพาะเมื่อมีการกำหนดขึ้นทุกครั้งที่มีการเปลี่ยนแปลงนิพจน์กลุ่ม ก่อนแถบรายละเอียด

ส่วนท้ายกลุ่ม

ส่วนนี้จะแสดงเฉพาะเมื่อมีการกำหนดกลุ่มไว้เท่านั้น โดยจะแสดงทุกครั้งก่อนที่นิพจน์กลุ่มจะเปลี่ยนแปลง หลังจากแถบรายละเอียด

พื้นหลัง

โดยจะแสดงเป็นพื้นหลังบนทุกหน้าสำหรับแถบรายงานอื่นๆ ทั้งหมด

ไม่มีข้อมูล

แถบนี้จะปรากฏขึ้นเมื่อไม่มีการส่งแหล่งข้อมูล หรือแหล่งข้อมูลว่างเปล่า whenNoDataType="NoDataSection" ถูกตั้งค่า

แจสเปอร์กับเพนทาโฮ

ต่อไปนี้เราจะมาเรียนรู้ความแตกต่างระหว่างหินแจสเปอร์และหินเพนทาโฮกัน

นี่คือความแตกต่างที่สำคัญระหว่างแจสเปอร์และเพนทาโฮ:

พารามิเตอร์ นิล ซอฟต์แวร์ Pentaho
รายงาน แจสเปอร์ใช้โปรแกรม Jaspersoft Studio ในการออกแบบรายงาน โดยใช้โปรแกรม Pentaho Report Designer
รองรับ ETL Jaspersoft ใช้ Talend Open Studio เวอร์ชันสำหรับงาน ETL (Extract, Load, Image) โดยจะใช้ Pentaho Data Integrator เป็นค่าเริ่มต้น เครื่องมือ ETL.
แดชบอร์ด ฟังก์ชันแดชบอร์ดมีเฉพาะใน Jaspersoft Enterprise Edition เท่านั้น Pentaho มีฟีเจอร์มากมายให้เลือกใช้ในแดชบอร์ดของตน
ระบบธุรกิจอัจฉริยะบนมือถือ Jaspersoft มีระบบสนับสนุน BI บนมือถือที่ดีกว่า Pentaho จำเป็นต้องพึ่งพาเครื่องมือจากภบุคคลที่สามเพื่อเพิ่มประสิทธิภาพประสบการณ์การใช้งาน BI บนมือถือ
เอกสาร การตลาด ไซต์ และเอกสารประกอบที่ดีขึ้น การสนับสนุนเอกสารไม่ดี
คุณสมบัติที่ดีที่สุด ค้นคว้าและค้นหาสิ่งที่คุณต้องการได้ง่ายขึ้น นำเสนอการวิเคราะห์ข้อมูลและการผสานการทำงานกับ iPhone
รุ่นที่จ่าย เวอร์ชันที่ต้องชำระเงินมีคุณสมบัติเช่น แบบสอบถามเฉพาะกิจ การสร้าง UI เว็บและแดชบอร์ด UI เว็บ มีคุณสมบัติเด่น เช่น การเชื่อมต่อกับ LDAP, SSO และการตรวจสอบบันทึกการใช้งาน

ทีมที่ลงทุนไปแล้วใน Java โดยทั่วไปแล้ว stack มักเลือกใช้ Jasper ในขณะที่ทีมที่ต้องการการบูรณาการข้อมูลจำนวนมากควบคู่ไปกับการรายงานมักจะเลือกใช้ .NET Framework ซอฟต์แวร์ Pentaho.

ความท้าทายที่ต้องเผชิญขณะสร้าง JasperReports

ต่อไปนี้คือความท้าทายบางประการที่คุณอาจพบเจอขณะสร้างรายงาน Jasper:

  • การเปลี่ยนแปลงหลัก – เมื่อกฎทางธุรกิจเปลี่ยนแปลงหรือได้รับการปรับปรุง จำเป็นต้องเปลี่ยนแปลงตรรกะหลักของรายงานด้วย
  • รายงานที่ซับซ้อน เช่น รายงานย่อยและรายงานแบบตารางไขว้ เป็นตัวอย่างที่ดี
  • รายงานในรูปแบบแผนภูมิหรือแผนภูมิภาพ เช่น กราฟ แผนภูมิเส้น XY แผนภูมิวงกลม แผนภูมิแท่ง แผนภูมิอนุกรมเวลา และแผนภูมิมิเตอร์

ข้อเสียของการใช้ Jasper Reports

ต่อไปนี้คือข้อเสียของการใช้ Jasper Reports

  • เมื่อคุณเริ่มทำการเปลี่ยนแปลงส่วนต่างๆ ของแพ็กเกจและลบฟีเจอร์ออกไปแล้ว การจะกลับไปใช้การตั้งค่าเริ่มต้นของแพ็กเกจนั้นทำได้ยากมาก
  • มันมีความยืดหยุ่นน้อยเกินไป และการแก้ไขเส้นและการสร้างตารางไขว้เป็นงานที่ท้าทาย
  • งานบางอย่างที่ทำกันทั่วไป เช่น การระบุผลรวมย่อยสำหรับรายงานแบบจัดกลุ่ม จะทำได้ง่ายขึ้นในโปรแกรมออกแบบรายงานอื่นๆ
  • Jasper ต้องการให้คุณรวบรวมรายงานก่อนที่จะรัน ซึ่งหมายความว่านักพัฒนารายงานต้องมีข้อมูลทั้งหมด Java ติดตั้ง SDK แล้ว
  • บางครั้งเมื่อคุณแก้ไขรายงาน รายงานจะไม่แสดงตัวอย่างแบบเดียวกับที่แสดงบนเว็บ

คำถามที่พบบ่อย

ไฟล์ .jrxml คือเทมเพลต XML ที่มนุษย์อ่านได้ ซึ่งนักออกแบบใช้แก้ไข ส่วนไฟล์ .jasper คือไฟล์ไบนารีที่คอมไพล์แล้ว ซึ่งมีเพียงไฟล์ที่คอมไพล์แล้วเท่านั้นที่จะถูกเรียกใช้งานในระหว่างการทำงาน

JasperReports Library และ Jaspersoft Studio Community Edition เผยแพร่ภายใต้ใบอนุญาตโอเพนซอร์ส และสามารถนำไปใช้ในผลิตภัณฑ์เชิงพาณิชย์ได้ ส่วนฟีเจอร์แดชบอร์ด การตั้งเวลา และฟีเจอร์ด้านความปลอดภัยนั้น จำเป็นต้องใช้เวอร์ชันที่ต้องชำระเงิน

ใช่แล้ว สร้าง JDBC data adapter ใน Jaspersoft Studio ใส่ไฟล์ driver jar และ connection string จากนั้นเขียน query ลงในรายงาน พารามิเตอร์จะถูกส่งผ่านโดยใช้ไวยากรณ์ดอลลาร์และวงเล็บปีกกา

ใช่แล้ว เพิ่ม dependency ของ jasperreports วางไฟล์ .jasper ที่คอมไพล์แล้วไว้ใน classpath และเรียกใช้ JasperFillManager จากคลาส service ข้อมูลที่ส่งออกสามารถส่งตรงไปยังการตอบสนอง HTTP ได้เลย

ผู้ช่วย AI สามารถร่างโครงร่าง JRXML และไวยากรณ์นิพจน์ได้อย่างรวดเร็ว ควรเปิดไฟล์ที่สร้างขึ้นใน Jaspersoft Studio เสมอ เนื่องจากความสูงของแถบและพิกัดขององค์ประกอบมักต้องได้รับการแก้ไขด้วยตนเอง

มันจัดการกับเอกสารปฏิบัติการที่มีความละเอียดสูงระดับพิกเซล ซึ่งแดชบอร์ด AI ไม่สามารถสร้างได้ เช่น ใบแจ้งหนี้และใบแจ้งยอด ผลลัพธ์จากโมเดลจะถูกบันทึกไว้ในฐานข้อมูล และ Jasper จะแสดงผลเพื่อการเผยแพร่

สรุปโพสต์นี้ด้วย: