Files
mcp-wms-wiki/wiki/concepts/product-item.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

25 KiB
Raw Blame History

title, type, sources, related, last_compiled
title type sources related last_compiled
Product / Item concept
areas/inventory_management/items/index.md
areas/inventory_management/items/types.md
areas/inventory_management/items/uom.md
areas/inventory_management/items/uom_base.md
areas/inventory_management/items/logistic_attributes.md
areas/inventory_management/items/profiles.md
areas/inventory_management/items/families.md
areas/inventory_management/items/alias.md
areas/inventory_management/items/conversions_presentations.md
areas/inventory_management/items/logistic_profile.md
areas/inventory_management/items/reception_profile.md
areas/inventory_management/items/putaway_profile.md
areas/inventory_management/items/shipping_profile.md
areas/inventory_management/items/abc_classification.md
areas/inventory_management/items/substitutes.md
areas/inventory_management/items/weight.md
areas/inventory_management/items/mix_items.md
areas/inventory_management/items/min_and_max.md
areas/inventory_management/items/subwarehouse_classification.md
areas/inventory_management/items/views/view_items.md
sources/archives/07_Gestion_gerbabilite.md
sources/archives/08_Ajouter_image_fiche_article_ITM01.md
sources/archives/12_Articles_alternatifs.md
sources/archives/15_Configuration_ABC.md
sources/archives/28_Creation_attribut_logistique_sans_capture.md
sources/archives/33_Les_poids.md
concepts/stock.md
concepts/container.md
concepts/reception.md
concepts/putaway.md
concepts/picking.md
concepts/shipping.md
concepts/count.md
concepts/order-inbound.md
concepts/order-outbound.md
concepts/cutting-stock.md
concepts/labels.md
concepts/erp-interface.md
2026-04-17

Product / Item

Overview

An item is the primary static master data element in Easy WMS. It represents each distinct product that an organization manages in its warehouse. Almost every WMS behavior - reception, putaway, picking, shipping, counting, replenishment - is governed by item configuration.

A critical distinction: the item is the master definition (SKU, attributes, rules), while stock is the physical instance of that item (a quantity of that item in a specific location/container with specific logistic attributes). The same item code can have stock across many locations simultaneously. Multiple owners can also hold stock of the same item code.

Items are managed primarily through the ERP (via ITM messages) or directly in the "Masters" section of the WMS interface. Every item must have at minimum a base unit of measure, a reception profile, and a shipping profile.

Types

Item types (storage mixing control)

Item types define mixing restrictions at the storage level (locations, containers, container divisions). When item types are configured, each type specifies whether it can mix with other types and which types are explicitly excluded.

  • Item types do not affect reception or shipping
  • With location partitions, the partition limit applies to the individual item, not to its type

Use case: prevent storing hazardous chemicals in the same location as food items.

Item families (client container mixing control)

Item families define mixing restrictions for client containers (containers being prepared for outbound shipping orders). Unlike types, families have no effect on storage locations.

Use case: prevent mixing refrigerated and ambient items in the same outbound parcel.

When the Multi-Carrier module is active, item families also carry a packaging method that controls how the carrier call is generated:

  • Scan all items - operator scans each item into a parcel
  • Choose parcel count - operator declares how many parcels; system moves all stock into parcel 1 (no automatic weight)
  • 1 parcel always - no operator input; system assumes single-parcel shipment (for high-volume B2C)

The most restrictive method in an order takes precedence (Scan > Choose > 1 parcel).

ABC Classification

The ABC classification indicates the rotation/activity level of an item relative to others:

  • A: High rotation (fast-movers)
  • B: Medium rotation
  • C: Low rotation (slow-movers)

Used in slotting optimization and putaway strategy rules to position items strategically.

Operating principles. The higher the class's movement threshold, the more important it is (A > B > C). Articles with the most movements are classified in the highest class. Thresholds represent cumulative movement share - an A article = top 50%, a B = top 80% (50+30), etc.

When an article straddles two classes, the Type de calcul chosen at evaluation decides :

Mode Behavior on overlap
Inclusive Keeps the higher class
Exclusive Keeps the lower class

ABC class setup. Données Principales → Détails d'articles → Classement ABC :

  • The higher the minimum movement %, the stronger the rotation represented.
  • No duplicate percentages.
  • The sum of all class percentages must not exceed 100.

First assignment. On first setup, every article is set to the lowest rotation class. This should be done in the article-base import ; when a new article is later created, this field must be populated manually.

ABC evaluation (runtime) - Tableaux de Bord → Evaluation ABC (recent versions). Parameters :

  • Date - Start-end date or By number of day
  • Mouvements - task types to include (at least one required)
  • Type de calcul - Inclusive or Exclusive

Execute then refresh the grid to see the results. Results persist until the next evaluation.

Reading the result grid :

  • Red lines - article is over-rated vs. the evaluation (its stored class is more important than measured activity).
  • Green lines - article is under-rated (measured activity higher than stored class).
  • Conforming articles are not listed.

The classification can be edited inline from the evaluation grid.

ERP notification. A dedicated button ships the list of misclassified articles to the ERP via the SAC file. To activate : Configuration → Types de transaction → search SAC.SEND.001 → enable notification on insertion + post-processing.

Units of Measure (UoM)

Every item must have a base UoM - the reference unit for all conversions. All stock quantities are stored and reported in the base UoM.

Additional conversions and presentations (EAN/GTIN presentations) define the commercial packaging:

  • Each conversion specifies the quantity of base UoM it contains (e.g., BOX12 = 12 units)
  • Each presentation has an EAN code (barcode for scanning at reception/picking)
  • A conversion can be virtual (reference only; no actual stock in that UoM)
  • Quantities can be decimal or less than 1 (e.g., fabrics measured by the meter)

The optional system toggle ProductConversionQuantityMustBeGreatherThanOne controls whether conversions can be smaller than the base UoM.

UoMs have an optional 2-character abbreviation used on PTL (pick-to-light) displays.

ERP integration: UoM creation (but not change or deletion) via ITM message.

Alias is an additional item code (e.g., EAN, customer code) for identification. An alias on a presentation represents the GTIN/barcode for that packaging. Easy WMS supports GS1 and HIBC label standards.

Logistic attributes

Logistic attributes are characteristics that condition the logistic behavior of stock. They are defined in the logistic profile and associated with an item. The Allow mixing property per attribute controls whether stock with different values of the same attribute can be stored together.

Logistic attribute Description Typical configuration
Lot Groups of units produced under identical conditions (batch) Mandatory on receipt; optional mixing allowed or not; max lots per line configurable in SOR
Expiration date Date after which stock is unusable Mandatory on receipt; drives FEFO shipping logic
Best-before date Date after which stock loses some quality Similar to expiration date
Production date Date stock was manufactured Optional; used with days-of-life calculations
Days of life Number of days stock is usable; system generates shelf life expiration date Configured as mandatory on receipt; shipping calculates eligibility: current date + required days ≤ end-of-life date
Serial number Unique alphanumeric ID per unit Captured at picking, ungrouping, or packaging; optionally at putaway
Quality Qualitative characteristic (e.g., Grade A/B) Mandatory or optional on receipt; mixing restrictions configurable
Size/Caliber Dimensional size of stock units Mandatory or optional; value list configurable (e.g., small/medium/large)
Color Stock color Value list configurable
Version Version/revision number; mandatory for kit items
Production method Manufacturing process used
Post-production treatment Processing after manufacturing

Mixing days refinement: for date-controlled items, specifies the maximum difference in days between mixed stock dates (expiry, shelf-life, or production depending on shipping logic).

Creating a logistic attribute without a capture mode

By default, every logistic attribute requires a capture mode (manual, scan, etc.). In some custom flows the attribute must be auto-generated by code (e.g., serial number generated server-side) and therefore must exist without any capture mode - otherwise SmartUI / RFT will always prompt the operator.

⚠️ Once configured this way, the attribute value can no longer be edited from SmartUI or RFT without a custom - the only writer is the custom code that creates the stock.

Procedure (requires Admin role + Run Command access):

  1. Create the logistic profile and add the attribute of the desired type. The capture mode is mandatory at creation - set it to Manual (it will be deleted in step 4).

  2. Collect the identifiers with a Run Query on the reading context:

    Context.LogisticAttributes.Select(la => new {
        la.Name,
        la.Id,
        la.LogisticProfileId,
        la.LogisticProfileCode,
    })
    

    Note the LogisticAttributeId and LogisticProfileId of the attribute just created.

  3. Generate a new GUID via a scalar Run Query on the writing context (check "Is scalar"):

    Guid.NewGuid()
    
  4. Run Command LogisticAttributeCreateLogisticCaptureCommand with:

    Field Value
    CaptureMode 2
    CaptureProcess 2
    LogisticAttributeId ID from step 2
    LogisticCaptureId GUID from step 3
    ProfileId Profile ID from step 2
  5. Delete the initial Manual capture mode from the logistic profile. The attribute now has only the empty (auto) capture mode.

Validation. In the logistic profile edit view, the attribute line appears with an empty capture mode. Confirms configuration is correct.

Profiles

Profiles define item behavior in each WMS process. They allow bulk configuration - many items can share the same profile.

Profile Required Purpose
Logistic profile Optional Defines which logistic attributes the item has and their mixing rules
Reception profile Mandatory Controls behavior during inbound: label printing, weight capture, logistic attribute prompts, etc.
Putaway profile Optional Links to putaway strategies and location rules for this item
Shipping profile Mandatory Controls behavior during outbound: weight capture, substitute item mode, consolidation rules, etc.
Manufacturing profile Optional Governs automatic logistic attribute generation for finished goods in manufacturing
Count profile Optional Defines behavior during physical counts
Cutting profile Optional Marks item as a cutting stock item; defines consolidation behavior and label requirements during cut picking

Profile configuration examples

Logistic profile examples:

Profile name Logistic attributes tracked
PROFIL_SIMPLE No special attributes (no lot, no expiry)
PROFIL_DLC DLC (use-by date) + optional lot; shipping uses FEFO
PROFIL_LOT Lot number only
PROFIL_SN Serial number (unit-level traceability)

Reception profile examples:

Profile name Key settings
PROFIL_SIMPLE No quality block; quantity entry mode = scan + manual; 0% tolerance; expired stock: configurable
PROFIL_QUALITE Block with QUALITE status until manual release; standard scan + quantity

Shipping profile examples:

Profile name Key settings
PROFIL_FIFO_MANU FIFO shipping logic; 0% picking excess; manual quantity validation
PROFIL_FIFO_SCAN FIFO logic; 0% picking excess; 1 scan validates quantity
PROFIL_FEFO FEFO logic (First Expired First Out); used for perishables

Item attributes (full reference)

Attribute Description
Owner Company owning this item's stock; multiple owners can hold same item code
Description Full description (displayed in web UI)
Short description Abbreviated description (≤ defined length; used on RFT and workstation)
Handling description Instructions shown to operator at reception
Base UoM Reference unit for all conversions
Alias Additional codes (EAN, customer codes, GTINs per presentation)
Conversions & presentations UoM equivalences with EAN per packaging
Profiles Logistic / Reception / Putaway / Shipping / Manufacturing / Count / Cutting
Logistic attributes Characteristics controlling stock traceability (see above)
Stackability (Gerbabilité) Numeric value 010 controlling picking order and pallet-layer order in client containers. Low value = solid → picked first, placed at the bottom of the pallet. High value = fragile → picked last, placed on top. Populated via the <Stack> tag in ITM01. When all picked items share the same stackability, the default picking path is used instead.
Allow mix Whether different items can coexist in same location/container/division
ABC Classification Rotation level (A/B/C); used in putaway strategies
Sub-warehouse classification Min/max stock quantity per sub-warehouse
Image Product image (displayed during eCommerce reception at workstation). Set via the <ImageName> tag in ITM01. See "Item Image (ITM01)" below for local vs. URL-hosted options.
Hazard Marks item as hazardous material; used in putaway strategy restrictions
Stock labeled Whether item has a barcode label; if yes, auto-fills alias during picking
Substitute items Alternative items used when stock of this item is insufficient; each substitute has an equivalence ratio
Weight Fixed weight or min/max range (for variable-weight items like cutting stock); used for weight tolerance at reception and weight-capture enforcement in logistic profile
Item types Storage mixing groups
Item families Client container mixing groups
Is bulky eCommerce: bulky items go directly to storage area, not to standard reception processing
Min quantity for shipping Minimum shippable length/quantity (cutting items only)
Max quantity for shipping by line Maximum length/quantity per line (cutting items only)
Warning in picking message Free-text message shown to operator during picking of this item
Min temperature Minimum storage temperature; used in putaway to filter compatible locations
Max temperature Maximum storage temperature; used in putaway to filter compatible locations
Is packaging Marks item as a packaging material (informational only)
Allow crossdocking Whether stock of this item can be used for crossdocking
Conversion for picking Default UoM suggested during picking (when no alias scanned and no SOR preference)
Max partitions per item Maximum number of partitions assignable to this item in a picking location
Free fields (120) Up to 20 configurable free-text fields for custom data (e.g., brand, color code, fiscal code). Field labels are defined at the warehouse level. Useful for information that doesn't map to standard fields.
Minimum stock Minimum stock level threshold; when available (unprepared) stock falls below this, managers can receive alerts. Does not automatically trigger replenishment.
Picking alert message Free-text message displayed to operator when a picking task starts for this item (e.g., "Also take the battery"). Used for handling instructions.

Item Image (ITM01)

Two delivery paths for item pictures populated through <ImageName> :

Local file. By default, the WMS looks for images in :

C:\inetpub\wwwroot\SmartUIServices\Imagenes\EasyWMS

<ImageName> must contain only the filename (with .jpg / .png extension) :

<ImageName>GINI.png</ImageName>

Remote URL. Edit C:\inetpub\wwwroot\SmartUIServices\appsettings.json and set the fixed URL prefix in "UserImagesURI". In ITM01, <ImageName> still contains only the filename :

  • UserImagesURI = https://pim.example.com/media/
  • <ImageName> = 879507f2_R26_0203_BLK_1.jpg
  • Effective URL resolved by the WMS : https://pim.example.com/media/879507f2_R26_0203_BLK_1.jpg

Alternative / Substitute Items

When an item is out of stock, the WMS can pick a replacement item depending on its configuration. Setup requires three elements and an optional ERP flag :

1. SOR flag (ERP allows substitution)

In SOR01 / SOR02, on the relevant <Line> elements :

<LneTerms>
  <LneTrmAlternative>true</LneTrmAlternative>
</LneTerms>

2. Shipping profile - substitution mode

Every item involved in the substitution must carry a shipping profile (Données principales → Détails d'articles → Profils d'expédition). The mode (X = requested item, Y = substitute) is :

Mode Behavior
Partiel Sums X + Y to reach the requested quantity. X is prioritized.
Substitution Picks X or Y exclusively - whichever quantity is closest to the requested one.
Tout ou rien If X + Y cannot reach the requested quantity, picks only X regardless of its quantity.

⚠️ For components of non-assembled kits, the mode must be Partiel.

3. Substitute item table

In Données principales → Articles, select the item to be replaced, click "Ajouter Alternatif" and fill :

  1. Base item.
  2. Trigger quantity (from what quantity onwards the replacement applies / by how many at a time).
  3. Substitute item.
  4. Quantity of the substitute used to replace the trigger quantity defined in (2).
  5. Activation period (leave blank = ad vitam).

4. SOF feedback

Case SOF payload
Only X picked <LneDIsAlternative>false</LneDIsAlternative>
X + Y picked Two <LneDetail> blocks : one with LneDIsAlternative=false (X), one with LneDIsAlternative=true (Y)
Only Y picked Single <LneDetail> with LneDIsAlternative=true - <LneItemCode> still contains X (the requested item)

Labeling

Easy WMS generates item labels in CODE128B format. The label includes at minimum the item code; optionally the short description (up to 36 characters in standard format).

Supported label sizes:

Format Labels per A4 sheet
A6 Printed by labeller
175×135 mm 2 per A4
148×105 mm 6 per A4
105×29 mm 20 per A4
75×25 mm 33 per A4

Cutting item labels have a special design: item code + length/quantity + UoM + logistic attributes. Format: A6 for labeller only.

Labels are printed from the web UI ("Items" view) or from the RFT ("Utilities → Label printing").

Item base management (lifecycle)

The WMS item base grows over time as ERP sends new items (seasonal articles, per-reception creation, etc.). Without active cleanup, the item base can become very large and slow WMS search performance.

Key principle: the WMS should mirror the ERP's active article status.

  • When the ERP deactivates an article, it should send a deletion signal to the WMS (via ITM with deletion flag).
  • Most ERPs do not physically delete articles, only deactivate them. The WMS deletion should be triggered at that point.
  • If the ERP reactivates an article, it must resend the ITM creation file.
  • WMS can only delete an item if no active stock or tasks reference it.

Warning

: If the ERP cannot manage item lifecycle signaling and item volume is high, a custom cleanup strategy must be designed to prevent WMS performance degradation.

ERP integration

Message Direction Purpose
ITM ERP → WMS Create or update item master data (code, description, UoMs, profiles, logistic attributes)
SAC01 WMS → ERP ABC rotation classification suggestion. Sent manually after rotation recalculation in WMS; ERP can update item classification with this data.

Note: ITM creates UoMs but cannot change or delete them. Item changes via ITM require careful management to avoid disrupting active stock or tasks.

ABC rotation recalculation can be done:

  • For the whole warehouse or a specific storage zone
  • Over a configurable period (days or date range)
  • As many times as desired; thresholds for A/B/C classes are user-configurable
  • Result is indicative when ERP is the master; operator can manually apply the suggested class to the item, then trigger SAC01 to sync the ERP

Configuration

Key parameters:

  • ProductConversionQuantityMustBeGreatherThanOne (toggle): controls whether conversions < base UoM are allowed
  • MAX_NUM_LABELS_TO_READ (parameter): enables multi-reference label reading during reception, counting, and stock adjustment
  • Putaway strategies in putaway profile can filter by ABC classification, hazard, temperature, logistic attributes
  • Substitutes mode is configured in the shipping profile (partial substitution, all-or-nothing, etc.)

Interface

Function Hardware Menu path
Item master management PC Masters → Items
Logistic profiles PC Masters → Item details → Logistic profiles
Reception profiles PC Masters → Item details → Reception profiles
Putaway profiles PC Masters → Item details → Putaway profiles
Shipping profiles PC Masters → Item details → Shipping profiles
Manufacturing profiles PC Masters → Item details
Count profiles PC Masters → Item details → Count profiles
Cutting profiles PC Masters → Item details → Cutting profiles
Units of Measure PC Masters → Item details → Units of measure
Item types PC Masters → Item details → Item types
Item families PC Masters → Item details → (families view)
ABC Classification PC Masters → Item details
Label printing RFT Utilities → Label printing

Common errors

Symptom Cause Solution
Item cannot be received No reception profile assigned Assign a reception profile before creating receipts
Item not appearing in stock assignment No shipping profile, or shipping profile excludes this stock status Verify shipping profile; check required/rejected status flags on SOR line
Mixing error at reception Logistic profile "Allow mixing" set to No for a logistic attribute, and two values are present in the container Receive items in separate containers or enable mixing in logistic profile
Putaway profile not applied Item has no putaway profile; system uses default warehouse strategy Assign a putaway profile with appropriate strategies
Substitute not used in assignment Substitutes not configured in shipping profile, or not enabled in SOR line (LneTrmAlternative) Check shipping profile substitution mode and enable in order if needed
Days of life validation fails Stock end-of-life date < current date + required days in SOR line Ship with other stock, or ship expired stock explicitly if allowed
Picking message not shown Warning message not populated on item master Set the "Warning in picking message" field on the item
  • stock - stock is the physical instance of an item; stock lines carry item code, owner, logistic attributes
  • container - containers hold item stock; item stackability controls order of picking into client containers
  • reception - reception profile drives behavior at inbound; logistic attributes captured during receipt
  • putaway - putaway profile defines strategies for this item; temperature/hazard/ABC attributes feed strategy filters
  • picking - shipping profile and logistic attributes drive picking behavior; substitutes used on stock failure
  • shipping - shipping profile mandatory; families control client container mixing; substitutes activated on shortage
  • count - count profile defines item counting behavior (ABC-driven cycle counts)
  • order-inbound - ROR lines reference items by code or presentation alias
  • order-outbound - SOR lines reference items; logistic attribute filtering drives stock assignment
  • cutting-stock - cutting profile marks item as cut item; enables min/max quantities and cut label printing
  • labels - item labels printed at reception, from stock view, and from RFT utilities
  • erp-interface - ITM message manages item master from ERP; SAC01 sends ABC classification back to ERP
  • kits - kit articles and component articles are both standard items; kit assembly consumes component stock