Files
mcp-wms-wiki/wiki_old_13-05-2026/concepts/picking.md
T
2026-05-20 09:41:27 +02:00

481 lines
32 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Picking"
type: concept
sources:
- areas/shipping/shipping_manual/index.md
- areas/shipping/shipping_auto/index.md
- areas/shipping/shipping_auto/direct_picking.md
- areas/shipping/shipping_auto/grouped_picking.md
- areas/shipping/shipping_auto/negative_picking.md
- areas/shipping/shipping_manual/picking_tasks.md
- areas/shipping/shipping_manual/picking_order.md
- areas/shipping/shipping_manual/wave_picking.md
- areas/shipping/shipping_manual/picking_ptls.md
- areas/shipping/shipping_manual/index_cutting_stock.md
- areas/shipping/shipping_manual/paper_pick.md
- areas/shipping/pick_and_pass/index.md
- areas/shipping/pick_and_pack/index.md
- areas/shipping/shipping_admin/stock_assign.md
- areas/shipping/shipping_admin/stock_assign_strategies.md
- areas/shipping/shipping_admin/waves_creation.md
- areas/shipping/shipping_picking_manual/picking_cutting_stock.md
- areas/shipping/shipping_picking_manual/cutting_stock_delegate.md
- areas/shipping/shipping_picking_manual/cutting_stock_integrated.md
- custom/analyse_fonctionnelle.md
- sources/archives/02_Strategie_assignation_vidage_bacs.md
- sources/archives/03_Reapprovisionnement_lors_picking.md
- sources/archives/11_Preparation_papier.md
- sources/archives/26_Utilisation_chariots_emplacement.md
- sources/archives/31_Picking_Manuel.md
- sources/archives/Bases_fonctionnement_robotique_EasyWMS.md
- sources/archives/Configuration_EasyS.md
- sources/archives/Configuration_SmartUI.md
- sources/archives/Tests_Miniload_Gateway.md
related:
- concepts/shipping.md
- concepts/replenishment.md
- concepts/container.md
- concepts/stock.md
- concepts/reception.md
- architecture/galileo-integration.md
- operations/galileo-simulation.md
last_compiled: "2026-04-17"
---
# Picking
## Overview
Picking is the process of extracting stock from warehouse locations to fulfill shipping orders. In EasyWMS, picking encompasses: finding assignable stock (stock assignment), planning task execution (waves/groups), executing physical extraction (RFT, voice, PTL, paper, or automatic conveyor), and delivering picked stock to the shipping dock or staging area.
Picking occurs in two warehouse types:
- **Manual warehouse**: operators with RFT/voice/PTL/paper follow a picking path through aisle locations
- **Automatic warehouse**: containers are extracted by the TMS and brought to a picking conveyor (PK station) where operators pick stock from them into client containers on preparation zones (MP)
Both environments share the same underlying stock assignment logic. The execution layer is different: manual warehouse operators go to the stock; automatic warehouse stock comes to the operator (goods-to-person).
## Stock Assignment
Before any picking task can be generated, EasyWMS must assign specific stock to shipping order lines through the **stock assignment** process.
### Stock Eligibility Conditions
Stock is only assignable if:
- Item, status, UoM, and logistic attributes match the order line requirements
- Stock is in the same warehouse as the shipping order
- Stock state allows moving + picking/shipping (or replenishment origin if it has a picking dedicated location)
- No active count task on the location or container
- Not already part of an in-process replenishment task (unless certain conditions apply)
- Location/station allows picking/shipping; aisle not locked; no extraction errors at current or previous depths
- Not already assigned to another line or prepared for another order
- Exclusive reserves are respected (reserved stock is shipped first; additional stock assigned for any shortage)
### Assignment Strategies
Stock assignment strategies are sequenced and filter/sort eligible stock according to criteria:
| Strategy | Description |
|---|---|
| Efficiency: minimize movements before logic | Prioritize stock that can be fulfilled in fewest movements (prefer single-location assignments over multi-location) |
| Efficiency: empty locations before logic | Prioritize stock that would leave locations empty (maximize space recovery) |
| Logic before efficiency (empty) | Respect item shipping logic (FEFO, FIFO, LIFO) first; use empty-location efficiency as tiebreaker |
| Logic before efficiency (min movements) | Respect shipping logic first; use minimize-movements efficiency as tiebreaker |
| Ship only complete containers | Only assign full containers (matching container type + conversion); use picking for remainder |
| Maximize shipping | Find combination of containers that covers ordered quantity as closely as possible; pick remainder |
| Assign containers in movement | (Automatic warehouses) Assign stock from containers currently moving toward a PK station |
| By sub-warehouse + presentation | Multiple strategies per sub-warehouse/UoM combination (e.g., boxes from sub-WH A, loose units from sub-WH B) |
| By threshold | Switch sub-warehouse based on ordered quantity exceeding a threshold |
| Strict FEFO | Do not ship stock with an earlier expiration than already-shipped stock for the same item+account |
**Priorities** (applied before the main criterion):
- Prioritize shipping tasks over picking (minimize picking at cost of logistics order)
- Prioritize containers in movement (maximize automatic warehouse cycles)
- Prioritize complete containers for picking (empty "peaks" before starting new containers)
- Prioritize picking dedicated locations (always pick from PDL first)
- Prioritize general storage locations (prefer storage locations over PDL to avoid triggering replenishment)
Strategies can be configured globally for the warehouse or per item (via the item's **shipping profile**), which overrides the global strategy for that item.
### "Vidage de bacs" Efficiency Mode
Mecalux France has documented an efficiency mode dedicated to **emptying bins / locations** (FR : *vidage de bacs*), configured via `Configuration → Stratégies d'Assignation de Stock` :
- **Mode d'efficacité** : `Vidage de bacs`
- **Logique d'efficacité** : `Après l'efficacité`
Runtime workflows involved :
| Workflow | Role |
|---|---|
| `StockAssignProcess_CalculateOutboundLogicAndEfficiency_PR` | Chooses between logic-first and efficiency-first branches |
| `StockAssignProcess_CalculateEfficiencyMode_PR` | Executes the workflow matching the selected efficiency mode |
| `StockAssignProcess_CalculateEfficiencyModeToEmpty_PR` | Orders available stock by priority-to-empty according to the configured parameters ; stock is then consumed one record at a time until the requested quantity is reached |
The ordering logic lives in the code activity **"Order stock when none location is emptied"**.
### Assignment by Excess
When a line allows excess shipping, EasyWMS first tries to assign the exact quantity. If all strategies are exhausted without fulfilling the line completely, the first stock discarded by the last strategy is assigned as excess. Excess is minimized by unassigning the last-assigned stock. The "strict shipping logic on excess" flag prevents excess assignment from using better-logic stock over what was already being shipped.
## Picking Modes — Manual Warehouse
Manual warehouse picking is RFT-driven, following the **picking path** (optimal route minimizing operator travel). The path starts at the picking start point and ends at the shipping area.
| Mode | Description | Hardware |
|---|---|---|
| **Automatic tasks** | System instructs operator to pick highest-priority order tasks following picking route; loads equipment to capacity | RFT |
| **Picking tasks** | Operator executes only picking tasks, ordered by priority then release date | RFT |
| **Shipping tasks** | Operator executes only shipping tasks (full container moves) | RFT |
| **Order picking** | Operator selects specific orders to prepare; executes shipping tasks for selected orders in priority order along picking path | RFT |
| **Manual preparation** | Operator manually selects the order and the containers to ship | RFT |
| **Manual picking** | Operator creates an ad hoc picking order at the terminal (item + quantity); system releases it and operator executes it immediately | RFT |
| **Wave picking** | Operator prepares orders released in waves; at each return to warehouse, new orders are assigned up to equipment capacity | RFT |
| **Paper picking** | Operator receives printed picking lists, annotates issues; results entered later via PC or RFT (see "Paper Picking Workflow" below) | PC/RFT + printer |
| **Pick-to-light (PTL)** | Operator enters preparation area; PTL devices illuminate to indicate quantity per location | PC/RFT/PTL |
| **Voice picking** | Operator receives spoken instructions, confirms by voice; both hands free for handling | RFT + headset |
| **Advanced picking** | Picks client containers before dock/stage assigned; containers placed on shelf until assignment | RFT |
**Cutting stock picking** (rope, cable, chain — indivisible lengths):
- Requires a physical cut before picking
- Two models: **integrated cut** (cut performed at the location) or **delegated cut** (cut performed at a dedicated cutting station)
- Cutting stations can have dedicated equipment and procedures for item-specific cutting complexity
**Pick and Pass** (warehouses with automatic conveyors): goods-to-person model for loose stock. Sub-warehouses receive LPNs via automated transport; operators at workzone stations perform picking then release LPN back to transport. Decision stations route LPNs to correct sub-warehouse by reading pending tasks.
**Pick and Pack**: picking and packaging happen simultaneously; operators pick directly into final shipping cartons. Prepackaging modes available (see [Shipping](shipping.md) for details).
**Desk orders**: stock order from an in-warehouse retail desk; operators pick and deliver directly to desk for on-site customer sale.
**Zone filtering**: operators can filter tasks to a specific aisle, sub-warehouse, or work zone.
### Manual Picking (create order at RFT)
"Picking Manuel" lets the operator create an outbound order directly from the RFT when there is no upstream ERP push. Useful for desk sales, emergency replenishments, or one-off internal moves.
**Flow (RFT):**
1. Enter the **outbound code** (a default is proposed)
2. Choose the **shipping dock**
3. Add lines — **item + quantity** — repeat per line
4. **Release** the order — creates the outbound, its lines, and the picking tasks in SmartUI (can take time for large orders)
5. The RFT is redirected into the **standard picking loop**
**Module interactions:**
- **3PL module** — SOC and SOF use different document codes (the owner is appended to the SOF only). Example: SOC `MAN0000000000000000010`, SOF `MAN0000000000000000010-CECOA`.
- **Carrier module** — manual picking does **not** expose a carrier field, which can block downstream carrier processing. If the module is enforced, expect a post-release manual intervention.
Entry workflow: `EasyWMS.ManualPicking_ByItem_UI` (cf. [RF Menu reference](../architecture/rf-menu.md#4-ordres-dexpédition-sharedmenu_shippingorders)).
### Location Carts (chariots à emplacement) for Multi-Order Picking
Location carts let one operator prepare **several orders at once without creating one client container per order**. The WMS maps cart divisions (column × row) to orders automatically.
- **Usable only in multi-order picking modes** — groups of orders and waves
- Removes the need for a secondary *"TRF à emplacement"* configuration in many layouts
- After picking, the cart is dropped directly onto the packing station
**Setup — SmartUI:**
1. **Create division types** — define the number and codes of cart slots (tested up to 20×20). The WMS temporarily labels slots `Section{sequence}`; the name entered guides the operator during picking.
2. **Create the cart** (tab **"Carts"**):
| Field | Description |
|---|---|
| Code | Scanned during picking and packing |
| Storage location | **Mandatory** |
| Division type | If empty → the cart behaves as one slot |
Cart statuses : **Open** (available), **Closed** (stock in progress — not yet packed).
**Picking with a cart (RFT):**
- At wave/group start, the RFT proposes to use a cart — scan its code.
- On the first drop, the WMS asks which slot (division) to use; subsequent tasks for the same order are auto-routed to the same slot.
- Column **"Division"** shows `CartCode_SectionCode`.
**Edge case — closed cart with no free slot:** the RFT reports no task available and flips the cart back to **Open**. To unload: **"Fermer"** on the task list → RFT menu **Rangement → Stock de chariots** → either "Ranger le chariot entièrement" (no redirection to packing) or "Décharger en mode stock libre".
**Packing:** scan the cart code → WMS indicates divisions → scan the division to pack (or list divisions with stock). Standard packing runs with `CartCode_SectionCode` as origin.
### Paper Picking Workflow
Paper picking is used when RF coverage is missing, when a customer wants a printed bon de préparation, or as a fallback mode.
**Prerequisites.** Grant the users three rights via `Permissions des groupes d'utilisateurs → Web → Sorties/Ordres de Sortie` : **Préparer avec FR**, **Générer lot**, **Imprimer préparation de commande papier**.
**Standard flow.**
1. **Release the outbound order** (normal release).
2. Click **"Préparer Préparation de commande papier"**.
3. Check that a **staging buffer or dock is assigned** to the order, then click **Generate batch** (*Générer un lot de préparation*).
4. Print the bon de préparation via **"Imprimer préparation de commande papier"**.
5. The picker performs picking on paper, annotating differences.
6. Back at the station, click **Confirmer le lot** and **scan the batch number** on the printed sheet :
- If the order is complete → scan the batch number a second time to close the preparation.
- Otherwise → scan the incomplete tasks one by one and enter the actual picked quantity.
7. Scan the batch number one last time to mark the preparation done — the order transitions to **"Prepared"** and stock is transferred to the staging buffer / dock.
### Picking Incidences (Manual Warehouse)
During picking, issues are recorded when containers are not where expected or extraction is blocked:
- **Mark to review**: creates a lock and count on the container/location; does not interrupt the current process; lock removed when count completes
- **Stock adjustment**: ERP is notified of any inventory corrections via messenger service
**Wait for replenishment**: configurable behavior — system can auto-trigger replenishment tasks when a picking location is empty to complete the pick.
By default, when an outbound order is released and no picking location has stock (but stock exists in replenishment sources), picking tasks are created on empty PDLs — these are **silently skipped at execution time** if the PDL is still empty when the operator reaches it. Three global parameters relax this default :
| Parameter | Effect | Key workflow(s) |
|---|---|---|
| `PICKING_ALLOW_WAITING_ON_LOCATION_ON_WAIT_FOR_REPLENISHMENT` | Operator is warned "Possible wait for replenish" and can choose to replenish themselves, adjust stock, or skip | `ExecutePicking_WaitForReplenishment_UI` |
| `PICKING_ALLOW_STARTING_DECISION_ON_WAIT_FOR_REPLENISHMENT` | Operator can **refuse** an outbound order that contains tasks waiting for replenishment (from the picking-tasks menu) | `Outbound_ObtainPickingTask_ExecuteTask_UI_v1``ExecutePicking_IncreaseReplenishPriorityAndGetIfCanDoTask_PR``Helper_ParameterAsBoolean_PR``Outbound_ObtainPickingTask_ConfirmWaitForReplenish_UI` |
| `PICKING_ALLOW_UNLOADING_ON_LOCATION_ON_WAIT_FOR_REPLENISHMENT` | Operator can **store** the client container instead of depositing it at the destination when tasks remain blocked on replenishment | `Expedition_FinishExpedition_GetShowStoreButton_PR` (checks parameter + container full + remaining picking tasks) |
Operator flow for the third parameter :
1. After doing all pickable tasks, press **Finir** (`ExecutePicking_SelectOriginLocation_UI`)
2. The deposit screen appears (`Expedition_FinishExpedition_ShowLocationToUnload_UI`)
3. Press **Stocker** (`Equipment_Unload_ContainerUnloadOnUnknownLocation_UI_V2`)
4. When the order is resumed later, the stored client container can be reused (`Outbound_SelectContainerToCreate_UI`)
**Undo preparation**: unassigns a specific stock line from the order it was prepared for (returns stock to assignable pool).
**Undo excesses**: guided removal of over-picked stock from shipping orders (due to quantity changes or line cancellations after preparation).
**Excess reduction**: if multiple tasks exist for the same item and one is over-picked, the remaining tasks are reduced by the excess amount (or canceled if already satisfied).
## Picking — Automatic Warehouse (Picking Conveyor / PK)
In automatic warehouses, picking is goods-to-person. The TMS extracts containers from storage and brings them to a **picking conveyor (PK)** station. One PK can serve multiple **preparation zones (MP)**; each MP is a physical table where the operator deposits picked stock into client containers.
The PK station must be assigned to the shipping order along with at least one preparation zone. Multiple MPs per PK allow parallel order preparation.
### PK / MP setup and assignment mode
Configuration of picking + preparation pairs (robotics-specific, from EasyS + SmartUI):
- **Picking station** (EasyS): add a conveyor with role **Picking**, create a **Workstation** to drive it from SmartUI, define routes (where stock can arrive from, where it leaves to)
- **Preparation tables** (EasyS routes):
- **Manual** route from picking table → preparation tables
- **Galileo** route from preparation tables → output table
- **Virtual** route → consolidation zone
- **Max concurrent orders** (SmartUI): **Menu → Control → Workstations** → select PK → set the value. Must **equal the number of preparation tables** linked to the PK
- **MP assignment mode** (SmartUI): **Menu → Control → Workstations** → select MP(s) → **Modify assignment mode**
- **Automatic** — WMS assigns the next order to a table
- **Manual** — operator assigns via **Menu → Control → Picking-station assignment**. ⚠️ In manual mode, **tasks do not generate until the order is assigned**
- **Route requirement**: the MP must have a route to the shipping dock of the order — otherwise tasks won't generate
**Three ways to trigger container extraction from the miniload:**
1. Demand the container from the picking workstation (specific support, empty supports, or specific item)
2. Request empty containers
3. Launch an order — assigns PK + generates `pickingContainer` tasks
For detailed bring-up in simulation and the "Store container" + "Liberate" test flow, see [Galileo Simulation](../operations/galileo-simulation.md).
### Direct Picking (Phase by Phase)
1. **Confirm container on conveyor**: operator scans SSCC of arriving container (or auto-confirmed if configured). Tasks are sorted: in-process → round number → negative picking → consolidation at origin → creation date → task number.
2. **Confirm preparation zone + destination container**: system assigns MP to the order. If no container exists on the MP, operator creates one (scan or auto-generate SSCC). If no MP is accessible, system selects dock/stage/consolidation station as destination.
3. **Confirm item + logistic attributes**: operator scans item (or auto-confirmed). System checks family restrictions and filters logistic attributes as required.
4. **Enter picked quantity**: operator enters quantity (or confirms with barcode scan, one-scan-one-unit, or one-scan-N-units). PTL illuminates at the MP with required quantity. Decimal quantities handled in two-pass confirmation on PTL.
5. **Enter picking weight** (if item has weight control): mandatory step; checks min/max weight per presentation.
6. **Confirm destination**: operator confirms the MP (only if MP is the destination; auto-confirmed if one container on zone and auto-confirm enabled).
7. **Close client container**: system checks if container should be closed (no more tasks for the order at this PK). Closure is mandatory when remaining tasks have lower stackability or MP is automatic. PTL function button can trigger closure. On closure: container label + packing list printed if configured.
**Alternative actions at any phase:**
- Remove from conveyor → container to Lost & Found, tasks canceled
- Return → postpone, move container to nearest PIE or MU (reject station if none)
- Skip task (if multiple tasks on container)
- Select another destination MP
- Close client container early
- Stock not found → delete from container (adjustment), decide next action
- Insufficient stock → adjust actual quantity
- Check to review → set review lock, continue
### Grouped Picking (Automatic Warehouse)
Grouped picking replaces individual picking when multiple shipping orders share stock from the same source container. Instead of making N individual passes, the operator picks the total needed quantity once and distributes it across N preparation zones, each illuminated by a PTL.
**Conditions for grouped picking:**
- PK configured to allow grouped picking
- Original task has a single-location preparation zone
- PK has exactly one PTL-equipped location (PTL + controller both enabled)
- Item has no logistic attribute capture or weight capture requirements
- Compatible tasks: same stock requirements, PK assigned, single-location MP with PTL, no existing stock from a different order on the MP
Grouped picking is incompatible with: automatic quantity confirmation, barcode scanning mode, automatic destination confirmation.
**Grouped picking phases:**
1. Confirm container on conveyor (same as direct)
2. Create picking containers on each compatible MP
3. Confirm item + logistic attributes; system deselects tasks for which there is insufficient stock
4. PTLs illuminate simultaneously on all compatible MPs → operator picks total, distributes to each zone by pressing PTL
5. Close containers as each is completed
### Negative Picking
When a container is over-stocked relative to what is needed for the current task (e.g., container holds 50 units but task only needs 10), negative picking extracts the **excess** and places it in a new container that is returned to the warehouse. This corrects the container's stock to match what the task required.
### Container Closure and Return
After all picking tasks for a shipping order are completed at the PK:
- PK is unassigned from the order
- Operator confirms container disposition (return to warehouse or remove)
- Physical PK pushbutton is pressed to signal completion
- TMS generates movement tasks to return the source container to its storage location or to a rejection station
## Picking — Pick and Pack Mode
In Pick and Pack warehouses, operators pick stock directly into the final shipping carton (client container). Two integration levels:
| Mode | Description |
|---|---|
| **Without prepackaging** | Operator picks item by item into shipping carton at location |
| **With prepackaging (individual orders)** | System calculates optimal carton allocation before picking; operator receives pre-defined container labels |
| **With prepackaging (grouped orders)** | Same, but for multiple orders picked simultaneously |
| **Single parcel** | One-item, one-carton picking; minimal steps |
| **Different presentations** | System handles mixed UoM in the same carton |
| **Mixed scenario (SP + consolidation)** | Single-parcel orders consolidated into shared shipping containers |
Prepackaging calculation:
- Uses item dimensions + carton types to determine optimal packing
- Can come from ERP (prepackaged by supplier) or calculated by EasyWMS
- User-driven prepackaging: operator selects container type interactively
## Stock Assignment Transactions and Events
| Event | Transaction |
|---|---|
| Picking task executed | `STK.PICKING` |
| New client container created at MP | `CON.CREATE` |
| Client container closed | `CON.COC` |
| Container movement to dock/stage (virtual route) | `CON.MOVE`, `STK.MOVE`, `CON.LOAD`, `STK.LOAD` |
## Picking Path Design
The picking path is the optimal traversal order of locations for picking tasks. Path efficiency depends on:
- **Warehouse design**: single bi-directional aisle vs. zigzag (in-out separate aisles)
- **Narrow aisles**: one direction, pick both sides crossing the aisle
- **Wide aisles**: two-way with each side directed differently; each shelf projects to nearest aisle
- **Sub-warehouse local paths**: Pick and Pass allows per-sub-warehouse picking paths
The picking path starts at the **picking start point** (configured per sub-warehouse or warehouse) and ends at the shipping area. The path selects the next closest task, but overall path optimality depends on warehouse layout.
## Order Planning — Waves, Groups, and Shipment Templates
### Order priorities
Each shipping order carries a priority that determines task sequence:
| Priority | Relative urgency |
|----------|-----------------|
| **Urgent** | Highest — processed first in all queues |
| **High** | Above normal |
| **Normal** | Default |
| **Low** | Below normal |
| **Very Low** | Lowest — processed last |
Priorities are set per order (from the ERP or manually) and apply across all picking and shipping task generation.
### Order quantity states
Each shipping order line tracks quantities at four execution stages:
| Quantity type | Meaning |
|---------------|---------|
| **Assigned** | Stock selected and reserved from inventory (assignment done, not yet picked) |
| **Prepared** | Stock physically picked and placed in client container (pick task complete) |
| **Loaded** | Stock loaded onto truck or placed at dock (load task complete) |
| **Shipped** | Order confirmed dispatched; stock decremented from WMS |
These stages allow visibility into order execution progress and enable exception detection (e.g., prepared > loaded means dock delay).
### Shipment templates (modèles d'expédition)
Shipment templates automate wave and group creation by applying a set of selection criteria on a schedule. Instead of manually creating a wave each time, a template runs automatically (or is triggered manually) and selects matching orders into a wave or group.
**Selection criteria (15+ configurable per template):**
| Category | Criteria |
|----------|---------|
| Carrier | Carrier code |
| Client | Client/account code |
| Owner | Owner code (3PL multi-owner) |
| Destination | Delivery address or region |
| Order type | Order type code |
| Order class | Order class (commercial category) |
| Order typology | Order typology (operational subtype) |
| Stock check | Include/exclude orders with unresolved stock shortages |
| Item type | Orders containing items of a specific type |
| Item family | Orders containing items of a specific family |
| Danger flag | Orders with/without hazardous items |
| Crossdocking | Orders eligible for crossdocking |
| Ungrouping zone | Target ungrouping zone |
| Packing zone | Target packing zone |
| Custom fields | Free-text fields on the order |
**Scheduling**: templates can be configured to run on a time-based schedule (e.g., daily at 14:00) or executed manually on demand. Each execution creates one wave or group from all matching orders at that moment.
**Priority within template**: orders selected by the template are ordered by their individual priority field.
### Order fusion
**Fusion** merges multiple shipping orders from the same client/destination into a single preparation batch. This is a **manual-only** operation — EasyWMS does not auto-fuse orders.
Conditions for fusion:
- Same client (account)
- Same delivery destination
After fusion, the combined order is prepared as a single batch, reducing travel distance. The fusion can be reversed (split) if needed before picking starts.
## Parameters
| Parameter | Description | Default |
|---|---|---|
| `ALLOW_CONFIRMATION_ON_PLACEMENT` | At picking destination, operator confirms the container/dock is correct | Disabled |
| `EMPTY_PICKING_LOCATION_QUESTION` | At last picking task from a location/container, system asks if it is empty (supports inventory) | Disabled |
| `EMPTY_PICKING_LOCATION_STOCK_ADJUST` | If EMPTY_PICKING_LOCATION_QUESTION active: if yes, perform stock adjustment; if no, mark for review | true |
| `PICKANDPASS_ALLOW_READ_DIFFERENT_CONTAINER` | Pick and Pass: allow operator to read an LPN different from the one proposed | Disabled |
| `PICKING_ALLOW_WAITING_ON_LOCATION_ON_WAIT_FOR_REPLENISHMENT` | Operator can decide between self-replenishing, stock-adjusting, or skipping when the PDL is empty (see "Picking Incidences") | Disabled |
| `PICKING_ALLOW_STARTING_DECISION_ON_WAIT_FOR_REPLENISHMENT` | Operator can refuse an outbound order that contains tasks waiting for replenishment | Disabled |
| `PICKING_ALLOW_UNLOADING_ON_LOCATION_ON_WAIT_FOR_REPLENISHMENT` | Operator can store the client container instead of going to the destination when picks are still blocked on replenishment | Disabled |
## Common Errors
**No stock assigned (order line stays incomplete):** All assignment strategies exhausted without finding eligible stock. Check: stock states allow picking, no counting tasks on locations, picking dedicated location configured for item if replenishment-origin stock, no extraction errors at locations.
**Picking task not proposed by system:** Stock was assigned but the picking location has a lock preventing picking, or the aisle is blocked. Resolve the lock/block or trigger a location reassignment.
**PTL not illuminating:** PK not configured for PTL, PTL device or controller disabled, or MP has more than one container when auto-destination is expected. Check workstation configuration and PTL device status.
**Grouped picking reverts to individual:** One of the compatibility conditions failed (e.g., logistic attribute capture required, MP has stock from a different order). Check PK configuration and MP state.
**Excess over-picking:** An operator picked more than requested. System reduces remaining tasks for same item by the excess amount. If the order doesn't allow excess, an error is thrown; operator must undo excess.
**Cutting stock cut is wrong length:** Cutting stock requires exact-quantity handling. If the cut produces a wrong length, the operator must register an incidence and recut; the old stretch must be re-entered into inventory with correct quantity.
**Container full before order complete:** Client container runs out of capacity mid-picking. Operator uses "close container" action → a new client container is created for the remaining tasks. Both containers go to the dock for the same order.
## Interface Paths
| Interface | Path |
|---|---|
| RFT — picking (manual warehouse) | Menu "Picking" → task mode selection |
| RFT — picking conveyor (automatic warehouse) | Workstation "Picking" view |
| Web — stock assignment strategies | "Configuration" → "Stock assignment strategies" |
| Web — shipping order + stock assign | "Shipping" → "Shipping orders" → order → "Stock assign" |
| Web — workstations (PK config) | "Control" → "Workstations" |
| Web — docks and stages | "Control" → "Docks and stages" |
## Related
- [Shipping](shipping.md) — picking is part of the shipping process; picking leads to truck loading
- [Replenishment](replenishment.md) — picking from dedicated locations triggers replenishment when stock runs out
- [Container (LPN)](container.md) — client containers are created during picking; source containers are extracted from storage
- [Stock](stock.md) — stock assignment determines which specific stock unit is picked
- [Reception](reception.md) — received goods enter inventory and become eligible for stock assignment
- [Task](task.md) — picking generates Picking tasks; negative picking and cut picking are specific task types
- [Outbound Order](order-outbound.md) — shipping orders are the source of picking demand; order priority drives task sequence
- [Location](location.md) — picking dedicated locations (PDLs) are the primary source for picking; location logics control eligibility
- [[cutting-stock]] — cutting stock picking (shelf, integrated station, delegated station) are specialized picking modes
- [[stations]] — PK (type 2), MP (type 16), Workzone (type 64), Decision (type 63), Cutting Station (type 61) all support picking
- [Tense Flow](tense-flow.md) — tense-flow picking bypasses storage : pick directly from a source support into a client container via the `PREPARATION` buffer