--- description: Configure the State Mappings smart table when the machine's published state differs from the MES Resource state model. alias: userguide-equipment-integration-opcua-standard-state-mappings --- # State Mappings ## When a Mapping Is Required A mapping is required only when the value exposed in `State.MainState` is not the exact name of a state in the MES Resource state model. For example, if the machine publishes `RUN` but the MES state is named `Production`, configure a mapping from `RUN` to `Production`. If the machine already publishes `Production`, no Smart Table entry is required. ## Smart Table Configure mappings in `IndEqResourceStateResolution`. | Column | Required | Value to configure | | --- | --- | --- | | `Resource` | Yes | Enter the exact MES Resource name to which the mapping applies | | `MachineMainState` | Yes | Enter the value published by `State.MainState` | | `MachineSubState` | No | Enter the value published by `State.SubState` when the main state requires more specific resolution. Leave it empty when the main state alone is sufficient | | `MESResourceState` | Yes | Enter the exact target state name from the Resource state model | ## Configuration Examples | `Resource` | `MachineMainState` | `MachineSubState` | `MESResourceState` | Result | | --- | --- | --- | --- | --- | | `Filler01` | `RUN` | | `Production` | The machine main state alone resolves to `Production` | | `Filler01` | `STOP` | `CHANGEOVER` | `Setup` | The machine substate identifies a planned setup condition | | `Filler01` | `STOP` | `FAULT` | `Down` | The same main state resolves differently for a fault | ## Configuration Procedure 1. List the state values published by the machine. 2. Compare each main-state value with the states in the Resource state model. 3. Create mappings only for values that do not match directly. 4. Add `MachineSubState` only where it is needed to distinguish multiple outcomes for the same main state. 5. Enter the exact MES target state in `MESResourceState`. 6. Verify that every configured target exists in the Resource state model. 7. Test each direct and mapped value before production release. ## Related Runtime Behavior The mapping selects the target MES state. Transition validation, startup synchronization, and Reason behavior are described in [State Synchronization](../features/state-synchronization.md).