INTRODUCTION
RTAM is a time-triggered transaction that continuously monitors the availability of inventory items present in OMS. RTAM monitors the total availability across nodes or the availability at individual nodes.
its primary role is to detect changes in inventory levels and publish this information to ensure accurate stock representation across integrated frond end systems. Inventory updates are published by triggering the RTAM event whenever there are changes in inventory tracking.
RTAM is running in three modes :
- Activity Based Mode
- Quick Sync Mode
- Full Sync Mode
CONFIGURATION
1. Monitor Rule and its threshold and Alerts
GIV (Switch Org) – Inventory Rules – Monitor Rules – ATP monitor Rules – Create new
Alerts
Alerts Raised | Alert Level | Alert Type |
Inventory level above the high boundary | 0 | REALTIME_ONHAND |
Inventory level Medium to High boundary | 1 | REALTIME_ONHAND |
Inventory level Low to Medium boundary | 2 | REALTIME_ONHAND |
Inventory level below low level | 3 | REALTIME_FUTURE_MAX |
2. Basic sourcing configuration
DOM(Switch org) – Cross Application – Order Promising – Sourcing and Scheduling – Basic Configuration
3. RTAM Agent configuration
Application Platform (default) – Process Modeling – General – Transaction – Real Time Availability Monitor
MONITOR OPTIONS OF RTAM:
ACTIVITY BASED MODE
When Inventory level of items has any changes, the availability information are published to external system. Agent checks the YFS_INVENTORY_ACTIVITY table where, details of every inventory changes are recorded. Once the Agent read the inventory information from the table, it will raise an event to publish the availability information to external system and published information will get stored into YFS_INVENTORY_ALERTS Table.
Agent Configuration
Criteria Parameters :
- MonitorOption – ‘1’ [For Activity Based Mode]
- RaiseEventOnAllAvailabilityChanges – Y
Valid Values – Y, N
Y – For all inventory changes, it will raise an event to publish it.
N – Only published whenever inventory level goes above or below the threshold value.
Published Message :
<InventoryItem ItemID=”USB_Cable” ProductClass=”GOOD” UnitOfMeasure=”EACH”> <AvailabilityChanges> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP1″ AlertLevel=”0″ AlertQuantity=”2147483647.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”SPICA_WH_01″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”995.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP1″ AlertLevel=”2″ AlertQuantity=”50.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”SPICA_WH_02″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”50.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP1″ AlertLevel=”0″ AlertQuantity=”2147483647.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”” OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”1125.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP1″ AlertLevel=”2″ AlertQuantity=”50.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”SPICA_STORE_03″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”25.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP1″ AlertLevel=”3″ AlertQuantity=”10.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_FUTURE_MAX” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”SPICA_STORE_01″ OnhandAvailableDate=”2500-01-01″ OnhandAvailableQuantity=”0.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP1″ AlertLevel=”1″ AlertQuantity=”100.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”SPICA_STORE_02″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”55.00″/> </AvailabilityChanges> </InventoryItem> |
QUICK SYNC MODE
The most recently published inventory information is resent to the external system. If the external system experiences downtime, this mode can be activated to republish the inventory picture to the integrated system. The agent will monitor the YFS_INVENTORY_ALERTS table and publish messages stored in that same table.Agent configuration
Criteria Parameters:
- Monitor Option – ‘2’ [ Quick Sync Mode ]
- FromAlertTimestamp – Only used for Mode 2. Publish inventory information between the time that the agent started and FromAlertTimestamp
- FromLastNumberOfHours – Only used for Mode 2. If FromAlertTimestamp is not provided, it will publish between current time stamp and FromLastNumberOfHours.
Published Message
<InventoryItem ItemID=”Monitor” ProductClass=”GOOD” UnitOfMeasure=”EACH”> <AvailabilityChanges> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP2″ AlertLevel=”0″ AlertQuantity=”2147483647.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”SPICA_WH_01″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”995.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP2″ AlertLevel=”2″ AlertQuantity=”50.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”SPICA_WH_02″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”50.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP2″ AlertLevel=”0″ AlertQuantity=”2147483647.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”” OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”1125.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP2″ AlertLevel=”2″ AlertQuantity=”50.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”SPICA_STORE_03″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”25.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP2″ AlertLevel=”3″ AlertQuantity=”10.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_FUTURE_MAX” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”SPICA_STORE_01″ OnhandAvailableDate=”2500-01-01″ OnhandAvailableQuantity=”0.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP2″ AlertLevel=”1″ AlertQuantity=”100.00″ AlertRaisedOn=”2024-11-15T15:11:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”1″ Node=”SPICA_STORE_02″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”55.00″/> </AvailabilityChanges> </InventoryItem> |
FULL SYNC MODE
Full Sync Mode is utilized when there is a need to perform a mass update of inventory information across the system or if consequent mismatches happen between OMS and external system. This mode ensures that all inventory items are monitored and that their availability data is published to integrated systems. It will monitor supply, demand and safety factor table to calculate the availability.
Agent configuration :
Published Message :
<?xml version=”1.0″ encoding=”UTF-8″?> <InventoryItem ItemID=”Pendrive” ProductClass=”GOOD” UnitOfMeasure=”EACH”> <AvailabilityChanges> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”0″ AlertQuantity=”2147483647.00″ AlertRaisedOn=”2024-11-15T13:23:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”SPICA_STORE_02″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”1000.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”0″ AlertQuantity=”2147483647.00″ AlertRaisedOn=”2024-11-15T13:23:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”SPICA_STORE_03″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”1000.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”0″ AlertQuantity=”2147483647.00″ AlertRaisedOn=”2024-11-15T13:23:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”SPICA_WH_02″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”1000.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”3″ AlertQuantity=”10.00″ AlertRaisedOn=”2024-11-15T13:23:38-05:00″ AlertType=”REALTIME_FUTURE_MAX” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”SPICA_STORE_01″ OnhandAvailableDate=”2500-01-01″ OnhandAvailableQuantity=”0.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”0″ AlertQuantity=”2147483647.00″ AlertRaisedOn=”2024-11-15T13:23:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”SPICA_WH_01″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”994.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”0″ AlertQuantity=”2147483647.00″ AlertRaisedOn=”2024-11-15T13:23:38-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”” OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”3994.00″/> </AvailabilityChanges> </InventoryItem> |
EVENT CONFIGURATION
Application Platform (default) – Process Modeling – General – Transaction – Real Time Availability Monitor
MONITORING RULES OF RTAM :
GROUP LEVEL MONITORING
RTAM can monitor and publish the availability of a distribution group, which can be a group of nodes, distribution groups, or individual nodes. This level allows businesses to monitor the availability of items across an entire distribution group rather than focusing on individual nodes.
Configuration :
GIV ( switch org ) – Inventory Rules – Monitor Rules – Click the gear box
Published Message :
<InventoryItem ItemID=”OTG_Cable” ProductClass=”GOOD” UnitOfMeasure=”EACH”> <AvailabilityChanges> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”3″ AlertQuantity=”10.00″ AlertRaisedOn=”2024-11-15T17:51:28-05:00″ AlertType=”REALTIME_FUTURE_MAX” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”” OnhandAvailableDate=”2500-01-01″ OnhandAvailableQuantity=”0.00″/> </AvailabilityChanges> </InventoryItem> |
NODE LEVEL MONITORING
RTAM can monitor the availability of individual nodes in a specified distribution group. This monitoring level allows for precise tracking of inventory levels at each node, ensuring that any changes in stock are immediately reflected.
Configuration :
GIV ( switch org ) – Inventory Rules – Monitor Rules – Click the gear box
Published message :
<?xml version=”1.0″ encoding=”UTF-8″?> <InventoryItem ItemID=”KEYBOARD” ProductClass=”GOOD” UnitOfMeasure=”EACH”> <AvailabilityChanges> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”3″ AlertQuantity=”10.00″ AlertRaisedOn=”2024-11-15T18:03:55-05:00″ AlertType=”REALTIME_FUTURE_MAX” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”SPICA_STORE_01″ OnhandAvailableDate=”2500-01-01″ OnhandAvailableQuantity=”0.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”1″ AlertQuantity=”100.00″ AlertRaisedOn=”2024-11-15T18:03:55-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”SPICA_WH_02″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”100.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”1″ AlertQuantity=”100.00″ AlertRaisedOn=”2024-11-15T18:03:55-05:00″ AlertType=”REALTIME_ONHAND” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”SPICA_WH_01″ OnhandAvailableDate=”2024-11-15″ OnhandAvailableQuantity=”100.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”3″ AlertQuantity=”10.00″ AlertRaisedOn=”2024-11-15T18:03:55-05:00″ AlertType=”REALTIME_FUTURE_MAX” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”SPICA_STORE_03″ OnhandAvailableDate=”2500-01-01″ OnhandAvailableQuantity=”0.00″/> <AvailabilityChange AgentCriteriaId=”REALTIME_ATP_MONITOR_OP3″ AlertLevel=”3″ AlertQuantity=”10.00″ AlertRaisedOn=”2024-11-15T18:03:55-05:00″ AlertType=”REALTIME_FUTURE_MAX” FirstFutureAvailableDate=”2500-01-01″ FutureAvailableDate=”2500-01-01″ FutureAvailableQuantity=”0.00″ MonitorOption=”3″ Node=”SPICA_STORE_02″ OnhandAvailableDate=”2500-01-01″ OnhandAvailableQuantity=”0.00″/> </AvailabilityChanges> </InventoryItem> |
#LetsTalkOMS #SpicaTech