มาเริ่มสร้างงานตัวแรกกันครับ
เราต้องการสร้าง "หน้าจอ" ที่แสดงข้อความ "Hello World"
1. สร้าง display file (DspF)
1.1 สร้าง member ในชื่อ HelloW โดยมี 1 หน้าจอ (Record Format) ชื่อ HelloW1
STRPDM > เลือก 3. member > เลือกที่จัดเก็บ qgpl/qddssrc
> กด F6 = สร้าง Member ใหม่ > ตั้งชื่อ HelloW (แล้ว Save)
ออกไป สร้างหน้าจอด้วย STRSDA หรือ ป้อน code ต่อเนื่อง ดังนี้
A HELLOW1
A 5 10 'HELLO WORLD'
กด F3 = ออก และ Save
1.2 compile (เปลี่ยน Source Code) ให้เป็น Object
ป้อน opt = 14 ที่ หน้า member HelloW + กด F4
ตรวจว่า คุณระบุให้สร้างไว้ที่ qgpl
ต้องเห็น Message ว่าการสร้างสำเร็จ
2. สร้าง RPG
2.1 สร้าง member ชื่อ Hello
STRPDM > เลือก 3. member > เลือกที่จัดเก็บ qgpl/qrpgsrc
> กด F6 = สร้าง Member ใหม่ > ตั้งชื่อ Hello
ป้อน code ตามนี้
FHELLOW CF WRKSTN
C*
C EXFMTHELLOW1
C SETON LR
C RETRN
F-spec เรียกใช้ (DspF)
C-spec สั่งให้ HelloW1 แสดงผล และ "รอ" รับคำสั่ง
2.2 compile (เปลี่ยน Source Code) ให้เป็น Object
(ปรกติ Lib = qgpl จะอยู่ใน Library List อยู่แล้ว)
ป้อน opt = 14 ที่ หน้า member Hello + กด F4
ตรวจว่า คุณระบุให้สร้างไว้ที่ qgplต้องเห็น Message ว่าการสร้างสำเร็จ
3. เรียกใช้โดยใช้คำสั่ง call Hello
โดยส่วนตัวอยากให้ ผู้เริ่มสร้างจะต้องพบ Error ในจุดต่างๆ
ขอให้ อดทนเข้าใจที่มาของปัญหา (จะได้คุ้นกับศัพท์ใหม่ๆ)
ทางแก้ไขหลายอย่าง จะทำผ่านการกำหนดค่าต่างๆ (เหมือน กฏ)
เช่น การตั้งค่า Current Library (สร้างแล้วเก็บไว้ที่นี่, call RPG ให้เรียกจากที่นี่)
ถ้าทำสำเร็จ ให้ลองทำ ตย.นี้ต่อครับ (ทำๆๆๆๆ)
DspF (อาจจะ)ตั้งชื่อ Ex10W มี 2 Records Format (Ex10W1,Ex10W2)
Ex10W1 สร้าง ตัวแปร W1A, W1B เพื่อรับค่า
Ex10W2 (ตั้งชื่อ ตัวแปรเหมือน W1) เพิ่มตัวแปร W2C
RPG ตั้งชื่อ Ex10
- แสดง Ex10W1 รับค่าเข้าตัวแปร (ป้อน + Enter)
C EXFMTEX10W1
- คำนวน
C W1A ADD W1B W2C
- แสดง W2 รอรับค่า (ค้างหน้าจอ จนกว่าจะกด Enter)
C EXFMTEX10W2