SplitInventoryUpdates (Deprecated)
Rule
Changed on:
30 Apr 2025
Overview
Notifies the inventory positions of the incoming updates with event {eventName}| Plugin Name | Inventory Reference Module |
|---|---|
| Namespace | [[account.id]].globalinventory |
- Product Catalogue workflow
- Inventory Catalogue workflow
- Control Group workflow
- Virtual Catalogue workflow
UI Description
Notifies the inventory positions of the incoming updates with event {eventName}
Accepts
- INVENTORY_CATALOGUE
Actions
- This rule sends an individual event for each InventoryPosition record sent to the event up to the first 1000 records passed in the attributes.
Rule parameters
| Parameter | Description | Notes |
| eventName | The name of the event to be triggered | Required |
Event attributes
| Parameter | Description | Data Type | Required? |
| InventoryUpdates | Array of InventoryPosition records to be updated | [InventoryPosition] | No |
InventoryPosition sub-attributes
| Parameter | Description | Data Type | Required? |
| ref | ref | String | No, unused |
| type | The inventory position type | String | No, unused |
| productRef | The ref of the variant product associated to the inventory position | String | No |
| locationRef | The location ref associated to the inventory position | String | No |
| qty | The quantity | Integer | No |
| correctedQty | corrected quantity | Integer | No, unused |
| inventoryQuantity | inventoryQuantityUpdate | POJO | No |
InventoryQuiantity sub-attributes
| Parameter | Description | Data Type | Required? |
| ref | Inventor Quantity ref | String | No |
| type | Inventory Quantity type | String | No |
| qty | Quantity | Integer | No |
| status | Status | String | No |
Exceptions
Exceptions will be thrown if attributes in the incoming event are missing or an event name is missing in a given workflow.
Configuration example
1{
2 "name": "globalinventory.SplitInventoryUpdates",
3 "props": {
4 "eventName": "InventoryChanged"
5 }
6}Detailed Technical Description
This rule parses/deserialises an
`InventoryUpdates` event attribute into a list of `InventoryUpdate` objects, then it produces `SendEventActions` for each individual `InventoryUpdate` to create multiple new outgoing events for all inventory positions at `INVENTORY_CATALOGUE` level with the given event name.InventoryUpdate DTO Definition
1 public class InventoryUpdate {
2
3 private String ref;
4 private String productRef;
5 private String locationRef;
6 private Integer qty;
7 private Integer correctedQty;
8 private String type;
9 private InventoryQuantityUpdate inventoryQuantity;
10 };
11
12 public class InventoryQuantityUpdate {
13
14 private String ref;
15 private Integer qty;
16 private String type;
17 private String status;
18 private Map<String, Object> attributes;
19 }