230 lines
11 KiB
Markdown
230 lines
11 KiB
Markdown
---
|
|
title: "Kits"
|
|
type: concept
|
|
sources:
|
|
- areas/ERP/masters/kit.md
|
|
- areas/ERP/shipping/wor.md
|
|
- areas/ERP/shipping/wof.md
|
|
- areas/ERP/notifications/kst.md
|
|
- areas/ERP/notifications/unk.md
|
|
- custom/analyse_fonctionnelle.md
|
|
- sources/archives/13_Gestion_KIT.md
|
|
related:
|
|
- concepts/product-item.md
|
|
- concepts/stock.md
|
|
- concepts/order-outbound.md
|
|
- concepts/erp-interface.md
|
|
- modules/manufacturing.md
|
|
last_compiled: "2026-04-17"
|
|
---
|
|
|
|
# Kits
|
|
|
|
## Overview
|
|
|
|
A **kit** is an article resulting from the assembly of several component articles. In Easy WMS, kits represent pre-assembled or on-demand assembled products that allow fulfilling a single order line by collecting multiple component items. The kit concept is distinct from the [[manufacturing]] module (which handles raw material → finished goods); kits operate at the finished goods + components level.
|
|
|
|
ERP integration sends kit definitions via the **KIT** message. Individual components must already exist as items in the WMS.
|
|
|
|
A kit record consists of:
|
|
- **Kit code** — the item code of the assembled article
|
|
- **Component 1..N** — each component's item code + required quantity
|
|
|
|
Kits can be configured with or without physical assembly.
|
|
|
|
> ⚠️ **Profile requirement** — an article can only be configured as a kit if its logistic profile carries the **`Version`** logistic attribute. Otherwise the activation fails with a profile-mismatch error and the item must be reassigned to a profile that has `Version` and a reception control method.
|
|
|
|
## Creating a kit article (SmartUI)
|
|
|
|
From `Données Principales → Kit` :
|
|
|
|
1. Kit article + owner.
|
|
2. Kit **version** (must be a value permitted by the logistic profile).
|
|
3. Base unit of measure.
|
|
4. Assembled or not.
|
|
5. If assembled : on-demand assembly allowed ?
|
|
|
|
Add components with **"Ajouter composant"** : item, quantity, main component.
|
|
|
|
---
|
|
|
|
## Types
|
|
|
|
### 1. Kit without assembly (no mounting)
|
|
|
|
The kit article has **assembled = NO**. When a shipping order requests a kit, the WMS splits picking into separate tasks — one per component — without any physical assembly step. The kit is "assembled" implicitly by delivering all components.
|
|
|
|
**Example**: A "Garden Set" kit containing 1 table + 4 chairs: picking generates two tasks (table pick, chairs pick). The final delivery is the two components together.
|
|
|
|
### 2. Kit with assembly (mounting required)
|
|
|
|
The kit article has **assembled = YES**. A physical work order is required: components are picked and brought to an assembly zone, the kit is built, and the resulting kit item is added to stock.
|
|
|
|
**Sub-type — on-demand assembly** (`assembled = YES`, `assembly_on_demand = YES`): the assembly can be triggered by a shipping order when kit stock is zero, without a pre-existing work order. Used when the ERP can create work orders autonomously.
|
|
|
|
**Sub-type — ERP-driven assembly** (`assembled = YES`, `assembly_on_demand = NO`): the assembly is only triggered by a Work Order (WOR) from the ERP or a manually created order. No automatic kit fabrication request is generated when stock is insufficient.
|
|
|
|
### SAGE 100C Connector — Nomenclature types
|
|
|
|
When integrated with SAGE 100C, EasyWMS maps SAGE nomenclature types to kit configurations:
|
|
|
|
| SAGE type | EasyWMS config | Notes |
|
|
|-----------|---------------|-------|
|
|
| **Fabrication** | assembled=YES, on_demand=NO | Can be inventoried; can appear in PO; requires MO from SAGE |
|
|
| **Commercial/Composed** | assembled=NO, on_demand=NO | Cannot be inventoried; cannot appear in PO; **no kit stock in WMS** |
|
|
| **Linked article** | Imported as simple item | Handled as two independent items in WMS |
|
|
|
|
> **Warning**: For Commercial/Composed kits, no WMS stock of the kit article should exist. SAGE tracks only components.
|
|
|
|
---
|
|
|
|
## Lifecycle
|
|
|
|
### Kit Assembly (Kitting)
|
|
|
|
```
|
|
ERP sends WOR → WMS creates work order
|
|
→ WMS generates picking tasks for each component
|
|
→ Operator picks components to assembly zone
|
|
→ Assembly confirmed (components consumed, kit created in stock)
|
|
→ WMS sends WOF to ERP (only if WOR came from ERP)
|
|
→ If manual/manual WO: WMS sends KST to ERP
|
|
```
|
|
|
|
**Detailed process (TRF)**:
|
|
1. ERP sends `WOR` (or manager creates order manually in WMS)
|
|
2. WMS generates picking tasks for each component to the assembly zone
|
|
3. All components arrive at the assembly zone
|
|
4. Operator scans and confirms assembly on TRF
|
|
5. Component stock automatically decremented; kit stock created
|
|
6. Kit returned to storage — available for shipping orders
|
|
7. `WOF` sent to ERP at work order close or cancellation (only if originated from ERP)
|
|
8. If work order was created manually: `KST` sent to ERP to notify consumed and created stock
|
|
|
|
> **Warning**: If component stock is insufficient, EasyWMS does NOT automatically request kit fabrication.
|
|
|
|
### Kit Disassembly (De-kitting)
|
|
|
|
```
|
|
ERP sends WOR (disassembly) → WMS creates work order
|
|
→ WMS generates picking tasks to bring kits to assembly zone
|
|
→ Operator disassembles kits
|
|
→ Kit stock decremented, component stocks incremented
|
|
→ WMS sends WOF to ERP (if WOR from ERP)
|
|
→ If manual: WMS sends UNK to ERP
|
|
```
|
|
|
|
**Detailed process**:
|
|
1. ERP sends `WOR` (disassembly type) or manager creates manually
|
|
2. WMS generates picking tasks for kit items to assembly zone
|
|
3. Operator disassembles kits at the zone
|
|
4. Kit stock decremented; each component's stock incremented
|
|
5. Components returned to storage — available for picking
|
|
6. `WOF` sent to ERP at close/cancellation (only if ERP-originated)
|
|
7. If manual: `UNK` sent to ERP to notify consumed (kits) and created (components) stock
|
|
|
|
---
|
|
|
|
## Work Order Lifecycle — Creation, Modification, Cancellation
|
|
|
|
### Creation modes
|
|
|
|
| Mode | Description |
|
|
|---|---|
|
|
| **From ERP** | `WOR` file — Work Order created with status **En attente** ; `WOF` sent at close/cancel |
|
|
| **Manual (SmartUI)** | Menu `Ordres de travail → Ordres de travail` — `KST` sent at close |
|
|
| **Manual (RFT)** | Menu `Kits → Demande de composants` — WO created **and released automatically**. ⚠️ **No ERP feedback** — neither `KST` nor `WOF` is generated |
|
|
| **Automatic** | Requires `Montage sur demande = OUI` — triggered at integration of an outbound order containing a kit shortage |
|
|
|
|
### Modifications allowed, by status
|
|
|
|
| Status | Allowed modifications |
|
|
|---|---|
|
|
| En attente | Every field |
|
|
| Libéré | Quantity + priority only |
|
|
| En cours (≥ 1 kit assembled) | Quantity (must remain ≥ already assembled) + priority |
|
|
| Annulation | Only if **no** kit has been assembled yet |
|
|
|
|
## Supply & Assembly/Disassembly
|
|
|
|
When a WO is released, the WMS checks available stock in the kit zone. If insufficient, a **supply (replenishment) order is automatically created and released** to feed the zone.
|
|
|
|
## Closing a Work Order
|
|
|
|
- **Automatic** — once every requested kit has been assembled / disassembled.
|
|
- **Manual** — allowed at any time as long as **at least one** kit has been processed.
|
|
- On close : `WOF` is sent to the ERP (for ERP-originated and SmartUI-manual WOs ; not for RFT-manual).
|
|
|
|
## Kit Shortage Handling
|
|
|
|
| | **On-demand assembly = YES** | **On-demand assembly = NO** |
|
|
|---|---|---|
|
|
| WO creation | Automatic | Manual |
|
|
| Shortage detection | Automatic + WO created | Manual lookup via the Outbound Orders view |
|
|
| Reaction time | Immediate on order integration | Depends on how often the view is reviewed |
|
|
|
|
> ⚠️ Without `Montage sur demande`, EasyWMS emits **no automatic alert** (no notification, no email). It is the client's responsibility to regularly review the Outbound Orders view to detect kit shortages.
|
|
|
|
## Business rules
|
|
|
|
- A kit article cannot have stock in WMS if it is a "Commercial/Composed" type (no stock tracking in ERP → sync impossible)
|
|
- Multiple components per kit; each component has item code + required quantity
|
|
- Stock consumed at assembly is tracked per lot/batch for traceability purposes
|
|
- Kit articles can have their own logistic profiles (reception, shipping, putaway) like any item
|
|
- **No automatic re-order**: WMS never requests fabrication when kit stock is insufficient — this is always a manual or ERP-driven action
|
|
- Component stock shortage at kit assembly time does not block the work order — operator must resolve
|
|
- For kits with `assembled = YES`, a work order (WOR) is mandatory before assembly can begin in the WMS
|
|
|
|
---
|
|
|
|
## ERP Integration
|
|
|
|
| Message | Direction | Trigger | Content |
|
|
|---------|-----------|---------|---------|
|
|
| `KIT` | ERP → WMS | Kit master data create/update/delete | Kit code + component list |
|
|
| `WOR` | ERP → WMS | Create/update work order (assembly or disassembly) | Recipe/kit, quantity, production zone, priority |
|
|
| `WOF` | WMS → ERP | Work order closed or cancelled (ERP-originated only) | Stocks consumed and created |
|
|
| `KST` | WMS → ERP | Manual kit assembly (work order created in WMS, not ERP) | Notifies consumed components + created kit stock |
|
|
| `UNK` | WMS → ERP | Manual kit disassembly (work order created in WMS) | Notifies consumed kits + created component stock |
|
|
|
|
### Key distinctions
|
|
|
|
- `WOF` is sent **only** when the work order originated from the ERP (not manual orders)
|
|
- `KST` is sent for **manual assemblies** or manually created work orders
|
|
- `UNK` is sent for **manual disassemblies** or manually created disassembly work orders
|
|
- For ERP-originated orders: WOF covers the close/cancel notification regardless of quantities
|
|
|
|
---
|
|
|
|
## Configuration
|
|
|
|
| Field | Description |
|
|
|-------|-------------|
|
|
| **assembled** | YES = physical assembly required; NO = pick components only |
|
|
| **assembly_on_demand** | YES = auto-create assembly when kit ordered without stock; NO = WOR required |
|
|
| **Component items** | Must exist in WMS item master before kit creation |
|
|
| **Kit item** | Must have its own item record with full logistic profiles |
|
|
|
|
**Interface**: Kit management is under `Masters > Kits` in SmartUI.
|
|
|
|
---
|
|
|
|
## Common errors
|
|
|
|
| Error | Cause | Resolution |
|
|
|-------|-------|-----------|
|
|
| Kit stock out of sync with ERP | Kit is Commercial/Composed type but WMS has kit stock | Delete WMS kit stock; this type must not be tracked in WMS |
|
|
| WOF not sent to ERP | Work order was created manually in WMS | WOF only sent for ERP-originated WOR; for manual orders use KST/UNK |
|
|
| Component picking tasks not generated | Component items don't exist in WMS / insufficient component stock | Verify component item masters; receive component stock first |
|
|
| Kit not available for shipping orders | Kit requires assembly (assembled=YES) but no WOR created | Create work order manually or wait for ERP WOR |
|
|
|
|
---
|
|
|
|
## Related
|
|
|
|
- [[product-item]] — Kit articles and components are both standard items with logistic profiles
|
|
- [[stock]] — Component stock is consumed; kit stock is created at assembly
|
|
- [[order-outbound]] — Outbound orders trigger component picks (no assembly) or reference assembled kit stock
|
|
- [[erp-interface]] — KIT, WOR, WOF, KST, UNK are the ERP messages for kit management
|
|
- [[manufacturing]] — Similar concept but for raw material → finished goods transformation; manufacturing module handles additives, production stations, and automated consumption
|