- 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)
16 KiB
title, type, sources, related, last_compiled
| title | type | sources | related | last_compiled | ||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Count / Inventory | concept |
|
|
2026-04-17 |
Count / Inventory
Overview
A count (also called inventory or stock take) in EasyWMS is a formal process for verifying that the physical stock in the warehouse matches the quantities recorded in the system. When discrepancies are found, the system adjusts its records accordingly and notifies the ERP.
EasyWMS supports three fundamental counting approaches:
- Guided counts - a count order is created (from the WMS interface or by ERP messaging), tasks are generated, and operators follow those tasks with their RFT.
- Physical count - an unguided, operator-initiated blind count of a specific location directly from the RFT, without a prior order.
- Cycle count - automated rolling inventory that divides counting across many days, integrating inventory into daily warehouse operations without shutting down the warehouse.
Counts can be performed in manual warehouses (operators walk to locations) and automatic warehouses (containers are extracted to a picking conveyor / workstation).
Types of Count
Count Types (per line)
| Count type | Scope | Use when |
|---|---|---|
| Item count | All stock of a specific item across the warehouse | Targeted SKU audit; can filter by logistic attribute |
| Container count (LPN) | One specific container and all its stock | Spot check of a known LPN |
| Location count | All stock and containers in a range of locations | Large-scale area inventory |
A single count order can mix lines of different types.
Creation Methods
| Method | Who initiates | Order required | Auto-adjusts |
|---|---|---|---|
| Guided count - from WMS interface | Warehouse manager (PC) | Yes | No (ERP notified via STV per diff) |
| Guided count - from ERP (COR message) | ERP | Yes | No (ERP notified via COF at close) |
| Physical count (RF) | Operator from RFT | No | Yes (immediate) |
| Cycle count | Scheduler job | Auto-generated | No (ERP notified via STV) |
| Automatic warehouse count | Manager assigns PK | Yes | No |
Lifecycle
Guided Count Order Lifecycle
Disabled (Inactive)
│
▼ [Release]
Releasing ← tasks being generated
│
▼ (tasks ready)
In Process ← operators executing tasks
│ │
│ [all tasks done] │ [Cancel]
▼ ▼
Closed Cancelling → Canceled
(or Force Close)
Status transitions:
| Status | Description |
|---|---|
| Disabled | Order created, not yet released |
| Releasing | Release triggered; tasks being generated |
| In Process | All tasks generated; operators executing |
| Closed | All tasks complete (or Force Close used) |
| Canceled | Pending tasks canceled; completed counts kept |
Closing can be automatic (AUTOCLOSE_COUNT_ORDERS parameter) or manual. Orders with conflicting lines (item with no stock, location that doesn't allow inventory) can only be closed with Force Close.
Transactions
| Transaction | Trigger |
|---|---|
COU.CST |
Count order released |
TSK.COU |
Count task completed |
STK.ADJ |
Stock adjusted as result of count |
CON.CREATE |
Container created during count |
CON.DELETE |
Container removed during count |
COU.END. |
Count order closed (ERP-originated via COR) |
COU.CLS. |
Count order closed (WMS-originated) |
COU.CNL |
Count order canceled |
TSK.CANCEL |
Count task canceled |
ADJ.STK |
Physical count adjustment |
Guided Count - Execution
Task Generation at Release
When a count order is released, EasyWMS generates count tasks based on line type and warehouse type:
- Manual warehouse, location line → location count tasks (one per location in range)
- Manual warehouse, container line → container count tasks (regardless of aisle type)
- Manual warehouse, item line → item count tasks (one per location where item has stock)
- Automatic warehouse, any line → container count tasks (containers extracted to PK)
- Picking location with partitions + dedicated PDL → item count tasks (one per assigned partition)
Locations configured as "does not allow inventory" in EasyS are skipped. Locks on locations, containers, or stock that prevent counting are also respected.
Blind vs. Informed Mode
For location count lines, the Is Informed flag (FR : Est renseigné) determines the counting mode:
- Blind count - operator enters quantities without seeing current system values (default). Operator must enter item, quantity, logistic attributes from scratch.
- Informed count - system shows current recorded stock; operator adjusts as needed.
Item counts and container counts are always blind.
Per-line setting. Est renseigné is a per-line toggle, not a per-order toggle - within the same count order, some lines (e.g. the picking aisles) can be Informed while others (e.g. the reserve) stay blind.
If the
Est renseignécolumn is missing from the count-line grid : select a line and click "Visibilité". If it is still hidden, the grid's visibility condition must be relaxed - edit theCountOrderLineVListview and comment out (/* … */) the visibility condition, forcing it totrue.
Counting items with serial numbers
When an item is counted on an attribute unique per piece (a serial number) :
- The WMS asks for a serial number → enter the first one (e.g.
A). - The screen loops on itself once per piece of the item → enter a different serial for each piece (e.g.
B,C…). - Click "Terminé" when every piece has a serial.
- Enter the next item of the location, or click "Fin" if the location is done.
The WMS then reports that the original (no-serial) item line was not found - click "Introuvable" : this removes the no-serial stock line and creates the new serialized stock lines in its place.
Count in Automatic Warehouse (Workstation)
For automatic warehouses, a picking conveyor (PK) must be assigned to the count before release. EasyWMS then extracts all containers to be counted to that PK. Operators count at the PC workstation.
Supported use cases at workstation:
- Counting containers from a location range
- Counting specific containers
- Counting stock of a specific item
- Counting owner stock (effectively item count for all items of one owner)
If the PK is equipped with a laser (HPKS pick-term tray), it illuminates the division/location being counted. Cutting stock counts are not supported in automatic warehouses.
Partition Counts
For picking locations with labeled partitions assigned per item (dedicated picking locations), a special partition count mode is available from the RFT. The operator can:
- Count an entire location with partitions (all partitions sequentially)
- Count a single partition
- Count in blind or informed mode
- Reassign partitions to items during the count
Parameters:
UNLOAD_CREATE_PRODUCT_LOCATION- when active, auto-creates PDL assignment for a newly counted itemALLOW_DYNAMIC_UNASSIGNED_PARTITION- allows dynamically unassigning empty partitions during count
Physical Count (RF - No Order Required)
The Physical Count is a fast, location-by-location blind count initiated directly from the RFT. No count order is needed.
Process: Operator navigates to Counts > Physical Count on the RFT, scans a location or container, and enters all stock data from scratch. Any differences are applied immediately.
What can be done:
- Create new stock lines
- Modify existing stock lines (quantity, UoM, status, logistic attributes)
- Delete stock lines
- Create or delete containers
Restrictions: Only locations that allow inventory (per EasyS config) can be physically counted.
Communications: Any adjustment generates STV (stock variation) and STC (status change) messages to ERP.
Cycle Count (Rolling Inventory)
Cycle counting avoids full warehouse shutdowns by spreading counting tasks across many days.
Architecture
Count Schedule (config: scope + timing)
│
▼ generates
Count Iteration (active period of N days)
│
▼ daily job generates
Count Orders + Tasks (distributed evenly across iteration days)
Schedule Configuration
A Count Schedule defines:
- Location filtering: area, aisle, location range
- Item filtering: owner, ABC class, family, type, count profile
- Count mode: blind or informed (location-type schedules only)
- Iteration duration: how many days each iteration lasts
- Iteration period: how many days between iterations (≥ duration)
- Next iteration start date: allows staggering multiple schedules
- Days of week: which days tasks are generated
If item filtering is set → item count tasks generated. If no item filter → location count tasks generated.
Generation Logic
The job CycleCount_GenerateIterationsForEnabledSchedulesJob_PR runs daily and:
- Calculates total tasks still needed for the iteration
- Divides by remaining days to distribute evenly
- Sorts locations by aisle/side/X/Y coordinates
- Creates a count order with the day's lines and immediately releases it
Count orders generated by cycle count cannot be re-released after cancellation.
Iteration States
- On progress - active iteration running
- Finished - iteration end date passed (transitions next day)
- Canceled - manually terminated early
Schedules can be enabled/disabled. A schedule with an active iteration cannot be disabled.
ERP Integration
ERP-Requested Count (COR → COF)
The ERP can request a warehouse count via the COR (Count Order Request) message. EasyWMS creates a count order in Disabled status. After release and execution, the COF (Count Order Finished) message is sent at close, reporting all stock per location counted.
If double validation (pending adjustments) is active, the COF is delayed until all pending adjustments are validated or canceled.
Stock Contrast (SCR → WSC)
Separate from counts, the ERP can request a full stock snapshot without generating counting tasks. This uses the SCR (Stock Contrast Request) message; EasyWMS responds immediately with WSC (Warehouse Stock Contrast), listing all current stock matching the filters.
Available as:
- Punctual request from SmartUI (immediate response)
- Scheduled automatic request (configurable periodicity ≥ 1 hour; job
StockCountRequest_GetScheduledCount_Jobat 10-minute polling)
Transactions: SCR.REQ. + SCR.DET.
Stock Variation Notification (STV)
For counts not created by the ERP (manual WMS counts, physical counts, cycle counts), stock adjustments during counting are reported line by line via STV messages rather than COF.
Business Rules
- Locations with the "does not allow inventory" flag (EasyS config) are never counted.
- Locks (at location, container, or stock level) that prevent counting block task generation for the locked element.
- In automatic warehouses, no moving containers should exist when a count order is released (containers in transit won't receive tasks).
- Item count lines where the item has no stock in the warehouse generate no tasks and appear as conflicting lines (shown with a conflict icon).
- Canceling a count cancels pending tasks; already-counted stock is not reverted.
- Double validation (per item's count profile) can hold count adjustments in Pending status until a manager validates or cancels them.
Configuration
| Parameter | Description |
|---|---|
AUTOCLOSE_COUNT_ORDERS |
Auto-close count orders when all tasks complete |
MAX_NUM_LABELS_TO_READ |
Enable multi-label GS1-128 reading at start of count flow |
ALLOW_ZONE_SELECTION_FOR_TASKS |
Show zone filter button on RFT (aisle/sub-warehouse/work zone) |
UNLOAD_CREATE_PRODUCT_LOCATION |
Auto-create PDL assignment for counted item in partitioned location |
REPLENISH_LEVEL_PERCENT_PRODUCT_LOCATION |
Replenishment level % used when auto-creating PDL from count |
ALLOW_DYNAMIC_UNASSIGNED_PARTITION |
Allow dynamic unassignment of empty partitions during count |
Interface
| Path | Equipment |
|---|---|
Counts > Counts (order list) |
PC |
Counts > Count lines |
PC |
Counts > Cycle count iterations |
PC |
Warehouse > Stock → "Punctual stock contrast request" |
PC |
Warehouse > Stock → "Create/Edit stock contrast schedule" |
PC |
Configuration > Parameters → AUTOCLOSE_COUNT_ORDERS |
PC |
Configuration > Jobs → Delete_StockStatusJob_PR |
PC |
RFT: Counts > Physical Count |
RFT |
RFT: Tasks > Automatic tasks or Count tasks |
RFT |
RFT: Counts > Select count (manual count selection) |
RFT |
Common Errors
| Symptom | Cause | Solution |
|---|---|---|
| Count order stuck in "Releasing" | Automatic warehouse: moving containers exist at release time | Wait for all containers to reach a location, then release |
| Count line shows conflict icon (no stock) | Item count line requested for item with zero stock in warehouse | Use Force Close to finalize order; review item master |
| Count line shows conflict icon (no inventory allowed) | Location not flagged for inventory in EasyS | Fix location config in EasyS or delete the line |
| COF message not sent after close | Count originated from COR and has pending adjustments (double validation) | Validate or cancel all pending adjustments |
| Cycle count generates uneven task distribution | Volatile stock levels change mid-iteration (especially item schedules) | Expected behavior; adjust schedule parameters if needed |
| Cannot re-release a cycle count after cancel | By design - cycle count orders are non-re-releasable | Create a new manual count for the affected locations |
Related
- stock-adjustment - Count discrepancies trigger STK.ADJ adjustments; double validation applies to both
- stock - Count validates and corrects stock records; see STV/STK.ADJ transactions
- location - Location "allows inventory" flag governs whether counting tasks are generated
- container - Container count type counts an LPN and all its stock
- product-item - Item count type; count profile on item controls double validation
- task - Count tasks (TSK.COU) follow the standard task lifecycle