ที่ Crystal Report สร้าง Formula Fields ขึ้นมาตามจำนวนเท่ากับ text ใน vb หรือมากกว่าแล้วแต่ต้องการ จัดตกแต่ฟอร์มให้เรียบร้อยบันทึกไฟล์ Report นั้น
จากนั้นลาก Component Control (CrystalReport) เข้ามในฟอร์มคลิกขวาแล้วเลือกที่ Perpoty เลือกไฟล์ Report ที่เรา Save เข้ามา
จากนั้นสร้างปุ่ม Command1 ตั้งชื่อ "พิมพ์" หรืออื่นๆ ดับเบิลคลิกทีหนึ่งจะได้เป็น
Private Sub Command1_Click()
End Sub
เขียนคำสั่งเข้าไปใน Event on Click ดังนี้
Private Sub Command1_Click()
'อันนี้เอาไว้ดึงไฟล์โดยที่โฟล์เดอร์โปรแกรมสามารถย้ายไปไหนก็เปิด Report ได้
'cryStatusSO.ReportFileName = App.Path & "Report\StatusSO.rpt"
'แถวนี้ติดต่อฐานข้อมูลคุณไม่ได้ติดต่อกับฐานข้อมูลก็ไม่ต้องใช้
'yStatusSO.Connect = "DRIVER=SQL Server;SERVER=servername;UID=username;PWD=password;APP=Visual Basic;DATABASE=databasename"
'แถวข้างบนใช้ส่งค่าเงื่อนไขรายงานเวลาดึงข้อมูลผ่านฐานข้อมูล คล้าย Where ใน SQL ละ
'cryStatusSO.SelectionFormula = "{ORDERH.FDDATE} >= #" & Format(DTPicker1.Value, "M/d/yyyy") & "
CrystalReport1.Formulas(0) = "FieldName1=;'" & Label1.Caption & "'"
CrystalReport1.Formulas(1) = " FieldName2=;'" & Label2.Caption & "'"
CrystalReport1.Formulas(2) = " FieldName3=;'" & Label3.Caption & "'"
.
.
.
CrystalReport1.Formulas(n) = " FieldNamen=;'" & Labeln.Caption & "'"
ข้างล่างนี้คือการสั่งให้ CrystalReport1 ทำงาน
CrystalReport1.Destination = crptToWindow
CrystalReport1.WindowState = crptMaximized
CrystalReport1.Action = 1
จบการแสดงรายงาน
End Sub
คิดว่าน่าจะอธิบายรายละเอียดได้พอดีเลยละ
|
|
|
|
บันทึกการเข้า
|
<b>กลุ่มผู้ดูแลระบบแห่งประเทศไทย ขอระงับการใช้ลายเซ็นต์รูปภาพ อนุญาตให้ใช้ได้เพียง ลายเซ็นต์ที่เป็นข้อความ จึงประกาศมาเพื่อขอความร่วมมือ จากสมาชิกทุกๆ ท่าน ในนาม กลุ่มผู้ดูแลระบบแห่งประเทศไทย</b>
|