สมอง SML

คลังความรู้ / ชนิดเอกสาร

#doctypes#asset

ขายสินทรัพย์ (trans_flag 1802)

ใช้เมื่อไร

ใช้ขายหรือจำหน่ายสินทรัพย์ถาวร ผ่านเมนู menu_asset_sale (screenRegistry.tsx:1111) และหน้าจอ AssetSaleScreen ที่ใช้ FLAG = 1802 (AssetSaleScreen.tsx:31)

trans_flag/ตาราง

ฟิลด์/แท็บบนหน้าจอ

  • grid กรอกแค่รหัสสินทรัพย์และราคาขาย ส่วนทุน ค่าเสื่อมสะสม มูลค่าตามบัญชี VAT และกำไรขาดทุน backend คำนวณให้ (AssetSaleLine fa_sale.go:21)

ผลต่อสต็อก

ไม่มี

ผลต่อภาษี (VAT/WHT)

  • ภาษีขาย vat_calc +1 (trans_tax.go:37) บันทึกผ่าน insertAssetSaleVat (fa_sale.go:645)
  • WHT ฝั่ง "ar" (trans_tax.go:48) บันทึกผ่าน saveAssetSaleWht (fa_sale.go:666)

การลงบัญชี

คำนวณใน calcAssetSale (fa_sale.go:159) และหาบัญชีใน computeAssetSale (fa_sale.go:321)

  • กำไรขาดทุน pl = (ยอดเงิน − VAT) − (ทุน − ค่าเสื่อมสะสม)
Dr Cr
เงินสด 1111/1110/1100 เมื่อ inquiry 1/3 (assetSaleIsCash fa_sale.go:695) มิฉะนั้นเป็นบัญชีของลูกค้าใน ar_customer_detail หรือ 1121/1120 = ยอดเงิน ราคาทุนของสินทรัพย์แต่ละตัว
ค่าเสื่อมราคาสะสมของสินทรัพย์แต่ละตัว ภาษีขาย 2134/2121/2135/2190
ขาดทุนจากการจำหน่าย (ถ้า pl < 0) กำไรจากการจำหน่าย (ถ้า pl > 0)
  • บัญชีกำไรขาดทุนหาจากผังที่ชื่อตรง regex (จำหน่าย|ขาย)สินทรัพย์ (fa_sale.go:349)
  • ถ้าเอกสารมี template GL จะลงตาม template และไม่ fallback (postAssetSaleTemplate fa_sale.go:600)

เอกสารต้นทาง-ปลายทาง

ยกเลิก/แก้ไข

  • แก้ไขด้วยการบันทึกทับตาม doc_no หรือลบด้วย op = delete (fa_sale.go:379)
  • ไม่มีคู่ยกเลิกใน cancelOrigFlags (ไม่พบในโค้ด)

ข้อควรระวัง

  • ถ้ารหัสลูกค้าไม่มีใน ar_customer_detail ฝั่ง Dr จะใช้บัญชีลูกหนี้ตั้งต้นแทน (comment fa_sale.go:229)
  • ยอดใน journal ปัดเป็น 2 ตำแหน่งก่อนคำนวณเพื่อให้ Dr = Cr (fa_sale.go:184)

ที่มาในโค้ด

  • frontend/account/transaction/AssetSaleScreen.tsx:31 FLAG
  • backend/internal/application/process/fa_sale.go:159 calcAssetSale
  • backend/internal/application/process/fa_sale.go:321 computeAssetSale
  • backend/internal/application/process/fa_sale.go:600 postAssetSaleTemplate

ดูเพิ่ม