ขณะนี้อยู่ในช่วงการพัฒนาการตอบปัญหาด้วยระบบ AI หากไม่ได้รับความสะดวก กรุณาติดต่อฝ่ายบริการลูกค้า 02-217-3533

แก้แบบฟอร์มบิลซื้อRR

หากท่านใดมีข้อสงสัยหรือคำถามเกี่ยวกับการใช้งานโปรแกรม Express สามารถเข้ามาสอบถามได้ที่นี่ครับ

Moderator: Sutas, Global Moderator, CO-Admin

แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย Kamol1809 » พฤหัสฯ. ต.ค. 24, 2013 6:11 pm

ในแบบฟอร์มบิลซื้อ
1.. ถ้าหมายเหตุ  APMAS->REMARK  พิมพ์ ข้อความ เป็นตัวอักษร หรือตัวเลขอื่นที่ไม่ใช่ข้อ2    หรือว่าง  ให้~REM  พิมพ์คำว่า    สำนักงานใหญ่ 
2.  ถ้าหมายเหตุ APMAS->REMARK  พิมพ์ 01  หรือ 02 หรือ 03  จนถึง 99    ตำแหน่งที่ 1 ถึง 2    ให้พิมพ์คำว่า    สาขาที่ 

ปัญหา  ~REM  ด้านล่างเขียนผิด ไม่รู้ที่ถูกเขียนอย่างไร ครับ

~REM:      0,      "",        "rem",    "rem=IIF(SUBSTR(APMAS->REMARK)>'00 ','สาขาที่        ','สำนักงานใหญ่  ').
Kamol1809
Full Member
Full Member
 
โพสต์: 206
ลงทะเบียนเมื่อ: อังคาร ก.ย. 02, 2008 4:16 pm

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย savek » พฤหัสฯ. ต.ค. 24, 2013 7:15 pm

ลองทดสอบดูก่อนนะครับ ลองใช้หลายๆ เงื่อนไขว่ามันจะแสดงผลให้ถูกต้องทุกเงื่อนไขหรือเปล่านะครับ

~REM:      0,      "",                  "rem",                    "rem=IIF(((val(SUBSTR(APMAS->REMARK,1,2))>=0.AND.val(SUBSTR(APMAS->REMARK,1,2))<=99).AND.APMAS->REMARK#'  '),'สาขาที่        ','สำนักงานใหญ่  ')"
ภาพประจำตัวสมาชิก
savek
Administrator
Administrator
 
โพสต์: 12511
ลงทะเบียนเมื่อ: พฤหัสฯ. พ.ย. 15, 2007 11:04 am

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย Kamol1809 » ศุกร์ ต.ค. 25, 2013 5:26 pm

ถ้ารายงานภาษีซื้อ  มีหลายเงื่อนไข  ไม่ทราบว่าข้างล่างผิดจุดไหนครับ  แสดง นิพจน์ผิด


~REM_X2:    0,      "",        "remx2",    "TT=ISVAT->REMARK ;remx2=IIF(((val(SUBSTR(APMASC->REMARK,1,2))>=0.AND.val(SUBSTR(APMASC->REMARK,1,2))<=99).AND.APMASC->REMARK#'  '),'สาขาที่        ',IIF(((val(SUBSTR(APMAS->REMARK,1,2))>=0.AND.val(SUBSTR(APMAS->REMARK,1,2))<=99).AND.APMAS->REMARK#'  '),'สาขาที่      ',IIF(((val(SUBSTR(ISVAT->REMARK,29,30))>=0.AND.val(SUBSTR(ISVAT->REMARK,29,30))<=99).AND.ISVAT->REMARK,29,30))#'  ') ,'สาขาที่          ','สำนักงานใหญ่          ')"
Kamol1809
Full Member
Full Member
 
โพสต์: 206
ลงทะเบียนเมื่อ: อังคาร ก.ย. 02, 2008 4:16 pm

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย Kamol1809 » ศุกร์ ต.ค. 25, 2013 6:04 pm

[quote=&quot;Kamol1809&quot;]
ถ้ารายงานภาษีซื้อ  มีหลายเงื่อนไข   ไม่ทราบว่าข้างล่างผิดจุดไหนครับ  แสดง นิพจน์ผิด


~REM_X2:    0,      "",         "remx2",    "TT=ISVAT->REMARK ;remx2=IIF(((val(SUBSTR(APMASC->REMARK,1,2))>=0.AND.val(SUBSTR(APMASC->REMARK,1,2))<=99).AND.APMASC->REMARK#'  '),'สาขาที่        ',IIF(((val(SUBSTR(APMAS->REMARK,1,2))>=0.AND.val(SUBSTR(APMAS->REMARK,1,2))<=99).AND.APMAS->REMARK#'  '),'สาขาที่       ',IIF(((val(SUBSTR(ISVAT->REMARK,29,30))>=0.AND.val(SUBSTR(ISVAT->REMARK,29,30))<=99).AND.ISVAT->REMARK,29,30))#'  ') ,'สาขาที่          ','สำนักงานใหญ่          ')"



หริอ  วิธีที่2  ไม่รู้ผิดตรงไหน
~REM_X2:    0,      "",        "remx2",    "TT=ISVAT->REMARK ;remx2=IIF(VAL(SUBSTR(APMASC->REMARK,1,2)>'00','ÊÒ¢Ò·Õè        ',IIF(VAL(SUBSTR(ISVAT->REMARK,29,30)>'00','ÊÒ¢Ò·Õè        ',IIF((VAL(SUBSTR(APMAS->REMARK,1,2)>'00','สาขาที่          ','สำนักงานใหญ่           ')"


[/quote]
Kamol1809
Full Member
Full Member
 
โพสต์: 206
ลงทะเบียนเมื่อ: อังคาร ก.ย. 02, 2008 4:16 pm

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย savek » ศุกร์ ต.ค. 25, 2013 7:13 pm

ประโยคนี้ผิดครับ

IIF(VAL(SUBSTR(APMASC->REMARK,1,2)>'00'

เพราะเรามีการเปลี่ยนค่า REMARK ซึ่งปกติเป็นข้อความ ถูกเปลี่ยนด้วยฟังก์ชั่น VAL ให้เป็นตัวเลขไปแล้ว ดังนั้นจึงไม่สามารถเปรียบเทียบกับข้อความที่เป็น '00' ได้ ต้องใช้เป็น > 0  ลักษณะนี้ครับ

IIF(VAL(SUBSTR(APMASC->REMARK,1,2) > 0
ภาพประจำตัวสมาชิก
savek
Administrator
Administrator
 
โพสต์: 12511
ลงทะเบียนเมื่อ: พฤหัสฯ. พ.ย. 15, 2007 11:04 am

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย Kamol1809 » ศุกร์ ต.ค. 25, 2013 7:27 pm

ที่ตุณเสวกเขียนมาให้ยังออกมาไม่ถูกต้อง    ถ้า APMAS->REMARK  เป็นข้อความหรือมีตัวอักษร   หรือ 00     ต้องการออกมาเป็น สำนักงานใหญ่  แต่มันออกมาเป็นสาขาที่     ไม่รู้ยังผิดตรงไหน ครับ  เหมือนกับว่าไม่ได้เช็ค เรื่องVAL

~REM:       0,      "",                  "rem",                     "rem=IIF(((val(SUBSTR(APMAS->REMARK,1,2))>=0.AND.val(SUBSTR(APMAS->REMARK,1,2))<=99).AND.APMAS->REMARK#'  '),'สาขาที่        ','สำนักงานใหญ่   ')"
แก้ไขล่าสุดโดย Kamol1809 เมื่อ ศุกร์ ต.ค. 25, 2013 7:48 pm, แก้ไขแล้ว 1 ครั้ง
Kamol1809
Full Member
Full Member
 
โพสต์: 206
ลงทะเบียนเมื่อ: อังคาร ก.ย. 02, 2008 4:16 pm

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย savek » ศุกร์ ต.ค. 25, 2013 9:04 pm

ถ้าเงื่อนไขเป็นแบบที่ว่า ใช้สูตรนี้แทนครับ

~REM:      0,      "",                  "rem",                    "rem=IIF(((val(SUBSTR(APMAS->REMARK,1,2))>0.AND.val(SUBSTR(APMAS->REMARK,1,2))<=99).OR.APMAS->REMARK='  '),'สาขาที่        ','สำนักงานใหญ่  ')"
ภาพประจำตัวสมาชิก
savek
Administrator
Administrator
 
โพสต์: 12511
ลงทะเบียนเมื่อ: พฤหัสฯ. พ.ย. 15, 2007 11:04 am

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย Kamol1809 » ศุกร์ ต.ค. 25, 2013 9:50 pm

ขอบคุณคุณเสวกมากครับ  ที่สละเวลาช่วยตอบมาหลายครั้ง              น่าจะหาคำตอบที่ถูกต้องแล้วครับ  ดังนี้  >0                  และ  APMAS->REMARK#'  ')


~REM:      0,      "",                  "rem",                    "rem=IIF(((val(SUBSTR(APMAS->REMARK,1,2))>0.AND.val(SUBSTR(APMAS->REMARK,1,2))<=99).OR.APMAS->REMARK#'  '),'สาขาที่        ','สำนักงานใหญ่  ')"
Kamol1809
Full Member
Full Member
 
โพสต์: 206
ลงทะเบียนเมื่อ: อังคาร ก.ย. 02, 2008 4:16 pm

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย Kamol1809 » เสาร์ ต.ค. 26, 2013 10:03 am

ตัวแปรข้างล่างนี้ พิมพ์  4 ตำแหน่ง  ไม่ว่าจะเป็นตัวเลข  อักษร หรือว่าง 

ถ้าให้พิมพ์ 4 ตำแหน่งที่เป็นตัวเลขเท่านั้น  ไม่ทราบว่าจะเขียนอย่างไร ครับ

~REM_X1:    0,      "",        "remx1",    "TT=ISVAT->REMARK ;remx1=IIF(SUBSTR(TT,1,1)='8',SUBSTR(APMASC->REMARK,1,4),IIF(SUBSTR(TT,1,1)='9',SUBSTR(ISVAT->REMARK,27,30),SUBSTR(APMAS->REMARK,1,4)))"
Kamol1809
Full Member
Full Member
 
โพสต์: 206
ลงทะเบียนเมื่อ: อังคาร ก.ย. 02, 2008 4:16 pm

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย savek » เสาร์ ต.ค. 26, 2013 5:38 pm

ผมไม่เข้าใจคำถามครับ รบกวนขอตัวอย่างนิดนึงได้ไหมครับว่า 4 ตำแหน่งที่ว่าเป็นตัวเลขเท่านั้นหมายถึงยังไง

เพราะดูจากสูตร เป็นการเช็คว่าถ้าตำแหน่งแรกของ REMARK เป็น 8 ให้พิมพ์หมายเหตุจาก APMASC->REMARK ตัวที่ 1-4 แต่ถ้าเป็น 9 ให้พิมพ์ตัวที่ 27 และพิมพ์ยาวไป 30 ตัว (ซึ่งแบบนี้จะผิดนะครับ เพราะกลายเป็นว่าความยาวของผลลัพธ์ไม่เท่ากัน บางตัวพิมพ์แค่ 4 ตัวอักษร บางตัวกลับพิมพ์ถึง 30 ตัวอักษร)
ภาพประจำตัวสมาชิก
savek
Administrator
Administrator
 
โพสต์: 12511
ลงทะเบียนเมื่อ: พฤหัสฯ. พ.ย. 15, 2007 11:04 am

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย Kamol1809 » อาทิตย์ ต.ค. 27, 2013 6:18 am

~REM_X1:    0,      "",         "remx1",    "TT=ISVAT->REMARK ;remx1=IIF(SUBSTR(TT,1,1)='8',SUBSTR(APMASC->REMARK,1,4),IIF(SUBSTR(TT,1,1)='9',SUBSTR(ISVAT->REMARK,27,30),SUBSTR(APMAS->REMARK,1,4)))"

หมายถึง 4 ตำแหน่งของเงื่อนไขที่3  ครับ.      ที่เป็นตัวเลขสาขาเลขที่ 0001 ถึง 9999 จึงจะพิมพ์ออกมา  ถ้าตำแหน่งที่1-4  เป็นตัวเลขอื่น(ไม่ใช่0001 -9999 ) และเป็นตัวอักษรหรือเครื่องหมาย  หรือว่าง ไม่ต้องพิมพ์ออกมา      และไม่เข้าเงื่ิอนไขข้อ 1และ2 ไม่ต้องพิมพ์ออกมา

( คือ~REM_X1 เป็นเลขที่สาขา เท่านั้น ถ้าไม่บันทึกเลขที่สาขา ไม่ต้องพิมพ์ออกมาทุกกรณี  )

1    IIF(SUBSTR(TT,1,1)='8',SUBSTR(APMASC->REMARK,1,4)

2  .IIF(SUBSTR(TT,1,1)='9',SUBSTR(ISVAT->REMARK,27,30)

3.  SUBSTR(APMAS->REMARK,1,4
แก้ไขล่าสุดโดย Kamol1809 เมื่อ อาทิตย์ ต.ค. 27, 2013 9:33 am, แก้ไขแล้ว 1 ครั้ง
Kamol1809
Full Member
Full Member
 
โพสต์: 206
ลงทะเบียนเมื่อ: อังคาร ก.ย. 02, 2008 4:16 pm

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย savek » อาทิตย์ ต.ค. 27, 2013 9:51 am

ถ้าจะเช็คว่าเป็นตัวเลขหรือเปล่า คงต้องใช้เป็นสูตรเดิม เช่น IIF(VAL(SUBSTR(APMAS->REMARK,1,4))>0 เพื่อเช็คว่าสิ่งที่ป้อนเข้าไป มีค่ามากกว่า 0 (หรือก็คือการเช็คว่าเป็นตัวเลขหรือไม่)
ภาพประจำตัวสมาชิก
savek
Administrator
Administrator
 
โพสต์: 12511
ลงทะเบียนเมื่อ: พฤหัสฯ. พ.ย. 15, 2007 11:04 am

Re: แก้แบบฟอร์มบิลซื้อRR

โพสต์โดย Kamol1809 » อาทิตย์ ต.ค. 27, 2013 4:26 pm

ผมใช้อีกวิธี    "ZZZZ"  ก้พอใช้ได้  สาขา 0001  จะพิมพ์เป็น  1  ก็ถือว่าใช้ได้  แต่ไม่มี  000



~REM_X1:    0,      "ZZZZ",        "remx1",    "TT=ISVAT->REMARK ;remx1=IIF(SUBSTR(TT,1,1)='8',VAL(SUBSTR(APMASC->REMARK,1,4)),IIF(SUBSTR(TT,1,1)='9',VAL(SUBSTR(ISVAT->REMARK,27,30)),VAL(SUBSTR(APMAS->REMARK,1,4))))"
Kamol1809
Full Member
Full Member
 
โพสต์: 206
ลงทะเบียนเมื่อ: อังคาร ก.ย. 02, 2008 4:16 pm


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

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

กำลังดูบอร์ดนี้: Google [Bot] และ บุคคลทั่วไป 35 ท่าน