#faq#ic#stock#cost#cost-type#lot
ตั้งประเภทต้นทุนเป็น FIFO / LOT / มาตรฐาน ได้ไหม ระบบคิดตามที่ตั้งหรือเปล่า
ตอบสั้น: ในการ์ดสินค้าเลือกประเภทต้นทุน (ic_inventory.cost_type) ได้ 6 แบบ แต่ตอนคำนวณต้นทุน ระบบใช้ถัวเฉลี่ยเคลื่อนที่กับทุกสินค้า ค่า cost_type มีผลกับเรื่องเดียวคือ ถ้าตั้งเป็น "ต้นทุน LOT กำหนดเอง" (2) ทุกบรรทัดต้องมีเลข LOT
รายละเอียด
ตัวเลือกในการ์ดสินค้า (ค่าที่เก็บ → ข้อความบนจอ)
- 0 → "1.ต้นทุนเฉลี่ย"
- 1 → "2.ต้นทุน LOT FIFO"
- 2 → "3.ต้นทุน LOT กำหนดเอง"
- 3 → "4.ต้นทุน FEFO (วันหมดอายุ)"
- 4 → "5.ต้นทุนมาตรฐาน"
- 5 → "6.ต้นทุนแบบพิเศษ 1"
สิ่งที่ระบบทำจริง
rebuildStockTxเรียกCalculateMovingAverageกับทุกสินค้าโดยไม่ได้ดูcost_type(ดู ต้นทุนสินค้าคิดแบบไหน ถัวเฉลี่ยเคลื่อนที่คำนวณยังไง)- ในโค้ดมีฟังก์ชัน
CalculateFIFOCost(FIFO แบบชั้นต้นทุน) อยู่ แต่มีที่เรียกใช้แค่ในไฟล์ทดสอบความเร็ว (stock_speed_bench_test.go) ไม่ได้ใช้ตอนบันทึกเอกสารหรือคำนวณสต็อกใหม่ - ตารางต้นทุนมาตรฐาน
ic_standard_costบันทึกได้จากการ์ดสินค้า แต่ไม่ได้ใช้ในการคำนวณต้นทุน cost_type= 2 (LOT กำหนดเอง): เอกสารในชุดที่ตรวจ lot ถ้ามีบรรทัดที่ไม่ระบุ LOT จะบันทึกไม่ได้ และขึ้นข้อความ "รหัสสินค้า ... ยังไม่บันทึกหมายเลข LOT แบบกำหนดเอง"- ขาย 44 ที่เป็นเอกสารใหม่: ถ้าสินค้าเป็น
cost_type2 และยังไม่ระบุ LOT ระบบเลือก LOT ให้อัตโนมัติ โดยเรียงตามเลข LOT จากคลังและที่เก็บของบรรทัด ถ้า LOT แรกมีไม่พอ ระบบจะแตกบรรทัดไปใช้ LOT ถัดไป (ดู สินค้ามี Serial / LOT / วันหมดอายุ ระบบตรวจอะไรให้บ้างตอนบันทึก) - รายงานข้อมูลสินค้าแสดงชื่อประเภทต้นทุนตามค่าที่เก็บไว้
ข้อควรระวัง
- ถ้าบริษัทต้องรายงานต้นทุนแบบ FIFO หรือราคามาตรฐาน ตัวเลขในระบบนี้ยังเป็นถัวเฉลี่ย การตั้ง
cost_typeไม่ได้เปลี่ยนตัวเลข - โน้ต ยอดคงเหลือและต้นทุนสินค้า (Stock Balance and Costing, rebuildStockTx) ใช้ตัวเลข
cost_typeตามระบบ KMS เดิม ซึ่งไม่ตรงกับตัวเลือกในโค้ดปัจจุบันด้านบน ให้ยึดตามโค้ด (ดู ประเภทต้นทุน ต้นทุนเฉลี่ย/LOT/FIFO (cost type / cost_type / average_cost)) - การเลือก LOT อัตโนมัติไม่ได้เรียงตามวันหมดอายุ (FEFO) แต่เรียงตามเลข LOT
ดูเพิ่ม
- ประเภทต้นทุน ต้นทุนเฉลี่ย/LOT/FIFO (cost type / cost_type / average_cost)
- ต้นทุนสินค้าคิดแบบไหน ถัวเฉลี่ยเคลื่อนที่คำนวณยังไง
- สินค้ามี Serial / LOT / วันหมดอายุ ระบบตรวจอะไรให้บ้างตอนบันทึก
- ข้อมูลสินค้า (ItemScreen)
- ต้นทุนมาตรฐานสินค้า (ic_standard_cost)
ที่มาในโค้ด
frontend/account/master/ItemScreen.tsx:2446ตัวเลือกcost_type0–5backend/internal/application/process/service.go:1187ทุกสินค้าคำนวณด้วยCalculateMovingAveragebackend/internal/application/process/service.go:355CalculateFIFOCost(ไม่มีที่เรียกใช้ใน production)backend/internal/application/process/stock_speed_bench_test.go:23ที่เรียกใช้ FIFO มีแค่ในการทดสอบbackend/internal/application/process/trans_save_rules.go:180lotMessageบังคับ LOT ของcost_type2backend/internal/application/process/trans_lot_auto.go:32autoLotsเลือก LOT ให้ขาย 44 ใหม่backend/internal/application/process/item_master.go:755บันทึกic_standard_costจากการ์ดสินค้า