โดย wee2tee » เสาร์ พ.ย. 15, 2008 10:18 am
สาเหตุ : เนื่องจากในโครงสร้างคำสั่งการพิมพ์เอกสารใบนำฝาก (ในเมนูแก้ไขแบบทดสอบ) มีการเขียนส่วนที่เป็น item file ซึ่งใช้ในการแสดงผลรายการเช็คที่นำฝาก โดยใช้ไฟล์ bktrnit ซึ่งฟิลด์ของไฟล์ ดังกล่าวไม่มีฟิลด์ที่เก็บ วันที่เช็ค เอาไว้ครับ ผลเลยออกมาเป็นอย่างที่คุณ dekying เห็นอยู่ครับ
วิธีแก้ไข : ปัญหาเกิดจากโครงสร้างคำสั่งในการพิมพ์แบบฟอร์ม เราก็มาแก้ที่ต้นตอกันนี่แหละครับ
- เข้าเมนูแก้ไขแบบทดสอบของเอกสารใบนำฝากเช็ค (คลิกปุ่ม สามเหลี่ยมเล็ก ๆ ข้างปุ่มรูป printer สีเหลือง แล้วเลือกข้อ 2 แก้ไขแบบทดสอบ / เลือกฟอร์มที่ต้องการแก้ไข)
- แก้ใขในจุดต่างต่างที่ผมทำเป็นตัวสีแดง ข้างล่าง นี้ครับ
[ประมาณบรรทัดที่ 18 ถ้าใช้แบบฟอร์มจากต้นฉบับ]
Ih:: ;1 bktrna->refdoc bktrn->chqnum
[ประมาณบรรทัดที่ 70 ในส่วนของ item file ให้เพิ่มไฟล์นี้เข้าไปครับ]
File=bktrna
Clone From=BKTRN
Alias=V
Key=BKTRNA->REFDOC+DTOS(BKTRNA->CHQDAT)
Index=xxx
Filter=.NOT.DELETED()
System=DATA_PATH
[สุดท้ายเป็นส่วน data spec ให้แก้ไขตัวแปรที่นำมาแสดงข้างล่างนี้ครับ]
~CHQNUM: 0, "", "chq_num", "chq_num= substr(BKTRNA->CHQNUM,3,10); seq=seq+1"
~XCHQDAT: 0, "", "BKTRNA->CHQDAT", ""
~XBANKOF: 0, "", "p_istab( BKTRNA->BNKCOD, 01, 1, 0)", ""
~XBRANCH: 18, "", "BKTRNA->BRANCH", ""
~XCHQAMT: 0, "99,999,999.99", "BKTRNA->AMOUNT", ""
เท่านี้ก็น่าจะเรียบร้อยครับ อ้อ อย่าลืมนะครับ แก้ไขไว้ตามนี้แล้ว ลอง "พิมพ์แบบทดสอบ" ดูก่อนนะครับ ซึ่งถ้าได้ตามวัตถุประสงค์แล้วค่อยนำแบบทดสอบไปทับข้อ 1 อีกที เป็นอันเสร็จสมบูรณ์ครับ ขอให้ประสบความสำเร็จดังที่ตั้งใจไว้ครับ สวัสดีครับ...
แก้ไขล่าสุดโดย
wee2tee เมื่อ เสาร์ พ.ย. 15, 2008 10:21 am, แก้ไขแล้ว 1 ครั้ง