#glossary#ic#stock#cost
ยอดคงเหลือสินค้า / ต้นทุนเฉลี่ย
ในระบบนี้คืออะไร
- ยอดคงเหลือและต้นทุนเป็นข้อมูล derived ระบบคำนวณใหม่ทุกครั้งจากแถวดิบใน
ic_trans_detailด้วยbig.Ratไม่มี float (service.go:1-5) - ทุกครั้งที่บันทึกเอกสาร ระบบ rebuild เฉพาะสินค้าที่เอกสารนั้นแตะ (
rebuildTransDerived,trans.go:591-600) และมีเมนู "คำนวณยอดสต๊อกใหม่" (menu_ic_recalc, smlMenu.json:2581) เรียกPOST /process/stock/rebuild(router.go:130)
คอลัมน์
| คอลัมน์ | ความหมายจากโค้ด |
|---|---|
ic_inventory.balance_qty |
Σ qty × calc_flag × (stand_value/divide_value) คือยอดในหน่วยนับหลัก (service.go:1066-1072) |
ic_inventory.balance_qty_2 |
Σ qty_2 × calc_flag (:1071) ดู หน่วยนับ ตัวตั้ง/ตัวหาร และหน่วยนับขนาน (unit / stand_value / divide_value / unit_type) |
ic_trans_detail.average_cost, sum_of_cost |
ต้นทุนต่อหน่วยและต้นทุนรวมของบรรทัด คำนวณแบบต้นทุนเฉลี่ยเคลื่อนที่ ปัดเศษ HALF_UP (CalculateMovingAverage, service.go:185-188) |
ic_inventory.average_cost |
ต้นทุนเฉลี่ยล่าสุดของสินค้า (service.go:545-547) |
sum_of_cost_fix |
ต้นทุนที่ล็อกไว้ (Ctrl+F9 lock cost) ดู ประเภทต้นทุน ต้นทุนเฉลี่ย/LOT/FIFO (cost type / cost_type / average_cost) |
แถวที่นับเป็นสต็อก (stockRowsSQL, stock_rebuild.go:15-22)
- เฉพาะแถวที่
last_status = 0ไม่ใช่สำเนาเอกสาร (is_doc_copy) และมีitem_type0, 4 หรือ 6 - flag: 12, 310, 14, 311, 16, 44, 46, 48, 54-73, 521, 522, 523
- ไม่นับ 46 เมื่อ inquiry ≠ 0, ไม่นับ 48 เมื่อ inquiry > 1 และไม่นับ 44 ที่มาจาก POS แล้วมี
doc_ref - กระทบเฉพาะมูลค่า ไม่กระทบจำนวน: 14, 16, 311 ที่ inquiry 1 หรือ 3 (ลดหนี้หรือเพิ่มหนี้ราคา) (
stockValueOnlySQL,:24-26) จึงถูกตัดออกจากยอดจำนวน (stockBalancePredicate,:29) ดู ประเภทรายการ เงินสด/เงินเชื่อ (inquiry type / inquiry_type) - ยอดคงเหลือไม่คำนวณให้สินค้า
item_type 5(service.go:1088) ดู ประเภทสินค้า และประเภทภาษีของสินค้า (item type / item_type / tax_type)
หน้าจอสอบถามและรายงาน (smlMenu.json)
ยอดคงเหลือสินค้า (:2621) · ยอดคงเหลือสินค้าตามคลัง (:2634) · ยอดคงเหลือสินค้าตามที่เก็บ (:2647) · ยอดคงเหลือสินค้าตาม LOT (:2660) · รายงานสรุปยอดสินค้าค้างส่ง menu_ic_report_sale_remain (:3393) · รายงานสรุปยอดสินค้าค้างรับ menu_report_accrued_in_qty (:3406)
ข้อควรระวัง
- ห้ามแก้
balance_qtyหรือaverage_costตรงๆ เพราะ rebuild ครั้งถัดไปจะเขียนทับ ถ้าตัวเลขผิดให้แก้ที่เอกสาร - ยอดตามคลังและที่เก็บมาจากรายงาน ไม่ได้เก็บไว้ใน
ic_inventoryดู คลังสินค้าและที่เก็บ (warehouse / shelf / wh_code / shelf_code) calc_flagไม่ใช่ตัวกรองเพียงอย่างเดียว ดู ชนิดเอกสาร / รหัสเอกสาร (document type / trans_flag)
ลิงก์
การคำนวณยอดสต็อกคงเหลือใหม่ (Stock Balance Rebuild) · ทะเบียนสินค้า (ic_inventory) · รายการสินค้าในเอกสาร (ic_trans_detail) · ประเภทต้นทุน ต้นทุนเฉลี่ย/LOT/FIFO (cost type / cost_type / average_cost) · เลข LOT, Serial Number และวันหมดอายุ (lot_number_1 / serial_number / date_expire) · glossary-overview
ที่มาในโค้ด
backend/internal/application/process/service.go:1-5,:185-188,:545-547,:1066-1072,:1088backend/internal/application/process/stock_rebuild.go:15-29backend/internal/application/process/trans.go:591-600backend/internal/adapter/inbound/http/router.go:130frontend/src/config/smlMenu.json:2581,:2621,:2634,:2647,:2660,:3393,:3406