คำตอบที่ไม่เคยถูกถาม



“ต้นไม้ไม่เคยเสียใจ ที่ปราศจากผู้ลิ้มลองผลของมัน”

…งานบันทึกที่เขียนในช่วงหลังพ.ศ.2531 มานี้ แสดงให้เห็นถึงภาวะการเปลี่ยนแปลงภายในของพจนาที่ชัดเจนขึ้น กลายเป็นงานที่คลี่คลายมาจากตัวพจนาเองแท้ๆ ขุดลึกไปสู่การเดินทางทางจิตวิญญาณอย่างละเอียดอ่อนและมั่นคง ซึ่งเป็นวิถีที่ต้องเดินไปพร้อมกัน ระหว่างคนเขียนและคนอ่าน ซึ่งเสมอกันด้วยวุฒิภาวะบางอย่าง เป็นเส้นทางส่วนตัวที่มีคนจำนวนน้อยลงเรื่อยๆ ที่จะอดทนเข้าใจ และเดินไปบนเส้นทางเดียวกับพจนา…ต้นไม้ไม่เคยเสียใจ ที่ปราศจากผู้ลิ้มลองผลของมัน”

บทความ “เขียนถึงพจนา” โดย นิพัทธ์พร เพ็งแก้ว (6 พฤษภาคม 2536)




อัตรา ภงด. บุคคลธรรมดา 2556

โพสต์24 ม.ค. 2557 00:05โดยSathit Jittanupat




การ set โปรแกรม ใน __FSys.INI

  1. เมนู "เบ็ดเตล็ด" -> PROGRAM VERSION กด Enter แล้ว F1 เลือกหัวข้อ __FSys.INI
  2. ใส่คำสั่งต่อไปนี้
WT1IncomeStep = 150000,300000,500000,750000,1000000,2000000,4000000
WT1TaxStep = 0,5,10,15,20,25,30,35




สรรพากร เลื่อนบังคับแสดงเลขผู้เสียภาษีไปอีก 1 ปี

โพสต์16 ม.ค. 2557 07:10โดยSathit Jittanupat   [ อัปเดต 16 ม.ค. 2557 07:11 ]

กรมสรรพากรขยายเวลาการเพิ่มรายการในใบกำกับภาษี

ตามที่กรมสรรพากรได้ออกประกาศอธิบดีกรมสรรพากร เกี่ยวกับภาษีมูลค่าเพิ่ม (ฉบับที่ 194) (ฉบับที่ 195) (ฉบับที่ 196) และ (ฉบับที่ 197) ลงวันที่ 28 พฤษภาคม พ.ศ. 2556 กำหนดให้ผู้ประกอบการจดทะเบียนซึ่งเป็นผู้ขายสินค้าหรือผู้ให้บริการ เพิ่มเติมรายการเลขประจำตัวผู้เสียภาษีอากร และรายการสถานประกอบการของผู้ซื้อสินค้าหรือผู้รับบริการ และเพิ่มเติมรายการสถานประกอบการของผู้ขายสินค้าหรือผู้ให้บริการ ในการจัดทำใบกำกับภาษี ใบเพิ่มหนี้ ใบลดหนี้ และในการลงรายงานภาษีซื้อและรายงานภาษีขาย ตั้งแต่วันที่ 1 มกราคม พ.ศ. 2557 เป็นต้นไป นั้น 

กรมสรรพากรได้ขยายระยะเวลาการบังคับใช้กฎหมายในเรื่องดังกล่าว โดยกำหนดให้ผู้ประกอบการจดทะเบียนซึ่งเป็นผู้ขายสินค้าหรือผู้ให้บริการ เพิ่มเติมรายการดังกล่าวข้างต้น ในใบกำกับภาษี ใบเพิ่มหนี้ ใบลดหนี้ และในการลงรายงานภาษีซื้อและรายงานภาษีขาย ตั้งแต่วันที่ 1 มกราคม พ.ศ. 2558 เป็นต้นไป

โดยมีรายละเอียดเพิ่มเติมปรากฏตามประกาศ
อธิบดีกรมสรรพากร เกี่ยวกับภาษีมูลค่าเพิ่ม (ฉบับที่ 199(ฉบับที่ 200) (ฉบับที่ 201) และ (ฉบับที่ 202) ลงวันที่ 26 ธันวาคม พ.ศ. 2556


Scraft Meeting Day 30 ตุลาคม 2556

โพสต์13 ต.ค. 2556 00:07โดยSathit Jittanupat   [ อัปเดต 13 ต.ค. 2556 00:20 ]

วันพุธ 30 ตุลาคม 2556 ที่ ซอฟต์แวร์ปาร์ก แจ้งวัฒนะ (ตรงข้ามเซ็นทรัลแจ้งวัฒนะ)

ภายในงานได้ เชิญ เจ้าหน้าที่ จากกรมสรรพากร มาช่วยชี้แจงรายละเอียดเกี่ยวกับ ประกาศอธิบดี ฉบับใหม่ด้วยครับ

เนื้อหาสัมมนา

  • แนวทางปฏิบัติตามกฏหมาย ตามประกาศ ฉบับที่ 194,195,196,197 
  • เรื่องเกี่ยวกับ การออกใบกำกับภาษี, ใบลดหนี้, ใบเพิ่มหนี้, และการจัดทำรายงาน และการใช้งานโปรแกรม Scraft ในเรื่องดังกล่าว, อนาคต Scraft

download เอกสารรายละเอียดงาน และแบบฟอร์มแจ้งสำรองที่นั่ง

กรมสรรพากร กำหนดให้มีเลขผู้เสียภาษีคู่ค้า

โพสต์17 ก.ย. 2556 01:31โดยSathit Jittanupat   [ อัปเดต 14 พ.ย. 2556 11:41 ]


อ้างอิง

ประกาศอธิบดีกรมสรรพากร ฉบับที่ 194 195 196 197

ตัวบทหลัก ที่ประกาศข้างต้นอ้างถึงคือ ฉบับที่ 39

ประกาศ39

                “ข้อ ๗  ในกรณีผู้ประกอบการจดทะเบียนได้จัดทำใบกำกับภาษีตามมาตรา ๘๖/๔ แห่งประมวลรัษฎากร ผู้ประกอบการจดทะเบียนจะต้องระบุเลขประจำตัวผู้เสียภาษีอากรของผู้ซื้อ สินค้าหรือผู้รับบริการไว้ในใบกำกับภาษีตามมาตรา ๘๖/๔ แห่งประมวลรัษฎากรนั้น โดยข้อความดังกล่าวจะตีพิมพ์ จัดทำขึ้นด้วยระบบคอมพิวเตอร์ ประทับด้วยตรายาง เขียนด้วยหมึก พิมพ์ดีด หรือทำให้ปรากฏขึ้นด้วยวิธีการอื่นใดในลักษณะทำนองเดียวกันก็ได้ ทั้งนี้ สำหรับการจัดทำใบกำกับภาษีตามมาตรา ๘๖/๔ แห่งประมวลรัษฎากร ที่ได้จัดทำตั้งแต่วันที่ ๑ มกราคม พ.ศ. ๒๕๕๗ เป็นต้นไป

                การจัดทำรายการ เลขประจำตัวผู้เสียภาษีอากรของผู้ซื้อสินค้าหรือผู้รับบริการในใบกำกับภาษี ตามมาตรา ๘๖/๔ แห่งประมวลรัษฎากร ตามวรรคหนึ่ง ให้จัดทำเฉพาะกรณีที่ผู้ซื้อสินค้าหรือผู้รับบริการเป็นผู้ที่ต้องมีและใช้ เลขประจำตัวผู้เสียภาษีอากรในการปฏิบัติการตามประมวลรัษฎากรตามมาตรา ๓ เอกาทศ แห่งประมวลรัษฎากร

 

                “ข้อ ๘  ในกรณีผู้ประกอบการจดทะเบียนได้จัดทำใบกำกับภาษีตามมาตรา ๘๖/๔ แห่งประมวลรัษฎากร ผู้ประกอบการจดทะเบียนจะต้องระบุข้อความรายการเกี่ยวกับสถานประกอบการของผู้ ประกอบการจดทะเบียนตามที่ปรากฏในใบทะเบียนภาษีมูลค่าเพิ่ม (ภ.พ.๒๐) ซึ่งเป็นสถานที่ที่ได้ขายสินค้าหรือให้บริการไว้ในใบกำกับภาษีดังกล่าว สำหรับการจัดทำใบกำกับภาษีตามมาตรา 86/4 แห่งประมวลรัษฎากร ที่ได้จัดทำตั้งแต่วันที่ ๑ มกราคม พ.ศ. ๒๕๕๗ เป็นต้นไป ดังนี้

                 (๑) กรณีสถานประกอบการที่เป็นสำนักงานใหญ่ของผู้ประกอบการจดทะเบียนเป็นสถานที่ ที่ได้ขายสินค้าหรือให้บริการนั้น ให้ระบุข้อความคำว่า “สำนักงานใหญ่” ซึ่งเป็นสถานประกอบการตามที่ปรากฏในใบทะเบียนภาษีมูลค่าเพิ่มไว้ในใบกำกับ ภาษีดังกล่าวด้วย

                 (๒) กรณีสถานประกอบการที่เป็นสาขาของผู้ประกอบการจดทะเบียนเป็นสถานที่ที่ได้ขาย สินค้าหรือให้บริการนั้น ให้ระบุข้อความคำว่า “สาขาที่ ..” ซึ่งเป็นสถานประกอบการตามที่ปรากฏในใบทะเบียนภาษีมูลค่าเพิ่มไว้ในใบกำกับ ภาษีดังกล่าวด้วย

                 ข้อความคำว่า “สำนักงานใหญ่” และ “สาขาที่ ..” ตาม (๑) และ (๒) จะตีพิมพ์ จัดทำขึ้นด้วยระบบคอมพิวเตอร์ ประทับด้วยตรายาง เขียนด้วยหมึก พิมพ์ดีด หรือทำให้ปรากฏขึ้นด้วยวิธีการอื่นใดในลักษณะทำนองเดียวกันก็ได้

 

                “ข้อ ๙  ในกรณีผู้ประกอบการจดทะเบียนได้จัดทำใบกำกับภาษีตามมาตรา ๘๖/๔ แห่งประมวลรัษฎากร ให้แก่ผู้ซื้อสินค้าหรือผู้รับบริการซึ่งเป็นผู้ประกอบการจดทะเบียนผู้ ประกอบการจดทะเบียนต้องระบุข้อความรายการเกี่ยวกับสถานประกอบการตามที่ปรากฏ ในใบทะเบียนภาษีมูลค่าเพิ่ม (ภ.พ.๒๐) ของผู้ซื้อสินค้าหรือผู้รับบริการนั้นไว้ในใบกำกับภาษีดังกล่าว สำหรับการจัดทำใบกำกับภาษีตามมาตรา ๘๖/๔ แห่งประมวลรัษฎากร ที่ได้จัดทำตั้งแต่วันที่ ๑ มกราคม พ.ศ. ๒๕๕๗ เป็นต้นไป ดังนี้

                 (๑) กรณีผู้ประกอบการจดทะเบียนระบุที่อยู่ของสถานประกอบการที่เป็นสำนักงานใหญ่ ตามที่ปรากฏในใบทะเบียนภาษีมูลค่าเพิ่มของผู้ซื้อสินค้าหรือผู้รับบริการ เป็นที่อยู่ของผู้ซื้อสินค้าหรือรับบริการในใบกำกับภาษี ให้ระบุข้อความคำว่า “สำนักงานใหญ่” ซึ่งเป็นสถานประกอบการตามที่ปรากฏในใบทะเบียนภาษีมูลค่าเพิ่มนั้นไว้ในใบ กำกับภาษีดังกล่าวด้วย

                 (๒) กรณีผู้ประกอบการจดทะเบียนระบุที่อยู่ของสถานประกอบการที่เป็นสาขาตามที่ ปรากฏในใบทะเบียนภาษีมูลค่าเพิ่มของผู้ซื้อสินค้าหรือผู้รับบริการ เป็นที่อยู่ของผู้ซื้อสินค้าหรือรับบริการในใบกำกับภาษี ให้ระบุข้อความว่า “สาขาที่ ..” ซึ่งเป็นสถานประกอบการตามที่ปรากฏในใบทะเบียนภาษี มูลค่าเพิ่มนั้นไว้ในใบกำกับภาษีดังกล่าวด้วย

                 ข้อความคำว่า “สำนักใหญ่” และ “สาขาที่ ..” ตาม (๑) และ (๒) จะตีพิมพ์ จัดทำขึ้นด้วยระบบคอมพิวเตอร์ ประทับด้วยตรายาง เขียนด้วยหมึก พิมพ์ดีด หรือทำให้ปรากฏขึ้นด้วยวิธีการอื่นใดในลักษณะทำนองเดียวกันก็ได้”

(แก้ไข เพิ่มเติมโดยประกาศอธิบดีกรมสรรพากร เกี่ยวกับภาษีมูลค่าเพิ่ม (ฉบับที่ ๑๙๖) ใช้บังคับตั้งแต่วันที่ ๒๘ พฤษภาคม พ.ศ. ๒๕๕๖ เป็นต้นไป) 


สรุปเนื้อหา

  • เริ่มบังคับใช้ 1 ม.ค. 2557
  • กำหนดข้อความเพิ่มเติม ใน ใบเพิ่มหนี้, ใบลดหนี้, ใบกำกับภาษี จะต้องมี เลขผู้เสียภาษีของคู่ค้า และ คำว่า "สำนักงานใหญ่" หรือ "สาขาที่"
  • สำหรับ ลูกค้าทั่วไป ที่ไม่ได้นำใบกำกับภาษี ไปขอเครดิตภาษี จะเป็นตามเงื่อนไขในข้อ 7 วรรค 2 คือ ไม่เกี่ยว (ไม่จำเป็นต้องระบุ แปลว่า ใบกำกับภาษีอย่างย่อ ไม่เกี่ยว) (*รอยืนยัน ตีความเท่าที่พยายามแปลภาษาในประมวล ยังไม่ได้ค้นย้อนกลับไปมาตราแม่)
  • กำหนดรูปแบบรายงานภาษีซื้อ, ภาษีขาย เพิ่มรายละเอียด เลขผู้เสียภาษีของคู่ค้า และ "สำนักงานใหญ่" หรือ "สาขาที่"
  • ผู้ประกอบการ ที่ไม่มีสาขา ต้องระบุคำว่า "สำนักงานใหญ่" ในใบกำกับภาษีด้วย

คำแนะนำสำหรับผู้ใช้โปรแกรม

1. สำหรับผู้ใช้โปรแกรมทำรายงานภาษีมูลค่าเพิ่ม (VAT, CPA) 

เพิ่มรูปแบบรายงาน ในรายงานสรรพากร ดังนี้
  1. รายงานสรรพากร-ภาษีซื้อ (ใหม่)
  2. รายงานสรรพากร-ภาษีขาย (ใหม่)

update โปรแกรมดังต่อไปนี้

 Tax.lzh RepTax.exe รายงานภาษี-สรรพากร
  RepVat1D.FRM form รายงานสรรพากร-ภาษีซื้อ (ใหม่) update เลขเสียภาษีคู่ค้า
  RepVat2D.FRM form รายงานสรรพากร-ภาษีขาย (ใหม่) update เลขเสียภาษีคู่ค้า
 Cus-X.lzh_Cus1_.exe  ข้อมูลลูกค้า update เลขเสียภาษีคู่ค้า
 Vnd-X.lzh _Vnd1_.exe ข้อมูลเจ้าหนี้ update เลขเสียภาษีคู่ค้า

การใส่เลขผู้เสียภาษี/สาขา ของคู่ค้า (ข้อมูลลูกค้า และ ข้อมูลเจ้าหนี้ ทำงานเหมือนกัน)
  • จากจอรายการภาษีซื้อ หรือ ภาษีขาย ในช่องชื่อรายการ กด <F1> จะแสดงรายการปกติ ให้กด <Esc> เพื่อเลือกใช้ ข้อมูลลูกค้า หรือ ข้อมูลเจ้าหนี้ แทน
  • ป้อนชื่อ-ที่อยู่ ลูกค้าหรือเจ้าหนี้ แล้ว save เก็บไว้ก่อน
  • กด <space> ที่ชื่อลูกค้า หรือ เจ้าหนี้ ที่ต้องการใส่เลขเสียภาษี  แล้วกด <F1> เปิดจอ ข้อมูลเพิ่มเติม ใส่เลขผู้เสียภาษี 13 หลัก และ เลขสาขา (กรณี สำนักงานใหญ่ ใช้ 0 )


2. สำหรับผู้ใช้โปรแกรมพิมพ์ใบกำกับภาษี (Billing) 

update โปรแกรมตามข้อ 1 และ เพิ่มเติมสำหรับส่วนจัดพิมพ์ใบกำกับภาษีดังต่อไปนี้

 PF-IFrm.lzh PF-IFrm.exe พิมพ์ฟอร์มใบกำกับภาษี
 Inv.lzh Inv-Std*.FRM ฟอร์มใบกำกับภาษีมาตรฐาน พิมพ์ลงกระดาษเปล่า update เลขเสียภาษีลูกค้า

การใช้งาน คือ เข้าไป update เลขผู้เสียภาษีของลูกค้า ในข้อมูลเพิ่มเติม ของลูกค้า โดยการใช้ <space> ที่ชื่อลูกค้าเดิม แล้ว <F1> เหมือนคำแนะนำในข้อ 1 ข้างต้น

3. สำหรับผู้ใช้ฟอร์มที่ออกแบบเฉพาะ (Pre-printed form)

กรุณาติดต่อผู้ให้บริการอิสระ (โปรแกรมเมอร์ไม่สะดวกที่จะปรับฟอร์มให้รายบุคคล)
  • คุณเอื้อง ฟิวเจอร์ เทค คอมพิวเตอร์ 0818366651
  • คุณอนันต์  adm service center 0819093240

4. อื่นๆ

สาขา 0 กับ สำนักงานใหญ่
คำอธิบายเกี่ยวกับเลขสาขา 0 โปรแกรมมีการตีความได้ 2 ลักษณะคือ ไม่มีสาขา กับ เป็นสำนักงานใหญ่ ขึ้นอยู่ว่าเป็น บุคคลธรรมดา หรือ นิติบุคคล
  • กรณี บุคคลธรรมดา (เลขผู้เสียภาษีขึ้นต้นด้วย 1 - 9) สาขา 0 คือ ไม่มีสาขา โปรแกรมจะไม่แสดงคำใดๆ ในรายงาน
  • แต่ กรณี นิติบุคคล (เลขผู้เสียภาษีขึ้นต้นด้วย 0) สาขา 0 โปรแกรมจะแสดงคำว่า "สำนักงานใหญ่" ในรายงาน

แก้ไขเพิ่มเติม 15/11/2556

ปรับ default ของเลขสาขา เป็น 5 digit และ เปลี่ยนนิยามของ สาขา 0 กับสำนักงานใหญ่ ดังนี้

 เลขผู้เสียภาษี เลขสาขา ข้อความสาขา ที่แสดงในรายงาน
 มี 0  สำนักงานใหญ่
 มี มากกว่า 0 แสดง 5 digit เช่น 00001
 มี น้อยกว่า 0 *ว่าง
 *ว่าง มีหรือไม่มีก็ได้ *ว่าง


ลูกค้าที่ไม่ได้จดทะเบียนภาษีมูลค่าเพิ่ม หรือ ไม่ประสงค์จะนำใบกำกับภาษีไปเครดิต ไม่จำเป็นต้องแจ้งเลขผู้เสียภาษี

บุคคลธรรมดา ที่แจ้งเลขผู้เสียภาษี (บัตรประชาชน) มา ให้ออกใบกำกับภาษี 
จึงน่าจะเป็นผู้ที่อยู่ในระบบภาษีมูลค่าเพิ่ม
ซึ่งตามใบ ภพ.20 ของสรรพากร ก็ใช้คำว่า "สำนักงานใหญ่" กับ บุคคลธรรมดาด้วย
ดังนั้น จึงปรับโปรแกรมให้แสดงคำว่า "สำนักงานใหญ่"
โดยไม่ต้องตรวจสอบว่า เป็น นิติบุคคล หรือ บุคคลธรรมดา

กรณี ต้องการให้โปรแกรม เว้นว่าง ไม่แสดง คำว่าสำนักงานใหญ่ สามารถทำได้โดยใส่ค่าในช่อง เลขสาขาเป็น -1

ไฟล์ที่ update : Tax.LZH, PF-IFrm.LZH


สรุป update โปรแกรมเพื่อรองรับ เลขผู้เสียภาษี 13 หลัก

โพสต์19 มี.ค. 2555 00:31โดยSathit Jittanupat   [ อัปเดต 29 พ.ค. 2555 19:02 ]


minimum update

โปรแกรมรุ่นที่สามารถทำการ minimum update ได้ ควรเป็นโปรแกรมรุ่นตั้งแต่ 1 ม.ค. 2553 เป็นต้นไป
download file และนำไป update แทนที่ไฟล์เดิมใน directory ของโปรแกรม scraft

 ระบบ ไฟล์ที่ update download
 ภาษีมูลค่าเพิ่ม RepTax.EXE
 RepVAT3.INI
 u13tax.7z
 ภาษีหัก ณ ที่จ่าย _WTax_.EXE
 R_WT.EXE
 PF-WTFrm.EXE
 WTFRM.INI
 WTFRM_D.FRM
 WTFRM1D.FRM
 WTFRM2D.FRM
 WTFRM4D.FRM
 WTFRM5D.FRM
 WTFRM6D.FRM
 WTFRM7D.FRM
 R_WT6.INI
 R_WT6_13.FRM
 R_WT6_23.FRM
 R_WT6_33.FRM
 R_WT6533.FRM
 R_WT6543.FRM
 R_WT6543.FRM
 R_WT6Y13.FRM
 R_WT6Y23.FRM
 R_WT6Y33.FRM
 R_WT2_2.FRM 
 R_WT253.FRM
 R_WT254.FRM
 u13wtax.7z
 บิลขาย PF-IFrm.EXE u13inv.7z
 ใบเสร็จ/วางบิล PF-Rcp.EXE u13rcp.7z
 บิลซื้อ PF-IFrm.EXE u13po.7z
 ใบจ่าย PF-Mrc.EXE u13mrc.7z

ตั้งค่าเลขผู้เสียภาษีใหม่

เข้าไปที่ เบ็ดเตล็ด -> PROGRAM VERSION กด <enter> แล้วกด <F1> เลือกแก้ไขไฟล์ __FSYS.INI

ตั้งเลขผู้เสียภาษีใหม่ 13 หลัก

การเปลี่ยนเลขเสียภาษีเดิม เป็นเลขเสียภาษีใหม่ ทำดังนี้

1. แบบตรง
ใส่คำสั่งใน __FSYS.INI 

TAXID.xxxxxxxxxx = yyyyyyyyyyyy

หมายเหตุ
xxxxxxxxx คือ taxid 10 ตัว ของกิจการ
yyyyyyyyyyy คือ taxid ใหม่ 13 ตัว ของกิจการ
ตัวอย่าง TAXID.1231231234=1010203040507

2. แบบอ้อม
หรือสำหรับเครือบริษัท อยากทำ list รวมไว้ที่เดียว อาจสร้างไฟล์ TAXID13.INI ไว้ใน folder scraft นอกชุดข้อมูล
แล้วใส่รายการ TAXID.xxxxxxx = yyyyyyyyy
ของทุกบริษัทในเครือไว้ที่เดียว
แล้วใช้ คำสั่ง #include=TAXID13.INI 
ใส่ใน __FSYS.INI ของแต่ละชุดข้อมูลแทน


optional update

สำหรับการพิมพ์ ภ.พ.30 และ ภงด. ต่างๆ (ใบแรก) ลงฟอร์ม หรือแบบพิมพ์ของ สรรพากร
ซึ่งในการ update ใหม่นี้ จะตัดการพิมพ์ลงตฟอร์มแบบเดิมออกหมด 
และเปลี่ยนไปใช้วิธี fill form ลงในแบบพิมพ์ .pdf ที่สรรพากรจัดทำขึ้นมาแทน
การติดตั้ง คือ นำไฟล์ทั้งหมด ไปใส่ไว้ใน directory ของโปรแกรม scraft

 โปรแกรม fill form prn2xfdf.exe prn2xfdf.scraft.7z
 ภาษีมูลค่าเพิ่ม
 ภ.พ.30
 RepTax3$.FRM + pp30.pdf tax$.lzh
 ภาษีหัก ณ ที่จ่าย
 ภงด. 1, 2, 3, 53
 ภงด. 1ก
 R_WT6_1$.FRM + pnd1.pdf
 R_WT6_2$.FRM + pnd2.pdf
 R_WT6_3$.FRM + pnd3.pdf
 R_WT653$.FRM + pnd53.pdf
 R_WT6Y1$.FRM + pnd1a.pdf
 wtax$.lzh


ตั้งค่าเลขผู้เสียภาษี ของผู้ถูกหักภาษี

นอกจากกิจการ จะต้องเปลี่ยนเลขผู้เสียภาษีเป็น 13 หลักแล้ว 
นิติบุคคลที่ถูกหักภาษีเอง ก็ต้องเปลี่ยนเป็นเลข 13 หลักเช่นกัน
  • ข้อมูลผู้เกี่ยวข้อง ที่ใช้อ้างอิงปกติ ในระบบภาษีหัก ณ ที่จ่าย สามารถรองรับเลข 13 หลัก โดยใช้ช่อง บัตรประชาชน
  • ข้อมูลเจ้าหนี้ ที่ใช้อ้างอิงมาจากระบบบิลซื้อ ไม่มีช่องข้อมูลเลข 13 หลัก โดยตรง เราสามารถ เรามีวิธีทำง่ายๆ ดังนี้
    ( วิธีนี้ ไ่ม่แนะนำให้ใช้แล้่ว เพราะยุ่งยากเกินไป ดูการปรับปรุงเพิ่มเติมด้านล่าง) 
    1. สร้างไฟล์ชื่อ TaxID13X.INI ไว้ใน directory ของชุดข้อมูล
    2. ใส่รายการ xxxxxxxxxx=yyyyyyyyyyyyy
    3. xxxxxxxxxx คือ เลขผู้เสียภาษี 10 หลัก ตรงกับข้อมูลที่เก็บในช่องเลขผู้เสียภาษีของเจ้าหนี้
      yyyyyyyyyyyyy คือ เลขผู้เสียภาษี 13 หลัก
    4. กรณี เจ้าหนี้นั้น ไม่มีเลขผู้เสียภาษีเดิม 10 หลัก จะต้อง หลอกโปรแกรม โดยใส่ข้อความ เช่น ชื่อย่อของเจ้าหนี้นั้น ในช่องเลขผู้เสียภาษี เพื่อใช้อ้างอิงในการแปลงเป็นเลข 13 หลัก ตามข้อ 2

ปรับปรุงเพิ่มเติม 

(21 มี.ค. 2555)

ไฟล์ที่ update คือ u13wtax.7z

เปลี่ยนข้อความ (wording) ในหน้าจอป้อนข้อมูลใบหักภาษี

คำว่า "เลขผู้เสียภาษี"  เปลี่ยนเป็น "เลขเดิม"
คำว่า "บัตรประชาชน" เปลี่ยนเป็น "เลขผู้เสียภาษี"

การตั้งค่าเลขผู้เสียภาษี ของผู้ถูกหักภาษี

ไม่จำเป้นต้องสร้าง list ไว้ใน TaxID13X.INI แล้ว ยกเว้นเลขที่มักใช้กันทั่วไป เช่น เลขของ การไฟฟ้า, องค์การโทรศัพท์ ฯลฯ
เพียงแค่ใส่เลข 13 หลัก สำหรับการออกใบหักภาษีให้เป็นครั้งแรก เก็บไว้ในข้อมูลใบหักภาษีตามปกติเท่านั้น 
ครั้งต่อไป เมื่อมีการหักภาษี ของชื่อเดิม โปรแกรมก็จะเอาเลข 13 หลักที่เคยใส่ มา update ให้อัตโนมัติ

หลักการ sync เลข 13 หลัก มีดังนี้
  • กรณีผู้ถูกหัก ดึงรายชื่อมาจาก ข้อมูลเจ้าหนี้ (ของระบบบิลซื้อ)
    โปรแกรมจะพยายามหาเลข 13 หลักจาก TaxID13X.INI ก่อน
    ถ้าไม่พบ ก็จะหาจากประวัติข้อมูลใบหักภาษีเอง
  • กรณีผู้ถูกหัก ดึงรายชื่อมาจาก ข้อมูลผู้เกี่ยวข้่อง (ของระบบหักภาษี/บัญชีแยกประเภท)
    โปรแกรมจะใช้เลข 13 หลัก จากในข้อมูลผู้เกี่ยวข้องเองก่อน
    ถ้าไม่มีจึงพยายามหาจาก TaxID13X.INI และ ประวัติข้อมูลใบหักภาษีเอง ตามลำดับ
  • กรณีผู้ถูกหัก ดึงรายชื่อมาจาก ข้อมูลพนักงาน ซึ่งเป็นบุคคลธรรมดา ใช้เลขบัตรประชาชน 13 หลักอยู่แล้ว
    ถ้าไม่มี จึงค่อยหาจากประวัติข้อมูลใบหักภาษีเอง

(22 มี.ค. 2555)

ไฟล์ที่ update คือ u13wtax.7z (PF-WTFrm.EXE)

แก้ bug พิมพ์ใบหักภาษี 

เลขผู้เสียภาษีใหม่ 13 หลัก พิมพ์แล้วไม่แสดงออกมาแทนเลข 10 หลักเดิม
เนื่องจาก โปรแกรม lookup เลข 13 หลักจาก ข้อมูลผู้ถูกหักใน TaxID13X.INI แทนที่จะใช้ตามที่ตั้งไว้ใน __FSys.INI

(26 มี.ค. 2555)

ไฟล์ที่ update คือ u13wtax.7z , WTAX$.LZH, TAX$.LZH

วันนี้ได้มีโอกาส ทดลองติดตั้งที่ site งานจริง พบปัญหาคือ เครื่องที่ทดสอบเป็น windows 2003 ที่ไม่ได้ update จึงไม่มี system ที่จำเป็นคือ
หลังจากที่ได้ update โปรแกรมข้างต้นให้กับ windows แล้ว การพิมพ์ลงฟอร์ม pdf ก็ใช้ 

นอกจากนี้ได้ทดลองใช้ adobe reader หลายๆ version จนได้ข้อสรุปว่า adobe acrobat reader version 5 ใช้ไม่ได้ 
และได้ทดลองกับ version 7, 8, 9, 10 ได้ข้อสรุปว่า 
ถ้าเป็นไปได้แนะนำให้ติดตั้ง adobe reader version 8
 

แก้ bug พิำมพ์ใบต่อ ภงด.53

ใบต่อ ภงด.53 โปรแกรมไม่ได้เปลี่ยนเลข 13 หลัก แทนเลข 10 หลักเดิม
นอกจากนี้ยังปัญหากรณีเดียวกันกับ ภงด. อื่นๆ ด้วย
ไฟล์ที่แก้ไขคือ
  • R_WT.EXE
  • R_WT2A.FRM
  • R_WT2_2.FRM
  • R_WT253.FRM
  • R_WT254.FRM
  • R_WT2Y2.FRM

แก้ไขพิมพ์ลงฟอร์ม pdf ภพ.30/ภงด. เลขสาขาไม่ออก

ไฟล์ที่แก้ไขคือ
  • RepTax3$.FRM
  • R_WT6_1$.FRM
  • R_WT6_2$.FRM
  • R_WT6_3$.FRM
  • R_WT653$.FRM
  • R_WT6Y1$.FRM

(29 มี.ค. 2555)

คำถามจาก สนง.บัญชี กรณีพิมพ์ลงฟอร์มเปล่า ที่เซ็นต์ชื่อไว้แล้ว

เพื่อความสะดวกรวดเร็วในการยื่นแบบ สนง.บัญชี หลายที่ ให้ลูกค้าเซ็นชื่อฝากไว้ในฟอร์มเปล่าล่วงหน้า
ดังนั้น เมื่อถึงเวลายื่นแบบ จึงต้องการเพียงข้อความที่กรอกใน ฟิลด์ต่างๆ เท่านั้น 
เราสามารถทำได้ โดยใน acrobat reader เอง มี option ให้เลือกพิมพ์ Form Fields only (ตามรูป)

(4 เม.ย. 2555)

ไฟล์ที่ update คือ u13wtax.7z (R_WT2_*.FRM)

แก้ไขฟอร์มรายงานใบต่อ ภงด.1,3

ใบต่อ ภงด.1, 3 พิมพ์ออกมาแล้ว ปรากฏว่า เลข 13 หลัก พิมพ์ออกมาทั้งในช่อง เลขบัตรประชาชน และ ช่องเลขผู้เสียภาษี
นอกจากนี้ได้แก้ไขคำว่า ใบต่อ ในรายงาน ให้เป็นคำว่า ใบแนบ รายชื่อไฟล์ ที่แก้ไขมีดังนี้
 R_WT2_1.FRM ภงด.1 แก้ไขเลขผู้เสียภาษีออกมาซ้ำ
 แก้คำ "ใบต่อ" เป็น "ใบแนบ"
 R_WT2_2.FRM ภงด.2 แก้คำ "ใบต่อ" เป็น "ใบแนบ"   
 R_WT2_3.FRM ภงด.3   แก้ไขเลขผู้เสียภาษีออกมาซ้ำ
 แก้คำ "ใบต่อ" เป็น "ใบแนบ"  
 R_WT253.FRM ภงด.53 แก้คำ "ใบต่อ" เป็น "ใบแนบ"   
 R_WT2Y1.FRM ภงด.1ก แก้ไขเลขผู้เสียภาษีออกมาซ้ำ
 แก้คำ "ใบต่อ" เป็น "ใบแนบ"  
 R_WT2Y3.FRM ภงด.3ก แก้ไขเลขผู้เสียภาษีออกมาซ้ำ
 แก้คำ "ใบต่อ" เป็น "ใบแนบ"    

(30 พ.ค. 2555)

ไฟล์ที่ update คือ u13wtax.7z (R_WT2_3.FRM, R_WT253.FRM)

แก้ไขฟอร์มรายงานใบแนบ ภงด.3,53

ตรงท้ายใบแนบ ภงด.3, 53 ไม่มีบรรทัดให้เซ็นต์ชื่อ ได้แก้ไขให้เหมือนกับ ใบแนบ ภงด. อื่นๆ

การเปลี่ยนผ่านจาก dot matrix printer เป็น pdf output

โพสต์4 มี.ค. 2555 20:06โดยSathit Jittanupat   [ อัปเดต 20 มี.ค. 2555 12:56 ]


เกริ่นนำ

5 มี.ค. 2555
แนวคิดเบื้องต้น
  1. ปู่ scraft จะเพิ่มความสามารถ พิมพ์ออก PDF ให้เป็นหนึ่งใน feature มาตรฐาน นั่นคือ ทุกรายงานนอกจากพิมพ์ออกทาง dot matrix printer ได้อย่างเดิมแล้ว ยังสามารถเลือกให้พิมพ์ออกทาง PDF ได้อีกด้วย
  2. ยกเลิก พิมพ์ดอส (prndos) ซึ่งเลือกพิมพ์ออก PRN เปลี่ยนเป็น PDF แล้วให้โปรแกรม pdf reader ทำหน้าที่ review/print ออกทาง gui printer อีกทีหนึ่ง

หลักการทำงาน PDF output
  1. เมื่อพิมพ์รายงาน ปู่ scraft ของเรา จะจัดพิมพ์โดยสร้างไฟล์ PRN เหมือนเดิม
  2. ปู่ scraft เรียกใช้ assoc หลักการเดียวกับ prndos แต่คราวนี้เป็น command line utility ที่ผมจะต้อง "พัฒนาขึ้นใหม่" ทำหน้าที่แปลงไฟล์ PRN ที่ได้ให้กลายเป็น PDF อีกทีหนึ่ง เพื่อส่งต่อไปให้โปรแกรม pdf reader เช่น acrobat ทำหน้าที่แสดงผมลัพธ์ที่ได้ต่อไป

Global vs Local PDF output

20 มี.ค. 2555

การสร้าง โปรแกรม prn2pdf ให้เป็น command line utility เล็ก (single exe file ขนาดประมาณ 4.5 MB) ทำให้ตัวมันเอง portablity สามารถนำไปประยุกต์ได้หลายลักษณะ เช่น ติดตั้งในเครื่องลูกแต่ละเครื่องเพื่อทำงานในโหมด prndos replacement หรือ นำไป integrate รวมอยู่กับโปรแกรม scraft ที่อยู่ใน server

Local mode - prndos replacement

การใช้งานใน Local mode สามารถทำได้ทันทีกับ ปู่ scraft ที่ใช้งานอยู่เดิม โดยเฉพาะเครื่องลูกที่เคยติดตั้ง prndos ใช้ เพียงแค่สั่ง assoc ให้ windows เปลี่ยนมาใช้ prn2pdf เป็น app สำหรับเปิดไฟล์ .prn แทน app prndos เดิม

การติดตั้งใช้งานสำหรับ Local mode สามารถทำได้ดังนี้
  1. download package prn2pdf 
  2. แตกไฟล์ไว้ในเครื่องที่ drive หรือ folder ไหนก็ได้ ตามสะดวก 
  3. double click เรียกคำสั่ง assoc_prn.cmd ครั้งแรก ครั้งเดียว เพื่อเป็นการ register กับ windows ว่าให้โยงไฟล์นามสกุล .prn ว่าให้ใช้โปรแกรม prn2pdf เป็นตัวเปิดไฟล์ 
  4. หลังจากนั้น ก็สามารถใช้ ปู่ scraft เรียกรายงานออกทาง PRN file ได้ทันที

Global mode - zero install

สำหรับ Global mode มีเงื่อนไขสำคัญ คือ ต้อง update ปู่ scraft ของเราให้ทันสมัยก่อน (เริ่มตั้งแต่รุ่น 20 มี.ค. 2555) เพื่อให้ปู่ scraft รู้จักคำสั่งสำคัญคือ FRM.prnviewer

หลังจากนั้น เราสามารถ copy ไฟล์ prn2pdf.exe ไปไว้รวมใน directory ของปู่ scraft ซึ่งถ้าปู่ scraft อยู่ใน share folder ของ server ก็หมายความว่า เครื่องลูกเครื่องอื่นๆ สามารถใช้ความสามารถ prn2pdf อัตโนมัติ โดยไม่จำเป็นต้องติดตั้งแบบ local mode 

เสร็จเข้าไปใส่คำสั่ง ใน __FSys.INI เพื่อเปลี่ยนให้ ปู่ scraft ของเรา สามารถพิมพ์ออกเป็น pdf 

FRM.prnviewer=prn2pdf
FRM.output=2

คำสั่งแรก FRM.prnviewer คือ การกำหนดให้ใช้ app ในการเปิดไฟล์ .prn ที่ได้จากรายงานของปู่ scraft แทนที่จะใช้ app ที่กำหนด default ตาม assoc โดย OS ของเครื่องนั้นๆ (ดู Local mode)

คำสั่งที่สอง FRM.output คือ การกำหนดให้ option การแสดงผลของรายงาน ให้ default อยู่ที่ "PRN" แทนที่จะเป็น "หน้าจอ" ตามปกติ ช่วยให้สะดวกในการเปลี่ยนไปใช้ prn -> pdf เป็น output มาตรฐานเวลาเรียกรายงาน



สรรพากรเปลี่ยนเลขผู้เสียภาษีเป็น 13 หลัก

โพสต์19 ก.พ. 2555 03:43โดยSathit Jittanupat   [ อัปเดต 18 มี.ค. 2555 23:06 ]

อ้างอิงจาก กรมสรรพากร


สรุปสาระสำคัญ 

ให้นิติบุคคล เปลี่ยนเลขผู้เสียภาษี 10 หลัก ที่ออกโดยกรมสรรพากร
ไปใช้เลขนิติบุคคล 13 หลัก ที่ออกโดยกรมพัฒนาธุรกิจการค้า แทน
โดยเริ่มใช้ตั้งแต่ 1 ก.พ. 2555 แต่อนุโลมให้ใช้เลขผู้เสียภาษี 10 หลักเดิมได้ จนถึง 31 ม.ค. 2556

ผลกระทบที่เ่กิดขึ้น

 ใบกำกับภาษี เปลี่ยน เ่ลขผู้เสียภาษี ของผู้ออกเอกสาร 
 ใบเสร็จรับเงิน เปลี่ยน เลขผู้เสียภาษี ของผู้ออกเอกสาร
 แบบยื่น ภ.พ.30 เปลี่ยน เลขผู้เสียภาษี ของผู้ออกเอกสาร
 รายงานภาษีซื้อ, ภาษีขาย เปลี่ยน เลขผู้เสียภาษี ของผู้ออกเอกสาร
 ใบหักภาษี ณ ที่จ่าย เปลี่ยน เลขผู้เสียภาษี ของผู้หัก และ เลขผู้เสียภาษีของ ผู้ถูกหัก
 แบบยื่น ทั้งใบแรก และใบต่อ เปลี่ยน เลขผู้เสียภาษี ของผู้หัก และ เลขผู้เสียภาษีของ ผู้ถูกหัก 

ผลกระทบกับโปรแกรม scraft

 ระบบภาษีมูลค่าเพิ่ม ฐานข้อมูลผู้ประกอบการ เก็บเลขผู้เสียภาษีของกิจการ fix ไว้ที่ 10 หลัก
 แบบพิมพ์สำหรับยื่น ภพ.30 จะต้องปรับเปลี่ยน, รวมทั้งรายงานภาษีซื้อ/ ภาษีขาย 
 ระบบบิลขาย ฐานข้อมูลหมวดบิล เก็บเลขผู้เสียภาษีที่แสดงในฟอร์มบิล fix ไว้ที่ 10 หลัก
 แบบพิมพ์ฟอร์ม (INV-*.FRM) บางแบบ อาจต้องปรับเลื่อนตำแหน่งพิมพ์ เลขผู้เสียภาษี เพื่อไม่ให้ตัวเลขที่ยาวเกิน 10 หลัก เลยขอบเขตการพิมพ์
 ระบบบิลซื้อ เช่นเดียวกับบิลขาย แต่อาจมีผลกระทบน้อยกว่า เนื่องจากไม่ได้ใช้เป็นเอกสารภายนอก
 ระบบเจ้าหนี้ ฐานข้อมูลเจ้าหนี้ เก็บเลขผู้เสียภาษีของเจ้าหนี้ fix ไว้ที่ 10 หลัก
 ระบบภาษี ณ ที่จ่าย ฐานข้อมูลผู้ประกอบการ เก็บเลขผู้เสียภาษีของกิจการ fix ไว้ที่ 10 หลัก
 ฐานข้อมูลผู้เกี่ยวข้อง ซึ่งใช้เก็บข้อมูลผู้ถูกหักภาษี เก็บเลขผู้เสียภาษี fix ไว้ที่ 10 หลัก
 แบบพิมพ์ฟอร์ม ใบหักภาษี จะต้องปรับเปลี่ยนตำแหน่งพิมพ์ เลขผู้เสียภาษี ทั้งของผู้หัก และผู้ถูกหัก
 แบบพิมพ์สำหรับยื่น ภาษี ภงด. ต่างๆ ทั้งใบแรก และใบต่อ 

สรุปความเห็นของโปรแกรมเมอร์

ปัญหาการเปลี่ยนเลขผู้เสียภาษีคราวนี้ มีผลกระทบกับโปรแกรมของเราค่อนข้างมาก จนถึงขั้นต้องปรับโครงสร้างฐานข้อมูล (restructure database) แต่เนื่องจากโปรแกรมเรามีการใช้งานมายาวนาน หลายที่เป็นข้อมูลเก่าแก่เกิน 10 ปีขึ้นไป การปรับโครงสร้างฐานข้อมูลจึงเป็นทางเลือกสุดท้าย กรณีที่จำเป็นจริงๆ เท่านั้น

1. ปรับเล็ก

ใช้เทคนิค สร้างไฟล์ mapping id ขึ้นมา โดยผู้ใช้สามารถใส่ เลขผู้เสียภาษี ที่จับคู่กัน ระหว่าง เลขเก่า (ที่เก็บอยู่ใน database) กับเลขใหม่ 13 หลัก ด้วยตนเอง ซึ่งวิธีนี้ เหมาะสำหรับการเปลี่ยนเลขเสียภาษีของกิจการ ช่วยให้ไม่จำเป็นต้องเปลี่ยนโครงสร้างของ database แต่ก็มีข้อจำกัด คือไม่สามารถใส่รายการเลขผู้เสียภาษีจำนวนมากๆ ดังนั้น ถ้าใช้เปลี่ยนเลขผู้เสียภาษีของเจ้าหนี้ อาจทำให้เกินขีดจำกัดของโปรแกรม

2. ปรับใหญ่

แก้ปัญหาระยะยาว ปรับฐานข้อมูลเดิม (resturcture database) ให้สามารถรองรับเลขผู้เสียภาษี 13 หลักได้ จำเป็นต้องอาศัยผู้เชี่ยวชาญคอยดูแล เพื่อแก้ไขปัญหาที่อาจเกิดขึ้น ในระว่างทำการปรับโครงสร้าง database และติดตามผลหลังการปรับโครงสร้างแล้ว นอกจากนี้ อาจจะต้องมีผู้ช่วยจัดการแปลงเลขผู้เสียภาษีในฐานข้อมูลจาก 10 หลัก ให้เป็น 13 หลัก โดยไม่เป็นภาระกับผู้ใช้งาน

หมายเหตุ (1) จากการตรวจสอบคร่าวๆ โดยการค้นหาคำว่า "taxid" ใน project files ทั้งหมด พบว่ามี source code ที่เกี่ยวข้องกับ "taxid" ที่เราต้องตรวจสอบเพื่อปรับปรุงโปรแกรมอยู่ทั้งหมดประมาณ 1,000 แห่งครับ

หมายเหตุ (2) เกี่ยวกับ logic ของโปรแกรม ในการแยกประเภทของ ภงด. จากเลขผู้เสียภาษี 10 หลัก ของผู้ถูกหักภาษี เดิมเป็นดังนี้
1. เลขประจำตัวผู้เสียภาษีบุคคลธรรมดาขึ้นต้นด้วยเลข 1 เช่น 1 530536588 ปัจจุบันใช้เลขประจำตัวประชาชน 13 หลัก
2. หากขึ้นต้นด้วยเลข 2 หมายถึงคณะบุคคล
3. หากขึ้นต้นด้วยเลข 3 หมายถึง หจก.หรือบริษัท
4. หากขึ้นต้นด้วยเลข 4 หมายถึง ส่วนราชการต่าง ๆ เช่น โรงพยาบาล
กรณีที่เปลี่ยนไปใช้เลข 13 หลัก ตามเอกสารอ้างอิงของกรมพัฒนาธุรกิจ และความหมายของเลขบัตรประชาชน ซึ่งทำให้โปรแกรมต้องแก้ไข logic ใหม่ดังนี้
1. ตัวเลขหลักที่ 1
เลข 0 คือ เลขทะเบียนที่ออกโดยกรมพัฒนาธุรกิจ
เลข 1-8 คือ เลขบัตรประชาชน ซึ่งแบ่งเป็น 8 ประเภท
2. ตัวเลขหลักที่ 4 กรณี เลขตัวแรกเป็น 0
เลข 2 ห้างหุ้นส่วนสามัญนิติบุคคล
เลข 3 ห้างหุ้นส่วนจำกัด
เลข 4 หนังสือบริคณห์สนธิบริษัทจำกัด
เลข 5 บริษัทจำกัด
เลข 6 หนังสือบริคณห์สนธิบริษัทมหาชนจำกัด
เลข 7 บริษัทมหาชนจำกัด
เลข 8 หอการค้า
เลข 9 สมาคมการค้า
เลข 0 นิติบุคคลที่ตั้งขึ้นตามกฎหมายต่างประเทศที่ต้องปฏิบัติตามพระราชบัญญัติการประกอบธุรกิจของคนต่างด้าว พ.ศ. ๒๕๔๒

ความพร้อมของสรรพากร

ผมสำรวจความพร้อมของกรมสรรพากรเอง (20 ก.พ. 2555) ที่ website www.rd.go.th 
พบว่าส่วนให้บริการ download แบบพิมพ์ต่างๆ เองก็ยังไม่ได้ update ครบถ้วน เช่น
  • แบบพิมพ์ภาษีมูลค่าเพิ่ม มี update ให้รองรับเลข 13 หลัก เฉพาะ ภพ.30 และ เอกสารแนบ ภพ.30 ส่วนที่เหลือ ภพ.30.2, ภพ.30.3 และ ภพ.36 ยังไม่ได้ update
  • แบบพิมพ์ภาษีหัก ณ ที่จ่าย ใบแนบ ภงด.3, ใบแนบ ภงด.53 ยังไม่มีให้ download นอกจากนี้การออกแบบยังสุดโต่งคือ ให้กรอกแต่เลข 13 หลักอย่างเดียว ไม่สนใจว่า ช่วงเปลี่ยนแปลง ซึ่งการหักภาษี อาจจะยังไม่สามารถ update ใช้เลขของผู้ถูกหักเป็น 13 หลักได้ครบทุกราย

ความคืบหน้าการแก้ไขแบบพิมพ์

 WTFrm_D.FRM ฟอร์มใบหักภาษี ป.131 เต็มแผ่น 20-02-2555
 WTFrm1D.FRM ฟอร์มใบหักภาษี ป.100,131 เต็มแผ่น 20-02-2555 
 WTFrm2D.FRM ฟอร์มใบหักภาษี ป.100,131 ครึ่งแผ่น 20-02-2555 
 WTFrm4D.FRM ฟอร์มใบหักภาษี มีอ้างถึง เต็มแผ่น 20-02-2555 
 WTFrm5D.FRM ฟอร์มใบหักภาษี มีอ้างถึง ครึ่งแผ่น 20-02-2555 
 WTFrm6D.FRM ฟอร์มใบหักภาษี /ตัวแทน เต็มแผ่น 20-02-2555 
 WTFrm7D.FRM ฟอร์มใบหักภาษี /ตัวแทน ครึ่งแผ่น 20-02-2555 
 R_WT6_13.FRM ภงด.1 ร่าง ใบแรก 20-02-2555 
 R_WT6_23.FRM ภงด.2 ร่าง ใบแรก  20-02-2555 
 R_WT6_33.FRM ภงด.3 ร่าง ใบแรก  20-02-2555 
 R_WT6533.FRM ภงด.53 ร่าง ใบแรก  20-02-2555 
 R_WT6543.FRM ภงด.54 ร่าง ใบแรก  20-02-2555 
 R_WT6Y13.FRM ภงด.1ก ร่าง ใบแรก  20-02-2555 
 R_WT6Y23.FRM ภงด.2ก ร่าง ใบแรก 20-02-2555 
 R_WT6Y33.FRM ภงด.3ก ร่าง ใบแรก 20-02-2555 
 R_WT6_1$.FRM ภงด.1 ใบแรก (pnd1.pdf)* 19-03-2555
 R_WT6_2$.FRM ภงด.2 ใบแรก (pnd2.pdf)* 19-03-2555 
 R_WT6_3$.FRM ภงด.3 ใบแรก (pnd3.pdf)* 19-03-2555   
 R_WT653$.FRM ภงด.53 ใบแรก (pnd53.pdf)* 19-03-2555   
 R_WT6Y1$.FRM ภงด.1ก ใบแรก (pnd1a.pdf)* 19-03-2555 
 RepTax3.FRM ภพ.30 ร่าง ไม่ต้องแก้ไข
 RepTax3$.FRM ภพ.30 (pp30.pdf)* 18-03-2555
 RepTax3G.FRM เอกสารแนบ ภพ.30 ร้านทอง ไม่ต้องแก้ไข

หมายเหตุ การพิมพ์ลงแบบฟอร์มสรรพากร *

การพิมพ์ลงฟอร์ม สรรพากร โปรแกรมได้ปรับเปลี่ยนไปใช้วิธี auto fill form ลงไปในแบบพิมพ์ไฟล์ .pdf ของสรรพากรแทน

เพื่อแก้ปัญหาระยะยาว เนื่องจากแบบพิมพ์กระดาษ ที่ทางสรรพากรแจกให้นั้น มักจะมีความคลาดเคลื่อน ในตำแหน่งที่พิมพ์ รวมทั้งรุ่นของแบบพิมพ์ที่แจกจากเขตพื้นที่แต่ละเขตก็ไม่ตรงกัน จนทำให้ไม่สามารถ update ให้โปรแกรมพิมพ์ลงแบบพิมพ์ทุกรุ่นได้อย่างทั่วถึง 


ตารางราคาขาย

โพสต์18 เม.ย. 2554 21:37โดยSathit Jittanupat   [ อัปเดต 20 เม.ย. 2554 00:13 ]

ตารางราคาขาย เดิมเป็นส่วนขยาย (add-on) เพิ่มความสามารถให้กับระบบบิลขาย แต่ภายหลัง ได้ผนวกกลายเป็นความสามารถที่เปิดใช้งานปกติของระบบบิลขายไปแล้ว แต่ก็ยังสามารถสั่งปิดไม่ใช้ ตารางราคาขาย นี้ได้

หลักการของ ตารางราคาขาย คือ การเพิ่มมิติ ให้กับราคาขาย จากเดิมที่เป็นราคาขาย ราคาเดียว กลายเป็นสามารถกำหนดเงื่อนไขให้ราคาแตกต่างกันตามมิติต่างๆ เช่น ระดับลูกค้า, ปริมาณสินค้า, ช่วงเวลา

ข้อมูลตารางราคาของสินค้า

เราสามารถกำหนดตารางราคาให้สินค้า ในส่วนของข้อมูลสต็ิอกเพิ่มเติม โดยเข้าทาง เมนู แฟ้มข้อมูล-สต๊อก -> ข้อมูลสต็อกเพิ่มเติม หรือ เข้าทาง หน้าจอแสดง รายการสต็อกสินค้า เลื่อนไปที่ชื่อสินค้าที่ต้องการ กด <Space> แล้วกด <F1> เพื่อเปิดจอ ข้อมูลสต็อกเพิ่มเติม

การกำหนดตารางราคา สามารถใส่รายการราคาโดยตรง ในช่องตารางราคา หรือ กด <F1> ในช่องตารางราคา เพื่อตั้งชื่อตารางราคา เก็บไว้ใช้ กัีบสินค้าชื่ออื่นภายหลัง

รูปแบบของรายการราคา

รายการราคาตามเงื่อนไขระดับลูกค้า เราใช้เครื่องหมาย , (comma) คั่น ราคาแต่ละชุด โดยราคาแต่ละชุด มีความหมายถึง ราคาสำหรับลูกค้าระดับ 1, 2 และต่อไป ตามลำดับ จุดเด่นของ ตัวเลขราคาคือ สามารถใช้เครื่องหมาย + หรือ - หรือ X (คูณ) หรือ ' (หาร) เพื่อเป็นการกำหนดราคาแบบอ้างอิงกับราคาขายมาตรฐาน นอกจากนี้ ยังสามารถกำหนดราคาแบบเป็นเปอร์เซนต์ โดยใช้เครื่องหมาย % 

ตัวอย่าง 248,-5,-3%

 248ใช้ราคา 248 สำหรับลูกค้าระดับ 1
 -5ลดราคา 5 บาท จากราคามาตรฐาน สำหรับลูกค้าระดับ 2
 -3%ลดราคา 3% จากราคามาตรฐาน สำหรับลูกค้าระดับ 3 


เงื่อนไขปริมาณสินค้า เราสามารถระบุปริมาณขั้นต่ำ ตามด้วยเครื่องหมาย : (colon) ไว้ข้างหน้ารายการราคาแต่ละบรรทัด กรณีอยู่ในบรรทัดเดียวกัน เราสามารถใช้เครื่องหมาย ; (semi-colon) เพื่อคั่นชุดรายการราคาตามปริมาณ แต่ละชุด

ตัวอย่าง 248,-5,-3%; 12: 247,-6,-3.5%

ราคาชุดแรกไม่ใส่เงื่อนไขจำนวน แปลว่าสำหรับการขายสินค้าตั้งแต่ 0 ชิ้นขึ้นไป สำหรับการขายตั้งแต่ 12 ชิ้นขึ้นไป จะใช้ชุดรายการราคาที่ 2


กำหนดระดับลูกค้า (ดัชนีราคา)

เราสามารถกำหนดระดับให้ลูกค้า ที่ข้อมูลลูกค้าเพิ่มเติม (ช่องดัชนีราคา) ซึ่งสัมพันธ์กับรายการราคาในตารางราคา และเช่นเดียวกับ ข้อมูลสต็อกเพิ่มเติม โดยเข้าทาง เมนู แฟ้มข้อมูล-ลูกค้า -> ข้อมูลลูกค้าเพิ่มเติม หรือ เข้าทาง หน้าจอแสดง รายการลูกค้า เลื่อนไปที่ชื่อลูกค้าที่ต้องการ กด <Space> แล้วกด <F1> เพื่อเปิดจอ ข้อมูลลูกค้าเพิ่มเติม 

จะเห็นว่า สำหรับข้อมูลลูกค้าปกติ ที่ไม่มีการตั้งดัชนีราคา โปรแกรมจะถือว่ามีระดับเท่ากับ 0 อัตโนมัติ ซึ่งก็ืคือลูกค้าที่ใช้ราคาสินค้ามาตรฐานที่ตั้งไว้ในข้อมูลสต็อกสินค้า ส่วนรายการราคาตามตารางราคา จะใช้กับลูกค้าที่มีระดับตั้งแต่ 1 หรือมากกว่าเป็นต้นไป

รายการราคาในบิลขาย

ในบิลขาย นอกจากโปรแกรมจะคำนวณหาราคาที่ตรงตามเงื่อนไขที่สุดให้อัตโนมัติ โดยพิจารณาจากมิติของ ลูกค้า,วันที่ และจำนวนสินค้า สำหรัีบสินค้าที่มีตารางราคา เราสามารถกด <F1> ในช่อง ราคา/หน่วย เพื่อให้แสดงรายการราคา ที่สามารถเลือกจากตารางได้อีกด้วย

การประยุกต์ใช้งานขั้นสูง

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

ระบุดัชนีเริ่มต้นให้รายการราคา

กรณีต้องการให้ตารางราคา สามารถควบคุมราคาของลูกค้าทั่วไป ที่ไม่มีดัชนีราคาด้วย หรือดัชนีเท่ากับ 0 นั่นเอง ขณะที่รายการราคานั้น เริ่มต้นที่ราคาของดัชนี 1 เราสามารถกำหนดรายการราคา โดยใช้รูปแบบระบุดัชนี้เริ่มต้นดังนี้

ตัวอย่าง 0=-1,248,-5,-3%
กำหนดให้ รายการราคา เริ่มต้นที่ดัชนี 0

ตัวอย่าง 248,-5,-3%,100=-20%,-25%,-30%
รายการราคา เริ่มต้นที่ดัชนี 1 ตามปกติ แล้วข้ามไปกำหนดดัชนีเริ่มต้นที่ 100 ดังนั้น ตามตัวอย่างข้างต้น จะมีราคาของลูกค้า ระดับ 1,2,3,100,101,102

ราคาสินค้าลอยตัว

กรณีสินค้าที่ราคาสินค้าลอยตัว ที่เปลี่ยนแปลงตลอดเวลา เช่น ราคาสินค้าที่อิงตามอัตราแลกเปลี่ยน เราสามารถประยุกต์ใช้ความสามารถของตารางราคา เช่น กำหนดราคาขายมาตรฐานเป็นราคา US dollar แล้วใช้คำสั่งตารางราคาให้คูณอัตราแลกเปลี่ยน 

ตัวอย่าง 0=X30.285

ใช้ตัวแปรแทนราคา

บางครั้ง เมื่อตารางราคา ที่ผูกติดกับสินค้าแต่ละตัว มีมากขึ้น การเปลี่ยนแปลงแก้ไขภายหลัง อาจทำให้มีปัญหา เช่น ลูกค้าระดับ 3 อยากเปลี่ยนจาก -3% เป็น -3.5% สำหรับสินค้าทุกรายการ เราสามารถออกแบบ รายการราคา ให้ใช้ตัวแปรแทนค่าตัวเลขตรงๆ แล้วกำหนดแทนค่าของตัวแปรนั้นๆ ไว้ในไฟล์ __FSYS.INI แทน

ตัวอย่าง 0=($USD)($$MARKUP)

ไฟล์ __FSYS.INI 
$USD=X30.285
$$MARKUP=+10%

ข้อแตกต่างระหว่างตัวแปรที่ขึ้นต้นด้วย $ กับ $$ คือ ตัวแปร $$ จะไม่แสดงตัวเลขให้เห็นตัวเลขในการคำนวณราคาในบิลขาย เช่น กรณีเรากำหนดตัวเลขอัตรากำไร แต่ไม่ต้องการให้พนักงานที่เปิดบิลเห็น

คำสั่ง __FSys.INI ที่เกี่ยวข้อง

สามารถดูรายละเอียดได้จาก wiki __FSYS.INI 
  • _StockAltPrice 
  • _InvPrcTabByDsc
  • _InvGetLastPrice
  • _InvTypeAsLastPrice
  • _InvUsePrcTab
  • _CustomerShowQInf

Sub field 2.0

โพสต์2 เม.ย. 2554 10:16โดยSathit Jittanupat   [ อัปเดต 3 เม.ย. 2554 11:07 ]

Sub field คือ การแปลงการป้อนข้อความ (string) แบบอิสระให้กลายเป็นการป้อนข้อความแบบมี format แน่นอน โดยแบ่งส่วนของข้อความให้กลายเป็นเสมือนการป้อนข้อมูลในฟอร์มที่มี field รับข้อมูลอยู่ ประโยชน์ของ sub field คือ ช่วยจัดระบบของการตั้งชื่อ เช่น สินค้า หรือ ลูกค้า ให้อยู่ในรูปแบบ ที่สามารถนำข้อมูลไปจัดเรียง หรือประมวลผลต่อได้ง่าย ลดปัญหาความผิดพลาดในการพิมพ์ข้อความ หรือแม้กระทั่งการเคาะวรรค เพื่อเว้นวรรค ซึ่งในแง่ข้อมูล ระหว่างเคาะวรรค 1 space กับ 2 spaces ก็มีความหมายต่างกัน 

แนวคิด sub field นั้่น เดิมได้มาจาก อนันต์ เพื่อแก้ปัญหา ความยุ่งยากในการตั้งชื่อสินค้า ของธุรกิจ โรงงานกระดาษ เราสามารถใช้ความสามารถของ sub field ในทุกๆ ที่ ที่เป็นการป้อนข้อมูลแบบข้อความเช่น กระดาษลูกฟูก ลอน?S; ?N;X?N; โปรแกรมจะตรวจสอบข้อความที่ป้อน เมื่อกด <Enter> หากพบสัญญลักษณ์ ? และ ; อยู่ตามเงื่อนไขของ sub field notation โปรแกรมก็จะเปิดกล่องย่อย เพื่อเข้าสู่การป้อนข้อมูลแบบ sub field

Simple sub field 

เป็นการกำหนด sub field แบบง่ายๆ โดยใช้ default sub field properties ตามที่โปรแกรมกำหนด
 ?S;  รับข้อมูล string (ข้อความใดๆ)
 ?D;  รับข้อมูล date
 ?T;  รับข้อมูล time
 ?N;  รับข้อมูล number ชิดซ้าย ใช้สำหรับ เลขที่เอกสาร, เลขที่มิเตอร์ เป็นต้น
 ?M;  รับข้อมูล money ตัวเลขจำนวนเิงิน ทศนิยม 2 ตำแหน่ง ชิดขวา
 ?I;  รับข้อมูล integer ตัวเลข จำนวนเต็ม ทดนิยาม ชิดขวา
 ?Q;  รับข้อมูล quantity ตัวเลข จำนวนหรือปริมาณ สินค้า

Advance sub field

custom size

เราอาจกำหนดขนาดของ sub field โดยใช้ : ตามหลังรหัส type ของ sub field ได้ดังนี้
?S:10; รับข้อมูล string ขนาด 10 ตัวอักษร
?N:3; รับข้อมูล string ที่เป็นตัวเลข ไม่เกิน 3 ตัวอักษร
?M:8; รับข้อมูลตัวเลขจำนวนเงิน ขนาดไม่เกิน 8 ตัว

custom format

เราสามารถกำหนด sub field ให้มีขนาดกว้าง หรือรูปแบบการรัีบข้อมูลที่ป้อนตามต้องการ โดยกำหนด format ของ sub field โดยใช้ , ต่อท้าย ภายใน sub field เช่น 
?S,#X-8; รับข้อมูล string ขนา่ด 8 ตัวอักษร
?S,#9-4; รับข้อมูล string เฉพาะตัวเลข ขนาด 4 ตัวอักษร มีผลเหมือนกับการใช้ ?N:4;
?M,#M-8; รับข้อมูลตัวเลขจำนวนเงิน ขนาดไม่เกิน 8 ตัว หรือ 9,999.99

สำหรับ การกำหนด format code ที่โปรแกรมรองรับมีดังนี้
 #x  สำหรับใช้กับ string ตัวอักษรใดๆ รับภาษาอังกฤษทั้งตัวเล็ก และตัวใหญ่ 
 #X  สำหรับใช้กับ string แปลงตัวอักษรภาษาอังกฤษเป็นตัวใหญ่อัตโนมัติ 
 #0  ตัวเลข ไม่มีทศนิยม กรณีที่ไม่เต็ม จะใส่ 0 นำหน้าให้ เช่น 000012 
 #9  ตัวเลข ไม่มีทศนิยม 
 #M  ตัวเลขจำนวนเงิน (Money) ทศนิยม 2 ตำแหน่ง เช่น 3,300.00 
 #B  ตัวเลขจำนวนเงิน (Baht) ทศนิยม 2 ตำแหน่ง แต่ถ้าไม่มีเศษสตางค์ จะแสดงเป็น .- เช่น 3,300.- 
 #(  ตัวเลขจำนวนเงิน ทศนิยม 2 ตำแหน่ง ถ้าเป็นลบ จะแสดงเป็นวงเล็บ เช่น (3,300.00) 
 #Q  ตัวเลขจำนวน ทศนิยม 3 ตำแหน่ง 

custom name

เราสามารถตั้งชื่อ sub field เพื่อให้ผู้ป้อนข้อมูล เข้าใจความหมายของ sub field ที่ต้องการให้ป้อน เช่นกระดาษลูกฟูก ลอน?S; ?กว้าง:N;X?ยาว:N; จะเห็นว่า จากเดิมเราใช้ ?N; เราเปลี่ยนเป็น ?กว้าง:N; และ ?ยาว:N; แทน ถ้าเราตั้งชื่อโดยไม่กำหนด type ให้ sub field โปรแกรมจะถือว่า sub field นั้นเป็นชนิด string อัตโนมัติ เช่น ?ลอน; เราไม่จำเป็นต้องใช้ ?ลอน:S;

Auto sub field


ในระหว่างป้อนข้อมูล สำหร้บ field ที่มีข้อความเป็น [xxxx] เช่น 
**ส่วนลด [3%] 
**ค่าไฟฟ้า มิเตอร์ [3123]-[3244] 
เราสามารถกด Ctrl-X เพื่อให้โปรแกรมแปลงส่วนที่อยู่ภายใน [...] ให้กลายเป็น sub field อัตโนมัติ 

นอกจากนี้ เมื่ออยู่ในหน้าจอ sub field ยังมี key พิเศษ เพื่อสลับค่าระหว่าง sub field ดังนี้ 
<F2> Shift Left เอาค่าใน sub field ทางขวา ไปใส่ใน sub field ทางซ้าย
<F3> Shift Right เอาค่าใน sub field ทางซ้าย ไปใส่ใน sub field ทางขวา
<F4> Rotate Left ทำงานเหมือน Shift Left แต่แทนที่จะเว้นว่าง sub field ทางขวาท้ายสุด จะเอาค่าใน sub field ซ้ายแรกสุด มาใส่แทน
<F5> Rotate Right ทำงานเหมือน Shift Right แต่แทนที่จะเว้นว่าง sub field ทางซ้ายแรกสุด จะเอาค่าใน sub field ขวาท้ายสุด มาใส่แทน

ดูตัวอย่าง
รูปที่ 1 ข้อความเดิม ใน field

รูปที่ 2 เมื่อกด Ctrl-X จะขึ้นเป็นจอ sub field

รูปที่ 3 ภายในจอ sub field เมื่อกด F3 เลื่อนเอาค่าใน field แรก ไปใส่ใน field ที่สอง

Function Key ใน PROGRAM VERSION

โพสต์30 มี.ค. 2554 12:06โดยSathit Jittanupat   [ อัปเดต 30 มี.ค. 2554 12:27 ]

เข้าทางปกติใช้ เมนู เบ็ดเตล็ด -> PROGRAM VERSION

เข้าทางลัดกด <Ctrl><F12> จากหน้าจอใดๆ ก็ได้


Function Key ที่ซ่อนอยู่
<F1> Customize Menu สำหรับแก้ไขไฟล์ __FSYS.INI, AUTOEXEC.NT, CONFIG.NT,*.FRM,*.INI และอื่นๆ
<F2> สำหรับแก้ไขไฟล์ *.INI
<F7> สำหรับแก้ไขไฟล์ *.FRM
<F8> Config Menu สำหรับเปลี่ยน config จอภาพ/เครื่องพิมพ์, ปรับ Memory Free อัตโนมัติ
<F9> Real Time Clock เปลียนเวลาของระบบ
<F10> Command Prompt Shell ออกมาที่ Dos Prompt, ต้องพิมพ์ exit เพื่อกลับไปที่โปรแกรม
<Ctrl><F1> แสดง cache ของคำสั่ง __FSYS.INI ที่โปรแกรมใช้อยู่
<Ctr><F8> maintainance ขอบเขตผู้ใช้งาน แบบรวมทุก user 
<Ctrl><F9> maintainance FCfg (__FSYS.INI Alternative)


tags: <core>

1-10 of 19