#doctypes#cash-bank
บันทึกโอนเงินระหว่างธนาคาร (422 โอนออก / 420 โอนเข้า)
ใช้เมื่อไร
ใช้โอนเงินระหว่างสมุดบัญชีธนาคารของกิจการเอง ผ่านเมนู "บันทึกโอนเงินระหว่างธนาคาร" (TM, transMenuMap.ts:1917)
trans_flag/ตาราง
- ผู้ใช้บันทึกเป็น 422 ใน หัวเอกสารสินค้า/ซื้อ/ขาย (ic_trans) + รายการสินค้าในเอกสาร (ic_trans_detail) โดย item_code คือสมุดต้นทาง และ item_code_2 คือสมุดปลายทาง
- ระบบสร้างแถวคู่ 420 (โอนเงินเข้า) ด้วย doc_no เดียวกัน ผ่าน
SyncTransferPair(cheque.go:101) ซึ่งถูกเรียกในrebuildTransDerived(trans.go:605) - แถวคู่ 420 สลับคอลัมน์ต้นทาง/ปลายทาง (
transferPairSwapscheque.go:79) บวก doc_time อีก 1 นาที และใช้ calc_flag −1
ฟิลด์/แท็บบนหน้าจอ
- ไม่มีช่องหัวเอกสารพิเศษ มีแท็บ gl (transLayouts.ts:143)
ผลต่อสต็อก
ไม่มี
ผลต่อภาษี (VAT/WHT)
ไม่มี
การลงบัญชี
ใช้ standard GL ของ 422 เท่านั้น (service.go:2221) ส่วน 420 ไม่อยู่ใน glRebuildTransFlags
| Dr | Cr |
|---|---|
ธนาคารปลายทาง (บัญชีของ item_code_2 จาก glSQLPassBook) ยอดรวม |
ธนาคารต้นทาง (บัญชีของ item_code) ยอดรวม |
ถ้าหาบัญชีของสมุดไม่เจอจะใช้ 1112/1113/1111 และใช้ข้อมูลจากบรรทัดแรกเท่านั้น
เอกสารต้นทาง-ปลายทาง
(ไม่พบในโค้ด)
ยกเลิก/แก้ไข
- ยกเลิกด้วย flag 423 (doc_cancel.go:56)
- ลบ 422 แล้วเรียก
SyncTransferPairแถว 420 ที่ไม่มีคู่จะถูกลบด้วย (comment cheque.go:97)
ข้อควรระวัง
- GL อ่านเฉพาะบรรทัดแรก ถ้าใบเดียวมีหลายบรรทัด ยอดรวมจะลงคู่สมุดของบรรทัดแรก
ที่มาในโค้ด
frontend/account/tabs/transMenuMap.ts:1917เมนูfrontend/account/transaction/transLayouts.ts:143FLAG_SPEC 422backend/internal/application/process/service.go:2221GLbackend/internal/application/process/cheque.go:101SyncTransferPairbackend/internal/application/process/doc_cancel.go:56ยกเลิก 423