รายงานยอดรวมไม่ตรง เพราะการ JOIN ตารางอื่นเอาไว้ ซึ่งมียอดเยอะ เกินจริง
เพราะเวลา JOIN แล้วไม่ได้ GROUP ไว้ข้อมูลที่เข้าเงื่อนไขจะมาแสดงหมดเลย
โดยเฉพาะตารางที่เป็นแบบ One to Many ถ้าตารางที่สองเข้าเงื่อนไข 10 รายการ
จะทำให้ เกิดข้อมูล 10 แถว เมื่อ SUM ออกมา ค่าจะเบิ้ลไป 10 ครั้งนั่นเอง
สำหรับครั้งนี้เป็นปัญหาที่เกิดกับ Crystal Report 8.5 ที่สร้างไว้โดยพี่โปรแกรมเมอร์คนก่อน
วันนี้ตรวจสอบแล้วเพี้ยนจึงต้องแก้ให้ได้ จะไปใส่ SQL โดยตรงก็รู้สึกว่าจะทำไม่ได้
ใช้เวลาครึ่งวันสุดท้ายก็ได้วิธีหาค่า SUM แบบ มีการแสดงผลด้วย GROUP ไว้จนได้
เมนู Insert > Runing Total Field
ในหน้าต่าง Field Explorer ให้คลิกขวาที่ Runing Total Field: แล้วเลือก New
จะขึ้นหน้าต่าง Create Running Total Field
ตั้งชื่อในช่อง Running Total Name
เลือกฟิลด์ที่ต้องการหาผลรวมในส่วนของ Summary
ที่ Evaluate ให้เลือก On change of group : ให้เลือก ฟิลด์ที่จัดกลุ่มในรายงาน
ที่ Reset ให้เลือก On change of group : แล้วเลือกกฟิลดที่จุดกลุ่ม ชั้นที่ 2
คลิก OK เป็นอันสิ้นสุด
ลาก Running Total Field ที่สร้างไปวางในฟอร์ม ก็จะได้ยอดรวมที่นับได้ถูกต้องตามเรคอร์ดจริง"
สำหรับตัวอย่างกรีศึกษาที่เจอ จะมาเพิ่มรายละเอียด และข้อมูลตัวอย่าง่ให้อีกทีนะครับ
PHP CI MANIA - PHP Code Generator
โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม"
ความคิดเห็น
แสดงความคิดเห็น