Item based allocation

The Item Based Allocation transaction allocates unpromised and promised demands of existing orders to more suitable supplies based upon inventory items and nodes which have been triggered for the Item Based Allocation process in the YFS_IBA_TRIGGER table.

The Item Based Allocation agent obtains and processes all Item Based Allocation triggers from the YFS_IBA_TRIGGER table that meet the following conditions:

If InventoryOrganizationCode is specified in the agent criteria, only the IBA trigger with inventory items of that inventory organization is retrieved.

For each triggered item and node combination, the agent finds all of the applicable order lines or order line reservations that contain the item and node and tries to move their unpromised and promised demands to more suitable available supplies based on user-configured IBA selection rules or FIFO (First-In-First-Out) IBA selection rules.

Sterling Selling and Fulfillment Foundation creates new positive order line reservations with the matched supply's first ship date and negative order line reservations for the existing demand ship date. Once all orders are processed, they are placed on hold to be rescheduled if changes are detected in the order line reservations.

The following configuration is required for the Item Based Allocation process:

The ‘When a line is backordered, backorder against the highest priority ship node' rule should be checked in order to reallocate backordered demand. For more information, see the Fulfillment Rules section in the Sterling Selling and Fulfillment Foundation: Distributed Order Management Configuration Guide.

Before processing the Item Based Allocation logic, the Item Based Allocation agent updates the following fields on the Item Based Allocation trigger:

Obtaining a list of demands based on applicable order release statuses and order line reservations to be allocated

A list of demands is derived from applicable order release statuses and order line reservations, which have the item and node in the IBA trigger. The following types of demands are retrieved:

The demand quantity is derived based on the order release status quantity with the status from the Status Inventory Type configuration that has a demand type, which considers the supply type with ‘Use Consider Demand Type for Item Based Allocation' enabled. For more information, refer to the Sterling Selling and Fulfillment Foundation: Global Inventory Visibility Configuration Guide.

Obtaining a list of available supplies for allocation

Sterling Selling and Fulfillment Foundation obtains the available supply based on the availability of the item at the node by ignoring unpromised and promised demands. If the inventory organization maintains its inventory externally, the external availability can be read by the YFSGetExternalInventoryUE user exit. Only the availability of supplies that consider the ‘Demand Type Look for Availability during Item Based Allocation' are used in the allocation logic. For more information, refer to the Sterling Selling and Fulfillment Foundation: Global Inventory Visibility Configuration Guide.

Allocated demands should be matched with the same supplies as "Demand to look for during release".

Matching demands against supplies in FIFO (First-in-first-out) order

Sterling Selling and Fulfillment Foundation sorts the list of available supplies in the order of the first shippable date (ETA), and matches the obtained list of demands using the top-down logic (unlike the normal matching logic for obtaining availability, where matches are based on the closest ETA). Demands are allocated in the following orders:

Notice that different types of demands are given different priorities based on their significance. The demands of chained orders or orders related to chained orders are treated with a higher priority than the demands of normal orders. Furthermore, the demands with a ship date within the advanced notification time window also have a higher priority than the demands with a date outside of the advanced notification time window.

Updating order reservations for the matched demands

After matching the available supply and demand in user-configured sequencing and then in FIFO order, the system builds up a list of order line reservation changes and inventory demand changes (corresponding to the order line reservation changes) and summarize them to optimize the number of order reservation updates and inventory updates. Negative order line reservations are added for the matched demands. Positive order reservations are added for the matched demands with the product availability date set to the matched supplies' first ship date.

After the Item Based Allocation agent completes its tasks for an Item Based Allocation trigger, it updates the fields of the trigger with the following values:

The Item Based Allocation agent should be used in conjunction with the rescheduling process as the rescheduling process reschedules the affected orders by utilizing the order line reservations created by the Item Based Allocation process.

Attributes

The following are the attributes for this time-triggered transaction:

Table 1. Item based allocation attributes
Attribute Value
Base Transaction ID ITEM_BASED_ALLOCATION
Base Document Type General
Base Process Type General
Abstract Transaction No
APIs Called changeOrder – for updating the order line reservations created as part of the Item Based Allocation process.
User Exits Called None

Criteria parameters

The following are the criteria parameters for this transaction:

Table 2. Item based allocation criteria parameters
Parameter Description
Action Required. Triggers the transaction. If left blank, it defaults to Get, the only valid value.
Number of Records To Buffer Optional. Number of records to retrieve and process at one time. If left blank or specified as 0 (zero), it defaults to 5000.

InventoryOrganization
Code

The inventory organization code of the inventory items which are processed by the Item Based Allocation agent. If provided, only the IBA triggers with the inventory item that belongs to this inventory organization are processed.
ColonyID Required in a multischema deployment where the YFS_IBA_TRIGGER table may exist in multiple schemas. Runs the agent for the colony.

Statistics tracked

The following statistics are tracked for this transaction:

Table 3. Item based allocation statistics
Statistic Name Description
NumOrdersProcessed Number of orders processed by the Item Based Allocation agent.
NumOrdersRequiredReschedule Number of orders required rescheduling as the result of Item Based Allocation process.

Pending job count

None.

Events raised

This transaction raises events as specified under the changeOrder API in the Sterling Selling and Fulfillment Foundation: Javadocs.