Enterprise Order Integration (Future Receipts and Active PO/Pre-Order Processing)

Purpose: The enterprise order integration uses enterprise foundation inventory data that originates in Oracle Retail Merchandising Foundation Cloud Service (RMFCS) to support creating orders for items on active purchase orders, and submitting the orders to Order Broker for fulfillment as these items become available.

In this topic:

          Enterprise Order Flow Overview

         About Active PO Items

         Importing Future Available Information (OCDSFA Periodic Function)

         Setup Requirements for the OCDSFA Periodic Function

         Additional Things to Note about the OCDSFA Periodic Function

         Releasing Eligible Orders to Order Broker and Submitting the Backorder Quantity Update Notification

         PREORDER Periodic Function for (Order Broker Releases Earlier than 20.2)

         ACTPO Periodic Function for (Order Broker 20.2 or Higher)

         Reviewing Active PO Status and Quantities

         Future Receipts and Active PO Order Processing Configuration

         System Control Values

         Periodic Functions

         Web Service Authentication

         Properties

         Troubleshooting the Enterprise Order Integration

Enterprise Order Flow Overview

The order flow described below takes place if:

         The Use OROB for Fulfillment Assignment (M31) and Send B/O to OROB (K08) system control values are set to Y, the other system control values at the Order Broker Values (K15) and Order Broker Fulfillment Values are set, and all other related setup for integration with Order Broker is completed.

         You import enterprise data from Omnichannel Cloud Data Service (OCDS), as described below (Importing Enterprise Foundation Data through Omnichannel Cloud Data Service (OCDS)).

         Order Broker also integrates with OCDS. Order Broker release 18.1 or higher is required.

Important:                           The flow described here typically takes place for brokered backorders, but can also support releasing ship-for-pickup orders to Order Broker, provided that the fulfilling system supports this order type.

See Future Receipts and Active PO Order Processing Configuration for more configuration requirements.

With this setup:

         Order Management System submits orders to Order Broker for fulfillment rather than reserving the inventory in the warehouse.

         Certain items are flagged as active PO orders, indicating that:

         Customers can order these items before you have them in inventory.

         A limited quantity of each item will be ordered on an active purchase order, and then received in a fulfilling location in Order Broker.

         Optionally, once the full quantity of the item has been received on purchase orders, any additional quantity on orders can be sold out.

See below for more discussion.

About Active PO Items

You can take orders for an item that is not currently available, but that you anticipate will be available in the future through an active purchase order. These orders can then be fulfilled through submission to Order Broker as the inventory on active purchase orders is received into fulfilling locations and becomes available. The process flows described in this topic provide a means to take orders for these items in advance without selling them out prematurely, in anticipation of the time when they will be in stock in a location where Order Broker can assign them for fulfillment.

Order Management System relies on the purchase order information in OCDS to determine when these items can be fulfilled. Only the quantity that has been received on purchase orders is actively eligible for fulfillment; however, Order Management System uses the open quantity on purchase orders (future available quantity) to determine the quantity of each item that it can take in advance.

When an item is flagged as an active PO item:

         The system does not submit it to Order Broker as it normally does. Since the inventory across the enterprise is synchronized, there would be no point to submitting items to Order Broker prematurely, because Order Broker would not have the inventory to fulfill them, and would respond to Order Management System indicating the order was unfulfillable. Instead, Order Management System uses the processes described below to determine when to submit order lines to Order Broker for processing based on the inventory as it becomes available.

         The item sells out automatically when the order line is created if the active PO calculation indicates that there will not be sufficient inventory to fulfill it based on the on-order quantity, and if a soldout control code is assigned to the item.

Processing takes place through:

         Importing Future Available Information (OCDSFA Periodic Function)

         Releasing Eligible Orders to Order Broker and Submitting the Backorder Quantity Update Notification 

Importing Future Available Information (OCDSFA Periodic Function)

Tracking the future availability of active PO items enables Order Management System to determine how many units it will be able to fulfill. In order to track the future availability of pre-order/active PO items, Order Management System communicates with Omnichannel Cloud Data Service (OCDS) to determine:

         The total quantity of the item that is on order in Oracle Retail Merchandising Foundation Cloud Service (RMFCS), and,

         The total quantity of the item that has been received through RMFCS.

Periodic function: The future availability and active PO updates take place through the OCDSFA periodic function, which receives future availability information from OCDS and updates inventory records in Order Management System.

The periodic function receives information on quantities from OCDS and processes the updates described in the table below to manage active PO items that will be fulfilled through the Order Broker, and makes the following updates:

Item Warehouse updates based on the quantity information sent from OCDS: The periodic function:

         Updates:

         PO On Order: The total quantity on purchase orders for the item. From the on-order quantity sent by OCDS.

         PO Receipts: The total quantity that has been received against purchase orders, indicating the total quantity on active PO orders that Order Management System can submit to Order Broker for fulfillment. A cumulative total, from the received quantity sent by OCDS.

Note:            If the PO On Order quantity is the same as the PO receipts quantity, the periodic function does not make any additional updates. This situation might occur if active PO processing has already taken place, but the records in OCDS were not yet purged at the time the periodic function ran. Otherwise, the periodic function:

         Selects the Active PO flag, if it is not already set, to indicate that the item has an active purchase order for which you can accept orders before you expect to have inventory to fulfill. This flag indicates that the system should release units of the item to Order Broker for fulfillment as purchase orders are received.

         Sets the item warehouse on-order quantity to the PO On Order quantity minus the item warehouse Released Qty (the total quantity of the active PO item that has been released to Order Broker for fulfillment).

         Sets the Reservation freeze flag for the item warehouse to N, if it is not already set to N.

         Updates the PO Updated date.

The function also updates the item/SKU:

         Sets the soldout control value for the item to the Default Soldout Control Code (D72), if it is not set already.

         If the PO On Order quantity increases, sets the Active PO flag for the item/SKU to Y if it is not already selected. This is a display-only field on the Create Item (Base Information) Screen and Create SKU 1 of 2 (With Overrides) Screen, as well as the change and display screens.

About increases to PO On Order quantity: Typically, an increase in PO On Order quantity occurs for a new active PO (pre-order) item, although it can also occur for an existing active PO item.

Example:                    If the PO On Order quantity is 30, Order Management System can take active PO orders for a total of up to 30 units. The Active PO flag for the item is set to Y, indicating that Order Management System should retain orders for up to 30 units, releasing them to Order Broker as the purchase orders are received.

If the PO On Order quantity decreases, or stays the same, no additional updates take place besides those described above.

Note:            Active PO order lines are not sold out as a result of OCDSFA processing, regardless of whether there was a decrease in PO On Order quantity or the soldout control code currently assigned to the item.

When is Released quantity updated? The PREORDER or ACTPO periodic function updates the Released qty; see the related periodic function under Releasing Eligible Orders to Order Broker and Submitting the Backorder Quantity Update Notification for more information. This quantity is 0 for a new active PO item, but the periodic function also accounts for existing active PO items that have had a quantity released to Order Broker for fulfillment based on a receipt quantity.

Setup Requirements for the OCDSFA Periodic Function

Required setup for the OCDSFA periodic function includes the following.

         URL: From the OCDS Future Available URL (M49) system control value.

         Authentication: From the OCDS Service web service authentication. See Working with Web Service Authentication (WWSA).

         Item number: The Reference # (Reference number)) specified for the item in the SKU table identifies the item warehouse record to update. The retail reference number is set to the same value as the item code when you import items through OCDS, and should not be changed.

         Warehouse: The Default Warehouse (A04) system control value identifies the item warehouse record to update.

         Company: From the company submitting the periodic function.

         Periodic function: Create the OCDSFA (Program name = PFR0203) periodic function and assign it to a periodic process.

Use Importing Enterprise Foundation Data through Omnichannel Cloud Data Service (OCDS) to create the item warehouse records.

For more information: See Future Receipts and Active PO Order Processing Configuration for full configuration requirements.

Additional Things to Note about the OCDSFA Periodic Function

When to run: This function should be run after the OCDSITM function described in Importing Enterprise Foundation Data through Omnichannel Cloud Data Service (OCDS). Also, it should typically run more often than the OCDSITM function in order to capture frequent inventory updates as they are posted to OCDS.

Errors might occur if:

         The OCDS Future Available URL (M49) is not correct.

         The OCDS Service authentication set up through Working with Web Service Authentication (WWSA) is not correct.

         The Default Warehouse (A04) is not set.

         The item warehouse record does not exist. This situation might occur if the OCDSITM function did not run before the OCDSFA periodic function.

The OCDSFA periodic function also creates Enterprise Data Import History records. You can review these records, with an Import Type of FUTUREAVAILABLE, at the Enterprise Data Import History page in Modern View.

For more information: See Troubleshooting the Enterprise Order Integration for more troubleshooting information.

Releasing Eligible Orders to Order Broker and Submitting the Backorder Quantity Update Notification

There are two existing periodic functions that release eligible active PO orders to Order Broker:

         PREORDER Periodic Function for (Order Broker Releases Earlier than 20.2)

         ACTPO Periodic Function for (Order Broker 20.2 or Higher)

Both the PREORDER periodic function and the ACTPO periodic function also generate the backorder quantity update notification to RMFCS, if needed. See Generating the Backorder Quantity Update Notification Message (PREORDER or ACTPO Periodic Function).

PREORDER Periodic Function for (Order Broker Releases Earlier than 20.2)

When to use the PREORDER periodic function: Use this periodic function for integration with Order Broker releases earlier than 20.2. For integration with Order Broker 20.2 or higher, use the ACTPO Periodic Function for (Order Broker 20.2 or Higher).

PREORDER Processing Steps

Based on the updates made by the OCDSFA periodic function, the PREORDER periodic function performs the following steps.

         Determining the quantity available to submit to Order Broker.

         Releasing eligible orders to Order Broker.

         Updating Item Warehouse records.

         Submitting the Backorder Quantity Notification update message to Retail Integration Cloud Service.

Each is described below.

Submits active PO orders to Order Broker: Submits eligible active PO orders to the BROKER_ORD process for submission to Order Broker for fulfillment, determined by subtracting the released quantity from the PO receipts quantity.

Example:                    The PO receipts quantity is now set to 15 units, and 10 units have already been released to Order Broker. If there are 6 remaining units of the active PO item on open orders that have not yet been submitted to Order Broker for fulfillment, the periodic function releases up to 5 units, provided that it would not need to submit a partial quantity of an order line to Order Broker. If, for example, the remaining order line quantities are 4 on the oldest order and 2 on a more recent order, only the order line with the quantity of 4 is released.

Note:             

         The order lines are submitted in first-in, first-out order (oldest first).

         Partial order line quantities are not submitted to Order Broker. If the next eligible line would exceed the quantity available to release, it is skipped.

         The order submission uses the same steps and applies the same updates as the BROKER periodic function.

         Orders in Error status or Suspended status are not eligible to be submitted. Also, locked orders are not submitted.

         Each order line for an active PO item is evaluated separately.

The Send Held Orders to OROB (M18) system control value controls whether the PREORDER periodic function includes held orders.

Item warehouse quantity updates: The function:

         Increases the Released qty for the item warehouse by the quantity of active PO order lines submitted to Order Broker.

         Sets the item warehouse On-order quantity to the PO on-order quantity minus the Released qty. For example, if a total of 30 units are on purchase orders, and 12 units have been released to the Order Broker for fulfillment, the item warehouse On-order quantity is set to 18.

Is the item still an active PO item? The following updates take place if the PO On Order quantity is now less than or equal to the PO receipts quantity, indicating that all anticipated units on purchase orders have been received. When this occurs, the item is no longer eligible for active PO processing, so that any additional units ordered can sell out, based on the assigned soldout control code.

Example: If the PO On Order quantity is 30, and the PO Receipts quantity is 25, the Active PO flag remains set to Y, because an additional 5 units can be received and used to fulfill active PO orders. However, if the PO Receipts quantity is 30 or higher, the Active PO flag changes to N, because no additional receipts are expected.

If the item is no longer an active PO item, the periodic process:

         Sets the Active PO flag for the item to N.

         Sells out any remaining open lines beyond the PO On Order quantity in last-in, first-out order (sell out the newest first). If the entire line cannot be submitted to Order Broker, the entire line sells out.

Example: If the PO On Order quantity and the PO Receipts quantity are both 30, and there are active PO order lines for a total quantity of 35, the additional 5 units sell out. Also, if the newest order line is for a quantity of 6, all 6 units on that line sell out, because order lines are not partially sold out.

         Sets the PO On Order quantity, PO Receipts quantity, Released qty, and Item Warehouse On-order quantity to 0.

Otherwise, if the item is still an active PO item, the PREORDER function does not update the Active PO flag or sell out any units of the item.

Example: If the PO On Order quantity is 30, there are 29 units on order lines, and the PO Receipts quantity is 15, Order Management System can release up to 15 units to Order Broker for fulfillment. The remaining 14 units remain as active PO order lines in Order Management System.

Backorder quantity update notification? If the backorder quantity is not equal to the PO pre-order quantity sent, this means that the backorder quantity has changed, and that RMFCS needs to be notified. In this case, the periodic function submits the backorder quantity update notification message to notify RMFCS of any increase or decrease to the active PO backorder quantity. See Generating the Backorder Quantity Update Notification Message (PREORDER or ACTPO Periodic Function) for information on the backorder quantity update notification generated through the PREORDER periodic function.

Note:            The PO pre-order quantity sent is not displayed on any screen; it is just the current backorder quantity at the time the backorder quantity update notification is generated, and is used only to determine the quantity to send the next time the notification is generated.

Setup Requirements for the PREORDER Periodic Function

In addition to the configuration described under Setup Requirements for the OCDSFA Periodic Function, the PREORDER periodic function requires the following:

         URL: From the OCDS Future Available URL (M49) system control value.

         Authentication: From the OCDS Service web service authentication. See Working with Web Service Authentication (WWSA).

         Periodic function: Create the PREORDER (Program name = PFR0204) periodic function and assign it to a periodic process.

Additional Things to Note about the PREORDER Periodic Function

When to run: This function should be run after the OCDSFA periodic function, described above under Importing Future Available Information (OCDSFA Periodic Function).    

Note:            The PREORDER function needs to run after Order Broker receives inventory updates. Otherwise, it is possible for the ACTPO function to submit order lines to Order Broker before Order Broker recognizes that the location can fulfill orders based on inventory receipts. In this situation, Order Broker returns the orders to Order Management System as unfulfillable.

Generating the Backorder Quantity Update Notification Message (PREORDER or ACTPO Periodic Function)

Both the PREORDER Periodic Function for (Order Broker Releases Earlier than 20.2) and the ACTPO Periodic Function for (Order Broker 20.2 or Higher) generate the backorder quantity update notification message to RMFCS. This message indicates the net increase or decrease to the backorder quantity for an active PO item, so that RMFCS is aware of the current backorder quantity of the item. The PREORDER periodic function calculates the quantity to send by comparing the current backorder quantity of the active PO item with the current PO pre-order quantity sent that is stored in the Item Warehouse table.

The message does not simply send the current backorder quantity; instead, it indicates the amount of increase or decrease to the backorder quantity.

Backorder update examples:

Description

Last Backorder Quantity Sent

Current Backorder Quantity

Quantity Sent in Message

New PO Pre-Order Quantity Sent

Backorder quantity increases from 4 to 6 through new order of 2 units.

4

6

2

6

Backorder quantity decreases from 5 to 2 through order line cancellation.

5

2

-3

2

Backorder quantity decreases from 10 to 4 through PO receipts quantity of 6, and 6 units submitted to Order Broker.

10

4

-6

4

Backorder quantity of 10 has a net decrease of 6 units:

         2 units canceled (-2)

         5 units received (-5)

         1 unit ordered (+1)

10

4

-6

4

Backorder quantity has not changed, either because there was no activity, or activity did not result in a net increase or decrease

10

10

No message sent

No change

The periodic functions submit the backorder quantity update notification to Retail Integration Cloud Service through the RICS Outbound Service URL (M50).

What information is included in the backorder quantity update notification? The information in the notification includes the following:

         Item: The item’s Retail reference number identifies the item. The retail reference number is set to the item code when Importing Enterprise Foundation Data through Omnichannel Cloud Data Service (OCDS), and if the retail reference number is changed in any way, then the pre-order notification process does not succeed.

         Location type: The message always passes a location type of W (warehouse).

         Location: The message always passes the OMS Default Warehouse (A04) as the location.

         Backorder quantity: Calculated as described above.

         Unit of measure: Set to EA (each).

No other fields are mapped.

ACTPO Periodic Function for (Order Broker 20.2 or Higher)

When to use the ACTPO periodic function: Use this periodic function for integration with Order Broker releases 20.2 or higher. For integration with Order Broker updates earlier than 20.2, use the PREORDER Periodic Function for (Order Broker Releases Earlier than 20.2).

The steps completed by this periodic function are:

         Checking current availability in Order Broker through the inventory availability request.

         Determining the quantity available to submit to Order Broker.

         Releasing eligible orders to Order Broker.

         Updating Item Warehouse records.

         Submitting the Backorder Quantity Notification update message to Retail Integration Cloud Service.

Checking Current Availability in Order Broker

Overview: The ACTPO periodic function submits the inventory availability request to Order Broker to check availability for backordered items whose Active PO flag is selected, as described above under Importing Future Available Information (OCDSFA Periodic Function).

Purpose: The purpose of the inventory availability request is to determine the quantity of each item that should be available to fulfill the backorders in Order Management System. The response from Order Broker indicates the Available to Promise quantity for each of the requested items, broken out by the quantity in locations that support:

         Delivery orders (brokered backorders in Order Management System).

         Ship-for-pickup orders (included only if the Use OROB for Ship for Pickup Fulfillment Assignment (M34) system control value is set to ALWAYS).

Note that there can be overlap; some locations can support both delivery and ship-for-pickup orders, while others might support just one order type.

Available to Promise quantity calculation: In Order Broker, the Available to Promise quantity is the on-hand quantity minus the reserved quantity and any fulfilled quantity.

The response message includes the Available to Promise quantity for each requested item in two ways:

         Across all product locations (distinct inventory), and

         For locations that support a requested fulfillment type (either brokered backorders (DELIVERY) or ship-for-pickup orders).

Example:                    If a location has the item in stock but does not support fulfilling brokered backorders, the inventory total is included in distinctInventory but not in the DELIVERY fulfillmentType.

Used how? The Available to Promise Quantity (availableToPromiseQty) for the DELIVERY fulfillment type is used to calculate the quantity for brokered backorders, and the availableToPromiseQty for the SHIPFORPICKUP fulfillment type is used to calculate the quantity for ship-for-pickup orders.

Other quantities passed in response not used: The response also includes other quantities, but the Available to Promise Quantity by fulfillment type is the only quantity in the response message that the ACTPO function uses to calculate the quantity available to submit to Order Broker.

Which items are included in the request message? Only items whose Active PO flags are selected and that have a backorder quantity in the Default Warehouse (A04) are included in the request. The OROB_INVENTORY_AVAILABILITY_SKU_LIMIT defines the maximum number of items to include in the request message. This limit is set to 500 by default, and cannot be greater than 500, although it can be set to a lower number.

Sample request message:

"messageHeader":

{"datetime": "2021-05-07T13:42:12","source":"OMS"},

"systemCd" : "6",

"fulfillmentTypes":

   [

{"fulfillmentType":"DELIVERY"},

{"fulfillmentType":"SHIPFORPICKUP"}

   ],

"systemProducts":

   [

{"systemProduct":"1234567"},

{"systemProduct":"2345678"}

   ]

}

Sample response message:

{

"messageHeader":    {

"datetime": "2021-05-07T20:54:09.259",

"source": "OMS"

},

"itemsProcessed": 1,

"processingTime": 31,

"responseCode": "0",

"responseDescription": "Success",

"systemCd": "6",

"systemProducts": [   {

"systemProduct": "1234567

"distinctInventory":  {  "availableToPromiseQty": 37, "fulfilledQty": 11, "onHandQty": 235,   "reservedQty": 187  },

"fulfillmentTypes": [      

   { "fulfillmentType": "DELIVERY", "availableToPromiseQty": 37, "fulfilledQty": 11, "onHandQty": 235, "reservedQty": 187

}],

}

For more information: See Setup Requirements for the ACTPO Periodic Function, below, for setup requirements and troubleshooting information, and see the Inventory Availability Request JSON Message and the Inventory Availability Response JSON Message in the Order Broker Operations Guide on My Oracle Support (2114324.1) for message details and troubleshooting.

Releasing Eligible Orders to Order Broker

Based on the updates made by the OCDSFA periodic function and the available to promise quantity for the order type returned in the inventory availability response, described above, the ACTPO periodic function performs the following steps.

Evaluates the active PO order lines based on date and order (fulfillment) type. The function determines which orders can be submitted to Order Broker for fulfillment for each order type:

         The order lines are submitted in first-in, first-out order (oldest first).

         Partial order line quantities are not submitted to Order Broker. If the next eligible line would exceed the quantity available to release, it is skipped.

         The order submission uses the same steps and applies the same updates as the BROKER periodic function.

         Orders in Error status or Suspended status are not eligible to be submitted.

         Each order line for an active PO item is evaluated separately.

The Send Held Orders to OROB (M18) system control value controls whether the ACTPO periodic function includes held orders.

Example of orders released based on available to promise quantity, order type, order line quantity, and date:

There are 9 units on active PO order lines, in ascending (oldest to newest) order date:

         Order 1: brokered backorder: 3 units

         Order 2: ship-for-pickup: 5 units

         Order 3: ship-for-pickup: 3 units

         Order 4: brokered backorder: 2 units

         Order 5: brokered backorder 1 unit

The available to promise quantity for the two fulfillment types returned in the response message indicates:

         4 units available to promise in locations that support delivery orders (brokered backorders).

         4 units available to promise in locations that support ship-for-pickup orders.

Note:             The distinct available to promise quantity (across all eligible locations) is actually 7 rather than 8, because one location has a single unit of the item, and supports both delivery orders and ship-for-pickup orders.

The following orders are released to Order Broker:

         Order 1: 3 units

         Order 3: 3 units

         Order 5: 1 unit

The remaining orders remain on backorder:

         Order 2 remains on backorder because there are not enough units available in locations that support ship-for-pickup.

         Order 4 remains on backorder because the full quantity of 2 is not available in any locations that support brokered backorders after allocating 3 units for order 1.

Item warehouse quantity updates: The function then:

         Increases the Released qty for the item warehouse by the quantity of active PO order lines being released to Order Broker, but not to exceed the PO Receipts quantity.

         Sets the item warehouse On-order quantity to the PO On Order quantity minus the Released qty. For example, if a total of 30 units are on purchase orders, and 12 units have been released to the Order Broker for fulfillment, the item warehouse On-order quantity is set to 18.

Is the item still an active PO item? The following updates take place if the PO On Order quantity is now less than or equal to the PO Receipts quantity, indicating that all anticipated units on purchase orders have been received. When this occurs, the item is no longer eligible for active PO processing, so that any additional units ordered are eligible to sell out.

Example:                    If the PO On Order quantity is 30, and the PO Receipts quantity is 25, the Active PO flag remains set to Y, because an additional 5 units can be received and used to fulfill orders. However, if the PO Receipts quantity is 30 or higher, the Active PO flag changes to N, because no additional receipts are expected.

If the item is no longer an active PO item, the periodic process:

         Sets the Active PO flag for the item to N.

         If a soldout control code is assigned to the item, sells out any remaining open lines beyond the PO On Order quantity in last-in, first-out order (sell out the newest first). If the entire line cannot be submitted to Order Broker, the entire line sells out.

Example: If the PO On Order quantity and the PO Receipts quantity are both 30, and there are active PO order lines for a total quantity of 35, the additional 5 units can sell out. Also, if the newest order line is for a quantity of 6, all 6 units on that line sell out, because order lines are not partially sold out.

         If no soldout control code is assigned to the item, the remaining backordered lines are queued for submission to Order Broker. If Order Broker cannot find a location to fulfill a submitted order line, it closes the order line as unfulfillable.

         Regardless of whether the remaining lines are sold out, sets the PO On Order quantity, PO Receipts quantity, Released qty, and Item Warehouse On-order quantity to 0.

Otherwise, if the item is still a an active PO item, the ACTPO function does not update the Active PO flag or sell out any units of the item. The item is eligible to be included in the inventory availability request the next time the ACTPO function runs.

Example:                    If the PO On Order quantity is 30, there are 29 units on active PO order lines, and the PO receipts quantity is 15, Order Management System can release up to 15 units to Order Broker for fulfillment. The remaining 14 units remain as active PO items in Order Management System.

Backorder quantity update notification? If the backorder quantity is not equal to the PO pre-order quantity sent, this means that the backorder quantity has changed, and that RMFCS needs to be notified. In this case, the periodic function submits the backorder quantity update notification message to notify RMFCS of any increase or decrease to the active PO backorder quantity. See Generating the Backorder Quantity Update Notification Message (PREORDER or ACTPO Periodic Function) for information on the backorder quantity update notification generated through the ACTPO periodic function.

Note:             The PO pre-order quantity sent is not displayed on any screen; it is just the current backorder quantity at the time the backorder quantity update notification is generated, and is used only to determine the quantity to send the next time the notification is generated.

Setup Requirements for the ACTPO Periodic Function

In addition to the configuration described under Setup Requirements for the OCDSFA Periodic Function, the ACTPO periodic function requires the following:

         Order Broker URL: From the OROB_INVENTORY_AVAILABILITY_URL.

         Order Broker Authentication: Set up outbound OAuth authentication for OROB Locate web service. See Setting Up Web Service Authentication for background.

         SKU Limit for Inventory Availability Request: From the OROB_INVENTORY_AVAILABILITY_SKU_LIMIT. Defaults to 500, and should not be set higher.

         Periodic function: Assign the ACTPO (Program name = PFR0205) to a periodic process.

Note:             The inventory availability web service request is supported only in Order Broker 20.2 or higher.

Additional Things to Note about the ACTPO Periodic Function

When to schedule: 

         This function should be run after the OCDSFA periodic function, described above under Importing Future Available Information (OCDSFA Periodic Function).

         The BROKER_ORD job needs to be active while you are using the ACTPO function in order for the available to promise quantity returned in the inventory availability response to be accurate. As the BROKER_ORD job submits new orders to Order Broker, Order Broker updates the available quantities for the assigned locations. If the BROKER_ORD job is not active, there is an increased chance of the available to promise quantities returned in the inventory availability response being overstated.

Reviewing Active PO Status and Quantities

You can use the Display Item/Warehouse Information Screen in Using Inventory Inquiry (DINI) to review the following information:

         Active PO flag: Selected if the item is currently a pre-order. The OCDSFA periodic function selects this flag, and the PREORDER or ACTPO periodic function clears it if the PO receipts quantity is greater than or equal to the PO on-order quantity.

         PO on order quantity: The total quantity on purchase orders for an active PO item. From the RMS on-order quantity in the Item Warehouse table. The OCDSFA periodic function updates this quantity, and the PREORDER or ACTPO periodic function uses it in its calculations.

         PO receipts quantity: The total quantity received on purchase orders for an active purchase order item. From the RMS receipt quantity in the Item Warehouse table. The OCDSFA and PREORDER periodic functions update this quantity to 0 when the purchase order is closed, and use this quantity it in their calculations.

         Released qty: The total order quantity that has been released to Order Broker for fulfillment. The PREORDER or ACTPO periodic function update this field when they release the pre-orders lines to Order Broker.

         PO updated: The last date when the OCDSFA, PREORDER, or ACTPO periodic function updated the Item Warehouse record.

         On order: The total quantity of this item in this warehouse that is due to be received on open purchase orders. Equal to the PO on order quantity - the PO receipts quantity.

Note:            The PO pre-order quantity sent is also used for active PO calculations, but this quantity is not displayed on any screen; it is just the current backorder quantity at the time the backorder quantity update notification is generated, and is used only to determine the quantity to send the next time the backorder notification is generated.

Troubleshooting: See Troubleshooting the Enterprise Order Integration for examples of log entries for the backorder quantity update notification.

Future Receipts and Active PO Order Processing Configuration

A summary of required configuration for enterprise future receipts and active PO processing includes:

         System Control Values

         Periodic Functions

         Web Service Authentication

         Properties

System Control Values

Set the following system control values:

         Included in Enterprise Integration Values (M41):

         OCDS Future Available URL (M49): Used by the OCDSFA periodic function.

         RICS Outbound Service URL (M50): Used by the PREORDER periodic function.

         Use OROB for Fulfillment Assignment (M31) and Send B/O to OROB (K08) must be selected.

         Order Broker Values (K15) and Order Broker Fulfillment Values must be set.

         Default Warehouse (A04) must be set.

         Default Soldout Control Code (D72) If you are using the PREORDER Periodic Function for (Order Broker Releases Earlier than 20.2), must be set to a soldout control code with a value of 2, indicating to include the on-order quantity when determining whether to sell out an item; otherwise, if you are using the ACTPO Periodic Function for (Order Broker 20.2 or Higher), optional.

Periodic Functions

The periodic functions supporting enterprise order integration are:

         OCDSFA (Program name = PFR0203). See Importing Future Available Information (OCDSFA Periodic Function) for background.

         PREORDER (Program name = PFR0204). See PREORDER Periodic Function for (Order Broker Releases Earlier than 20.2) and Generating the Backorder Quantity Update Notification Message (PREORDER or ACTPO Periodic Function) for background.

         ACTPO (Program name = PFR0205). See ACTPO Periodic Function for (Order Broker 20.2 or Higher) and Generating the Backorder Quantity Update Notification Message (PREORDER or ACTPO Periodic Function) for background.

Scheduling: You can assign these periodic functions to a periodic process or to separate periodic processes; however, the OCDSFA function needs to run before the PREORDER function, and both functions need to run after the OCDSITM periodic function, described in Importing Enterprise Foundation Data through Omnichannel Cloud Data Service (OCDS).

Note:            You should not run both the PREORDER and the ACTPO periodic functions.

See Additional Things to Note about the ACTPO Periodic Function for additional notes on scheduling.

Web Service Authentication

         RICS Service authentication for your company. Required for Generating the Backorder Quantity Update Notification Message (PREORDER or ACTPO Periodic Function).

         OCDS Service authentication. Required for Importing Future Available Information (OCDSFA Periodic Function).

         OROB Locate authentication. OAuth is supported. Required for ACTPO Periodic Function for (Order Broker 20.2 or Higher).

For more information: See Working with Web Service Authentication (WWSA) for background.

Properties

Use Working with Admin Properties (CPRP) to set up the following properties related to logging for the Pre-order (backorder quantity update) notification:

         RICS_LOG_LEVEL

         RICS_MAXBACKUP_DAYS

The following properties are used for the OCDSFA periodic function:

         OCDS_LOG_LEVEL

         OCDS_MAXBACKUP_DAYS

The following properties are used for the ACTPO periodic function:

         OROB_INVENTORY_AVAILABILITY_URL.

         OROB_INVENTORY_AVAILABILITY_SKU_LIMIT

Troubleshooting the Enterprise Order Integration

Order Broker product locations must be updated: If the PREORDER periodic function runs before Order Broker receives inventory updates through OCDS, then Order Management System might submit orders to Order Broker for fulfillment before Order Broker determines that it has the required inventory to fulfill the orders. In this situation, Order Broker returns the orders to Order Management System as unfulfillable.

Do not update items received from OCDS: If you use Importing Enterprise Foundation Data through Omnichannel Cloud Data Service (OCDS) as well as Enterprise Order Integration (Future Receipts and Active PO/Pre-Order Processing), it is important not to update the items manually. For example, if the item’s retail reference number is set to the item code. It is important that you do not change the retail reference number to anything other than the item code, or the integration processes, including Generating the Backorder Quantity Update Notification Message (PREORDER or ACTPO Periodic Function), will fail.

Supported Order Broker order type: Although Order Management System supports releasing both brokered backorders and ship-for-pickup orders to Order Broker in active PO processing, not all fulfilling systems in Order Broker support the ship-for-pickup order type.

If the system does not support ship-for-pickup orders, the Ship For Pickup Sourcing Available and Ship For Pickup Receiving/Pickup Available flags should both be set to No at the Preferences screen in Order Broker for all of the system’s locations.

Store pickup orders for active PO items: Order Management System does not prevent you from submitting a store pickup order to Order Broker for an item currently flagged as an active PO item; however, the active PO functionality does not apply to store pickup orders.

Items must be flagged as OROB eligible: Only items flagged as OROB eligible are submitted to Order Broker.

Held orders? If the Send Held Orders to OROB (M18) system control value is selected, it is possible that the sequence in which orders are released to Order Broker changes if, for example, a held order does not have a valid authorization, so the next eligible order is released instead.

Active PO logging: Various logs, including the RICS Log, note issues with the Generating the Backorder Quantity Update Notification Message (PREORDER or ACTPO Periodic Function). Sample entries in the RICS log for the pre-order (backorder quantity update) notification:

         Successful message: If the RICS_LOG_LEVEL is set to INFO and the message was sent successfully, the RICS log includes the message contents, and indicates success, for example:

11:59:35,206 INFO RICS - message: Invocation Success

         If the RSB (Oracle Retail Service Backbone) service is down:

ERROR RICS - message: Connection refused to: https://SERVER.com:PORT/rms-InventoryBackOrder-AppServiceDecorator/ProxyService/InventoryBackOrderAppServiceProxy?WSDL ConnectException: java.net.ConnectException: Connection refused (Connection refused)

         If Web Service Authentication has not been set up:

ERROR RICS  - message: No Authentication is set up for RICS Service

Enterprise Data Import History: The INT_OCDS_STATUS table tracks activity for both the OCDSFA periodic function and the OCDSITM Periodic Function. You can review this activity, including the FUTUREAVAILABLE records created by the OCDSFA periodic function, at the Enterprise Data Import History page in Modern View.

The OCDSITM periodic function purges records based on the OCDS_JOB_HISTORY_RETENTION_DAYS property; for example, if this property is set to 25 days, each time the OCDSITM function runs, it purges records older than 25 days.

See Additional Things to Note about the OCDSFA Periodic Function for more troubleshooting information.

OCDSFA activity logging:, Various messages are written to the OCDS (Omnichannel Cloud Data Service) Log based on the future data import:

         If the OCDS Future Available URL (M49) system control value is blank:

ERROR com.mr.interfaces.ocds.DataImportConfig - OCDS Import - Valid REST Service Endpoint not configured for SCV: M49.

         If the OCDS Future Available URL (M49) system control value specifies an invalid URL:

ERROR com.mr.interfaces.ocds.DataRetriever - Exception response code InboundJaxrsResponse{context=ClientResponse{method=GET, uri=https://SERVER.com:PORT/ords/ocds/omnichannel/v1/inventory/futurexyz?nodelevel=STORE&nodeid=2019&limit=1000, status=404, reason=Not Found}} from service call {}

         Additional log entries: Depending on the OCDS_LOG_LEVEL setting, samples of additional log entries for OCDSFA include:

16:31:13,108 INFO  com.mr.interfaces.ocds.impl.FutureAvailDataProcessor - Performing PreOrder quantity Calculation for SKU 123456

16:31:13,109 INFO  com.mr.interfaces.ocds.impl.FutureAvailDataProcessor - No change - onOrder Qty equals OnReceived Qty and preOrder is N for SKU 123456

16:31:13,110 ERROR com.mr.interfaces.ocds.impl.FutureAvailDataProcessor - SKU 123456 does not exists in company 123

14:55:18,887 INFO  com.mr.interfaces.ocds.impl.FutureAvailDataProcessor - Performing sell out process for Order#1234

Support notification: The system generates a support notification if a submitted periodic function ends in error or goes into message status. See Order Management System Support Notifications for more information.

 

________________________________