CreateFulfilmentForUnfulfillableItems
Changed on:
25 Oct 2023
Overview
The creates `SYSTEM_REJECTED`
fulfilments for unfulfillable items using a ref provided in input parameters. It uses a mathematical calculation on counts of all fulfilments by dividing them into 2 different groups depending on their statuses i.e. accepted statuses and rejected statuses. If the `fulfilmentType`
parameter is not empty then a fulfilment with this type will be created.
UI Description
Creates a rejected fulfilment for order items that could not be fulfilled (no inventory) using location {PROP_SYSTEM_REJECTED_LOC_REF}, accepted statuses including {PROP_ACCEPTED_STATUSES} and rejected statuses including {PROP_REJECTED_STATUSES}. If the "fulfilmentType" parameter is not empty then a fulfilment with this type will be created.
Accepts
- ORDER
Actions
- This rule does not directly identify any event attributes
Rule parameters
Parameter | Description |
systemRejectedLocationRef | The ref to be used to create new SYSTEM_REJECTED fulfilment. |
acceptedStatuses | The list of all accepted statuses of fulfilments used to find the count of unfulfillable item counts. |
rejectedStatuses | The list of all rejected statuses of fulfilments used to calculate the aggregate count of rejected fulfilment items. |
fulfilmentType | The type of fulfilment. |
Event attributes
This does not directly identify any attributes.
Exceptions
This will throw an IllegalArgumentException
- if invalid order type
- if invalid location type
- if invalid
`acceptedStatuses`
, must not be empty - if invalid
`rejectedStatuses`
, must not be empty - if found a fulfilment status in both
`acceptedStatuses`
and`rejectedStatuses`
lists
All generated exceptions will be wrapped with RubixException
Configuration example
1{
2 "name": "<ACCOUNTID>.order.CreateFulfilmentForUnfulfillableItems",
3 "props": {
4 "fulfilmentType":"HD_PFS",
5 "systemRejectedLocationRef":"{{escalationLocation}}",
6 "acceptedStatuses":"[{{acceptedFulfilmentStatuses}}]",
7 "rejectedStatuses":"[{{rejectedFulfilmentStatuses}}]"
8 }
9}
Detailed Technical Description
Extension
If you are using Click and Collect, or Mixed Baskets reference workflows, following fulfilment types can be used without additional modification.
`CC_PFS`
for -
`CC_PFDC`
for - Pick from DC
`HD_PFS`
for -
`HD_PFDC`
for - Pick from DC
If you create your own fulfilment type and would like it to be supported in our reference , you need to set the custom type in the `fulfilmentType`
field and update the so the new fulfilment type can be processed.
Useful information:
Version History
v1.0.2
First release