สมอง SML

คลังความรู้ / คำศัพท์ไทย ↔ โค้ด

#glossary#gl#journal

สมุดรายวัน / รายการบัญชี

ในระบบนี้คืออะไร

  • หัวรายการบัญชีอยู่ใน gl_journal และบรรทัดเดบิต/เครดิตอยู่ใน gl_journal_detail โดย key คือ doc_no + book_code (สมุดบัญชี) + trans_flag (gl_template.go:1050-1066)
  • ที่มาของรายการมี 2 ทาง
    1. บันทึกเอง: จอ "ข้อมูลรายวัน" (menu_gl_journal, screenCode/prefix JV, transMenuMap.ts:2368-2380; smlMenu.json:9416) เก็บ trans_direct = 1 และ journal_type = 0 (docs.go:294-302)
    2. ลงบัญชีอัตโนมัติ จากเอกสารซื้อ ขาย คลัง และเงิน ตามรูปแบบ GL ของ doc_format_code ระบบจะไม่ยอมบันทึกถ้าเดบิตไม่เท่ากับเครดิต (gl_template.go:1044-1047) และเขียนด้วย trans_direct = 0 (:1050-1053) ดู การลงบัญชี Dr/Cr มาตรฐานแยกตามชนิดเอกสาร (Standard GL Posting)
  • สมุดบัญชี (gl_journal_book) ตั้งค่าที่จอ "กำหนดสมุดบัญชี" (menu_setup_gl_journal_book, smlMenu.json:1205)

ค่าที่เป็นไปได้

คอลัมน์ ความหมายจากโค้ด
debit_or_credit 0 เดบิต · 1 เครดิต (service.go:1747; gl_template.go:1068)
journal_type 0 รายวัน · 1 ยกมางวด · 2 ปิดงวด · 3 ปรับปรุง · 4 ยอดยกมา (sbJournalTypes, stock_beginning.go:112)
trans_direct 1 บันทึกเอง ระบบไม่สร้างใหม่ · 0/อื่นๆ สร้างอัตโนมัติ ลบและสร้างใหม่ได้ (gl_template.go:1159; doc_cancel.go:596)
is_pass 1 ผ่านรายการแล้ว · 0 ยังไม่ผ่าน / ยกเลิกผ่าน (workflow.go:478-479)
erp_option.gl_trans_type "โอน GL" 0 แบบแยกรายตัว · 1 แบบแยกรายตัว+คอมปาว (บัญชีและสาขาเดียวกันรวมเป็นบรรทัดเดียว) (tab2Gl.ts:39-45; gl_template.go:352-354)

รายงานงบทดลองแยกยอดตาม journal_type

  • ยอดยกมา = รายการก่อนวันเริ่ม + journal_type 1 ภายในช่วง + journal_type 4 ก่อนวันสุดท้าย
  • ยอดประจำงวด = journal_type 0 + ปิดงวด (2) และปรับปรุง (3) ซึ่งรายการของวันสุดท้ายจะนับเมื่อติ๊กเลือก (report_menu_gl_fa_tb.go:10-16)

จอที่เกี่ยวข้อง

"ผ่านรายการ" (menu_gl_journal_pass, smlMenu.json:9493) ใช้ตั้ง is_pass ส่วนเอกสารปิดงวดและปิดปี (flag 1998/1999) ดูที่ งวดบัญชี ปิดงวด และสิ้นปี (account period / erp_account_period / checkOpenPeriod)

ข้อควรระวัง

  • รายการที่บันทึกเอง (trans_direct = 1) จะไม่ถูกลบหรือสร้างใหม่ตอน rebuild GL หรือยกเลิกเอกสาร (doc_cancel.go:596-597)
  • period_number และ account_year ของรายการที่บันทึกเองดึงมาจาก erp_account_period (period_year) ถ้าไม่พบงวดจะใช้เดือนและปี ค.ศ. ของวันที่เอกสาร (docs.go:304-305) ดังนั้นถ้ากรอก period_year เป็น พ.ศ. ค่า account_year ก็จะเป็น พ.ศ. ด้วย (อนุมานจากโค้ด ยังไม่ได้ตรวจข้อมูลจริง) ดู ปี พ.ศ. / ค.ศ. และประเภทปี (Buddhist year / erp_option.year_type)
  • ตัวเลขเงินบันทึกเป็น numeric จากสตริงทศนิยม ไม่มี float ดู การปัดเศษ ทศนิยม และตัวเลขเงิน (Rounding & Decimal Policy)

ลิงก์

การลงบัญชี Dr/Cr มาตรฐานแยกตามชนิดเอกสาร (Standard GL Posting) · หัวสมุดรายวันทั่วไป (gl_journal) · รายการบัญชีแยกประเภท (gl_journal_detail) · ผังบัญชี และประเภทบัญชี (chart of account / gl_chart_of_account) · งวดบัญชี ปิดงวด และสิ้นปี (account period / erp_account_period / checkOpenPeriod) · ชนิดเอกสาร / รหัสเอกสาร (document type / trans_flag) · glossary-overview

ที่มาในโค้ด

  • frontend/account/tabs/transMenuMap.ts:2368-2380
  • frontend/src/config/smlMenu.json:1205, :9416, :9493
  • frontend/src/config/schemas/erpOption/tab2Gl.ts:39-45
  • backend/internal/application/process/docs.go:294-307
  • backend/internal/application/process/gl_template.go:352-354, :1044-1070, :1159
  • backend/internal/application/process/service.go:1747; stock_beginning.go:112
  • backend/internal/application/process/report_menu_gl_fa_tb.go:10-16
  • backend/internal/application/process/workflow.go:478-479; doc_cancel.go:596-597