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

18 KiB

title, type, sources, related, last_compiled
title type sources related last_compiled
Stock concept
areas/inventory_management/views/view_stocks.md
areas/inventory_management/stock_adjustment/stock_adjustment.md
areas/inventory_management/stock_adjustment/reasons.md
areas/inventory_management/stock_adjustment/quantity_adjust.md
areas/inventory_management/stock_adjustment/udm_adjust.md
areas/inventory_management/stock_adjustment/al_adjust.md
areas/inventory_management/stock_adjustment/stock_adjustment_RF.md
areas/inventory_management/stock_adjustment/stock_adjustment_SmartUI.md
areas/inventory_management/stock_adjustment/stock_adjustment_Workstation.md
areas/inventory_management/stock_adjustment/stock_adjustment_entity.md
areas/inventory_management/stock/print_stock_label.md
areas/reports/grouped_stock/grouped_stock.md
areas/reports/grouped_stock/grouped_stock_item.md
areas/reports/grouped_stock/grouped_stock_date_lot.md
areas/reports/grouped_stock/grouped_stock_subwarehouse.md
sources/archives/24_Process_assignation_stock.md
concepts/container.md
concepts/location.md
concepts/product-item.md
concepts/reception.md
concepts/putaway.md
concepts/picking.md
concepts/shipping.md
concepts/count.md
concepts/stock-adjustment.md
concepts/stock-assignment.md
concepts/order-outbound.md
concepts/task.md
concepts/erp-interface.md
2026-04-17

Stock

Overview

A stock record (stock line) is the physical instance of an item in the warehouse at a specific moment — a quantity of a particular item, owned by a specific owner, in a specific location or container, with specific logistic attributes and status. It is distinct from the item master: the item defines what the product is; the stock defines how much of it exists, where, and in what state.

Stock is created when goods are received, consumed when goods are shipped, and transformed (split, merged, adjusted) throughout warehouse operations. The WMS maintains an exact, real-time view of all stock across every location and container in the warehouse. All WMS processes (putaway strategies, stock assignment for outbound orders, replenishment, counting) operate against stock records.

A single item in the warehouse can have many stock lines — one per unique combination of container, logistic attributes, and status. For example, the same SKU in three different lot numbers stored in two locations will produce at least 6 separate stock lines.

Types

Stock is classified by its storage context and status:

By storage context

  • Containerized stock: stock inside a container (LPN). The container holds the stock and can be moved as a unit. The stock line references both the container and the location of the container.
  • Loose stock: stock directly in a location, not in a container. Common in conventional manual locations with picking dedicated partitions.
  • Client stock: stock that has been prepared (picked) for a specific outbound order, now in a client (outbound) container. Special rules apply — quantity, UoM, and logistic attributes cannot be adjusted like regular stock.
  • ASN stock: stock pre-notified by the ERP but not yet physically received. Located in the virtual ASN location. Cannot be adjusted.

By status

Stock carries up to three parallel status dimensions:

Status type Description Set by
System status Internal WMS status (e.g., normal, reserved, assigned) Automatic — driven by stock assignment and task creation
User status Quality or business-driven lock (e.g., "Quarantine", "Hold") Manually by user, or via ERP STR message. Has optional end date.
Receiving status Quality control status set during reception At reception, automatically based on receipt order configuration

User status and receiving status are independent; both can exist simultaneously on the same stock line.

User status is modifiable at any time from SmartUI or via the RFT QUALITY menu, without limit. It is useful for marking defective or quarantined goods.

Receiving status is set only during reception (from the reception profile). It can only be removed (not re-applied) from PC or RFT. Removed status cannot be reinstated except through a new reception.

For each user or receiving status, the following actions can be allowed or forbidden on affected stock:

  • Picking (order preparation)
  • Replenishment
  • Inventory / counting
  • Reception
  • Internal consumption
  • Shipping (dispatch)
  • Collection
  • Movement (relocation)
  • Reservation

When a user status is added/changed/removed on a stock line, the STC01 message is automatically generated and sent to the ERP.

Next to expire and Expired flags are computed fields. "Next to expire" marks stock approaching expiry even before the actual expiry date. "Expired" marks stock past its expiration date. Expired stock can still be shipped if the SOR line explicitly requests it.

Stock record structure

Each stock line is identified by a unique combination of: Item + Owner + Location (+ Container if containerized) + Logistic attributes + Status + UoM.

If any of these elements differs between two physical goods, a separate stock line is created. For example, the same article in two different lot numbers at the same location generates two stock lines. Two goods with different UoMs (e.g., 1 bottle vs 1 pack of 6 bottles) at the same location are also separate lines.

Field Description
Item Item code
Owner Owner of this stock (for 3PL or multi-owner warehouses)
Warehouse Warehouse site (visible if 3PL module installed)
Quantity Amount in base UoM
UoM Base unit of measure
Short description Item short description
Location Physical or virtual location holding this stock
Container Container code (if containerized)
Container type Type of the container
Complete container Whether the container is marked as "complete"
Container locks Number of active locks on the container
Load Load code associated to this stock (for truck loading)
Delivery code Delivery associated to this stock (Multi-Carrier module)
Supplier Supplier code from the receipt
Theoretical weight Calculated weight based on item weight configuration
Status System status
User status User-set status (with end date and comment)
Receiving status Status from reception quality process (with end date)
Lot Lot number
Expiration date Date after which stock is unusable
Best-before date Date after which stock is suboptimal
Production date Date of manufacture
Days of life Remaining usable days
Quality Quality attribute value
Color Color attribute
Caliber Size/caliber attribute
Origin Origin attribute
Version Version attribute
Production method Production method attribute
Post-production treatment Post-production treatment attribute

Lifecycle

[Reception] → Stock CREATED (in container or loose in location)
     ↓
[Putaway] → Stock LOCATED (moved to storage location)
     ↓
[Stock assignment] → Stock RESERVED or ASSIGNED (for outbound order)
     ↓
[Picking] → Stock PREPARED (in client container, staging area)
     ↓
[Consolidation/Loading] → Stock LOADED (on truck/dock)
     ↓
[Order close] → Stock CONSUMED (quantity decremented to 0; record removed)

Stock can also be adjusted at any point (quantity, UoM, logistic attributes, status), counted (verified against physical reality), consolidated (merged), defragmented (moved to optimize space), and locked (user/receiving status changed).

Stock adjustments generate STK.ADJ transactions and trigger STV messages to the ERP.

Business rules

  • Stock is never modified directly by a user action other than through a defined process (reception, adjustment, shipping, etc.). The stock view allows adjustments, but each has constraints and requires a reason.
  • Stock in a quality lock (user status or receiving status that disallows shipping) is excluded from stock assignment for outbound orders, unless the SOR line explicitly requests that specific status.
  • Reserve recalculation occurs when stock is locked or adjusted: if a reserve is broken, priority is given to the highest-priority orders that reserved earliest.
  • Stock in ASN state (pre-notified) cannot be adjusted or decreased.
  • Adjustments to client stock (prepared for an order) are more restricted: only certain changes allowed; others require that the container is not in prepared state.
  • When stock is decreased to 0 in a container, the container is either deleted or left empty depending on the location's "Delete empty containers" configuration.
  • A stock line with tasks cannot be freely modified: existing tasks are adjusted or canceled, and lines are re-released for re-assignment.
  • Multiple receptions: when stock originates from multiple receipts consolidated at the same location/container, a decrease or adjustment must identify which receipt it applies to.

Stock adjustment

Stock adjustments allow operators to correct discrepancies between the WMS record and physical reality.

Types of adjustments

Adjustment type What changes Interface
Quantity increase Adds to existing stock quantity PC / RFT ("Utilities → Increase item")
Quantity decrease Subtracts from existing stock quantity PC / RFT ("Utilities → Decrease item")
Location adjustment Full edit: quantity + UoM + user status + logistic attributes; can create/delete lines PC / RFT ("Utilities → Location adjustment")
Picking location adjustment In PDL with labeled partitions: quick adjustment by reading partition label; can create/change partition assignments RFT
Picking conveyor adjustment Same as location adjustment but for containers at PK conveyors in auto warehouse Workstation ("Workstation → Picking → Others → Stock Adjustment")

Rules for adjustments

  • All adjustments require an adjustment reason (from the reasons master). One reason can cover multiple adjustments in a session.
  • When quantity is adjusted and stock has:
    • Putaway tasks: task is canceled so location search is recalculated with new weight/characteristics
    • Picking/shipping tasks (not in execution): assignment canceled; line re-released
    • Picking/shipping tasks (in execution): task quantities adjusted; line re-released for deficit
    • Replenishment source assignments: assignments adjusted; picking tasks at PDL adjusted or canceled
  • Reserve priority: on decrease, the most recently assigned reserves are preferentially canceled; oldest are preserved
  • Cutting stock adjustments can optionally trigger cutting stock label printing (if cutting profile has "Label source stock" active)

Communications

  • Adjustment generates: STV message (ERP notification of stock value change)
  • Transaction recorded: STK.ADJ

STV important note: The quantity in the STV message is the delta (quantity that changed), not the remaining quantity in the warehouse. For example, if 10 units were deleted, STV sends -10, not the new total. The ERP must accumulate deltas or use SCR/WSC for a full stock image.

WSC / SCR: To get the complete stock image, the ERP sends an SCR request and EasyWMS responds with a WSC file. This can be:

  • Grouped by item (one line per item/owner/status)
  • Detailed (with location and container)
  • The WSC does NOT discriminate "available to sell" — use stock status filtering for that.
  • Stock at 0 can optionally be included (configurable).
  • Can be sent on-demand or on a scheduled basis (once/day or at intervals).

Adjustment reasons

Reasons are configured in Masters > Adjustment reasons. Each reason can optionally require a comment. Reasons are referenced in audit trails and ERP communications.

Double validation

EasyWMS supports a double validation mechanism for stock adjustments. When active, an adjustment stays in "Pending" status until a manager validates or cancels it.

  • Pending: adjustment entered but not yet applied. No STK.ADJ transaction; no STV sent to ERP.
  • Validated: manager approves → adjustment is applied, transaction and STV generated.
  • Cancelled: manager rejects → stock is restored, no transaction or ERP notification.

Configuration (per item, in inventory profile):

Setting Behavior
Never No double validation — adjustments applied immediately
Always All adjustments require manager validation
By tolerance Requires validation only if delta exceeds a configured threshold (absolute value or %)

Pending adjustments are visible in the Adjustments view with status "Pending". They do not affect stock available for picking.

Stock status operations (from the Stocks view)

Operation Description Visibility
Audit View stock audit trail (all movements and changes) Single record
Adjust Open adjustment dialog for this stock line Single record
Status Change user status of this stock Single record
Container Mark container as complete / lock / change location Single record (containerized stock)
Relocate container Automatic relocation / to location / to aisle or level Single or multiple records
Print container label Print LPN label for this stock's container Single record
Delete Delete stock line (with adjustment reason) Single record
New Create new stock line in a container/location No records selected
Forward traceability lock Lock all downstream stock derived from this lot/reception No records selected
Stock contrast Request WMS to send current stock snapshot to ERP (triggers WSC) No records selected
Print list / Export list Print or export filtered stock lines No records selected

Grouped stock reports

The grouped stock reports provide aggregate views of stock without the per-line detail of the Stock view:

Report Grouped by Use case
By item Item code Total stock per SKU across warehouse
By date and lot Item + date + lot Traceability and FEFO management
By presentation Item + presentation (UoM) Commercial stock view
By presentation, date and lot Item + presentation + date + lot Detailed expiry tracking
By sub-warehouse and zone Sub-warehouse + zone Area-level stock overview

Parameters

Parameter Effect
MAX_NUM_LABELS_TO_READ Enables multi-reference label reading during stock adjustment (also applies to reception and counts)
UNLOAD_CREATE_PRODUCT_LOCATION Auto-creates/updates picking dedicated location assignments during PDL adjustment
REPLENISH_LEVEL_PERCENT_PRODUCT_LOCATION Level threshold calculation for PDL replenishment triggered by adjustment

Interface

Function Hardware Menu path
Stock lines view PC Inventory (or Warehouse) → Stock
Quantity increase RFT Utilities → Increase item
Quantity decrease RFT Utilities → Decrease item
Location adjustment RFT Utilities → Location adjustment
Picking conveyor adjustment Workstation Workstation → Picking → Others → Stock Adjustment
Grouped stock reports PC Reports → Grouped stock
Stock contrast (send WSC) PC From Stock view → Stock contrast button

Common errors

Symptom Cause Solution
Cannot adjust ASN stock Stock is in pre-notified container not yet received Receive the container first via the reception process
Cannot adjust client stock Stock is prepared for a shipping order in a client container Un-prepare the stock via shipping management, then adjust
Adjustment fails — reason required No adjustment reason selected Create reasons in Masters; select one before adjusting
Stock not visible in view Stock in virtual location (ASN, Lost_Found) or filtered out Remove filters; check virtual locations explicitly
Stock in lock not assignable User or receiving status prevents shipping Release the lock (manually or via STR from ERP); or add required status to SOR line
Quantity jumps after decrease Other stock from the same item was consolidated Separate stock lines if needed; use "From multiple receptions" selection
STV not sent to ERP Integration configuration issue Check ERP integration settings; verify STV message is enabled
  • container — stock is either containerized (in an LPN) or loose; container locks and type affect stock eligibility
  • location — every stock record has a location; location logics (allow shipping, allow replenishment) determine eligibility
  • product-item — item defines the static attributes; stock is the physical quantity with runtime attributes
  • reception — stock is created during the reception process; receiving status can be set at receipt
  • picking — stock is assigned and picked for outbound orders; picking consumes stock quantity
  • shipping — shipping closes orders and removes stock from the warehouse
  • count — counts verify the accuracy of stock records; discrepancies trigger adjustments
  • stock-adjustment — detailed adjustment procedures (quantity, UoM, logistic attributes)
  • stock-assignment — the allocation engine that binds stock lines to outbound order line details (StockAssignProcess_* workflows, assignment types, customisation points)
  • order-outbound — stock assignment links specific stock lines to SOR lines; reserves and assignments
  • task — tasks move stock between locations; running tasks block certain stock adjustments
  • erp-interface — STV message reports stock changes; SCR/WSC for stock contrasts; STR for status locks