วันอังคารที่ 26 กรกฎาคม พ.ศ. 2565

Simple RPG

 เราจะสร้างโปรแกรมที่ 
-ไม่ต้องสร้างหน้าจอ (Display File) ... แต่จะแสดงผลผ่าน Msg แทน

Msg ของ iSeries หรือ AS/400 

Msg (Message) เป็นข้อความที่ใช้ส่งหากัน  (คล้าย Mail แต่เป็นยุคเริ่มต้น)

Msg จะถูกส่งให้ไปยัง  Msg Queue  ซึ่งใช้บ่อย 2 ตัว คือ ชื่อ User Profile กับ  ชื่อจอที่ทำงาน(hob)
            เราจะเขียนโปรแกรม ส่งไปยัง  User Profile ของเรา "SARAYUT"
การส่ง Msg ทำผ่านคำสั่ง









เราจะดู Msg ได้โดยผ่านคำสั่ง DspMsg

ที่ line command  ป้อนคำสั่ง  DspMsg  กด Enter
จะได้ผล คล้ายแบบนี้ (ไม่มี Msg ค้างในนี้)

มุมซ้าย-บน แสดงชื่อ User Profile ของผม

สร้าง source code 

cmd line : STRPDM  + Enter > ป้อน   3 + Enter   (เลือก opt=3  Work with Member)

ป้อน File = QRPGSRC   , Lib = QGPL (หรือที่เก็บ) , Member : Name = *ALL



กด F6=Create (สร้าง member)  + ตั้งชื่อ code (member)  HELLO1  ชนิด RPG

(หลังจาก ตั้งชื่อ) จะเห็น หน้าจอ  พร้อมป้อน code  (แสดงบรรทัดว่างให้ป้อน)
ให้กด Enter เพื่อ "ยกเลิก"

แล้วสั่ง  "เพิ่ม"(Insert) บรรทัดว่างเพื่อป้อน  โดยแสดง Format ช่วยป้อนชนิด C-Spec  เพิ่ม 5 บรรทัด
ป้อนคำสั่ง   IFC3   ที่ด้านซ้าย + กด Enter
จากนั้น ป้อน code ตามภาพ (ตำแหน่ง ต้องตรง)

ให้ส่ง  "HI!"  ไปที่ Msg Queue ชื่อ SARAYUT
แล้ว  สิ้นสุดการทำงาน ของ RPG (LR= Last Record) 

Compile (code) เป็น Object

จะเกิด Member = Hello1   

(ทำครั้งแรกเท่านั้น)
ตั้งค่าการ Compile และ Run  
-Object ที่ compile จะเก็บใน Lib= QGPL
-Compile ไม่ใช่ Compile in Batch (=เห็นผลลัพธ์ของการ compile โดยตรง)
-ไม่ run ใน Batch (=เห็นผลการ Run ทันที)

ที่ Work with  Member using PDM
กด [F18]=Change Default  (ถ้าไม่เห็น ปุ่มนี้ กด [F24]  2 ครั้ง)

Compile โดย    ช่อง Opt ด้านหน้า Hello1  ป้อน 14 
+  กด F4 = Prompt  (ดูว่าสร้างแล้วไปเก็บที่ Lib. อะไร  ปรกติจะตรงกับที่ตั้งค่าไว้)


ถ้า compile ผ่านจะแสดง msg ที่บรรทัดด้านล่าง
สั่ง run program นี้ได้เลย   call  hello1
หลัง run ใช้คำสั่ง dspmsg
จะเห็นข้อความที่ RPG ส่งไป


สรุป
-Simple RPG ใช้ Msg ในการติดต่อ
-(ผมเลือก)ใช้ StrPDM ในการจัดการ code  (สร้าง, compile)  อยู่ในรูป member ใน Source (File)
-    ตั้งค่าเพื่อให้จัดการ ง่าย
-เข้าไปเขียน code ด้วย StrSEU 
-    RPG ต้องเขียนใน  "แนว" ตำแหน่ง
-compile code เป็น object
-สั่ง run (call)  +   ตรวจผลการทำงาน ด้วยคำสั่ง DspMsg









ไม่มีความคิดเห็น:

แสดงความคิดเห็น