Configuring the solution
To predict ordering quantities, cost ranges, and requisition patterns, historical data is copied from FSM to the Data Lake through the FSM_RQ_ST replication set where it is stored in FSM_RequisitionLine. AI and ML models use this data to analyze patterns and generate predictions.
Data flow and scheduling
- Replication sends requisition data to the Data Lake.
We recommend that you run replication at least once per day.
- Workflows must be scheduled after the replication is completed as replication triggers the model training using this data.
- Example schedule:
- FSM_RQ_ST → 00:00 AM
- Quantity Anomalies → 00:40 AM (FSM_RQ_Requisition_Quantity_Anomalies_SCH)
- Cost Anomalies → 00:50 AM (FSM_RQ_Requisition_Cost_Anomalies_SCH)
- Once training is complete, the prediction endpoints are updated.
Note: For initial setup and deployment, refer to the FSM_RQ_Requisition_Anomalies_Deployment_Guide.
Follow these key rules:
- Training uses released or processed requisition lines. A release date must exist for each line.
- Training uses data from the last year.
Quantity anomaly prediction logic
These steps are followed to check if the requisitioned quantity is anomalous:
- Quantity is converted to Stock UOM.
- Quantity is grouped by Requesting Location and Item.
- Pattern is analyzed and outliers are removed using the Interquartile Range (IQR) method.
- Final range is calculated and converted back to user-entered requisition line UOM for display.
Cost anomaly prediction logic
These steps are followed to check if the requisitioned quantity is anomalous:
- Cost is normalized to Stock UOM.
- Cost grouped by Item.
- Outliers are removed using IQR method.
- Predicted cost range is converted back to entered UOM and shown in widget.
Rolling window calculation
Follow these calculations:
- Rolling Window 1 (Baseline): Uses one-year historical data → Applies IQR to set lower and upper bound.
- Rolling Window (Recent Trend): Has two parts:
- Rolling down: Uses last “X” days → Captures short-term behavior shifts through IQR.
- Rolling up: Uses next “Y” days → Anticipates near-term trends through IQR.
Note: X and Y days are defined by users as a configurable parameter at use case level.
The widget shows the final range calculated from the weighted average of each rolling window.