มารายงานผลครับ
หลังจากศึกษา IReport อยู่ 1 วันก็พบกับความคุ้นเคยทำให้ รายงานปกติธรรมดา ๆ ทำได้ไม่ยาก แต่อย่างที่บอก รายงานของผมมันมีความซับซ้อนอยู่เยอะครับ แต่ความซับซ้อน แก้ไขได้กับความสามารถของ Query และ Subreport
สรุปปัญหาอุปสรรค์การใช้ IReport ตามที่ผมเจอก่อนนะครับ
For Windows 7 ++
1. การติดตั้ง Ver.5.6 ต้องใช้กับ JDK 7 เท่านั้น JDK 8 ติดตั้งแล้ว Load ไม่ขึ้น
2. แปลงตัวเลขเป็นภาษาไทย (Bahttext) เขียน Function ใน PGsql แล้วนำมาเรียกใช้ได้เลย อันนี้ไม่มีอะไรมากก็ใช้ Fucntion ที่เคย ๆ เขียนไว้ใน MS Sql มาแปลงใช้ได้
3. การแปลงเป็น PDF สำหรับภาษาไทย Font ใน Windows 7 ใช้ไม่ได้ ต้องหา Font THSaraban หรือไม่ก็ Font UPC ใน Windows XP มาใช้ และต้อง โหลด Font เข้าไปใน Ireport พร้อมทั้งให้ Embedded เข้าไปใน PDF ด้วย หลังจากแปลง PDF แล้ว หน้าที่ที่ได้ใน PDF กับใน IReport แตกต่างกันบ้าง ถ้าจะให้เหมือนกันเลยต้องใช้ โปรแกรม Font Edit มาแก้ชื่อ Font UPC ของ XP มา Install กับ Windows 7 เพื่อจะได้ใช้ Font เหล่านี้ในการสร้างรายงานเลย จะทำให้ตอนแปลง PDF ไม่ต่างกัน (แต่สำหรับผมเท่าที่ได้ มันเพียงพอละ เลยยังไม่ทำ)
4. IReport ไม่สามารถ Stream Field type : bytea มาแปลงเป็น String ได้ ส่งผลให้การแสดงรูปภาพ ที่เราเก็บไว้ใน PGSql เกิด error ดังนั้นต้องเขียน Fucntion แปลง bytea ให้เป็น text ก่อน ในตอนดึง Sql ก็เรียกใช้ Function นี้เลย แล้วค่อยใช้ Base64 แปลงเป็นรูปภาพอีกที
สำหรับข้อ 1,2 คิดว่าทุกท่าสามารถทำได้อยู่แล้ว
ส่วน 3 มีใน อากู๋ ครับหาดูได้ ถ้าอ่านแล้วไม่เข้าใจตรงไหน ถามมาครับ
ข้อ 4 เรื่องมันยาว ผมจะเปิด หัวข้อใหม่อธิบาย โดยเฉพาะ
ปล.1 สรุปผมคงเลือกใช้ IReport ในการสร้างรายงานเพราะมีความชำนาญกับภาษา SQL มากกว่า Python,XML,RML
ปล.2 สิ่งที่ยังไม่ได้ทำคือ เชื่อม IReport เข้า Jasper เพื่อเชื่อมกับ Odoo ไว้ถ้ามี ปห จะมารายงานอีกครั้ง