บทที่ 11 ตอน 3 การออกแบบรายงานด้วย Crystal Report

การออกแบบรายงานด้วย Crystal Report
                จากนี้จะได้ออกแบบรายงานข้อมูลนักเรียนซึ่งเป็นภาคปฏิบัติที่จะต้องทำความเข้าใจกับวิธีการและเทคนิคต่างๆ จะได้กล่าวไว้ในเนื้อหานี้ ก่อนที่จะออกแบบรายงานใน Crystal Report จำเป็นอย่างยิ่งที่จะต้องวางแผนออกแบบตัวรายงานไว้ก่อนเพื่อความรวดเร็วในการสร้าง ซึ่งสามารถออกแบบใน Ms-Word ก่อนก็ได้
                ในรายงานตัวอย่างด้านล่างนี้ผู้สอนได้ออกแบบการแสดงผลรายงานอย่างง่าย โดยการควบคุมการแสดงผลผ่าน VB.NET ซึ่งในตัวอย่างนี้จะแสดงค่า รายชื่อของนักเรียนที่มีอักษร อ ขึ้นต้นและสรุปรวมพร้อมแยกจำนวนชาย หญิง ไว้ที่ส่วนท้ายรายงาย (Report Footer)


ในการที่จะทำความเข้าใจกับเครื่องมือและคำสั่งของ Crystal Report อาจจะต้องใช้เวลาและประสบการณ์ในการศึกษาบ้าง หากนักศึกษาลองสังเกตและได้ทำความเข้าใจกับตัวอย่างนี้ที่จะได้นำเสนอนี้ คงเพียงพอในระดับหนึ่งในการสร้างรายงานเพื่อแสดงผลข้อมูลในลักษณะต่างๆ ดังนั้นโปรดฝึกหัดและสังเกตการใช้งานเครื่องมือต่างๆ ไปพร้อมกัน

1.  ในแถบ Insert ให้เลือกเครื่องมือ Text Object แล้วนำมาลากวางาบนส่วนของ Report Header พร้อมยืดออกให้เต็มหน้าจอในแนวนอน แล้วพิมพ์ข้อความ “รายงานข้อมูลนักเรียน” ขนาดตัวอักษร 18 เป็นตัวหนาและจัดกึ่งกลาง

        2.  ในแถบ Filed Explorer คลิกลากฟิลด์ std_id ไปวางในตำแหน่ง Design ส่วนของ Details โดยเว้นช่องว่างด้านหน้าไว้เพื่อจะได้ใส่ลำดับที่ของข้อมูลได้ โปรดสักเกตเมื่อวางฟิลด์เรียบร้อยในส่วนของ Page Header จะมีหัวตางรางให้เลยอัตโนมัติ








2.  ดับเบิลคลิกข้อความหัวตารางของ std_id แล้วเปลี่ยนเป็นคำว่า รหัส กำหนดให้เป็นอักษรตัวหนา และเอาขีดเส้นใต้ออก ดังภาพ

3.  ทดสอบการแสดงผล (Preview) โดย ไปเลือกที่เมนู View แล้วเลือก Print Preview หรือกดที่แท็บ Preview ซึ่งการแสดงผลจะแสดงผลดังภาพ   เสร็จแล้ว (2)ให้คลิกที่แท็บ Design เพื่อกลับสู่การออกแบบ






4.  กำหนดลำดับของข้อมูล จากข้อ 3 สังเกตกว่ามีการแสดงผลเฉพาะรหัสเท่านั้น การใส่ลำดับข้อมูลจะเลือกกลุ่ม Special Fields ในส่วนของ Filed Explorer แล้วจากนั้นเลือกรายการ Record Number  นำมาวางบนส่วนของ Details จากนั้นเปลี่ยนข้อความตรงส่วนหัวตาราง เป็นคำว่า ลำดับที่ เป็นตัวหนาและเอาขีดเส้นใต้ออก พร้อมจัดตำแหน่งให้สวยงาม ดังภาพ








5.  ทดลองแสดงผล โดยกดที่แท็บ Previewและสังเกตการแสดงผล
6.  ต่อไปจะเราจะสร้างรายการ ชื่อ- สกลุ ซึ่งในส่วนนี้จะเป็นการจัดรูปแบบการแสดงผลของฟิลด์ std_bname  std_fname  std_lname  ซึ่งแยกคนละฟิลด์มาอยู่ในฟิลด์เดียวกัน เช่น นายอนุรักษ์  พรมโคตรค้า ซึ่งการกระทำนี้จะต้องสร้าง Formula Fields ขึ้นมาใหม่โดยตั้งชื่อคือ Fullname ซึ่งมีขึ้นตอนง่ายๆ ดังนี้
6.1 ในส่วนของ Field Explorer คลิกขวาที่รายการ Formala Fields แล้วเลือกคำสั่ง New… ดังภาพ




6.2  จะพบกับหน้าต่างให้ป้อนชื่อฟิลด์ ในที่นี้ให้ตั้งชื่อคือ Fullname จากนั้นคลิกปุ่ม OK ดังภาพ

6.3  จะพบกับหน้าต่าง Formula Editor โดยสามารถป้อนสคลิปคำสั่งซึ่งในที่นี้จะเป็นการเชื่อมฟิลด์ทั้ง 3 เพื่อแสดงผลข้อมูลชื่อ คือ  {Bname.bname_name} & {student.std_fname} & "  " & {student.std_lname}

(2) ชื่อฟิลด์ในฐานข้อมูลจะอยู่ภายใต้เครื่องหมายปีกกา โดยมีตัวดำเนินการ & เพื่อทำการเชื่อมฟิลด์เข้าด้วยกัน การนำฟิลด์มาวางบน Editor นั้นสามารถดับเบิลคลิกที่รายการฟิลด์ หรือจะพิมพ์ลงไปก็ได้














(3) เมื่อพิมพ์คำสั่งเสร็จแล้ว Crystal Report จะมีเครื่องมือในการตรวจสอบคำสั่งโดยการคลิกที่ปุ่มเพื่อตรวจสอบความถูกต้องหากมีกล่องข้อความแสดงคำว่า No errors found.  แสดงว่าสูตรที่เราป้อนไปนั้นถูกต้องสามารถใช้งานได้
(4) จากนั้นคลิกที่ปุ่ม Save and close เพื่อปิดหน้าต่าง
6.4  จากข้อ 6.3 เมื่อปิดหน้าต่างสังเกตที่ส่วน Field Explorer ในกลุ่มของ Formula Field จะพบกับรายการใหม่ที่ชื่อว่า Fulllname  จากนั้นลากมาวางในส่วนของ Details พร้อมเปลี่ยนข้อความหัวตาราง ให้เป็นคำว่า ชื่อ สกุลเป็นตัวหนา ไม่มีเส้นใต้ พร้อมปรับขนาดและจัดตำแหน่งให้สวยงาม ดังภาพ
จากนั้นคลิกปุ่ม Preview เพื่อทดสอบการแสดงผล









7.  ฟิลด์ต่อไปคือ วัน เดือน ปี เกิดของนักเรียนลากฟิลด์ std_Bday มาวางส่วนของ Details ดังภาพ จากนั้นแก้ไขข้อความหัวตารางเป็นคำว่า “ว... เกิด” เป็นตัวหนา ไม่ขีดเส้นใต้ พร้อมปรับขนาดและจัดตำแหน่งให้สวยงาม 

8.  แต่เนื่องจากในฟิลด์นี้จะเก็บข้อมูลเป็น Date และ Time เมื่อแสดงผลก็จะมีเวลามาด้วยซึ่งการแสดงผลในรายงานนี้ต้องการเพียงข้อมูล วัน เดือน ปี เกิดของนักเรียน ดังนั้นจึงต้องปรับแต่งการแสดงผลคลิกขวาที่ฟิลด์ std_Bday จากนั้นเลือกคำสั่ง Format Field…




9.  ในหน้าต่าง Format Editor ให้เลือกเป็นแบบ 1-Mar-1999 ซึ่งจะมีตัวอย่างในช่อง Sample: หรือหากต้องการกำหนดรูปแบบเองก็คลิกที่ปุ่ม Customize…  จากนั้นคลิกที่ปุ่ม OK

10.  เมื่อทดสอบการแสดงผลจะมีรูปแบบ ดังภาพ

11.  นำฟิลด์ std_Age มาวางส่วนของ Details พร้อมเปลี่ยนข้อความเป็นคำว่า อายุให้เป็นตัวหนาไม่ขีดเส้นใต้ พร้อมปรับขนาดและตำแหน่งให้สวยงาม









          12.  นำฟิลด์ color_name ซึ่งจะอยู่ที่ตาราง Color มาวางส่วนของ Details พร้อมเปลี่ยนข้อความเป็นคำว่า สีที่ชอบให้เป็นตัวหนาไม่ขีดเส้นใต้ พร้อมปรับขนาดและตำแหน่งให้สวยงาม
รูปแปดเหลี่ยม: 2


13.  นำฟิลด์ pro_name ซึ่งจะอยู่ที่ตาราง program มาวางส่วนของ Details พร้อมเปลี่ยนข้อความเป็นคำว่า สาขาวิชาให้เป็นตัวหนาไม่ขีดเส้นใต้ พร้อมปรับขนาดและตำแหน่งให้สวยงาม
รูปแปดเหลี่ยม: 2




          
14.  จากนั้นทำการ Preview เราสามารถดูหน้าถัดไปได้จากปุ่ม Show Next Page




15.  จากการแสดงผลในข้อ 6.11  ยังขาดการใส่เส้นขั้นหรือช่องตาราง การใส่ตารางของ Crystal Report จะไม่เหมือนกับ Ms-Word เพราะจะต้องวางเส้นแต่ละเส้นเอง ซึ่งมีขั้นตอนดังนี้
เลือกเครื่องมือ Insert Box มาลากตั้งแต่ส่วนของ Page Harder  ไปจนถึงส่วนบนของ Report Footer เพียงเล็กน้อย ดังภาพ








16. และเมื่อคลิกปุ่ม Preview จะแสดงผล ดังภาพ

17. จากนั้นทำเส้นขั้นบริเวณหัวตารางโดยการคลิกเลือกที่เครื่องมือ Insert Line จากนั้นนำมาลากและวางบนส่วนท้ายของ Page Harder  ดังภาพ










18. และเมื่อคลิกปุ่ม Preview จะแสดงผล ดังภาพ






19. จากนั้นทำเส้นขั้นบริเวณรายการข้อมูลในแนวนอน โดยการคลิกเลือกที่เครื่องมือ Insert Line จากนั้นนำมาลากและวางบนส่วนท้ายของ Details  ดังภาพ






20. และเมื่อคลิกปุ่ม Preview จะแสดงผล ดังภาพ


21. จากนั้นทำเส้นขั้นระหว่างฟิลด์ บริเวณรายการข้อมูลในแนวตั้ง โดยการคลิกเลือกที่เครื่องมือ Insert Line จากนั้นนำมาลากและวางบนส่วนท้ายของ Details  ดังภาพ










22. และเมื่อคลิกปุ่ม Preview จะแสดงผล ดังภาพ

หากยังไม่พอใจในรูปแบบของเส้นตารางเนื่องจากข้อความอาจจะชิดขอบของเส้นในตารางจนเกินไปเนื่องจากคุณสมบัติแบบ Snap to grid ของ Crystal Report ก็สามารถยกเลิกคุณสมบัตินี้ได้เพื่อให้การจัดวางมีความเป็นอิสระมากยิ่งขึ้น
โดยการคลิกที่เมนู File จากนั้นเลือกรายการ Option… จะพบกับหน้าต่างแล้วเลือกเครื่องหมายถูกตรง Snap to grid ออก แล้วคลิกที่ปุ่ม OK จากนั้นทดสอบเลือนวัตถุบนฟอร์มจะเห็นว่า เส้นหรือฟิลด์ไม่กระโดด


23.  ส่วนถัดมาคือการทำสรุปรวมค่าต่างๆ จากรายการข้อมูลที่มี จะขอยกตัวอย่างผลการสรุปของการค้นหาในแต่ละครั้ง คือ จำนวนเพศชาย จำนวนเพศหญิง และรวมทั้งหมด ซึ่งมีขั้นตอนที่จะต้องทำความเข้าใจ ซึ่งจะเป็นประโยชน์มากในการทำรายงานแบบสรุปผล
พิจารณาตาราง Bname ในฐานข้อมูล MS-Access ในส่วนของฟิลด์ bname_sex สถานะของเพศชายคือเลข 0 และสถานะของเพศหญิงคือ 1





ดังนั้นเราต้องเขียนคำสั่งเพื่อตรวจสอบเงื่อนไข โดยการใช้ Formula Field จำนวน 2 ฟิลด์คือ sumMan และ sumWoman ดังนี้  คลิก

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

บทที่ 6 กระบวนการพอลิมอร์ฟิซึม (Polymorphism)

บทที่ 11 ตอน 3 การออกแบบรายงานด้วย Crystal Report Ex2