Skip to content

พาเลท / License Plate (LPN)

หน้า License Plate (LPN) ใช้สำหรับติดตามพาเลท ลัง โถ และคอนเทนเนอร์เป็น "หน่วยเดียว" — ช่วยให้ย้าย แยก รวม และจัดส่งเป็นชุดได้ทั้งพาเลท

คืออะไร?

LPN (License Plate Number) คือรหัสประจำตัวของภาชนะบรรจุ (pallet / case / tote / container) ที่บรรจุสินค้าอยู่ภายใน แต่ละ LPN มีรหัสไม่ซ้ำกัน เช่น LPN-20260601-000123 และเก็บข้อมูล:

  • ประเภท — pallet, case, tote, container
  • สถานะ — active / in_transit / shipped / empty / damaged / broken_down
  • ตำแหน่ง — อยู่ที่ Location ไหน
  • แม่ / ลูก — LPN ซ้อนกันเป็นลำดับชั้นได้ (เช่น Case บนพาเลท)
  • น้ำหนัก / ปริมาตร — คำนวณจากสินค้าที่อยู่บน LPN
  • ประวัติการเคลื่อนไหว — ทุกการ build/move/split/merge/pick/ship

เมื่อไหร่ควรใช้ LPN vs สต๊อกหลวม?

สถานการณ์แนะนำ
รับของเข้าเป็นพาเลท แล้วจะเก็บทั้งพาเลท✅ ใช้ LPN
ของจำนวนน้อย เก็บใส่ชั้นวาง⛔ ใช้สต๊อกหลวม
ต้องตามรอย "พาเลทใบนี้" จนถึงปลายทาง✅ ใช้ LPN
เคลื่อนสต๊อกจำนวนมากครั้งเดียว (ทั้งพาเลท)✅ ใช้ LPN — ย้ายครั้งเดียว
Mixed SKU พาเลทเดียว✅ ใช้ LPN — เก็บความสัมพันธ์

💡 LPN เป็น optional — ระบบยังรับสต๊อกแบบหลวมตามปกติ ใช้ LPN เฉพาะที่จำเป็น

วงจรชีวิตของ LPN

Build (สร้าง) → Active

Move / Split / Merge (ทำงานปกติ) → Active

Breakdown (ยุบ) → Broken down  ⛔
Close / Ship (จัดส่ง) → Shipped    ⛔
Pick หมด → Empty

สถานะ terminal (shipped, broken_down) จะไม่ยอมให้แก้ไขใดๆ อีก

วิธีสร้างพาเลท (Build)

  1. เปิดหน้า LPN จาก sidebar
  2. กด สร้าง LPN → เลือก Warehouse + ประเภท (pallet)
  3. ระบบจะ auto-generate รหัส (เช่น LPN-20260601-000001) หรือกรอกเองได้
  4. เลือก Location ที่จะวาง LPN
  5. กด สร้าง → ได้ LPN เปล่า สถานะ active

หรือ ใช้ API POST /lpn/build เพื่อ "ตัก" สต๊อกหลวมขึ้นมาเป็น LPN ทีเดียว:

  • ระบุ stockId + qty ของแต่ละ SKU ที่จะนำขึ้นพาเลท
  • ระบบจะลดสต๊อกหลวมและสร้าง stock ใหม่ที่ผูกกับ LPN

วิธีแยกพาเลท (Split) — ตัวอย่างที่ลูกค้าถามบ่อย

โจทย์: พาเลทมี SKU A อยู่ 100 ชิ้น ต้องการเอาออก 30 ชิ้นไปวางที่ pick face

  1. กดไอคอน ✂️ Split ที่แถวของ LPN
  2. เลือก ปลายทาง:
    • 🆕 สร้าง LPN ใหม่ — ของที่หยิบออกไปจะกลายเป็น LPN ใบใหม่
    • 📦 เก็บเป็นสต๊อกหลวม — ของที่หยิบออกจะเป็นสต๊อกธรรมดา
  3. กรอกจำนวนที่จะ "ตักออก" ในแต่ละบรรทัด (ในตัวอย่างนี้คือ 30)
  4. กด แยก — ระบบจะ:
    • ลดสต๊อกบน LPN ต้นทาง 30 → เหลือ 70
    • สร้างสต๊อกใหม่ตามที่เลือก
    • บันทึก movement type=split
    • ถ้า LPN ต้นทางเหลือ 0 จะเปลี่ยนสถานะเป็น empty

วิธีรวมพาเลท (Merge)

  1. กดไอคอน 🔀 Merge ที่ LPN ต้นทาง
  2. กรอกรหัสของ LPN ปลายทาง
  3. กด รวม — ของทุกอย่างจาก LPN ต้นทางจะย้ายไปอยู่กับ LPN ปลายทาง
  4. LPN ต้นทางจะเปลี่ยนสถานะเป็น broken_down

พาเลทผสม (Mixed Pallet)

LPN ตัวเดียวสามารถมีสินค้าหลาย SKU ได้ ใช้ /lpn/build กับ items หลาย SKU พร้อมกัน

ระบบจะแยก stock row ต่อ SKU/Lot/Serial แต่ทั้งหมดผูกกับ lpnId เดียวกัน

ลำดับชั้น (Hierarchy) — Case บน Pallet

ใช้ endpoint /lpn/:id/nest เพื่อใส่ LPN ใบหนึ่งเป็นลูกของอีกใบ

Pallet LPN-...-000001
 ├── Case LPN-...-000010
 ├── Case LPN-...-000011
 └── Case LPN-...-000012

เวลา ย้าย Pallet ระบบจะ cascade ย้ายทุก Case ลูกตามไปด้วยอัตโนมัติ

การ Pick จาก LPN

  • เมื่อสร้าง Pick Task ระบบจะรู้ว่า stock ที่จะหยิบอยู่บน LPN ใด
  • ถ้าหยิบเต็ม → LPN จะ auto-update สถานะเป็น empty
  • ถ้าหยิบบางส่วน → บันทึก movement type=split ไว้บน LPN

Replenishment + LPN

เมื่อระบบสร้าง replenishment task และพบว่าต้นทางเป็น LPN เต็มใบ:

  • ถ้า qty ที่ต้องเติม = qty บน LPN → ย้ายทั้ง LPN ไปยัง pick face
  • ถ้าเติมน้อยกว่า → ทำ split — ของ partial ไปเป็นสต๊อกหลวมที่ pick face

ดูประวัติการเคลื่อนไหว

กดไอคอน 👁️ ดูรายละเอียด จะเห็น tab ประวัติการเคลื่อนไหว ที่แสดงทุก movement ที่เกิดกับ LPN นี้ (build, move, split, merge, pick, ship)

API Endpoints หลัก

Endpointคำอธิบาย
GET /lpnรายการ LPN พร้อมฟิลเตอร์
GET /lpn/by-code/:codeค้นด้วยรหัส (scanner-friendly)
POST /lpn/buildสร้าง LPN จากสต๊อกหลวม
POST /lpn/:id/moveย้ายทั้ง LPN (cascade ลูก)
POST /lpn/:id/splitแยกของออกบางส่วน
POST /lpn/:id/mergeรวมเข้ากับ LPN อื่น
POST /lpn/:id/breakdownยุบ LPN เหลือเป็นสต๊อกหลวม
POST /lpn/:id/closeปิด/จัดส่ง
POST /integration/v1/lpnสร้าง LPN ผ่าน Push API (สำหรับเครื่องพิมพ์ label)

เผยแพร่ภายใต้ Digital Outsourcing