#faq#fixed-asset#depreciation#gl
คิดค่าเสื่อมราคาสินทรัพย์ (โอนค่าเสื่อม 1801) คำนวณและลงบัญชีอย่างไร
ตอบสั้น: งานโอนค่าเสื่อม (menu_asset_transfers) คิดแบบเส้นตรงอย่างเดียว ปัด HALF_UP ที่ item_amount_decimal สร้างเอกสาร as_trans 1801 หนึ่งใบ มีแถวละสินทรัพย์ แล้วลง GL Dr ค่าเสื่อมราคา / Cr ค่าเสื่อมราคาสะสม รวมตามรหัสบัญชี รันซ้ำเลขเดิมได้ เพราะระบบลบแล้วสร้างใหม่
รายละเอียด
ดู ค่าเสื่อมราคาสินทรัพย์ถาวร (Fixed Asset Depreciation), วงจรสินทรัพย์ถาวร (Fixed Asset Lifecycle), โอนค่าเสื่อมราคาสินทรัพย์ (Depreciation Transfer)
ตัวเลือกการคำนวณ
- คิดตาม (
ProcessBy): 1 วัน, 2 เดือน (ค่าเริ่มต้น), 3 ปี; แบบรายวันได้ไม่เกิน 366 วัน - จำนวนวัน (
ProcessMode): 0 สรรพากร, 1 บัญชี 30/360 (ค่าเริ่มต้น), 2 วันจริง - วันที่เอกสาร ถ้าไม่ระบุ ใช้วันสิ้นสุดของช่วง
ฐานคำนวณต่อสินทรัพย์ (depAssetOf) (ทะเบียนสินทรัพย์ (as_asset), รายละเอียดสินทรัพย์ (as_asset_detail))
- มูลค่าคิดค่าเสื่อม =
as_calc_valueถ้าเป็น 0 ใช้as_buy_price - ยอดคงเหลือ =
as_value_balanceถ้าเป็น 0 ใช้มูลค่าคิดค่าเสื่อม - มูลค่าที่ตัด = ยอดคงเหลือ − ราคาซาก (
as_dead_value) - สินทรัพย์ที่ขายแล้ว (1802) คิดถึงวันก่อนวันขาย 1 วัน
สูตร (ปัดทุกขั้น)
- ต่อปี = มูลค่าที่ตัด ÷ อายุปี (อายุคำนวณจากวันเริ่ม/วันหยุดคิด)
- ต่อเดือน: โหมดบัญชี = 30 × (ต่อปี ÷ 360); สรรพากร = วันในเดือน × (ต่อปี ÷ 365) โดย ก.พ. ปีอธิกสุรทินนับ 28 วัน; วันจริง = วันในเดือน × (ต่อปี ÷ วันในปี)
- ต่อวัน: บัญชี = ต่อเดือน ÷ 30; สรรพากร = ต่อปี ÷ 365; วันจริง = ต่อปี ÷ วันในปี
บันทึก (FADepreciation)
- ล็อก 'fa-depreciation' แล้วลบ
as_trans,as_trans_detail,gl_journal,gl_journal_detailของเลขเอกสารเดิม - ไม่มีสินทรัพย์ → "ไม่พบสินทรัพย์ที่ต้องคิดค่าเสื่อมในช่วง ..."
- สินทรัพย์เดียวกันมีเอกสาร 1801 อื่นช่วงวันทับกัน → "สินทรัพย์ช่วงวันที่นี้โอนค่าเสื่อมไปแล้วในเอกสาร ..."
- GL (
depGLLines): Drdepreciation_account_code/ Crdepreciation_sum_account_codeถ้ารหัสไม่ครบจน Dr ≠ Cr → "ผังบัญชีค่าเสื่อม/ค่าเสื่อมสะสมของสินทรัพย์ไม่ครบ ..." gl_journaljournal_type 0, trans_direct 1 (หัวเอกสารสินทรัพย์ (as_trans))
ลบ ปฏิเสธถ้าสินทรัพย์ในเอกสารถูกขาย (1802) ในวันที่เดียวกันหรือหลังวันที่เอกสาร
ข้อควรระวัง
- ประเภท
calc_type(ลดน้อยถอยลง) ไม่มีผลกับงานโอนค่าเสื่อม ใช้เฉพาะช่วยเติมอัตราเริ่มต้นในจอสินทรัพย์ (assetRate: เส้นตรง = 100 ÷ อายุ, ลดน้อยถอยลง = (1 − (ซาก/มูลค่า)^(1/อายุ)) × 100 ปัดค่ายกกำลังที่ 15 หลักนัยสำคัญ) - บันทึกไม่ตรวจงวดบัญชี ส่วนลบตรวจแบบผ่อน (ไม่พบงวด = ผ่าน, งวดปิด = ปฏิเสธ) (บันทึก/แก้/ลบเอกสารไม่ได้ ขึ้นว่า "ได้ถูกปิดงวดไปแล้ว หรือยังไม่ได้กำหนดงวดบัญชี" แก้อย่างไร)
- งวดใน
gl_journalหาจากช่วงวันที่ ไม่ดู status - ไม่ได้ใช้รูปแบบ GL (doc format) ลง Dr/Cr ตามรหัสบัญชีของสินทรัพย์ตรงๆ
ดูเพิ่ม
- ค่าเสื่อมราคาสินทรัพย์ถาวร (Fixed Asset Depreciation)
- ขายสินทรัพย์ (1802) ระบบคำนวณกำไร/ขาดทุนและลงบัญชีอย่างไร
- วงจรสินทรัพย์ถาวร (Fixed Asset Lifecycle)
- ระบบปัดเศษทศนิยมเงินอย่างไร ทำไมยอดต่างกัน 0.01
- ประเภทสินทรัพย์ (as_asset_type)
ที่มาในโค้ด
backend/internal/application/process/fa_depreciation.go:28ค่าคงที่ 1801/1802, โหมด, ProcessBybackend/internal/application/process/fa_depreciation.go:111ปัดRoundHalfUp;:141yearVal;:144monthVal;:160dayValbackend/internal/application/process/fa_depreciation.go:471depAssetOfbackend/internal/application/process/fa_depreciation.go:590normalizeFADepreciationbackend/internal/application/process/fa_depreciation.go:719depGLLines;:783faAmountScalebackend/internal/application/process/fa_depreciation.go:794FADepreciation;:935checkDepOverlap;:964insertDepDocbackend/internal/application/process/fa_depreciation.go:858deleteFADepreciation;:877ตรวจงวดแบบผ่อนbackend/internal/application/process/asset_depreciation.go:66assetRate