User Tools

Site Tools


Sidebar


Introduction


Basic Tutorials


Advance Tutorials


Useful Techniques


Examples

  • Simple Pipe Weight Calculator
  • Unit Convertor

Sidebar

tutorial:printdatausinglazreport

This is an old revision of the document!


LazReport

เป็น Package ที่ใช้สำหรับดึงข้อมูลจาก ตัวแปร หรือจาก Database แล้วนำมาแสดงเป็นรูปแบบ Report ที่นำไป Print ได้ทันที

นอกจากนี้ ตัวเอกสารที่ได้นั้น สามารถจัดย่อหน้า จัดรูปแบบ ขนาดตัวอักษรได้ตามต้องการ จึงถือได้ว่ามีความสำคัญในการนำข้อมูลของโปรแกรมมานำเสนอเป็นเอกสาร


เริ่มต้นใช้งาน

ในหัวข้อนี้ จะแสดงตัวอย่างการใช้งาน LazReport เพื่อดึงข้อมูลทั้งที่เป็นตัวแปรเดี่ยว และแบบ Array

1. ก่อนใช้งาน ต้องทำการ Download ไฟล์ Package ของ LazReport มาติดตั้งเสียก่อน

2. สร้างโปรเจคที่เป็น Form-Based Application จากนั้นให้นำ Control 5 ตัวมาวางบน Form1 ดังนี้
2.1 Standrad Control ให้นำ Button1 Button2 มาวางบน Form1
2.2 LazReport Control ให้นำ frReport1, frUserDataset1 และ frDesigner1 มาวางบน Form1

3. สำหรับ Control แต่ละตัวนั้น ให้สร้าง procedure ดังนี้

Control Procedure Description
Form1 FormCreat() สร้าง Event ที่ทำงานเมื่อ Form1 ถูกสร้าง
Button1 Button1Click() สร้าง Event ที่ทำงานเมื่อ Button1 ถูก Click
Button2 Button2Click() สร้าง Event ที่ทำงานเมื่อ Button2 ถูก Click
frReport1 frReport1GetValue() สร้าง Event ที่ทำงานเพื่อรับข้อมูลไปแสดงใน Report
frUserDataset1 frUserDataset1CheckEOF() สร้าง Event ระบุเงื่อนใขในการหยุดการแสดงข้อมูลที่เป็น DataSet (ในที่นี้คือ ArrData[])
frUserDataset1First() สร้าง Event ที่ทำงานเมื่อ DataSet ถูกอ่านครั้งแรก
frUserDataset1Next() สร้าง Event ที่ทำงานเมื่อ DataSet ถูกอ่านครั้งถัดไป

    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);    
    procedure frDesigner1LoadReport(Report: TfrReport; var ReportName: String);
    procedure frReport1GetValue(const ParName: String; var ParValue: Variant);
    procedure frUserDataset1CheckEOF(Sender: TObject; var Eof: Boolean);
    procedure frUserDataset1First(Sender: TObject);
    procedure frUserDataset1Next(Sender: TObject);

4. สร้างตัวแปรดังนี้ - ตัวนับ index ของ Array ชื่อ “nc” ซึ่งเป็นตัวแปร integer - Array ขนาด 2 x 20 ชื่อว่า “ArrData[]” - ตัวปร integer ชื่อ “nc” สำหรับใช้ระบุ index ของ ArrData[]

var 
  Form1: TForm1;
  ArrData:array[1..2,1..20] of real; //ArrayData to be printed
  nc:integer = 1;  //Index of ArrayData    

5. ให้ Double Click ที่ Control ชื่อ frDesigner1 จะเกิดหน้าต่างแสดงหน้ากระดาษเปล่าขึ้นมา ซึ่งหน้ากระดาษดังกล่าว คือ Report ในโหใด Design นั่นเอง เราสามารถปรับแก้ สร้าง Template ได้โดยง่ายบนหน้าต่างนี้

จากนั้นให้ทำการ Save As .. ไฟล์ ชื่อ report1.lpr

tutorial/printdatausinglazreport.1577401448.txt.gz · Last modified: 2019/12/27 06:04 by admin