# การย้ายสินค้าภายในคลัง (Move)

> **เนื้อหาที่ครอบคลุม:** ย้ายสินค้าทีละหลายรายการ (Inventory Operate > Move) · ย้ายสินค้าอย่างง่าย (Inventory Enquiry) · การเติมสินค้าอัตโนมัติ (Replenishment) · การยกเลิกเอกสาร Move
>
> **ขอบเขต:** การใช้งานผ่านหน้าเว็บเท่านั้น

# ภาพรวมการย้ายสินค้าในคลัง

การย้ายสินค้า (Move) คือการเปลี่ยนตำแหน่งจัดเก็บสินค้าจากพื้นที่หนึ่งไปยังพื้นที่อื่นภายในคลังเดียวกัน โดยระบบรองรับ **3 ช่องทาง**:

| ช่องทาง                                                              | เหมาะกับ                                                                     |
| -------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
| **จัดการสินค้าคงคลัง > ย้ายสินค้าในคลัง (Inventory Operate > Move)** | ย้ายทีละหลายรายการ, ระบุ Pallet/Carton/Lot เฉพาะเจาะจง, ทำงานเป็นชุด (Batch) |
| **สินค้าคงคลัง > ตรวจสอบสินค้าคงคลัง (Inventory Enquiry)**           | ย้ายอย่างง่ายทีละ 1 รายการ ทันที จากหน้าตรวจสอบสต็อก                         |
| **การเติมสินค้าอัตโนมัติ (Replenishment)**                           | ระบบสร้างใบงานย้ายให้อัตโนมัติ เมื่อสินค้าในพื้นที่หยิบ (Pick Face) ใกล้หมด  |

# วงจรสถานะเอกสาร Move

| สถานะ                     | ความหมาย                                   |
| ------------------------- | ------------------------------------------ |
| **OPENED (รายการใหม่)**   | สร้างเอกสารสำเร็จ — รอดำเนินการ            |
| **WAIT MOVE (รอการย้าย)** | รอเจ้าหน้าที่คลังสแกนย้ายจริงผ่าน Handheld |
| **MOVING**                | กำลังสแกนย้ายอยู่บน Handheld               |
| **COMPLETED (สำเร็จ)**    | ย้ายเสร็จสมบูรณ์ — ไม่สามารถยกเลิกได้อีก   |
| **CANCELED**              | ถูกยกเลิก                                  |


## 1. ย้ายสินค้าทีละหลายรายการผ่านการจัดการสินค้าคงคลัง (Inventory Operate > Move)

ใช้เมื่อต้องการสร้างใบงานย้ายสินค้าหลายรายการในใบเดียว หรือต้องการระบุ Pallet/Carton/Lot ที่เฉพาะเจาะจง

### 1.1 ขั้นตอนการใช้งาน

 1. หลังจากเข้าสู่ระบบเรียบร้อยแล้ว ไปที่เมนู **"จัดการสินค้าคงคลัง > ย้ายสินค้าในคลัง (Inventory Operate > Move)"**

 2. เลือก **"เพิ่มรายการใหม่ (New)"** เพื่อเข้าสู่หน้าจอระบุข้อมูลพื้นฐาน

    * หน้าจอจะแสดงข้อมูล **Storer** (กรณีลูกค้าเป็นผู้ให้บริการคลังสินค้า 3PL) และข้อมูล **คลังสินค้า (Warehouse)**

 3. เลือก **ประเภทเอกสาร (Document Type)** ที่ต้องการจากรายการที่ตั้งค่าไว้

    > 📌 หากมีการตั้งค่า **"ประเภทเอกสารตั้งต้น (Default Document Type)"** ไว้ ระบบจะเลือกให้อัตโนมัติก่อน — ยังคลิกเปลี่ยนเป็นประเภทเอกสารอื่นได้เสมอ

 4. กด **"ถัดไป (Next)"** เพื่อเข้าสู่แท็บรายการ

 5. กด **"เพิ่มรายการใหม่ (New)"** เพื่อเลือกหรือค้นหารหัสสินค้า

    * คลิกที่ช่อง **"รหัสสินค้า"** ระบบจะแสดงรายการสินค้าทั้งหมดในระบบให้เลือก พร้อมข้อมูลประกอบ:

      * **บาร์โค้ดสินค้า (SKU Barcode)**

      * **จำนวนสินค้าพร้อมใช้คงคลัง (Available QTY)**

      * **หน่วยของสินค้า (Pack Code)**

    > 📌 ข้อมูลเหล่านี้ช่วยตรวจสอบความถูกต้อง โดยเฉพาะกรณีสินค้า 1 รหัสมีบาร์โค้ดมากกว่า 1 รหัส หรือต้องการย้ายสินค้าที่ Available Qty = 0

 6. *(ไม่บังคับ)* ระบุข้อมูลเฉพาะเจาะจง หากต้องการย้ายแบบจำกัดตัวเลือก:

    * **หมายเลขพาเลท (Pallet ID)**

    * **หมายเลขกล่อง (Carton ID)**

    * **หมายเลขล็อต (Lot No)**

 7. เลือก **"จากพื้นที่จัดเก็บที่คาดว่าจะย้าย (Expect from location)"** — ระบบเลื่อนตัวเลือกพื้นที่จัดเก็บที่เปิดใช้งานอยู่ทั้งหมดมาให้เลือก

 8. ตรวจสอบคอลัมน์ **"จากจำนวนสินค้าปัจจุบัน"** — ระบบดึง Available Qty มาแสดงอัตโนมัติทันทีที่เลือก From Location (แก้ไขไม่ได้)

 9. เลือก **"ไปยังพื้นที่จัดเก็บที่คาดว่าจะย้าย (Expect to location)"** — ระบบเลื่อนตัวเลือกพื้นที่จัดเก็บมาให้เลือก

10. ระบุจำนวนสินค้าที่ต้องการย้ายในคอลัมน์ **"จำนวน"**

11. กด **"บันทึก"** มุมบนขวามือ เพื่อสร้างเอกสารย้าย

12. *(ทำซ้ำข้อ 5–11 หากต้องการเพิ่มรายการย้ายสินค้าอื่นในใบงานเดียวกัน)*

13. เลือกวิธีดำเนินการต่อ:

    * กด **"รอย้าย (Moving)"** หากต้องการให้เจ้าหน้าที่คลังสแกนย้ายจริงผ่าน Handheld

    * กด **"ดำเนินการ (Process)"** หากต้องการย้ายแค่ข้อมูลสต็อกทันที โดยไม่ต้องสแกนจริง (เช่น กรณีรวบรวมสต็อกสูญหายก่อนย้ายเลขสต็อกในระบบ)

### 1.2 กรองค่า "จากจำนวนสินค้าปัจจุบัน" ตามข้อมูลที่ระบุ

เมื่อระบุข้อมูลเฉพาะเจาะจงเพิ่มในขั้นตอนที่ 6 ระบบจะกรองยอด "จากจำนวนสินค้าปัจจุบัน" ให้แคบลงตามนั้น:

| ระบุข้อมูลเพิ่ม  | ผลลัพธ์                                                |
| ---------------- | ------------------------------------------------------ |
| **Pallet ID**    | กรองเหลือเฉพาะ Qty ของ Pallet นั้นใน Location ที่เลือก |
| **SKU**          | กรองเหลือเฉพาะ Qty ของ SKU นั้นใน Location ที่เลือก    |
| **Lot No**       | กรองเหลือเฉพาะ Qty ของ Lot นั้นใน Location ที่เลือก    |
| *(ไม่ระบุเพิ่ม)* | แสดง Available Qty ทั้งหมดของ Location ที่เลือก        |

### 1.3 ผลลัพธ์ที่ถูกต้องหลังบันทึกสำเร็จ

* ระบบสร้างเอกสาร Move สถานะ **OPENED**

* หน้า Inventory Enquiry แสดง **Move Status, Move ID, Move Qty** ของสินค้านั้น

### **ข้อผิดพลาดที่พบบ่อย**

> ⚠️ **ห้ามเลือก From Location และ To Location เป็นที่เดียวกัน**
>
> ⚠️ **ระบุจำนวนเกิน Available Qty:** ระบบแจ้ง Error และไม่อนุญาตให้บันทึกเอกสาร
>
> ⚠️ **From Location ที่เลือกมีสต็อกเป็น 0:** "จากจำนวนสินค้าปัจจุบัน" แสดง 0 และไม่สามารถสร้างใบงานย้ายได้

---

## 2. ย้ายสินค้าอย่างง่าย ผ่านเมนูตรวจสอบสินค้าคงคลัง (Inventory Enquiry)

ใช้เมื่อต้องการย้ายสินค้าทีละ 1 รายการอย่างรวดเร็ว โดยไม่ต้องสร้างใบงานแยก — ย้ายเสร็จทันทีไม่ต้องผ่าน Handheld

### ขั้นตอนการใช้งาน

1. หลังจากเข้าสู่ระบบเรียบร้อยแล้ว ไปที่เมนู **"สินค้าคงคลัง > ตรวจสอบสินค้าคงคลัง (Inventory > Enquiry)"**

2. ค้นหา/เลือกรายการสินค้าคงคลังที่ต้องการย้ายไปยังพื้นที่จัดเก็บใหม่

3. นำเมาส์วางที่บรรทัดสินค้ารายการที่ต้องการ — ระบบแสดงตัวเลือกการทำงานเพิ่มเติม

4. กด **"ย้ายพื้นที่จัดเก็บ"** — ระบบเปิด Pop-up แสดงข้อมูลเบื้องต้นสำหรับการย้าย

   * หากเป็นสต็อก**สินค้าดี** → จำนวนที่ย้ายได้แสดงที่ **"ข้อมูลเบื้องต้น > สินค้าดี"**

   * หากเป็นสต็อก**สินค้าพัก** → จำนวนที่ย้ายได้แสดงที่ **"ข้อมูลเบื้องต้น > สินค้าพัก"**

5. เลือก **ประเภทเอกสาร (Document Type)** ที่ต้องการ

   > 📌 หากมีการตั้งค่า "ประเภทเอกสารตั้งต้น (Default Document Type)" ไว้ ระบบจะเลือกให้อัตโนมัติก่อน — ยังเปลี่ยนได้เสมอ

6. ระบุจำนวนสินค้าที่ต้องการย้าย

   > 📌 ระบบตั้งต้นจำนวนย้ายให้เท่ากับจำนวนสต็อกทั้งหมดที่ย้ายได้ — แก้ไขให้น้อยลงได้

7. เลือก **"ไปยังพื้นที่จัดเก็บ (To Location)"** จากรายการพื้นที่จัดเก็บที่เปิดใช้งานอยู่

8. กด **"ตกลง"**

### ผลลัพธ์หลังกด "ตกลง"

| กรณี                               | ผลลัพธ์                                                                 |
| ---------------------------------- | ----------------------------------------------------------------------- |
| **ย้ายเต็มจำนวน** ที่สามารถย้ายได้ | รายการสต็อกเดิมเปลี่ยนตำแหน่งจัดเก็บทันที                               |
| **ย้ายบางส่วน (Partial)**          | ระบบสร้างรายการสินค้าคงคลังใหม่ 1 บรรทัดที่ Location ใหม่ แยกจากแถวเดิม |

> ⚠️ **ข้อจำกัดการย้ายสินค้าพัก:** ย้ายได้เฉพาะกรณีที่ **เหตุผลการพัก (Hold Reason)** นั้นเปิดอนุญาตให้ย้าย (Allow Move) เท่านั้น

---

## 3. การเติมสินค้าอัตโนมัติ (Replenishment)

ระบบที่เติมเต็มสินค้าในพื้นที่หยิบ (Pick Face) โดยอัตโนมัติ เพื่อลดภาระเจ้าหน้าที่ในการตรวจสอบสต็อกขั้นต่ำเอง และเพิ่มประสิทธิภาพให้มีสินค้าพร้อมหยิบตลอดเวลา

ระบบจะตรวจสอบจำนวนสินค้าขั้นต่ำใน Pick Face และสร้างใบงานย้ายสินค้า (Move) รอไว้ พร้อมแจ้งเตือนไปยัง Handheld ให้อัตโนมัติ ก่อนสินค้าใน Pick Face จะหมด

### ขั้นตอนการทำงานของระบบ — แบ่งเป็น 3 ส่วน

| ส่วน                         | หน้าที่                                                              |
| ---------------------------- | -------------------------------------------------------------------- |
| **1. Utilities**             | เปิด Module และตั้งค่าให้ระบบเริ่มทำงาน                              |
| **2. WMS (Location Master)** | ตั้งค่า Pick Face ให้ระบบนำ Inventory ไปตรวจสอบจุดเติมทุก 15 นาที    |
| **3. Handheld**              | แจ้งเตือนผู้ใช้งานที่ตั้งค่าไว้ ให้ไปสแกนย้ายสินค้าที่เมนู Scan Move |

### ขั้นตอนที่ 1: เปิดใช้งานระบบ Replenishment (Utilities)

 1. เข้าไปที่เมนู **"Utilities"**

 2. เลือก **"สร้าง Rule"**

 3. เลือก **"การเติมสินค้า"**

 4. กรอกรายละเอียด: ชื่อกฎ, รหัสคลังสินค้า และตรวจสอบ Storer ที่ต้องการใช้กฎให้ถูกต้อง

 5. เลือก **Trigger** เพื่อให้ Replenishment อ้างอิงข้อมูลในการเติมสินค้าจากแหล่งที่ต้องการ

 6. กด **Action** (ปุ่มบวกด้านล่าง)

 7. เลือก Action ที่ต้องการให้ Replenishment ทำการเติมสินค้า:

    * **ย้ายสินค้า:** สร้างใบงานย้ายจากพื้นที่จัดเก็บที่เตรียมการเติม (Reserved Face) มายัง Pick Face ที่ตั้งค่าไว้ อัตโนมัติ

 8. กด **"บันทึก"** เมื่อเลือก Action เรียบร้อยแล้ว

 9. กด **"เปิดใช้งานกฎ"** เพื่อให้ Rule นี้ถูกเรียกไปใช้งาน → กด **"บันทึก"** ด้านล่างอีกครั้งเพื่อสร้างกฎให้เสร็จสิ้น

10. กลับมาหน้ารายการ Rule บน Utilities — กฎที่สร้างจะแสดงในรายการเรียบร้อย

### ขั้นตอนที่ 2: ตั้งค่าใน Master Minimum Stock & Strategy

#### การตั้งค่า Minimum Stock ใน Location Master

1. เข้าไปที่เมนู **"พื้นที่จัดเก็บ (Location)"**

2. เลือกพื้นที่จัดเก็บที่เป็น **Pick Face** และต้องการตั้งค่าการเติมสินค้า

3. กด **เปิด** ที่ Pick Face และเลือก **Location Area = Picking Area** เพื่อกำหนดเป็นพื้นที่สำหรับเติมสินค้า

   > 💡 **Tips:** หากกด **ปิด** ที่ Pick Face ระบบจะมองว่า Location นี้คือ **Reserved Face** (พื้นที่สำรอง ไม่ใช่จุดหยิบ)

4. กำหนดค่าเงื่อนไขการเติมสินค้า:

   | ค่า                             | ความหมาย                                                                        |
   | ------------------------------- | ------------------------------------------------------------------------------- |
   | **Value Max (CBM)**             | พื้นที่นี้สามารถจัดเก็บได้ทั้งหมดกี่ CBM                                        |
   | **Value Fill up when Less (%)** | ถ้า Location นั้นมีสินค้าเหลือน้อยกว่า X% ของ Value Max ระบบจะสร้างใบงานย้ายให้ |

5. กด **"บันทึก"** เพื่อจบการตั้งค่าการเติมสินค้าอัตโนมัติของพื้นที่จัดเก็บนี้

   > 📌 หากต้องการตั้งค่าผ่าน Import ให้กรอก 2 คอลัมน์ด้านหลังในไฟล์ (Value Max และ Value Fill up when Less)

#### การตั้งค่า Replenishment Pick Strategy ใน SKU Master

1. เข้าไปที่เมนู **"Master SKU"**

2. เลือก SKU ที่ต้องการแก้ไข

3. คลิก Tab **"Condition"**

4. กำหนด **Replenishment Strategy** ตามที่ต้องการ (เช่น FIFO)

> 📌 **Replenishment Strategy คืออะไร:** Picking Logic ที่ใช้เฉพาะกับงานสั่งย้ายไปเติมสินค้าจาก Module Replenishment ซึ่งอาจแตกต่างจาก Picking Logic ของงานขาย (Shipment) — จึงต้องกำหนดแยกออกมา

### ขั้นตอนที่ 3: จัดส่ง, รับแจ้งเตือนการย้าย และทำการย้าย

**สิ่งที่ต้องทราบก่อนใช้งาน:**

1. ระบบจะทำงานตรวจสอบทุก **15 นาที** — หลังตั้งค่าครบขั้นที่ 1 และ 2 ต้องรอ 15 นาทีระบบจึงเริ่มทำงาน

2. การคำนวณของระบบเป็นหน่วย **CBM** — สินค้าใน Stock ต้องกำหนด CBM ให้ถูกต้องก่อนใช้งาน Module นี้

3. กรณีไม่เหลือสินค้าใน Pick Face แล้ว ระบบจะหา Stock จาก SKU ล่าสุดที่เคยอยู่ใน Pick Face นั้น

**กระบวนการทำงาน:**

1. เริ่มทำการส่งสินค้าจาก Pick Face ออกไป จนถึงจุดต่ำสุดที่ตั้งค่าไว้

2. เมื่อสินค้าในพื้นที่จัดเก็บเหลือน้อยกว่าจำนวน/เปอร์เซ็นต์ที่ตั้งค่าไว้ → ระบบสร้างใบงานย้ายจาก **Reserve Face** ที่เข้าเงื่อนไขมาที่ Pick Face นั้นอัตโนมัติ พร้อมส่ง Notification ไปยังบุคคลที่ตั้งค่าไว้ใน Utilities

3. เจ้าหน้าที่ไปที่ **Handheld > Scan Move** เพื่อทำการย้ายสินค้าจริง

   * ระบบระบุ **Reserve Face** ที่ต้องไปหยิบ และ **Location Pick Face** ที่ต้องไปเติม ใน Scan Move Job (Expect Location From / Expect Location To)

### ตัวอย่างโจทย์การคำนวณ Replenishment

| ข้อมูลตั้งต้น                    | ค่า                    |
| -------------------------------- | ---------------------- |
| SKU-REPLEN-01 (ขนาด 10×10×10 cm) | 0.001 CBM ต่อชิ้น      |
| SKU-REPLEN-02 (ขนาด 15×15×15 cm) | 0.003375 CBM ต่อชิ้น   |
| Micro Rack (ขนาด 30×60×40 cm)    | 1 ช่องเก็บ = 0.072 CBM |

**การคำนวณความจุสูงสุดต่อช่อง:**

* SKU-REPLEN-01: 0.072 / 0.001 = สูงสุด **72 EA** ต่อ 1 ช่อง

* SKU-REPLEN-02: 0.072 / 0.003375 = สูงสุด **21.3 (ปัดเป็น 21) EA** ต่อ 1 ช่อง

**สถานการณ์ตัวอย่าง:**

1. รับสินค้าทิ้ง 2 SKU × 2 Lot (LOT-A, B, C, D ตามลำดับ ที่วันรับต่างกัน) เก็บ SKU ละ 2 Location อย่างละ 1,000 EA/Lot

2. ย้าย SKU-REPLEN-01 LOT-A (FIFO ก่อน) ไปยัง Pick Face จำนวน 72 EA (ย้ายเองผ่าน Move Inventory)

3. ย้าย SKU-REPLEN-02 LOT-C (FIFO ก่อน) ไปยัง Pick Face จำนวน 21 EA (ย้ายเองผ่าน Move Inventory)

4. สร้าง Shipment จัดส่งสินค้าทั้ง 2 SKU จาก Pick Face ออกไป จนเหลือต่ำกว่า 20%:

   * SKU-REPLEN-01: 20% ของ 72 = 14.4 → ปัดลงเหลือ **14 EA** → ต้อง Shipment ออก **58 EA**

   * SKU-REPLEN-02: 20% ของ 21 = 4.2 → ปัดลงเหลือ **4 EA** → ต้อง Shipment ออก **17 EA**

**ผลลัพธ์ที่ระบบควรทำ:**

ระบบ Replenishment ควรสร้าง **Job Move เพียง 1 ใบ** ผ่าน Handheld โดยตรวจเจอทั้ง 2 Location Pick Face ที่เก็บ SKU ทั้ง 2 ตัวอยู่ และให้สามารถย้ายสินค้าทั้ง 2 SKU ได้ในรอบเดียวกัน

### วิธีตรวจสอบหากระบบยังไม่ทำงาน

1. กลับไปที่หน้า **Replenishment**

2. กดที่แท็ป **"ประวัติ"**

3. ตรวจสอบสถานะการทำงาน:

| สถานะ       | ความหมาย                                            |
| ----------- | --------------------------------------------------- |
| **Success** | ระบบสร้าง Job Move สำเร็จแล้ว                       |
| **Fail**    | ระบบทำงานผิดปกติ — ให้แจ้ง App Support เพื่อตรวจสอบ |

---

## 4. การยกเลิกเอกสาร Move

> ⚠️ **ขอบเขต:** เฉพาะการยกเลิกผ่านหน้าเว็บเท่านั้น (ไม่ครอบคลุมการยกเลิกผ่าน Handheld)

### ขั้นตอนการยกเลิก

1. ไปที่เมนู **"จัดการสินค้าคงคลัง > ย้ายสินค้าในคลัง (Inventory Operate > Move)"**

2. Hover ที่เอกสาร Move ที่ต้องการยกเลิก

3. เลือก **"Cancel"**

4. ยืนยันการยกเลิก

5. ตรวจสอบสถานะเอกสารที่เปลี่ยนเป็น **CANCELED**

6. *(ไม่บังคับ)* ไปที่ **Inventory Enquiry** เพื่อตรวจสอบว่า Move Status, Move ID, Move Qty หายไปแล้ว

### สถานะที่ยกเลิกได้ และผลลัพธ์

| สถานะก่อนยกเลิก | ยกเลิกได้ไหม | ผลลัพธ์หลังยกเลิก                                                                 |
| --------------- | ------------ | --------------------------------------------------------------------------------- |
| **OPENED**      | ✅ ได้        | สถานะ → CANCELED, ข้อมูล Move ใน Inventory Enquiry หายไป ยอดสินค้ากลับสู่สภาพปกติ |
| **WAIT MOVE**   | ✅ ได้        | สถานะ → CANCELED, ข้อมูล Move หายไป ยอดจองย้ายคืนกลับสู่สภาพปกติ                  |
| **MOVING**      | ✅ ได้        | สถานะ → CANCELED, ข้อมูล Move หายไป ยอดจองย้ายคืนกลับสู่สภาพปกติ                  |
| **COMPLETED**   | ❌ ไม่ได้     | ไม่มีตัวเลือก Cancel ให้กดเลย                                                     |

---

## 5. เปรียบเทียบ 2 ช่องทางการย้ายสินค้า (Manual)

| รายการ                       | Inventory Operate > Move                        | Inventory Enquiry                              |
| ---------------------------- | ----------------------------------------------- | ---------------------------------------------- |
| จำนวนรายการต่อครั้ง          | หลายรายการในใบเดียว                             | ทีละ 1 รายการ                                  |
| ระบุ Pallet/Carton/Lot เฉพาะ | ✅ ได้                                           | ❌ ไม่ได้ (ย้ายตามรายการสต็อกที่เลือกไว้)       |
| ผลลัพธ์หลังบันทึก            | สร้างใบงาน (OPENED) รอดำเนินการ                 | เปลี่ยนตำแหน่งทันที หรือสร้างแถวใหม่ (Partial) |
| ต้องผ่าน Handheld หรือไม่    | เลือกได้ (Moving → Handheld หรือ Process ทันที) | ไม่ต้อง — เสร็จทันทีที่กด "ตกลง"               |
| เหมาะกับ                     | งานย้ายจำนวนมาก/วางแผนล่วงหน้า                  | งานย้ายเร่งด่วนทีละจุด                         |


