Troubleshoot Problems with Configure-to-Order

Troubleshoot problems that happen during setup or at runtime in a configure-to-order flow.

Problems That Happen During Setup

Trouble

Shoot

I can't find an item when I create a work definition.

I search for my item in the Create Work Definition dialog, but the search can't find it, or parts of my structure are missing in the Work Definition work area. For example, I create an applicability rule, but the rule editor doesn't display a configure option, or I manually add rule text and encounter an error.

Assume you set up a hierarchy in Product Information Management.

  • CTO_474000 is the model (computer)

    • CTO_474300 is an option class (hard drive)

      • CTO_474301 is a configure option (1TB hard drive)

You associate CTO_474000 and CTO_474300 with an inventory organization, but don't associate CTO_474301 with an inventory organization.

You then manually add an applicability rule.

ITEM='CTO_474000'.'CTO_474300'.'CTO_474301'

But when you click Validate, you get an error.

The rule contains an invalid item CTO_474301

The Work Definition work area only recognizes items that you associate with an inventory organization. Make sure you add an inventory organization on the Associations tab in Product Information Management for the model, each option class, and each configure option.

For details, see these topics.

  • Create Your Configuration Model

  • Inventory Organizations

I encounter an error when I use the Create Work Definition dialog.

For Assemble to Order model CTO_474000, Primary item structure is not available.

The structure isn't associated with an inventory organization.

Use the Associations tab in Product Information Management to add your inventory organization, open the new version that Product Information Management creates, then use the Structures tab to add your structure to the new version.

If you add the structure first, Product Information Management creates a new version of your item, appends (M1) to it, but doesn't copy the structure from the V1 version to the M1 version, and you must add the structure again to M1.

I encounter an error when I create an applicability rule.

Attribute RuleText in RuleEO is required.

I create an applicability rule, validate it, and close the rule editor. I then click Save to save the work definition, but encounter an error.

This error sometimes happens if you navigate away from the rule editor and come back to it, or add and remove rule text several times.

Click Cancel on the Edit Work Definition Details page, reopen the work definition, then add your rule.

The Product Information Management work area doesn't delete my items.

I create items in the Product Information Management work area. During testing, I find I need to revise some and delete others. I search for my item on the Manage Delete Groups, click Actions > Delete, add it to a delete group, but it persists in the work area.

Try this.

  1. Click Tasks > Manage Delete Groups.

  2. On the Manage Delete Groups page, search for and open your delete group.

  3. Select your item, click Actions > Delete, then click Submit.

  4. Wait a few minutes for the delete to take effect.

For details, see Group Deletions of Items, Structures, New Item Requests, and Change Orders.

The Manage ATP Rules page doesn't contain my item.

I add a catalog to my model. I search the Manage ATP Rules page for my item but the search doesn't return anything.

Collect and refresh. For details, see Collect Planning Data for Your Configuration Model.

I receive a warning when I use the Plan Inputs page to collect data.

You requested net change collections, but a prior targeted collection was not performed for one or more of the selected entities. Do you want to continue?

In the Collect Planning Data dialog, change the Collection Type to Automatic Selection to let the server choose the data to collect. You can use Net Change the next time you collect data.

Global Order Promising keeps giving available-to-promise recommendations.

I test my make or buy setup, but Promising keeps giving available-to-promise recommendations.

This problem typically happens in a test environment where your flow isn't finished yet or Promising isn't refreshed. Promising identifies on-hand quantities for the item and uses them to source supply until you exhaust the quantities.

Examine and correct your inventory quantities, run collections, then run the Refresh and Start the Order Promising Server scheduled process.

I add an extensible flexfield to the parent of my configuration model. I also add an extensible flexfield to each child.

However, if the user creates a revision, then Order Management copies the value from the flexfield on the parent into the flexfields on the children, replacing whatever data was in the flexfields on the children. We don't want this overwrite to happen.

Write a processing constraint on each extensible flexfield so the constraint prevents Order Management from updating the child flexfields during a revision.

Problems That Happen During Import

Manual Price Adjustment

I import a manual price adjustment on the child line of a model, but the adjustment doesn't show up in the Order Management work area, and I can't use the work area to change the adjustment.

Try this:

  • Apply a manual price adjustment only on the model's root line.
  • Don't apply a manual price adjustment on a child line.
  • Locate the manualPriceAdjustments entity on the root line of your import payload, then set the ChargeRollupFlag attribute to true in that entity.

Import Can't Find Part of a Configured Item

You might encounter an error where your import can't find part of a configured item, such as a configuration node. For example, you encounter an error.

Cannot find a matching configuration node for item 12345

A configuration node is part of a configured item. A configure option is an example of a configuration node. This error might happen even if the node exists in the structure of a configured item that includes an instance type of Optional Single Instance. The order import process does a search that validates and creates the structure that it includes in the sales order even if a node, such as Option Classes, is missing in the order import data that defines the structure.

However, if the root of the configured item contains a reference model that you set up as Optional Single Instance, or if it's part of an option class, and if the order import data doesn't include the absolute path to the node, then the search won't find the node.

To avoid this problem, use the Product Information Management work area to modify the instance type of the structure from Optional Single Instance to Required Single Instance. Your modification won't affect functional behavior. You must also set the Use Configurator for Order Import Validation parameter to Yes. For details, see Manage Order Management Parameters.

Assume the order import data includes M1, M1.M2, M1.M2.SI2, and the Product Information Management includes this structure for a configured item:

M1
|_M2 (Optional Single Instance)
   |_OC1
      |_SI2

The order import search won't find the complete structure, it will create an error during order import, and it will add an entry in the Order Import log that's similar to this entry.

The order import process failed
        for source order source_order_identifier for the
        following reason: Cannot find a matching configuration node for item item_number on order line number order_line_number.

where

  • source_order_identifier identifies the source order
  • item_number identifies the item
  • order_line_number identifies the order line

This entry indicates that the search couldn't find a matching configure option in the Optional Single Instance node.

For another example, assume the order import data includes M1, M1.M2, M1.M2.SI1, and the Product Information Management contains this structure.

M1
|_OC1
  |_M2 (Optional Single Instance)
    |_SI1

The order import search will fail in the same way it failed in the first example.

Explicitly Define Each Node

If the same option item happens more than one time in your model's hierarchy, then you must explicitly define each node.

Assume you have this hierarchy:

Stove
  Oven
    10K BTU Gas Burner
    20K BTU Gas Burner
  Stovetop
    10K BTU Gas Burner
    20K BTU Gas Burner

You have the same 10K BTU Gas Burner option in two different option classes, once in the Oven option class and again in the Stovetop option class. It's important that you explicitly describe each of these nodes in your hierarchy even though the item itself is the same in both classes.

Assume you use the value 10029041 to identify the 10K BTU Gas Burner:

Node

Code

Stove <ns1:RootParentLineReference>1</ns1:RootParentLineReference>
Oven <ns1:ParentLineReference>1</ns1:ParentLineReference>
10K BTU Gas Burner <ns1:ProductNumber>10029041</ns1:ProductNumber>
Stovetop <ns1:ParentLineReference>2</ns1:ParentLineReference>
10K BTU Gas Burner <ns1:ProductNumber>10029041</ns1:ProductNumber>

Here's what your payload should look like:

<ns1:Line>
  <ns1:SourceTransactionLineIdentifier>6</ns1:SourceTransactionLineIdentifier>
  <ns1:ProductNumber>10029041</ns1:ProductNumber>
  <ns1:ProductDescription/>10K BTU Gas Burner</ns1:ProductDescription>
  <ns1:OrderedQuantity>1</ns1:OrderedQuantity>
  <ns1:OrderedUOMCode>EA</ns1:OrderedUOMCode>
  <ns1:ParentLineReference>1</ns1:ParentLineReference>
  <ns1:RootParentLineReference>1</ns1:RootParentLineReference>
<ns1:Line>
<ns1:Line>
  <ns1:SourceTransactionLineIdentifier>30</ns1:SourceTransactionLineIdentifier>
  <ns1:ProductNumber>10029041</ns1:ProductNumber>
  <ns1:ProductDescription/>10K BTU Gas Burner</ns1:ProductDescription>
  <ns1:OrderedQuantity>1</ns1:OrderedQuantity>
  <ns1:OrderedUOMCode>EA</ns1:OrderedUOMCode>
  <ns1:ParentLineReference>2</ns1:ParentLineReference>
  <ns1:RootParentLineReference>1</ns1:RootParentLineReference>
<ns1:Line>

Note

  • ParentLineReference identifies each option class.
  • RootParentLineReference identifies the parent of the option class. That parent is the Stove, which is the top node in the model.
  • This example includes only a small part of the payload. For details about the entire payload that you actually need, see Structure Your Configured Item's Payload.

Here's an example that would fail:

<ns1:Line>
  <ns1:SourceTransactionLineIdentifier>6</ns1:SourceTransactionLineIdentifier>
  <ns1:ProductNumber>10029041</ns1:ProductNumber>
  <ns1:ProductDescription/>10K BTU Gas Burner</ns1:ProductDescription>
  <ns1:OrderedQuantity>1</ns1:OrderedQuantity>
  <ns1:OrderedUOMCode>EA</ns1:OrderedUOMCode>
  <ns1:ParentLineReference>1</ns1:ParentLineReference>
  <ns1:RootParentLineReference>1</ns1:RootParentLineReference>
<ns1:Line>
<ns1:Line>
  <ns1:SourceTransactionLineIdentifier>30</ns1:SourceTransactionLineIdentifier>
  <ns1:ProductNumber>10029041</ns1:ProductNumber>
  <ns1:ProductDescription/>10K BTU Gas Burner</ns1:ProductDescription>
  <ns1:OrderedQuantity>1</ns1:OrderedQuantity>
  <ns1:OrderedUOMCode>EA</ns1:OrderedUOMCode>
  <ns1:ParentLineReference>1</ns1:ParentLineReference>
  <ns1:RootParentLineReference>1</ns1:RootParentLineReference>
<ns1:Line>

This code might result in an error that's similar to:

The order import process failed for source order CSQ-2043-1~42542342 for the following reason: The item 10029041 cannot be selected more than once.

This example fails because it doesn't explicitly identify each node in the hierarchy. It uses the same ParentLineReference>1 to identify each option class, so Order Management can't accurately explode the hierarchy. For details about exploding, see Forecast an Assemble-to-Order Item.

Problems That Happen at runtime

Trouble

Shoot

The Configuration page in the Order Management work area doesn't display the configure options.

I set up my item in Product Information Management. I create a sales order in Order Management, search for the item on the catalog line, click Configure and Add, but the configuration page displays only the name of the item. It doesn't display any components or configure options.

Make sure you set the Optional attribute to Yes for each class that contains an option, and for each option. For the option, you must set this attribute on the child structure. You can't set it from the parent structure.

The Order Management work area doesn't display the transaction attribute.

The Configurator Models work area doesn't come predefined to include transactional attributes. You must import the model so Order Management can populate them at runtime.

Try this.

  1. Go to the Configurator Models work area, click Tasks > Manage Snapshots, click Actions > Import Model Item, then import your model.

  2. Take action depending on whether your model is new or revised.

    • New. Release the workspace.

    • Revised.

      • Update the item class.

      • Add it and the model to an unreleased workspace.

      • Release the workspace.

Order Management fails to create the item.

I configure the item in Order Management, then click Submit. Order Management displays an error message and sets the sales order status to Draft.

The assemble-to-order flow attempts to create the configured item but fails.

Try this.

  1. Make sure all applications and servers are up and running.

  2. If the problem persists, there's probably a problem in your setup. Use the error message to investigate the root cause of the error. Start with the Manage Items page in Product Information Management.

  3. Resubmit the order in Order Management.

An exception happens after i click Submit.

I configure the item in Order Management, then click Submit. Order Management accepts the configuration and sets the sales order status to Processing.

The flow creates the configured item but an error happens in downstream processing.

Learn how to fix this problem. For details, see Manage Exceptions for Configured Items.

An assemble-to-order flow doesn't create a supply order.

Different problems might cause this problem. They're similar to problems that happen in back-to-back fulfillment with an item that isn't configured.

Here are some fixes you can try.

  • Run the scheduled process to release planning recommendations.

  • Examine your available-to-promise and sourcing rules in Global Order Promising. Make sure you aren't missing rules and that they don't conflict with one another.

  • Supply for a component in the configured item isn't available in the requested time frame.

  • Examine your work definition. Global Order Promising can't do a Make recommendation if there's a problem in your work definition.

  • Collect data for Global Order Promising.

Do the fix, then release the planning recommendations to create the supply order.

The flow creates a purchase requisition but doesn't create a purchase order.

If a blanket purchase agreement exists with the supplier, and if the flow sends a purchase requisition, then it normally creates the purchase order.

Try this.

  1. Sign into the purchasing application and examine the state of the requisition. If an error message indicates that pricing is missing, then a setup problem might exist in the item definition.

  2. Go to the Product Information Management work area, then click Tasks > Manage Items.

  3. Search for and open you item, then examine the item structure. Make sure the Specifications area for each component includes a price.

  4. In Purchasing, make sure an approver approved the blanket purchase agreement. If not, correct errors and resubmit it.

The flow fails to create a work order.

I set up a pick-to-order model that includes pick components and a child assemble-to-order component.

I successfully assign a Make At or Buy From sourcing rule for each of my options. I set the lead time for each item in the model to 0 days or empty at the organization level.

I notice that if on-hand availability doesn't exist for any pick-to-order or assemble-to-order option, then the flow fails to create a work order.

I wonder whether the flow expects on-hand inventory to exist for all items in the model before it creates the work order.

Note

  • You must create a sourcing rule, assignment set, and available-to-promise rule for an assemble-to-order model so the flow can do a supply chain search.

  • You don't need a sourcing rule for components that you keep on hand, but you must set the ship date for the order schedule for them to Infinite.

  • To schedule the work order on a specific ship date, you must maintain on-hand inventory for the components or set up a sourcing rule.

  • If you get the components through your own purchase order process or manually, and if Global Order Promising must schedule the order in a specific period that isn't infinite, then you must create a separate sourcing rule for your components and use infinite availability in your available-to-promise rule.

Global Order Promising doesn't make a recommendation.

Inventory contains the on-hand quantities for the configured item, but Global Order Promising doesn't make an available-to-promise recommendation.

Promising is only aware of on-hand quantities that you collect and refresh.

To collect on-hand quantities from your warehouse, run the Refresh and Start the Order Promising Server scheduled process.

I create a sales order that includes a configuration model, click Submit, then encounter an error.

JBO-FND:::FND_CMN_SYS_ERR: FND-2An application error occurred. Your help desk was notified.JBO-FND:::FND_CMN_INVALID_ATTRB_API_SERV: The value of the attribute User Item Type is not valid.

You set the User Item Type when you create the configuration model in Product Information Management. Its possible you chose a type that isn't enabled. For details, see Create Your Configuration Model.

Try one of these fixes.

  • Use a different value in the Template attribute when you create the configuration model. The Template attribute sets the value for the User Item Type attribute. Use a type that's enabled, such as Finished Goods or ATO Option Class.

  • Enable the lookup code for the User Item Type attribute that you're currently using.

Exception Messages

Here's an example exception message.

com.oracle.bpel.client.BPELFault: faultName: {{http://schemas.oracle.com/bpel/extension}remoteFault} messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage} parts: {{ summary=<summary>oracle.fabric.common.FabricInvocationException: Unable to invoke endpoint URI "http://scm-internal.oracleoutsourcing.com:10617/invUom/UnitOfMeasureService" successfully due to: javax.xml.soap.SOAPException: javax.xml.soap.SOAPException: Bad response: 503 Service Temporarily Unavailable from url

The text Bad response: 503 Service Temporarily Unavailable indicates that the web service isn't available. Its possible something is restarting, such as the server, a component or system that the service calls, or the service itself. Wait a few minutes, then click Resubmit.

If the message describes a setup problem, then fix the setup, then Resubmit.

For details, see Manage Exceptions for Configured Items.

Getting Help

It might be necessary to contact Oracle Support. If you do, see SRDC Configure to Order, Data Collection for Configure to Order (Doc ID 2141338.1) on My Oracle Support to help you prepare.