Files
mcp-wms-wiki/wiki/concepts/prepackaging.md
T
arthur 9ce6ae37be lint(standard): corrections completes mode standard
- Em dashes: 1712 remplaces par tirets simples (86 fichiers + _index.md,
  en-tete section Limagrain conserve)
- Checklists: 24 '- [ ]' -> '- ☐' (3 pages operations, plus de todos Obsidian)
- Ancres: 33 reparees (slugs GitHub + ancres HTML <a id> reconnues),
  1 reciblee (manuel de reten)
- related: tenseflow -> tense-flow, pie -> mechanical-elements,
  group.md retire (doublon shipping)
- Registre: compteur global 122 -> 131 pages
- Rapport racine _lint_report.md mis a jour (scan v2 + re-scan final: 0 anomalie)
- Aucun fichier limagrain/ modifie (cloisonnement)
2026-07-20 13:01:21 +02:00

116 lines
5.8 KiB
Markdown

---
title: "Prepackaging (Pré-emballage / Précolisage)"
type: concept
sources:
- areas/shipping/shipping_admin/prepackaging_config.md
- areas/shipping/shipping_admin/prepackaging_erp.md
- sources/archives/04_Gestion_preemballage_precolisage.md
related:
- concepts/shipping.md
- concepts/order-outbound.md
- concepts/container.md
- concepts/erp-interface.md
last_compiled: "2026-04-17"
---
# Prepackaging (Pré-emballage / Précolisage)
## Overview
Prepackaging (FR : *pré-emballage* ou *précolisage*) calculates the number and type of client containers required to fulfill a shipping order **before preparation starts**, with the goal of optimizing container usage (minimize parcels, or maximize filling) and guiding operators/packers on the target packing layout.
Two views drive prepackaging:
- **Configuration → Stratégie de préemballage** : strategy definition
- **Ordre de sortie → Lignes de pré emballage** : per-order view of the containers the strategy produced
## Strategy Configuration
A prepackaging strategy has the following fields:
| Field | Values | Description |
|---|---|---|
| **Code** | free text | Strategy name |
| **Type de commande** | Fusion / Ordre de départ sans envoi / Vague | Which outbound grouping this strategy applies to |
| **Processus** | Emballage / Préparation | When it is applied - at packing station or during picking |
| **Type de précolisage** | Calculé par EasyWMS / Calculé par l'opérateur / Calculé par l'ERP | Who computes the container split |
| **Mode de travail** | Strict / Pas strict | Strict = operator cannot deviate from the plan ; non-strict = operator can override |
| **Logique de pré emballage** | Nombre minimum de colis / Volume minimum | "Fewest parcels" picks the largest container possible ; "Minimum volume" picks the smallest container possible |
> ⚠️ The strategy must be **activated** after configuration, otherwise it is ignored.
**Container types** are associated from EasyS (either reusing existing container types or creating new ones dedicated to prepackaging).
## Prerequisites (when EasyWMS computes the plan)
For `Calculé par EasyWMS` to work:
1. **Container types** must be configured in EasyS and associated to equipments.
2. **Item dimensions and weight** must be populated (in conversions).
3. **Mixing restrictions** between items must be defined - by item, by family, or by type.
## Calculation by ERP (SOR02)
When `Calculé par l'ERP`, the outbound order message carries a `<PrepackagingConfiguration>` block inside `SOR02`, including the pre-computed container(s) and the per-line quantities to pack in each.
```xml
<PrepackagingConfiguration>
<Operation>S</Operation>
<PrepackagingProcess>Picking</PrepackagingProcess>
<PrepackagingWorkingMode>Strict</PrepackagingWorkingMode>
<PrepackagingContainers transactional="true" complete="false">
<PrepackagingContainer>
<Operation>S</Operation>
<PrepOrderContainer>0203214687</PrepOrderContainer>
<PrepContainerType>CartonS</PrepContainerType>
<PrepackagingLines>
<PrepackagingLine>
<Operation>S</Operation>
<OrderLineNumber>1</OrderLineNumber>
<Quantity>2</Quantity>
</PrepackagingLine>
</PrepackagingLines>
</PrepackagingContainer>
</PrepackagingContainers>
</PrepackagingConfiguration>
```
Keys in this block:
- `PrepackagingProcess` - `Picking` or `Packing`
- `PrepackagingWorkingMode` - `Strict` / `NotStrict`
- `PrepOrderContainer` - client container SSCC that must be used
- `PrepContainerType` - container-type code (must exist in EasyWMS)
- `PrepackagingLines.PrepackagingLine` - quantity per outbound line that belongs in this container
## Tested Behavior (Mecalux France, 2022)
Confirmed working vs. known-broken combinations:
| Combination | Behavior |
|---|---|
| Ordre de départ / Strict / Nombre minimum / poids normal | 1 carton L |
| Ordre de départ / Strict / Nombre minimum / poids > seuil | Carton L (poids reste < 20 kg) |
| Ordre de départ / Strict / Nombre minimum / famille non mélangeable | Articles répartis dans colis différents ✅ |
| Ordre de départ / Strict / Nombre minimum / **type** non mélangeable | ❌ **non fonctionnel** - articles mélangés malgré la restriction |
| Ordre de départ / Strict / Volume minimum | 3 conteneurs différents |
| Vague / Strict / Volume minimum | Calcul réalisé par commande |
| **Calcul par l'opérateur** | ❌ **non fonctionnel** |
> Keep in mind these limitations when scoping a project : for "type non mélangeable" or "Calcul par l'opérateur", a Jira / support escalation is needed before promising the behavior to a customer.
## Common Errors
**The strategy has no effect even though it is saved** : it was not activated. Re-open the strategy and toggle activation.
**`Calcul par EasyWMS` produces no containers** : item dimensions/weight missing, or no container type is associated to the equipment - both are prerequisites.
**`Type de commande = Ordre de départ sans envoi`** : applies to the simple single-order case ; for waves or fusions, pick the corresponding `Type de commande`, otherwise the strategy is ignored for those grouping types.
**ERP-computed prepackaging ignored** : check that `PrepackagingProcess` and `PrepackagingWorkingMode` are both valid values and that `PrepContainerType` exists as a container type in the WMS ; otherwise the whole `PrepackagingConfiguration` block is rejected silently on SOR02 integration.
## Related
- [Shipping](shipping.md) - the surrounding outbound process ; prepackaging is one step of it
- [Outbound Order](order-outbound.md) - SOR02 carries `PrepackagingConfiguration` ; SOF carries the actually used containers
- [Container (LPN)](container.md) - container types and SSCCs referenced by prepackaging
- [ERP Interface](erp-interface.md) - full field tables for SOR02