c_discharge.frx แบบกำหนดเอง ฟ้อง subscript is outside define

c_discharge.frx แบบกำหนดเอง ฟ้อง subscript is outside define

โพสต์โดย sutthipongr เมื่อ จันทร์ ก.พ. 16, 2009 7:52 pm

พบ error ใน แบบ report c_discharge.frx ครับ
**********************************************


ปีนี้ สปสช กำหนดให้เพิ่ม ความสัมพันธ์ ของผู้ที่ติดต่อได้ ว่า สัมพันธ์กันยังไงกับคนไข้
และต้องมีเบอร์โทรด้วย

ผมก็ไปเพิ่ม
? "RELATN"+chr(1)+m.prsnrlt
? "TEL"+CHR(1)+left(m.hometel,10)

ใน p_discht.prg
และเปลี่ยน
** คำสั่งบรรทัดต้นฉบับ
*?? "RUN DISCHARGE" &&สั่งให้ โปรแกรม Utility run procedure นี้

* คำสั่งข้างล่างใช้กับ FORM ที่ d/l
?? "RUN U_DISCHARGE.frx" &&สั่งให้ โปรแกรม Utility run procedure น


พร้อมกับเพิ่ม dos_relatn และ dos_tel ใน u_discharge.frx (หลัง rename ก็วางที่ c:\mitutility)

ผมเจอปัญหา โปรแกรมฟ้องว่า
subscript is outside defined range

ก็ทดลองหาปัญหาดูพบว่า
ปัญหาเกิดจาก discharge status และ type of discharge
เพราะถ้าลองลบ ในกรอบทั้งหมดออกพอสั่งพิมพ์ด้วย F2 ก็ไม่มี error ดังกล่าวอีก
ตามรูปครับ
รูปภาพ
By sutthipongr at 2009-02-16

รบกวนหมอมิตร แก้ไขให้ด้วยครับ
***เราพิสูจน์ได้ด้วย ผลงานของเรา***

พอเพียง และ เพียงพอ ตามรอยพ่อของแผ่นดิน
sutthipongr
 
โพสต์: 788
ลงทะเบียนเมื่อ: พุธ ต.ค. 29, 2008 5:07 pm
ที่อยู่: โรงพยาบาลบางแก้ว จ.พัทลุง

โพสต์โดย mit เมื่อ เสาร์ ก.พ. 21, 2009 12:01 am

พอดีตรงส่วนนี้เป็นการ MARK ตัว X ลงในช่องหมอสั่งให้ utility run program ชื่อ discharge.prg(คอมไพร์เป็น .FXP) ก่อนในนั้นจะมีการเตรียมค่าตัวแปรที่ใช้ MARK เป็น ARRAY ครับ ตัว discharge.prg หมอให้ไปแล้วนะแต่กลัวไม่เข้าใจเลยเปลี่ยนเป็น U_discharge.prg เวลาแก้ไขที่ฝั่ง mit_net ที่ p_discht.prg จะได้ไม่เรียกไปที่ discharge.fxp ภายใน mit-utility ไม่รู้กลัวงงหรือทำให้งงไปอีกนะ
อีกครั้งครับ u_discharge เป็น FXP นะครับแล้วมันจะเตรียมตัวแปร array ชื่อ _dischs(9),_discht(9) ก่อน แล้วจึงเรียก C_discharge.frx ให้ทำงานครับ เนื่องจากเรากำหนดให้ run FRX โดยไม่มีการเตรียมตัวแปรก่อนจึง ERROR ถ้าจะเขียนอย่านั้นก็ต้องกำหนดส่วน DISCHARGE STATUS เป็นตัวแปรต่างๆ และส่วน mit-utility(p_discht)ก็ต้องเตรียมตัวแปรเหล่านั้นให้ด้วยครับ แต่ p_discht เดิมจะให้ส่งมาเป็นรหัส discharge status และ รหัส discharge type มาครับตัว u_discharge.FXP จะนำมาแปรเป็น X ให้แค่นั้นเองครับ
mit
 
โพสต์: 314
ลงทะเบียนเมื่อ: จันทร์ ต.ค. 27, 2008 11:47 pm

..

โพสต์โดย sutthipongr เมื่อ เสาร์ ก.พ. 21, 2009 12:19 pm

ทำได้แล้วครับ
งานนี้ 2 ชั้นเลยครับ

สรุปว่า
1.copy u_discharge.prg ไปใว้ที่ c:\mitutility แล้ว compile ด้วย vfp9 ด้วย(ใน file นี้ก็จะสั่งพิมพ c_discharge.frx อีกทีนึง)
2. ตัว p_discht.prg ก็สั่งให้ run u_discharge ซึ่ง ตัวนี้คือ u_discharge.fxp

***หมอมิตรไม่บอกก็ไม่มีทางทราบได้เลยครับเนี่ย***
***เราพิสูจน์ได้ด้วย ผลงานของเรา***

พอเพียง และ เพียงพอ ตามรอยพ่อของแผ่นดิน
sutthipongr
 
โพสต์: 788
ลงทะเบียนเมื่อ: พุธ ต.ค. 29, 2008 5:07 pm
ที่อยู่: โรงพยาบาลบางแก้ว จ.พัทลุง


ย้อนกลับไปยัง ถาม-ตอบ ปัญหาต่างๆ เกี่ยวกับโปรแกรม MIT-NET

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และ บุคคลทั่วไป 94 ท่าน