Import and Fulfill Large Volumes of Sales Orders

Improve the performance of your order-to-cash flow when you need to fulfill a bunch of sales orders, including orders that have a wide range of order lines.

Use this feature to fulfill a large number of sales orders through Oracle Global Order Promising, Oracle Shipping, and Oracle Accounts Receivable.

Use this feature so you can:

  • Improve performance and reduce the time it takes to import a large volume of sales orders. The Import Sales Orders scheduled process helps you do this.
  • Use pricing algorithms to efficiently price your sales orders.
  • Use the Import and Fulfill Large Volumes of Sales Order feature and Global Order Promising's High Volume Order Promising feature together to promise a large volume of sales orders.

  • Confirm shipment for a large volume of sales orders. Reduce the need to manually move the shipped order line to the next step.
  • Invoice a large volume of sales order so that you can reduce delays in getting paid from invoices. Reduce the need to manually move the invoiced order line to the next task.

Realize these benefits.

  • Receive, import, and fulfill a large volume of sales orders.
  • Minimize the need for an Order Manager to manually intervene and take corrective action on the sales order.

This topic describes the behavior that Order Management applies when you use the Import and Fulfill Large Volumes of Sales Order feature.

How It Works

Import

You use the Import Sales Orders scheduled process to import your sales orders.

Ship

If you haven’t enabled the Defer Sending Inventory Updates To Integrated Applications option, and if Oracle Shipping confirms the shipment, then:

  1. Oracle Shipping runs the Manage Shipment Interface scheduled process to add shipment details to an interface table, and then runs the Process Responses from Order Fulfillment scheduled process.

    Process Responses from Order Fulfillment sends the shipment details that are in the interface tables to Order Management.

  2. Order Management updates shipment details on the fulfillment line and moves the shipped line to the next fulfillment task.
  3. The Manage Shipment Interface scheduled process runs the Process Responses from Order Fulfillment scheduled process. This flow doesn't run the Send Shipment Advice scheduled process to reduce the total number of scheduled processes that are running.
  4. If the scheduled process can't process a shipment from the interface table, and if Oracle Shipping already confirmed the shipment, then the order line in Order Management will have an error message. See the troubleshooting section later in this topic.

For details about Defer Sending Inventory Updates To Integrated Applications option, see Fix an Order Status That Doesn't Update to Shipped.

Invoice

If Oracle Receivables has billed the lines, then:

  1. Oracle Receivables runs the Notify Feeder System of Receivables Transactions scheduled process, adds billing details to the interface table, then runs the Process Responses from Order Fulfillment scheduled process. For details, see Get Things Moving Again in Accounts Receivable.
  2. Process Responses from Order Fulfillment sends billing data from the interface tables to Order Management.
  3. Order Management updates the invoice details on the fulfillment line and moves the billed line to the next fulfillment task.
  4. The Import Receivables Transactions Using AutoInvoice scheduled process creates invoices in Oracle Receivables from sales order data, and then runs the Notify Feeder System of Receivables Transactions only one time. It does this to reduce the total number of scheduled processes that are running.
  5. If the scheduled process can't process a billing from the interface table, and if Oracle Receivables already billed the order, then the order line in Order Management will have an error message. See the troubleshooting section later in this topic.

Guidelines

Import

  • If you use File Based Data Import to import your order, then Order Management won’t run pretransformation, transformation, or posttransformation rules to validate, modify, or set default values for attributes on the order header or the order line. Instead, we recommend that you use an order management extension to do your transformations. For details, see Overview of Creating Order Management Extensions.
  • You can't create a customer during import. If you need to create a customer, then you must use Customer Management to do it during your set up.
  • If it takes longer than 5 minutes to import a large sales order through REST API, then you might encounter an error that indicates the import timed out, such as a 504 Gateway Timeout error. This doesn’t mean the import failed. The import will continue to run in the background. You can use a GET request with the salesOrdersForOrderHub REST API to get an update on the order’s status.

Orchestrate

We recommend that you use the predefined DOO_ScheduleShipInvoice orchestration process. It doesn't have branching conditions or a reservation task so it provides an efficient way to fulfill your sales order. Use it to schedule, ship, and invoice each of your sales orders.

  • To avoid performance problems, don’t use an assignment rule to assign the orchestration process to the order line. Instead, specify the orchestration process name in your import payload or use an order management extension to specify the orchestration process. Make sure you specify the orchestration process for all lines in the sales order.
  • Don't override the fulfillment line's status in the orchestration process after you ship or bill the line. Order Management will set the status to Shipped or Billed, and you can't change that value.
  • Don't set up a custom rule to filter the lines that orchestration schedules, ships, or invoices. Order Management will use its predefined rules to pick the lines that orchestration can schedule, ship, or invoice.
  • Don't add a parallel step or a subprocess step to your orchestration process.

Summary of the Set Up

  1. Set up parameters and profiles.
  2. Update your pricing algorithms.

Set Up Parameters and Profiles

  1. Go to the Setup and Maintenance work area.
  2. Use the Manage Order Management Parameters task to set the parameters.
    Parameter Value
    Use Pricing Algorithms to Calculate Totals for Sales Order Yes
    Number of Processes for Order Import

    40

    Adjust this value during your performance testing, as necessary.

    See Manage Order Management Parameters.

  3. Use the Manage Order Profiles task.
    • Enable the Respond Immediately on Start of Submission Request order profile so Order Management can start the import right away.
    • Create a new profile option.
      Attribute Value
      Profile Option Code FOM_HVOP_SHIP_NUM_PROCESS
      Profile Display Name Number of Child Scheduled Processes for High Volume Sales Orders
      Application Order Management
      Module Order Management
      Description We're using this profile option to specify the number of child processes to run for each instance of the Process Responses from Order Fulfillment scheduled process.
      SQL Validation Leave empty.
      Start Date Set it to yesterday.
    • Create another profile option.
      Attribute Value
      Profile Option Code FOM_HVOP_SHIP_BATCH_SIZE
      Profile Display Name Number of Responses to Process for High Volume Sales Orders
      Application Order Management
      Module Order Management
      Description We're using this profile option to specify the total number responses to process for each instance of the Process Responses from Order Fulfillment scheduled process.
      SQL Validation Leave empty.
      Start Date Set it to yesterday.
    • Use the Profile Values area to set the values for each of your new profile options.
      Attribute Value
      Profile Level Site
      Profile Value Yes

    See Use Order Profiles to Control Order Management Behavior.

  4. Use the Manage Administrator Profile Values task.
    • Set the value for the new profile option that you just created.
      Attribute Value
      Profile Display Name Number of Child Scheduled Processes for High Volume Sales Orders
      Profile Level Site
      Profile Value 10
    • Set the value for the other new profile option that you just created.
      Attribute Value
      Profile Display Name Number of Responses to Process for High Volume Sales Orders
      Profile Level Site
      Profile Value 500
    • Adjust these values during your performance testing, as necessary.

Update Your Pricing Algorithms

Make sure you have the latest version of the Price Sales Transactions pricing algorithm. Do the Pre-Update and Post-Update steps that are described in the Pricing section of Oracle Fusion Cloud SCM: Performing Your Quarterly Update. For details, see Promote Pricing Algorithms Into the Latest Update.

Process Responses from Order Fulfillment

If Order Management can't update the shipment details or invoice details on the order line because of a system error, then the order line might not move to the next fulfilment task in the orchestration process even though Shipping successfully shipped and Receivables successfully invoiced the line.

A system error might happen for a variety of reasons:

  • The fulfillment line in Order Management isn't on a wait step.
  • Order Management is still processing an earlier response from the fulfilment system on the line.
  • The scheduled process processes more than one shipment or billing detail for the same line in quick succession.
  • The server is slow and times out, there's a network connectivity problem, and so on.

As a result, you might notice:

  • Shipping shipped your fulfillment line but the order line in Order Management doesn't contain the latest shipping details.
  • Accounts Receivable billed your fulfillment line but the order line in Order Management doesn't contain the latest billing details.

To fix this problem, we recommend that you set up the Process Responses from Order Fulfillment scheduled process to run on a schedule at regular intervals. This scheduled process will automatically update the line with the latest details from Oracle Shipping and Oracle Receivables. For example, it will automatically update:

  • Shipping details on the fulfillment line in Order Management after Shipping confirmed the shipment but the line remains in Awaiting Shipping status.
  • Invoice details on the fulfillment line in Order Management after Receivables billed the invoice but the line remains in Awaiting Billing status.

You can also run it manually while troubleshooting. If you do, set these parameters to filter the data that the scheduled process will look at.

Parameter Description
Task Type

Set a value:

  • Invoice. Update billing details.
  • Shipment. Update shipping details.
Note
  • You can only process a response that you receive from Oracle Shipping or Oracle Accounts Receivable. You can't use this scheduled process to process a response from any other fulfillment system, such as through your own task type. For details, see Create Your Own Task Type.

  • If you set up this scheduled process to run on a schedule, and if you need to process shipments and invoices, then create one instance of the process for shipments, and another instance for invoices.

For details, see Fulfillment Tasks.

Record Set

Set it to Process Records That Failed.

Don't set it to Process Records That Are Not Yet Processed. That value is for Oracle internal use only.

From Date

To Date

Filter the data that you want to process according to when Order Management received the fulfillment response.

Incremental

From Load Request

To Load Request

Number of Processes

Batch Size

Leave these parameters empty. They are for Oracle internal use only.

Note

  • You can use this scheduled process only to process responses that you receive from Oracle shipping or Oracle Accounts Receivables. You can't use it with any other fulfillment system.
  • Shipping and Accounts Receivable store their details in the DOO_FS_FULFILL_LINES_INT table. If the scheduled process encounters an error, then it marks each record that's in error in DOO_FS_FULFILL_LINES_INT.

  • For important details, see Guidelines for Using Scheduled Processes in Order Management.