Professional Documents
Culture Documents
Implementing Order Management - 20b
Implementing Order Management - 20b
20B
Oracle SCM Cloud
Implementing Order Management
20B
Part Number F27656-02
Copyright © 2011, 2020, Oracle and/or its aliates.
This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by
intellectual property laws. Except as expressly permied in your license agreement or allowed by law, you may not use, copy, reproduce, translate,
broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering,
disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be error-free. If you nd any errors, please report
them to us in writing.
If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then
the following notice is applicable:
U.S. GOVERNMENT END USERS: Oracle programs (including any operating system, integrated software, any programs embedded, installed or
activated on delivered hardware, and modications of such programs) and Oracle computer documentation or other Oracle data delivered to or
accessed by U.S. Government end users are "commercial computer software" or "commercial computer software documentation" pursuant to
the applicable Federal Acquisition Regulation and agency-specic supplemental regulations. As such, the use, reproduction, duplication, release,
display, disclosure, modication, preparation of derivative works, and/or adaptation of i) Oracle programs (including any operating system,
integrated software, any programs embedded, installed or activated on delivered hardware, and modications of such programs), ii) Oracle computer
documentation and/or iii) other Oracle data, is subject to the rights and limitations specied in the license contained in the applicable contract. The
terms governing the U.S. Government's use of Oracle cloud services are dened by the applicable contract for such services. No other rights are
granted to the U.S. Government.
This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use
in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in
dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe
use. Oracle Corporation and its aliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.
Oracle and Java are registered trademarks of Oracle and/or its aliates. Other names may be trademarks of their respective owners.
Intel and Intel Inside are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks
or registered trademarks of SPARC International, Inc. AMD, Epyc, and the AMD logo are trademarks or registered trademarks of Advanced Micro
Devices. UNIX is a registered trademark of The Open Group.
This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle
Corporation and its aliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and
services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its aliates will not be responsible
for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable
agreement between you and Oracle.
Oracle SCM Cloud
Implementing Order Management
Contents
Preface i
1 Hello 1
Overview .......................................................................................................................................................................................... 1
Details ............................................................................................................................................................................................ 25
3 Integrate 193
Introduction ................................................................................................................................................................................ 193
Web Services .............................................................................................................................................................................. 214
Upstream Source Systems ..................................................................................................................................................... 290
Downstream Fulllment Systems ......................................................................................................................................... 306
Cross-References ...................................................................................................................................................................... 445
eBusiness Suite ......................................................................................................................................................................... 464
Oracle Applications ................................................................................................................................................................... 501
7 Features 929
Approvals .................................................................................................................................................................................... 929
Credit Check .............................................................................................................................................................................. 960
Projects ........................................................................................................................................................................................ 991
Agreements .............................................................................................................................................................................. 1007
Accounting and Tax ............................................................................................................................................................... 1024
Trade Compliance ................................................................................................................................................................... 1028
Coverage and Subscription .................................................................................................................................................. 1054
9 Congure-to-Order 1229
Overview .................................................................................................................................................................................... 1229
Main Setup ............................................................................................................................................................................... 1246
Other Setups ............................................................................................................................................................................ 1295
Web Services ............................................................................................................................................................................. 1351
10 Extend 1383
Extensions ................................................................................................................................................................................. 1383
Flexelds ................................................................................................................................................................................... 1526
12 Troubleshoot 1649
Tools and Techniques ........................................................................................................................................................... 1649
Details ......................................................................................................................................................................................... 1671
Oracle SCM Cloud
Implementing Order Management
Oracle SCM Cloud Preface
Implementing Order Management
Preface
This preface introduces information sources that can help you use the application.
Help
Use help icons to access help in the application. If you don't see any help icons on your page, click your user image
or name in the global header and select Show Help Icons. Not all pages have help icons. You can also access the Oracle
Help Center to nd guides and videos.
Watch: This video tutorial shows you how to nd and use help.
You can also read about it instead.
Additional Resources
• Community: Use Oracle Cloud Customer Connect to get information from experts at Oracle, the partner
community, and other users.
Conventions
The following table explains the text conventions used in this guide.
Convention Meaning
boldface Boldface type indicates user interface elements, navigation paths, or values you enter or select.
monospace Monospace type indicates le, folder, and directory names, code examples, commands, and URLs.
i
Oracle SCM Cloud Preface
Implementing Order Management
Documentation Accessibility
For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website.
Videos included in this guide are provided as a media alternative for text-based help topics also available in this guide.
Contacting Oracle
ii
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
1 Hello
Overview
What's New in Implementing Order Management
Get details about help topics that are new or signicantly revised for each release.
To get details about.
• Each release, see the Order Management in Oracle Cloud Release Readiness page at hps://cloud.oracle.com/
saas/readiness?oering=order-management.
• Known issues for each release, see Oracle Supply Chain Management Cloud Functional Known Issues and
Maintenance Packs (Doc ID 1563075.1) on My Oracle Support.
Release 20B
Topic Description
Modify Report Templates New. The Reports and Analytics work area comes predened with several reports that you can
use. You can modify a template to meet your needs.
Import Shipping Method New. If you import a shipping method through REST API or FBDI, you must make sure the
method is valid.
Guidelines for Seing Up Units of New. Use guidelines to help you set up the units of measure that you use in Order
Measure Management.
Guidelines for Managing Shipment Revised. Includes some new guidelines. Includes new details about importing a shipment set.
Sets
Use Extensions to Get Values for Revised. Get purchase order details from the order header and order line of the original order,
Return Orders then copy them to the return order and return order line.
Use Diagnostics to Troubleshoot Revised. Use the Order Management Health Check test to scan through your database and
Sales Orders identify problems across sales orders.
Drop Ship section New and revised. Read the new topics and revised topics that clarify how to set up drop ship.
Guidelines for Importing Orders into Revised. If you import an order, revise it, submit it, then import it again in a subsequent import,
Order Management then you must import the most recent aribute values in the subsequent import.
Quick Start for Seing Up Order-to- Revised. You must deploy the predened Update Shipping Request Validation processing
Cash constraint.
1
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Set Up Messages in Order Revised. Read up on some new details about how to set up messages.
Management
Use Order Proles to Control Order Revised. Specify the number of minutes for the hold operation to wait before timing out while
Management Behavior aggregating order lines.
Use SQL to Query Order Revised. Find the reservations that have nished for an item in your sales order.
Management Data
Overview of Seing Up Sales Revised. Learn about new date aributes you can use when you import or integrate an
Agreements in Order Management agreement.
Guidelines for Seing Up Approval Revised. You can use the order type aribute on the order header in an approval rule.
Troubleshoot Order Management Revised. Write an order management extension that won't error out when your sales order
Setup doesn't use the English language.
Examine predened processing constraints to see if that's the cause of an error you're
encountering.
Guidelines for Seing Up and Using Revised. If the quantity on the advance shipment notice (ASN) exceeds the ordered quantity,
Drop Ship then Oracle Fusion Receiving rejects the fulllment request regardless of how you set the
Over-Receipt Action aribute.
Use Order Proles to Control Order Revised. If you use OPS as your source system in a channel, then you must set Retain Sales
Management Behavior Order Number to N.
Allow Users to Return Items Without Revised. Requirements for what you can return depend on whether the item is pick-to-order or
Original Sales Order assemble-to-order.
Guidelines for Seing Up Revised. Make sure you specify the value Canceled as an exit criteria status to exit the wait task
Orchestration Process Steps in your orchestration process.
Release 20A
Topic Description
B2B Messaging Section moved. This content is now in the Conguring and Managing B2B Messaging for
Oracle Applications Cloud book on Oracle Help Center.
Code Examples and Snippets for New. Use these code examples and code snippets to help you create order management
Order Management Extensions extensions in your implementation.
2
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Guidelines for Seing Up Shipment New. Prepare for and set up shipment tolerances.
Tolerances
Hold section of Orchestrate New and revised. New guidelines topic and other revised content.
Fulllment chapter
Import Your Project Details New and revised. Get details about some of the new things you can do in this release.
Overview of Seing Up Projects in
Order Management
Use Diagnostics to Troubleshoot New. Use a diagnostic tool to troubleshoot problems you have with a sales order.
Sales Orders
Import Returns When Original Order New. Create a return for a line in a source order that you split in Order Management.
Lines Are Split
Troubleshoot Problems With Order Revised. Fix problems during import, such as taking too long, unable to edit aributes after you
Import import, and so on.
Overview of Assigning Orchestration Revised. If a group of fulllment lines are part of a shipment set, then you can't assign dierent
Processes orchestration processes to each line.
Guidelines for Integrating Order Revised. Order Management needs SourceOrderSystem so it can send a reply to your order
Management fulllment system.
Set Up Extensible Flexelds in Order Revised. You must publish your extensible exeld each time you change the set up for your
Management extensible exeld.
Guidelines for Seing Up Revised. The way you set up your orchestration processes and orchestration process steps can
Orchestration Process Steps directly aect performance in your environment.
Aributes You Can Use With Order Revised. Get new details about ItemSubTypeCode, ShippableFlag, and using use the public
Management Extensions view object before the user clicks Submit.
Various Revised. You must create a sand box so you can edit a service mapping.
Release 19D
3
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Filter Lines In Your Extensions, Rules, Make sure you lter out lines that you don't want to process when you create an order
and Constraints management extension, business rule, or processing constraint.
Use Extensions to Cancel Order Lines New. Create an extension that uses an extensible exeld to cancel order lines in a sales order.
Use Extensions to Get Values for New. A return order doesn't include values from the original order on some order line
Return Orders aributes. Use an extension to get the value from the original order line.
Convert Shipment Costs to Freight New. Use your own task to convert shipment costs to freight charges.
Charges
Manage Shipment Sets New. Apply guidelines when you use shipment sets.
Import Price Details New. Specify how to use price details when you import a sales order.
Guidelines for Reserving Inventory New. Reserve inventory to make sure its available for your sales order when its time to pick
your item in the warehouse.
Prevent Orchestration Process from New. Create a line selection rule that makes sure the predened ShipOrderGenericProcess
Shipping Return Lines doesn't aempt to ship a return line.
Control Explosion Dates for New. Specify the date when order fulllment explodes a conguration model.
Conguration Models
Map Extensible Flexelds to New. Use a service mapping to map an extensible exeld to a descriptive exeld on the
Descriptive Flexelds purchase requisition header in Procurement.
Approvals Revised section with new topics. Study up on guidelines to help you create your approval rule.
Set up your approval task.
Task Services Revised. If you expect a task might go on hold at some point during run time, then you must
do some set up on the task type.
Transformation Rule Revised. You can't edit, revise, or price an order line that a transformation rule creates.
Overview of Drop Ship in Order Revised. Get details about purchase order changes that aren't allowed during drop ship.
Management
Use Web Services to Import Orders Revised. You can't use the Order Import web service to update the quantity on a split
fulllment line.
Overview of Creating Extensions That Revised. Use an extension to get the value from the original line order.
Modify Order Management
4
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Set Up Sequences for Sales Order Revised. You must use the predened ORA_ FOM_ DOC_ SEQUENCE_ AUTO number
Numbers sequence.
Modify How Aributes Display Revised. Display hidden aributes and modify the display name of aributes.
Set Up Extensible Flexelds in Order Revised. You must use Single Row for any extensible exeld that you use in Order
Management Management.
Overview of Business-to-Business in Revised. Order Management doesn't support updates to ship dates during fulllment for some
Order Management ows.
Overview of Drop Ship in Order
Management
Release 19C
Topic Description
Set Up Congure-to-Order New chapter. Get details about the front-to-back set up you need to do, including in Product
Information Management, Oracle Fusion Pricing, Global Order Promising, Order Management,
Inventory, and so on.
Set Default Value for Scheduled Ship New topic. Set the default value for the Schedule Ship Date aribute on the fulllment line.
Date
Overview of Seing Up Projects in Revised topic. Import sales orders that include project details into Order Management Cloud.
Order Management
Troubleshoot Problems with Web Revised topic. Release a credit check hold through a web service, but the service returns a
Services failed status.
Aributes You Can Use with Web Revised topic. Update the Subinventory aribute through a web service but not in the Order
Services Management work area. Other processing is limited.
Transformation Rules Revised topic. Order Management runs transformation and posransformation rules only
under specic conditions.
Release 19B
5
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Set Business Units for Selling Prot New topic. Set the selling prot center on a sales order line that's dierent from the business
Centers unit on the order header so you can sell items that belong to more than one prot center in a
single sales order.
Set Up Sequences for Sales Order New topic. Set up the starting value for your sales order numbers.
Numbers
Return Sales Orders Without Credit New topic. Set up Order Management so your users can request to return a sales order without
Memo creating a credit memo.
Set Default Values on Sales New topic. Learn how to set the default value for an aribute on on a sales order when you get
Orders from Product Information the value from Product Information Management.
Management
Update Extensible Flexelds During New topic. Call the FulllmentResponse web service to update an extensible exeld on a sales
Fulllment order after your user already submied the sales order to fulllment.
Send Charges from Order Revised topic. Includes new details about how to manage the service mapping.
Management to Oracle Receivables
Guidelines for Integrating Order Revised topic. Includes new details about how to use the DOO_ TransportationPlanning task
Management with Transportation and the Shipment task in your set up to manage a change order.
Management
Troubleshoot Problems with Your Revised topic. Includes new details about how to troubleshoot problems with sales
Order Management Implementation agreements.
Manage Order Management Revised topic. Use the Compare Change Order to Fulllment Values parameter to allow a web
Parameters service or le-based data import to change fulllment line values even after the Order Entry
Specialist revises the sales order in the Order Management work area.
Guidelines for Controlling Customer Revised topic. Use a web service to set Ship-to Address.
Details in Order Management
Release 19A
Topic Description
Agreements New section. Set up Order Management so it uses a sales agreement that applies pricing terms
when your customer buys from your company, such as oering a reduced price when buying a
specic quantity of an item over time.
6
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Projects New section. Create and fulll sales orders that include project aributes, such as Project
Number, Task Number, and Expenditure Organization.
Integrating Order Management with New topic. Use a service mapping and integration algorithm to extend your Order
Other Oracle Applications: Guidelines Management integration with another Oracle application.
Using Functions in Integration New topic. Use a function in your integration algorithm to implement specialized behavior.
Algorithms: Procedure
Extending Credit Check: Procedure New topic. Use an order management extension to modify credit check behavior.
Geing Customer, Ship-To, and Bill- New topic. Its important the data you import or integrate is compatible with the Order
To Details Management database. Use SQL to get customer, ship-to, and bill-to details from the Order
Management database.
Using SQL to Query Order New topic. Use SQL to get data from the Order Management database to help you do a variety
Management Data: Procedure of administration tasks.
Creating Lookups in Order New topic. Learn how to dene the values that Order Management displays in a list of values.
Management: Explained
Using Your Own Payload to Import New topic. You can modify a predened, example payload that imports an extensible exeld.
Extensible Flexelds: Procedure However, you might prefer to create your own payload to meet your specic requirements.
Troubleshooting New chapter. Consolidates existing troubleshooting content and adds new content to help you
x problems in your Order Management implementation.
4 Import and Transform Orders Revised chapter. Includes new topics that help you import sales orders.
Integrating Order Management with Revised topic. Get new details about how it works.
Other Oracle Applications: Overview
Integrating Order Management Revised topic. Pause an orchestration process so Transportation Management can validate the
with Transportation Management: planning request before the orchestration process creates the shipment request.
Procedure
Integrating Order Management with Revised topic. Use SCM - Abstract Roles for the role category.
Source Systems: Procedure
Implementing Order-to-Cash: Points Revised topic. Set the implementation status to display data in infolets.
to Consider
Pausing Orchestration Processes: Revised topic. Use scheduled process Recover Errors and scheduled process Release Pause
Guidelines Tasks to resume a paused orchestration process.
7
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Managing Order Management Revised topic. Specify values that the Order Entry Specialist can select for aribute Ship-to
Parameters: Procedure Customer and aribute Bill-to Customer.
Using Drop Ship with Order Revised topic. Allow the Order Entry Specialist to change a fulllment line for a drop ship that's
Management: Overview awaiting shipment.
Fixing Problems That Occur During Revised topic. Search messages to get a status update for your imported order.
Order Import: Explained
Seing Up Extensible Flexelds in Revised topic. Includes a new troubleshooting section. Don't include spaces in the Code
Order Management: Guidelines aribute of an extensible exeld segment.
Topic Description
Allowing Users to Return Items New topic. allow your users to return an item when your customer doesn't have the original
Without Original Sales Order: sales order.
Overview
Dening Extensions That Modify New topic. Apply guidelines when you create an order management extension.
Order Management: Guidelines
Using Extensible Flexelds in Order New topic. Apply guidelines when you set up an extensible exeld in your Order Management
Management: Guidelines Cloud deployment.
Controlling Customer Details in Order New topic. Learn how to control the way Order Management Cloud displays customer details,
Management: Guidelines such as ship-to address, bill-to address, contacts, or payment terms.
Integrating Order Management: New topic. You can use a variety of technologies to integrate Order Management Cloud with a
Guidelines fulllment system that resides outside of Oracle Fusion.
Managing Trade Compliance: New topic. Apply guidelines when you set up trade compliance screening in Order
Guidelines Management Cloud.
Managing Credit Check Revised section. Includes several new topics to help you manage credit check.
Change Orders Revised section. Includes new details that clarify how to manage change orders, including new
topic Managing Change That Occurs During Order Fulllment: Guidelines.
8
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Integrating Order Management with Revised section. You can now use Visual Information Builder to route sales orders to eBusiness
eBusiness Suite Suite. Other content in this section has also been revised.
Routing Requests from Order Revised topics. You can now use Visual Information Builder to create an assignment rule,
Management to Fulllment Systems: pretransformation rule, or routing rule. We revised these topics so they describe how to use
Procedure Visual Information Builder.
Routing Requests from Order
Management to Fulllment Systems
Without Cross-References: Procedure
Creating Cross-References in Order
Management: Procedure
Integrating Order Management
to Fulllment Without Cross-
Referencing Customer Aributes:
Procedure
Integrating Order Management with
eBusiness Suite: Procedure
Geing Data from Product
Information Management: Procedure
Assigning Orchestration Processes:
Procedure
Using Extensible Flexelds in
Transformation Rules: Procedure
Using Extensible Flexelds in
Assignment Rules: Procedure
Using Extensible Flexelds in Order Revised topic. Includes new details about how you structure and set up an extensible exeld.
Management: Explained
Calling Web Services from Order Revised topic. You must use a synchronous service with an order management extension.
Management Extensions: Procedure
Managing Connector Details That Revised topic. Use the Response Processing Option aribute to specify how to handle errors.
Integrate Order Management with
Fulllment Systems: Procedure
Managing Order Management Revised topic. Filter the addresses that the Order Entry Specialist can choose when seing the
Parameters: Procedure Ship-to Address aribute on the order header.
Using Extensions to Access Data Revised topic. To get details about the view objects you can use, see Public View Objects in
Outside of Order Management: Oracle Applications Cloud (Document ID 2386411.1) on My Oracle Support.
Procedure
9
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Integrating Order Management with Revised topic. If you connect to Congure, Price, and Quote, then you must enable trigger
Source Systems: Procedure point Fulllment Line Status Update.
Assigning Orchestration Processes: Revised topic. It is no longer necessary to use bucket sets and Oracle Business Rules. You can
Procedure now use a simplied rule builder.
Importing Orders into Order Revised topic. It is recommended that you include details in DOO_ ORDER_ ADDRESSES_INT
Management: Explained table.
Using Order Proles to Control the Revised topic. If the source order that you import from the source system isn't unique in the
Order Management Work Area: source system, then you must set Retain Sales Order Number to N.
Procedure
Fixing Problems That Occur During Revised topic. If your order import includes a coverage item, and if your import data already
Order Import: Explained denes pricing for the item before the import occurs, then you must make sure the extended
amount for the charge components on the coverage line contains a value.
Integrating Order Management with Revised topic. To avoid an SQL exception, make sure the web service you use to send
Other Oracle Applications: Overview fulllment lines from Receivables to Order Management includes no more than 10,000
fulllment lines in each invoice response.
Topic Description
Sending Charges from Order New section. Specify how Order Management Cloud sends charges and charge lines to Oracle
Management to Oracle Receivables Receivables.
Managing Sales Order Holds Across New topic. Use a web service to manage sales order holds across channels, including to your
Systems: Explained source systems and fulllment systems.
Managing Feature Opt In: Procedure New topic. Enable or disable some of the features and oerings that Order Management uses.
Migrating Approval Rules Between New topic. Migrate the approval rules that you dene in one instance of Order Management to
Instances of Order Management: another instance of Order Management.
Procedure
Guidelines for Pausing Orchestration New topic. It is recommended that you apply the guidelines described in this topic when you
Processes: Explained pause an orchestration process.
How Order Management Handles New section. Order Management uses Coordinated Universal Time (UTC) to provided more
Time Zone Dierences section in accurate values in date elds.
Order-to-Cash: How It Works
10
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Cross-References section in the New section. Create cross-references between your source system, fulllment system, and
Integrating Order Management Order Management.
chapter
This content previously appeared in Document ID 2051639. 1 (White Papers for Order
Management Cloud) on My Oracle Support. It has been rewrien and updated to support the
current release.
Parameters You Can Use When New topic. Use parameters in your business rules to specify how to route a request to your
Routing Requests to Fulllment fulllment system.
Systems: Explained
Dening Messages in Order Dene your own message, and then display it in the Order Management work area.
Management: Procedure
Integrating Order Management with Revised section. Includes new topics that describe how to set up the connector and perform
Downstream Fulllment Systems other work when you integrate Order Management with your fulllment system.
This content previously appeared in Document ID 2123078. 1 (Integrating Non-Fusion
Fulllment System With Oracle Fusion Order Management Cloud) on My Oracle Support. It has
been rewrien and updated to support the current release.
Guidelines for Coding Order Revised topic. Includes new sections Techniques and Troubleshooting Order Management
Management Extensions: Explained Extensions.
Methods You Can Use with Order Revised topic. New details for the ExecutionContext method.
Management Extensions: Reference
Copying Setups Between Instances of Revised topic. Migrate your hold code denitions between instances of Order Management.
Order Management: Procedure
Managing User Roles and Privileges Revised topic. Manage authentication and authorization to secure order management
in Order Management: Procedure processing, including web service usage. Includes new content and examples that support the
current release.
Using Business Rules With Order Revised topics. Contains new details about how to use business rules, such as what they do,
Management: Overview and when and where you can use them. Also contains revised guidelines, such as making sure
each rule evaluates to a single result.
How Business Rules Work: Explained
Guidelines for Creating Business
Rules: Explained
Transforming Source Orders to Sales
Orders: How It Works
Migrating Business Rules in Order Revised topic. Contains new details about how to migrate rules in this release.
Management: Procedure
11
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Using Holds to Pause Orchestration Revised topic. Specify who can apply or release a hold according to job role.
Processes: Procedure
Pausing Orchestration Processes: Revised topic. Includes new details about how to pause an orchestration process.
Explained
Compensating Sales Orders That Revised topic. Changed the example in this topic so it references an extensible exeld.
Change: Procedure
Integrating Order Management with Revised topic. You must make sure the aribute names you dene in the service mapping and
Other Oracle Applications: Overview the aribute names you dene in the integration algorithm match each other exactly.
Dening Orchestration Process Steps: Revised topic. If you dene more than one wait step for a task, then make sure you set the exit
Points to Consider criteria for each wait step that occurs before the nal wait step to Mark as Complete.
New subtopic Seing Default Revised topic. Write your own rules that set default values in the Order Management Work
Aribute Values in the Order Area.
Management Work Area in topic
Transformation Rules: Explained
Using Integration Cloud Service to Revised topics. It is recommended that you use the Sales Order Notication event instead of
Integrate Order Management topics the Order Status Updated event.
Managing Change That Occurs Revised topic. Starting in Release 13 (update 18B), Order Management disables Use Flexeld
During Order Fulllment: Explained Aributes and Use Transactional Item Aributes on each predened orchestration process, by
default. You can't enable these aributes on a predened orchestration process. However you
can create a copy of a predened orchestration process, and then enable them on the copy.
Managing Approval Rules for Sales Revised topic. You can't reference the order status aribute in an approval rule.
Orders: How It Works
12
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Migrating Business Rules: Procedure New topic. Migrate business rules that you dene across dierent instances of Order
Management Cloud.
Exposing Hidden Aributes: New topic. Order Management Cloud comes predened with hidden aributes that you can
Procedure expose so the Order Entry Specialist can display them in the Order Management work area.
Using Reports and Analytics with New topic. Use the Reports and Analytics work area to get detailed reports for some aspects of
Order Management: Procedure Order Management Cloud.
Using Descriptive Flexelds to New topic. Use a descriptive exeld to integrate Order Management Cloud with Oracle
Integrate Order Management with Receivables, Oracle Shipping, Oracle Receiving, or Oracle Procurement.
Other Oracle Applications: Overview
Using Extensions to Process and New section. Use the Manage Extensions page in the Setup and Maintenance work area to
Display Your Data write your own Groovy script that modies your Order Management deployment, and to
specify the extension point that determines when to run this script.
This content previously appeared in Document ID 2252683. 1 (Dening Extensions That Modify
Order Management Cloud) on My Oracle Support at hps: //supportoracle.com. It has been
rewrien and updated to support the current release.
Managing User Roles and Privileges New topic. Manage the authentication and authorization that Order Management Cloud uses
in Order Management: Procedure to secure order management processing, including web service usage.
This content previously appeared in Document ID 2051639. 1 (White Papers for Order
Management Cloud) on My Oracle Support. It has been rewrien and updated to support the
current release.
Using Flexelds to Process and New section. Use an extensible exeld to add your own aribute to Order Management Cloud.
Display Your Data Dene and capture order details that are unique to your business, and then allow other uses
for these details during order fulllment.
This content previously appeared in Document ID 2051639. 1 (White Papers for Order
Management Cloud) on My Oracle Support. It has been rewrien and updated to support the
current release.
Using Web Services to Integrate New section. Use web services to integrate Order Management with other systems, such as
Order Management channel systems, legacy systems, quoting systems, contract systems, service request systems,
inventory systems, or purchasing systems.
This content previously appeared in Document ID 2051640. 1 (Using Web Services with Oracle
Fusion Order Management Cloud) on My Oracle Support. It has been rewrien and updated to
support the current release.
Seing Up Business Rules New section. Use a business rule to implement a dynamic decision at run time that automates
a company policy, computation, or logic.
This content previously appeared in Using Business Rules with Order Management Cloud in
Document ID 2051639.1 (White Papers for Order Management Cloud) on My Oracle Support. It
has been rewrien and updated to support the current release.
13
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Copying Setup Data Between New section. Copy your setup from one instance of Order Management Cloud into another
Instances of Order Management instance during the lifecycle of your Order Management deployment.
This content previously appeared in Importing and Exporting Setup Data in Document ID
2051639.1 (White Papers for Order Management Cloud) on My Oracle Support.
Integrating Order Management with New section. Use a predene connector to test an example integration between Order
Oracle eBusiness Suite Management Cloud and Oracle eBusiness Suite (EBS).
This content previously appeared in Document ID 2132744. 1 (Integrating Order Management
with eBusiness Suite) on My Oracle Support. It has been rewrien and updated to support the
current release.
Integrating Aachments in Order New section. Integrate Order Management so it can receive aachments as part of a source
Management order from a source system to sending one to your order fulllment system.
This content previously appeared in Integrating Aachments in Order Management in
Document ID 2051639.1 (White Papers for Order Management Cloud) on My Oracle Support. It
has been rewrien and updated to support the current release.
Identifying the Host and Port for Your New topic. Identify the host and port that your Order Management implementation uses.
Order Management Implementation:
Procedure
Returning Sales Orders: Procedure Revised topic. If the sales order uses recurring billing, and if you must return all paid invoices,
then make sure you set the Cancellation Eective Date.
Order-to-Cash: How It Works Revised topic. Order Management uses Coordinated Universal Time (UTC) to handle time
zone dierences when the Order Entry Specialist sets the Requested Date. It also uses this
processing when a source order includes details for fulllment options, such as the available
date of shipment, warehouse, shipping method, fulllment cost, and so on.
Assigning Job Roles in Order Revised topic. To integrate social objects from Order Management into Oracle Social Network,
Management: Explained you must use the Order Manager or the Order Orchestration error recovery role.
Integrating Order Management with Revised topic. Order Management only sends statuses Scheduled, Shipped, Awaiting Billing or
Source Systems: Procedure Billed.
Administering Email Format in Order Revised topic. Use BI Publisher Enterprise to modify the email template that Order
Management: Procedure Management uses when it sends an email notication.
Managing Approval Rules for Sales Revised topic. Use the Manage Order Approval Rules page to dene an approval rule according
Orders: How It Works to status, then make sure you don't dene the rule to run according to status Credit Check
Failed.
Task Layer: Explained Revised topic. Includes new details about how to use AGGREGATOR_ WAIT_TIME and
AGGREGATOR_ MAX_FLINES to minimize problems that might occur with fulllment requests.
14
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Entities and Aributes You Can Use Revised topic. Replaced the previous listing of aributes with new lists categorized according to
When Integrating Order Management entity.
with Other Oracle Applications:
Reference
Topic Description
Controlling Decimal Precision: New topic. Use the Quantity Decimal Precision prole to control decimal precision for aributes
Procedure that store numeric values.
Specifying Transaction Types to Send New topic. Dene a business rule that sets the value for the AR Transaction Type aribute
from Order Management to Oracle according to details from the sales order, such as business unit, order type, line type, or item.
Receivables: Procedure
Revised topics. These topics previously described only how to integrate Order Management
The following topics describe how to with Oracle Receivables. They now also describe how to integrate Order Management with
integrate Order Management with Oracle Shipping, Oracle Receiving, and Oracle Procurement.
other Oracle applications:
Using Files to Import Orders into Revised topic. You must make sure you correctly set up the rank for each customer item
Order Management: Explained relationship before you import source orders.
Pausing Orchestration Processes: Revised topic. You must make sure to release a paused orchestration process. If you don't,
Explained then the orchestration process will remain in a paused state, which might result in failed sales
orders, failed order fulllment, and so on.
Managing Approval Rules for Sales Revised topic. It is recommended that you dene your approval rule so it evaluates to True
Orders: How It Works only one time for the same sales order, and then creates only one approval request.
Order Management Cloud: Overview Revised topic. Includes a new Geing Details section with references to technical
documentation for Order Management.
15
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Managing Change That Occurs Revised topic. The compensation paern for the Shipping task uses the Cancel and Create
During Order Fulllment: Explained paern for item substitution during shipping but doesn't support the Update paern. If you
require dierent behavior, then you can write a compensation rule according to an item
change.
Topic Description
Dening Extensions That Modify New topic. Use the Manage Extensions page in the Setup and Maintenance work area to write
Order Management Cloud: Overview your own Groovy script that modies your Order Management deployment, and to specify the
extension point that determines when to run this script.
The following topics describe how to New topics. These topics describe how to do the following work:
set up coverage and subscriptions:
• Set up and manage coverage items. For example, you can set up a coverage, such as a
• Seing Up Coverage for Sales warranty for laptop support that includes a daily, weekly, monthly or yearly duration.
Orders: Procedure • If you set up an orchestration process that processes a covered item or a coverage item,
• Seing Up Orchestration then you can you use the same orchestration process instance for the covered item and
Processes for Coverage Items: for the coverage item, depending on your business requirements. If you use dierent
Explained instances, then you can coordinate these instances.
• Seing Up Subscriptions for • Set up subscriptions for sales orders.
Sales Orders: Procedure • Set up a subscription for a covered item. In this example, you dene a covered item for
• Seing Up Subscriptions for cloud up time, and then dene a subscription that allows the Order Entry Specialist to
Covered Items: Procedure add this up time.
• Importing Source Orders • Import a source order that includes covered items, coverage items, or subscriptions into
That Include Coverage or Order Management.
Subscriptions: Procedure
16
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Specifying How to Track Items as New topic. Specify how to track an item as an asset, and then allow the Order Entry Specialist
Assets: Procedure to monitor it during order fulllment.
Implementing Order-to-Cash: Points Revised topic. Includes a new subtopic, Consider Which Scheduled Processes You Must Run.
to Consider
Topic Description
New topics. Use Order Management in conjunction with your trade management solution to
The following topics describe how to create and manage trade transactions that comply with import global trade rules, export global
set up trade compliance: trade rules, and other trade regulations that the country or region requires.
• Managing Trade Compliance:
Overview
• Managing Trade Compliance:
How it Works
• Managing Trade Compliance:
Procedure
• Managing Trade Compliance
During Order Fulllment:
Procedure
• Constraining Compliance
Screening: Procedure
• Managing Trade Control
Types: Procedure
New topics. Integrate Order Management with Oracle Transportation Management so that it
The following topics describe how to sends sales orders to a transportation management system for transportation planning, and to
integrate Order Management with receive updates at fulllment milestones, such as plan completion or proof of delivery.
Transportation Management:
New topics. Congure Order Management to route each sales order for sales order approval.
The following topics describe how to You can congure sales order approval to accept or reject the sales order according to a variety
manage approval rules: of approval rules, and on a variety of sales order aributes.
• Managing Approval Rules for
Sales Orders: How it Works
• Managing Approval Rules for
Sales Orders: Procedure
17
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
New topics. Use credit check in Order Management to minimize the nancial risk that your
The following topics describe how to organization assumes during day-to-day operations. You can use credit check to validate each
manage credit check: sales order and verify that your customer has credit available that's sucient to cover the cost
of the purchase, and to allow Order Management to process the sales order through order
• Managing Credit Check in fulllment before receiving payment.
Order Management: Overview
• Managing Credit Check in
Order Management: Procedure
• Importing Source Orders That
Include Credit Check Details:
Described
Calling Order Management Cloud New topics. Oracle Fusion Applications exposes its interfaces as web services, and deploys
from Client Applications them on a service-oriented architecture (SOA) container, secured through layers of web service
policy, authentications, and other protocols. This document describes how to set up a client
application so it can call secure web services on Order Management Cloud.
For details, search for Document ID 2051639.1 (White Papers for Order Management Cloud)
on My Oracle Support, and then download the aachment that describes how to call Order
Management Cloud from a client application.
Using Web Services with Order New topics. You can use web services to interact with Order Management. For example, you
Management Cloud can use the Order Import web service to create an integration that sends order requests from
your upstream system to Order Management. This web service processes the request, and
then creates a sales order in Order Management. Various types of upstream systems and
applications can use this service, such as channels, legacy systems, quoting systems, contract
systems, service request systems, inventory systems, or purchasing systems.
This content was moved to this implementation guide in Release 18A. For details, see Using
Web Services with Order Management Cloud: Overview.
Integrating Order Management Cloud New topics. Get help if you already own applications that are part of Enterprise Resource
with Oracle eBusiness Suite Planning in Oracle E-Business Suite, and you plan to migrate to Order Management Cloud
in phases and will continue to use E-Business Suite to perform some of the fulllment
functionality.
For details, search for Document ID 2132744.1 (Integrating Order Management Cloud with
Oracle eBusiness Suite) on My Oracle Support.
Managing Order Types: Procedure New topic. An order type is an optional aribute on the order header that you can administer
to arrange sales orders into groups that you dene. You can also use it to control order
processing. This content previously appeared in Document ID 2051639. 1 (White Papers for
Order Management Cloud) on My Oracle Support.
Managing Order Management Revised topic. Includes parameters that you can set for credit check, trade compliance, and
Parameters: Procedure order approvals.
Using Business Rules to Get Data Revised topics. Starting in Release 12, you use a dierent set of objects in your business rule.
from Dierent Product Models:
Procedure
Routing Requests from Order
Management to Fulllment Systems:
Procedure
18
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Topic Description
Creating Transformation Rules: Revised topics. These topics include revised procedural instructions and screen captures.
Procedure
Creating Advanced Product
Transformation Rules: Procedure
Assigning Orchestration Processes:
Procedure
Integrating Order Management with Revised topic. Set the Invocation Mode to determine how Order Management calls the
Fulllment Systems: Procedure connector when an orchestration process requires an interface to a system that resides outside
of Order Management.
Implementing Order-to-Cash: Points Revised topic. Includes content that describes whether new features in this release come
to Consider predened or require setup.
Assigning Job Roles in Order Revised topic. Includes details about predened job roles.
Management: Explained
Using Drop Ship with Order Revised topic. Includes a list of setups that are required to implement drop ship.
Management: How it Works
19
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Note.
• Capture. Capture demand from channels, such as web, mobile, call center, direct sales, or partners. Provide the
functionality that your users need during order capture, such as price items, determine availability, get order
status, and so on.
• Orchestrate and monitor fulllment across channels. Coordinate with other Oracle Supply Chain
Management Cloud applications during fulllment, such as purchasing, manufacturing, inventory
management, and other solutions.
• Fulll. Integrate Order Management with systems that reside outside of Order Management.
20
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
For details about how Order Management integrates channels with other systems, see the Overview of Integrating
Order Management topic.
21
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Set Up Processing
Set up the orchestration process that Order Management uses to fulll each sales order. Create a new orchestration
process or modify an existing one that comes predened with Order Management and that already meets most of your
business requirements.
• Use common, conditional, parallel, or interrelated ows for order lines.
• Create change order rules that automatically modify order fulllment.
• Create rules that calculate order completion date according to requested date.
• Create common statuses to use across your business process.
• Create draft orders in Order Management that you can later submit for processing.
Create an orchestration process that plans fulllment processes, calculates lead times, modies order compensation
steps, and so on.
You can also write your own Groovy script in an order management extension to modify your Order Management
deployment. Create the extension point that determines when to run this script. For details, see the Overview of
Extensions That Modify Order Management topic.
22
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
• Add details to improve fulllment. For example, add or modify aributes or add more items so Order
Management can eciently fulll the sales order.
23
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Capture orders from your channels in an order capture system, such as the Order Management work area, or Congure,
Price and Quote. You can also import orders from your source system, such as a legacy order capture system.
• Web sales
• Call centers
• Direct sales
• Partners
24
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Use work areas in supply chain management to set up and capture your item.
Use work areas to orchestrate order fulllment across sources, such as suppliers, nance, and distribution centers.
Get Details
What Where
Go to Oracle Supply Chain Management Cloud on Oracle Help Center at hps://docs. oracle.
Use these books. com/ en/ cloud/ saas/ supply-chain-management/ 18b/indexhtml
• Implementing Order
Management
• Using Order Management
• Administering Pricing
• Tables and Views for Oracle
Supply Chain Management
Cloud
• REST API for Oracle Supply
Chain Management Cloud
Technical details not covered in Search for Document ID 2051639.1 (White Papers for Order Management Cloud) on My Oracle
books Support at hps: / / supportoraclecom
What's New in each release and Oracle Cloud Release Readiness at hps://cloud. oracle. com/ saasreadiness/ scm
release content documents
25
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Details
How Order-to-Cash Works in Order Management
Use Order Management Cloud to order and fulll an item, such as a printer, a congured item, such as a desktop
computer, or a service, such as monthly maintenance for a network of desktop computers.
Here's how Order Management fullls a sales order when the user creates it in the Order Management work area.
26
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Note.
1. A user, such as the Order Entry Specialist, clicks Create Order in the Order Management work area to create a
new sales order.
◦ The user searches the Customer aribute on the order header. Order Management gets details about the
customer from Trading Community Architecture, then displays them in the order header.
◦ The user searches for an item on the catalog line of the sales order. Order Management gets details
about the item from the Product Information Management work area and the Pricing Administration
work area, then displays them on the catalog line.
◦ The user clicks Add to move the line to the order line area, then clicks Submit.
◦Order Management validates the order, converts order lines to fulllment lines, then an assignment rule
identies the orchestration process that Order Management runs to fulll each fulllment line. You can
set up this rule. For details, see the Assign Orchestration Processes topic.
2. An orchestration process contains steps that fulll the order. Examples of steps include schedule, reserve, ship,
invoice, and so on.
The steps vary so they optimize order fulllment according to the needs of each order. The orchestration
process determines process logic, such as statuses to use for the order, how to do forward planning and
backward planning, how to compensate for change to the order, and so on.
◦ References data in Product Information Management to determine how to orchestrate the order
according to the item. You can specify this data. For details, see the Get Data from Product Information
Management topic.
◦ References Supply Chain Planning to cross-reference and validate data.
You can set up data collection parameters, enable data for collections, and so on. For details, see the
Quick Start to Implementing Order-to-Cash topic.
◦ Uses business rules to orchestrate each order. You can set up a variety of rules.
For example, set up a rule that uses a dierent lead time depending on whether the inventory
organization resides in Denver or San Francisco, or a rule that makes sure Order Management doesn't
aempt to ship a nonshippable item, such as a video that your customers can only stream from the cloud.
For details, see the Overview of Using Business Rules With Order Management topic.
27
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
3. To orchestrate fulllment, each orchestration process step calls a service that does a fulllment task.
For example.
◦ The Create Scheduling service communicates with Order Promising. Order Promising determines
availability and promises the order.
• Cross-references items before it sends the fulllment request to your fulllment system.
• Gets supply and demand data from Supply Chain Planning Cloud to determine availability in the
supply chain, such as inventory levels in warehouses.
• Schedules the best fulllment options for each fulllment line. Your users can also manually use
the Order Management work area to choose some options.
28
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Most predened orchestration processes include a scheduling step that calls Order Promising. You
can also set up an orchestration process that doesn't include a scheduling step and that doesn't use
Order Promising. For example, if your organization sells downloadable literature that doesn't require a
warehouse or shipping.
◦ Task services interpret replies and updates from fulllment systems, such as Inventory Management. For
example, the orchestration process calls.
• The Create Inventory Reservation service to reserve inventory for your item, then waits until
Inventory Management sends conrmation that it reserved inventory.
• The Create Shipping service to create a shipment, and Wait for Shipment to wait for conrmation
from Inventory Management that the carrier successfully delivered the item.
• The Create Billing Lines service and the Wait for Billing service to call Receivables and nish the
order-to-cash process. It makes sure you get paid.
For details about how to use task services, see the Task Types topic.
You use the Setup and Maintenance work area to set up an orchestration process.
4. The External interface communicates order details between Order Management and the fulllment system. It
primarily routes the fulllment request and converts data so the fulllment system can correctly use the data.
You can also use the external interface to send a request to your fulllment system that resides outside of
Oracle Fusion to fulll the order. The external system processes the request and sends completion updates
through the external interface so the orchestration process can move to the next step. For details, see the
Integrate chapter in the Implementing Order Management book.
5. Here's what happens during fulllment.
◦ Inventory Management manages logistics and inventory for the order, including schedule, reserve,
receive, and ship each item.
◦ Receivables processes billing details, including one-time charges and recurring charges, then sends them
to Oracle Financials Cloud.
◦ Oracle Financials Cloud does nancial transactions for the order. It creates an invoice, manages accounts
receivable, processes payments, and manages revenue.
The fulllment system communicates updates through the external interface to task services throughout
fulllment.
Note.
• This topic describes one way to fulll orders. You can set up Order Management to do fulllment dierently,
according to your unique fulllment environment.
• You can import orders into Order Management from an upstream order capture system. For details, see the
Overview of Importing Orders into Order Management topic.
• For details about other fulllment ows, such as drop ship, back-to-back shipping, or internal transfer, see
Oracle SCM Cloud, Implementing Manufacturing and Supply Chain Materials Management.
Related Topics
• Overview of Drop Ship in Order Management
• Orchestration Processes
29
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Note.
1. Capture orders. A source system that resides outside of Order Management sends a source order to Order
Management.
The terminals and databases in step 1 in the diagram represent dierent channels that your deployment can
use as source systems. For example, a legacy system, or some other channel.
The ow for a sales order that the Order Entry Specialist creates in the Order Management work area is similar,
except it typically starts with orchestration at step 3.
2. Transform orders. Transformation rules separate the source order into a hierarchy that Order Management
can use and process.
30
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Transformation nishes, then assignment rules assign an orchestration process to the sales order.
3. Orchestrate orders. One or more orchestration processes contain steps that do fulllment tasks. Each
fulllment request starts here.
4. Do tasks. Task services send a request to the fulllment system to run the fulllment task, such as ship the
item or invoice the item. A system that resides outside of Order Management can also send a request to a task
service.
5. Integrate. Here's what the external interface does.
External Interface
The external interface manages communication between Order Management and your fulllment system.
• The fulllment system doesn't communicate directly with the orchestration process. Instead, the external
interface provides an intermediary that Order Management uses to route requests.
• Order Management uses a web service to route each request from the task service to the fulllment system,
and then from the fulllment system to the task service.
• The connector modies the structure and content of the outbound message so it matches the inbound
interface that the fulllment system uses.
• You can set up each web service and routing rule, then register the connector web service. This set up
integrates the fulllment system with the external interface.
Related Topics
• Task Services
• Manage Connector Details Between Order Management and Your Fulllment System
• Integrate Order Management with Source Systems
31
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
Order Management uses the ow described in the How Order-to-Cash Works topic, but with these important
dierences.
1. An order capture system that resides outside of Order Management captures a source order. For example, a
user might use your legacy application to enter a source order.
32
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
2. You set up a connector that the capture system can use to send the source order to Order Management. If
the source system and Order Management use dierent domain values, then the connector transforms the
structure and values from the domain that the source system uses to the domain that Order Management uses.
For details, see the Integrate Order Management with Source Systems topic.
3. Supply Chain Planning collects data about the source order, then uses it to create cross-references and
planning data.
Use a cross-reference help to manage the representation of data across systems. A cross-reference relates
business data between your order capture system, order fulllment system, and Order Management. For
example, an item cross-reference can create a relationship between an item, such as Widget x, that resides in
your source system, and a representation of Widget x in Order Management.
You can cross-reference across warehouses, units of measure, carriers, currencies, shipping methods, payment
terms, accounting rules, invoicing rules, service levels, tax classication codes, and so on.
4. An orchestration process references business rules to transform each source order into a sales order that Order
Management can understand and fulll.
5. Order Promising gets item details from Product Information Management, customer details from Trading
Community Architecture, and planning data from Supply Chain Planning to promise the sales order.
6. Order Management uses the order-to-cash ow to continue processing.
Note.
• Order Management updates the order status, fulllment line status, and invoice status during the ow, and
communicates each update to your order capture system.
• Order Management can use an order capture service to communicate updates to the source system. To receive
these updates, the source system must subscribe to the events. If Order Management receives an update from
the source system, then it replans the orchestration process. It replans every time it receives an update.
• Here's the aributes that Order Management uses to calculate the planned dates for each step and task,
starting with the rst step it does in chronological order.
• Order Management doesn't do the same amount of transformation for a sales order that a user creates in the
Order Management work area because these orders already include the data and use the structure that Order
Management requires.
• A single source order might contain order lines that include one-time charges, and other order lines that
include recurring charges. If Order Management receives a source order that includes a recurring charge, then
Oracle Receivables creates a recurring billing invoice for these lines.
• Order import typically uses the same ow that this topic describes, except you import source orders from a
spreadsheet or through a web service.
Related Topics
• Import Orders into Order Management
• Integrate Order Management with Source Systems
• How the Order Orchestration and Order Promising Processes Use the Collected Planning Data
33
Oracle SCM Cloud Chapter 1
Implementing Order Management Hello
34
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Order-to-Cash
Roadmap for Seing Up Order-to-Cash
Use this road map as the high-level procedure you use to implement order-to-cash.
• Do the tasks that this topic references in the same sequence that the topic displays them.
• Steps after step 3 primarily reference tasks in the Orders functional area. Do each of these tasks depending on
your business requirements.
• To do a task, click each one in the Orders area. If the Orders area doesn't display a task, then search for it in the
Search Tasks eld.
• The set up you do depends on your business requirements. You typically do most or all of the tasks that
integrate Order Management. Other tasks depend on your requirements, such as tasks that control order
status, constrain changes, or modify an orchestration process.
• The Topic column references topics in Oracle SCM Cloud, Implementing Order Management. Use these topics
to get help with the task.
• The Prepare column describes what you do to prepare for implementation. Do this set up before you
administer order-to-cash. It will help to avoid interruption and downtime during administration. Use the
Prepare column to check o preparation work as you nish it.
• To monitor progress, add a check mark to the Done column when you nish each functional area or task.
• To implement drop ship, see the Implement Drop Ship section in the Implementing Order Management book.
Implement order-to-cash.
1. Read the Guidelines for Implementing Order-to-Cash topic. It contains details that help to make the
implementation go smoothly.
2. In the Navigator, click Setup and Maintenance.
3. On the Setup page, click Order Management.
This topic assumes you will modify the predened implementation that's available through Setup. For details
about seing up a new implementation, see Points to Consider When Implementing Order-to-Cash.
4. Set up these functional areas.
35
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Items _____
Catalogs _____
Customers _____
These areas reference common tasks. A typical implementation requires that you complete most or all
common tasks. For details about how to set them up, see the book titled Oracle SCM Cloud, Implementing
Common Features for Oracle SCM Cloud.
5. In the Functional Areas list, click Orders.
6. In the Orders area, click Required Tasks > All Tasks
7. Integrate Order Management. For details, see the Integrate chapter in the Implementing Order Management
book.
Manage Web Service Details Create User Credential Keys _____Gained access to the administrator
privilege and administrator role so we
can use Oracle Wallet Manager.
Manage Trading Community Source Integrate Order Management with Source _____Located the time zone where the
Systems Systems server that the source system uses is
located.
Manage Upstream and Fulllment Source
Systems _ ____Identied the URL that locates the
connector that resides on the source
Manage External Interface Web Service system.
Details
_ ____Identied the User Name and
Password that the Status Update service
requires.
Manage Trading Community Source Using Web Services to Integrate Order _ ____Identied source system details
Systems Management chapter, including Dene
Your Source System, and Create Cross- _ ____Identied role and privilege
References in Order Management requirements
Manage Item Relationships
_ ____Identied cross-reference
requirements
Manage External Interface Web Service Integrate Order Management with _ ____Identied an integrated
Details Fulllment Systems development environment we can use to
create a transformation style sheet.
_____Acquired the user credentials that
the service provider needs when calling
their web service.
36
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Manage External Interface Routing Rules Route Requests from Order Management _____Created a list that includes the
to Fulllment Systems names of the items we must route
to fulllment systems, the unique
identier for each item, and the name
of each fulllment system where Order
Management must route the request.
8. Control application behavior. For details, see the Application Behavior section in the Implementing Order
Management book.
Manage Order Management Parameters Manage Order Management Parameters _____ Determined whether our business
requirements will allow or disallow
the Congurator to choose items
in a conguration and to modify a
conguration after the user adds a
congured item.
_____ Determined the date that
Order Management must use when it
determines the congure options that it
displays for a congured item.
_____ Determined how Order
Management will display the Ship-to
Address and the Bill-to Location for each
customer during order entry.
_____ Determined whether the
Congurator stops processing when it
encounters an error.
_____ Identied the item validation
organization that Order Management
must use to validate and display items.
_____ Identied an Order Management
user that the buyer can contact to resolve
a problem that occurs with a drop ship.
_____ Determined whether the
Congurator validates each order that
includes a congured item during order
import.
37
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Manage Order Proles Manage Order Proles _____ Identied the value to use when
converting a currency.
_____ Identied the currency to display in
the Order Management work area.
_____ Identied the customer to use
when ltering status data on the
Overview page.
_____ Determined whether use the
source order number as the order
number during transformation.
_____ Determined the number of seconds
to wait after an action nishes.
9. Administer pricing. For details, see the book titled Oracle SCM Cloud, Administering Pricing.
10. Import source orders. If you use a source system, then you must import source orders. For details, see the
Import section in the Implementing Order Management guide.
Not applicable Import Orders into Order Management ____ Acquired access to our source order
data.
____ Identied a tool we can use to
manipulate source order data, such as
SQL (Structured Query Language), or ODI
(Oracle Data Integrator).
Create Source System Use Web Services to Import Source ____ Determined whether we will use the
Orders product model or the product hub.
Manage Upstream and Fulllment Source
Systems ____ Identied the aributes we will use
in the Request Payload.
Manage Standard Lookups
Manage Item Relationships
11. Transform source orders. If you use a source system, then you must transform source orders. For details, see
the Transform section in the Implementing Order Management book.
Manage Product Transformation Rules Set Up Transformation ____ Acquired user and password we
need to sign into the Product Information
Management work area.
38
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Manage Product Transformation Rules Create Transformation Rules ____ Described the structure of the
source order data.
____ Identied the type of transformation
that must occur so Order Management
can support our source data.
____ Described requirements for
pretransformation rules.
____ Described requirements for
transformation rules.
____ Described requirements for
posransformation rules.
Manage Product Transformation Rules Create Advanced Product ____ Described requirements for
Transformation Rules advanced posransformation rules, if
necessary.
12. Set up statuses. For details, see the Sales Order Status section in the Implementing Order Management book.
Manage Task Status Conditions Manage Task Status Conditions ____ Described our requirements
for managing the statuses that our
fulllment systems provide.
Manage Status Values Set Up Fulllment Lines Statuses ____ Described our requirements
for managing the statuses for each
Manage Orchestration Process Add Status Conditions to Fulllment fulllment line.
Denitions Lines
Manage Status Values Create Orchestration Process Classes ____ Described our requirements for
grouping orchestration process statuses
so they're meaningful.
Manage Orchestration Process Add Status Conditions to Orchestration ____ Described our requirements
Denitions Processes that specify when to set statuses for
orchestration processes.
13. Set up processing constraints. For details, see the Constrain Sales Orders section in the Implementing Order
Management book.
Manage Processing Constraints Manage Processing Constraints ____ Described requirements regarding
who can change a sales order, what can
39
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Manage Constraint Entities Constrain Changes to Aributes ____ Described requirements regarding
the order aributes that can change.
14. Control change orders. For details, see the Change Orders section in the Implementing Order Management
book.
Manage Order Aributes That Identify Manage Order Aributes That Identify ____ Described our requirements
Change Change regarding what changes Order
Management will allow on an existing
sales order, and when it allows the
change, including order aributes, users,
and timing.
Manage Orchestration Process Measure the Cost of Change ____ Estimated the business cost
Denitions associated with each change.
Manage Orchestration Process Compensate Sales Orders That Change ____ Described our requirements
Denitions regarding the order compensation we will
allow Order Management to do.
15. Notify systems when orders change. For details, see the Notify Systems section in the Implementing Order
Management book.
Manage Business Event Trigger Points Send Notications from Order ____ Described our requirements
Management to External Systems regarding when Order Management must
notify external systems that a sales order
changed.
16. Use jeopardy to manage delays. For details, see Delays section in the Implementing Order Management book.
Manage Jeopardy Priorities Set Up Jeopardy and Lead Time to ____ Described our requirements
Manage Delay regarding when Order Management
Manage Orchestration Process must notify an order manager that a
Denitions sales order is in jeopardy, including the
threshold when to notify for each step in
Manage Jeopardy Thresholds an orchestration process.
40
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
17. Manage task types. For details, see the Task Types section in the Implementing Order Management book.
Manage Task Types Set Up Task Types ____ Described our requirements
regarding seing up task types.
18. Set up exelds. For details, see the Flexelds section in the Implementing Order Management book.
Manage Order Extensible Flexelds Deploy Extensible Flexelds in Order ____ Described our requirements
Management regarding what details we must display in
elds, including the data and location in
the user interface.
19. Set up orchestration processes. For details, see the Orchestration Processes chapter in the Implementing Order
Management book.
Manage Orchestration Process Guidelines for Seing Up Orchestration ____ Conrmed that the predened
Denitions Processes orchestration processes don't meet our
requirements.
____ Identied conguration details
for each orchestration process that we
must create, such as task type to use,
change logic, process planning, jeopardy,
statuses, and so on.
Manage Orchestration Process Set Up Orchestration Processes ____ Described the IF/THEN rules that we
Denitions need for each orchestration process.
____ Described orchestration planning
and replanning that we need for each
orchestration process.
____ Specied the behavior that we need
for each orchestration process step, such
as the task type to use, the service to call,
lead-times, and so on.
41
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Manage Orchestration Process Set Up Lead-Times for Orchestration ____ Described the IF/THEN rules and
Denitions Process Steps conditions that determine the lead-time
to use for each orchestration process
step.
Manage Orchestration Process Select the Fulllment Lines That Run for ____ Described the IF/THEN rules that
Denitions Orchestration Process Steps select the fulllment line to run for each
orchestration process step.
Manage Orchestration Process Add Branches to Orchestration Processes ____ Specied subprocesses and parallel
Denitions processing that our orchestration process
requires.
Manage Orchestration Process Pause Orchestration Processes ____ Specied the IF/Then rules that
Denitions Order Management must use when
it pauses each of our orchestration
processes and each orchestration
process step.
Manage Orchestration Process Assign Orchestration Processes ____ Specied the IF/Then rules that
Assignment Rules Order Management must use when
it assigns each of our orchestration
processes and each orchestration
process step.
Not applicable Automatically Resume Paused ____ Identied the pause tasks we will
Orchestration Processes release to resume a paused orchestration
process.
Related Topics
• Overview of Order Management Cloud
42
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Dashboard Yes No
Congurator No Yes
Constraints No Yes
Notications No Yes
Jeopardy No Yes
Flexeld No Yes
43
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aachments No Yes
Order Management comes predened with most setup tasks already done for you, but you can modify the predened
oering.
If you nd that modifying the predened oering doesn't meet your business requirements, then create a new
implementation.
Create a New Implementation Project
44
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
If the predened oering doesn't meet your business requirements for some reason, then create a new implementation
project.
1. In the Navigator, click Setup and Maintenance.
2. On the Setup page, click Tasks > Edit Implementation Projects.
3. On the Implementation Projects page, click Actions > Create.
4. On the Create Implementation Project page, modify the aribute values, as necessary, then click Next.
5. On the Select Oerings to Implement page, in the Name list, expand Order Management.
6. In the Order Management row, and in the Pricing row, enable the Include option, then click Save and Open
Project.
You can create one or more implementation projects for the oerings and options. Each Oracle application
creates the task list you must nish for each project you create. An Application Implementation Manager can
set up these task lists, and assign and track each task that these lists contain.
7. On the Implementation Project page, in the Task list, expand Order Management, then do the tasks that your
business ow requires.
Perform Data Load from Staging Tables You collect organization parameters from Collect Data section in the Quick Start for
your source system and load them into Seing Up Order-to-Cash topic
staging tables. You use Perform Data Load
from Staging Tables to process data in
these tables.
Refresh and Start the Order Promising Updates the Global Order Promising data. Set Up Global Order Promising section in
Server the Quick Start for Seing Up Order-to-
Cash topic
Load Interface File for Import Use these scheduled processes when you Import Orders into Order Management
import source orders.
Import Sales Order
Delete Orders From Interface Tables
Transfer Invoice Details to Supply Chain Send details about validated invoices, Specify Events That Indicate an Ownership
Financial Flow Orchestration canceled invoices, and corrected invoices Change
to Financial Orchestration.
Transfer Ownership Change Events to
Receiving Send details about the AP Invoice Match
from Financial Orchestration to the
receiving process.
Update or Close Sales Orders Order Management might display sales Close Fulllment Lines That Remain Open
orders and fulllment lines as open even
if it closed all fulllment lines that these
orders and lines reference. You can use
Update or Close Sales Orders to x this
problem.
Generate Constraint Packages Constrain changes your users can make. Manage Processing Constraints
45
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Publish Extensible Flexeld Aributes Publish and deploy an extensible exeld. Deploy Extensible Flexelds in Order
Management
Plan Orchestration Processes Update an orchestration process plan Set Up Orchestration Processes
at regular intervals according to the
frequency that your deployment requires.
Release Pause Tasks Release a pause task so processing can Pause Orchestration Processes Until an
continue. Event Occurs
Automatically Resume Paused
Orchestration Processes
Generate Bucket Sets Automatically keep bucket sets up to date Use Decision Tables and Bucket Sets in
with reference data and transactional data. Business Rules
Import AutoInvoice Import and validate transaction data from AutoInvoice Import: How Data Is
Order Management or nancial systems Processed
that reside outside of Oracle to create
invoices, debit memos, credit memos,
and account credits in Oracle Fusion
Receivables.
Here are a few more examples of predened constraints that might aect your custom set up.
Constraint Description
Ordered Date Update Prevent updates to the Ordered Date aribute on the order header.
Fulllment Line Bill-to Customer Prevent updates to the Bill-to Customer aribute on the fulllment line.
Update
Payment Terms Are Missing Prevent submiing a fulllment line when the line doesn't have payment terms.
46
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
There are many predened constraints, but you can lter them to reduce the ones you must examine.
1. In the Setup and Maintenance work area, go to the task.
◦ On the order header before the user clicks Submit, set the lter for Constraint Entity to Order Header.
◦ On the order line before the user clicks Submit, set the lter for Constraint Entity to Order Line.
◦ After the user clicks Submit, set the lter for Constraint Entity to Order Fulllment Line.
3. Rene the search results. Use Query by Example to lter the constrained operation. For example, if your set up.
◦ Updates the value of an aribute, set the lter for Constrained Operation to Update.
◦ Deletes something, set the lter for Constrained Operation to Delete.
4. Rene the search results. If you know the name of the aribute that your set up manipulates, use Query by
Example to lter for it. For example, if your set up updates the value of the Ship-to Customer on the fulllment
line, then.
The Message aribute in the Details area describes that you can't update the Bill-to Customer because Order
Management already fullled the fulllment line.
For details about how to use the predened set up, see the Guidelines for Seing Up Order-to-Cash topic.
47
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
1. Prepare.
2. Set up common components.
3. Set up item organizations and product models, and import items.
4. Connect source systems and set up customers.
5. Collect data.
6. Set up Global Order Promising.
7. Set up Order Management and Pricing, and test your set up.
Prepare
1. Consider the data you will use in your test environment.
For example.
As part of planning your test, create a list for each of these data, such as a list of items, list of customers, and so
on. You can then use these details later during set up.
2. Get the URLs, User IDs, and passwords you need to access Order Management Cloud and other applications,
such as Oracle Identity Manager, Oracle Authorization Policy Manager, Security Console, and Oracle Cloud
Applications.
IDM_ORACLE_HOME
http://host/homePage/faces/AtkHomePageWelcome
where:
For example.
http://abc.yourCompanyName.com/homePage/faces/AtkHomePageWelcome
If you don't know the URLs, contact the person who installed the systems at your company. The summary page
displays URLs when the provisioning process that Oracle Cloud Applications uses nishes.
48
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
The default le name of the le that stores these URLs is Provisioning Summary. The person who installs the
software can choose a dierent le name. This le resides in the same folder where the provisioning plan
resides.
https://host/apm https://host/oim
4. Get the user name and password for each user. Contact the person who installed the systems to get the user
names and passwords they used or specied when they installed and provisioned the application.
User Description
Super user for Oracle Cloud The default user name is FAADMIN.
Applications
◦ Identify the items that the test orders will contain and the customers who will order them.
◦ Identify the item organizations that you will associate with these items.
◦ Identify the units of measure (UOMs) and currencies that these test orders will use.
Here are the tasks you can do in the Setup and Maintenance work area after you acquire the super user.
49
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
A large task list displays when you create the list for the Order Management oering. Make sure you do step 5,
Set Up Enterprise Structures. Also do step 3, Set up Item Organizations, through step 10, Set up Pricing, then
create or import orders.
4. Set up implementation users.
Role Description
Pricing Administrator- All Business Use this role you to administer pricing. Add it when you do the Set up Pricing task.
Units, which is QP_ PRICING_
ADMINISTRATOR_ ALL_ BUSINESS_
UNITS_DATA
Product Manager, which is EGP_ Use this role to set up organizations and items so you can add items to your sales orders.
PRODUCT_ MANAGER_JOB
You might need to use Authorization Policy Manager to modify data security for these roles. For details, see
these topics.
An implementation user can access a wide range of privileges. To test with users who have fewer privileges, set
up users with roles that are specic to Order Management.
50
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Role Name
Examine how these roles implement security. Create at least one user for each of these roles.
The Supply Chain Application Administrator role provides the Order Administrator role.
For details about job roles, see the Job Roles in Order Management topic.
• You need at least one organization that represents a warehouse where your implementation can
collect the supply data it uses to fulll each order.
• You must set up each warehouse from a fulllment system as an item organization in Oracle.
• You must not associate an item organization with a business unit.
• Item Organization
• Item Master Organization
51
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
For details, see topic How Units of Measure, Unit of Measure Classes, and Base Units of Measure Relate
to Each Other.
◦ Set up Product Information Management.
Product Information Management must contain the items that each test order references. For details,
see the Dene Product Information Management section in the Using Product Master Data Management
book.
3. Dene item classes, items, and catalogs according to your test requirements.
4. Optional. Use an order import template to import the items that your test orders will reference. Transform
orders, as necessary.
◦ The Import and Transform chapter in the Implementing Order Management book.
◦ The Item Imports topic.
◦ The Dene Product Information Management section in the Using Product Master Data Management
book.
Here's when you must set up and connect the source system.
◦ You plan to use a source system. For details, see the Integrate Order Management with Source Systems
topic.
◦ You plan to import customer data from a source system.
◦ You plan to use cross-references. For details, see the Cross-References in Order Management topic.
If you will use only the Order Management work area to create sales orders, then you don't need to set up a
source system.
2. Optional. Import customers.
52
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
You can use this import process to import a batch from the interface tables into Trading Community
Architecture. The batch you import must include the customers your orders will reference. For details, see
topics Dening the Import Process for Customers and Consumers: Points to Consider, and Dening the Import
Process for Customers and Consumers: Worked Example.
Get Customer Details when Not Integrating or Importing
If you don't integrate with a source system or fulllment system, or if you don't import customers, then create
customers in one of these ways.
• Create them in Oracle Fusion Financials.
◦ In the Setup and Maintenance work area, go to the task.
• Oering: Financials
• Functional Area: Customers
• Task: Create Customer
For details, click the help icon on the Create Organization Customer page. Also, see the user book for
Oracle Trading Community Architecture.
• Synchronize them in Trading Community Architecture. If the customer and customer entities that Order
Management needs to fulll the sales order don't exist, then Trading Community Architecture synchronizes the
customer master with customer details from the sales order. Important details include sold-to party, ship-to
party, and bill-to account.
Task Description
• Display Currency
• Currency Conversion Type
53
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Task Description
For a complete list of tasks, see the Roadmap to Seing Up Order-to-Cash topic.
3. Deploy the required processing constraints.
Aribute Value
The validation rule sets in this constraint prevent Order Management from aempting to update the
validation for each shipping request when certain conditions are true.
Ordered Quantity Isn't Zero The ordered quantity on the fulllment line isn't zero. If its zero, then the line is in
Canceled status and we don't want to process it.
Update Shipping Request Data validation doesn't fail for the Update Shipping fulllment service because the ow
Validation doesn't provide values for all the required aributes.
Fulllment Organization ID Is Null The Warehouse aribute on the fulllment line contains a value. Order Management
uses the Warehouse aribute to populate the fulllment organization ID.
Fulll Line Request Dates are Null The requested ship date or the requested arrival date on the fulllment line contains
a value. We can't calculate shipping dates if we don't have a value in one of these
aributes.
Scheduled Ship Date on the The scheduled ship date on the fulllment line contains a value. We can't calculate
Fulllment Line Is Empty shipping dates if we don't have a value in this aribute.
54
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
◦ Enable or add other constraints to meet your needs, as necessary. For details, see the Manage Processing
Constraints topic.
◦ Click Generate Packages.
For details, see the chapters that describe controlling order processing and seing up orchestration processes
in the Implementing Order Management book.
5. Set up pricing.
If you use Order Management to create sales orders, and don't import them or integrate to a source system
that contains price details, then you must set up pricing. Order Management requires details about pricing
entities, such as the pricing strategy, to determine price for each item that you add to the sales order.
You can't submit a sales order in Order Management without the price. For details about how to set up pricing,
see the Oracle SCM Cloud, Administering Pricing book.
◦ Use a tool of your choice, such as SOAP (Simple Object Access Protocol), to simulate sending a test order.
Note the order number.
◦ In the Order Management work area, use the order number to search for the order.
◦ Conrm that Order Management received the order and is processing it.
Feature Description
Drop Ship The set up for drop ship depends on your business requirements. For details, see the Drop
Ship section in the Implementing Order Management book.
55
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Feature Description
Internal Material Transfer Internal Material Transfers comes predened as available. The predened job roles include this
feature. No setup is required except that an option in Supply Chain Orchestration determines
whether inventory routes the transfer order to Order Management. For details, see Supply
Chain Orchestration: Overview
Back-to-Back Shipping
Back-to-back shipping can create supply only after Order Management successfully submits
the sales order to order fulllment. Back-to-back shipping can then create supply in these
ways.
The fulllment warehouse receives the supply, then back-to-back shipping ships it to the
customer.
Congure to Order
Use Congure to Order to eciently fulll each congured item. Here are the order
management parameters you can set to control the congurator.
You can also use Congure to Order to set up a kit. A kit is a congured item that includes one
or more congure options, but the Order Management work area doesn't allow the Order Entry
Specialist to modify the congure options of a kit.
• You set the subtype for a kit to KIT-SMC when you set up the conguration model.
• Order Management sends the shippable lines of a kit as a shipment set to Global Order
Promising.
• The Order Management work area doesn't display values for On Hand and Item
Availability for kits because Global Order Promising doesn't support the quick
availability check feature for kits.
• Import
• Web Services
• Upstream Source Systems
56
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Feature Description
Integrate Order Management with Use a web service to allow Order Management to communicate with a fulllment system. Use
Downstream Fulllment Systems a predened web service or create a new one. For details, see the Downstream Fulllment
Systems section of the Implementing Order Management book.
Related Topics
• How the Order Orchestration and Order Promising Processes Use the Collected Planning Data
• Overview of Security Console
• How Units of Measure, Unit of Measure Classes, and Base Units of Measure Relate to Each Other
Details
Overview of Implementing Order Management Cloud
Get started with your Order Management Cloud implementation. Sign in with the Application Implementation
Consultant role (ORA_ASM_APPLICATION_IMPLEMENTATION_CONSULTANT_JOB), then opt into the oerings that
meet your business requirements.
For details about how to manage the opt-in and set up oerings, see the Oracle Applications Cloud Using Functional
Setup Manager book on My Oracle Support.
Orders Do a wide variety of set up tasks for Order Management, from managing how you import your
source orders, transforming source orders, integration, application behavior, business rules,
orchestration, and so on.
Pricing Set up pricing for Order Management. For example, dene pricing parameters, totals,
elements, bases, messages, matrix types, lookups, and so on.
To get the complete list of functional areas and features, use the Associated Features report when you plan your
implementation.
Upgrade or Update
To upgrade or update your release, go to Performing Your Quarterly Update (Doc ID 2337485.1) on My Oracle Support
to get important details.
Related Topics
• Plan Your Implementation
57
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Maintain Common Reference Objects Support common functionality, such as Overview of Common Reference Objects
data security, reference data sets, and topic
other preferences. Leave this feature
enabled for most deployments.
Governance, Risk, and Compliance Manage governance, risk, and compliance Governance, Risk, and Compliance
across processes and systems. Management at hp://www. oracle. com/
us/ solutions/ corporate-governance/
018760htm
Local Installation of Help Write your own help. Dene Help Conguration section in
Implementing Common Features for SCM.
Transformation Rules Transform source orders that you create Transformation Rules topic
in Order Management or that you import
from a source system to optimize order
fulllment.
For most implementations, leave this
feature enabled.
Order Holds Allow the Order Entry Specialist to place a Manage Hold Codes topic
hold on a sales order.
For most implementations, leave this
feature enabled.
Drop Ship Leave this feature disabled unless you Implementing Drop Ship section in
implement drop ship. Implementing Order Management book
Enterprise Structures Guided Flow Leave this feature disabled unless you Dene Enterprise Structures chapter in
implement enterprise structures. Implementing Common Features for SCM
Application Toolkit Component Leave this feature disabled unless you Dene Application Toolkit Conguration
Maintenance use Application Toolkit to modify various chapter in Implementing Common
components, such as application help, Features for SCM
reports and analytics, the Watchlist, and so
on.
Click to Dial Use Click to Dial to place a call to a contact Not applicable
from a hyperlink on the phone number or
phone icon.
58
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Enterprise Scheduler Job Denitions and Leave disabled unless you run scheduled Dene Custom Enterprise Scheduler
Job Sets processes according to Oracle Enterprise Jobs chapter in Implementing Common
Scheduler Services. Features for SCM
Enable Custom Payloads for Downstream Use view objects to integrate with Integrate Order Management with Other
Integration systems that reside downstream of Order Oracle Applications topic
Management.
Specify Business Unit for Selling Prot Set the selling prot center on a sales Set Business Units for Selling Prot
Center for Goods and Services Tax order line that's dierent from the Centers topic
business unit on the order header.
Enable Coverage and Subscription Include coverage items and subscription Set Up Coverage for Sales Orders topic
items in sales orders.
Update Selected Lines in Sales Order Allow the Order Entry Specialist to select Update More Than One Order Line topic
one or more order lines in a sales order,
specify the aributes and values to
update, then update all selected lines.
You must make sure the role that your
users use, such as Order Entry Specialist,
contains the privilege Update Selected
Lines on Sales Orders.
Return Items or Cancel Services Without a Allow the Order Entry Specialist to return Allow Users to Return Items Without
Reference Order an item without specifying the sales order Original Sales Orders topic
that originally ordered the item.
Pricing Use the set up in the Pricing Administering Pricing book on Oracle Help
Administration work area to price items Center
in Order Management. Leave this feature
enabled unless you plan to use some
other way to price your sales orders.
Order Management Business Intelligence Enable analytic reporting in the Order Use Reports and Analytics with Order
Analytics Management work area. Leave this Management topic
feature enabled.
Related Topics
• Plan Your Implementation
59
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Name Values
FSCMServices Host and port for ADF services (Oracle Application Development Framework).
◦ In the SCM-SOA row, examine the values for External Server Host and External Server Port.
You collect data into the Global Order Promising repository. The repository also stores setups that you make in the
Global Order Promising work area, such as rules for sourcing, available-to-promise, and supply allocation. Promising
and sourcing work together to determine what to deliver to your customer within the time frame that the sales order
requests.
You must collect data several times during setup. Collect each time you.
• Create or modify an item.
• Modify the item, item structure, catalog, or work denition.
• Set up a new item in the Product Information Management work area.
For details, see the Overview of Data Collections for Supply Chain Planning topic.
60
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Try it.
Don't use the Plan Inputs task that's available in the Setup and Maintenance work area. Use the Plan Inputs
work area instead.
2. In the Plan Inputs work area, click Tasks > Collect Planning Data.
3. In the Collect Planning Data dialog, set the value.
Templates are available, such as Static Data for Supply Planning. For this set up, do the steps instead so you
can more clearly visualize the ow.
Aribute Value
4. On the Reference Data tab, move entities from the Supply Entities list to the Selected Entities list.
Aribute Value
Work Denitions You must include this entity for a make ow. If you don't, then Global Order Promising won't
provide a recommendation for the make ow, and Supply Orchestration won't create a
supply order.
Order Management still processes the order but fulllment won't benet from the
recommendation and supply order.
61
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
◦ On the Manage Planning Source Systems page, in the Source Systems list, locate your Oracle system,
then set values.
Aribute Value
Version Fusion
◦ Set values for each system that your set up must integrate, such as an order capture system or fulllment
system.
Aribute Value
Version Others
For details, see the Manage Planning Source Systems for Data Collections topic.
2. Cross-reference data for your currencies and units of measure. Use the Manage Planning Source Systems
page.
For details, see the How You Collect Dierent Data Types for Supply Chain Planning topic.
3. Collect organization parameters from your source system.
To identify your organization, the collected data concatenates the source system to the organization ID. Other
entities, such as Sourcing Rules, also use this identication.
4. Collect units of measure, currencies, and currency conversions from your order capture system.
◦ Order Management validates the units measures and currencies against data that it already collected
from your order capture system when it receives source orders from this system.
◦ You must collect calendars from your fulllment system so Order Management can use them during
scheduling. A calendar species when a facility, such as a warehouse, is open or closed.
◦ To collect data, you load it into staging tables, then use the Perform Data Load from Staging Tables
scheduled process.
◦ Use the review pages to verify the data you collect.
◦ A pilot set up expects your test orders to use the same values for the unit of measure, currency, and
currency conversion you collect into the data repository.
62
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
During a full set up, if more than one order capture system uses dierent values for these entities, then
you must do more set up. For example, if one order capture system uses Ea for each item, and if another
order capture system uses Each for each item, then you must set up cross-references for these order
capture systems.
◦ Your set up can collect reference data from more than one system. However, a reference data entity is a
global object, so Order Management and Global Order Promising use the most recent data that your set
up collects.
So, identify the source system that contains the master data list, then collect data from the source
system after you collect data from all other source systems. For example, if source system x contains the
master list of currencies, then collect currencies from source system y so Order Management can cross-
reference currencies to system y, then collect currencies from system x.
◦ If Order Promising must consider the transit time that occurs during shipping between the warehouse
and a destination, then you must collect shipping methods. If you don't, then Order Management uses a
transit time of zero days.
Global Order Promising makes availability-to-promise and sourcing decisions when your user creates a sales order at
run time. It allows the user to explore dierent scenarios to increase margin, improve delivery, and so on. Promising
needs the most up-to-date supply and demand data to make these decisions.
Its important to periodically collect data for each new item your users add when they create a sales order because
collection gets the on-hand quantity for return orders and canceled order. The quantity aects planning.
Try it.
1. Click Supply Planning Data, then move entities from the Supply Entities list to the Selected Entities list.
Aribute Value
On Hand Promising uses this entity to get the inventory that's in stock for the item.
Purchase Orders and Requisitions Add these entities so Global Order Promising can get availability across the entire supply
chain.
Transfer Orders
Work Order Supplies
2. Click Submit.
3. Refresh the server.
For details, see the Refreshing the Global Order Promising Engine: Explained topic.
Try it.
1. Go to the Scheduled Processes work area, then click Action > Schedule New Process.
63
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
3. Add a check mark to the parameters you must update, then click Submit.
Here are the parameters you refresh for most set ups.
◦ On Hand. You need the on-hand inventory to replenish each item in an inventory transaction or to
process a return order.
◦ ATP Rules.
◦ Sourcing.
◦ Items.
◦ Organizations. Include only when you create a new inventory organization.
◦ Resources. Include only when you create a new resource.
4. Click Actions > Refresh, then verify the status is Succeeded. Repeat, as necessary.
Related Topics
• Refresh the Global Order Promising Server
• Overview of Data Collections for Supply Chain Planning
• Manage Planning Source Systems for Data Collections
• How You Collect Dierent Data Types for Supply Chain Planning
64
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
1. Your customer places a sales order that includes the item and requested delivery date.
2. You create an available-to-promise rule, which is a set of instructions you specify that tells Order Promising
how to analyze supply that's available in your supply chain so it can promise the item and meet the delivery
date. You specify the supply type to consider, such as supply that's on hand or in transit, supply that various
documents create, such as purchase orders, requisitions, or work orders.
65
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
3. You create a sourcing rule that species the supply sources to consider when promising, such as whether to
consider make, buy, or transfer sources. You can also specify the optimal location that can supply the demand.
Summary of the Setup
1. Create your sourcing rule.
2. Assign your sourcing rule.
3. Create your available-to-promise rule.
4. Manage the administrator prole.
5. Refresh the server.
This topic includes example values. You might use dierent values, depending on your business requirements.
Aribute Value
Set to.
Global when you must specify where to fulll and ship the sales orders. You don't
◦ specify an organization to create supply. Instead, you specify a transfer or buy source.
Local when you must specify how to create supply and the organization that creates
◦ it.
You create a global sourcing rule that species the warehouse that Order Management uses
when it fullls the sales order. For details, see the Overview of Sourcing Rules and Bills of
Distribution topic.
3. In the Sourcing Rule Eective Dates area, click Actions > Add Row, then set the start date.
4. In the Sources area, Click Actions > Add Row, then set values.
Aribute Value
66
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
Rank 1
If you add more than one source, then you can specify the rank order to use for sources.
For example, if you add a row for Vision Manufacturing and set Rank to 1, add another row
for Vision Distribution and set Rank to 2, then Promising will use Vision Manufacturing to
promise the order rst. If Promising determines that Vision Manufacturing can't fulll the
order, then Promising will consider Vision Distribution.
Shipping Method Global Order Promising disables Shipping Method for a local rule. You can't edit it. Leave it
empty for a global rule.
If you set a value for a global rule, you might get an error.
Don't set shipping method in this context because it species where supply originates, not
how to ship it to the customer.
Exclude for Options and Option Exclude options and option classes when promising a sales order. Exclude them for a Make
Classes At or Buy From sourcing type.
For example, exclude an item from planning when you know your source can't make it
because it includes toxic chemicals that the source isn't authorized to handle, or your
company limits production to only one specic site.
For another example, assume you know Seale Manufacturing created a large oversupply
of the CTO_474100 screen option class from a prior marketing campaign. You already
know supply is available. To improve planning performance, you decide to exclude it from
planning.
Aribute Value
67
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
Catalog GOP_Catalog
Use the same catalog that you use for your item in Production Information Management and
in your available-to-promise rule.
4. In the Sourcing Assignments area, click Actions > Add Row, then set values.
Aribute Value
Assignment Level
Item
Note.
◦ Promising fullls your sales order only from the source that you assign to the
assignment set.
◦ Assign at least one sourcing rule at the global level so Global Order Promising can
use it to identify a ship-from location. If you don't, then your users must specify the
warehouse in every sales order.
Item AS54888
Sourcing Rule or Bill of Distribution Sourcing Rule for the AS54888 Item
Aribute Value
Description Rule that species how to determine availability for the AS54888 item.
3. Click ATP Rule Assignment, click Actions > Add Row, set values, then click Save.
68
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
Aribute Value
3. In the search results, click that row that has MSP_DEFAULT_ASSIGNMENT_SET in the Prole Option Code
column.
4. In the Prole Values area, click Actions > New, set values, then click Save and Close.
Aribute Value
Prole Value Pick the name of the assignment set that you created earlier in this topic. In this example,
pick Assignment Set for Sourcing Rules.
Related Topics
• How the Order Orchestration and Order Promising Processes Use the Collected Planning Data
• Overview of Security Console
• How Order Promising Rules Work Together
• Create Sourcing Rules for Congured Items
69
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Parameter Description
Activate Credit Check on Order Specify whether to run credit check when the Order Entry Specialist submits the sales order.
Submit
For details, see the Manage Credit Check in Order Management topic.
For example.
1. The Order Entry Specialist adds a congured item to a sales order, then saves the sales
order as a draft.
2. A conguration manager modies the conguration model and conguration rules for
the congured item in such a way that it aects the conguration that the Order Entry
Specialist added.
3. The Order Entry Specialist returns to the draft several days later, then submits the sales
order.
In this example, if you set Allow Changes Through Congurator Validation to.
• Yes. The congurator uses the modied conguration model and conguration rules to
update the conguration that the Order Entry Specialist specied. It allows the submit to
proceed. It doesn't report these modications to the Order Entry Specialist.
This seing is useful when your business process doesn't require the Order Entry
Specialist to understand and agree to modications that the congurator makes.
• No. The congurator doesn't modify the conguration that the Order Entry Specialist
specied. Instead, it doesn't allow the submit to proceed, and displays a validation error
when the Order Entry Specialist aempts to submit or validate the sales order.
This seing is useful when your business process requires that the Order Entry
Specialist understand and agree to modications that the congurator makes.
Note.
• This parameter doesn't apply to a source order that includes a congured item. For
details about importing source orders, see the Use Files to Import Orders into Order
Management topic.
• This parameter aects all business units.
70
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Parameter Description
For details about the congurator, see the Oracle SCM Cloud, Congurator Modeling book on
My Oracle Support.
• If only one sales agreement exists for the customer and business unit, then Order
Management sets the agreement on the order header to this one sales agreement.
• If more than one agreement exists, then Order Management leaves the agreement on
the order header empty.
• If the agreement on the order header is empty, and if only one sales agreement exists
for the item on the order line, then Order Management sets order line aributes Sales
Agreement, Sales Agreement Line, and Sales Agreement to the order line agreement.
Otherwise, it leaves these order line aributes empty.
If you set this parameter to No, then Order Management doesn't set any default values. It
leaves them all empty.
Order Management constrains the customer, business unit, and currency on the order header.
It also constrains the item on the order line.
Business Unit for Selling Prot Center See the Set Business Units for Selling Prot Centers topic.
Compare Change Order to Fulllment See the section at the end of this topic.
Values
Set a value.
• Ordered Date. Use the options that exist according to the Ordered Date aribute that
displays on the Create Order page.
• Conguration Date. Use the options that exist when you create the model.
• Current Date. Use the options that exist as of today.
• Requested Date. Use the options that exist according to the requested date.
If you don't set a value, then Order Management uses Current Date.
71
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Parameter Description
Conguration Eective Date for Use this parameter with or without seing Conguration Eective Date. For details, see the
Exploding Included Items Control Explosion Dates for Conguration Models topic.
• Delivery Date. Set the service start date to the delivery date of the covered item.
• Shipment Date. Set the service start date to the shipment date of the covered item.
For details, see the Set Up Coverage for Sales Orders topic.
• Save Order in Draft Status. Save the sales order in Draft status and don't proceed to
fulllment.
• Submit the Order with Hold on Lines That Failed Credit Check. Save the sales order
in Submied status, place a hold on each order line that fails credit check, then proceed
with fulllment for order lines that aren't on hold.
For details, see the Manage Credit Check in Order Management topic.
Set a value.
• Single Customer. Allow the Order Entry Specialist to select only the bill-to customer
and ship-to customer that's the same as the sold-to customer.
For example, if the Order Entry Specialist creates a sales order for Company x, then
Order Management sets Ship-to Customer and Bill-to Customer to Company x. The
Order Entry Specialist can't modify these values.
• All Customers. Allow the Order Entry Specialist to select any bill-to customer or ship-to
address, regardless of sold-to customer.
For example, if the Order Entry Specialist creates a sales order for Company x, then
Order Management sets Bill-to Customer and Ship-to Customer to Company x, by
default, and allows the Order Entry Specialist to search and select any bill-to customer,
or any ship-to customer and address.
Enable Orchestration Process Specify whether to do orchestration process planning and to calculate jeopardy on each sales
Planning and Calculate Jeopardy order during order processing.
For details, see the Orchestration Processes topic.
Set a value.
72
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Parameter Description
Note.
• In some situations, you might need to prevent the Order Entry Specialist from using
a Ship-to Address when Usage for the address is Bill-to. For example, if you use
Oracle Fusion Receivables, then you must set Filter Ship-To Addresses to Yes because
Receivables comes predened to ship only to a ship-to address.
In another example, it might not be appropriate for a bill-to location in your deployment,
such as an accounting center, to receive shipment.
• If you import a source order, and if the Filter Ship-To Addresses parameter is Yes, and
if the value of the Site Usage aribute for the ship-to address in Trading Community
Architecture isn't Ship-to, then the import will fail.
• To specify the value that the Usage aribute displays, navigate to Trading Community
Architecture, then set the Site Usage aribute to one of these values.
◦ Ship-to
◦ Bill-to
From Address for Email Messages Specify the From email address that the Universal Messaging Service uses when it sends an
email from the order document or from an automatic notication.
The From address comes predened as no-reply@orderreport. com. You can modify this value
to use an address in the domain that your company uses. You must use a valid email address
format. For example, something@somethingelse. xxx.
For details, see the Email Formats in Order Management topic.
Halt Congurator Validation on First Error aects only order entry. It doesn't aect order
import.
73
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Parameter Description
For example, assume you create a record in the Item Validation Organization list, you set the
Business Unit aribute for this record to Vision Operations, and the Organization aribute
to Denver Manufacturing. Order Management will display only the items that it associates
with Denver Manufacturing when the Order Entry Specialist creates a sales order for Vision
Operations. It displays these items when the Order Entry Specialist searches for items on the
Order Lines tab of the Create Order page.
• You must specify an item validation organization for each business unit. If you don't,
then Order Management disables search for the item in each sales order that references
a business unit that you don't specify.
As an alternative, if you use the same master organization for every business unit, then
you can specify this organization in the Item Validation Organization parameter, then
set the Business Unit aribute for this parameter to All Business Units.
• You can set Item Validation Organization only for business units that Order
Management associates with your sign in responsibility. If it associates your sign in
responsibility with only one business unit, then it uses this business unit as the item
validation organization.
• The Product Information Management work area associates inventory organizations
with business units. If you don't set Item Validation Organization, and if Product
Information Management associates more than one inventory organization with the
same business unit, then Order Management does one of these actions.
Notify Frequency Specify an integer that represents the number of hours to wait before consolidating, and then
sending a notication.
Notify Frequency comes predened with a value of 1. You can set it to any value that's
greater than or equal to 0 (zero). If you set it to 0, then Order Management won't consolidate
notications, and will send each notication when the event that it references occurs.
For details, see the Send Notications from Order Management to External Systems topic.
Number of Processes for Order Set the maximum number of scheduled processes that can run concurrently for one set of
Import source orders. Adjust this value as necessary depending on how it impacts performance.
For details, see the Import Orders into Order Management topic.
Number of Times to Retry Pause Specify the number of times to retry a pause task that pauses until time elapses. Adjust this
value according to performance.
74
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Parameter Description
For details, see the Pause Orchestration Processes Until Time Elapses topic.
Preparer for Procurement Specify an Order Management user who the buyer can contact to help resolve a problem that
occurs with a fulllment line that involves a drop ship supplier. The buyer is a procurement
application user. Order Management sends these details to purchasing.
If you don't specify Preparer for Procurement, and if an error occurs, then the procurement
system will reply with an error that the preparer is missing.
You can dene a preparer for each selling business unit. You can also dene a preparer as
the default value for all business units. Order Management will use this default value only for
business units where you don't dene a preparer.
For details, see the Drop Ship topic.
Send Discount Details to Billing Specify whether to send the list price and discounts, or only the net price, to your downstream
Systems billing system.
For details about this parameter, see the How Managing Approval Rules for Sales Orders
Works topic.
75
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
• Make sure your import data includes values for aributes the user didn't revise. You must get these values from
the orchestration process that's currently processing the order.
Use the getOrderDetails operation of web service Order Information Service or use Oracle Transactional
Business Intelligence (OTBI) to get aribute values from the sales order that Order Management is currently
processing. Create a new payload for the order revision, change aribute values in the payload to reect the
revision, then send the payload to Order Management.
Set the value for this parameter only one time. For example, if you set it to Yes during set up, then don't set it to No
after you deploy your set up.
Example
Step 1. Your user creates a sales order, doesn't set a value for the Warehouse aribute, submits the order, and Order
Promising schedules it.
Step 2. Your user creates an order revision, sets the Warehouse to M1, then submits the order.
37564 1 10 M1
• Compares the payload in step 3 to the payload in step 2 to identify aributes that changed.
• The warehouse in step 2 is M1 buts its empty in step 3, so Order Management detects a change on the order
line.
• Order Management updates your fulllment system to process the change.
Note.
• If the line already shipped, then Order Management rejects the change.
• If your user makes another revision before step 3, then you can use a web service or order import to process it.
76
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Related Topics
• What You Can Do in Product Master Data Management
• Inventory Organizations
• Administer Email Format in Order Management
• Overview of Sending Notications from Order Management to Other Systems
• Overview of Seing Up Trade Compliance
• Set the default value that the Order Management work area displays for each customer aribute and address
aribute.
• Use an address from a related customer to set the default value for ship-to address.
• Use data from the customer master to set the default value for preferences on each sales order.
Overview
Order Management gets customer details from Oracle Trading Community Architecture (TCA). Trading Community
Architecture is a data model you can use to manage details about customers who belong to your community, such as
organizations, locations, and the relationships that dene your community. For details, see Oracle Trading Community
Architecture User Guide on My Oracle Support.
Party Object
77
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
The party object in Trading Community Architecture contains customer data. Order Management uses it to get the
customer data it displays.
Note.
Object Description
1. Party. A trading partner. Each party can reference one or more party usages.
2. Party Usage. How you use the party, such as customer, supplier, prospect, and so on. Order Management
uses only the customer party usage. For example, searches and lists of values in the Order
Management work area display only customer party usage.
78
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Object Description
3. Party Site. An address that the party uses. Each party can reference one or more party sites.
4. Party Site Use. How the party uses the address. For example, ship-to, bill-to, and so on. Each party site can
reference one or more party site usages.
5. Location. Physical address where the party site resides. Each party site can reference only one location.
6. Party Relationship. Each party can reference one or more other parties. You can use the party relationship to
establish a relationship between two dierent parties.
Account Object
Order Management uses the customer account object from Trading Community Architecture.
79
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
Object Description
1. Customer Account. The customer account is a child of the party. It includes nancial details that Order
Management uses to communicate with a nancial application. Each party can reference
one or more customer accounts, however each party typically references only one customer
account.
80
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Object Description
2. Account Site. Set of party addresses that the account uses. Each customer account can reference one or
more account sites.
3. Account Site Use. How the account site uses the address. Each account site can reference one or more account
site usages.
4. Account Contact. Person in the account. Each account can reference one or more contacts. Account contact is a
subset of party contacts.
If the user sets the value for the Customer aribute on the order header, then Order Management automatically sets the
value for other aributes to the data it gets from the party and account, such as contact, ship-to customer, address, bill-
to customer, account, payment terms, and so on.
81
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
• In Oracle Fusion, the party object contains data for each customer, and the account object contains data for the
bill-to account and bill-to address.
• In Oracle eBusiness Suite, the account object contains data for each customer. For example, the account
contains the ship-to address, sold-to address, and bill-to address.
◦ Oering: Financials
◦ Functional Area: Customers
◦ Task: Manage Customers
4. On the Manage Customers page, search for a customer or create a new one.
If you create a new account site, then the application also creates a party site that includes objects from the
account site. This behavior helps to maintain the relationship between the party and the account.
82
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
• Don't delete a contact or address or set the end date for a contact or address. If you delete a contact or address,
then sales orders that already exist might not display the correct data.
• Each account is a child of a party. If you add a contact, account site, or account site usage in the account, then
Manage Customers adds objects in the party that correspond to the contact, account site, or account site usage
that you added.
• If you delete or end date an object in a child contact, account site, or account site usage, then Manage
Customers doesn't update the corresponding object in the parent party.
For example, if you delete the ship-to address of a contact, then Manage Customers doesn't delete the
corresponding ship-to address of the party. Manage Customers uses this functionality to maintain the
83
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
relationship between party and customer account, which is one to many. Some other account might reference
the ship-to address of the party.
You can't use the Manage Customers page to manage the parent party. Instead, do these steps.
84
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
• Modify the value in the Purpose aribute to control site usage. For example, Order Management uses Ship-to
purpose to lter the list of values that it displays for ship-to address.
• Add a check mark to the Primary aribute to specify the address that Order Management displays as the
default value.
• You can't use the Manage Organization page to manage accounts.
To get details about how to manage an organization, go to Oracle Help Center at hps://docs.oracle.com/en/cloud/
saas/index.html. Under Customer Experience, click Customer Data Management > Books, then nd Implementing
Customer Data Management or Using Customer Data Management.
To control the values that the user can choose, set the Customer Relationship Type order management parameter.
85
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Value Description
All Customers Allow the user to choose any customer for Bill-to Customer and Ship-to Customer.
Single Customer Allow the user to choose only the same value that the Customer aribute references for Bill-to
Customer and Ship-to Customer.
Business Unit Specify the business unit where this behavior applies. Use All Business Units to apply behavior
to all sales orders.
86
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
• Order Management applies the behavior you specify to sales orders in the Order Management work area and to
sales orders that you import.
• Order Management doesn't use relationships that you set up in Trading Community Architecture. If you must
create a relationship, then set Customer Relationship Type to All Customers, and write an order management
extension that enforces ship-to or bill-to customer for each party that Trading Community Architecture denes.
For details, see the Dene Extensions That Modify Order Management topic.
• For other relevant details, see the Manage Order Management Parameters topic.
87
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Control Addresses
Set Default Value for Ship-to Address
If the user sets the value for Customer on the order header, then Order Management sets the value for Ship-to Address
to the party site of the ship-to customer, by default.
Use the Organization Details page to set the default value for Ship-to Address.
88
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
The Organization Details page restricts the sites you can set as the primary according to the party object hierarchy.
Instead, you can use the OrganizationService web service to specify the ship-to address. For example.
https://server:port/crmService/FoundationPartiesOrganizationService
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://
xmlns.oracle.com/apps/cdm/foundation/parties/organizationService/applicationModule/types/"
xmlns:org="http://xmlns.oracle.com/apps/cdm/foundation/parties/organizationService/" xmlns:par="http://
89
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
xmlns.oracle.com/apps/cdm/foundation/parties/partyService/" xmlns:sour="http://xmlns.oracle.com/apps/cdm/
foundation/parties/flex/sourceSystemRef/" xmlns:con="http://xmlns.oracle.com/apps/cdm/foundation/parties/
contactPointService/" xmlns:con1="http://xmlns.oracle.com/apps/cdm/foundation/parties/flex/contactPoint/"
xmlns:org1="http://xmlns.oracle.com/apps/cdm/foundation/parties/flex/organization/" xmlns:par1="http://
xmlns.oracle.com/apps/cdm/foundation/parties/flex/partySite/" xmlns:rel="http://xmlns.oracle.com/apps/cdm/
foundation/parties/relationshipService/" xmlns:org2="http://xmlns.oracle.com/apps/cdm/foundation/parties/
flex/orgContact/" xmlns:rel1="http://xmlns.oracle.com/apps/cdm/foundation/parties/flex/relationship/">
<soapenv:Header/>
<soapenv:Body>
<typ:mergeOrganization>
<typ:organizationParty>
<org:PartyId>300100178657728</org:PartyId>
<org:PartySite>
<par:PartySiteId>300100178657747</par:PartySiteId>
<par:PartySiteUse>
<par:PartySiteUseId>300100178657752</par:PartySiteUseId>
<par:PrimaryPerType>Y</par:PrimaryPerType>
</par:PartySiteUse>
</org:PartySite>
</typ:organizationParty>
</typ:mergeOrganization>
</soapenv:Body>
</soapenv:Envelope>
where
Code Description
server:port Address to the server that hosts your Oracle Fusion deployment.
PartySiteId Value that uniquely identies the party site, such as 300100178657747.
PartySiteUseId Value that uniquely identies the party site use, such as 300100178657752. You specify the Id
of the ship-to site use.
You replace the values for PartyId, PartySiteId, and PartySiteUseId with values that identify the party, the address, and
the site use Id that identies the address to set as the default ship-to address on each sales order for the party.
To set the primary ship to site, use ndOrganization to get the identiers for mergeOrganization.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body xmlns:ns1="http://xmlns.oracle.com/apps/cdm/foundation/parties/organizationService/
applicationModule/types/">
<ns1:findOrganization>
<ns1:findCriteria xmlns:ns2="http://xmlns.oracle.com/adf/svc/types/">
<ns2:fetchStart>0</ns2:fetchStart>
<ns2:fetchSize>-1</ns2:fetchSize>
<ns2:filter>
<ns2:conjunction>And</ns2:conjunction>
<ns2:group>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare>false</ns2:upperCaseCompare>
90
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare></ns2:upperCaseCompare>
<ns2:attribute>PartyNumber</ns2:attribute>
<ns2:operator>=</ns2:operator>
<ns2:value>1001</ns2:value>
</ns2:item>
</ns2:group>
</ns2:filter>
<ns2:excludeAttribute>false</ns2:excludeAttribute>
</ns1:findCriteria>
<ns1:findControl xmlns:ns3="http://xmlns.oracle.com/adf/svc/types/">
<ns3:retrieveAllTranslations>false</ns3:retrieveAllTranslations>
</ns1:findControl>
</ns1:findOrganization>
</soap:Body>
</soap:Envelope>
For details about how to use web services with Trading Community Architecture, see SOAP Web Services for Oracle
Sales Cloud on My Oracle Support at hps://docs.oracle.com/en/cloud/saas/sales/r13-update17d/oesws/toc.htm.
On the Organization Details page, set Purpose to Ship-to for each address you must display in the Ship-to Address drop
down in Order Management.
91
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Order Management returns all party sites in Ship-to Address regardless of usage when the user clicks Search, by
default. For example, it returns ship-to usages and bill-to usages.
If you use Oracle Fusion Financials, then set order management parameter Filter Ship-to Address According to Ship-
to Usage to Yes. This seing makes sure your users select only ship-to sites to avoid an error from occurring when the
import automatically invoices the transaction.
92
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Your users can use advanced search in the Search and Select dialog to search for ship-to addresses according to the
name of the ship-to party site. This dialog displays the name you specify when you set up your ship-to party site. This
feature is useful when your deployment uses a large set of addresses. It allows your users to search when they don't
know the mailing address of the site.
For example, assume you support a retailer named Computer Service and Rentals who sells at 200 separate physical
locations. You can allow your users to search on the text Computer Service to return all locations that begin with the text
Computer Service.
93
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Order Management can set the Bill-to Address to the account site that the bill-to account references. You can edit the
site to control this behavior.
94
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
If . . . . . . Then
Only one site species bill-to usage. Order Management defaults the address to this one site.
More than one site species bill-to Use the Address Purposes area to set the Primary. Order Management will use the primary as
usage. the default value for Bill-to Address.
95
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Order Management includes each account site that uses bill-to usage in the drop down for Bill-to Address, by default.
Bill-to Address lters account sites according to the business unit that the sales order references. The user can't search
this aribute. The user can only choose values from the list.
To control the addresses that display, set the Purpose on the account site to bill-to usage when you set up your account.
96
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Control Contacts
Set Default Value for Contact on Order Header
97
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
The user can choose a contact from the sold-to customer or the ship-to site in aribute Contact on the order header, by
default.
If the user clicks Search, then the Contact aribute displays all contacts that reference a sold-to or ship-to contact.
Note that Contact on the order header displays party contacts. It doesn't display account contacts.
If you set the primary contact on the account site, then Order Management populates the Contact aribute on the order
header to this primary when the user sets the Customer aribute on the order header.
1. On the Manage Customers page, search for the party you must modify.
2. In the Sites area, click the Site Number for an account site.
3. On the Edit Site page, click Communication.
4. In the Account Site Contacts area, click Edit Contacts.
98
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
5. On the Edit Contacts page, click Actions > Set Primary Contact.
If you specify the primary account during set up, then Order Management populates the Contact aribute in the Billing
and Payment Details area to the primary contact for this account when the user sets Customer on the order header.
If the user clicks Search, then the drop down for Contact displays each contact that references a bill-to address.
Note that Contact in the Billing and Payment Details area displays account contacts. It doesn't display party contacts.
99
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
The payment term is a nancial aribute on the account and account site. Order Management populates the Payment
Term aribute when the user sets one of the following aributes in the Billing and Payment Details area.
Aribute Description
From Bill-to Address Get and display the payment term that you dene on the bill-to address for the bill-to site
during set up.
100
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Description
From Bill-to Contact Get and display the payment term that you dene on the bill-to account during set up.
Note.
• If you don't specify the payment term on the bill-to address or the bill-to account in Trading Community
Architecture, then Order Management doesn't set any default value for the payment term, and the user must
manually set it.
• The user can click Payment Terms to view all values that you collect during data collection, including values
from Oracle Fusion, Oracle Advanced Supply Chain Planning, your channel systems, and so on. For details
about data collection, see the How Order-to-Cash with Order Capture Systems Works topic.
Specify to use the payment term from the account site as the default value.
1. On the Manage Customers page, search for the party you must modify.
2. In the Sites area, click the Site Number for an account site.
3. On the Edit Site page, click Prole History.
4. In the Prole History area, click Actions > Correct Record.
5. On the Site Prole tab, in the Terms area, choose a value for the Payment Terms aribute.
6. Click Save and Close.
101
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
For example.
If you use Oracle Fusion Financials, then Payment Term must contain a value. To meet this requirement, you can enable
the Fulllment Line Payment Term Update predened constraint. If you enable it, and if Payment Term is empty, then
the constraint prevents the Submit action.
This requirement helps to avoid problems when Financials invoices the fulllment line. This constraint comes
predened as disabled. You can enable it.
102
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Set values on the Managing Processing Constraints page. For details, see the Manage Processing Constraints topic.
Aribute Description
103
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Description
Constraint Entity Prevent Order Management from performing the operation that Constrained Operation
species on Order Fulllment Line.
Validation Rule Set Species to use the Fulllment Line Payment Term Is Null rule set to determine whether the
Payment Term aribute on the fulllment line contains a value.
• Dene a pretransformation rule. For example, set the default value for the customer contact according to
business unit and customer.
• Order Management runs pretransformation rules each time the user modies the Customer aribute. This
conguration makes sure Order Management updates default values according to rules you dene. For details,
see the Use Business Rules With Order Management topic.
• Dene an order management extension. For example, get data from a customer entity on the sales order, and
then use this data as the default value.
Order import doesn't set the default value for an address, contact, or payment term. Your import payload or the order
import template must specify them.
• Use the DOO_ORDER_ADDRESSES_INT worksheet to specify default values for the order header and order
lines.
• Set values depending on whether your import creates or updates.
Create a new sales order Send addresses on the order header, and the import will cascade order header data to the
new order line.
104
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
To set order lines, make sure these columns contain values. An update must contain data for
each order line.
105
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
• Use the instructions in the worksheet to set ship-to and bill-to values.
For details, see the Import Orders into Order Management topic.
106
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
• Use the DOO_ORDER_LINES_ALL_INT worksheet of the order import template to import payment terms.
• Use the Payment Term Code or the Payment Term column.
• If you use Oracle Fusion Financials, then make sure you send payment terms for each order line in each
imported order that you must invoice.
• Order import doesn't support payment terms on the order header so you can't cascade payment terms from
the order header to order lines.
Order Management doesn't provide an administrative interface you can use to create a new customer, but you can use
the order import template instead.
1. Open the DOO_ORDER_HEADERS_ALL_INT worksheet.
107
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
◦ DOO_ORDER_HEADERS_ALL_INT
◦ DOO_ORDER_ADDRESSES_INT
Use the customer import services in Trading Community Architecture to bring customer data into Oracle from your
channel system or legacy system.
108
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Business-to-Business Messaging
Overview of Business-to-Business Messaging in Order
Management
Use Order Management Cloud as your central location when you interact with more than one channel.
Improve order capture and order fulllment in the order-to-cash ow when you communicate a sales order between
businesses.
The business-to-business ow uses Collaboration Messaging Framework to automate message ow so Order
Management can receive and process each source order from a trading partner, then reply with an advance shipment
notice after shipping successfully nishes.
Web services use Open Applications Group Integration Specication (OAGIS) messages in the payload that it uses to
handle interactions that occur between Oracle Cloud Applications and each trading partner. You can use your existing
Electronic Data Interchange (EDI) infrastructure with OAGIS. Use this conguration to receive each source order, then
your trading partner and supplier can process it through order fulllment.
• Reduce cost
• Increase processing speed and accuracy
• Improve relationships between business partners
• Simplify setup and management
If a delay in supply occurs, then Supply Orchestration might send an update for the scheduled ship date to Order
Management. Order Management updates the scheduled ship date but doesn't update the scheduled arrival date on the
fulllment line.
Order Management updates the scheduled ship date, scheduled arrival date, and shipping method only if you set up
Global Order Promising to calculate shipping, such as how to calculate transit time. If you don't set it up, the scheduled
dates and shipping method might not contain a value.
This behavior aects fulllment, including choices that your end-users make when they override the schedule. For
details, see the Schedule Fulllment Lines Manually topic.
109
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
110
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
1. A trading partner uses a web service endpoint that they set up and enabled on their server to send an XML
document that contains source orders to the CollaborationMessage web service on Collaboration Messaging
Framework.
2. Collaboration Messaging Framework converts each source order to a CSV format (comma separated value) that
Order Management supports.
3. Collaboration Messaging Framework uses a web service to upload the CSV les to a folder in Oracle WebCenter
Content.
4. You use the order import template and a scheduled process to convert CSV les into sales orders.
5. Collaboration Messaging Framework subscribes to a business event that the scheduled process raises when it
nishes. Order Management recognizes the event, then sends an order acknowledgment in an OAGIS message
(Open Applications Group Integration Specication) through Collaboration Messaging Framework to the
trading partner.
6. Order Management processes the sales order, then sends it to shipping for order fulllment.
7. Oracle Fusion Shipping creates and processes the shipment.
8. Shipping nishes delivery, then sends the ship conrm and advanced shipment notice in an OAGIS message,
through Collaboration Messaging Framework, then in a reply to the trading partner.
OAGIS_ 10.1_ ACK_ PO_ COLLAB_ Send acknowledgment to the trading partner that Collaboration Messaging received the
MSG_OUT purchase order.
OAGIS_ 10.1_ ACK_ CHANGE_ PO_ Send acknowledgment to the trading partner that Collaboration Messaging received the
COLLAB_ MSG_OUT purchase order change.
OAGIS_ 10.1_ PROCESS_ SHIPMENT_ Send details to the trading partner about shipments.
COLLAB_ MSG_OUT
OAGIS_ 10.1_ PROCESS_ RCV_ DEL_ Send details to the trading partner about purchase order deletions.
COLLAB_ MSG_OUT
Here are the types of messages that Collaboration Messaging can receive from the trading partner.
111
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
• Allow Computer Service and Rentals to receive sales orders, updates, and cancellations from Computer
Associates
• Allow Computer Service and Rentals to send acknowledgments and shipments to Computer Associates
Use Manage Trading Partners to communicate with a trading partner directly or through a service provider. For
example, communicate through a service provider to set up a solution where the trading partner must use EDI
(Electronic Data Interchange), a modied XML format, a proprietary format, and so on.
In this example, you set up the conguration to communicate directly with the trading partner.
5. In the Create Trading Partner dialog, set values, then click Save and Close.
112
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
In the Delivery Methods tab, click Actions > Add Row, set values, then click Save and Close.
Aribute Value
Name CMKDelivery00
Not applicable This integration uses the Process method of the CollaborationMessage web service. Make
sure the trading partner already deployed this web service on their server.
Endpoint Enter the URL that locates the server and port that the trading partner uses at their location
as the end point for their web services.
For example.
hp: / / ComputerAssociatescom7012
User Name Enter the user name that the trading partner server requires to access the endpoint.
Password Enter the password that the trading partner server requires to access the endpoint.
7. Set up the messages that Collaboration Messaging sends to the trading partner.
113
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
◦ Set the Status to Active for each message.
◦ Enter text that describes the message contents.
8. Click Save
9. Set up the messages that Collaboration Messaging receives from the trading partner.
Click Inbound Collaboration Messages, then add these messages.
114
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
5. In the Collaboration Documents for Service Provider area, add these documents.
◦ PROCESS_PO_IN
◦ CHANGE_PO_IN
◦ CANCEL_PO_IN
◦ ACKNOWLEDGE_PO_OUT
◦ ACKNOWLEDGE_CHANGE_PO_OUT
◦ PROCESS_SHIPMENT_OUT
Note.
◦ You use this area to specify the documents that this customer will communicate with the trading partner.
◦ Set the Association Status to Enabled for each document.
6. Click Save and Close, then click Done.
Aribute Value
Not applicable You will be testing a ow that sends a new source order from the trading partner, Computer
Associates, so you use the Partner ID that you specied earlier in this topic.
115
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
External Message ID Enter the number that identies the message you're testing, such as 08192016_001.
PROCESS_PO_IN-1.0-IN_8001
◦ Set the Source System to ORA_ELECTRONIC_DOCUMENTS when you run the Import Sales Order
scheduled process. Order Management uses this predened source system for each source order it
receives from the trading partner.
◦ As an option, in the Batch Name parameter, specify the unique ID of the message you received, such as
08192016_001.
◦ Order Management uses the setup from the Pricing work area to determine pricing. It will ignore any
pricing data that the source order contains.
◦ When the Import Sales Order scheduled process nishes, Order Management can process the sales
orders through order fulllment.
2. In the Order Management work area, on the Overview page, search for the simulated order, such as
Demo_Order.
116
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
3. In the search results, note that the value in the Source Order aribute includes the order number you simulated,
such as Demo_Order_0819_001.
4. In the Order column, click the order number.
5. On the Order page, notice that the order status is Processing, and the fulllment line status is Awaiting
Shipping, which indicates that Order Management released the sales order to order fulllment.
The messaging framework creates an acknowledgment message, then publishes it to the trading partner.
Aribute Value
Document PROCESS_PO_IN
3. In the Messages area, in the External Message ID column, click the row that references the message you
simulated earlier, such as 08192016_001.
4. Click Actions, then click a menu item.
View Source Document View the input XML that Collaboration Messaging received from the trading partner.
View Output Document View the output XML that Collaboration Messaging converted from the input XML, and then
sent to Order Management.
5. Click Done.
6. Click Tasks > Manage Collaboration Messaging History.
7. Examine the results of the acknowledgment.
In the Search area, set the value, then click Search.
117
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
Aribute Value
Related Topics
• Import Orders into Order Management
Drop Ship
Overview of Drop Ship in Order Management
Drop ship is a supply chain management technique where the seller relies on a supplier or contract manufacturer to
build, store, and ship an item to your customer. You can use Order Management Cloud to automate this process.
118
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
• Assume your customer places a sales order with you and you want to drop ship it.
• Order Management sends a purchase request to Oracle Procurement Cloud, which places a purchase order
with your supplier, then your supplier ships directly to your customer.
• You provide a purchase order for the item and instructions that describe how to ship directly to the customer.
• The supplier or contract manufacturer ships the item, and your company earns a prot.
119
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
• Let you supplier manage part of the supply chain, such as fullling and shipping the item, instead of you having
to do it.
• Forecast and plan for future demand.
• Let your customer place an order with you, and let you promise a ship date.
• Automatically place an order with your supplier.
• Let your supplier ship directly to your customer.
• Receive notication from your supplier when your shipment has shipped.
• Let the buyer modify the purchase order.
• Combine more than one sales order into a single purchase order, then fulll them together.
• Modify a sales order after you create the purchase order.
• Manage change orders.
Note.
• You can drop ship a standard item, congured item, kit, conguration model, pick-to-order item, or assemble-
to-order item.
• You can't drop ship an item that isn't shippable, such as a coverage item, subscription, or warranty.
• Your customer can return a drop ship order only to your warehouse. Your customer can't return a drop ship
order directly to the supplier.
• You can't use a third party application in your drop ship ow.
Related Topics
• Schedule Fulllment Lines Manually
120
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
121
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
◦ Order Management comes predened to capture sales orders in the Order Management work area. You
can also capture source orders in an order capture system that resides outside of Order Management.
2. Order Management assigns an orchestration process to the sales order, uses the Schedule Order task to start
scheduling the sales order, then sends a scheduling request to Global Order Promising.
3. Global Order Promising considers sourcing rules, supplier calendar, capacity, and so on to identify the supplier
and supplier site that can fulll the order in the most ecient way. If the sales order species a supplier, then
Global Order Promising uses this supplier.
4. The orchestration process gets the requisition organization from Supply Chain Financial Orchestration so it can
create a purchase request.
5. Order Management sends a purchase request to Oracle Procurement.
122
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
6. Procurement creates a purchase requisition, approves the requisition, creates a purchase order, then sends the
purchase order to the supplier.
Note.
◦ The Customer Sales Order aribute in the Purchase Requisitions work area references the sales order
number in the Order Management work area.
◦ The Requisition aribute in the Purchase Orders work area references the requisition number in
Purchase Requisitions.
◦ The Drop Shipment PO aribute on the Supply Details tab of the fulllment line references the purchase
order.
123
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
◦ The Requisition aribute on the Supply Details tab of the fulllment line references the purchase
requisition.
◦ Order Management sets the order line status when Procurement creates the requisition and the purchase
order.
◦ If a blanket purchase agreement exists, then Procurement might source the requisition from the
agreement.
◦ Procurement sends responses to Order Management while the purchase order moves through its
lifecycle.
7. The supplier examines the purchase order and uses your shipping fulllment system to ship the item to the
customer. The enterprise supplier also communicates with the receiving part of Inventory Management to cost
the shipment.
8. The supplier uses a supplier portal to enter an ASN. Order Management sends the notice to interested parties
and Financial Orchestration. For details about the supplier portal, see the Supplier Portal topic.
9. The receiving part of Inventory Management creates a logical receipt in the receiving organization. It doesn't
create a physical receipt because the supplier ships the item directly to your customer.
10. Financial Orchestration runs a nancial ow that comes predened to handle drop ships, and that species how
to handle the ow that runs from the supplier to the customer.
11. Cost Management does receipt accounting and cost accounting.
12. Order Management waits to receive the advance shipment notice from receiving. The notice indicates that the
item shipped and that the customer acknowledged receipt.
13. Order Management communicates with Oracle Receivables to create an invoice and process payments.
You can modify some of these steps. For example, use Manage Sourcing Rules to modify how Global Order Promising
considers sourcing rules, or use Manage Drop Ship Financial Flows to modify how Supply Chain Financial Orchestration
124
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
sets up a relationship between the selling business unit and the requisition organization. For details, see the Set Up
Drop Ship in Order Management topic.
Related Topics
• How Order-to-Cash Works in Order Management
• How Order-to-Cash Works with Order Capture Systems
• Supplier Portal
Set Up Features
Each feature comes predened as already available except for Fulll a Customer Order Through Drop Shipment and
Handle Landed Cost Charges for Drop Ship Receipts. Each feature includes a predened job role.
125
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
126
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
• Specify a value in the Supplier aribute to implicitly start the drop ship ow.
• Manually set Supplier and Supplier Site aributes on the sales order, or create a sourcing rule that does it
automatically.
Use REST API, le-based data import, or a web service to create the order.
127
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Dierent technologies use dierent aribute names to represent the same data.
Technology Description
Sales order in the Order Management • As an option, set the Order Type aribute to Drop Ship Orders on the order header.
work area
128
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Technology Description
• Set the Supplier aribute and Supplier Site aribute on the Supply tab of the order line.
If you don't specify a value for supplier site, then Procurement sets it according to rules
in Procurement.
REST API
Use the salesOrdersforOrderHub REST resource. In the request payload, provide.
• SupplierId
• SupplierName (optional)
• SupplierSiteId
• SupplierSiteName (optional)
• TransactionType or TransactionTypeCode
For example.
{
"SourceTransactionNumber":"87956",
"SourceTransactionSystem":"GPR",
"SourceTransactionId":"87956",
"BusinessUnitName":"Vision Operations",
"BuyingPartyName":"Computer Service and Rentals",
"BuyingPartyContactName":"Brian Smith",
"TransactionType":"Standard Orders",
"RequestedShipDate":"2019-10-19T20:49:12+00:00",
.
.
.
"SupplierId" : 11176859,
"SupplierName" : "Green Bytes Inc.",
"SupplierSiteId" : 76846573869,
"SupplierSiteName" : "Denver Distribution Center"
"TransactionType" : "Dropship Orders"
"TransactionTypeCode" : "STD_DS"
.
.
.
}
129
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Technology Description
Web Service • Specify TransactionType or TransactionTypeCode on the order header in a web service
payload.
• Specify RequestedSupplierName and SupplierSiteCode on the order line.
• Use the Create Order Operation of the OrderImportService web service.
For example.
<ns2:Order>
.
.
.
<ns2:TransactionType>Dropship Orders</ns2:TransactionType>
.
.
.
<ns2:Line>
.
.
.
<ns2:RequestedSupplierName>Green Bytes Inc.</ns2:RequestedSupplierName>
<ns2:SupplierSiteCode>76846573869</ns2:SupplierSiteCode>
.
.
.
Note.
• If you don't specify the supplier and supplier site in a sourcing rule, then you must include the Schedule Ship
Date on the order line in the payload or FBDI template.
• To verify the values you must use for TransactionType or TransactionTypeCode, in the Navigator,
click Setup and Maintenance, open the Manage Order Lookups task, then search for lookup type
ORA_DOO_ORDER_TYPES. Use a value from the.
If you use the predened drop ship ow, then note these points.
• Order Management sends shipping instructions and packing instructions in one or more aachments on the
fulllment line because Procurement only accepts instructions in an aachment.
• Procurement only processes aachments that include an aachment category of MISC (Miscellaneous) on the
fulllment line. It ignores an aachment that contains any other value.
130
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
• An Order Entry Specialist can use the Create Order page in the Order Management work area to set the
Category aribute in the Aachments dialog to any value that the drop down for the aribute displays when
adding an aachment to an order line. However, Order Management sends a value of MISC to Procurement
regardless of the value of Category.
• The user can enter text in the Shipping Instructions aribute and the Packing Instructions aribute in the
Shipping Details area of the Create Order page. However, Order Management doesn't send this text to
Procurement because Procurement only accepts them in an aachment.
• You must set the aachment category to MISC on the order line of each source order that you import.
For details about aachment categories and how to set them up, see the Overview of Integrating Aachments in Order
Management topic.
If a supplier sends updates to Procurement, then Procurement might send an update for the scheduled arrival date to
Order Management. Order Management updates the scheduled arrival date but doesn't update the scheduled ship date
on the fulllment line.
Order Management updates the scheduled ship date, scheduled arrival date, and shipping method only if you set up
Global Order Promising to calculate shipping, such as how to calculate transit time. If you don't set it up, the scheduled
dates and shipping method might not contain a value.
This behavior aects fulllment, including choices that your users make when they override the schedule. For details,
see the Schedule Fulllment Lines Manually topic.
Use an extensible exeld to send your own aribute to a descriptive exeld on the purchase order in Procurement.
131
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Here's an example payload that sends an extensible exeld named ComplianceDetails to Procurement.
Note.
• Use web service Request Fulll Order Orchestration Task Service to send your payload. For details, see the
Overview of Using Extensible Flexelds in Order Management topic.
• Set up prole options in Procurement.
132
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Use a service mapping to send data to Procurement, such as the supplier price or a note. For details, see the Use Service
Mappings to Send Data to Procurement topic.
Manage Change
If the Order Entry Specialist changes a fulllment line during a drop ship that's awaiting shipment, then Order
Management waits for Procurement to accept the change. The buyer or supplier might reject the change because they
can't fulll it. For example, the supplier can't meet a revised requested ship date, shipping method, quantity, and so on.
Order Management assumes Procurement will accept the change and uses the change order to update the sales order.
However, if Procurement rejects the change, then the sales order in Order Management and the purchase order in
Procurement are no longer synchronized. For example, if the user changes the quantity on a fulllment line, and if the
ship date is imminent, then Order Management might accept the change but your supplier might reject it because the
supplier already prepared the item for shipping.
To avoid this problem, Order Management uses predened constraints to prevent the Order Entry Specialist from
changing the fulllment line.
Update Fulllment Line That Drop Prevents the Order Management user from updating or canceling the fulllment line when the
Ships purchase request in Procurement is at the Purchase Order stage.
Cancel Fulllment Line That Drop
Ships
Cancel Fulllment Line When Prevents the Order Management user from canceling a fulllment line for the drop ship when
Purchase Order Isn't Available the purchase order for the line is closed for receiving, is locked, or is on hold.
If you disable these constraints to meet your business requirements, then you must create your own constraints that
prevent Order Management from accepting a sales order revision that Procurement rejects. For example, create a
constraint that implements this logic.
• If the supplier can fulll the change when it occurs two days or more before the ship date, then reject the
change only if it occurs within two days before the ship date.
133
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Modication Description
Ship a congured item, pick-to-order, • If your sales order includes a congured item or a shipment set, and if your supplier
or shipment set already shipped some order lines but other lines are awaiting shipment, then you can
cancel only the lines that the supplier hasn't shipped.
• Don't revise the purchase order in Procurement Cloud even if you intend to cancel the
purchase order schedule.
• Don't change a congured item, pick-to-order item, or shipment set in Procurement
Cloud.
• Don't use a shipment set to group sales order lines into a single purchase order.
Procurement doesn't support shipment sets for this usage.
Assign supplier Don't assign a new supplier on the requisition, then split the schedule on the draft purchase
order.
Removing a value from the warehouse and adding a value to the supplier and supplier site
creates a drop ship ow. The ow needs the date so it can create the requisition.
Cancel order line If the order line is in Requisition Created status, then you can cancel it in the Order
Management work area, but you can't make any other changes.
If Order Management sends a purchase request to Procurement Cloud, and if Procurement
creates a purchase requisition for the request but hasn't created a purchase order for it,
then you can only cancel the order line, and you can cancel the line only if it isn't part of a
congured item or shipment set.
Change other aributes The buyer can change values in aributes that don't aect the drop ship ow.
Here's what you can and can't do regarding combining and spliing.
134
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Modication Description
Split the schedule The buyer can split the schedule, but don't split the schedule and also change the quantity or
supplier at the same time.
Combine sales orders into one If the ow creates one purchase order for requisition lines that reference more than one sales
purchase order order, and if you revise these sales orders, then the ow places a hold on one of the sales
orders and revises the purchase order. It doesn't revise the other sales orders and they fail.
To x this problem, go to the Order Management work area, delete the sales order revisions
that failed, wait for Order Management to nish processing the sales order it placed on hold,
then revise the other sales orders.
You can only combine sales orders for the same customer or for the same supplier site. You
can't consolidate sales orders across customers or across supplier sites.
Combine sales order lines into Manually combine sales order lines into one or more purchase orders. You can create one
purchase orders purchase order for each order line, resulting in several purchase orders for one sales order.
Modication Description
Modify quantity If you split the purchase order schedule across more than one delivery date, then make sure
the total quantity across your split schedules equals the ordered quantity on the fulllment
line.
If shipping has received the ASN, then you can't modify the quantity.
Set quantity for advance shipment Make sure you use a single order line to specify the quantity for an Advance Shipment Notice.
notice Don't split the quantity across more than one line.
Modify receipt quantity The drop ship ow creates a receipt when it receives an invoice from accounts payable or an
advance shipment notice. The ow then moves to the next orchestration process step in Order
Management. Order Management won't display a subsequent change you make to the receipt
quantity.
135
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Other Setups
Here are some other set ups you can do.
• Create a separate requisition and purchase order for each order line.
• To improve performance, aggregate fulllment lines before you send them to Procurement. For details, see the
Actions You Can Set When Routing Requests to Fulllment Systems topic.
Reports
Reject an Over-Receipt
If the quantity on the advance shipment notice (ASN) exceeds the ordered quantity, then Oracle Fusion Receiving will
reject the fulllment request and display a message requesting the user to modify the quantity regardless of how you
set the Over-Receipt Action aribute on the Manage Receiving Parameters page in the Setup and Maintenance work
area. If receiving rejects the request, you must correct the quantity on the ASN or in receiving.
For details about this aribute, see the General Receiving Parameter Options topic.
Related Topics
• Processing Constraints
• Overview of Integrating Aachments in Order Management
• Schedule Fulllment Lines Manually
• Overview of Using Extensible Flexelds in Order Management
• Overview of Prole Options
136
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Note.
• Each of these set ups are required except for Manage Agreements and Manage Orchestration Processes, which
are optional.
• In this example, you enable the AS54888 Sentinel Desktop Computer for drop ship.
• This topic includes example values. You might use dierent values, depending on your business requirements.
Here are the tasks you do to get started with seing up drop ship.
1. Dene Blanket Agreement and ASL in Procurement. Sign in with a privilege that you can use to set up
Procurement.
2. Create Drop-Ship Validation Org in Inventory Management. Sign in with a privilege that you can use to set up
Inventory Management.
3. Do tasks in Global Order Promising.
◦ Sign in with a privilege that you can use to set up Global Order Promising.
◦ Manage Data Collections.
◦ Dene Item Processing Lead Times.
◦Manage Sourcing Rules and Manage ATP Rules. Set up sourcing rules and ATP rules so they support
drop ship. For details, see the How Order Promising Rules Work Together topic.
4. Do tasks in the Manufacturing and Supply Chain Materials Management oering.
◦ Manage Trade Operations
◦ Dene Shipping Network
◦ Dene Transit Lead Times
◦ Manage Assignment Sets
◦ Maintain Supply Network Model
For details, see the Implementing Common Features for Oracle SCM Cloud topic.
Enable Features
1. Implement the Order Management oering.
For details, see the Implement chapter in the Implementing Order Management book.
2. Sign into Order Management with administrative privileges.
3. In the Navigator, click Setup and Maintenance.
4. In the Setup and Maintenance work area, go to the Order Management oering.
5. Click Actions > Change Feature Selection.
6. On the Edit Features page, in the Drop Ship row, add a check mark to Enable, then click Done.
Enabling this feature lets you access various aributes and to do the setup tasks you need to implement drop
ship, such as in Financial Orchestration.
7. Click Actions > Go to Oerings.
8. In the Setup and Maintenance work area, go to the Procurement oering.
9. Click Actions > Change Feature Selection.
137
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
10. On the Edit Features page, in the Customer Sales Order Fulllment row, add a check mark to Enable, then click
Done.
This feature allows Oracle Procurement to accept purchase requests for sales orders that a drop ship supplier
fullls, and to display some of the aributes that you use to set up drop ship.
Manage Items
Set up items so they can participate in drop ship.
1. Sign in with a privilege that you can use to set up Product Information Management.
2. In the Navigator, click Product Information Management.
3. On the Overview page, click Tasks > Manage Items.
4. On the Manage Items page, search for the item you want to drop ship, such as Sentinel Desktop Computer.
5. In the search results, in the Item column for the item you must manage, click the link .
For example, in the Sentinel Desktop Computer row, click AS54888.
6. On the Edit Item page, click Specications, then click Purchasing.
7. In the Item Organization: Purchasing area, set the aribute.
Aribute Description
8. If a blanket purchase agreement doesn't exist for the item, then, in the Pricing area, enter a number in the List
Price aribute.
9. Click Save.
Note.
◦ You specify the item as purchasable in the organization that's responsible for purchasing the item.
◦ The Product Information Management work area comes predened to set the Purchasable aribute to
Yes, so you modify it only if you previously set it No.
◦ For details about how to make a large number of items purchasable, see the Implementing Product
Management book.
Aribute Description
Organization Assignment Type Make sure the type is Global. If it isn't Global, then you can't use this sourcing rule.
138
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Description
7. In the Eective Start Date area, to add a sourcing rule for your drop ship ow, click Actions > Add, then set
values.
Aribute Description
Organization Leave empty. The Organization is typically the warehouse that stores inventory for a ow
that doesn't include a drop ship.
Type Choose Buy From. Global Order Promising interprets Buy From to indicate that this value
must come from a drop ship supplier.
Supplier Choose the supplier who will drop ship the item.
Supplier Site Choose the site that the supplier uses to store the drop ship item. The supplier ships the item
from this site.
Aribute Description
Assignment Level Set to Item. This seing assigns the sourcing rule to the item.
Item Choose the item that the supplier you specied in step 6 supplies. For this example, choose
AS54888.
Sourcing Type Set to Sourcing Rule. This value associates the sourcing rule with the assignment set so
Order Management can use the rule to assign the item.
139
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Description
Supplier Calendar
Specify the working days for the supplier.
Supplier Capacity Specify the supplier capacity according to item, supplier, and supplier site. Order Promising
measures the supplier capacity that exists on the arrival date.
Supplier Lead Times You specify and collect the lead times for item processing on the item master in Oracle Fusion
Product Model. You can specify a lead time for each supplier in Global Order Promising.
1. Sign in with a privilege that you can use to access the Suppliers work area.
2. In the Navigator, click Suppliers.
3. On the Overview page, click Tasks > Manage Suppliers.
4. On the Manage Suppliers page, search for the supplier you must manage, such as GVR_DS_SUPPLIER1.
5. In the search results, click the supplier you must manage, such as GVR_DS_SUPPLIER1.
6. On the Edit Supplier page, click Sites.
7. In the Site column, click a site, such as GVR_SUP1_SITE1.
The supplier site you select must reference a procurement business unit. This business unit authorizes
procurement services for the site.
8. On the Edit Site page, verify the value.
140
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
This option species that the supplier site fullls a purchasing role for the client business unit.
9. Click Site Assignments, then set the value.
Aribute Value
Client BU Choose the client business unit that will requisition and process invoices for the supplier site.
Oracle Fusion Purchasing allows your buyer to create a blanket purchase agreement for items it will drop ship from the
supplier. You must dene an agreement for each supplier and supplier site, and associate one or more items with the
agreement. You do this work when you set up purchasing.
This topic describes how to modify the setup so it supports drop ship. Purchasing uses the prices that the agreement
species to set default values in the purchase documents. For details, see Blanket Purchase Agreement Lines topic.
You manage agreements dierently for a drop ship that includes a congured item. For details, see the Set Up Drop
Ship for Congured Items topic.
Manage agreements.
1. Sign in with a privilege that lets you access the Purchasing work area.
2. In the Navigator, click Purchasing.
3. Click Tasks > Manage Agreements.
4. On the Manage Agreements page, choose a value in the Procurement BU aribute, such as Vision Operations,
then click Search.
5. In the search results, in a row that includes an agreement with a supplier who will drop ship your item, in the
Agreement column, click the link.
6. On the Agreement page, click Actions > Edit.
7. On the Edit Document page, click Controls, then set values.
141
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Description
◦ Contains a check mark. Purchasing will automatically convert each requisition that
it sources from the blanket purchase agreement. It will convert each requisition to a
purchase order.
◦ Doesn't contain a check mark. Your buyer must do the conversion manually in the
Purchasing work area.
◦ Buyer
◦ Supplier
◦ Supplier site
◦ Source agreement
Automatically Submit for Approval Make sure this option contains a check mark. If it doesn't, then Order Management will
create the order with an incomplete status, and the buyer must manually submit it for
approval.
◦ Contains a check mark. Purchasing will group requisition lines that reference the
same sales order number. It will group them on a single purchase order.
◦ Doesn't contain a check mark. Purchasing won't group.
• If the shipment is a drop shipment, then run the Create Shipment Request branch.
• If you enable the item in the inventory organization for back-to-back shipping, then run the back-to-back
branch.
• If the rst two conditions are false, then run the Create Reservation branch.
Use this orchestration process as the default process assignment in your Assign and Launch rule. You can also create
your own orchestration process that meets your business requirements. For details, see the Set Up Orchestration
Processes topic.
142
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Related Topics
• How Order Promising Rules Work Together
• Supplier Sites and Supplier Site Assignments
You can specify more than one requisition business unit to manage and own more than one transaction that requests
the item. You can also specify the selling business unit in the legal entity that sells the item.
1. Receive events. Financial Orchestration captures the physical supply chain event each time one occurs in
the drop ship ow. For example, when the supplier sends the Advance Shipment Notice to indicate that they
shipped the item.
2. Identify the nancial ow to run. Financial Orchestration uses your set up details to identify the nancial ow to
use.
143
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
One The selling business unit and the requisition business unit are the same unit, and Financial
Orchestration uses only one nancial ow for the drop ship.
More than one Financial Orchestration might run through more than one business unit that involves
procurement nancial ows and shipment nancial ows.
Set it Up
1. Sign in with Order Administrator privileges.
2. In the Navigator, click Setup and Maintenance.
3. In the Setup and Maintenance work area, go to the task.
◦ Oering: Manufacturing and Supply Chain Materials Management
◦ Functional Area: Supply Chain Financial Flows
◦ Task: Manage Drop Ship Financial Flows
4. On the Manage Drop Ship Financial Flows page, in the search results, click Actions > Create.
5. On the Create Drop Ship Financial Flow page, set values.
Aribute Description
Priority 1
Aribute Description
◦ ASN From Supplier. Change ownership when the supplier sends an advance
shipment notice (ASN) to the nancial ow for the drop ship order.
◦ AP Invoice Match. Change ownership when the supplier sends an invoice to the
nancial ow for the drop ship order.
For details, see the Indicate an Ownership Change During Drop Ship topic.
7. In the Selling BU to Receiving BU Relationships area, click Actions > Add Row, then specify the relationship.
For details, see the Specify Business Units for Drop Ship Flows topic.
8. Repeat these steps for each selling business unit that your enterprise contains.
9. Click Save and Close.
144
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Related Topics
• Financial Orchestration Flows
Note.
• Red text indicates example values.
145
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
• Vision Operations is a legal entity. It contains a selling business unit that takes sales orders directly from your
customer in its North American call center.
• Singapore Distribution Center.
◦ Is the receiving trade organization. It receives the item from your supplier. The receiving trade
organization also owns the requisition and receives the purchase order on behalf of the selling business
unit.
◦ Is the requisition business unit.
◦ Supplies the item to customer Computer Service and Rentals, which is located in China.
The Create Drop Ship Financial Flow page sets the Receiving BU aribute and the Receiving Legal Entity aribute
according to the value you set in the Receiving Trade Organization aribute.
Assume you set Receiving Trade Organization to Vision Operations, and you set up the application to create a
requisition in the Vision Operations inventory organization for each sales order you drop ship that Vision Operations
creates. Here are the aributes that will contain a value of Vision Operations.
• Selling BU
• Selling Legal Entity
• Receiving Trade Organization
• Receiving BU
• Receiving Legal Entity
• Requisition BU
Order Management Cloud gets the value for the Requisition Organization aribute and the Requisition BU aribute
from the purchase requisition it creates for each drop ship order that involves a supplier, and that requires a requisition
organization.
Set the Selling Business Unit and the Receiving Business Unit
Use Financial Orchestration to set up and run the nancial ow according to the ownership transfer that occurs between
the parties that are involved in the drop ship ow. Set up the relationship that exists between the selling business unit
and the receiving business unit. Financial Orchestration uses this relationship when it creates a purchase requisition for
the drop ship.
If you set the value for the Selling BU aribute to a value that's dierent from the value in the Receiving BU aribute,
then Financial Orchestration determines whether it must do more nancial and accounting transactions according to
the procurement and shipping ows.
146
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
If a procurement nancial ow exists in Financial Orchestration, and if Financial Orchestration can use it for the
purchase order that the drop ship references, then Financial Orchestration uses the procurement nancial ow when it
orchestrates the drop ship.
For example, assume you must create a requisition that references the China inventory organization for each Metal
item, and create a requisition that references the United States inventory organization for each Plastic item. Here's your
set up.
Flow 1 Resides in China as the receiving trade Use Metal as the item category.
organization.
Flow 2 Resides in the United States as the Use Plastic as the item category.
receiving trade organization.
147
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
You use the Supplier Ownership Change Event aribute on the Manage Drop Ship Financial Flows page to specify when
to change ownership.
148
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
3. Order Management starts the downstream processes that cost and bill the shipment, including creating the
drop ship receipt, starting the billing process, and starting the nancial orchestration process for the drop ship
order.
4. Receiving sends status and event details to Financial Orchestration and Order Management.
◦ Financial Orchestration processes the trade transactions in costing, processes the receivable invoices
between companies, processes payable invoices between companies, and so on.
◦ Order Management sends status and event details to billing and order orchestration.
The supplier can use actions on the supplier portal to create the advanced shipment notice.
• Create ASN
• Create ASBN
• Upload ASN
• Upload ASBN
If the supplier uses an informal communication, such as email, to report the shipment of a purchase order that
references a drop shipment, then the warehouse manager can also use these features on the Receipts page in the
Warehouse Operations work area to manually enter the advanced shipment notice. You can also upload an advanced
shipment notice electronically through XML or EDI. For details, see these topics.
• Supplier Portal
• Overview of Creating ASNs and ASBNs
AP Invoice Match
What happens if the supplier doesn't send an advanced shipment notice, but instead sends an invoice?
1. The supplier sends an invoice to accounts payable in Financial Orchestration.
2. Financial Orchestration starts orchestration to receive costs and bill the shipment.
The receiving process works the same way it does for ASN From Supplier, except the process doesn't create an
advanced shipment notice.
3. Order Management receives and delivers the drop shipment when it creates the accounts payable invoice for
the purchase order. Its the same purchase order that the drop ship references.
Scheduled processes automatically do the hard work for you.
Transfer Invoice Details to Supply Send details about validated invoices, canceled invoices, and corrected invoices to Financial
Chain Financial Flow Orchestration Orchestration.
Transfer Ownership Change Events Send details about the AP invoice match from Financial Orchestration to the receiving process.
to Receiving
Related Topics
• Supplier Portal
149
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
Supplier Select the supplier who will drop ship the congured item.
6. On the Edit Document page, in the Lines area, add at least one line, then click Submit.
Note.
• A hybrid conguration model is a type of conguration model that includes an assemble-to-order conguration
model as the child and a purchase-to-order conguration model as the parent.
Order Management Cloud uses one blanket purchase agreement to source the assemble-to-order options,
and a dierent blanket purchase agreement to source the purchase-to-order options. So, Order Management
issues separate purchase orders to the supplier.
• Use File-Based Data Import to import more than one agreement.
Related Topics
• How File-Based Data Import Works
150
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
• The price that we negotiated with the customer when we created the sales order. We will use the Price aribute
to capture the negotiated price.
For details, see the Integrate Order Management with Other Oracle Applications topic.
6. Add an entity. On the Entities tab, click Actions > Add Row, set values, then click Save.
Aribute Value
Description Entity for an extensible exeld that stores details on the fulllment line. It describes the
price we negotiated.
7. Add an aribute. In the Details area, click Actions > Add Row, then set values.
Aribute Value
Type Long
151
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
8. Add another aribute. In the Details area, click Actions > Add Row, set values, then click Save.
Aribute Value
Type Double
Aribute Value
Aribute Price
Type Decimal
Aribute Value
152
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
Aribute Value
6. In the FLinePackShip_EFF_Custom Details area, add new aributes, then click Save.
153
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
◦ FLinePackShip_EFF_Custom
◦ Header
◦ FulllLine
◦ PurchaseRequestCong
◦ PurchaseRequestHeader
◦ PurchaseRequestLine
Note.
Aribute Alias
◦ FulllLineId
◦ NegotiatedByPreparerFlag
◦ NoteToBuyer
◦ Price
154
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
◦ Make sure the Read aribute and Write aribute contain a check mark for each aribute.
◦ Leave the other aributes empty.
Aribute Value
Related Topics
• Integrate Order Management with Other Oracle Applications
• Create a Sandbox So You Can Edit Service Mappings
• Guidelines for Integrating Order Management with Other Oracle Applications
More
155
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
General
Time Zone Dierences in Order Management
Global Order Promising uses the time zone where the inventory organization resides when it calculates promising
for the supply that Order Management requires to fulll each sales order, then sends the scheduled ship date and
scheduled arrival date to Order Management.
Global Order Promising uses date aributes from Order Management to optimize supply. For example.
• Requested ship date or requested arrival date
• Earliest acceptable ship date or earliest acceptable arrival date
• Latest acceptable ship date or latest acceptable arrival date
Using the time zone where the inventory organization resides provides more accurate values in date elds, and helps
to avoid undesirable time shifts between demand and supply. For example, to prevent the scheduled ship date from
occurring before the requested date or the ordered date.
Note.
• Order Management applies this behavior for sales orders that the Order Entry Specialist creates in work area
Order Management and for source orders that you import order from a source system.
• This behavior doesn't apply for drop ship.
For example.
1. The Order Entry Specialist sets the requested date on the sales order to 3/2/18 5:00 PM, which is a Friday, then
submits the sales order.
2. Order Management interacts with Global Order Promising in UTC, so it sends 3/3/18 00:00AM (UTC) as the
requested date.
3. Global Order Promising converts the requested date to the time zone where the inventory organization resides,
which is 2/3/18, Friday, 05:00 PM (UTC minus 7).
4. Global Order Promising schedules the shipment at the inventory organization to the end of the day, which is
2/3/18, 11:59 PM local time (UTC minus 7), because this day is a working day.
5. Global Order Promising sends schedule details to Order Management as Saturday, 3/3/18, 6:59 AM (UTC).
06:59 is a seven hour oset from UTC. The calculation is Friday, 11:59 PM local time (UTC minus 7) plus
seven hours equals Saturday, 3/3/18 06:59 AM (UTC).
6. The Order Management work area now displays the scheduled ship date in UPTZ, which is UTC minus 7.
The scheduled ship date in UTC was 3/3/18 minus 06:59AM (UTC). The time and date in UPTZ is 2/3/18 minus
11:59 PM (UTC-7).
156
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Global Order Promising uses UTC. Order Management displays dates in UPTZ (User Preference Time Zone) so
they're meaningful to the person who uses the Order Management work area.
Requirements for how you format dates are dierent depending on how you import your source order.
You use web service ReceiveOrder. Dates in your import payload can use UTC with or without a negative or positive oset.
For details, see the Overview of
Using Web Services with Order
Management topic.
You use the order import template. Dates in your import payload must use UTC.
For details, see the Use Files
to Import Orders into Order
Management topic.
You use the business-to-business
ow. For details, see the Overview
of Business-to-Business in Order
Management topic.
157
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Here's an example payload of the ReceiveOrder web service. It includes a UTC oset for the Earliest Acceptable Ship
Date aribute. This value indicates that the end of day is April 3, 2018, and the time is 1:10:10 AM in the time zone that's
8 hours behind UTC.
where
T Time designator.
158
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
z Time zone indicator with or without a UTC oset. For example, 0-8.00 is eight hours behind
UTC.
Consider an example.
2018-04-03T01:10:10.0-08:00
where
Value Variable
t Time designator.
0-08:00
where
• 0. Species 0 UTC.
• -. Delimiter between 0 UTC and the UTC oset.
• 08:00. Species 8 hours after 0 UTC.
159
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
• Make sure the unit of measure is appropriate for the item. For example, Quart is appropriate for a liquid, but
Amperage isn't because amperage measures electrical current.
Import
If you import a source order through FBDI or a web service.
• Collect units of measure from your order capture system so Order Management can validate the units of
measure it receives later when you import source orders from your capture system. For details, see the Collect
Data subtopic in the Quick Start for Seing Up Order-to-Cash topic.
• Use the Ordered UOM aribute to specify the unit of measure. Use the OrderedUOMCode aribute to specify
the abbreviation for the measure. For example, Ea is an abbreviation for Each.
• The import uses the value you import instead of the value you specify in Product Information Management.
• If you use the Pricing Administration work area to set up pricing for your item, then the import validates the
unit of measure according to how you set up the price list. For example, if you set the Pricing UOM aribute for
the item on the price list to Ea, and if your import doesn't use Ea for the unit of measure, then the import fails
and displays an error message.
• If you encounter an error during order import, like Cross-Referenced Value Not Found for UOM_CODE, see the
Cross-Reference Error subtopic in the Troubleshoot Problems With Order Import topic.
Fulll
• If you don't encounter an error during import but the order gets stuck during fulllment, then create a
conversion rule.
• If your shipping system uses a unit of measure to represent shipping that's dierent from the unit of measure
that Order Management uses in the sales order, then the shipment service converts the unit of measure back to
the unit of measure that the sales order uses, then communicates the shipped quantity to Order Management.
For details, see the Task Services topic.
• If you use the Create Inventory Reservations fulllment task to reserve supply, then you must provide the item,
quantity, unit of measure, and warehouse. For details, see the Guidelines for Reserving Inventory topic.
• If you use an Oracle Fusion inventory system, then create a conversion rule that converts the UOM from the
sales order into a UOM that the inventory system can understand. If you use your own fulllment system, then
make sure it accepts the UOM that the sales order species.
Related Topics
• Troubleshoot Problems With Order Import
• Task Services
• Guidelines for Reserving Inventory
• How Units of Measure, Unit of Measure Classes, and Base Units of Measure Relate to Each Other
The Overview page comes predened to only display data from the Order Management oering. However, you can set
it up so it displays data from other oerings.
1. In the Setup and Maintenance work area, go to the Order Management oering.
2. Click Actions > Edit Implementation Status, set status to Implemented, then click Done.
160
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
3. Repeat steps 1 and 2 for each oering that must display data in infolets.
For example.
◦ Order Promising is part of Supply Chain Planning. To display promising data, in step 1, go to Supply
Chain Planning.
◦ Shipping is part of Manufacturing and Supply Chain Materials Management. To display ship data, in step
1, go to Manufacturing and Supply Chain Materials Management.
Your users must sign in with the FOM_VIEW_ORDER_TO_CASH_INFOLET_PAGE privilege to view infolets.
Here are more privileges you need to view infolets from each oering.
Inventory Valuation Manufacturing and Supply Chain CST_ RUN_ INVENTORY_ VALUATION_
Materials Management REPORT_PRIV
161
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Workow Task BIP_ CLIENT_ DISABLE_ <FAMILY>_ BIP_ CLIENT_ DISABLE_ FIN_ AP_
<PRODUCT>_ <WORKFLOW> FINAPINVOICEAPPROVAL
The prole options with a smaller scope take precedence. For example, you have prole option A with a global scope
and prole option B with a workow task scope. You're currently conguring notications for that workow task, so you
use prole option B to turn the refresh o just for that task. But based on prole option A, the refresh is still on for all
other congurable notications in all product families. Prole option B takes precedence over prole option A for that
one workow task.
Tip: To nd the product family or product code, go to the Setup and Maintenance work area, and then the
Manage Taxonomy Hierarchy task in the Application Extensions functional area. In the hierarchy, expand
the Oracle Fusion node and look in the Module Key column. To nd the workow task name, go to the Task
Conguration tab in BPM Worklist and look in the Tasks to be congured pane.
1. In the Setup and Maintenance work area, go to the Manage Applications Core Prole Options task in the
Application Extensions functional area.
2. On the Manage Applications Core Prole Options page, click the New icon.
3. On the Create Prole Option page, enter the prole option code in the format that corresponds to the scope
you want.
4. Enter a display name that you can easily remember to help you nd the prole option later.
5. From the Application list, select Oracle Middleware Extensions for Applications.
6. From the Module list, select Application Core.
7. In the SQL Validation eld, enter this:
162
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Related Topics
• Update Existing Setup Data
• Set Prole Option Values
• Modules in Application Taxonomy
Security
Set Up User Roles and Privileges in Order Management
Set up user roles and privileges to manage the authentication and authorization that Order Management uses to secure
order management processing, including web service usage.
Here's how Order Management implements security.
• Uses authentication through a user name and password during sign in to allow each user to access the Order
Management work area
• Uses authorization through user roles and privileges to allow each user to do dierent tasks according to job
outcome in the Order Management work area
This topic describes how to examine privileges and job roles that come predened to use with Order Management, and
how to add an Order Management user. For background details, go to Oracle Help Center at hps://docs.oracle.com/
en/cloud/saas, click SCM Core, then read the books.
Book Details
Securing Oracle SCM Cloud Job roles, privileges, duty roles, and how to set up security, including values you set for each
user.
Security Reference for Order Job roles that come predened to use with Order Management.
Management
Job roles that come predened to use
with Order Management.
163
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
3. In the Add Role Membership dialog, enter Order Manager, then click Search.
4. In the search results, click the row that contains the values.
Aribute Value
5. In the Conrmation dialog, click Add Role Membership > OK, then click Done
6. On the Add User Account page, add passwords for the user, then click Save and Close.
Each user can use these passwords the rst time the user signs in. Instruct your users to change passwords
immediately after sign in.
Create another user and assign a job role so the user can only view sales orders, but not create, update, or delete them.
1. Identify the role that provides only view access to sales orders.
◦ On Oracle Help Center, locate the Security Reference for Order Management book.
◦ Examine the roles, duties, privileges, and policies until you locate one that meets your needs. For this
example, the Order Entry Specialist is the most likely role.
◦ In the Order Entry Specialist section, scroll down through the Privileges area until you locate the Item
Inquiry granted role.
Item Inquiry Queries and views items in the Manage Item Aachment
enterprise.
Item Inquiry Queries and views items in the Manage Item Catalog
enterprise.
164
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Item Inquiry Queries and views items in the Manage Item Global Search
enterprise.
Item Inquiry Queries and views items in the Manage Trading Partner Item
enterprise. Reference
Item Inquiry Queries and views items in the View Item Organization Association
enterprise.
Item Inquiry Queries and views items in the View Item Relationship
enterprise.
◦ For this example, you must provide only read access, so you will use the View Item privilege.
2. On the User Accounts page, click Add User Account, set values, then click Add Role.
Aribute Value
First Name Yu
Last Name Li
3. In the Add Role Membership dialog, enter the role you located earlier in this procedure, Order Entry Specialist,
then click Search.
4. In the search results, click the row that contains the values.
Aribute Value
5. In the Conrmation dialog, click Add Role Membership > OK , then click Done.
6. On the Add User Account page, add passwords for this user, then click Save and Close.
165
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
Tip: Reduce your work load. Modify the copy of a predened role rather than create a new one.
4. In the Copy Options dialog, choose Copy Top Role, then click Copy Role.
5. On the Basic Information page, enter values, then click Next.
Aribute Value
Description Search for and view sales orders, including sales order header, order lines, price details, and
price totals. Don't allow user to create, update, or delete any part of the sales order.
6. On the Function Security Policies page, delete all rows except rows that contain these privileges.
166
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
For example.
Note.
◦ If you must add a privilege, then click Add Function Security Policy.
167
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
◦If you must add all privileges, for example you choose to not copy a predened role, then, in the Add
Function Security Policy dialog, enter the rst characters that are similar across a group of privileges,
such as View Customer, click Search, then add each privilege from the search results.
7. On the Data Security Policies page, delete each row that includes these values.
Aribute Values
Policy Name
◦ Grant on Collaboration Document Header
To delete a row, click the down arrow in the row, then click Remove Data Security Policy.
8. Verify that the Data Security Policies page displays these policies.
Grant on Trading Community Customer Order entry specialist can view customer Read, View Customer Account Site Use
Account Site Use account site use.
Grant on Trading Community Order entry specialist can view trading Read, View Trading Community
Relationship community relationship. Relationship
Grant on Trading Community Order entry specialist can view trading Read, View Trading Community
Organization Party community organization. Organization
Grant on Application Reference Data Set Order entry specialist can view customer View Customer Account Site Use
account site use.
Grant on Application Reference Data Set Order entry specialist can view customer View Customer Account Site,
account site.
Grant on Trading Community Party Order entry specialist can view trading Read, View Trading Community Person
community person.
Grant on Trading Community Customer Order entry specialist can view customer Read, View Customer Account
Account account.
Grant on Application Reference Data Set Order entry specialist can view customer View Customer Account Relationship
account relationship.
Grant on Trading Community Customer Order entry specialist can view customer Read, View Customer Account Site
Account Site account site.
168
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
◦ In the Policy Name column, in the row that contains this value, click Actions > Edit Data Security Policy.
Aribute Value
◦ In the Edit Data Security Policy dialog, next to Actions, click the down arrow, then add or remove the
check mark next to each of the actions you will allow or disallow the user to do.
For example, View Customer Account Site, Manage Customer Account Site, Read, Delete, Update, and
so on. For this example, you're dening a read-only view, so make sure only the view actions and read
actions contain a check mark.
A business unit set as a group of business units that you can use for a specic setup. For example, assume you
add business unit 1 and business unit 2 to business unit set x, and then aach Payment Term NET30 to set x. You
can then use this payment term for business unit 1 and business unit 2.
The Set Id identies the business unit set. For details about the business unit set, see the Overview of Multiple
Business Units in Sales topic.
You can specify the actions that each policy allows according to Set Id. For example.
◦ In the Policy Name column, in the row that contains this value, click Actions > Edit Data Security Policy.
Aribute Value
◦ In the Edit Data Security Policy dialog, next to Actions, click the down arrow, then notice you can specify
a wide range of views and manage actions that the user can perform.
You can specify the actions that each policy allows according to business unit. For example.
169
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Value
Condition Name
Specify how to lter according to business unit. For most situation, choose Access the
Business Unit for Which the User is Explicitly Authorized.
Actions Choose the actions that you must allow the user to do for the business unit.
9. Click Next.
10. On the Role Hierarchy page, delete all role hierarchies except for these.
Use the Role Hierarchy page to specify other job roles that the job role you're creating can access. A role
hierarchy is a hierarchy that species other job roles that a job role references.
For example, here's the predened role hierarchy that the Order Entry Specialist job role uses.
170
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Item Inquiry
For details about the role hierarchy that each predened job role uses, see the Security Reference for Order
Management book.
11. Click Next.
12. On the Users page, click Add User.
13. In the Add User dialog, search for Yu Li, wait for the results to display, click Add User to Role > OK in the
conrmation dialog, then click Cancel.
14. Click Next > Save and Close.
Aribute Value
The search results display the data access you set up for Yu, including for the Order Entry Specialist role where
you added Yu as a user on the User Accounts page, and the other job roles you specied when you created the
Order Entry Specialist View Only job role, and then assigned to Yu.
4. Click Authorize Data Access.
5. In the Opening SecurityDataAccessTemplate.xls dialog that displays, accept the Open With option, then click
OK.
Microsoft Excel opens.
6. Edit in Microsoft Excel.
◦ In Microsoft Excel, in the Connect dialog, click Yes.
◦ On the Login page, sign in with the IT Security Manager job role (ora_fnd_it_security_manager_job).
◦ In the Authorize Data Access for Users template that displays, verify that the template includes the
security contexts that Yu needs for view access.
Data access set li. yu@yourComany. com Order Entry Specialist View Only
171
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Asset book li. yu@yourComany. com Order Entry Specialist View Only
Business unit li. yu@yourComany. com Order Entry Specialist View Only
Control budget li. yu@yourComany. com Order Entry Specialist View Only
Cost organization li. yu@yourComany. com Order Entry Specialist View Only
Intercompany organization li. yu@yourComany. com Order Entry Specialist View Only
Manufacturing plant li. yu@yourComany. com Order Entry Specialist View Only
Inventory organization li. yu@yourComany. com Order Entry Specialist View Only
Project organization classication li. yu@yourComany. com Order Entry Specialist View Only
Reference data set li. yu@yourComany. com Order Entry Specialist View Only
◦ In the Security Context Value column, in the rst row that contains data, right-click the cell, then click
Invoke Action.
Caution: Use this action instead of manually entering text. This action searches the Oracle
database for the data access sets you can use. If you manually enter text, and if your text
doesn't exactly match text that the database contains, then the upload will fail.
◦ In the Select Security Context Value dialog, set the value, then click Search.
Aribute Value
◦ In the search results, click the row that includes Vision Operations, then click OK.
Notice that Excel adds Vision Operations to the cell you selected in the Security Context Value column.
◦ Repeat the above steps for each of the other rows that contain data.
For example, for the row that contains Asset Book, set value Security Context to an asset book.
172
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
◦ In the command ribbon that displays across the top of Excel, click Authorize Data Access for Users >
Upload.
◦ Wait for the upload to nish, then verify that the Status column displays Successfully Uploaded for each
row.
◦ Click Status Viewer, then verify that the Status View displays No Error.
◦ Sign out.
7. Sign into Order Management with the IT Security Manager job role.
Retrieve Latest LDAP Changes Synchronizes users, roles, and role grants with the denitions that exist in LDAP (Lightweight
Directory Access Protocol ) that Order Management uses to determine who can access the
Order Management work area.
Related Topics
• Overview of Multiple Business Units in Sales
173
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Assume one of your users release a sales order for shipping. The job role that this user uses must reference the duty
roles that allow Order Management to call the shipping system and to receive details about the shipment from the
shipping system. In this example, you must assign a job role that references these duty roles.
For details about job roles, duties, and how to set them up, see Oracle SCM Cloud Security Reference for Order
Management on Oracle Help Center at hps://docs.oracle.com/en/cloud/saas.
Order Entry Specialist • Create new sales orders, update existing sales orders, and create return sales order.
• Create sales orders in the Order Management work area or modify sales orders that you
import from a source system.
• Monitor order fulllment.
• Work directly with customers who purchase items.
Order Manager • Manage sales orders created in the Order Management work area or that you import
from a source system. Makes sure Order Management books sales orders so they can
proceed to order fulllment.
• Approve sales orders that require approval.
• Work with other professionals in the organization, such as pricing administrator,
customer contract manager, credit manager, and accounts receivable manager, to help
determine set up requirements and troubleshoot problems.
Order Administrator • Set up and maintain Order Management Cloud so it supports order entry and order
fulllment.
Supply Chain Application • Set up rules, policies, constraints, and so on. For example, set up defaulting rules, order
Administrator entry preferences, order entry privileges, orchestration processes, change order rules,
process planning, jeopardy conditions, order statuses, and hold denitions.
• Set up orchestration.
174
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Duty Roles
Here are the duty roles that allow Order Management to communicate with a system that resides outside of Order
Management Cloud. The Description column describes the communication that the web service provides.
Order Orchestration Decomposition Communicate with source systems so Order Management can separate source orders during
Web Service Duty transformation.
Orchestration Order Activity Communicate with a fulllment system that can process an activity.
Management Web Service Duty
Orchestration Order Billing Web Communicate with a system that processes the billing for each sales order.
Service Duty
Orchestration Order External Allow a system that resides outside of Order Management Cloud to call Order Management
Integration Web Service Duty Cloud.
Orchestration Order Fulllment Web Allow a fulllment system to send status updates to Order Management through a task service.
Service Duty
Orchestration Order Inquiry Web Extract order details from a sales order.
Service Duty
Orchestration Order Template Web Allow a fulllment system to send status updates for fulllment tasks through a task service.
Service Duty
Integrate Social Objects from Order Management Into Oracle Social Network
Use the Order Manager or the Order Orchestration error recovery role.
Copy Setups
Copy Setups Between Instances of Order Management
Copy your setup from one instance of Order Management into another instance during the lifecycle of your Order
Management deployment. For example, migrate your setup from a test environment to a production environment.
175
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Use the Manage Conguration Packages page in the Setup and Maintenance work area to export and import a
conguration package.
• Here are the types of business rules that the copy migrates.
◦ Pretransformation.
◦ Product transformation.
◦ Posransformation.
◦ Process assignment .
◦ External interface routing.
◦ Approval. For details, see the Copy Approval Rules Between Instances of Order Management topic.
• You can use WebLogic Scripting Tool (WLST) commands to move order orchestration rules. Order Management
stores order orchestration rules in the Metadata Services (MDS) Repository. You can also use data collection
and interface tables to import your setup and your transaction data. For details, see the Importing and
Exporting Setup Data section in Implementing Common Features for Oracle SCM Cloud on Oracle Help Center.
• The migration adds hold codes that you set up in the source instance to hold codes that exist in the target
instance. If the same hold codes exist in the source and target, then the holds in the source replace the holds in
the target.
• The migration doesn't migrate holds that apply a credit check hold or release a credit check hold.
Aribute Value
Name Choose the name of the implementation project that denes the source instance.
7. On the Select Objects for Export page, accept default values, then click Next.
The Select Objects for Export page comes predened to select the objects that the export needs to support
most instances of Order Management. For details about the objects you can export, see the Copy Setup Data
Between Instances of Order Management topic.
176
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
8. On the Schedule and Notications page, accept the default value, click Submit, then, in the Warning dialog,
click Yes.
Aribute Value
9. On the Manage Conguration Packages page, examine results in the elements, then sign out.
Element Description
Export Setup Data buon Export a conguration package after you create it. The export identies setup data according
to the export denition and adds it to the conguration package.
Export a conguration package more than one time. Each export creates a dierent
conguration package version that you can manage individually.
Download Latest Version Download the most recent version of the conguration page.
Export and Import Processes area Get details of the export or import for each conguration package.
Setup Data Report View or download a report that contains the setup data exported to the conguration
package, including the business objects processed and details about errors that occurred.
◦ Adds setup data that doesn't already exist in the target conguration package. It adds setup data from
the source conguration package into the target conguration package.
177
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
◦ Updates setup data that already exists in the target package with modications from the source package.
◦ Doesn't delete existing setup.
◦ Doesn't modify setup that exists in the target instance but not in the source instance.
8. Restart the server that hosts the target instance.
Deploy Flexelds
You must deploy each exeld that you import.
Get details.
• How to handle objects that aren't exelds after the import, see the Importing and Exporting Setup Data
section in Implementing Common Features for Oracle SCM Cloud on Oracle Help Center.
• Flexelds, see the Deploy Extensible Flexelds in Order Management topic.
Deploy exelds.
1. In the Setup and Maintenance work area, go to the task.
◦ Oering: Order Management
◦ Functional Area: Orders
◦ Task: Manage Order Extensible Flexelds
2. On the Manage Order Extensible Flexelds page, identify each exeld where the deployment status isn't
Deployed, then deploy it.
3. Repeat steps 1 and 2 on each of these pages, as necessary.
◦ Manage Item Revision Descriptive Flexelds
◦ Manage Units of Measure Descriptive Flexelds
◦ Manage Item Descriptive Flexelds
◦ Manage Item Revision Descriptive Flexelds
◦ Manage Item Relationship Descriptive Flexelds
◦ Manage Trading Partner Item Descriptive Flexelds
◦ Manage Catalog Descriptive Flexelds
◦ Manage Category Descriptive Flexelds
◦ Manage Source System Descriptive Flexelds
◦ Manage Order Descriptive Flexelds
◦ Manage Pricing Descriptive Flexelds
4. Sign into Oracle Enterprise Manager.
For details about Oracle Enterprise Manager, see hps://www.oracle.com/technetwork/oem/enterprise-
manager/overview/index.html.
5. In the navigation tree, select SOA Infrastructure, then click UpdateSOAMDS.
6. On the UpdateSOAMDS page, set values.
Aribute Description
178
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Aribute Description
Value
Specify the time frame that has elapsed since the last time you deployed the exelds. Use
This Value aribute resides in a row this format.
in the Input Arguments area, in Tree
View. The value for Name in the PXMYD
row is *payload, and the Type is
duration.
where
For example, if one month and one day have elapsed since the last time you deployed
exelds, then use this format.
P1M1D
You can specify only the month, only the days, or months and days.
7. Run the UpdateSOAMDS composite to synchronize SOA (Service Oriented Architecture) with exelds in Order
Management.
8. In Order Management, in the Navigator, click Scheduled Processes.
9. On the Scheduled Processes page, click Schedule New Process, then run the Publish Extensible Flexeld
Aributes scheduled process.
Related Topics
• Deploy Extensible Flexelds
• Export Setup Data Using Implementation Project
• Import Setup Data Using Implementation Project
Collect Reference Data and Transaction Data for Order Orchestration and Order Promising
The order orchestration and planning data repository includes the data that Order Management needs to orchestrate
sales order fulllment and that Global Order Promising needs to promise sales orders. Use data from your source
system or from an Oracle Fusion source system to populate the repository.
Specify the source system and maintain data collection parameters for the source system. Collect data from
applications.
Application Description
Order Management
Collect data.
• Oracle Fusion data. Including nonproduct and noncustomer reference entities for
validation and cross-reference
179
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Application Description
You must refresh Global Order Promising after you collect data to make sure it uses the data you most recently
collected.
Use pages in the Setup and Maintenance work area to manage source systems and collect data.
Page Description
Manage Orchestration Source Manage an orchestration source system and collection parameters so you can use it to collect
Systems data.
Manage Orchestration Data Manage orchestration reference data from other source systems. Specify whether to enable
Collection Processes cross-referencing for various entities, such as Currencies, Units of Measure, and so on.
Review Orchestration Collected Data Examine the data that you collected from other source systems for order orchestration.
Manage Planning Source Systems Manage planning source systems and collection parameters so you can use it to collect data.
Manage Planning Data Collection Manage planning data from a source system.
Processes
Review Planning Collected Data Examine the data that you collected from other source systems.
Monitor Planning Data Collection Monitor the planning data collection work that's currently running or that completed.
Process
180
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Setup Description
Item Setup • Export and import a conguration package to copy item setup data, such as item
organization, item class, item catalog, item category, item lifecycle phase, and so on.
• Use item interface tables to copy items, item structures, and item relationships.
• Use the Import Items page and Monitor Item Imports page to manage item imports.
Party Setup • Export, then import a conguration package to copy party setup data, such as party
relationship type, party classication, geography lookup, trading community source
system, and so on.
• Use party interface tables to copy parties.
• Use the Import Persons and Organizations page to manage party imports.
Security Setup Use commands in Lightweight Directory Access Protocol (LDAP) to copy job roles. For
assumptions, prerequisites, and procedures, see Moving Security Artifacts in the Identity Store
in Oracle Fusion Applications Administrator Guide.
• Article Id 1334059.1 (Oracle Fusion PIM, Pros and Cons of Item Import Methods and Performance
Considerations)
• Article Id 1279983.1 (Oracle Fusion PIM, Importing Data into PIM Hub, Generic Examples of Steps)
• Article Id 1299158.1 (Example SQL To Import Items into Oracle Fusion Product Information Management Using
Open Interface Tables)
• Article Id 1393229.1 (Oracle Fusion PIM, Item Import, Example SQL Code Scripts)
• Article Id 1334525.1 (Oracle Fusion PIM: Explanation of Fields in ADFdi Template for Structure Import)
• Article Id 1383922.1 (Oracle Fusion Trading Community Bulk Import)
Export and import business objects in the Supply Chain Management family.
181
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Advanced Supply Chain Manage Enterprise Scheduler Manage Oracle Enterprise Enterprise Scheduler Job List
Planning Jobs for Advanced Planning Scheduler jobs and their list of of Values Source
Applications values sources for Advanced
Planning applications, such as
Global Order Promising.
Advanced Supply Chain Manage Global Order Manage prole options and Application Prole Value
Planning Promising Prole Options values to control Oracle Fusion
Global Order Promising, such
as page display defaults or
timeout parameters.
Order Management Generate Constraint Package Create a dynamic package Orchestration Change
that activates new validation Constraint
rule sets for processing
constraints.
Order Management Manage Constraint Entities Manage the entities to use Orchestration Change
when applying constraints. Constraints Object
Order Management Manage Enterprise Scheduler Manage jobs for Oracle Enterprise Scheduler Job List
Jobs for Order Orchestration Enterprise Scheduler and the of Values Source
sources that these jobs use
for lists of values in Order
Management.
Order Management Manage Hold Codes Manage the abbreviations that Orchestration Hold Code
Order Management uses to
hold processing for a sales
order or order line.
Order Management Manage Jeopardy Priorities Manage score codes that Orchestration Jeopardy
indicate the severity of the Priority
delay of a task.
Order Management Manage Jeopardy Thresholds Manage jeopardy threshold Orchestration Jeopardy
denitions that determine Threshold
the degree of action to take
when orchestration highlights
potential or actual fulllment
issues because of delays.
182
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Order Management Manage Order Lookups Manage lookup values for Application Standard Lookup
order orchestration, such
as Return Reason Code or
Activity Type.
Order Management Manage Orchestration Process Manage denitions that Orchestration Process
Denitions specify how to perform
orchestration processing.
Order Management Manage Orchestration Proles Manage prole denitions Application Prole Value
to specify how orchestration
processes data.
Order Management Manage Order Aributes That Manage the aributes Orchestration Change
Identify Change necessary to identify changes Aribute
in each sales order.
Order Management Manage Processing Manage the rules that control Orchestration Change
Constraints aempted changes to order Constraint
orchestration.
Order Management Manage Status Values Manage status values for Orchestration Status Code
tasks.
Order Management Manage Task Status Manage the process status Orchestration Status
Conditions conditions that indicate when
the process uses a status.
Specify these conditions when
you dene the orchestration
process.
Order Management Manage Task Types Manage the task types that Orchestration Task
group tasks and services for
status management, jeopardy,
orchestration processes, and
run time behavior.
Global Order Promising Manage Order Promising Manage prole option seings Application Prole Value
Server Prole Options and values to control Oracle
183
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Inventory Management Manage Enterprise Scheduler Manage Oracle Enterprise Enterprise Scheduler Job List
Jobs for Logistics Common Scheduler jobs and their list of Values Source
Applications of values sources for Logistics
Common Components.
Inventory Management Manage Units of Measure Manage units of measure Unit of Measure
that your organization uses
to identify the quantity of an Unit of Measure Class
item.
Unit of Measure Interclass
Conversion
Unit of Measure Intraclass
Conversion
Product Model Create Catalog Create an item catalog, and Item Catalog, Item Category
add aachments and images.
Product Model Manage Enterprise Scheduler Manage Oracle Enterprise Enterprise Scheduler Job List
Jobs for Product Management Scheduler jobs and their list of Values Source
Common Applications of values sources for Product
Management Common
Components.
Product Model Manage Default Catalogs Manage catalog assignments Functional Area Item Catalog
for functional areas.
Product Model Manage Default Item Class Manage the root item class. Item Class
Product Model Manage Item Organizations Manage item organization Item Organization
structures to use in standalone
application deployments with
Oracle Fusion Product Model.
Each structure contains
details about the parent item,
components, aachments,
and descriptive elements.
Product Model Manage Key Flexeld for Manage key exeld Application Key Flexeld
Catalogs segments for each catalog and
the validation to use for the
catalog classication key. You
must dene the catalog key
exeld to make sure Oracle
Fusion Product Model works
as expected.
184
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Product Model Manage Lifecycle Phases Manage the phases of each Item Lifecycle Phase
item lifecycle.
Supply Chain Management Manage Data Security Policies Manage grants of entitlement Application Data Security
Common Components for each user or role on an Policy
object or aribute group
according to a condition.
Common Family
Export and import business objects in Oracle Middleware Extensions for Applications in the Common family.
Manage Administrator Prole Values Manage prole option seings and values Application Prole Value
to control application behavior.
Manage Applications Manage prole option seings and values Application Prole Value
to control Oracle Middleware Extensions
Core Administrator Prole Values for Applications behavior.
Manage Applications Core Aachment Manage aachment categories for Oracle Application Aachment Category
Categories Middleware Extensions for Applications.
Manage Applications Core Aachment Manage aachment entities for Oracle Application Aachment Entity
Entities Middleware Extensions for Applications.
Manage Applications Core Descriptive Manage descriptive exelds for Oracle Application Descriptive Flexeld
Flexelds Middleware Extensions for Applications.
Manage Applications Core Messages Manage messages for Oracle Middleware Application Message
Extensions for Applications.
Manage Applications Core Prole Manage categories to group prole Application Prole Category
Categories options in Oracle Middleware Extensions
for Applications according to their
functional area. Use categories to search
for related proles and to dene data
security rules.
Manage Applications Core Prole Options Manage prole options that aect Oracle Application Prole Value
Middleware Extensions for Applications
behavior, and specify the levels at which
they can be set.
185
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Manage Applications Core Standard Manage lookup values for Oracle Application Standard Lookup
Lookups Middleware Extensions for Applications.
Manage Applications Core Value Sets Manage value sets for Oracle Middleware Application Flexeld Value Set
Extensions for Applications.
Manage Aachment Categories Manage categories for aachments for Application Aachment Category
security purposes.
Manage Aachment Entities Manage the default repository folders to Application Aachment Entity
use when storing aachments for each
application entity.
Manage Common Lookups Manage lookups that are common across Application Common Lookup
applications and used in the common
lookup views.
Manage Data Security Policies Manage grants of entitlement to each Application Data Security Policy
user or role on an object or aribute group
according to a condition.
Manage Descriptive Flexelds Manage segments, validation, and display Application Descriptive Flexeld
properties of descriptive exelds that you
use to store details about an enterprise
that Order Management doesn't typically
store.
Manage Document Sequence Categories Manage categories that group documents Application Document Sequence Category
for sequencing purposes.
Manage Document Sequences Manage document sequences to create Application Document Sequence
an audit trail that identies the application
that created the transaction.
Manage Extensible Flexelds Manage segments, validation, and display Application Extensible Flexeld
properties of extensible exelds that you
use to store details about an enterprise
that Order Management doesn't typically
store.
Manage ISO Languages Manage ISO languages. Application Reference ISO Language
186
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Manage Key Flexelds Manage key exeld segments and Application Key Flexeld
validation. You must dene most key
exelds so that the applications work as
expected.
Manage Messages Manage messages that you use in each Application Message
application.
Manage Natural Languages Manage natural, spoken languages. Application Reference Natural Language
Manage Prole Categories Manage categories that group prole Application Prole Category
options according to functional area. Use
categories to search for proles and to
dene data security rules.
Manage Prole Options Manage prole options that aect Application Prole Value
application behavior, and specify the
levels at which they can be set.
Manage Reference Data Sets Manage sets for separating and sharing Application Reference Data Set
reference data across organizations.
Manage Set Assignments for Set Manage reference data set assignments to Application Reference Data Set
Determinant Type determine the type of set. Assignment
Manage Set Enabled Lookups Manage lookups with codes that vary Application Set-Enabled Lookup
depending on the value of the reference
data set determinant and are exposed in
the set-enabled lookups view.
Manage Standard Manage lookups that are common across Application Standard
applications and used in the lookups view.
Lookups Lookup
Manage Taxonomy Hierarchy Manage the hierarchy of functional units Application Taxonomy
that make up Oracle Fusion Applications,
from product families and applications to
functional components.
Manage Time Zones Manage time zones. Application Reference Time Zone
187
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Manage Tree Labels Manage the labels to use as tags for tree Application Tree Label
nodes.
Manage Tree Structures Manage tree structures to group common Application Tree Structure
business rules for a family of trees.
Manage Trees and Tree Versions Manage trees to contain data in a Application Tree
hierarchy, allowing the user to group and
consolidate details that already exist in an
organization.
Manage Value Sets Manage value sets to validate the content Application Flexeld Value Set
of a exeld segment.
Register Descriptive Flexelds Register the existence of descriptive Application Descriptive Flexeld
exelds on a table.
Set Activity Stream Options Set options that determine the types of Application Activity Stream Conguration
activities to display in the Activity Stream
regions in Oracle Fusion Applications.
Export and import business objects in the Transactional Business Intelligence application in the Business Intelligence
family.
Congure Descriptive Flexelds for Specify validation and display descriptive Application Descriptive Flexeld
Transactional Business Intelligence exeld properties for Transactional
Business Intelligence. Use descriptive
exelds to add modied aributes to
entities.
Congure Key Flexelds for Transactional Specify the key exeld segments and Application Key Flexeld
Business Intelligence validation to use as classication keys
for Transactional Business Intelligence.
You must specify these exelds so
Transactional Business Intelligence works
as expected.
Export and import business objects in the Customer Relationship Management family.
188
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Marketing Manage File Import Mappings Manage mappings between File Import Mapping
columns in a source le in a
source system and columns
in a staging table in Order
Management. Use these
mappings when you import
business objects, such as sales
leads, customers, contacts, or
sales catalogs.
Marketing Manage File Import Objects Manage business objects, File Import Object
such as sales leads and
opportunities, that you can
import from a le.
Trading Community Model Enable Click to Dial Enable automated dialing Application Prole Value
when clicking a phone
number.
Trading Community Model Manage Geography Lookups Manage lookup values that Application Standard Lookup
provide choices related to
geographies, such as dierent
ways to validate an address.
Trading Community Model Manage Import Lookups Manage lookup values that Application Standard Lookup
provide choices about data
import batch processing,
such as batch status, batch
identier, batch conguration,
or process status.
Trading Community Model Manage Source System Manage elds the user can Application Descriptive
Descriptive Flexelds use to enter details. Validate Flexeld
descriptive exelds according
to values that the user enters
in other areas of the page.
Trading Community Model Manage Source System Manage entity associations for Trading Community Original
Entities source systems. For example, System Mapping
use one source system to
import customer data, and use Trading Community Source
another to import customers System
and contacts.
Trading Community Model Manage Source System Manage lookup values that Application Standard Lookup
Lookups provide choices related to the
source system model, such as
original system type.
Trading Community Model Manage Trading Community Manage the source system for Examine and dene the types
Source Systems a trading community. of information imported for
each source system
189
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Export and import business objects in the Human Capital Management family.
Global Human Resources Manage Enterprise HCM Manage details about the Enterprise
Information enterprise, such as details
about the default work day.
Global Human Resources Manage Locations Manage locations for your Location
enterprise. For example,
create the locations where
people work or the locations
of your external organizations.
Financials Family
Export and import business objects in the Financials Common Module application in the Financials family.
Manage Business Unit Manage details about enterprise units Business Unit, Business Unit Detail
to provide a consistent entity so you
can control and report on transactions,
and to share reference data sets across
applications.
Manage Business Unit Set Assignment Manage reference data that represents Business Unit Set Assignment
business rules and policies. Assign this
data to business units.
ATF Family
Export and import business objects in the Application Toolkit application in the ATF family.
190
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
Manage Help Security Groups Manage security groups that you Application Data Security Policy
associate with help to determine who can
access it. Associate each group with a Application Standard Lookup
duty role. This page creates lookup codes,
database resource conditions, and data
security policies that you can edit.
Map Reports to Work Areas Select the reports that display in the Reports and Analytics Mapping
Reports and Analytics area in Oracle
Fusion Applications work areas.
Set Help Options Set options for help features, such as Help Conguration
collaboration, access to external web sites,
seings for modied help content, or Help Topic
access to an Oracle User Productivity Kit
library.
Set Watchlist Options Specify the Watchlist categories and items Watchlist User and Site Preference
that are available at your site.
Export and import business objects in GRC Application Access Controls Governor application of the Governance Risk
and Compliance family.
Manage Application Access Controls Manage rules and resolve issues regarding Governance Risk and Compliance Setup
access in an application. Conguration
Manage Application Conguration Manage rules and resolve issues regarding Governance Risk and Compliance Setup
Controls congurations in an application. Conguration
Manage Application Preventive Controls Manage rules regarding how users Governance Risk and Compliance Setup
interact in an application. Conguration
Manage Application Transaction Controls Manage rules and resolve issues regarding Governance Risk and Compliance Setup
transactions in an application. Conguration
191
Oracle SCM Cloud Chapter 2
Implementing Order Management Implement Business Process Flows
192
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
3 Integrate
Introduction
Overview of Integrating Order Management
Use web services to integrate Order Management with other applications and systems.
Order Management comes predened with integrations to other Oracle cloud services so you can use fulllment
processes that require minimal set up to get them up and running in your environment.
For example, Order Management and Oracle Fusion Inventory Management work together to fulll each sales order that
an Order Entry Specialist enters in the Order Management work area or that you import from a source system.
193
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Use a web service to integrate with some other Oracle application, a third-party cloud application, or an on-premise
application that your supply chain uses to complete the order-to-cash process. Here are some ideas.
Note.
Integration Description
Integrate with cloud processes. Integrate cloud processes, including order-to-cash, drop-ship, back-to-back, congure-to-
order, or internal orders.
The integration includes predened processes and simplied set up.
194
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Integration Description
Inventory, shipping, receiving, nance, and order management are each an example of a
fulllment system.
Here are some examples of the functionality you can implement through integration.
Related Topics
• Fix Connection Problems with Source Systems
195
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Get details.
Business Event Integrate your business processes to Overview of Using Integration Cloud
operate across applications in the cloud or Service to Integrate Order Management
on premise.
Web Service Integrate with some other Oracle Overview of Using Web Services to
application, a third-party cloud Integrate Order Management.
196
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Order Management Extension Write your own Groovy script that Overview of Seing Up Extensions That
modies your Order Management Modify Order Management
deployment, implements your own
functionality, and species the extension
point that determines when to run this
script.
File Based Data Import Use an Excel le to simplify order import. Overview of Importing Orders into Order
This le contains a structure that the Management
Oracle database requires for each
database table.
197
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
1. Use the import web service, le-based data import, or B2B messaging (business-to-business) to import source
orders from your source system into Order Management.
2. A step in your orchestration process starts the integration. Order management assigns each source order to an
orchestration process. The orchestration process orchestrates fulllment for each fulllment line. You add an
integration step that integrates the orchestration process with your fulllment system.
3. Web service endpoints identify each of your fulllment systems that reside outside of Oracle Fusion.
4. Routing rules specify the conditions to use when determining how to route each fulllment line to each
connector.
198
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
5. Order Management creates a service data object (SDO) and sends a request that includes the SDO payload. The
SDO contains details about the endpoint, connector to use, fulllment lines, and so on.
6. A connector web service transforms the SDO payload into a message payload that your fulllment system
can understand, and then calls the fulllment system. You can create a separate connector for each of your
fulllment systems.
Add one or more of these privileges to an abstract role. These privileges allow you to call web services that provide a
response from your fulllment system.
Add each role to the user that you use to call the web service. For example, if your integration manages shipping details,
then add privilege Manage Orchestration Order Shipping Interface Web Service.
Add the Manage Order Specialist duty role for an upstream integration to your source system, for example, for order
import.
For details about job roles, duty roles, and how to set them up, see book Oracle SCM Cloud Security Reference for Order
Management on Oracle Help Center.
199
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Use the Manage Task Type page in the Setup and Maintenance work area to set up the task type.
Note.
Add the step in your orchestration process that integrates with your fulllment system.
200
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
1. Add the step at the point in your orchestration process where you must integrate. This example integrates after
the orchestration process nishes the schedule, promise, reserve, and ship tasks, but before the invoice task.
2. On the integration step, set the Task Type aribute and the Task aribute to the task type you set up on the
Manage Task Types page.
3. Set the Service aribute to the service you set up on the Services tab of the Manage Task Types page.
For details, see the Set Up Orchestration Processes topic.
201
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
In the Setup and Maintenance work area, search for Manage External Interface Web Service Details, then use the
Manage Connector Details page to specify how to connect to your fulllment system.
Note.
https://server:port/7818/soa-infra/services/default/ConfirmDelivery
To make sure the connection is secure, use hps in the URL. Don't use hp.
202
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Use the User Name and Password aributes to specify the name and password you use when you sign into
fulllment system 3. In this example, assume you set up a user named myName on System 3.
◦ Use a user name that works with an SSL security policy (secure sockets layers) that you set up on your
fulllment system.
◦ Make sure the user name and password you specify are valid on your fulllment system. Use them to
verify that you can successfully sign into your fulllment system. Note that this name isn't the name you
use to sign into Oracle Fusion.
◦ Use CA signed certicates (certication authority) on your fulllment system and on the connector.
• For details, see the Manage Connector Details That Integrate Order Management with Fulllment Systems
topic.
For example.
• If you use this connector to communicate a business event, then set the Keystore Recipient Alias aribute to
NA, and set the Invocation Mode aribute to Business Event.
203
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• If you use this connector with a web service, then set Invocation Mode to Asynchronous Service or
Synchronous Service.
Create the rule that routes the orchestration process to the connector you just created.
Note.
1. Use Visual Information Builder to create the rule. For details, see the Overview of Using Business Rules With
Order Management topic.
2. Add an If statement to determine whether the task type matches the type you specied in the Task Type
aribute on the orchestration process step.
204
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
3. Add a Then statement to set the Connector Name aribute to the connector you created earlier that connects
to your fulllment system.
4. Add a Then statement to set the Interaction Interface Type aribute. Recall from the ow that order
orchestration uses an SDO payload to communicate with your fulllment system. You must use Service Data
Object for any new implementation. Use other values only for backward compatibility to an earlier Oracle
Fusion release.
Summary
205
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
More Guidelines
• Set up status behavior. Order Management typically sends statuses for each fulllment line to your fulllment
system throughout the order fulllment lifecycle. In return, your fulllment system can send status updates to
Order Management. You can set up this behavior. For details, see Orchestration Process Status topic.
206
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Determine whether you must add a wait step. For example, if a task occurs almost instantly, as with credit
check, then you typically don't need a wait step. However, a task that requires a long time to nish typically
does require a wait step to allow the orchestration process to pause for the task to nish. For details, see the
Overview of Pausing Orchestration Processes topic.
• Set up failure logic. For example, if a task fails, then it goes into error recovery and you must retry or recover
the task.
Assume your analysis determines you must allow an Order Manager to override a delivery conrmation that
fails and allow processing to continue. You can set up an extensible exeld that allows the Order Manager to
record the results of the transaction, then set up a pause task that uses the contents of the exeld to allow the
process to release the pause and continue to the next step.
• Use business events and web services with Integration Cloud Service. For details, see the Overview of Using
Integration Cloud Service to Integrate Order Management topic.
• Use Order Management Extensions. For details, see the section about calling web services in the Guidelines for
Seing Up Order Management Extensions topic.
207
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
• To avoid logic problems, make sure rules are mutually exclusive. Make sure no two rules can be true at the
same time, or false at the same time. For details, see the Guidelines for Creating Business Rules topic.
• Consider other aributes you can set.
◦ To aggregate fulllment lines before you send them to your fulllment system, use the Maximum Lines
to Aggregate and Send aribute and the Maximum Time to Wait Before Sending aribute. Run several
tests and adjust these values after each test until you achieve the optimal balance between waiting and
performance.
208
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ Use other aributes to control processing, as necessary, such as Resolve Cross-Reference for Customer
to determine whether to use a cross-reference, or Set Acknowledgement Timeout to determine how long to
wait before exiting out of an implicit wait during an interaction with your fulllment system.
For details, see the Actions You Can Set in Routing Rules topic.
• Use Perform an Action. Avoid using Set a Value. Perform an Action automatically lters aributes and values
for you to help make sure you specify values that the rule can understand.
Order Fulllment Response Service Overview of Using Integration Cloud Service to Integrate Order Management
Identify the hosts and ports you will use to access your payloads. In the navigator, click Setup and Maintenance, click
Tasks > Review Topology. For details, see the Identify Hosts and Ports for Your Order Management Implementation
topic.
For example.
• If you use Oracle Application Development Framework (ADF), then use the host and port for FSCMServices.
209
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• If you use Oracle Service-Oriented Architecture (SOA), then use the host and port for FASOA (Oracle Fusion
Applications, Service-Oriented Architecture).
If you use Service-Oriented Architecture, then set up the payload for the FulllmentResponse service.
The payload that your fulllment system sends must include these aributes.
<ns2:FulfillLineId>Id number</ns2:FulfillLineId>
<ns2:SourceOrderSystem>system name</ns2:SourceOrderSystem>
For example.
<ns2:FulfillLineId>300100072403436</ns2:FulfillLineId>
<ns2:SourceOrderSystem>GPR</ns2:SourceOrderSystem>
where
• 300100072403436 is the fulllment line Id.
• GPR is the source order system. Order Management typically uses the phrase source order to refer to an order
that resides in an upstream order capture system. However, in this instance, SourceOrderSystem means any
system that provides input details to FulllmentResponse.
As an option, you can also send other aributes, such as ShippedQuantity, according to your business requirements.
Order Management needs SourceOrderSystem so it can get the user name, password, and Keystore Recipient Alias
from the Manage Connector Details page and use them when it sends a reply to your order fulllment system. It uses
SourceOrderSystem to search the list of connectors on the Manage Connector Details page. It searches the list in
alphanumeric order, and chooses the rst connector it nds where the value in the Target System aribute matches the
value in SourceOrderSystem. Make sure you add your connectors and name them so Order Management uses the one
you need.
210
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Assume SourceOrderSystem contains OrderCapture1, and the Manage Connector Details page contains three
connectors.
Order Management will use the Administrator1 user, password, and Keystore Recipient Alias from the row for My
Connector A.
If you use Application Development Framework, then set up the payload for the Order Fulllment Response service.
211
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
The payload that your fulllment system sends must include these aributes.
<com:IntegrationContextCode>context_code</com.IntegrationContextCode>
<com:FulfillmentSystem/>
<com:FulfillLineIdentifier>numeric_value</com:FulfillLineIdentifier>
<com:TaskInstanceStatusCode>status_code</com:TaskInstanceStatusCode>
For example.
<com:IntegrationContextCode>DOO_TransportationPlanning</com.IntegrationContextCode>
<com:FulfillmentSystem/>
<com:FulfillLineIdentifier>3001000071295736</com:FulfillLineIdentifier>
<com:TaskInstanceStatusCode>DOO_TP_DELIVERED</com:TaskInstanceStatusCode>
where
212
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
You integrate an extensible exeld with your fulllment system the same way you integrate it during order import. The
only dierence is that instead of modifying the XSD le that you use during order import, you modify the XSD le that
you use when you integrate with your fulllment system. For details, see the section that describes how to integrate
with web services during order import in the Guidelines for Using Extensible Flexelds in Order Management topic.
Enable Cross-References
You must create and maintain cross-references and domain value maps that relate business data between your
fulllment system and Order Management Cloud. Use the Manage Planning Source Systems page as part of this set up.
213
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Related Topics
• Fix Connection Problems with Source Systems
Web Services
Overview
Web Services You Can Use to Integrate Order Management
Use Order Import Service, Receive Order Request Web Service, or Order Information Service to integrate Order
Management with other systems.
Here are some examples of other systems you can integrate.
• Channel
• Legacy
• Quoting
• Contract
• Service request
• Purchasing
• Inventory
• Warehouse
• Shipping
• Invoicing
• Billing
214
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Create, read, update, and delete the same data that Oracle Applications use.
For example.
215
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Terminology
• Source system. An order capture system or application that sends the Order Request object to the Order
Import Service web service. For brevity, this document mentions only source system.
• Internal. An action, process, or object that resides in Order Management. A cross-reference that resides in
Order Management and Planning Repository is an example of an internal object.
• External. An action, process, or object that resides outside of Order Management . A source order that a source
system creates in an order capture system is an example of an external object.
• Source order. An order that a source system creates in an order capture system.
• Sales order. A source order that Order Management converts into a sales order so it can fulll the source order.
Starting with Release 12, use the Order Import Service web service instead of the Receive Order Request web service.
Order Management continues to support Receive Order Request in Release 12, but will retire it and no longer support it
in subsequent releases.
Order Import Service is a SOAP (Simple Object Access Protocol) service that uses Order Request Object as the payload.
Here are the details.
Details Description
Type Technical
Required No
Description This Service receives source orders from dierent channel systems.
Input OrderImportServiceRequest
216
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Details Description
Output OrderImportServiceResponse
Use the createOrders operation to import source orders from dierent channels into Order Management. Create a sales
order in draft mode or submit mode according to the SubmitFlag aribute in the payload.
Use the stageOrders operation to import orders from dierent channels to staging tables. You can then run a scheduled
process that imports data from interface tables, processes them, then imports each interface record into Order
Management as a sales order.
Use the SubmitDraftOrder operation to submit a draft sales order to order fulllment. For details, see the Service section
in book SOAP Web Services for Oracle Supply Chain Management Cloud, on Oracle Help Center.
Receive Order Request Service is a SOAP (Simple Object Access Protocol) service that uses Order Request Object as the
payload.
Where possible, use the Order Import Service web service instead of Receive Order Request Service to create a sales
order. Support for using Receive Order Request Service to create a sales order might end in a future release.
217
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Details Description
Type Technical
Required No
Description This service receives source orders from dierent channel systems.
Input ReceiveOrderServiceRequestMessage
Output ReceiveOrderServiceResponseMessage
IncludeHeaderAndLineAributesOnly Varchar2
Use one of these values.
218
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ LotSerialDetails
◦ Payments
◦ PriceAdjustments
◦ SalesCredits
◦ Projects
Related Topics
• Overview of Importing Orders into Order Management
Plan
Plan Your Integration
Requirement Description
Register source system. You must register each source system that sends the order request as a source system.
More than one source system might create a source order, so the web service stores details
that identify the source system on the order so it can track the source system that sends the
order.
The web service uses the source system during cross-referencing to determine the
corresponding internal identier or value that's specic to the source system.
Plan how you will synchronize You must synchronize customer master data before you import a source order.
customer master data.
If the customer on the order doesn't exist in the customer model in Oracle Fusion Trading
according to the CreateCustomerInformationFlag preference in the service schema, then Order
Management can create the customer details.
Plan for aributes in Oracle If you use Oracle Congure, Price, and Quote Cloud (CPQ), then CPQ sends details about the
Congure, Price, and Quote Cloud. aributes that Order Management requires to use this functionality, such as FreezePriceFlag,
FreezeShippingChargeFlag, FreezeTaxFlag, and so on.
Plan for pricing. You can send a source order that your upstream system already priced, or the web service can
price the source order for you.
219
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Requirement Description
If you use a predened implementation of Oracle Congure, Price, and Quote Cloud, then the
web service assumes the upstream system already priced the source order and won't allow
price changes in Order Management.
• If the source order is in draft status, then you must submit the sales order that
references the source order.
• Order Management won't run the orchestration process that fullls your sales order
until you submit it.
• If the web service creates the order in draft status, then you can submit it from the Order
Management work area, or you can use operation SubmitDraftOrder in the web service
to submit it.
• If you use SubmitDraftOrder, then you must add the payload that denes it.
The integration platform or Use the asynchronous operation because asynchronous is more resilient and fault tolerant
application that uses the service than synchronous. If the response from the fulllment system is delayed for some reason, then
supports an asynchronous service. an asynchronous operation can continue processing but a synchronous operation might time
out and go into an error state.
The platform or application doesn't Use synchronous as long as the number of lines in the sales order doesn't result in a timeout
support an asynchronous service, or after 300 seconds.
you prefer not to use asynchronous
because its more complex to If you use synchronous, and if a sales order times out, then you must make sure you set up
implement. your implementation to resubmit the sales order.
The Receive Order Request web service can accept only one sales order in the payload.
For details about input messages and output messages you can use with Order Import Service, see the Service section
in book SOAP Web Services for Oracle Supply Chain Management Cloud, on Oracle Help Center.
220
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Line LotSerial
• Line SalesCredit
• Line Payments
• Line Document References
• Line Aachments
• Line Transactional Item Aributes
• Charge
• Charge - Charge Components
◦ Order Preferences
221
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Response Payload
Make sure your integration can accommodate the response that Order Management sends. The response payload
returns a status.
Status Description
SUCCESS The response includes source keys and Order Management keys. It sends this response after
Order Management successfully creates the sales order.
222
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Status Description
223
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
To make sure the payload includes all the required details, the web service processes some aributes as a group. For
example, here are the aributes that the web service examines as a group to make sure the payload identies the
buying party.
1. BuyingPartyId
2. BuyingPartyName
3. BuyingPartyNumber
Here's the sequence that the web service uses when it processes each group.
1. Use the aribute that species the identier, such as BuyingPartyId.
2. If the aribute that species the identier is empty, then use the aribute that species the number, such as
BuyingPartyNumber.
3. If the aribute that species the number is empty, then use the aribute that species the name, such as
BuyingPartyName.
If the aribute that species the identier includes a value, then the web service will always use this value even if the
aributes that specify the name or number aren't empty.
If the payload doesn't include a value for the identier, name, or number, then your order import will likely fail.
Some aributes, such as ReturnReasonCode, store an abbreviation for a longer term. The abbreviation is typically text
that the user can view to quickly identify the meaning of a lookup value.
You can think of the value of this aribute as coded. A coded aribute typically includes a partner aribute. For
example, the ReturnReason aribute is the partner for ReturnReasonCode.
If you provide a value only for the coded aribute in the payload, then Order Management will use the value that the
database cross-references from the lookup value to the meaning. For example, it cross-references the RET lookup value
to the meaning for RET, which is Return.
Continuing this example, assume you set ReturnReasonCode=RET in the payload, and.
• You set ReturnReason="Return Order", then the web service will ignore this value and use the code. This
behavior is similar to using Identier when you don't supply the Name.
• You don't specify a value for ReturnReason, and if the value that the database cross-references to the meaning
is Return, then the web service will use Return for the reason.
The web service uses this logic for each of these sets of aributes.
AccountingRulecode AccountingRule
CancelReasonCode CancelReason
ChargeDenitionCode ChargeDenition
ChargeSubtypeCode ChargeSubType
DemandClassCode DemandClass
224
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
FOBPointcode FOBPoint
FreightTermsCode FreightTerms
InvoicingRuleCode InvoicingRule
OrderedUOMCode OrderedUOM
PaymentMethodCode PaymentMethod
PaymentTerm PaymentTermCode
RequestedFulllmentOrganizationCode RequestedFulllmentOrganizationName
RequestedSupplierCode RequestedSupplierName
ShipmentPriorityCode ShipmentPriority
ShippingCarrierCode ShippingCarrier
ShippingModeCode ShippingMode
ShippingServiceLevelCode ShippingServiceLevel
SubInventoryCode Subinventory
SubstitutionReasonCode SubstitutionReason
TaxExemptReasonCode TaxExemptReason
TransactionalCurrencyCode TransactionalCurrencyName
TransactionLineTypeCode TransactionLineType
225
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Use an aribute that includes the word Identier in the name to send the identier, such as Requesting Business Unit
Identier. If you send the identier and the value for the identier, then the web service uses the identier.
Master data includes customers and items. The source system can send dierent details, depending on whether it uses
the same master data and references data that Order Management uses.
• Uses the same data. The source system can send the Oracle identier or the values.
• Doesn't use the same data. The source system can send the identiers and values that it contains. Order
Import Service uses them as keys to look up the cross-reference, depending on whether the key references
customer data or product data. If the cross-reference resides in.
◦ Oracle Trading Community Model, then resolve it into Oracle customer data
◦ Oracle Fusion Product Model, then resolve it into Oracle product data
Each service typically uses a pair of synchronous and asynchronous operations. The service appends the operation
name with a value.
• Sync. The other operation in the pair is asynchronous.
• Async. The other operation in the pair is synchronous.
For example, GetOrderDetails and GetOrderDetailsAsync is a pair of services. GetOrderDetails is synchronous and
GetOrderDetailsAsync is asynchronous.
To modify a sales order, you call a web service with a payload that includes these details.
• Source transaction system
• Source transaction identier
• Order number and source transaction number of a sales order that Order Management already processed
The web service will process the order as a change order according to the combination of source transaction system
and source transaction identier.
• Use the same web service that you used to create the sales order. The payload structure for a change order is
similar to the payload structure for create order.
• Design your payload so it sends the modied value for each aribute.
• Make sure your payload includes all aributes for the order line that you modify.
• If you don't modify any part of an order line, then you can exclude the entire line from the payload.
To cancel a sales order or order line, you call the same web service that you use to create the sales order.
Cancel the entire sales order. Set the OperationCode for the order header to CANCEL. You must also identify the source
transaction system and include the source transaction identier.
226
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Cancel part of a shipped order line. Set the ordered quantity to the quantity that already shipped. For example, if the quantity on
the original order line is 10 Each, and if 7 shipped, and if 3 were back ordered, then set the
ordered quantity in the payload to 7 Each.
Make sure your payload also includes all other aributes from the original order line.
Consider an example.
Your customer needs a revised total 55 The quantity of 55 in the payload replaces
quantity of 55. the original quality.
40 already shipped, so order fulllment
cancels 45 of the 60 that are currently
awaiting shipping or backordered, leaving
15 that are still awaiting shipping or
backordered.
You must cancel the quantity that hasn't 40 The quantity of 40 in the payload replaces
shipped. the original quality.
Order fulllment cancels the 60 that
are currently awaiting shipping or
backordered.
227
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• oracle/wss11_saml_or_username_token_with_message_protection_service_policy
• oracle/wss_username_token_over_ssl_client_policy
• oracle/wss_username_token_over_ssl_client_policy LPA
Use these seings to call the web service only with SSL (Secure Sockets Layer).
Automate using les to import source orders. Oracle provides a set of web services you can use to upload the
completed import template to the server that hosts Oracle WebCenter Content. You then run a scheduled process that
imports the uploaded le to the interface tables, processes them, then imports each interface record as a sales order.
For details, see the book Using External Data Integration Services for Oracle ERP Cloud on My Oracle Support.
Here are the parameters you use when you run the scheduled process.
Parameter Value
JobDenitionName ImportOrdersJob
Related Topics
• Overview of Importing Orders into Order Management
Reference
Example Web Service Payloads That Integrate Order Management
Get some example payloads in xml les.
To download the xml les, click the link in the Related Topics section at the end of this topic.
228
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Description Payload
Include pricing.
single_line_priced_in_source_system.xml
single_line_priced_in_oracle_fusion.xml
Note.
Here are some more examples that use the Create Order operation.
Description Payload
229
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Description Payload
Related Topics
• Example Payloads
230
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For details about the aributes you must include in the order header and other child entities when you use the Order
Import service, see the Service section in book SOAP Web Services for Oracle Supply Chain Management Cloud, on
Oracle Help Center.
Optional Aributes
231
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
TransactionDocumentTypeCode VARCHAR2
Specify the type of request.
• Sales order
• Purchase order
• Internal material transfer
232
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
PartialShipAllowedFlag VARCHAR2
Specify how to ship the items that the
source order contains.
233
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
234
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
FreezePricing VARCHAR2
Set to true or false.
FreezeShippingCharge VARCHAR2
Set to true or false.
235
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
FreezeTax VARCHAR2
Set to true or false.
236
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Optional Aributes
237
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
SubstitutionAllowedFlag VARCHAR2
Specify whether Order Management
substitutes items during fulllment.
238
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
DemandClass VARCHAR2
Name of the demand class. A demand
class can represent.
239
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Regions
• Dierent sources of demand, such
as retail, mail order, or wholesale
TransactionCategoryCode VARCHAR2
Brief text that identies the transaction
category.
240
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
241
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
242
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
243
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
TaxExemptFlag VARCHAR2
Specify whether to exempt the transaction
from taxation.
PartialShipAllowedFlag VARCHAR2
Specify whether Order Management ships
the items that the sales order contains in
more than one shipment.
244
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Comments VARCHAR2 Text that the user can use to add details
that are related to the order line.
245
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
LatestAcceptableShipDate Date Date that species the latest time that the
customer is willing to ship the sales order.
LatestAcceptableArrivalDate Date Date that species the latest time that the
customer is willing to receive the sales
order at the ship-to address.
246
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ProductType VARCHAR2
Specify the type of transaction line.
• Goods
• Services
247
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
IsValidConguration VARCHAR2
Specify whether conguration is valid.
248
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
CreateCustomerInformationFlag VARCHAR2
Specify whether to create details for
missing aributes.
SubmitFlag VARCHAR2
Specify whether to submit the sales order
if an aribute doesn't contain a value.
You can include these optional aributes in the request payload for the source transaction.
249
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
You typically include these aributes when you specify one of these objects.
• Lot Numbers and serial numbers
• Sales credits
• Payments
• Aachments
• Document references
• Transaction items
• Charges
• Charge components
You can include these optional aributes in the request payload to dene lot numbers and serial numbers.
250
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Sales Credits
You can include these optional aributes in the request payload to dene sales credits.
Payments
You can include these optional aributes in the request payload to dene payments.
251
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aachments
You can include these optional aributes in the request payload to dene aachments.
Document References
You can include these optional aributes in the request payload to dene document references. The web service
currently accepts only the original sales order or order line reference when creating a return line for the document
reference entity.
252
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Transaction Items
253
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
You can include these optional aributes in the request payload to dene transaction items.
Charges
You can include these optional aributes in the request payload to dene charges.
ChargeSubType VARCHAR2
Type of charge, dened for this
conguration to aggregate totals.
• Goods sale
• Service sale
• Financing compared to lease
• Shipping charges
• Restocking penalties
• Special charges
254
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ParentEntityCode VARCHAR2
Parent entity of the charge.
• Line
• Line Coverage
PriceTypeCode VARCHAR2
Price type of a charge.
• One-time
• Recurring
PricedQuantityUOMCode VARCHAR2 Brief text that identies the UOM for the
priced quantity. For example, Ton. Values
for this aribute come from PIM (Product
Information Management), or a similar
service that Order Management provides.
PrimaryFlag string
Specify whether this charge is the primary
charge.
RollupFlag VARCHAR2
Specify whether this charge is a rollup
charge or an aggregate charge.
Charge Components
You can include these optional aributes in the request payload to dene charge components.
255
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
PriceElementUsageCode VARCHAR2
Brief text that species how to use
the charge component. A QP lookup
provides the values for this aribute.
Order Management comes predened to
use one of these values.
• List Price
• Invoice Price
256
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Related Topics
• Manage Lookups in Order Management
Operations and Aributes You Can Use with the Receive Order Request Service
Get details about operations and aributes you can use with the Receive Order Request Service when you integrate
Order Management Cloud with other systems.
257
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ReleasePausedTasks Operation
The ReleasePausedTasks operation releases paused tasks according to a combination of search parameters.
You can use it only as an asynchronous web service. You must include these aributes in a request that uses
ReleasePausedTasks.
258
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
CheckAvailability Operation
259
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
The CheckAvailability operation allows an order capture system to get, view, and analyze the availability of a sales order
item and the promising options for this item. You can use it only as an asynchronous web service. An asterisk ( * ) in the
Required column indicates a group of aributes. You must include at least one aribute from the group. You can use
these aributes.
260
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
261
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
262
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
263
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
CheckAvailabilityInput RequestedDropShipSupplierSite
String No Site of the supplier.
PromisingLine You can specify this
RequestedDropShipSupplierSite value only if you also
choose the supplier.
264
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
265
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
266
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
267
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
268
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
PromisingLineModelResult
RootParentFulllId
269
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
270
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
PromisingLineResult
TotalPrice
271
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
272
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
273
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
PromisingLineResult
ResultDetail ExpectedShipDate
checkAvailabilityOutput ExpectedAvailabilityOnRequestedDate
Double Expected item availability on
PromisingResult the request date.
PromisingLineReply
DefaultAvailabilityOption
PromisingLineResult
ResultDetail
ExpectedAvailabilityOnRequestedDate
274
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
275
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ResultDetail
ExpectedTotalFullmentCost
276
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
277
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
PromisingLineResult
TotalPrice
278
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
279
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
280
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
PromisingLineResult
ResultDetail ExpectedShipDate
checkAvailabilityOutput ExpectedAvailabilityOnRequestedDate
Double Expected item availability on
PromisingResult the request date.
PromisingLineReply
AlternateAvailabilityOptions
PromisingLineResult
ResultDetail
ExpectedAvailabilityOnRequestedDate
281
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
282
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ResultDetail
ExpectedTotalFullmentCost
283
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
The GetAvailabilityCheck operation and the GetAvailabilityCheckSync operation gets the supply of an item that's
currently available in an organization or supplier. You can use them as a synchronous or asynchronous web service. You
must include these required aributes in a request that uses GetAvailabilityCheck or GetAvailabilityCheckSync.
284
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
285
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
RequestHold Operation
The RequestHold operation put the sales order or fulllment process on hold. You can use it only as an asynchronous
web service. You must include these required aributes in a request that uses RequestHold.
286
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
287
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ReleaseHold Operation
The ReleaseHold operation releases a hold that's currently holding a sales order or fulllment process. You can use it
only as an asynchronous web service. You must include these required aributes in a request that uses ReleaseHold.
288
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
289
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
290
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
If your deployment must integrate with a system that resides outside of Order Management, then you can register a
connector that allows Order Management to communicate with it. You must create, deploy, and register the connector.
This topic describes how to register the connector and connect Order Management to a source system, such as Oracle
Congure, Price, and Quote Cloud. You add a connector that uses a web service that communicates order details with
the source system.
The external interface uses open access protocols, such as HTTP, so extra security setup is required. You must make
sure the user credential is valid in the source system you're integrating, and in the security certicate so the integration
can encrypt and decrypt messages.
291
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Description
Code Enter any text that Order Management can use as an abbreviation for the external system.
Order Management uses this code to identify this external system throughout the user
interface, such as in lists and logs.
For example, assume you work for a company named Vision Corporation, and that your
deployment must integrate with a legacy order capture system named Vision Capture. You
can enter VCAP.
The Manage Trading Community Source Systems page comes predened to use Oracle
Fusion Order Orchestration and Planning (OPS) for order orchestration and planning. If you
use the Order Management work area to create sales orders, then you must not change this
behavior, but you can use this page to add the source system you use to import a source
order from a channel system.
Name Enter text that describes the source system, such as Vision Capture.
Type
Choose a value.
◦ Purchased. Identies a purchased system, such as data from a third party provider.
Options
Specify the type of data that you will import.
◦ Enable for Trading Community Members. Required. Import data for the trading
community. Establishes the Original System Unique Reference (OSR) for customer
entities.
◦ Enable for Order Orchestration and Planning. Required. Import data for Order
Orchestration.
◦ Enable for Assets. Optional. Import data for assets.
For example, if you add a check mark to Enable for Trading Community Members,
then you can choose the source system as a data source on various pages in the
Order Management work area and the Order Orchestration work area.
292
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Description
Code
Choose the code that you created earlier, such as VCAP.
Time Zone Choose the time zone where the server is located.
Version
Choose Other.
◦ Uses the same values that Oracle Fusion uses, and you already set up these values in
Oracle Fusion, then don't enable this option.
293
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Description
Target System
Choose the code you created in the Create Source System dialog, such as VCAP.
Connector Name Enter text that describes the connector. For example, enter Connector_ to_VCAP
Connector URL Enter the URL that locates the connector service that resides on the source system. In this
example, enter the URL that locates the VCAP system.
User Name and Password Enter the values that the Status Update service requires. For example, the user that you
specify must be a valid user, and this user must use the privileges that allow this user to run
the Status Update service.
Order Management uses the credentials you provide so it can communicate with the order
capture system when it creates the order, and when it provides a status update.
4. Optional. Allow more than one source system instance to communicate with Order Management.
◦ Use Trading Community Architecture to add a value to the Target System list.
◦ Repeat step 3, except set Target System to the value that you added in Trading Community Architecture.
For example, assume you work for a telecommunications company. You add one connection to a
system named PER_ORA_BM_CPQ for personal phone lines, then add another connection to a system
named BUS_ORA_BM_CPQ for business lines. CPQ is an acronym for Congure, Price and Quote. Order
Management will deliver status notications and billing notications to any system that contains the
string ORA_BM_CPQ.
You can add a prex, a sux, a prex and a sux, or no prex or sux to the string. For example, you
can use ABC_ORA_BM_CPQ_XYZ.
5. Verify that Order Management is connected to the source system, and that its communicating sales order data.
◦ Use a page in the Order Management work area to verify that it updated the order status. For example,
verify that it updated the status from Scheduled to Shipped.
◦ Sign into your source system, then verify that it displays the updated status of the sales order that you
examined in Order Management. For example, if Order Management updated the status from Scheduled
to Shipped on the fulllment line, then verify that your source system also displays Shipped.
If Order Management can't connect to your source system, then it might display an error message that
indicates it can't connect. For help, see topic Troubleshooting Connection Problems With Source Systems:
Procedure.
Connecting to Congure, Price, and Quote
294
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• The setup you make for Fulllment Line Status Update and the corresponding set up in the Edit Status
Rule Set area of the Manage Orchestration Process Denitions page doesn't aect how Order Management
communicates status values.
• Order Management sends only the following status values. You can't modify this behavior.
◦ Scheduled
◦ Shipped
◦ Awaiting Billing
◦ Billed
◦ Canceled
◦ Closed
This role and privilege makes sure each service and response request from a source system works correctly when the
source system isn't part of Oracle Fusion, or when receiving a request from a task layer that isn't in Oracle Fusion.
Aribute Value
295
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
4. Navigate to the Search Authorization Policies tab, then search for DOOCustomAppRole.
5. In the Functional Policies tab, click New.
296
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
6. In the Untitled tab, set the value, then save your changes.
Aribute Value
Name DOOCustomRolePolicy
Aribute Value
297
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
298
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
9. Add the privileges you need for each of the web services that you must grant to the user.
299
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
300
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Name The value you enter must match the name you used when you created the user credential
key earlier in this topic.
Description User name and password to use when sending a message to the test client.
Provider DefaultAuthentication
Password The value you enter must match the name you used when you created the user credential
key earlier in this topic.
4. Test the client in your source system to make sure it can send and receive messages to and from Order
Management.
Related Topics
• Fix Connection Problems with Source Systems
An order capture system typically sends sales order data that contains names or codes to an orchestration process, and
the orchestration process must display a meaning for the name or a description for the code. You must collect the data
that determines these meanings and descriptions into the Order Orchestration and Planning Data repository.
Assume your order capture system sends sales order data that includes a payment term of 2/10, Net 30 to an
orchestration process, and data in the Order Orchestration and Planning Data repository includes a payment term of
2/10, Net 30. The orchestration process uses the matching codes to identify the payment term description.
2% discount earned if paid within 10 days
To get the complete list of orchestration reference objects, you can examine the collected data for them, and view the
list of values for the Lookup Type eld.
301
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
302
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
doa.ADDRESS_USE_TYPE = 'SHIP_TO'
OR doa.ADDRESS_USE_TYPE IS NULL
)
AND doa.party_site_id = hzps.party_site_id (+)
AND hzcasa.PARTY_SITE_ID (+) = hzps.PARTY_SITE_ID
AND hzps.party_id = hzp_ship_to.party_id (+)
AND HZcasa.CUST_ACCounT_ID = hza.CUST_ACCOUNT_ID (+)
AND hzps.location_id = hzl.location_id (+)
AND DHA.SOURCE_ORDER_NUMBER = ('&SOURCE_ORDER_NUMBER')
AND DHA.status_code <> 'DOO_REFERENCE'
AND DHA.Submitted_Flag = 'Y' -- is this the active/submitted version
303
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
dha.submitted_Flag ,
dfla.SHIP_TO_PARTY_ID ,
dfla.SHIP_TO_PARTY_SITE_ID,
dfla.BILL_TO_CUSTOMER_ID ,
dfla.BILL_TO_SITE_USE_ID
FROM Fusion.DOO_headers_all dha,
Fusion.DOO_fulfill_lines_all dfla
WHERE dha.header_id = dfla.header_id
AND dha.source_order_number = '&ENTER SOURCE_ORDER_NUMBER'
Related Topics
• Use SQL to Query Order Management Data
• Overview of Importing Orders into Order Management
• How Order-to-Cash Works with Order Capture Systems
304
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• M1
◦ SI1
◦ SI2
◦ SI5
• M1
◦ SI1
◦ OC1
◦ SI5
• SI2
• SI5
• M2
◦ OC2
• SI4
• SI5
createCongForModelLine will modify the structure from the import payload to this structure.
• M1
◦ SI1
◦ OC1
• SI2
◦ M2
• OC2
◦ SI5
305
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
If the import payload species the unit quantity and the ordered quantity, and if the unit quantity for the conguration
line multiplied by the ordered quantity for the immediate parent line.
• Equals the ordered quantity for the conguration line. createCongForModelLine can successfully process
the line.
• Doesn't equal the ordered quantity for the conguration line. createCongForModelLine creates an error
and order import fails.
If the import payload species a value in the Quantity Per Model aribute, then createCongForModelLine ignores it
and calculates the unit quantity and ordered quantity according to the quantities that the import payload species for
all conguration lines.
1. Specify how Order Management sends the request to the outbound connector.
◦ You specify the URL that locates the outbound connector when you set up the external interface.
◦ You deploy the outbound connector on a third-party application server.
◦ Your information technology group must set up the WSDL for the outbound endpoint.
2. Specify the business conditions that will route the request to the connector.
3. The outbound connector transforms the message into a format that your fulllment system can understand,
then sends the message to your fulllment system. You can use an integrated development environment, such
as Oracle JDeveloper, to specify how to do transformation.
4. The fulllment system sends a response to the inbound connector.
Response Description
Delayed The fulllment system sends the response only after a delay so it can nish the long running
task.
306
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Response Description
For example, assume the message requests a status update for the Received Date aribute,
which is the date that shipping delivered the item to the customer. Shipping is normally
a long running task that includes a pause step because shipping a physical item typically
requires one or more days to nish. The fulllment system can't respond immediately with
the requested details. It must delay its response while it waits for the shipping task to nish.
Note.
◦ The fulllment system might also communicate more than one update over time. To process a delayed
response, you can add another entry point service in the connector, or you can set up another connector.
It isn't necessary to use the external interface to set up the connector that receives the message from
your fulllment system and that sends a delayed response.
◦ This topic assumes you use the same connector to send the delayed response to Order Management.
5. To send the response, the fulllment system calls the inbound interface that you set up in Order Management.
Order Management uses a single service to accept the response for each task type. You specify the URL that
locates the WSDL for the service when you set up the connector.
6. The connector transforms the response into a message that Order Management can understand, then sends it
to Order Management.
Here are the task types that the connector uses in Order Management to communicate with your fulllment system.
For details about the ow you integrate, see the How Data Flows Through Order Management topic.
1 Set Up Task Types Specify how to process the sales order and
order lines.
307
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
4 Select Fulllment Lines for Orchestration Create a business rule that selects
Process Steps fulllment lines, then specify whether to
process them.
Related Topics
• How Data Flows Through Order Management
• Fulllment Tasks
308
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• The connector and the fulllment system use security certicates that a certicate authority (CA) publishes.
• You have the privileges that you must use to deploy the connector on the fulllment system, or you licensed
Oracle SOA (Service Oriented Architecture) Cloud Service so you can access Oracle JDeveloper on the cloud
and integrate with other cloud applications and systems.
• Services in the fulllment system all use the same user credentials.
◦ Go to page Oracle SOA Suite 12.2.1.3.0 QuickStart Download on Oracle Technology Network at hp://
www.oracle.com/technetwork/middleware/soasuite/downloads/index.html.
◦ Download, then unzip these les.
• SOA Suite 12.2.1.3 - Part 1 of 2
• SOA Suite 12.2.1.3 - Part 2 of 2
Download them to the bin folder where you installed Java SE Development Kit, such as C:\Program Files
\Java\jdk-9.0.4\bin.
◦ Right-click Windows Start menu, then click Command Prompt (Admin).
◦ In the DOS command line, navigate to the bin folder where you downloaded the SOA Suite les, enter
java.exe -jar fmw_12.2.1.3.0_soa_quickstart.jar, then press Enter on your keyboard.
◦ Follow the prompts in the installer until you nish the installation.
6. Open a web browser, then verify your browser can open the URLs you plan to use for your WSDLs. For details
about these WSDLs, see the next section in this topic.
Create Connector
1. Open Oracle JDeveloper.
309
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For details about how to use Oracle JDeveloper, see Oracle JDeveloper Tutorials at hps://docs.oracle.com/
cd/E37547_01/tutorials/toc.htm.
2. In the Select Role dialog, choose Studio Developer, then click OK.
3. Click Application > New.
4. In the New Gallery dialog, in tree Categories, expand General, then click Applications.
5. In the Items area, click SOA Application > OK.
6. In the Name Your Application dialog, set values, then click Next.
Aribute Value
Directory
C:\JDeveloper\mywork\ConnectorService
You can accept the default value that populates or choose some other folder. For example.
C:\JDeveloper\mywork\ConnectorService
◦
Application Package Prex oracle.apps
7. In the Name Your Project dialog, set values, then click Next.
Aribute Value
Directory C: \JDeveloper\mywork\ConnectorService\ConnectorServiceComposite
8. In the Congure SOA Seings dialog, set values, then click Finish.
Aribute Value
310
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
This composite includes the Exposed Services, Components, and External References panes. You will use these
panes during this procedure.
9. Click File > Save.
10. Specify the service that will communicate data from your fulllment system to Order Management.
◦ Drag and drop BPEL Process from the Component Palee onto the Components pane.
◦ In the Create BPEL Process dialog, set values, then click OK. Make sure you set each value in the same
sequence that this table displays them.
Aribute Value
Name ConnectorProcess
Directory C: \JDeveloper\mywork\ConnectorService\ConnectorServiceComposite\SOA\BPEL
311
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
WSDL URL
Specify this WSDL.
https://host:port/soa-infra/services/default/
DooTaskExternalInterfaceVirtualPartnersComposite/
fulfillmentrequest_client_ep?WSDL
where
• host. Identies the computer that hosts your Oracle Fusion Applications.
• port. Identies the port that Oracle Fusion Applications uses to communicate
data. Port is optional.
https://server:port/soa-infra/services/default/
DooTaskExternalInterfaceVirtualPartnersComposite/
fulfillmentrequest_client_ep?WSDL
To identify the host and port, see topic Identifying Hosts and Ports for Your Order
Management Implementation: Procedure.
This URL locates the WSDL that FulllOrderService uses. This service communicates
data from your third-party fulllment system to Order Management. It uses these
operations and inputs.
If you can't access or use this service for some reason, then see section Using
Alternative WSDL Files in this topic, immediately after this procedure.
312
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
iii.In the window below the location you just set, click
FulfillmentRequest.wsdl > OK.
iv. In the Localized Files dialog, add a check mark to Maintain Original Directory
Structure for Imported Files, then click OK.
11. Create the web service you use to send the request to your fulllment system.
◦ In the External References pane, right-click, then click Insert > Direct.
◦ In the Create Direct Binding dialog, set values, then click OK.
Aribute Value
Name FulllmentApplication
Type Reference
313
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
12. Connect the connector to the FulllmentApplication web service. Drag and drop a connection from the
Component Palee to create a connection between the ConnectorProcess node in the Components pane and
the FulllmentApplication node in the External References pane.
13. Create the web service you use to send the delayed response back to Order Management.
◦ In the External References pane, right-click, then click Insert > Web Service.
◦ In the Create Web Service dialog, set values, then click OK.
Aribute Value
Name OM-DelayedResponse
Type Reference
WSDL URL
Enter this value.
https://host:port/soa-infra/services/default/
DooTaskFulfillOrderResponseInterfaceComposite/fulfillmentresponse?
WSDL
where
• host. identies the computer that hosts your Oracle Fusion Applications.
• port. identies the port that your Oracle Fusion Applications use to
communicate data.
This URL locates the WSDL that FulllmentResponseService uses. This service
communicates status updates from your third-party fulllment system to Order
Management. It uses these operations and inputs.
314
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
14. Connect the connector to the OM-DelayedResponse web service. Drag and drop a connection from the
Component Palee to create a connection between the ConnectorProcess node in the Components pane and
the OM-DelayedResponse node in the External References pane.
15. In the Components pane, right-click the ConnectorProcess node, then click Edit.
315
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
16. Dene the condition that species when to perform the Create operation for the service in the fulllment
system.
◦ Drag and drop a Switch activity from Component Palee to immediately after the receiveInput activity.
◦ Immediately below the switch activity you just added, click Condition, then set values.
Aribute Value
Label Create
Description CreateFulllmentReqeuest
316
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
317
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
xp20:upper-case(bpws:getVariableData('inputVariable','payload','/ns4:headerTL/ns4:OperationMode'))
= "CREATE"
318
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
You typically use the FulllOrderService service and FulllmentResponseService service to communicate with a third-
party fulllment system. If you can't access or use these services for some reason, then do a dierent set up, depending
on whether you use extensible exelds in your implementation.
319
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
You use extensible exelds. Click Download Files in the Related Links section at the end of this topic, then use the WSDL
and XSD in le FulllmentRequest. zip that downloads.
2. On the Manage Connector Details page, click Download WSDL for External
Integration.
If you set up Order Management to raise a business event, then do these steps.
Aribute Value
WSDL URL
http://host:port/soa-
infra/services/default/
DooTaskExternalInterfaceVirtualPartnersComposite/
businesseventsconnetor_client_ep?WSDL
The connector uses the pushPayload operation and the body input value of FulllOrderService.
2. Make sure the web service operation can do these steps.
◦Accept the user name and password you enter on the Manage External Interface Web Service Details
page. You use this page later during this integration setup after you nish seing up the connector.
◦ Receive a payload that uses the signature in the business_events_connnector_payload.xsd le. To get a
copy of this le, click Download Files in the Related Links section at the end of this topic.
3. Use the Associated Connectors tab to specify the connector that references the WSDL that you set up in step 1.
You can access this tab when you use the Manage Business Events Trigger Points page to set up the business
event.
For details about business events and the Associated Connectors tab, see the Send Notications from Order
Management to External Systems topic.
You typically use FulllOrderService to handle business events. If you can't access or use this service for some reason,
then use a dierent set up.
320
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
You don't use extensible exelds. Click Download Files in the Related Links section at the end of this topic, then use the WSDL
and XSD in the business_ events_ wsdl.zip le that downloads.
2. On the Manage Connector Details page, click Download WSDL for External
Integration.
• Create
• Update
• Apply Hold
• Release Hold
• Cancel
So you add ve switch case branches, one for each task.
321
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For details about these tasks and other tasks that you can use, see the Task Types topic.
322
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
323
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ Drag and drop Invoke from Component Palee onto branch Create.
◦ Right-click Invoke1, then, in the Edit Invoke dialog, set the value.
Aribute Value
Name InvokeCreateFulllmentRequest
324
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Operation create
◦ In the Edit Invoke dialog, in the Variables section, next to the Input window, click Add.
◦ In the Create Variable dialog, set the value, then click OK.
Aribute Value
325
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
326
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
327
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ Drag a receive activity from Component Palee, then drop it immediately downstream of the
InvokeCreateFulllmentRequest node.
Aribute Value
Name ReceiveAcknowledgementForCreate
328
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Operation createResponse
329
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
330
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
4. Add an activity that transforms the input value into a message that your fulllment system can understand.
◦ Drag a transform activity from Component Palee, then drop it immediately upstream of the
InvokeCreateFulllmentRequest node.
Aribute Value
Name TransformationInputToCreate
◦ On the Transformation tab, in the Source area, click Add, then set values.
Aribute Value
Variable inputVariable
331
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Part payload
◦ Set values.
Aribute Value
332
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ In the page that displays, connect each aribute that you must send from Order Management to the
fulllment system.
333
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
5. Add an activity that transforms the reply that your fulllment system sends into a message that Order
Management can understand.
◦ Drag a transform activity from Component Palee, then drop it immediately downstream of the
ReceiveAcknowledgementForCreate node.
Aribute Value
Name TransformFulllmentAckToOMAck
◦ On the Transformation tab, in the Source area, click Add, then set values.
334
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Part payload
◦ Set values.
Aribute Value
◦ On the ConnectorProcess process that you created earlier, drag an invoke activity from the Component
Palee, then drop it immediately downstream of the TransformFulllmentAckToOMAck activity.
335
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ Drag a Receive activity from Component Palee, then drop it immediately downstream of the
SendAcknowledgement activity that you just added.
This activity receives the delayed response from the fulllment system.
◦ Right-click Receive1.
◦ In the Edit Receive dialog, on the General tab, set values, click Apply > OK.
Aribute Value
Name ReceiveDelayedResponseFromFulllment
336
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Operation CreateResponse
For each operation, modify the values slightly to reect the operation. For example, add the
Update operation to the Update branch, and use ReceiveAcknowledgementForUpdate instead of
ReceiveAcknowledgementForCreate.
8. Repeat steps 1 through 6 for the Apply Hold operation.
9. Repeat steps 1 through 6 for the Release Hold operation.
10. Repeat steps 1 through 6 for the Cancel operation.
337
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
1. Drag an Invoke activity from Component Palee, then drop it immediately downstream of the switch node.
2. Right-click Invoke1.
3. In the Edit Invoke dialog, on the General tab, set values, click Apply > OK.
Aribute Value
Name SendDelayedResponseToOM
338
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Operation process
4. Transform the delayed response message that the fulllment system sends to a message that Order
Management can understand.
◦ Drag the Transform activity from Component Palee, then, in the create branch, drop it immediately
downstream of the ReceiveDelayedResponseFromFulllment activity.
Aribute Value
Name TransformDelayedResponseToOM
339
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
◦ On the Transformation tab, in the Source area, click Add, then set values.
Aribute Value
Part payload
◦ Set values.
Aribute Value
340
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ Drag a receive activity from Component Palee, then drop it immediately downstream of the
SendDelayedResponseToOM activity.
Aribute Value
Name ReceiveResponseFromOM
341
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Operation processResponse
6. Dene a condition that species how to handle errors that Order Management might send.
◦ Drag and drop the Switch activity from Component Palee to immediately downstream of the
ReceiveResponseFromOM activity.
◦ Immediately below the switch activity you just added, click Condition, set values, then click OK.
Aribute Value
Label ErrorCondition
342
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Condition
xp20:upper-
case(bpws:getVariableData('ReceiveResponseFromOM_processResponse_InputVariabl
ns3:FulfillmentResponse/ns3:Status') !="SUCCESS"
7. Add nodes.
◦ AssignErrorConditionProcess. Specify actions to take in the Error Condition branch when an error
occurs.
◦ AssignSucess. Specify actions to take in the Otherwise branch when an error doesn't occur.
If the delayed web service response that calls Order Management includes a charge, then Order Management deletes
all previous charges and replaces them with the values that the web service response sends. Therefore, you must make
sure the response includes all charges that Order Management sent in the outgoing request.
343
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example, if Order Management sends the ORA_SHIPPING_FREIGHT value and the QP_NET_PRICE value for
the ChargeTypeCode charge, then the response must include ORA_SHIPPING_FREIGHT and QP_NET_PRICE for
ChargeTypeCode.
Policy Description
oracle/wss11_ saml_ or_ username_ Encrypts and decrypts incoming and outgoing messages.
token_ with_ message_ protection_
service_ policy
oracle/wss_ username_ token_ over_ Uses SSL (Secure Sockets Layer) to secure communication in the transport layer.
ssl_ client_policy
Use Oracle JDeveloper or Oracle Enterprise Manager to secure your connector. This example uses Oracle JDeveloper.
For details about Oracle Enterprise Manager, see hps://www.oracle.com/technetwork/oem/enterprise-manager/
overview/index.html.
344
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
1. Specify the security policy for the Request service. In the Exposed Services pane, right-click the end point of
ConnectorProcess, then click Congure WS Policies > For Request.
2. In the Congure SOA WS Policies dialog, in the Security area, click Add.
3. In the Select Server Security Policies dialog, choose this value, then click OK.
345
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
oracle/ws11_saml_or_username_token_with_message_protection_service_policy
4. Specify the security policy for the callback service. In the Exposed Services pane, right-click the end point of
ConnectorProcess, then click Congure WS Policies > For Callback.
5. In the Congure SOA WS Policies dialog, in the Security area, click Add.
6. In the Select Server Security Policies dialog, choose this value, then click OK.
oracle/wss_username_token_over_ssl_client_policy
7. In the Security area, click the row you just added, then click Edit.
8. Set values.
Aribute Value
9. Edit and assign the security policy for the delayed response connector.
Repeat the above steps. Use the same security policies and specify the same Credential Store Framework key.
346
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
11. Create a user credential key, then add it to the identity store on the server that will call the web service. For
details, see topic Creating User Credential Keys: Procedure.
12. Get the user credentials that the service provider requires when calling their web service. You can typically get
these details from the service provider.
13. Send a request to your IT administrator to add the user credentials that you identied in step 4. Request to add
them to the server that will call the web service. Use the CSF-KEY (Credential Store Framework) reference.
347
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
1. In the transformation activity, navigate to the appropriate ECategories node, such as FulllLineECategories.
2. Expand the node.
348
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
5. Expand ns1:FulfillLineEFFCategories.
349
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
The navigation tree displays the hierarchy that includes the contexts and extensible exelds that you can map
to the target XSD.
For example.
<xsl:if test="/ns1:headerTL/ns1:FulfillLineTLVO1/ns1:FulfillLineEffCategories/
ns10:FulfillLineEffBPackShipInstructionprivateVO/ns21:shipDate">
<ns21:shipDate>
<xsl:if test="/ns1:headerTL/ns1:FulfillLineTLVO1/ns1:FulfillLineEffCategories/
ns10:FulfillLineEffBPackShipInstructionprivateVO/ns21:shipDate/@xsi:nil">
<xsl:attribute name="xsi:nil">
<xsl:value-of select="/ns1:headerTL/ns1:FulfillLineTLVO1/ns1:FulfillLineEffCategories/
ns10:FulfillLineEffBPackShipInstructionprivateVO/ns21:shipDate/@xsi:nil"/>
</xsl:attribute>
</xsl:if>
<xsl:value-of select="/ns1:headerTL/ns1:FulfillLineTLVO1/ns1:FulfillLineEffCategories/
ns10:FulfillLineEffBPackShipInstructionprivateVO/ns21:shipDate"/>
</ns21:shipDate>
</xsl:if>
350
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• EXT_FULFILLMENT_SALES_ORDER.
References the sales order or
document in your fulllment
system.
• ORIGINAL_SALES_ORDER.
References the source order from a
source system or sales order from
Order Management Cloud that
contains the item that a return is
returning.
• EBS_ORDER. References a sales
order created in Oracle E-Business
Suite (EBS) where Oracle E-
Business Suite is the fulllment
system.
• DROPSHIP_REQ_REFERENCE.
References a requisition for a
drop-ship line in a purchasing
application.
• DROPSHIP_PO_REFERENCE.
References a purchase order for
a drop-ship line in a purchasing
application.
DocId Value that uniquely identies the Purchase Order Identier in the
document. Order Management creates purchasing system
this value.
DocLineId Value that uniquely identies the Purchase Order Line Identier in the
document line. Order Management purchasing system
creates this value.
DocLineUserKey Line number that an end-user can Purchase Order Line Number
understand and recognize.
DocSublineId Value that uniquely identies the Purchase Order Schedule Identier in the
document subline. Order Management purchasing system
creates this value.
DocSubLineUserKey Number for the subline that an end-user Purchase Order Schedule Number
can understand and recognize.
351
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Related Topics
• Download Files
• How Order-to-Cash Works with Order Capture Systems
• How Data Flows Through Order Management
Manage Connector Details Between Order Management and Your Fulllment System
Use a web service to allow Order Management to communicate with your fulllment system. Use a predened web
service or create a new one.
The connector in this topic sends each message from Order Management to your fulllment system, then sends the
response message from your fulllment system to Order Management.
1. Sign into Oracle Enterprise Manager.
For details about Oracle Enterprise Manager, see hps://www.oracle.com/technetwork/oem/enterprise-
manager/overview/index.html.
2. In the navigation tree, expand Farm_fusion_domain > SOA > soa-infra (soa_server1) > default, then click
ConnectorServiceComposite.
3. In the ConnectorServiceComposite area, click Service Endpoint.
4. In the Service Endpoint and WSDL dialog, copy the value of the Endpoint URI and the WSDL to your clipboard.
Here are some examples.
Aribute Description
Aribute Description
Connector Name Enter text that describes the connection you're making.
352
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Description
Connector URL
Enter the URL that locates the connector that resides on the fulllment system. For example.
http://server:port/soa-infra/services/default/
ConnectorServiceComposite/connectorprocess_client_ep
where
Replace server:port with the name of the server that hosts your web service and
◦ the port number that the web service uses to communicate.
User Name and Password Enter the user name and password that the service requires.
As an option, use CSF-KEY that references the user credential that Order Management uses
to interact with the external web service.
There's no requirement to match the actual name of the connector, so you can provide a
short name. You can then use this short name in a routing rule. The CSF-KEY applies to all
services that the external system provides.
If you set up the server to advertise the security certicate, then use the keystore recipient
alias. Do these steps.
◦ Make sure an IT administrator imports the target server security certicate into the
calling server and provides the keystore recipient alias.
◦ Add the alias to the external service entry you created when you specied the user
credential.
◦ Add the alias to the Keystore Recipient Alias aribute on the Manage Connector
Details page. This key applies to all services that the target system provides.
If these options don't work, then set up the servers to use the Oracle security certicate, then
import the certicate into your servers. The calling server doesn't require you to set up this
security certicate.
◦ Reject All Lines on First Error. Reject all fulllment lines as soon as the connector
encounters the rst error.
This seing stops processing immediately so you can x the rst error. If subsequent
fulllment lines contain errors, then you must run fulllment again, correct the error,
and repeat until you correct all errors.
◦ Reject All Lines When Error on at Least One Line Occurs. Process all fulllment
lines. Add an error status to any all fulllment line that contains an error. When
processing nishes, if any fulllment line contains an error, then reject all fulllment
lines.
Use this seing to examine all lines that contain errors and correct them without
having to run fulllment for each error.
353
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Description
◦ Reject Groups With Lines That Contain Errors. Reject the entire group of fulllment
lines even if only one line in the group contains an error.
Your fulllment system can send fulllment lines in a group. For example, it can send
all lines in a shipment as a group or all lines in a sales order as a group.
Invocation Mode
Specify how Order Management calls the connector when the orchestration process requires
an interface to a system that resides outside of Order Management.
◦ Business Event. Raise a business event so Order Management can interact with the
fulllment system.
If you use Integration Cloud Service to integrate Order Management with the
fulllment system, then you must choose Business Event. For details, see the
Overview of Using Integration Cloud Service to Integrate Order Management with
Other Systems topic.
◦ Synchronous Service. Make a synchronous call to the web service. Requires Order
Management to wait for the response from the web service before it continues
processing.
Use synchronous when Order Management performs depends on the response. For
example, use synchronous when calling credit check because Order Management
must wait for credit check to nish, then reply with status Credit Check Succeeded
before it can send the sales order to order fulllment.
◦ Asynchronous Service. Make an asynchronous call to the web service. Allows Order
Management to continue other processing while it waits for the response from the
web service.
Use asynchronous when Order Management doesn't depend on the response.
An asynchronous call is useful in an environment where a service, such as a loan
processor, can take a long time to process a client request. For example, scheduling
an appointment to install an item that includes a computer network might cause a
delay but it doesn't aect order processing.
◦ To support trade compliance screening during order submit, you must use a business
event to integrate with Oracle Global Trade Management.
◦ Business Event supports integration only with Oracle Global Trade Management and
Oracle Transportation Management
◦ Use Business Event to integrate with trade compliance only for compliance screening
that occurs when the Order Entry Specialist submits the sales order, and not during
order fulllment.
Send Aachments Choose Yes to enable Order Management to send sales order aachments.
If you use the OrderInformationService web service to connect with your fulllment system,
then you can use the Send Aachments aribute in the input payload of the GetOrderDetails
operation of this web service to allow Order Management to send aachments.
8. Repeat step 7 until you register all web services where Order Management must interact.
9. Create a routing rule that selects the web services.
For details, see the Route Requests from Order Management to Fulllment Systems topic.
Related Topics
• How Order-to-Cash Works with Order Capture Systems
• How Data Flows Through Order Management
354
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Here are some examples that describe ways you might use a routing rule.
Example Description
• If product type is Goods, and if task type is Invoice, then route request to connector
ABCInvoicingSystem.
• If task type is Shipment, and if quantity is 1000 or more, then route shipment request to Big Warehouse.
355
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Set Up Connector
Set values.
Aribute Value
356
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Description Route each shipping request that exceeds a quantity of 999 to the Big Shipments warehouse.
For details, see the Manage Connector Details That Integrate Order Management with Fulllment Systems topic.
Aribute Value
Description Route each shipping request that exceeds quantity of 999 to Big Warehouse.
◦ Click And.
◦ In the Create Condition dialog, enter Quantity, wait a moment, then click Ordered Quantity (Order
Fulfill Line).
◦ Change = to >.
◦ Enter 999, then click OK.
357
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Note that the Manage Connector Details page denes the connectors that the Search dialog displays on the
Manage External Interface Routing Rules page.
358
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
6. In the dialog that displays, add a check mark to Activate Rule, then click Save and Close > Publish.
Related Topics
• Use Visual Information Builder
• Demo for Creating Business Rules
• If task type on fulllment line is Shipment, then route shipment request to Big Warehouse.
• If Order Management can't nd a cross-reference for Big Warehouse in an Oracle Application, then get the
cross-reference from your fulllment system.
359
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Route a request from Order Management to your fulllment system without a cross-reference.
1. Create a routing rule that implements this logic.
◦ If task type is Shipment, and if quantity is 1000 or more, then route shipment request to Big Warehouse.
For details, see the Route Requests from Order Management to Fulllment Systems topic.
2. On the Manage External Interface Routing Rules page, open your rule for editing, then, in the owchart, click
And > Perform an Action.
3. In the Create Action dialog, choose Resolve Cross-Reference for Customer.
4. Choose a value, then click OK For this example, choose No.
Value Description
360
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
fulllment system
recognizes.
Prepare Result Don't use this action Not applicable Not applicable Not applicable
or the ResultKey
and ResultValue
parameters that it uses.
They are for Oracle
internal only.
Set Acknowledgement Time frame to wait Use a numeric value for ACK_ TIMEOUT_ Number
Timeout before exiting out of an days, hours, minutes, PERIOD
implicit wait during an or seconds. For
interaction with your example, 10 minutes.
fulllment system or
with an Oracle Fusion
application.
361
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Shipping
system.
Set Maximum Lines to For details, see Not applicable AGGREGATOR_ Number
Aggregate and Send the Aggregate MAX_FLINES
Requests That Order
Management Sends
to Your Fulllment
System topic.
• 30 minutes. If
the reply doesn't
arrive within
30 minutes,
then Order
Management
enables
the Cancel
Current Task
362
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
action in the
orchestration
process that
processes the
fulllment line.
If the Order
Entry Specialist
uses the
Cancel Current
Task action,
then Order
Management
places the
fulllment line in
error recovery,
and the Order
Entry Specialist
can then end the
task.
• One month. If
the reply doesn't
arrive within
one month,
then Order
Management
places the
fulllment line in
error recovery.
Set Maximum Time to For details, see Not applicable AGGREGATOR_ Number
Wait Before Sending the Aggregate MAX_TIMEOUT
Requests That Order
Management Sends
to Your Fulllment
System topic.
Note.
Related Topics
• Use Visual Information Builder
• Task Services
363
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Action Description
Set Maximum Lines to Aggregate Number of pending requests that must aggregate before calling the fulllment system.
Send or Set Maximum Time to Wait Amount of time to wait before calling the fulllment system. This time starts when the
Before Sending aggregator receives the rst request.
An aggregator collects requests, and then sends them a single request when a time limit expires or when the aggregator
has aggregated a number of fulllment lines for the sales order. If the sales order includes more than one fulllment
line, and if these lines nish the task before the timeout occurs, then it sends all requests when the task nishes.
• The aggregator can aggregate only one time for each fulllment system for each sales order. If Order
Management receives more fulllment lines for the sales order after the aggregator sends a request, then it
sends each of these lines individually.
• The default timeout is ve minutes.
• You can use the aggregator only with the Fulll Order task or with a task that you dene.
• If you specify Set Maximum Lines to Aggregate and also specify Send or Set Maximum Time to Wait Before
Sending, then Order Management uses the rst action that meets the conditions.
Action Value
At run time, assume 50 lines aggregate before 10 minutes elapse. Order Management will send the lines as
soon as 50 lines aggregate. If only 40 lines aggregate after 10 minutes, then Order Management won't send
any lines until 10 minutes elapse.
Note.
Consider only wait time. Set the Set Maximum Lines to Aggregate action to 0.
Ignore maximum fulllment lines. This setup is equivalent to the default behavior when you don't specify Set Maximum Lines to
Aggregate.
Ignore wait time. Set the Set Maximum Lines to Aggregate action to 1.
Send only one line for each request. This setup is equivalent to the default behavior when you don't specify either action.
364
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Set Maximum Lines to Aggregate equals 10, so Order Management will send 10 lines to the fulllment system in the rst
request as soon as the aggregator receives the tenth order line.
Next, assume ve minutes elapse by the time the aggregator receives the eleventh order line. During this time, the
aggregator receives another three order lines. The value of Send or Set Maximum Time to Wait Before Sending equals
5, so Order Management will send these four order lines in the second request to the fulllment system.
The value of Send or Set Maximum Time to Wait Before Sending is 5, so Order Management will send these 12 lines in
the rst request to the fulllment system.
Related Topics
• Use Visual Information Builder
• Task Services
365
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Here's a ow you can use to deploy a single web service on each of your subscriber systems to receive the notication
for each condition that triggers the business event.
Note.
• You use the Subscribe to ICS integration to subscribe each channel system to the business event.
• Order Management sends one event notication to Integration Cloud Service, then Integration Cloud Service
broadcasts it to each of the subscribers you integrate.
• If you set up the web service that you deploy on these systems to subscribe to the business event, and if they
share the same underlying schema, then mapping between the business event output schema and each web
service is very similar.
If you use the Sales Order Notication business event, then Order Management can send a notication each time a
condition occurs.
• Update order header status.
• Update fulllment line status.
• Split fulllment line.
• Close fulllment line.
• Apply hold.
• Change the jeopardy priority.
• Update a predened aribute on a sales order.
366
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
• Use the Sales Order Notication event when you set up the end point in Integration Cloud Service to publish
trigger points to Integration Cloud Service.
• As an alternative to using Integration Cloud Service, you can add a connector that you set up on the Manage
Connector Details page in the Setup and Maintenance work area. The trigger publishes the event to the
connector.
367
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example, if you add the Delivery Conrmation connector to the Fulllment Line Status Update trigger point,
then Order Management will send the business event to Delivery Conrmation every time it updates the status
on the fulllment line.
The connector you create in Integration Cloud Service is entirely separate from the connector you create on
Manage Connector Details. These connectors aren't related to one another in any way.
For more details, see the Send Notications from Order Management to Other Systems topic.
368
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
To congure the end point, click the connection you dropped onto your integration, then click Edit. Use the wizard that
displays to choose With Business Events and the Sales Order Notication event.
Sales Order Notication gets the active trigger points that you set up on Manage Business Event Trigger Points, then
publishes them in Integration Cloud Service.
369
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
The trigger points inform each subscriber when a signicant development occurs with a sales order. For example, when
Order Management nishes compensation for a change order, updates the status on the fulllment line, closes the
fulllment line, and so on.
370
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Specify Operations
Specify the operations that each web service must do. Edit the Publish To node in your integration.
Choose the Orchestration Order business object, choose the OrderInformationService web service, then choose an
operation.
371
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Operation Description
GetOrderDetails Get details about the progress of a sales order from Order Management.
ChangeOrderAllowed Determine whether Order Management allows changes on the sales order or fulllment line.
ChangeOrderAributeAllowed Determine whether Order Management allows changes on each sales order aribute.
GetCrossReferencedData Allow a source system that subscribes to the Sales Order Notication business event to get
cross-referenced values that the calling application can use.
Use this operation as an enrichment service when you receive Sales Order Notication. For
details, see the Overview of Creating Cross-References in Order Management topic.
You can also use the OrderImportService web service to send a new sales order or to revise a sales order that already
exists.
For details about how to specify data to communicate, go to Oracle Help Center, then see section Creating Connections
and Creating Integrations in book Using Oracle Integration Cloud Service.
Here's how you can use OrderFulllmentResponseService to process the response that your fulllment system sends to
Order Management.
372
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
1. Order Management raises a business event so it can send a fulllment request to your fulllment system.
2. Integration Cloud Service calls the document service of the business event to send the request to the fulllment
system. The output payload of the document service includes data that the fulllment system uses to fulll the
request. You can map this output payload to the web service interface that processes the inbound call on the
fulllment system.
3. The fulllment system receives the fulllment request from Order Management, then calls the
processAcknowledgement operation of OrderFulllmentResponseService to acknowledge that it received the
fulllment request.
4. Integration Cloud Service sends the acknowledgment to Order Management.
5. The fulllment system fullls the request, then calls the processFulllmentResponse operation to communicate
the result to Order Management.
6. Integration Cloud Service sends the response to Order Management.
7. Order Management processes the response.
When you congure the endpoint, set the web service to OrderFulllmentResponseService.
373
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Choose an operation.
Operation Description
processAcknowledgement The fulllment system sends an acknowledgment that conrms it received the fulllment
request. processAcknowledgement accepts and processes the acknowledgment.
processFulllmentResponse The fulllment system calls processFulllmentResponse to communicate the result of the
fulllment request to Order Management.
The service adds the Response sux to the operation name, which results in a response name
of processFulllmentResponseResponse.
374
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Operation Description
The operation name processFulllmentResponse indicates that it processes a fulllment
response in reply to an Order Management fulllment request.
This example includes part of the mapping between the response payload of the GetOrderDetails operation of Order
Information Service, to a target web service.
If you map a data element from the source to a data element on the target, then the interface adds a green check mark
to the source and target.
• The target also displays the name of the data element at the source.
• The mapping applies to one target web service, so you must do this mapping for each target system.
375
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• If your deployment includes more than one channel system that must call GetOrderDetails, or if it must do
other operations under Order Information Service, then you must create an integration in Integration Cloud
Service, and then map the source payload to the target payload for each channel. However, you only need one
connection between ERP Service Catalog and Integration Cloud Service because it can support an integration
under each web service that you publish in the catalog with a WSDL (Web Services Description Language).
For details about how to create a mapping, go to on Oracle Help Center, then see the Mapping Data chapter in book
Oracle Cloud, Using the Oracle Mapper.
376
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Assume you set up the integration to broadcast the Sales Order Notication event to subscribers when Order
Management updates the order status, such as from Processing to Closed.
1. The channel receives shipment for the sales order, then sends a successful delivery notication to Order
Management.
2. Order Management changes the order status from Processing to Closed.
3. Order Management raises a business event. Assume you set the Order Header Status Update event to Active on
the Manage Business Event Trigger Points page, and also set it up to raise an event when Order Management
updates the order header status to Closed.
377
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Oracle ERP Cloud Adapter recognizes the event, then uses your set up on the Oracle ERP Cloud Endpoint to
determine the service and operation to use.
5. To determine how to map source payload to target payload, Oracle ERP Cloud Adapter reads the source to
target mapping you set up.
6. Integration Cloud Service sends a notication to the subscriber on the channel.
Integration Cloud Service can integrate Order Management with a channel that's in or out of the cloud.
For example, send a notication to each subscriber when Order Management changes the status on the sales
order header to Closed.
◦ On the Manage Business Event Trigger Points page, click the Order Header Status Update row, then
make sure the Active option in this row contains a check mark.
◦ In the Details area, in the Closed row, add a check mark to the Raise Event option.
◦ Click Save.
378
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
1. On the Manage Business Event Trigger Points page, click the Fulllment Line Status Update row, then make
sure the Active option in this row contains a check mark.
2. Click Save and Close.
3. Go to the task.
Each orchestration process controls the status value for each fulllment line, so you must modify the
orchestration process that controls the status value. In this example, you modify the orchestration process that
controls the shipping status value.
5. In the search results, click the row that contains OrderFulllmentGenericProcess, then click Actions > Edit.
6. In the Process Details area, click Status Conditions > Fulllment Line Status Values > Edit Status Rule Set.
7. On the Edit Status Rule Set page, add a check mark to the Notify External System option for each Status Value
where your deployment must send a notication.
For example, to send a notication when Order Management changes the fulllment line status to Shipped, add
a check mark to the Notify External System option in the Shipped row.
8. Repeat step 7 for other status values, as necessary.
Order Management will send a notication when each fulllment line that this orchestration process processes
reaches the status you specify in steps 7 and 8.
9. Repeat steps 4 through 8 for each orchestration process in your deployment that updates status values, as
necessary.
Create a Connection
Create a connection between Integration Cloud Service and Order Management. For details about how to use
Integration Cloud Service, including the URL you use when you sign in, see Starting Oracle Integration Cloud Service on
Oracle Help Center.
1. Create a service request so the Cloud Operations team can register the CSF-KEY (Credential Store Framework).
You need the key to sign into Integration Cloud Service.
Request a separate key for each order administrator who uses Integration Cloud Service. For details, see the
Request CSF Keys for Oracle Integration Cloud Service topic.
2. Get access to the SOA Infra Operations Duty role.
The Order Administrator job role and the Supply Chain Application Administrator job role each come
predened so they include SOA Infra Operations Duty.
◦ If you use a dierent role, such as Order Manager, then use the Security Console to get access to the SOA
Infra Operations Duty role.
379
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ If your connection publishes the Sales Order Notication event to Integration Cloud Service, then you
must specify the login credentials of an Oracle Cloud Application user so you can access the Event
Catalog URL. You must assign the SOA Operator Role role to this user.
◦ Assign the Order Manager job role so this same user can call the web services that Order Management
uses. The integration must use the same login credentials to call web services at run time that you use
when you set up the integration at design time. These are Oracle Cloud Application user credentials.
If you use this connection to publish a business event to Integration Cloud Service, and to call Order
Management web services, then the Oracle Cloud Application user must use the Order Manager job role
and the SOA Infra Operations Duty role.
For more details, see the Assign Job Roles in Order Management topic.
3. Create the connection.
Aribute Value
Name Enter any text that describes the connection. For example, Connection_ for_ Order_
Status_ Update.
Identier Enter any text that describe the connection. For example, CONNECTION_ FOR_
ORDER_ STATUS_ UPDATE.
Description Enter any text that describe the connection. For example, Connection for the order
status update.
Aribute Value
ERP Services Catalog WSDL URL Enter the URL that locates the WSDL. Use this format.
hps: //server: port/ fndAppCoreServices/ ServiceCatalogServicewsdl
For example.
hps://my_ server. com: 9999/ fndAppCoreServices/ ServiceCatalogServicewsdl
ERP Events Catalog URL (optional) Enter the URL that locates the events catalog. Use this format.
380
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
hps: //server: port/soa-infra
For example. hps: //myserver com: 7818/ soa-infra
These URLs allow Integration Cloud Service to connect to Oracle ERP so Integration Cloud Service can
get details about the services and events that are available in Oracle ERP Cloud. Contact your system
administrator to determine the URLs you must use.
4. Congure security.
◦ Click Congure Security.
◦ In the Credentials dialog, enter the user name and password you use to access Order Management as an
administrator, then click OK.
◦ At the top of the page, click Test, then wait for the indicator that displays immediately to the right of Test
to change to a green color, and to display 100%.
◦ Click Save > Close.
Create an Integration
Here's the integration you create.
Aribute Value
What do you want to call your Describe the connection. For example, enter Connection_ for_ Order_ Status_ Update.
integration?
381
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Identier Describe the connection. For example, enter CONNECTION_ FOR_ ORDER_ STATUS_
UPDATE.
What does your integration do? Describe the connection. For example, enter Integration that uses a business event to
monitor updates to the order status.
5. On the page that displays, you will identify the source of the connection that provides the details. For this
example, in the search window, enter Connection_for_Order_Status_Update, which is the integration that you
created earlier, then click ENTER.
The test you did earlier for the connection you created must nish successfully. If it doesn't, then the search
won't return the connection.
6. Drag and drop Connection_for_Order_Status_Update from the search results onto the Drag and Drop a
Trigger area.
7. In the Congure Oracle ERP Cloud Endpoint dialog, specify the events and scenarios for the ERP Cloud
connection. Set values, then click Next.
Aribute Value
What do you want to call your Describe the endpoint. For example, enter PublishOrderStatusUpdated.
endpoint?
What does this endpoint do? Describe the connection. For example, enter Publish the OrderStatusUpdated event.
Integration Cloud Service uses the URLs you set up earlier to get the event catalog, and then display it in the
Business Event for Subscription list. This list helps you choose from the events that are available in Oracle ERP
Cloud.
9. In the Business Event for Subscription list, enter Order, then click Sales Order Notication > Next.
10. On the Congure the Response to Send to the Oracle ERP Cloud Application page, note that Integration Cloud
Service only listens for events in this integration, then sends them to subscribers without replying to Order
Management. So, click None > Next.
11. On the Summary page, click Done.
382
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Use Tracking to test your set up. Use it to view the business events that your integration raises in the
monitoring system that Integration Cloud Service provides.
2. For this example, on the Business Identiers for Tracking page, in the Source tree, under the result branch, click
Load More.
Here are the business identiers you will track.
3. Drag and drop SourceTransactionNumber from the hierarchy tree to the rst row of the Tracking Field
column.
4. Drag and drop Event from the hierarchy tree to the second row of the Tracking Field column.
5. In the result branch, expand LineStatusUpdate, then click Load More.
6. Drag and drop StatusCodeNewValue from the hierarchy tree to the third row of the Tracking Field column.
7. Click Done.
8. On the page that displays, click Save > Exit Integration.
9. On the Integrations page, in the Connection_for_Order_Status_Update row, click Pending Activation.
10. In the Conrmation dialog, add a check mark to the Enable Tracingoption, then click Yes.
383
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
specied earlier. You must have already set up this orchestration process and nished other setup in Order
Management.
3. Navigate back to Integration Cloud Service, then click Monitoring.
4. On the Integrations Dashboard, click Tracking, then click anywhere in the Messages area.
5. In the search window, enter the order number you noted earlier, such as 492634, then click ENTER.
6. In the search results, notice that Order Management raised more than one event for the sales order. Click the
event at the top of the list, which is the most recent event.
7. On the page that displays, click Business Identiers, then verify that the tracking details you set up for tracking
earlier displays.
Here are the details you set up in this example.
For example.
Related Topics
• Overview of Security Console
Filter Details when Using Integration Cloud Service with Order Management
Filter the event notications that Integration Cloud Service sends to your channel or fulllment system.
1. Use the Manage Business Event Trigger Points page to set up trigger points that enable event Order Status
Updated.
2. Use Integration Cloud Service to create an integration.
For details, see resources on the Oracle Help Center.
◦ Using Integration Cloud Service with Order Management to Communicate Events: Procedure
◦ Tutorials for Oracle Integration Cloud Service
◦ Videos for Oracle Integration Cloud Service
384
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ Open the mapping that maps the integration to Order Management Cloud.
◦ To allow events that only originate for sales orders from Order Management, create a lter on the Source
Transaction System aribute.
◦ To ignore events for a trigger that you set up on the Manage Business Event Trigger Points page, create
a lter on the Event Code aribute for each trigger you must lter.
For details, see topics in the Using Oracle Integration Cloud Service section on Oracle Help Center.
Get CSF Keys So You Can Sign Into Integration Cloud Service
Get the CSF (Credential Store Framework) key you need to sign into Oracle Integration Cloud Service.
Body Provide the identity domain that your integration can use for Order Management Cloud
and for Oracle Integration Cloud Service subscriptions. For example, icssvc. identity.
domainidm2152.
Request a separate CSF-KEY for each order administrator who must access Integration
Cloud Service.
2. Wait for Oracle to reply to your service request. When Oracle does reply, provide them with the user name and
password that you use to access Integration Cloud Service. Oracle will then create the CSF-KEY.
Transportation
Overview of Integrating Order Management with Transportation Management
Integrate Order Management Cloud with Oracle Transportation Management or some other transportation
management system that resides outside of Oracle so it sends sales orders for transportation planning, and receives
updates at fulllment milestones, such as plan complete or proof of delivery.
• Leverage your transportation management system so it can eciently plan transportation.
385
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Optimize the shipment that ships each sales order and minimize freight costs while meeting your customer
delivery requirements.
• Use Transportation Management to schedule and optimize shipments, nalize the transportation plan, tender
shipments to carriers, and send updated schedule dates to Order Management, providing the Order Manager
with visibility to the new shipment schedule.
• Enable your users to search sales orders according to scheduled ship date, scheduled arrival date, actual
delivery date, or transportation planning order.
• Update Order Management after the customer receives shipment. Use updated dates and statuses to identify
exceptions and control orchestration process ow.
• Provide nal delivered status after the item ships.
• Enable Order Management to use the same process for a change order that it uses for the original sales order.
• Invoice each sales order only after delivery.
• Get a delivery notication when fulllment delivers the shipment.
• Implement an end-to-end ow with Oracle Inventory Cloud for shipments.
386
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Order Management sends order status details to Transportation Management when the user creates, revises, or cancels
the sales order. Transportation Management plans and does fulllment, sends updated scheduling details to Order
Management, then Order Management displays them in fulllment views in the Order Management work area.
This example illustrates how the fulllment line and Shipping tab display updated values for shipping aributes.
387
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Shipped Quantity
• Fullled Quantity
• Actual Fulllment Date
1
9
Send Tender
Screen Party to Carrier
for Compliance
5
Legend:
Global Trade Management or Transportation Management
Supply Chain Management Cloud
1. Dene Party and Classify Product. A Compliance Manager uses the administrative interface in Global Trade
Management to set up the party that identies the customer and to classify the item.
2. Create Sales Order. An Order Entry Specialist creates a sales order in the Order Management work area. The
sales order references the customer and item that the Compliance Manager created.
3. Screen Party for Compliance, Screen for Export Control, and Determine License.
Screening Request
Inventory
Integration Global Trade
Management
Cloud Service Management
Cloud
Screening Result
Inventory
Global Trade Integration
Management
Management Cloud Service
Cloud
388
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
◦ Inventory Management Cloud sends a screening request through Integration Cloud Service to Global
Trade Management. You can also set up Order Management to do trade compliance screening before
submiing the sales order, and you can use Inventory Management Cloud to screen during shipping.
◦ Global Trade Management screens the party for trade compliance according to request details that
you set up in Inventory Management Cloud. For example, you can request to screen shipment lines on
a specic step during the fulllment process according to your business requirements, such as after
fulllment staged fulllment lines but hasn't shipped them. Global Trade Management can also screen
the transaction for export controls, and can screen the party and transaction for licensing.
◦ Global Trade Management sends screening results through Integration Cloud Service to Inventory
Management Cloud.
4. Orchestrate Order. Order Management orchestrates fulllment for the sales order, including creating a
shipment request in Shipping.
5. Fulll Order. Transportation Management receives a transportation management request for the fulllment
line from Order Management, acknowledges the request, and converts it to an order release.
The Order Management work area updates the screening status on the Order page during orchestration. It also
updates the transportation planning order and orchestration process number on the Fulllment Lines tab, and
it updates the status of the orchestration plan on the Orchestration Process tab with the details it receives from
Transportation Management.
6. Pick and Pack. Oracle Fusion Shipping picks and packs the sales order in the warehouse.
7. Create Export Documents. Optional. If the ow includes Global Trade Management, then it creates export
documents, if necessary, and also creates the Shipment Trade Transaction. As an option, it can also screen
for compliance according to how you set it up for screening during order fulllment, and then send screening
results and reason to Shipping.
8. Send Tender to Carrier. Oracle Transportation Management creates and sends the tender to carrier. If
necessary, Global Trade Management declares the export.
9. Ship Item. Oracle Shipping ships the item and sends the shipment advice to Order Management and
Transportation Management. The customer receives and acknowledges receipt, then Transportation
Management sends shipment delivery conrmation to Order Management. Order Management sends the
fulllment line to Oracle Fusion Accounts Receivable for invoicing, then sets the fulllment line status to Closed.
389
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Required.
◦ Send details from Order Management to Transportation Management when the user creates, revises, or
cancels a sales order.
◦ Send acknowledgement from Transportation Management to Order Management.
• Optional.
◦ As an option, send fulllment details from Transportation Management to Order Management. For
example, conrm that Transportation Management created the order release, send transportation plan
that includes updated schedule dates, or send delivery conrmation details, such as delivery date.
390
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
391
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
• Use the predened DOO_TransportationPlanning task type in the orchestration process. This task type allows
Order Management to send a new request to the transportation management system, and to update or cancel
a request that already exists.
• Reference DOO_TransportationPlanning at any point in the stepwise sequence of an orchestration process,
depending on your business requirements. For example, set up an orchestration process so it identies the
source of supply, reserves inventory, then plans transportation.
• It might be necessary to wait for a response from Transportation Management in some situations. For
example, an order release is a representation of the sales order in Transportation Management. Transportation
Management uses the sales order as input to create the order release.
If Transportation Management can't successfully create the release, for example, an aribute that it requires for
planning transportation is missing a value, then it might be useful to prevent the orchestration process from
392
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
proceeding, such as to a ship item step, until the Order Manager can determine whether to allow the process to
proceed without the release.
• To add a wait step, copy the Send Request step, then modify the copy as necessary.
• Use value DOO_TP_REQ_ACCEPT or value CANCELED in the Status Code aribute as the exit criteria for the
wait step.
• Flow doesn't proceed to the next step until Transportation Management replies that it successfully created the
sales order release.
• Don't wait for a response unless you need it to meet a business requirement. Waiting for the response increases
the possibility that the orchestration process might take a long time to nish, or get stuck waiting for the
response.
• Process the response from Transportation Management at dierent steps in the orchestration process, such
as after the transportation plan nishes, or after Transportation Management sends proof of delivery. Order
Management can use the response after the transportation plan nishes even if the orchestration process isn't
currently running the DOO_TransportationPlanning task.
• DOO_TransportationPlanning uses an indicator to mark each fulllment line that Transportation Management
planned so some other system can process it.
For example, the predened integration with Inventory Cloud sets a transportation planning hold on each
shipment request that references a fulllment line that contains this indicator. The integration releases the hold
only after Transportation Management receives the transportation shipment plan.
At run time, the Status aribute on the order line references DOO_TransportationPlanning on the orchestration process
to get the status for Awaiting Transportation Planning Response.
393
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• The DOO_TransportationPlanning task and Shipment task come predened to use dierent aributes to
identify change. You must modify them so they use the same aributes. For details, see the Manage Order
Aributes That Identify Change topic.
• If your orchestration process includes branching, and if you include the Shipment task in one or more
branch, and if you expect transportation and shipping will process the order line, then you must include the
DOO_TransportationPlanning task in each branch that includes the Shipment task. For Example, if you include
Shipment in branch x for normal shipping and branch y for back-to-back shipping, then you must include
DOO_TransportationPlanning in x and y instead of including DOO_TransportationPlanning in a step that occurs
before the branch.
394
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Make sure the DOO_TransportationPlanning task and the Shipment task use the same compensation paern.
For details about compensation paerns, see the Manage Change That Occurs During Order Fulllment topic.
Note.
• Get updated scheduled dates and order release number from Transportation Management.
• Prevent Order Management from updating the sales order after it sends it to Transportation Management. See
the section about constraints later in this topic.
395
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note these points about geing the transportation plan and delivery conrmation.
• The transportation plan uses the DOO_TP_PLANNED value in the TaskInstanceStatusCode aribute.
• The transportation plan updates the Scheduled Ship Date aribute and the Scheduled Arrival Date aribute.
• If Transportation Management splits the transportation plan into two separate shipments, then Transportation
Management sends the latest date of these shipments to Order Management. For example, if shipment
one delivers on January 1, and shipment two delivers on January 15, then the transportation plan that
Transportation Management sends to Order Management will include only the latest date of the nished
shipment, which is January 15.
• If the orchestration process receives the transportation plan when its not on a wait step, then it will reject the
plan and will reject the request to update.
To make sure the orchestration process reaches a wait step, allow about 10 minutes between the most recent
update that Order Management sends to Transportation Management, and the time when Transportation
Management sends the plan update to Order Management.
• Add a pause step that's similar to the Shipping step in the orchestration process.
• Get delivery conrmation at dierent points in the orchestration process, such as Awaiting Billing.
For example, to prevent the Invoice step from running before conrming delivery, add a pause step before the
invoice step, then set up the pause so it waits until Order Management receives delivery conrmation.
• Use the SAC_SYSTEM_EVENT_POD_PAUSE event and the TransportationPlannedFlag aribute.
• Use SAC_SYSTEM_EVENT_POD_PAUSE to release the pause when Transportation Management sends status
DOO_TP_DELIVERED.
• Make sure the orchestration process is on a wait step when it receives the response.
• The status description for DOO_TP_DELIVERED is Shipment Delivered. However, if you use a pause to get
delivery status, then Shipment Delivered doesn't display. Instead, set up a pause status that displays Shipment
Delivered.
On the pause step, click Click for Rule, then create two pause rules.
Order Management releases SAC_SYSTEM_EVENT_POD_PAUSE after it receives delivery conrmation so you can use
this event to process a subsequent sales order.
Rule 1
where
396
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Code Description
If "D" equals ignore case If the TransporationPlannedFlag aribute on the fulllment line contains D.
DooSeededOrchestrationRules.
DOOFLine.
TransporationPlannedFlag
assert new Then immediately release the pause task and continue to the next step in the orchestration
DooSeededOrchestrationRules. process.
SacResult (sacType:
DooSeededOrchestrationRulesSacResultSACTYPE
IMMEDIATE)
Rule 2
where
Code Description
If NOT ("D" equals ignore case If TransporationPlannedFlag on the fulllment line doesn't contain D.
DooSeededOrchestrationRules.
DOOFLine.
TransporationPlannedFlag )
assert new
DooSeededOrchestrationRules. Then.
SacResult (eventName:
• Use business event SAC_SYSTEM_EVENT_POD_PAUSE to pause the orchestration
DooSeededOrchestrationRulesSacResultSACSYSTEM
EVENT_ POD_ PAUSE process.
reevaluateFlag: "Y"sacType: • Set reevaluateFlag:"Y" to evaluate the condition every time the orchestration
process nishes a step. If the condition doesn't evaluate to true, then release the pause
DooSeededOrchestrationRulesSacResultSACTYPEEVENT)
task.
• Use SAC_TYPE_EVENT to pause the pause task until Order Management releases
SAC_SYSTEM_EVENT_POD_PAUSE.
For details about how to create a pause rule, see the Pause Orchestration Processes topic.
397
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
• Shipment Plan Complete prevents the user from revising the order line in the Order Management work area
after Transportation Management sends the transportation plan to Inventory Management. This constraint
comes predened as disabled. You can enable it during set up.
398
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Before Release 18C, Inventory Management supports only a quantity change or order cancel after
Transportation Management sends the transportation plan to Inventory Management. Inventory Management
doesn't support any other order revisions before Release 18C.
Inventory Management supports revisions starting with Release 18C. You can disable Shipment Plan Complete
after you upgrade to Release 18C.
• Order Management uses the transportation plan to determine whether Transportation Management already
sent the transportation plan to Shipping.
• If you don't use Oracle Inventory Management, then don't enable the Shipment Plan Complete constraint.
Set Up Integration
Set Up Connector
Note.
• If you use the predened integration in Integration Cloud Service, then set Invocation Mode to Business Event.
• If you don't use the predened integration, then set Invocation Mode to Synchronous or Asynchronous.
399
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Name the connector TransportationPlanning. Order Management uses the name at various locations in the
architecture. Using TransportationPlanning will help you identify the connector involved in the ow that you're
seing up or during troubleshooting.
Use a predened integration in Integration Cloud Service as a starting point for your integration. Use the
TransportationPlanning connector to connect through a business event.
For example.
400
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
401
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Click Get App to access article Integration with OTM or GTM using ICS (Doc ID 2209248.1) on My Oracle
Support.
• Import one of the example integrations into Integration Cloud Service. For example, import integration
OTM_OM, Communicate Order Shipping Information to Order Management Cloud.
• Examine the integration in the Integration Cloud Service user interface.
Note.
• The predened integration in Integration Cloud Service uses this structure. If you modify it, then use this
payload as an example of the data that your fulllment system must send.
402
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Related Topics
• Orchestration Processes
In this example, you create an orchestration process so it sends the request for transportation planning after the
fulllment system identies a source and reserves inventory.
403
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
This topic includes example values. You might use dierent values, depending on your business requirements.
Try it.
1. Use Integration Cloud Service to create an integration between Order Management and Transportation
Management.
Make sure you set the business event trigger points that you need to start the integration process. For details,
see the Overview of Using Integration Cloud Service with Order Management topic.
2. Create the orchestration process.
You can integrate Order Management with Transportation Management only through a long-running
task.
◦ In the Edit Orchestration Process Denition dialog, set values, then click Save.
Aribute Value
Process Name Enter any text. For this example, enter ShipOrder_ PlanTransportation.
Process Display Name Enter any text. For this example, enter Ship Order and Plan Transportation.
Aribute Value
404
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
4. On the Step Denition tab, add a step at any location in the sequence of steps.
Aribute Value
Task TransportationPlanning
This step sends the sales order to the fulllment system for transportation planning. For this example, add this
step immediately after the Create Reservation step.
5. Optional. Add this step immediately after the Send Request to Transportation Management step.
Aribute Value
405
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Task TransportationPlanning
Exit Criteria
Add a check mark to each criteria.
◦ Canceled
This exit criteria causes the orchestration process to wait until the Transportation Planning
Request Accepted status equals Y, or until Order Management cancels the request, such as
through a time out.
Note.
◦ This step temporarily pauses the orchestration process so Transportation Management can validate the
planning request before the orchestration process creates the shipment request.
◦ Set up your orchestration process so it processes the response while waiting on a pause step.
◦ If you don't add this step, then the orchestration process will continue to run and fulll the sales order
without waiting for validation from Transportation Management.
Related Topics
• Orchestration Processes
406
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
The connector updates these charges in Order Management Cloud, then sends them to invoicing.
Points to Consider
• Set up your task as a long-running task that uses a wait step in your orchestration process.
• Send the existing charges back through the task response in addition to the new charges that you're adding for
freight.
• Make sure you use only one primary charge for each ChargeAppliesTo on each fulllment line.
• Make sure you set the Applies To aribute to SHIPPING for each new charge you add.
• If you split the shipment lines, and if you capture more than one shipping cost in one fulllment line, then sum
the costs and send a single freight charge through your task.
• If you must calculate tax on the freight charges, see the Integrate Order Management with Oracle Receivables
topic.
• To refund the freight charges in a return material authorization (RMA), make sure you set up the Charge
Denition Code as refundable.
• Only one charge can exist for each Charge Denition Code.
• Make sure the combination of Charge Denition Code, Charge Type Code, Charge Sub Type Code and Price
Type Code is valid.
To verify charge denition codes, go to the Setup and Maintenance work area, then open the Manage Pricing Charge
Denitions page. For details, see the Manage Pricing Charge Denitions topic.
Files to Download
Some payloads you use in this topic are too long or complex to display in this document, but you can download them as
les from My Oracle Support.
File Description
CostToChargeTTLRequest. xml Example payload that requests to convert costs to freight charges.
Note that the PriceAdjustmentTL tag contains the cost that the ow records when it conrms
shipment.
CostToChargeMappings. xlsx Example mapping that the ow uses for a delayed response.
CostToChargeV. xsl Use this transformation style sheet to convert CostToChargeTTLRequest. xml to
CostToChargeDelayedResponse. xml.
407
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Example Payloads
Here are some example payloads. Use them to see the data that must ow to and from Order Management for your
task.
Here's an example payload that the CostToChargeDelayedResponse.xml le contains. Use the
FulllLineOrderChargeSDOTR tag to send back the shipping charges.
<?xml version="1.0"?>
<nstrgmpr:headerTR xmlns:nsmpr4="http://xmlns.oracle.com/apps/scm/doo/processOrder/flex/
salesCreditContextsB/" xmlns:nsmpr5="http://xmlns.oracle.com/apps/scm/doo/processOrder/flex/
fulfillLineDetailContextsB/" xmlns:nsmpr2="http://xmlns.oracle.com/apps/scm/doo/taskLayer/activity/
model/view/" xmlns:sdoJava="commonj.sdo/java" xmlns:nsmpr3="http://xmlns.oracle.com/adf/svc/
types/" xmlns:nsmpr8="http://xmlns.oracle.com/apps/scm/doo/processOrder/flex/headerContextsB/"
xmlns:client="http://xmlns.oracle.com/apps/scm/doo/taskLayer/externalInterfaceLayer/
DooTaskExternalInterfaceVirtualPartnersComposite/FulfillmentRequest" xmlns:nsmpr9="http://xmlns.oracle.com/
apps/scm/doo/processOrder/flex/priceAdjustmentContextsB/" xmlns:wsdl="http://schemas.xmlsoap.org/
wsdl/" xmlns:nsmpr6="http://xmlns.oracle.com/apps/scm/doo/processOrder/flex/lotSerialNumberContextsB/"
xmlns:nsmpr7="http://xmlns.oracle.com/apps/scm/doo/processOrder/flex/fulfillLineContextsB/"
xmlns:nsmpr0="http://xmlns.oracle.com/apps/scm/doo/processOrder/flex/paymentContextsB/"
xmlns:nsmpr1="http://xmlns.oracle.com/apps/scm/doo/processOrder/service/" xmlns:nstrgmpr="http://
xmlns.oracle.com/apps/scm/doo/taskLayer/model/" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
xmlns:sdo="commonj.sdo" xmlns:ns1="http://xmlns.oracle.com/apps/scm/doo/taskLayer/activity/model/"
xmlns:tns="http://xmlns.oracle.com/adf/svc/errors/" xmlns:ns0="http://xmlns.oracle.com/apps/scm/doo/
processOrder/model/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/
wsdl/soap/" xmlns:sdoXML="commonj.sdo/xml">
<nstrgmpr:HeaderId>300100135839047</nstrgmpr:HeaderId>
<nstrgmpr:FulfillLinesTR>
<nstrgmpr:FulfillLineId>300100135839049</nstrgmpr:FulfillLineId>
<nstrgmpr:SourceOrderSystem>GPR</nstrgmpr:SourceOrderSystem>
<nstrgmpr:StatusCode>AWAIT_RESPONSE</nstrgmpr:StatusCode>
408
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
<nstrgmpr:TaskType>ConvertCostToCharge</nstrgmpr:TaskType>
<nstrgmpr:Status>AWAIT_RESPONSE</nstrgmpr:Status>
</nstrgmpr:FulfillLinesTR>
</nstrgmpr:headerTR>
Related Topics
• Manage Pricing Charge Denitions
• Create Your Own Task Type
409
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Shipment Tolerances
Guidelines for Seing Up Shipment Tolerances
Use these guidelines to help you prepare for and set up shipment tolerances
How it Works
1. Order Management creates and sends a shipment request to Oracle Fusion Shipping. The request includes
shipment tolerances.
2. Shipping enforces the tolerances, ships the line, then sends a reply to Order Management.
3. Order Management evaluates the fulllment line to determine whether to proceed to the next orchestration
process step, or to split the line.
4. Order Management sends the sales order to Receivables.
5. Receivables invoices the transaction.
410
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Receivables invoices the transaction according to the quantity that Order Management sends.
• Undershipment. Order Management sends the actual, fullled quantity to receivables.
• Overshipment. Order Management sends the ordered quantity or fullled quantity depending on the value of
the Quantity to Invoice for Overshipment parameter.
Points to Consider
• You can add tolerances to an order line on the Create Order page in the Order Management work area, through
File-Based Data Import (FBDI), Electronic Data Interchange (EDI), a web service, or REST API.
• If your tax authority requires you to create a tax invoice before you ship the sales order, then consider how
seing the Quantity to Invoice for Overshipment system parameter aects your tax compliance requirements.
• If you decrease the order quantity, or if you change the tolerance behavior in a way that results in the shipped
quantity meeting the tolerance behavior, then you must create another shipment to close the fulllment line.
• Implementing tolerances doesn't aect your integration with Transportation Management Cloud or
Global Trade Management. If a problem occurs with one of these integration, you might need to manually
troubleshoot it.
411
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Back-to-Back Flows
Order Management sets tolerances on the order line during a back-to-back ow in the same way it sets them for a
regular order line. Shipping fullls an overshipment or undershipment during back-to-back in the same way it fullls a
regular order line.
Limitations
You can't opt out of the Manage Shipment Tolerances for Sales Orders feature after you submit a sales order that
includes a shipment tolerance value isn't empty or zero. At this point, you're commied to using the feature. You also
can't revert application behavior at this point.
412
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
413
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
If the Over Fulfllment Tolerance attribute on the fulfillment line is equal to 28, then prevent the user from
modifying the line.
414
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Parameter Description
415
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Parameter Description
• You can enter a value with up to three decimal places, such as 10.463.
• If you don't specify a value, then Order Management uses 0, by default.
• If you use a defaulting rule or order management extension to set the value, then the
rule or extension overrides the value you set for the parameter.
Default Value for Undershipment Set the default value that you want Order Management to use as a percent for undershipment
Tolerance tolerance on the order line.
Use the same formaing requirements described for Default Value for Overshipment
Tolerance, except don't exceed 100 for Default Value for Undershipment Tolerance.
• Shipped quantity. Invoice the actual shipped quantity. This is the default value.
• Ordered quantity. Invoice the order line quantity.
Assume the ordered quantity on an order line is 100 tons of steel with each ton priced at $800.
You over ship 103 tons for the order line. If you set Quantity to Invoice for Overshipment to.
• Shipped quantity. The invoice will contain 103 tons with a total line value of $82,400.
• Ordered quantity. The invoice will contain 100 tons with a total line value of $80,000.
Note.
• If shipped quantity is equal to or less than ordered quantity, then Order Management
bills for shipped quantity. If you under ship, then Order Management bills for shipped
quantity and you can't bill for ordered quantity.
• If Order Management splits the line into more than one line, or if shipping splits the line
into more than one shipment, then Order Management splits the original fulllment
line. It also evaluates whether the sum of the shipped quantity across split fulllment
lines exceeds the sum of the ordered quantity across the same set of split fulllment
lines when it sends each split fulllment line to Receivables. Its possible that Receivables
will only recognize that the last split fulllment line over shipped.
• A change that you make to this parameter takes eect only on fulllment lines that
Order Management hasn't sent to Receivables when you save your change. Receivables
will use the old parameter value for fulllment lines that Order Management already
sent to Receivables.
• Item validation organization. Use the values you set in the Product Information
Management work area.
416
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Parameter Description
If you specify item validation organization, and if you don't specify tolerances for the
item in Product Information Management, then Order Management uses the values
you specify for the Default Value for Overshipment Tolerance and Default Value for
Undershipment Tolerance parameters.
• None. Set the default values for shipment tolerances to zero.
Any change you make to this parameter takes eect only on new sales orders that you create
and submit after you save your changes to the parameter.
You can set values dierently for each business unit on each parameter. Click Add Row, then set the Business Unit
aribute. For example, when you set the Source for Shipment Tolerance Values, to set the source only for sales orders
that reference the Vision China business unit, click Add Row, then set the Business Unit aribute to Vision China in the
new row.
Vision Japan
Shipment tolerances parameter
If the business unit on the sales order is Vision Japan, then use your set up on the parameters.
In this example, set up an overshipment tolerance of 10%, and an undershipment tolerance of 10% for the AS54888
item.
417
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Note.
Trouble Shoot
I don't see the Over Fulllment They come predened as hidden. On the order lines tab, click View > Columns, then make sure
Tolerance or Over Fulllment each of them contains a check mark. If they don't display in the menu when you click View >
Tolerance aributes on the order Columns, then make sure you enable the tolerances opt-in feature.
line on the sales order in the Order
Management work area.
I don't see the order management Make sure you enable the tolerances opt-in feature.
parameters that I use to set up
tolerances, such as Default Value for
Overshipment Tolerance, Quantity to
Invoice for Overshipment, or Source
for Shipment Tolerance Values.
Create Order
You set the parameter values.
418
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Parameter Value
Parameter Value
You don't set any values for item AS10000 in Product Information Management.
The Order Entry Specialist creates a new sales order in the Order Management work area and adds three items. Order
Management displays a separate order line for each item.
AS54888 10 50
AS10000 5 25
The Order Entry Specialist clicks Submit, and Order Management creates sales order 12345.
Copy Order
Continuing from the create order example, assume you change the parameter values.
Parameter Value
419
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Parameter Value
Order Management creates a new sales order that contains the same lines as order 12345, gets your updated parameter
values, and displays your updated tolerances on the order lines.
AS54888 0 30
AS10000 0 30
You set the Source for Shipment Tolerance Values to Shipment Tolerance Parameter, so Order Management doesn't
get any tolerance values from Product Information Management. It gets them from the parameters for each item.
Revise Order
Instead of copying sales order 12345, assume the Order Entry Specialist clicks Actions > Create Revision, then creates a
new order line for the AS20000.
Order Management creates a new sales order that contains the same lines as order 12345, and displays your updated
tolerances on the order lines.
AS54888 10 50
AS10000 5 25
AS20000 0 30
Order Management doesn't revise tolerances for order lines that it copies during a revision, but it does get the latest
values from the parameters for new lines that the user adds.
Assume the Order Entry Specialist changes the quantity for the AS10000. Order Management continues to use 0 and
30 for the tolerances. It doesn't update tolerances when the user changes quantity.
420
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
The under tolerance for the AS54888 is 10%, and the over tolerance is 50%. The Shipping Manager is the user for
the shipment application. Shipping doesn't allow the Shipping Manager to ship less than 13 because 10% of 15 is 1.5.
Shipping rounds up to the nearest whole number, so the calculation is 15 minus 2. Shipping doesn't allow the user to
ship more than 23 because 50% of 15 is 7.5, so the calculation is 15 plus 8.
Order Management sends sales order 12345 to shipping. Shipping splits the AS54888 order line into more than one
delivery, over ships the line, then closes it.
The AS54888 line is in status Awaiting Shipping. The Shipping Manager creates and ships three deliveries with
quantities of 12, 2, and 1. Some time later, the Shipping Manager adds a quantity of 3 to the second delivery. Shipping
fullls the second delivery, cancels the third delivery, sets the FinalShipmentFlag aribute to Y, then sends the aribute
to Order Management.
The Shipping Manager examines the customer order and notices it includes two lines for the AS54888. One line
includes an ordered quantity of 7 and a shipped quantity of 12. The other line includes an ordered quantity of 3 and a
shipped quantity of 3. Both lines are awaiting billing.
Here's a summary.
3 1 - Canceled - - -
Shipping might split a fulllment line to help meet the requested delivery date. It uses a formula.
• The ordered quantity on the original fulllment line equals the requested quantity on the shipment.
• Shipping splits the fulllment line.
421
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• The ordered quantity on the new, split fulllment line equals the total ordered quantity minus the requested
quantity on the shipment.
• When the ordered quantity on the fulllment line equals the requested quantity on the shipment, there are no
more splits.
Fulllment Line Ordered Quantity Over Tolerance Under Tolerance Shipped Quantity Status
A truck load limit or transportation planning recommendation sometimes requires a split. There's only a quantity of
8 on hand, so the shipping clerk manually splits the shipment, creates shipment S1, splits the fulllment line into two
shipment lines, and ships SL1. Shipping receives conrmation that the customer received SL1, so it cancels SL2 because
the quantity of 8 on SL1 falls within the under tolerance.
S1 SL1 8 8 Shipped
- SL2 2 0 Canceled
where
Fulllment Line Ordered Quantity Over Tolerance Under Tolerance Shipped Quantity Status
What if only 5 are on hand? Shipping ships 5 and puts 5 more on backorder.
422
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
S1 SL1 5 5 5 Shipped
- SL2 5 - - Backordered
If shipping can't fulll SL2 before the customer receives SL1, then it splits the fulllment line, places the 5 it hasn't
shipped on FL2, and sends the results to Order Management.
Fulllment Line Ordered Quantity Over Tolerance Under Tolerance Shipped Quantity Status
FL2 5 - - - Backordered
Fulllment Line Ordered Quantity Over Tolerance Under Tolerance Shipped Quantity Status
Shipping communicates with Global Order Promising and nds it has a quantity of 12 on hand, so it creates shipment S1
and ships the entire quantity.
S1 SL1 10 12 Shipped
where
• Ordered quantity is 10.
• Under tolerance is 30%.
• Over quantity is 10 multiplied by 30% equals 3.
• Maximum over quantity is 10 plus 3 equals 13.
• Only 12 are available, so shipping ships what's available.
423
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Fulllment Line Ordered Quantity Over Tolerance Under Tolerance Shipped Quantity Status
Fulllment Line Ordered Quantity Over Tolerance Under Tolerance Shipped Quantity Status
Shipping communicates with Global Order Promising and nds it has a quantity of 6 on hand at warehouse A, 2 more at
warehouse B, and 3 more at warehouse C, so it creates three separate shipments, S1, S2, and S3, ships S1, and sends a
request to release inventory to warehouses B and C.
Fulllment Line Ordered Quantity Over Tolerance Under Tolerance Shipped Quantity Status
Some time later, shipping ships S2 and updates the status for S2 to Shipped.
424
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Shipping splits FL2 into FL2 and FL3, and sets the status for FL3 to Awaiting Shipping.
Fulllment Line Ordered Quantity Over Tolerance Under Tolerance Shipped Quantity Status
Some time later, shipping ships S3 and updates its status to Shipped, but S3 could only ship a quantity of 1, so shipping
creates another shipment, S4.
Fulllment Line Ordered Quantity Over Tolerance Under Tolerance Shipped Quantity Status
425
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Fulllment Line Ordered Quantity Over Tolerance Under Tolerance Shipped Quantity Status
Fulllment Line Ordered Quantity Over Tolerance Under Tolerance Shipped Quantity Status
The total shipped quantity for the fullled sales order is 12, which is below the maximum over quantity of 13.
426
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
This topic provides a summary of the set up. This integration is similar to the integration you create with transportation
or trade compliance. Here are some topics where you can get more details.
427
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
screening for you. For details about orchestration processes, see the Seing Up Orchestration Processes
topic.
428
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ If you don't use DOO_SubmitSalesOrderProcess, then add steps that call the DOO_TradeCompliance task
type to some other predened orchestration process or one that you create.
429
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
It isn't necessary to use steps 100 and 200. You can place these steps anywhere in the sequence of steps.
But you must request screening rst, and then wait.
3. Route the request.
430
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
◦ Use the Manage Connector Details page to add a connector. If you add a routing rule, then set Invocation
Mode to Asynchronous or Synchronous. If you don't add a routing rule, then set Invocation Mode to
Event. For details about how to add a connector, see topic Manage Connector Details Between Order
Management and Your Fulllment System.
◦ Create a routing rule that routes sales orders that must integrate with Global Trade Management
according to the DOO_TradeCompliance task type.
◦ Use Visual Information Builder to create a routing rule.
Here's your logic if you use Oracle Business Rules instead of Visual Information Builder.
For details about how to create a routing rule, see the Overview of Using Business Rules With Order
Management topic.
431
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
2. Click Connections, search for Oracle ERP Cloud, then click Select.
<secure_protocol>://<host>:<secure_port>/fndAppCoreServices/ServiceCatalogService?WSDL
5. Enter the URL for the ERP Event Catalog. For example.
<Protocol>://<host>:<port>/soa-infra
6. Enter the user name and password you use to sign into Order Management as the administrator.
432
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
433
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
http://<server:port>/GC3Services/TransmissionService/call?wsdl
5. Enter the user name and password you use to access the WSDL.
434
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
6. Test and save the connection. You should see this page.
435
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Type BusinessEvent
Aribute Value
Type Delayed
Operation processAcknowledgement
3. Search for the GTMfromOM connection you created earlier, then drag and drop it onto the target. The target is
on right side of the integration.
4. In the dialog that displays, enter details.
Aribute Value
436
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
437
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
Note.
◦ See the Aributes in Request Payloads That Integrate Order Management topic to get a list of the
aributes you can map.
438
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Use this example payload as a guide to help determine the mapping you need to create. Global Trade
Management sends this payload as a response to the call from Order Management.
<?xml version="1.0"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://
xmlns.oracle.com/apps/scm/doo/taskLayer/commonService/types/" xmlns:com="http://xmlns.oracle.com/apps/
scm/doo/taskLayer/commonService/" xmlns:mod="http://xmlns.oracle.com/apps/scm/doo/processOrder/model/">
<soapenv:Body>
<typ:processFulfillmentResponse>
<typ:responseMessageHeader>
<com:IntegrationContextCode>DOO_TradeCompliance</com:IntegrationContextCode>
<com:FulfillmentSystemResponseIdentifier/>
</typ:responseMessageHeader>
<typ:fulfillLineList>
<com:OrderNumber/>
<com:FulfillLineIdentifier>300100175497843</com:FulfillLineIdentifier>
<com:TradeComplianceScreeningResultCode>ORA_PASSED</com:TradeComplianceScreeningResultCode>
<com:TradeComplianceScreeningDate>2018-11-23T12:12:12</com:TradeComplianceScreeningDate>
<com:FulfillmentDetail>
<com:TradeComplianceTypeCode>ORA_SANCTIONED_TERR</com:TradeComplianceTypeCode>
<com:TradeControlCode/>
<com:TradeComplianceComments/>
<com:TradeComplianceScreeningResultCode>ORA_PASSED</com:TradeComplianceScreeningResultCode>
</com:FulfillmentDetail>
<com:FulfillmentDetail>
<com:TradeComplianceTypeCode>ORA_RESTRICTED_PARTY</com:TradeComplianceTypeCode>
<com:TradeControlCode/>
<com:TradeComplianceComments/>
<com:TradeComplianceScreeningResultCode>ORA_PASSED</com:TradeComplianceScreeningResultCode>
</com:FulfillmentDetail>
<com:FulfillmentDetail>
<com:TradeComplianceTypeCode>ORA_TRADE_CONTROL</com:TradeComplianceTypeCode>
<com:TradeControlCode/>
<com:TradeComplianceComments/>
<com:TradeComplianceScreeningResultCode>ORA_PASSED</com:TradeComplianceScreeningResultCode>
</com:FulfillmentDetail>
</typ:fulfillLineList>
</typ:processFulfillmentResponse>
</soapenv:Body>
</soapenv:Envelope>
Note.
• TaskInstanceId
• SourceTransactionSystemCode
• RequestStatusCode with a value of SUCCESS
◦ The integration uses this return mapping only when it calls processAcknowledgement, and only when
Global Trade Management sends a successful response.
439
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
On the menu at the top right of the edit integration page, click Tracking, drag a payload eld from the Source,
and drop it onto the Tracking Field section.
Integration Cloud Service uses business identiers to track messages at run time. You can use them to help
identify and monitor instances of the integration.
440
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
The screen print is hard to read and displays only part of the hierarchy. Here's the Source hierarchy that it
displays.
onEvent
getOrderRequestFulfillmentDetails
result
SourceTransactionIdentifier
SourceTransactionSystemIdentifier
TargetSystemName
TargetSystemCode
TargetSystemIdentifier
441
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
FusionSystemName
FusionSystemCode
FusionSystemIdentifier
SourceTransactionNumber
BuyingPartyIdentifier
BuyingPartyName
BuyingPartyNumber
Related Topics
• Orchestration Processes
• Overview of Seing Up Trade Compliance
442
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Here's how the ow from Order Management to Global Trade Management works.
1. Submit an order through an orchestration process that includes the GTM step.
2. The orchestration process reaches the create step, then raises a GTM event. Integration Cloud Service
subscribes to the event.
3. The ow creates a new instance of Integration Cloud Service. The instance calls the mapping that maps output
from OrderFulllmentRequestService to the input to Global Trade Management, then calls the service in Global
Trade Management.
443
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
4. The ow successfully establishes the integration, then calls the processAcknowledgement operation of
service OrderFulllmentResponseService. processAcknowledgement changes the fulllment line status to
DOO_GTM_AWAIT.
Here's how the ow from Order Management to Global Trade Management works.
444
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Lookup Description
• Failed
• Under Review
• Passed
Each response from trade compliance screening contains the screening result for the
fulllment line and details for each screening type for the fulllment detail. It stores these
details in the TradeComplianceScreeningResultCode aribute.
Each fulllment detail in the response corresponds to a screening type that the
TradeComplianceTypeCode aribute species in the fulllment detail.
ORA_ DOO_ TRADE_ Contains values for the TradeControlCode aribute in the fulllment detail.
CONTROL_CODE
Applies only when TradeComplianceTypeCode is ORA_ TRADE_ CONTROL.
Cross-References
Overview of Creating Cross-References in Order Management
Create and maintain cross-references and domain value maps that relate data between your source system, fulllment
system, and Order Management Cloud.
Each cross-reference helps manage data across systems. For example, your source system might use the value Net
30 Days for a payment term while your billing system uses 30 Days. Use a cross-reference and a domain value map in
Order Management to standardize how you represent the payment term.
Interaction Description
Receive a source order from your The web service that receives the source order uses a cross-reference in the Order
source system. Orchestration and Planning repository to resolve the imported value to a common value in
Oracle Fusion.
445
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Interaction Description
If a cross-reference doesn't exist between your source system and the common value, then the
order fails with an error when you submit it to fulllment.
Send a request to your fulllment Order Management cross-references values from the common value to the source system
system. value.
If it can't nd the source system value in the Order Orchestration and Planning repository, in
Trading Community Architecture, or Product Information Management, then fulllment goes
into error.
446
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example, assume your source system sends a record that includes an identier value of O-524.
The web service uses the Original System Unique Reference (OSR) to map customer details from the source system to
the registry ID in the customer registry in Trading Community Architecture.
1. Load the record from the source system into the customer registry.
2. Assign a registry ID of P242 to the record in the registry.
3. Create a cross-reference between Original System Unique Reference O-524, and registry ID P242.
4. Use registry ID P242 as the relationship to Original System Unique Reference M-42 from the fulllment system.
P242 is the common value that ties the source system to the order fulllment system.
447
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
1. Your source system sends a source order to Order Management that includes customer data.
2. If the customer already exists in Trading Community Architecture, then Order Management uses a customer
cross-reference to get the master customer record and the customer ID of the fulllment system.
3. Order Management sends the sales order, including the customer ID and other aributes it gets from Trading
Community Architecture, to the fulllment system.
Note.
• You can use other values to establish the cross-reference, such as customer name, contact name, address, and
so on.
• Order Management expects the value in Trading Community Architecture will match the value in your source
system. If your source system sends a value, then the web service will use it to identify and resolve the master
data instead of using the Original System Unique Reference.
• To help identify each aribute that references a source system, make sure you include the phrase Original
System Reference in the aribute name when you cross-reference your customer master data. For example.
• If you don't use Trading Community Architecture, but instead use some other application outside of Oracle
Fusion to store customer data, you must still maintain cross-references in Trading Community Architecture.
• For more details about integrating with Trading Community Architecture, see the Guidelines for Controlling
Customer Details in Order Management topic.
• Source system. A relationship between the item in the source system and the Oracle item when you use your
own product hub.
• Named item. A relationship between the item in the source system and the Oracle item when you bring items
from dierent systems into Product Information Management.
Use the Source System Product Reference aribute when you cross-reference item data.
Use a domain value map for these aributes. The collections process uses these maps to map values from one system
to another system, which is useful when dierent systems represent the same data in dierent ways.
448
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Related Topics
• How Order Management Transforms Source Orders Into Sales Orders
• How the Order Orchestration and Order Promising Processes Use the Collected Planning Data
• Guidelines for Controlling Customer Details in Order Management
• Overview of Data Collections for Supply Chain Planning
449
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
This topic includes example values. You might use dierent values, depending on your business requirements.
450
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For details about how to create cross-references, including using the Manage Item Relationships page, see Document
ID 1309859.1 (Oracle Fusion Product Information Management - Understanding Item Cross References), on My Oracle
Support.
1. Sign in with a role, such as PRODUCT_MANAGER, that you can use to access the Product Information
Management work area.
2. Create a lookup.
• Charge Master
• Old Item Number
• Supplier Part Number
• Golden Tax Adaptor
You can use these predened values, or create a new one. For this example, you create a new one.
◦ In the Lookup Codes area, click Actions > New, set values, then click Save and Close.
Aribute Value
Description Item relationship type to use when cross-referencing to an old item name in a legacy
source system.
451
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Item AS54888
1. On the Manage Item Relationships page, set Item Relationship Type to Spoke System Items.
2. In the Create Spoke System Item Relationship dialog, set values.
Aribute Value
Product Information Management creates a cross-reference between item AS54888 in Product Information
Management and item AS54000 Desktop Computer in Oracle Product Hub.
452
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Related Topics
• Overview of Using Business Rules With Order Management
• If the task type is FulllOrder, and if Organization is 204, then use Oracle Fusion values that identify customer
data to resolve cross-references to the fulllment system.
453
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
454
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Description Route fulllment requests without using a customer aribute that resides in the fulllment
system as a cross-reference.
Value Description
Related Topics
• Download Files
455
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Almost all Order Management integrations use cross-references to map entities between systems.
• Order Management uses the term common value to refer to the instance of the reference data that represents
the record in Oracle Fusion.
• Order Management uses a domain value map to cross-reference the common value to each instance of the
entity that exists in systems outside of Order Management, such as the source system, fulllment system,
billing system, and so on.
• Data Collections collects data into the Order Orchestration and Planning Repository. It uses domain values to
map the values that one system uses to the value that another system uses.
Data Collections examines domain value maps to determine whether a row exists that it can use to map the
incoming data with a common value, and that it can then use to cross-reference and populate the value for the
entity during orchestration planning.
• You can collect data through a web service or through staging tables. If your source system is an Oracle Fusion
application, then you use a scheduled process to collect data through staging tables. For details, see Data
Collections, Order Orchestration, and Order Promising: How They Fit Together.
In this example, you modify a domain value map to map payment terms between your source system and Order
Management. You use a web service to collect data for the payment term.
1. Open a web browser, then sign into SOA Composer at this address.
https://server:port/soa/composer
where
◦ server:port
identies the server that hosts your Order Management implementation and the port that
Order Management uses to communicate.
Sign in with the same user name and password you use to administer Order Management.
2. On the SOA Composer page, click Open > Open DVM.
3. In the Select a DVM to Open dialog, notice the domain value maps you can use to map an entity in your source
system to a common value according to the cross-reference in the repository.
456
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
4. Click the row that includes mscPaymentTerm.dvm in the DVM File column, then click Open.
5. Notice that this domain value map comes predened to map dierent payment terms from two dierence
source systems. It maps them to a single common payment term in Order Management.
◦ Maps the N_30 payment term from the GPR source system to N30 in Order Management.
◦ Maps the Net_30 payment term from the LEG source system to N30 in Order Management.
457
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
6. Click the row that includes LEG in the SourceSystem column, then click Edit Domain Values.
7. In the Edit Domain Values dialog, in the SourcePaymentTerm row, modify the value, then click OK > Save.
Net_30 Net 30
458
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
<ns2:srInstanceCode>LEG</ns2:srInstanceCode>
<ns2:PaymentTermBase>
<ns2:startDateActive>2011-01-01</ns2:startDateActive>
<ns2:name>Net 30</ns2:name>
<ns2:srInstanceCode>LEG</ns2:srInstanceCode>
</ns2:PaymentTermBase>
<ns2:PaymentTermTranslation>
<ns2:srInstanceCode>LEG</ns2:srInstanceCode>
<ns2:name>Net 30</ns2:name>
<ns2:language>US</ns2:language>
<ns2:sourceLang>US</ns2:sourceLang>
<ns2:description>Net_30</ns2:description>
</ns2:PaymentTermTranslation>
</ns2:PaymentTerms>
</ns1:omcList>
</ns1:processOrderManagementCodesLBO>
</soap:Body>
</soap:Envelope>
This payload collects the value for the Net 30 payment term from the LEG source system.
9. Verify your cross-reference set up.
For example, use SQL to query the msc_xref_mapping entity in the Order Orchestration and Planning Data
Repository.
459
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Examine the query results to verify the mapping occurs as you expect.
Note.
◦ This query returns cross-reference data that Order Management populates in the msc_xref_mapping
entity for cross-reference aributes of the payment term entity according to your domain value map.
◦ At run time, Order Management uses data in msc_xref_mapping to look up values from the source
system or fulllment system, and their common values in Order Management.
Related Topics
• How the Order Orchestration and Order Promising Processes Use the Collected Planning Data
460
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Global Reference more than one instance of an entity that resides in more than one source system.
Data Collection collects each entity into the Order Orchestration and Planning repository,
validates it, then consolidates all the entities it collects into a single record that represents all
entity instances across all systems. This single record is the global entity.
Source Don't represent the same data in more than one source system. The instances of source data
are distinct. For example, one source system might consider Warehouse as an organization
while another source system uses some other classication.
Data Collection collects the transactions that are related to supply and demand so Global Order Promising can do
planning and promising. It collects transactions into the Order Orchestration and Planning Repository. You set up the
source system so Order Management can store details that identify the source of records and manage collection. The
repository uses these details so it can identify the source system where records originate.
461
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
The Domain Value Map column identies the abbreviation that Order Management uses to set up the cross-reference
for each global entity in the repository.
• Reason
• Warehouse
462
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Name. Yes.
463
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
• Yes means Order Management uses the cross-referenced aribute to set up the domain value map.
• No means Order Management doesn't use the cross-referenced aribute to set up the domain value map.
Related Topics
• How the Order Orchestration and Order Promising Processes Use the Collected Planning Data
• Data Collection Sequence
eBusiness Suite
Overview of Integrating Order Management with eBusiness Suite
If you own an application that's part of Oracle E-Business Suite, Enterprise Resource Planning (Oracle EBS ERP), and plan
to migrate to Order Management Cloud in phases, then you can integrate Order Management with E-Business Suite
and continue to use E-Business Suite to do some of the order fulllment.
You deploy a connector that sits between Order Management and the Integrated SOA Gateway in E-Business Suite.
Use it to send sales orders and communicate status updates between Order Management and E-Business Suite. This
connector uses a SOA (service-oriented architecture) and BPEL (Business Process Execution Language) composite that
you can use to deploy to a SOA server.
• Set up Order Management to send sales orders to eBusiness Suite so eBusiness Suite can fulll the sales order,
including shipment and invoice.
• Set up eBusiness Suite to send status updates to Order Management. If customer details don't already exist in
eBusiness Suite, then this integration synchronizes them when eBusiness Suite receives the sales order.
These integration ows use a connector that you deploy on the SOA server. They also use services from Order
Management and the Integrated SOA Gateway in eBusiness Suite. The gateway is part of Oracle eBusiness Suite, release
12.1 and higher. It includes.
• Integration Repository. Use public APIs (application program interface) in eBusiness Suite that create and
deploy the integration as a web service. Use this integration to send sales orders from Order Management to
eBusiness Suite, and to use the Process Order API in eBusiness Suite as a SOA (service-oriented architecture)
web service.
In general, this document describes APIs that use PL (Procedural Language) or SQL (Structured Query
Language).
• Service Invocation Framework (SIF). Use the business events that eBusiness Suite raises, and use event
details to call a web service. This integration uses the Service Invocation Framework in Integrated SOA Gateway
to send status update from eBusiness Suite to Order Management. Order Management uses a web service to
process the status update response that the Service Invocation Framework calls.
Oracle provides this connector and example integration only for testing purposes. Oracle doesn't support this connector
or example integration in a production environment.
464
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Order Management, see the How Order-to-Cash Works in Order Management topic.
• Integrated SOA Gateway, go to hps://docs.oracle.com/cd/E18727-01/doc.121/e12169/toc.htm, Oracle E-
Business Suite Integrated SOA Gateway Implementation Guide. See sections Administering Native Services,
Implementing Service Invocation Framework, and Creating and Using Integration Interfaces.
Feature Description
• Customers
• Addresses
• Contacts
• Items
• Ship sets
• Pick-to-order congured item
• Assemble-to-order congured item
• Kits
• Return Material Authorization (RMA)
Revise sales orders. • Revise order, such as modify values in the order header.
• Cancel order.
• Revise order lines.
• Order Line status, including Awaiting Shipping, Shipped, Fullled, Awaiting Return, and
Returned
• Scheduled Ship Date
• Scheduled Arrival Date
• Warehouse
• Shipping Method
• Line Split
465
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ Sales credit
◦ Aachment
◦ Shipping charge
◦ Tax
◦ Lot serial number
Requirement Description
Release
You must use this release or higher.
Statuses
Order Management sends these statuses.
Returns
This integration assumes.
• Order Management allows a return order to reference the original order so it can
identify the sales order you're returning.
• Order Management sends only the congured item that eBusiness Suite uses for
returns. It doesn't send the order lines that the congured item references.
Synchronization You must synchronize item data before you use this integration.
Bill of Materials The BOM (bill of materials) structure for each kit, pick-to-order, and assemble-to-order must
be identical in Oracle Fusion Product Master and in eBusiness Suite.
Customer details If you modify customer details in Order Management, then this integration doesn't
synchronize these details directly from the customer master in Order Management to the
customer master in eBusiness Suite.
This integration synchronizes these details only if it uses the customer or address during
ordering, and it only synchronizes the addresses and contacts that the sales order references.
466
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Requirement Description
Deployment Options
Use this integration with Order Management, the on-premise version of eBusiness Suite, and with connectors deployed
on SOA Cloud Service (PAAS).
467
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
1. You create a sales order in the Order Management work area.
2. Order Management uses routing rules that you set up to determine how to route the sales order to eBusiness
Suite, including the connector it will use to do routing.
3. Order Management uses a connector that you set up on the Manage Connector Details page to identify the
location of the connector on the SOA server. For this example, assume you named the server My_SOA_Server.
4. Order Management uses the Fulllment Task Layer business service to transform the sales order to a message,
and then send it to DooFulllOrderEBSConnector on My_SOA_Server.
468
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
5. The SOA server transforms the message, uses the set up you make in Integrated SOA Gateway on eBusiness
Suite to call a web service on the gateway, and then send the message to eBusiness Suite.
6. eBusiness Suite processes the message as a sales order.
For example, if eBusiness Suite schedules the sales order for shipping, or if eBusiness Suite changes scheduled
ship date or scheduled arrival date because some other aribute that inuences scheduling changes, then
eBusiness Suite raises a business event, and then uses the event to send these dates to Order Management. It
also sends the warehouse and ship method.
eBusiness Suite uses the set up you do on business events in eBusiness Suite to communicate status changes.
You enable the business event, subscribe to it so eBusiness Suite knows when to raise it, and specify the web
service to use when communicating with My_SOA_Server.
7. eBusiness Suite uses your set up for the web service and business event in Integrated SOA Gateway to send the
update to the connector on My_SOA_Server.
8. The connector on My_SOA_Server server sends status updates to Order Management.
9. Order Management updates sales order aributes in the Order Management work area.
Order Management also uses this ow for a status update or order line split. Other ows use a similar sequence.
469
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
1. The Fulllment Task Layer service in Order Management uses DooEBSConnectorService to call the
fulllOrderEBSRequest operation of DooFulllOrderEBSConnector on My_SOA_Server.
470
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Operation fulllOrderEBSRequest
The Fulllment Task Layer service in Order Management manages the create ow, update ow, and hold ow.
2. Fulllment Task Layer uses security that you set up in Oracle Enterprise Manager and WebLogic Console on
My_SOA_Server. The user and password you use in Enterprise Manager must match the user and password
you use on the Manage Connector Details page.
For details about Oracle Enterprise Manager, see hps://www.oracle.com/technetwork/oem/enterprise-
manager/overview/index.html.
3. My_SOA_Server uses the set up you do in Enterprise Manager and WebLogic Console to call the Sales Order
Service in Integrated SOA Gateway on eBusiness Suite. The user and password you use in Enterprise Manager
must match the user and password you use in eBusiness Suite.
4. An event occurs in eBusiness Suite that requires communication with Order Management, such as an update to
the sales order status.
5. Sales Order Service in eBusiness Suite calls the fulllOrderEBSInboundRequest operation on
DooFulllOrderEBSConnector.
Operation fulllOrderEBSInboundRequest
eBusiness Suite uses the security you set up in Enterprise Manager on My_SOA_Server for the eBusiness Suite
user that calls DooFulllOrderEBSConnector.
471
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
6. Deploy the connector. For details, see the Connect SOA Server to Order Management and eBusiness Suite
topic.
7. Set up eBusiness Suite. For details, see the Set Up eBusiness Suite to Integrate with Order Management topic.
Aribute Value
Connector URL Enter the URL that locates the connector. For example.
User Name and Password Enter any user name and password. It isn't necessary to enter a user name and password
that you already set up.
Order Management uses this name and password when it calls the connector on the SOA
server.
For details, see the Connect Order Management to Fulllment Systems topic.
472
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For details about how to use the rules editor, see the Manage Routing Rules topic.
1. Open the Manage External Interface Routing Rules for Sales Orders page.
For details, see the Overview of Using Business Rules With Order Management topic.
2. On the Manage External Interface Routing Rules page, click Create New Rule, then set values.
473
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Aribute Value
Aribute Value
Priority Highest
474
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Do it.
1. On the Manage External Interface Routing Rules page, click Create New Rule, then set values.
Aribute Value
475
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Description Route sales orders that don't include a congured item from Order Management to
eBusiness Suite.
Aribute Value
Aribute Value
Priority Medium
476
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
477
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Description Route sales orders that include a congured item from Order Management to eBusiness
Suite.
Aribute Value
Aribute Value
Priority Medium
• Create Order
• Create Return Order
• Create Return Order for Models
478
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Create a routing rule that supports return orders that include a congured item.
1. On the Manage External Interface Routing Rules page, click Create New Rule, then set values.
Aribute Value
Description Route return orders that include a congured item from Order Management to eBusiness
Suite.
Tip: Click New Condition, then, in the Create Condition dialog, enter Category, wait for the list to
display values, then click Category Code (Order Fulfill Line).
Aribute Value
479
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note: Click New Action > Set a Value. In the Create Action dialog, set the top value to Fulllment
Instance ID, then, below is set to, click Aribute, then enter Category. Using this technique displays
aributes that are already dened, and helps to make sure you choose an aribute that the rule can
use.
Aribute Value
Priority Medium
480
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
6. Verify that you set the Route Sales Orders to eBusiness Suite rule to the highest priority, and that you activated
each of your rules.
1. Set up connector.
481
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Set Up Connector
Set up the connector on the SOA server. For this example, assume the server is named My_SOA_Server.
To get a copy of this le, click Download Files in the Related Links section at the end of this topic.
2. Unzip DooFulllOrderEBSConnectorRev1.0.zip.
3. Use an XML editor to open DooFulllOrderEBSComposite_cfgplan.xml.
4. Modify the responsibility.
</property>
<property name="bpel.preference.responsibility">
<replace>EBS responsibility</replace>
</property>
where
For example.
</property>
<property name="bpel.preference.responsibility">
<replace>ORDER_MGMT_SUPER_USER</replace>
</property>
Reference Value
482
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
483
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Type Password
User name and Password Use the same user name and password that the connector uses to call the Fulllment Task
Layer service in Order Management.
Aribute Value
Type Password
◦ You must use the same user name for FUSION_APPS_CON_EBS_APPID-KEY that
you use for the grants. For details, see topic Set up Gateway and Business Events in
eBusiness Suite: Procedure.
Administer Security
Administer security for the Order Management user and the eBusiness Suite user that will call the connector.
484
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
Related Topics
• Download Files
485
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Oracle E-Business Suite Integrated SOA Gateway Developer's Guide, Release 12.2, Part Number E20927-10.
• Installing Oracle E-Business Suite Integrated SOA Gateway, Release 12.1.3 (Doc ID 556540.1).
486
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
6. In the Procedures and Functions area, add a check mark to the Select option for the row that includes these
values.
Sales Order Service PROCESS_ ORDER_25 Dedicated for Order Management Cloud
integration
If a global grant exists for all users, then it might not be necessary to create an individual grant.
8. Set the value.
487
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
9. Click Deploy.
10. Click View WSDL, then note the URL that the WSDL (Web Service Denition Language) uses.
You use this URL when you set up the connector on the SOA server. Make sure this URL is similar to the
following URL.
http://server:port/wEBServices/SOAProvider/plsql/oe_inbound_int/?wsdl
where
◦ server:port identies the address of the server that hosts the web service.
11. Repeat steps 1 through 10 to create and deploy another service.
Aribute Value
1. In eBusiness Suite, expand the Workow Administrator Web Applications responsibility, then click
Administrator Workow.
2. Click Business Events.
3. On the Business Events tab, in the Search area, in the Display Name aribute, enter the value.
oracle.apps.ont.genesis.outbound.update
488
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
4. Click Go.
489
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
3. Click GO.
4. Wait for the result to display, then click Select.
For example, click Select in the row that contains these values.
Aribute Value
5. In the Update Event Subscriptions area, set values, then click Next.
Aribute Value
Phase 100
Status Enabled
490
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
6. Notice that step 1 of the task-based user interface displays. This interface guides you through the set up.
7. On the Load WSDL step, enter the URL that locates the WSDL of the connector, then click Next.
Aribute Value
8. On the Select Service step, set the value, then click Next.
Aribute Value
9. On the Select Service Port step, make sure the Select option is enabled for the service.
491
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Aribute Value
WFBES_ SOAP_USERNAME Enter the user name of the service that you're calling. For example.
2. Store the password so its secure. Sign into the database that resides on the eBusiness Suite server, then use
SQL to query the Order Management database.
sqlplus username/password@database_name @$FND_TOP/sql/afvltput.sql ONT passwordKey password
For example.
sqlplus apps/apps@vi7kr759 @$FND_TOP/sql/afvltput.sql ONT operationsKey password
492
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ Fullled
◦ Awaiting Return
◦ Returned
Related Topics
• Use SQL to Query Order Management Data
Details Description
Order Lines • Items, including simple items or complex items, such as kits or pick-to-order congured
items.
• Prices. This integration sets the CALCULATE_PRICE_FLAG aribute to P when it
synchronizes the sales order so eBusiness Suite doesn't recalculate prices on the order
line. This seing primarily aects freight charges.
• Ship Set.
• Requested Ship Date.
• Payment Terms.
Scheduling Details
If you use Global Order Promising (GOP), then Order Management sends these details.
Synchronize Sales Order Status Between Order Management and eBusiness Suite
This integration synchronizes statuses between eBusiness Suite and Order Management while it processes the sales
order through fulllment.
493
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
This integration synchronizes customer details from Order Management to eBusiness Suite when it creates or updates a
sales order.
• Parties or Accounts
• Addresses
• Contacts
If the customer, address, or contact for a new customer doesn't exist in eBusiness Suite, then eBusiness Suite creates
them.
In Order Management, aribute Sold To and aribute Ship To are each a party, and aribute Bill To is an account.
However, each of these aributes is an account in eBusiness Suite. To solve this problem for Ship To and Bill To, Order
Management sends an address when it sends the Ship To customer or Bill To customer to eBusiness Suite. eBusiness
Suite uses the combination of address and customer details to identify the account it must use.
The Sold To aribute doesn't include an address, so the integration determines the account dierently depending on
the condition.
Condition Result
Order Management sends a party eBusiness Suite creates the party and the customer account.
name that doesn't exist in eBusiness
Suite.
Order Management sends a party eBusiness Suite creates an error and exits the ow.
name, but more than one party in
eBusiness Suite matches the name
that Order Management sends.
Order Management sends a party eBusiness Suite creates a new customer account for the party.
name that exists in eBusiness Suite,
but eBusiness Suite doesn't contain a
customer account for this party.
Order Management sends a party eBusiness Suite uses the party and customer account that Order Management sends.
name that exists in eBusiness Suite,
and eBusiness Suite contains one
customer account for this party.
494
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Condition Result
This integration supports congured items that use pick-to-order and assemble-to-order.
Here's the sequence this integration uses to create a sales order for a congured item that uses pick-to-order.
1. Order Management sends the entire congured item to eBusiness Suite. The status for the congured item and
each congure option is Awaiting Fulllment.
2. eBusiness Suite triggers events that communicate shipping statuses for Awaiting Shipping and Shipped.
eBusiness Suite triggers the events only for shippable lines.
3. eBusiness Suite sends events to Order Management while it ships each line.
4. Order Management updates the shippable lines. These lines are in the Shipped status while the remaining lines,
such as Model or Option Class, are in the Awaiting Fulllment status.
5. eBusiness Suite nishes shipping each order line, the ow moves to the Fulllment activity, then this step
marks each line as Fullled. To allow this step to occur, you must enable the Fullled status.
6. eBusiness Suite creates an event for the Fullled status for each order line.
7. Order Management updates each status and marks each order line of the congured item as Fullled.
Create Sales Orders for Congured Items That Use Assemble-to-Order
Here's the sequence this integration uses to create a sales order for a congured item that uses assemble-to-order.
Note that eBusiness Suite stores an assemble-to-order congured item as a separate line.
495
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
If the Fulllment Task Layer is the last step in the process, then the integration marks each order line as Closed
when the Fulllment Task Layer task nishes.
Map Status When Creating Sales Order for Congured Item
This integration maps statuses between Order Management and eBusiness Suite when it creates a sales order for a
congured item the same way it maps statuses for an item that isn't congured. For details, see the Mapping Statuses
When Creating Sales Order for Items section.
This integration supports revisions to a sales order, such as revising an aribute on the order header. Here's the
sequence it uses to revise a sales order.
1. Order Management sends a request to eBusiness Suite to place each order line on hold. If eBusiness Suite.
◦ Rejects the hold request. This integration sends an exception message to Order Management and ends
this sequence.
◦ Successfully places the hold. Order Management sends a change request to eBusiness Suite.
2. eBusiness Suite processes the change, then this integration releases the hold on the order lines.
Note.
• If the change management ow starts, then this integration releases any hold that already existed on the sales
order in eBusiness Suite.
• Change management applies the hold at the start of processing and releases it when the change nishes.
• eBusiness Suite can't distinguish whether change management or a user applied the hold. eBusiness Suite only
applies one hold when Order Management sends a hold request. If this integration releases a hold as a result of
change management, then eBusiness Suite releases the hold in Order Management.
• eBusiness Suite doesn't automatically release a change management hold. Instead, it applies the release hold
request that it receives during the change management ow.
496
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Here's the sequence that this integration uses when the user splits an order line.
1. An end-user splits an order line in eBusiness Suite.
2. eBusiness Suite creates a split event that splits the order line.
3. Order Management receives the event and splits the original order line. Each order line in Order Management is
in status Awaiting Fulllment.
4. eBusiness Suite ships the order line and creates a shipped status event for each line.
5. The connector processes this event and sets the order line status to Shipped.
6. The ow in eBusiness Suite reaches the Fulllment activity, then creates an event for each line.
7. Order Management processes each event and sets the order line status to Fullled.
Split Item When eBusiness Suite Ships Part of an Order Line
Here's the sequence that this integration uses when eBusiness Suite ships only part of an order line.
1. eBusiness Suite creates a split event.
2. The connector processes this event and Order Management splits the order line.
3. Order Management sets the status of order line x that eBusiness Suite shipped to Shipped, and it sets the
status of order line y that contains the remaining quantity to Awaiting Shipping.
4. eBusiness Suite ships the remaining quantity and creates another event for the Shipped status.
5. Order Management sets the status of order line y to Shipped.
6. The ow in eBusiness Suite reaches the Fulllment activity, then creates an event for each order line.
7. The connector processes each event and Order Management sets the status for each order line to Fullled.
Split a Congured Item
This integration supports only a proportional split when spliing a congured item. For example.
• Assume a congured item includes a quantity of 5, and congure option x of the congured item includes a
quantity of 10.
• Assume you split the congured item into a quantity of 2 for congured item b and a quantity 3 for congured
item c.
• A proportional split will split option x into a quantity of 4 for item b and 6 for item c.
To support this ow, you must set up a process that includes Step Level Line Criteria to send only the congured item
for a return. For details, see the Integrate Order Management with eBusiness Suite topic.
Here's the sequence that this integration uses when eBusiness Suite splits a congured item.
1. eBusiness Suite splits a congured item, creates a split event, then sends it to Order Management.
2. The connector processes the event and Order Management splits the congured item.
If the split references a partial shipment, then Order Management sets the status for each shippable line to
Shipped for the part of the congured item that eBusiness Suite shipped, and sets the status for the entire
congured item to Awaiting Fulllment.
3. Order Management sets the status of the part of the congured item that it created for the remaining quantity,
and the order lines that this part of the congured item references, to Awaiting Fulllment.
4. eBusiness Suite sets the status of the shippable lines to Shipped and the status of the congured item to
Awaiting Fulllment when it ships the rest of the congured item.
5. The ow in eBusiness Suite reaches the Fulllment activity, and then creates another event that sets the status
to Fullled. Lines for each congure option and nonshippable lines remain in the Awaiting Fulllment status
until the eBusiness Suite ow reaches this step.
6. Order Management processes the event and sets the status of the order lines that the congured item
references to Fullled.
497
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
• If an assemble-to-order split occurs in eBusiness Suite, then the connector ignores the congured item.
• If one of your users splits an order line in eBusiness Suite, then the order line in Order Management remains in
status Awaiting Fulllment. eBusiness Suite sets the status of the shippable lines to Shipped when it ships each
line, and it leaves the nonshippable order lines in status Awaiting Fulllment.
This integration doesn't synchronize status Closed in eBusiness Suite with the status in Order Management. It
ignores status Closed from eBusiness Suite. Instead, it sets the status of the order lines in Order Management
to Closed when the process nishes all steps.
This integration can send a return material authorization (RMA) to eBusiness Suite for receiving. eBusiness Suite fullls
it, then sends the Return statuses to Order Management.
Return an Item
Here's the sequence that this integration uses to return a congured item.
1. Order Management sends the congured item and a reference to the original eBusiness Suite congured item
to eBusiness Suite. The return lines in Order Management are in status Awaiting Fulllment.
2. eBusiness Suite expands the order lines in the return congured item according to the order lines that the
original congured item references. The congured item in eBusiness Suite isn't in status Returned because
eBusiness Suite doesn't receive the congured item.
3. The integration creates the return material authorization and sets the status of the congured item to Awaiting
Fulllment.
4. One of your users or an automated process returns the order lines that the congured item references in
eBusiness Suite.
5. eBusiness Suite sends the updated statuses to Order Management.
6. Order Management updates the status to Received, then Fullled, then Closed.
Process a Hold
Here's the sequence that this integration uses to process a hold that one of your users creates.
1. One of your users creates a hold in Order Management.
2. Order Management sends the hold to eBusiness Suite.
This integration can send only one hold at a time from Order Management to eBusiness Suite because it can't
send the Hold Name to eBusiness Suite.
498
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
3. eBusiness Suite applies only the DOO O2C Change Management Hold to the sales order in eBusiness
Suite. eBusiness Suite ignores any subsequent hold that Order Management sends. Note that DOO is an
abbreviation for distributed order orchestration, which is an earlier version of Order Management, and O2C is
an abbreviation for Order To Cash.
4. Your user releases the hold in Order Management.
5. Order Management sends the release to eBusiness Suite.
6. eBusiness Suite releases DOO O2C Change Management Hold.
Process a Hold That Change Management Creates
Here's the sequence that this integration uses to process a hold that change management creates.
1. Change management revises a sales order in Order Management.
2. Change management creates a hold in Order Management.
3. Order Management sends the hold to eBusiness Suite to stop eBusiness Suite from processing the sales order.
4. eBusiness Suite aempts to hold the sales order. If successful, then eBusiness Suite sends a reply to Order
Management that it successfully placed the hold.
If eBusiness Suite can't hold the sales order, then it sends a reply to Order Management that the hold failed,
and Order Management doesn't allow the change. For example, if eBusiness Suite already scheduled the sales
order for shipping, it might not be able to change it.
5. If eBusiness Suite successfully places the hold, then Order Management makes the change, releases the hold,
then sends the release to eBusiness Suite.
6. eBusiness Suite releases the hold.
eBusiness Suite can't determine whether one of your users created the hold or change management created
the hold, so eBusiness Suite releases all holds for this sales order.
Schedule a Sales Order
Here's the sequence that this integration uses to process a sales order that Order Management schedules.
1. Order Management schedules the sales order, sets values for the Scheduled Ship Date and Scheduled Arrival
Date, then sends these aributes to eBusiness Suite.
2. eBusiness Suite sends these aributes to eBusiness Suite Shipping.
eBusiness Suite can't and doesn't reschedule these order lines.
Process a Sales Order That eBusiness Suite Schedules
Here's the sequence that this integration uses to process a sales order that eBusiness Suite schedules.
1. Order Management doesn't schedule the sales order, and it sends the Scheduled Ship Date and Scheduled
Arrival Date to eBusiness Suite with empty values.
2. eBusiness Suite schedules the order lines, then uses the Schedule Ship Date Change event to send schedule
details to Order Management. The order line status in Order Management remains at Awaiting Shipping.
Using Global Order Promising
Global Order Promising uses aributes from the sales order to schedule the sales order.
• Schedule Ship Date
• Schedule Arrival Date
• Ship From Warehouse
• Shipping Method
499
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Order Management Order Management sends aributes to eBusiness Suite, and eBusiness Suite doesn't
reschedule the sales order.
eBusiness Suite eBusiness Suite sends aributes to Order Management, and Order Management doesn't
reschedule the sales order.
Here's the sequence that this integration uses to split a return material authorization.
1. One of your users does a partial receipt, not a delivery, in eBusiness Suite.
2. eBusiness Suite receives the partial order line.
3. The eBusiness Suite user does a deliver transaction.
4. eBusiness Suite splits the order line for the return material authorization into two order lines, and then sets the
status of the received line to Returned and the status of the new line to Awaiting Return.
5. eBusiness Suite sends the split event to Order Management.
6. Order Management splits the order line into two order lines, and then sets the status of the received line to
Received and the status of the new line to Awaiting Fulllment.
Split Return Material Authorization for a Congured Item
Order Management doesn't support spliing a return material authorization that includes a congured item. It
processes status updates only for the congured item, and not for individual order lines that the congured item
references. Instead, here's the sequence that this integration uses.
1. Order Management waits for eBusiness Suite to fulll the entire congured item.
2. eBusiness Suite fullls the entire congured item, then sends an update to Order Management.
3. Order Management sets the status for the congured item to Fullled.
500
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example, if the ordered quantity is 10, and if the quantity returned is 5, then Order Management sets the
status for 5 of the order lines in the congured item to Awaiting Return, and will process the congured item
only after it receives the remaining 5 lines.
Map Status When Spliing a Return Material Authorization
Here are the statuses that this integration maps between Order Management and eBusiness Suite when it splits a return
material authorization.
Oracle Applications
Overview
Overview of Integrating Order Management with Other Oracle Applications
Integrate Order Management to send details to some other Oracle application. For example, from an upstream source
system to a downstream billing system.
Use a predened aribute to send details, or create an extensible exeld in Order Management to store them, then
map it to some other Oracle application.
For example.
Oracle Receivables • Map fulllment line aribute Purchase Order Line Number in Order Management
(CUSTOMER_PO_LINE_NUMBER) to descriptive exeld Invoice Line Level in Oracle
Receivables. Order Management doesn't come predened to display this aribute.
• Create an extensible exeld on the order header or order line in Order Management.
Map this exeld to an interface column or descriptive exeld in Oracle Receivables.
• Send a concatenated value that represents the aributes of a covered item, such as
Description, Start Date, and End Date, to the TranslatedDesription aribute in Oracle
Receivables. Use an interface column in Oracle Receivables to send the data.
501
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Send covered item description, such as hardware, with coverage lines. Send freight
charges that apply for a covered item as a separate line so you can invoice freight by
itself.
Oracle Procurement Create an extensible exeld on the fulllment line in Order Management that captures the
item price. Send the price to the purchase request in Oracle Procurement.
Oracle Receiving Create extensible exelds on the fulllment line in Order Management that captures lot
details and serial details. Send these details to the receiving request in Oracle Receiving.
Oracle Shipping • Create an extensible exeld on the fulllment line in Order Management that captures
shipment details. Send these details to a descriptive exeld in Oracle Shipping.
• Use a descriptive exeld to send details to your receiving clerk for a sales order that
includes a return material authorization.
• Order Management comes predened to send a set of aributes to your fulllment
system for a purchase order in a drop ship ow. Use a service mapping to send an
aribute that isn't predened.
For example, send a price you negotiated with your supplier during drop ship, or send a
deliver-to address to your supplier during drop ship.
502
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
How it Works
Note.
1. Capture order details, such as in a sales order that you create in Order Management.
2. Use the integration step in your orchestration process to send details to your fulllment system.
3. Did you enable the Enable Custom Payloads for Downstream Integration feature?
503
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Enabled Description
Yes Use the service mapping. You can set up the payload to integrate with your fulllment
systems.
No Use the predened SDO payload (service data object) and proceed to fulllment. For an
example that uses an SDO, see the Send Charges from Order Management to Oracle
Receivables topic.
4. Call the service mapping that you set up that maps aributes between Order Management and your fulllment
system.
5. Did you create an integration algorithm?
Yes Call it. Use the integration algorithm to do more complex logic, as necessary.
6. Use the service mapping and the integration algorithm to create the payload.
Note.
• You set up an integration algorithm and a service mapping when you create the integration.
• An integration algorithm uses logic that's similar to a pricing algorithm, and the service mapping that you set
up is similar to the service mapping that Oracle Fusion Pricing uses.
• You use the Pricing Administration work area to set up the integration algorithm and the service mapping that
you use for integration. However, your service mapping and integration algorithm are completely separate
from Pricing. You use Pricing Administration only to leverage some of the logic that Pricing uses for its service
mappings and integration algorithms.
• An integration algorithm and the service mapping that you set up doesn't aect pricing.
Related Topics
• Pricing Algorithm
• Service Mapping
504
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Get Started
Enable Feature
Each integration adds to overhead. To improve performance, enable only the integrations you need.
505
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
If you don't enable the feature, then you can still send a predened SDO payload to your fulllment system, but you
can't send a payload that includes your service mapping or integration algorithm. For details, see the Integrate Order
Management with Other Oracle Applications topic.
Note.
Object Usage
Service mapping Map aribute from an entity in the view object that you're using as the source. Don't use an
integration algorithm to do this mapping.
Integration algorithm
Map the aributes.
• From an entity other than the view object that you're using as the source. For example,
use an algorithm to map an aribute from the order header to an interface line.
• With an extensible exeld.
506
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Object Usage
Note.
Object Description
Context You create the context for each service mapping. The context is the overall container for all
objects that you create in your set up.
Entity Create the structure of each object. Examples of an entity include the order header, fulllment
line, purchase order request, and so on.
Source Create what your mapping uses as the source for aribute values.
Service Specify the aributes to send to your fulllment system. You use it in the output that
communicates with the fulllment system. For example, in the structure of the SDO.
507
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
• You use the Pricing Administration work area to leverage the service mapping functionality that Pricing
Administration provides, but you aren't seing up pricing.
• Sign in as order administrator. Don't sign in as pricing manager.
• In the Navigator, click Pricing Administration.
• Click Tasks, then, under Order Management Conguration, click a link.
• Don't click links under Pricing Conguration.
508
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
Specify Source
509
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
• Click the Sources tab on service mapping.
• Use a predened source, when possible.
• Use predened entities on each source, when possible.
• View object species the view object to use as the source for the value.
• Don't modify the view object of a predened entity.
• View object aribute species the aribute in the view object to use as the source for the value. Do specify the
view object aribute.
If you create a new source, then you must add a sux to entity name.
510
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Flexeld Sux
Specify Service
511
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
512
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
The exeld archive is a .zip le that contains an XML le that you download when you create your extensible exeld.
You use details from the exeld archive when you set up the service mapping. You must get these details now.
Note.
513
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ Header Information
◦ Fulllment Line Information
◦ Fulllment Line Detail Information
4. Click Actions > Download Flexeld Archive.
5. Open the .zip le you downloaded and navigate to oracle/apps/scm/doo/processOrder/ex/
myObjectContextsB/view/myVO.xml.
where
514
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
1. Expand ViewObject.
2. Notice the value in the Name aribute of the view object. This is the name of the view object that you copy and
paste into the View Object aribute of your service mapping.
The name in the screen capture above is truncated. The full name for this example is
FulllLineEBItemPriceForSupplierprivateVO.
515
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
5. Expand ViewAribute.
6. Notice the value of EntityArName. This is the name of the view object that you copy and paste into the
aribute View Object Aribute of your service mapping. EntityArName for the example earlier in this topic
would equal _complianceInfo.
Specify Entity
516
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
1. Navigate back to your service mapping, then click Entities.
2. Create one entity for each extensible exeld context.
You must use the EFF_Custom sux for entity name. For example, OMHeaderEFF_Custom. If you don't use
this sux, then your service mapping will fail.
3. Add an aribute that identies the entity. In this example, HeaderId identies the sales order header.
4. Add an aribute that contains data.
Note.
• Specify the data type. If you don't specify the correct data type for the aribute, then your service mapping will
fail.
This example uses the Long data type for the HeaderId aribute because identiers are typically a Long
numeric value. It uses String for the complianceInfo aribute because, in this example, complianceInfo contains
text.
517
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Specify Source
Note.
1. Click Sources.
2. On the Entity Mappings tab, add your new entity, such as OMHeaderEFF_Custom.
3. Specify the view object.
◦ Locate the view object name in the XML of the exeld archive, copy it, then paste it into the View Object
aribute. In this example, the view object name is HeaderEFFBComplianceDetailsprivateVO.
◦ The values must match exactly, or your service mapping will fail. To avoid problems, use copy and paste.
Don't manually enter it.
◦ Add your aributes.
518
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For each aribute you add, locate the view object aribute in the XML, copy it, and paste it into the
aribute View Object Aribute. In this example, notice that the _complianceInfo view object aribute
begins with an underscore because the XML also contains an underscore.
Add Entity
• Before you add the entity, click View > Joined Entity > Joined Entity Aribute.
• Set values.
Aribute Value
Joined Entity Aribute Specify the aribute in the entity you're joining, such as HeaderId.
519
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
520
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ Provide a value.
◦ Reference an aribute in a view object or add an expression.
◦ You typically add an expression.
◦ If you add a string in your expression, then enclose it with double quotation marks ( " " ).
Note.
521
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• The value you chose for the View Object aribute determines the values you can choose for the aribute View
Object Aribute.
Note.
1. Use a predened entity for accounts receivable, such as TransactionInterfaceHeaderD, which is a descriptive
exeld that stores details about the receivables transaction header. Examine the entities that are available on
the Entities tab to identify the one you need.
2. Add these aributes. They're all required.
◦ FulllLineId
522
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
◦ NameSpace
◦ XsiType
◦ _FLEX_Context
You must add these aributes for each context entity that you dene for a descriptive exeld.
3. Add the descriptive exeld aributes that you must send to accounts receivable, such as
GlobalSegment1_Custom.
Note.
If you must map an aribute from the order header, extensible exeld, or fulllment line detail, then you must use an
integration algorithm. Order Management uses this hierarchy.
Order header
Fulfillment line
Fulfillment line details
Other Oracle applications might not organize these objects into a hierarchy. Instead, they might represent them
in a single object named ARLine. ARLine also includes descriptive exelds, so it can represent the same data that
the fulllment line represents. If you must copy aributes from the fulllment line to ARLine, then you require an
integration algorithm only if you must implement conditional logic.
Specify Source
523
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
524
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Expression
NameSpace Enter the value from the XML le you downloaded for your exeld archive. For example.
"hp://xmlns. oracle. com/ apps/ nancials/ receivables/ transactions/ shared/ model/ ex/
TransactionHeaderD/ "
_FLEX_Context Enter the value of the context code from the XML le you downloaded for your exeld
archive.
This example uses GlobalSegment1, so you can leave _ FLEX_Context empty. If you didn't
include a global segment in this example, you would enter "ItemPriceForSupplier".
Specify Service
525
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
1. Click the Services tab.
2. Query the Service for InvoiceService.
3. Query the Entity for your entity, such as TransactionInterfaceHeaderD.
4. Add your custom aributes. Create an alias for each one. The alias is the name of the service. Get it from your
XML le.
Aribute Alias
526
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Alias
Order Management uses this value when it creates the payload to create the task.
If you prefer to send this value in your integration algorithm, then you add it to the algorithm
instead.
5. Add the predened aributes. It isn't necessary to dene the alias for predened aributes.
527
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
• In the Navigator, click Pricing Administration, click Tasks, then under Order Management Conguration, click
Manage Algorithms.
• Create dierent versions so you can test dierent set ups while maintaining a working copy.
• You must publish your algorithm.
• Before you publish, refresh the page: save, close the page, open the page, and requery algorithms.
• After you publish, refresh, and verify that the status is Published.
• You can't edit a published algorithm. You must create a new version instead, or deactivate, and then activate.
Create Algorithm
Note.
• When you create the algorithm, save the header before you work on details.
• You must set up the algorithm and variables.
• Functions are optional.
• Test is a design time test. It isn't a run time test. Its optional, but recommended.
Use Variables
528
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
• After you create and save the header, then set up the variables. Don't dene the algorithm yet because you use
variables in the algorithm. You must set up the variables rst.
• Click Variables.
• Set aributes.
Aribute Value
Name Enter a meaningful name because the value you enter will display throughout the set up.
529
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
where
Caution: Its important to choose the correct service. If you choose the
wrong service, the integration will fail.
Add Step
530
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Note.
1. Click Algorithm.
2. Add steps. At run time, the algorithm runs the steps sequentially.
3. Enter a name.
4. Set up the data set that determines which records to process in this step.
5. Set up the condition and action that determines how to process records.
Create Data Set
531
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Description
Variable Path
Use the VariableName.entity format.
where
• VariableName. Name of the variable you dened on the Variables tab, such as
ARChargeIntegration.
• Entity. Copy and paste the entity name from your service mapping.
Cardinality
For descriptive exeld, you typically choose Zero or One.
If you join many order lines to one order header, then choose Many.
where
532
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Description
Note.
• The algorithm runs the default action when algorithm logic doesn't meet any other conditions.
• This predened action interfaces freight charges as a separate line item on the invoice.
• Predened code is commented. Remove comments to enable the action.
• Write your code in Groovy script.
• Use comments to document your code.
• Make sure variable isn't empty before you use it as the source for a value. In particular, make sure your
extensible exeld contains a value. If it doesn't contain a value, then you can't get a value from it, and your
algorithm might fail.
• Use format DatasetName.Alias.
533
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
where
◦ DatasetName. Name of data set that you dened in the integration algorithm.
◦ Alias. Alias or aribute name you dened in your service mapping.
For example, ChargeRow.ChargeApplyTo.
For details, including the exact content of the Actions that this example uses, see the Send Charges from Order
Management to Oracle Receivables topic.
Note.
1. Click Test to run a design time test.
2. Add a new test.
534
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
3. Create a default payload. The test creates a default payload according to the structure you set up in the
integration algorithm.
4. Edit the payload so it meets your requirements. For example, add values for important aributes that you know
your fulllment system expects.
5. Click Run Test. Examine results.
Examine Results
Note.
• Notice value of Last Execution Status. Green check mark means success.
• Examine test output carefully. Make sure output not only exists, but that it contains values you expect from
your integration. For example, if you logic concatenates an item description, then make sure the test displays
concatenated values that you expect.
• If you modify logic or a data set, then delete your test data, recreate test data, and run test again.
535
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• You must make sure the aribute names you use in the service mapping and the aribute names you use in the
integration algorithm match each other exactly.
• If you specify an alias in the service mapping, then also use this alias in the integration algorithm.
• If you don't specify an alias, then use the aribute name that the integration algorithm uses.
• Make sure the aribute names use the same upper case and lower case.
For example.
You set up an aribute named TotalSale_ This example code won't cause an error. This example code will cause an error.
Custom in the Sources tab of the service
mapping, and you don't dene an alias in Hdr.Aribute3 = HdrEFF. TotalSaleCustom Hdr.Aribute3 = HdrEFF. totalSaleCustom
the Services tab of the service mapping.
Here's a message that's an example of the type of error you might encounter at run time. In this example, the Sources
tab of the service mapping includes the totalSale_Custom aribute, but code in the integration algorithm uses
TotalSale_Custom.
01.03:llLine><PurchaseRequestService:FulfillLineId>300000002330472</
PurchaseRequestService:FulfillLineId><PurchaseRequestService:HeaderId>300000002330464</
PurchaseRequestService:HeaderId> </PurchaseRequestService:FulfillLine> <PurchaseRequestService:ChangeSummary
xmlns:sdo="commonj.sdo"/></PurchaseRequestService:PurchaseRequestServiceType>'-
oracle.apps.scm.pricing.priceExecution.algorithms.publicQuery.exception.SetQueryException:
Step 'Step 1' not executed properly. Failed to execute onEach Closure. DataObject
com.oracle.xmlns.apps.scm.pricing.priceexecution.servicemappings.publicmappings.purchaserequestservicetype.HeaderEff_Cus
does not have property 'TotalSale_Custom' defined in the schema. Can not get value from the property.
null Payload: VariableName:'PRCIntegration'DateType:'commonj.sdo.DataObject' IOType:'InOut' value:'<?xml
version="1.0"encoding="UTF-8"?> <PurchaseRequestService:PurchaseRequestServiceType xmlns:PurchaseRequestService
Summary
The Service Mappings page and Algorithms page use values that are case sensitive. Enter exact names consistently,
including _ (underscore), upper case, and lower case leers.
• Use a service mapping to map aributes from entities in the source view object. Don't use an integration
algorithm to map them.
536
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• If you add an aribute in the Sources tab, then make sure you also add it in tab Services for each entity. If you
forget to add it in Services, then the algorithm might run but not display your aribute in the payload.
• Use an expression or view object aribute objects to assign a value.
• Use the Expressions aribute to implement simple logic, such as If, If Then, If Then Else, or to concatenate.
• If you add an extensible exeld.
◦ Add it in the Entities tab, Sources tab, and Services tab. Add it in all three tabs. Don't add it in only one or
two of these tabs.
◦ Add an extensible exeld entity one time for each context that you require.
◦ Reuse extensible exeld entity in more than one service, as necessary.
• Use an algorithm to map aributes from entities other than the view object or when you use a exeld.
• Remember to enter the algorithm name on the Services tab.
• Remember to publish your algorithm.
• If you encounter a runtime error when a task runs, then correct the algorithm and recover the task.
Related Topics
• Create a Sandbox So You Can Edit Service Mappings
537
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
You will modify the predened FulllmentIntegration service mapping so it uses these cross-references.
This topic includes example values. You might use dierent values, depending on your business requirements.
538
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Use the Order Administrator job role so you can access the integration algorithm and service mappings that
you use in the Pricing Administration work area to set up the integration.
8. Create a sand box. For details, see the Create a Sandbox So You Can Edit Service Mappings topic.
9. On the Overview page, click Tasks, then, under Order Management Conguration, click Manage Service
Mappings.
10. On the Manage Service Mappings page, in the Name column, click FulllmentIntegration.
Notice the entities, such as ARInterfaceLine, and aributes, such as AccountRuleDuration. The
FulllmentIntegration service mapping comes predened with these entities and aributes so you can use
them to add aributes when you integrate Order Management with these Oracle applications.
In this example, you examine the entity or the view object that denes the view object as FulllLineVO, and
then map an aribute of this entity or view object from the fulllment line.
539
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
The Entity Mappings tab lists entities, each entity references a view object, and each entity on the Aribute
Mappings tab also references one or more aributes. You will create a map that references one of these entities
from this view object without using an integration algorithm.
However, if you must map an aribute from some other entity that doesn't reside at the same hierarchy level,
then you must use an integration algorithm. For example, if an aribute references an extensible exeld from
the order header or the fulllment line, then you must use an integration algorithm.
Other Oracle Fusion Applications use a similar hierarchy. For example, here's that hierarchy that Purchasing
uses for a purchase order.
Purchase order
fulfillLine
purchaseLine
Shipping header
shipping line
fulfillLine
Here's the hierarchy that Purchasing uses for the receiving receipt.
Receipt header
ReceiptLine
FulfillLine
Lot or lot serial details
12. In the InvoiceSources - Details area, click the row that contains ARInterfaceLine in the Entity aribute.
13. In the ARInterfaceLine - Details area, add values, then click Save.
RuleStartDate ContractStartDate
RuleEndDate ContractEndDate
The RuleStartDate and RuleEndDate are now integrated to reference the view objects that you specied. Here's what
Order Management does at run time.
• Get the value of the ContractStartDate aribute from the Order Management work area, then display it in the
RuleStartDate aribute in Oracle Receivables.
540
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• Get the value of ContractEndDate from the Order Management work area, then display it in the RuleEndDate
aribute in Oracle Receivables.
You can use Expression Language (EL) in the Expression column to implement logic or a constant value. For example,
you can implement this logic.
• If the value of variable x is greater than the value of variable y, then populate an aribute.
Related Topics
• Pricing Algorithm
• Service Mapping
In this example, you get the description for a covered line, then add it to the description for the coverage line on the
invoice.
541
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Do it.
Aribute Value
Description Get the description for a covered line, and then add it to the description for the coverage line
on the invoice.
Do it.
542
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Name GetCoveredFromDocRef
Description Get the value for an order line, and then get the description for this line.
Aribute Value
Application Module oracle. apps. scm. doo. common. process. model. applicationModule.
DooExtensibleMapperAM
Aribute Value
Aribute Value
Name FLineId
Comments Use this argument to send FLineId (fulllment line identier) as a bind variable for the
view criteria.
543
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Name CoveredFlineDocRefRow
This variable will store the row from DooDocumentReferences for fulllLineId of the coverage line.
◦ Add another one.
Aribute Value
Name CoveredFLineRow
This variable will store the row from FulllLine for the covered line.
544
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Do it.
Aribute Value
Description Set up action that runs when data meets the condition for coverage line.
◦ Click Add Condition, then click Default Action. Set the value.
Aribute Value
Actions
CoveredFlineDocRefRow = GetCoveredFromDocRef(FLine.FulfillLineId)
if (CoveredFlineDocRefRow?.DocSublineId!=null)
545
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
CoveredFLineRow=
GetCoveredFLine(CoveredFlineDocRefRow?.DocSublineId)
ARLine.TranslatedDescription = FLine.ProductDescription
+ ' ' + CoveredFLineRow?.ProductDescription + ' ' +
FLine.OrderedQty.toString() + ' ' + FLine.ContractStartDate + '-'
+ FLine.ContractEndDate
This code uses functions to get the product description of the covered line and concatenate it.
8. Add a step that runs when data doesn't meet the condition. Click Algorithm, click Add Step, then click
Conditional Action. Set values.
Aribute Value
Description Set up the action that runs when data doesn't meet the condition for coverage line.
546
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Receivables
Integrate Order Management with Oracle Receivables
Specify how Order Management Cloud sends charges and charge lines to Oracle Receivables.
Set up an integration algorithm so it uses Oracle Receivables to calculate various charges, such as how to calculate tax
on the shipping charge of a shipping line.
For example, tax rules on freight might vary according to region or to details on the sales order. Determining tax
manually might delay order fulllment, introduce unnecessary tax, or result in an invoice error. Instead, you can.
• Specify one or more shipping charges for an order line to automate tax calculation, such as sending freight
charges to Receivables to calculate the tax amount for freight.
• Calculate freight tax in Oracle Fusion Pricing, send it to Order Management, then store it on an order line in
Order Management.
• Set up an integration algorithm to help achieve tax compliance, minimize sales order exceptions, and improve
the accuracy of billing details.
In prior releases, Order Management sent secondary charges, including freight charges, to Receivables. Receivables
added the charges together, then displayed them as a single freight charge on the invoice header. Receivables couldn't
apply a tax on this single charge because it might need to tax individual charges at dierent tax rates, and some of
these charges might not be taxable. Order Management can now send the shipping charge on a separate charge line.
• This feature adds a new charge line for each shipping charge for each item. For example, if the sales order
contains three items, and if each item includes a shipping charge, then the invoice will contain six lines. Order
Management will ship three lines, and the other three lines will contain freight charges.
• The charge line will include the item number and description that you set up in the Product Information
Management work area. To relate each freight charge to the shippable line, you can override the Description
aribute and TranslatedDescription aribute so they reference a shippable item.
547
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• If you override an aribute in the algorithm, then you must include the aribute in the Sources tab and the
Services tab of the entity you're modifying in the service mapping.
• As an option, you can also modify discount lines.
• Make sure you set up the item in Product Information Management.
This topic includes example values. You might use dierent values, depending on your business requirements.
You use the Order Administrator job role so you can access the integration algorithm in the Pricing
Administration work area.
2. On the Overview page, click Tasks.
3. In the Tasks pane, under Order Management Conguration, click Manage Algorithms.
4. On the Manage Algorithms page, click Integration Algorithm for Sales Order Charges.
548
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
5. On the Edit Algorithm page, in the Step Details area, in the Execute Condition area, in the Default Action area,
locate the code in the Default Actions window.
/*You can set up this integration algorthim so it uses accounts receivables to calculate tax on the
shipping charge. To do this, you must interface taxes and charges to accounts receivables as LINE and
not as FREIGHT. Do the following work:
1. Remove the comments from the lines below.
2. Publish your integration algorithm.
3. Use the Manage Service Mappings page to map your integration algorithm to service InvoiceService.
If an integration algorithm already maps to InvoiceService, then do not map your your integration
algorithm to InvoiceService. Instead, incorporate steps from your integration algorithm into the
integration algorithm that already maps to InvoiceService.
*/
//FreightRow.LineType = ChargeRow.ChargeApplyTo == "SHIPPING" ? "LINE" : FreightRow.LineType
//FreightRow.InventoryItemId = ChargeRow.ChargeApplyTo == "SHIPPING" ? '<Replace with Freight Inventory
Item Id>' : null
7. Remove the commented instructional text, remove the two forward slashes (//) from the following code, then
add the line and Id details for your shipping line.
549
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
where
◦ LINE. Species the shipping line where you're requesting Receivables to calculate tax on the shipping
charge.
◦ <Replace with Freight Inventory Item Id>. Species the Item Id of the freight inventory item that
Receivables will use to calculate tax.
You can also add a description.
For example, here's some code that species to use item 123456789.
FreightRow.LineType = ChargeRow.ChargeApplyTo == "SHIPPING" ? "LINE" : FreightRow.LineType
FreightRow.InventoryItemId = ChargeRow.ChargeApplyTo == "SHIPPING" ? '123456789' : null
As an option, you can specify other aributes. For details, see the Specify Charges That Order Management
Sends to Oracle Receivables topic.
8. Click Save and Close.
9. On the Manage Algorithms page, click Actions > Publish.
If you already set up an integration algorithm that maps to InvoiceService, then don't map your integration algorithm
to InvoiceService. Instead, incorporate steps from your integration algorithm into the integration algorithm that
already maps to InvoiceService. For details about how to map your integration algorithm to InvoiceService, see the Use
Extensible Flexelds to Integrate Order Management with Other Applications topic.
550
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
• LineType
6. Set up the source for the charge.
◦ Click Sources.
◦ Click the row that contains InvoiceSource in the Source column.
◦ In the Entity Mappings list, click the row that contains Charge in the Entity column.
◦ In the Aribute Mappings list, add an aribute.
ChargeApplyTo ChargeAppliesTo
Enable Feature
1. In the Navigator, click Setup and Maintenance.
2. In the Setup and Maintenance work area, go to the Order Management oering.
3. Click Change Feature Opt In.
4. In the row that contains Order Management in the Name column, click Features.
5. In the row that contains Enable Custom Payloads for Downstream Integration in the Feature column, click
Features.
6. In the Feature Name dialog, add a check mark to the Invoice option, click Save and Close, then click Done.
Related Topics
• Pricing Algorithm
• Service Mapping
• Create a Sandbox So You Can Edit Service Mappings
Aributes You Can Use When Integrating Order Management with Oracle Receivables
Get details about the aributes you can specify when you use an integration algorithm to send charges from Order
Management Cloud to Oracle Receivables.
551
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
552
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ContractLineQuantity Decimal
If the transaction line references a
contract, and if the application.
ContractLineUnitPrice Decimal
If the transaction line references a
contract, and if the application.
553
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
CreditMethodForAccountRule String
Credit method for crediting a transaction
that uses a revenue schedule rule. It
contains one of these values.
CreditMethodForInstallments String
Credit method that credits a transaction
that uses a split payment term. It contains
one of these values.
DeferralExclusion String
Contains one of these values.
554
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
InvoicingRuleName String
Name of the invoice rule that processes
this transaction. Values include Advance
Invoice or Arrears Invoice.
555
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
LastTrxDebitAuth String
Contains one of these values.
556
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
OverrideAutoAccounting String
Contains one of these values.
557
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
558
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
559
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Taxable String
Contains one of these values.
560
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
561
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Description
ApplyTo Indicates whether pricing applied the charge for the item, for shipping, or for the return.
AverageUnitSellingPrice Weighted average of the selling price. This average is the total sales revenue divided by total
units sold.
ChargeAppliesTo Indicates whether pricing applied the charge for the item, for shipping, or for the return.
ChargeDenition Charge denition that denes the price type, charge type, and subtype.
ChargeType Charge type, such as item sale, service sale, nancing, lease, shipping, restocking penalties,
and so on.
GSAUnitPrice Price for each unit. Determined from the price list on the pricing strategy.
562
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Description
PricedQuantity Abbreviation that identies the unit of measure for the priced quantity, such as Ton.
PricedQuantityUOM Unit of measure for priced quantity, such as Ton. Product Information Management or a
service in Order Management Cloud provides this value.
PricedQuantityUOMCode Abbreviation that identies the unit of measure for the priced quantity.
PricePeriodicity Time period for a recurring price, such as month, quarter, or year.
PricePeriodicityCode Abbreviation that identies the time period for the price.
SourceChargeId Value that uniquely identies the charge. The source system applies this value.
Aribute Description
ChargeCurrencyCode Abbreviation that identies the currency that the charge component uses.
ChargeCurrencyDurationExtendedAmountExtended amount for the duration displayed in the currency that the charge uses.
563
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Description
ChargeCurrencyExtendedAmount Extended amount displayed in the currency that the charge uses. Extended amount equals
the unit price multiplied by the quantity on the order line. For a congured item, the extended
amount equals the unit price multiplied by the extended quantity on the order line.
ChargeCurrencyUnitPrice Price or adjustment for each unit displayed in the charge currency that the order line uses.
ExplanationMessageName Message name of the explanation that displays in the price break down dialog.
HeaderCurrencyCode Abbreviation that identies the currency that the order header uses.
HeaderCurrencyDurationExtendedAmountExtended amount for the duration, displayed in the currency that the order header uses.
HeaderCurrencyExtendedAmount Extended amount, displayed in the currency that the order header uses.
HeaderCurrencyUnitPrice Price or adjustment for each unit of the item, displayed in the currency that the order header
uses.
PercentOfComparisonElement Percent that the unit price constitutes of the basis charge component. The default value for
the basis is List Price. This aribute stores the margin percent, the percent that net price
constitutes of the list price, and so on.
PriceElement Name of the price element, such as list price, net price, and so on.
PricingSourceId Value that identies the source of the lowest level pricing. For example, it contains the Id that
identies a line on the price list, a tier rule, a shipping line, and so on.
PricingSourceType Type of the price source, such as the lines of a segment price list. The lookup QP_
ENTITY_TYPES or a manual price adjustment provides the value for this aribute.
564
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Description
RollupFlag Indicates whether the value is a rollup value for the charge component.
SourceChargeComponentId Value that uniquely identies the charge component that the source system assigns.
TaxIncludedFlag Indicates whether the price for the charge component includes tax.
Related Topics
• Pricing Algorithm
• Service Mapping
Customer Name Project Type Sales Order Number AR Transaction Type Revenue Account
You specify AR Transaction Type in a pretransformation rule or posransformation rule. Write your rule so it uses one
of these combinations of aributes.
565
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aributes Description
• Use the same AR Transaction Type, such as ARTT-Invoice1, for order lines you're
fullling.
• Use the same AR Transaction Type, such as ARTT-Credit1, for return order lines.
Use one of these combinations. Use this combination when you must assign the business unit according to transaction types.
• Line type and line category, • Use more than one AR Transaction Type for order lines that you're fullling.
and business unit • Use more than one AR Transaction Type for return order lines.
• Line type or line category, and
business unit
Order category and business unit Use this combination when your source system sends a source order that includes return order
lines but doesn't include order lines that you're fullling.
Order type and business unit Use this combination when a sales order that you create in the Order Management work area
includes return order lines but doesn't include order lines that you're fullling.
Oracle Receivable doesn't default a value for Receivables Transaction. If you don't dene a pretransformation rule or
posransformation rule, then Order Management uses the predened behavior. It uses transaction type Invoice for
order lines that you're fullling, and it uses Credit Memo for return order lines.
• If the Inventory Item Id aribute on the fulllment line is 149, then set the Transaction Type aribute to 1.
566
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
For example.
For details about how to create a business rule, see the Use Business Rules With Order Management topic.
567
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Fline is a PostTransformationRules.FulfillLineVO
Fline.InventoryItemId is 149
◦ Navigate to the Order Management work area, then create a new sales order.
◦ In the Order Lines area, add an item that references the inventory item you specied earlier in this
procedure.
◦ On the Billing and Payment Details tab, in the Order Line Details area, on the order line you must modify,
click Edit Accounting Details.
◦ In the Edit Accounting Details dialog, set the Receivables Transaction aribute, then click Submit..
◦ Verify that Oracle Receivables correctly categorized the transaction.
Flexelds
Overview of Using Flexelds to Integrate Order Management with Other Oracle
Applications
Use a descriptive exeld to integrate Order Management Cloud with Oracle Receivables, Oracle Shipping, Oracle
Receiving, or Oracle Procurement.
You can send each value that an extensible exeld uses to an upstream source system or to a downstream fulllment
system. You use the web service payload to send the value.
568
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
569
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
You can use the Copy-of feature in XLST (Extensible Stylesheet Language Transformations) instead of doing this work
manually. This feature dynamically maps the input extensible exelds to the Order Management entities and maps the
extensible exeld entity in Order Management to the SDO or modied node.
Here are details about the XML payload that the example in this document uses when it creates the extensible exeld.
570
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Related Topics
• Overview of Using Extensible Flexelds in Order Management
571
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
In this example, you will integrate Order Management with Oracle Receivables. You will integrate a descriptive exeld
named Invoice Lines.
The Source column describes the source you will use to get the value you will enter in the Value column. Leave
the Value column empty for now. You will add values to it during this procedure.
572
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
4. In the search results, click the row that contains the value.
Aribute Value
573
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
6. Copy values to your spreadsheet, then close the editor. Make sure you include the single quotation marks ( ' ) in
each value.
Aribute Value
targetNamespace 'hp://xmlns. oracle. com/ apps/ nancials/ receivables/ transactions/ shared/ model/
ex/ TransactionLineD/ '
complexType
If you.
For example, the RACUSTOMERTRXLINESCon1.xsd le contains the aributes on lines 2 and 4.
7. In Windows Explorer, expand View, then use an XML editor to open the le that includes the public view object
with the context you need.
For this example, open TransactionLineFLEXRA_5FCUSTOMER_5FTRX_5FLINES_5FCon1VO.xml.
8. Copy the DefaultValue property of the FLEX_Context view aribute to your spreadsheet.
In this example, the default value is RA_CUSTOMER_TRX_LINES_Con1.
574
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
9. Identify the name of the view aribute you must map, then copy it to your spreadsheet.
In this example, search the XML le for a view aribute that contains RACUSTOMERTRXLINESSSeq1.
Aribute Value
Aribute Value
◦ Cancel pages until you're back on the Setup and Maintenance page.
11. Verify that your spreadsheet contains the values.
Context Code The DefaultValue property of the 'RA_ CUSTOMER_ TRX_ LINES_Con1'
FLEX_Context view aribute from the
XML le.
575
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
You must enclose each string value with single quotation marks.
Fulfillment Integration
Service Mapping 1
Invoice Sources
Invoice Service
3 4
TransactionLineDff NameSpace
XsiType
_FLEX_Context
RACUSTOMERTRXLINESCon
1_Custom
1. Source. Provides a structure so Order Management can model data in the input SDO (service data object).
◦ Modify the InvoiceSources source on the predened FulllmentIntegration service mapping. You
will map this source to the TransactionLineD entity. This entity comes predened with aributes
NameSpace, XsiType, and _FLEX_Context.
◦ Add the RACUSTOMERTRXLINESCon1_Custom aribute. The FulllmentIntegration context comes
predened with the descriptive exelds and global descriptive exelds that Order Management
supports.
576
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
2. Service. Requests the service mapping and receives the output SDO. In this example, the InvoiceService service
references the entities and aributes that the integration algorithm uses to get the value of the descriptive
exeld.
3. Entity. The entity that the service mapping requires to structure the output SDO. In this example, you modify
the TransactionLineD entity so it references the descriptive exeld.
4. Aributes. The aributes that the service mapping requires to structure the output SDO. You will set up these
aributes so they reference objects and properties in Oracle Receivables.
For details about the service data object, see the How Service Mappings, Pricing Algorithms, and Matrixes Work
Together topic.
1. Sign into Order Management with the Order Administrator job role, then, in the Navigator, click Pricing
Administration.
Use the Order Administrator job role so you can access the integration algorithm and service mappings that
you use in the Pricing Administration work area to set up the integration.
2. Create a sand box. For details, see the Create a Sandbox So You Can Edit Service Mappings topic.
3. On the Overview page, click Tasks, then, under Order Management Conguration, click Manage Service
Mappings.
4. On the Manage Service Mappings page, in the Name column, click FulllmentIntegration.
5. On the Edit Service Mappings page, on the Entities tab, click the row that contains the value.
Aribute Value
Entity TransactionLineD
6. Click Sources.
7. In the InvoiceSources - Details area, on the Entity Mappings tab, click the row that contains the value.
Aribute Value
Entity TransactionLineD
Aribute Expression
NameSpace "hp://xmlns. oracle. com/ apps/ nancials/ receivables/ publicFlex/ TransactionLineD/ "
XsiType "RACUSTOMERTRXLINESCon1"
577
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Copy values from your spreadsheet into the expression. You must use one set of double quotation marks ( " )
to enclose each string that you dene in the expression.
9. Click Services, then click the row that contains the value.
Aribute Value
Entity TransactionLineD
10. In the TransactionLineD - Entities area, add a row for each entity. Make sure the Read aribute and the Write
aribute each contain a check mark in each row.
Aribute Value
RACUSTOMERTRXLINESCon1_ RACUSTOMERTRXLINESCon1
Custom
Related Topics
• Pricing Algorithm
• Service Mapping
• How Service Mappings, Pricing Algorithms, and Matrixes Work Together
You will you add a header extensible exeld in the service mapping, store the Id of the primary salesperson in the
extensible exeld, then map it to the Id of the primary salesperson in the Accounts Receivable line.
578
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
This topic includes example values. You might use dierent values, depending on your business requirements.
Aribute Value
5. In the search results, click the row that contains the value.
Aribute Value
The name of this le will include the value that the Flexeld Code aribute contains. For this example, the le
name is 10008_DOO_HEADERS_ADD_INFO.zip.
8. Use Windows Explorer to navigate to 10008_DOO_HEADERS_ADD_INFO.zip.
9. Expand 10008_DOO_HEADERS_ADD_INFO.zip > Oracle Apps > SCM > DOO > processOrder > Flex
> headerContextsB > View, then use an editor, such as Notepad++ or an XML editor, to open
HeaderEBHeaderContext1privateVO.xml.
579
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
11. Copy the name of the aribute you will use to store the Id of the primary salesperson to your spreadsheet.
Look for the ViewAribute that matches the segment you're using to store the value you need. For this
example, here's the value you copy.
Aribute Value
For example, the HeaderEBHeaderContext1privateVO.xml le contains the view aribute name.
580
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Fulfillment Integration
Service Mapping Invoice Sources
Entity Mapping
Entity: HeaderSalesPersonEFF_Custom
View Object: HeaderContext1privateVO
Query Attribute: HeaderId
Joined Entity: Header
Joined Entity Attribute: HeaderId
Attribute Mapping:
- HeaderId_Custom references HeaderId
- SalesPersonId_Custom references H1AttributeNum1
Invoice Service
maps
HeaderSalesPersonEFF
HeaderId_Custom
_Custom
SalesPersonId_Custom
Header HeaderId
ARInterfaceLine ResourceSalesrepId
581
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Try it.
1. Sign into Oracle Management with the Order Administrator job role, then, in the Navigator, click Pricing
Administration.
Use this job role to access the integration algorithm and service mappings you use in the Pricing Administration
work area to set up the integration.
2. On the Overview page, click Tasks, then, under Order Management Conguration, click Manage Service
Mappings.
3. On the Manage Service Mappings page, in the Name column, click FulllmentIntegration.
4. On the Edit Service Mappings page, on the Entities tab, click Actions > Add Row, then set values.
Aribute Value
Description Context for an extensible exeld on the order header. It contains details about the
salesperson.
Aribute Type
◦ Click Sources.
◦ In the InvoiceSources - Details area, on the Entity Mappings tab, click View > Columns, then add a check
mark to each value.
• Joined Entity
• Joined Entity Aribute
• Use Existing View Object
◦ Click Actions > Add Row, set values, then click Save.
Aribute Value
582
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
◦ On the Entity Mappings tab, click the row that contains the value.
Entity ARInterfaceLine
◦ In the ARInterfaceLine - Details area, click Actions > Add Row, set the value, then click Save.
Aribute Value
Aribute ResourceSalesrepId
◦ Click Services.
◦ In the InvoiceService - Details area, click Actions > Add Row, then set the value.
583
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
Aribute Alias
◦ In the InvoiceService - Details area, click the row that contains the value.
Aribute Value
Entity Header
Aribute Alias
◦ In the InvoiceService - Details area, click the row that contains the value.
Aribute Value
Entity ARInterfaceLine
◦ In the ARInterfaceLine - Entities area, add the aribute, then click Save and Close.
Aribute Alias
584
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
4. Click Variables > Actions > Add Row, set the values, then click Save.
Aribute Value
Name ARIntegration
5. Click Algorithm > Add Step > Conditional Action, set the values, then click Save.
Aribute Value
Description Map the primary salesperson from the extensible exeld that resides on the order header.
6. In the Data Sets area, add the data sets, then click Save.
585
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
where
Code Description
ARIntegration. ARInterfaceLine Species to use entity ARInterfaceLine of the service mapping to get order details, then store
them in ARIntegration, which is the variable you added to this integration algorithm earlier in
this topic.
This integration uses ARIntegration to temporarily store the data that this integration
algorithm will communicate through the service mapping. The Data Set Join is empty in
primary data set ARLine because the secondary data set populates ARLine.
ARIntegration. FulllLine Filters the results in ARIntegration according to the fulllment line.
The join [FulllLineId: {ARLine. FulllLineId}] uses the FulllLineId aribute of the FulllLine
entity from the service mapping to lter the primary ARLine data set so it contains only the
fulllment line that FulllLineId references.
Note.
◦ In the Variable Path, make sure you use the exact entity names from the service mapping, such as
ARInterfaceLine, FulllLine, and HeaderSalesPersonEFF_Custom.
◦ Make ARLine the primary.
◦ Each group of data sets includes one primary data set and one or more secondary data sets.
◦ Cardinality species that there is zero or one records in the secondary data set to one or many records in
the primary data set. It determines whether the join is an inner join or outer join.
◦ Data Set Join denes the constraint that this step uses to lter records that the secondary data set saves
in the primary.
◦ FLine represents a row from entity FulllLine that matches the join condition.
◦ HdrEFF represents a row from entity HeaderSalesPersonEFF_Custom that matches the join condition.
◦ ARInterfaceLine and FullLine come predened.
◦ You create HeaderSalesPersonEFF_Custom in the service mapping.
◦ ARInterfaceLine comes predened with aribute ResourceSalesRepId. Your set up will
populate ResourceSalesRepId with the value from aribute SalesPerson_Custom in entity
HeaderSalesPersonEFF_Custom that you dene. You dene HeaderSalesPersonEFF_Custom in the join
conditions for the data set so it uniquely identies the row that your set up uses to do the mapping.
7. In the Execute Condition area, click Add Condition > Default Action, add the value, then click Save and Close.
586
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute Value
where
◦ ARLine.ResourceSalesrepId. Species to store the result in the ResourceSalesrepId aribute of the
ARInterfaceLine entity on the service mapping.
8. On the Manage Algorithms page, click Actions > Publish.
9. Verify that the Status displays Published, then click Done.
10. Navigate to the Edit Service Mapping page.
11. Click Services, set values, then click Save and Close.
Aribute Value
Service InvoiceService
where
◦ Accounts Receivable Mapping Custom is the name of the integration algorithm you created.
Related Topics
• How Service Mappings, Pricing Algorithms, and Matrixes Work Together
• Pricing Algorithm
• Service Mapping
587
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
4. On the Overview page, click Tasks, then, under Order Management Conguration, click Manage Service
Mappings.
5. On the Manage Service Mappings page, click FulllmentIntegration.
6. On the Edit Service Mapping page, click Sources, then, in the Source column, click PurchaseRequestSource.
7. In the Details area, on the Entity Mappings tab, in the Entity column, click PurchaseRequestHeader.
8. On the Aribute Mappings tab, click Actions > Add Row, then set values.
AributeCategory RequestingBusinessUnitName
The rest of the setup is similar to using a descriptive exeld. For details see, Use Descriptive Flexelds to Integrate
Order Management with Other Oracle Applications.
Related Topics
• Create a Sandbox So You Can Edit Service Mappings
Reference
Entities and Aributes You Can Use When Integrating Order Management with Other
Oracle Applications
Use a variety of entities and aributes when you integrate Order Management Cloud with some other Oracle
application.
Summary
Here's a summary of the entities, sources, and services you can use in a service mapping or integration algorithm.
Object Value
Common Header
FulllLine
FilllLineDetails
ShipmentSource ShipmentRequestHeader
ShipmentRequestLine
InvoiceSource ARChargeInterfaceLine
ARInterfaceLine
Charge
ChargeComponent
TransactionInterfaceGdf
588
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Object Value
TransactionInterfaceHeaderD
TransactionInterfaceLinkToD
TransactionInterfaceLinkToD
TransactionLineInterfaceGdf
PurchaseRequestSource PurchaseRequestHeader
PurchaseRequestLine
PurchaseRequestCong
ReceiptSource ReceiptAdvice
ReceiptAdviceLine
ReceiptAdviceLineLot
ReceiptAdviceLineLotWithSerials
Entity Description
TransactionInterfaceGdf, Flexeld that stores receivable transactions that are available globally.
TransactionLineInterfaceGdf, Flexeld that stores receivable transaction lines that are available globally.
589
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Entity Description
ReceiptAdviceLineLotWithSerials Serial number and lot number details for the receipt advice line.
TransactionInterfaceHeaderD Descriptive exeld that stores details about the receivables transaction header.
ARChargeInterfaceLine Account receivables on the interface line. You use this object primarily for charges, discounts,
or freight.
You can map the aributes that the ARInterfaceLine entity contains.
Comments string
590
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
CurrencyConversionDate date
CurrencyConversionRate decimal
CurrencyConversionType string
CustomerSiteId long
DocumentRevisionDate dateTime
DocumentRevisionNumber string
FreightCarrierId long
FreightCarrierName string
FreightTerms string
HeaderId long
NoteToReceiver string
OutsourcerContactId long
OutsourcerContactName string
OutsourcerPartyId long
OutsourcerPartyName string
ShipFromLocationCode string
ShipFromLocationId long
ShipToLocationCode string
ShipToLocationId long
591
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ShipToOrganizationCode string
ShipToOrganizationId long
VendorId long
VendorName string
VendorSiteId long
VendorSiteName string
ActionCode string
BUId long
CurrencyCode string
CustomerId long
CustomerPartyName string
DocumentCreationDate dateTime
DocumentLastUpdateDate dateTime
DocumentNumber string
ReceiptAdviceNumber string
ReceiptAdviceOriginalSystemReference string
ReceiptSourceCode string
592
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
SourceDocumentType string
SourceSystemId long
AllowSubstituteReceipt string
Comments string
CountryOfOriginCode string
DaysEarlyReceiptAllowed decimal
DaysLateReceiptAllowed decimal
DocumentScheduleNumber string
EnforceShipToLocCode string
FulllLineId long
ItemCategory string
ItemRevision string
NoteToReceiver string
OrigSourceFullLineNumber string
OverReceiptExceptionCode string
OverReceiptTolerance decimal
593
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ReceiptDaysExceptionCode string
RoutingCode string
RoutingHeaderId long
SecondaryQuantityExpected decimal
SecondaryUnitOfMeasure string
SecondaryUOMCode string
ShipFromLocationCode string
ShipFromLocationId long
ShipToLocationCode string
ShipToLocationId long
SourceLineNumber string
SubstituteItemId long
SubstituteItemNumber string
VendorItemNumber string
AssessableValue decimal
CustomerItemId long
CustomerItemNumber string
594
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
DefaultTaxationCountry string
DocumentFiscalClassication string
DocumentLineCreationDate dateTime
DocumentLineLastUpdateDate dateTime
DocumentLineNumber string
ExpectedReceiptDate dateTime
FinalDischargeLocationId long
FirstPtyRegId long
IntendedUseClassifId long
ItemDescription string
ItemId long
ItemNumber string
OrigSalesOrderLineNumber string
OrigSalesOrderNumber string
OrigSourceHeaderNumber string
OrigSourceLineNumber string
ProductCategory string
ProductFiscClassId long
ProductType string
595
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
QuantityExpected decimal
ReceiptAdviceLineNumber string
ReceiptSourceCode string
ShipToOrganizationCode string
ShipToOrganizationId long
SourceFulllmentLineNumber string
SourceHeaderNumber string
TaxClassicationCode string
TaxInvoiceDate date
TaxInvoiceNumber string
TaxShipFromLocationId long
ThirdPtyRegId long
TransactionDate dateTime
TrxBusinessCategory string
UnitOfMeasure string
UOMCode string
UserDenedFiscClass string
596
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
FulllLineId long
GradeCode string
LotExpirationDate dateTime
ParentLotNumber string
SecondaryTransactionQuantity decimal
SecondaryTransactionQuantityUOMCode string
TransactionQuantityUOMCode string
LotNumber string
TransactionQuantity decimal
FulllLineId long
FromSerialNumber string
ToSerialNumber string
597
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
FulllLineId long
GradeCode string
LotExpirationDate dateTime
ParentLotNumber string
SecondaryTransactionQuantity decimal
SecondaryTransactionQuantityUOMCode string
TransactionQuantityUOMCode string
LotNumber string
TransactionQuantity decimal
You can't use any aributes in the ReceiptAdviceLineLotSerials element. Specically, you can't use these aributes.
FromSerialNumber string
ToSerialNumber string
598
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ApproverEmail string
ApproverId long
AssessableAmount decimal
Aribute1 string
Aribute10 string
Aribute11 string
Aribute12 string
Aribute13 string
Aribute14 string
Aribute15 string
Aribute16 string
Aribute17 string
Aribute18 string
Aribute19 string
Aribute2 string
599
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute20 string
Aribute3 string
Aribute4 string
Aribute5 string
Aribute6 string
Aribute7 string
Aribute8 string
Aribute9 string
AributeCategory string
AributeDate1 date
AributeDate10 date
AributeDate2 date
AributeDate3 date
AributeDate4 date
AributeDate5 date
AributeDate6 date
AributeDate7 date
AributeDate8 date
AributeDate9 date
600
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
AributeNumber1 decimal
AributeNumber10 decimal
AributeNumber2 decimal
AributeNumber3 decimal
AributeNumber4 decimal
AributeNumber5 decimal
AributeNumber6 decimal
AributeNumber7 decimal
AributeNumber8 decimal
AributeNumber9 decimal
AributeTimestamp1 dateTime
AributeTimestamp10 dateTime
AributeTimestamp2 dateTime
AributeTimestamp3 dateTime
AributeTimestamp4 dateTime
AributeTimestamp5 dateTime
AributeTimestamp6 dateTime
AributeTimestamp7 dateTime
AributeTimestamp8 dateTime
601
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
AributeTimestamp9 dateTime
Description string
DocumentStatusCode string
EmergencyPONumber string
HeaderId Long
InterfaceSourceLineId long
Justication string
RequisitionNumber string
SoldToLegalEntityId long
SoldToLegalEntityName string
TaxationCountryCode string
TaxationTerritory string
AachmentCategory string
AachmentEntityName string
AachmentPrimaryKey1 string
AachmentPrimaryKey2 string
AachmentPrimaryKey3 string
602
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
AachmentPrimaryKey4 string
AachmentPrimaryKey5 string
DocumentFiscalClassication string
DocumentFiscalClassicationCode string
ExternallyManagedFlag boolean
InterfaceHeaderKey string
PreparerEmail string
PreparerId long
RequisitioningBUId long
RequisitioningBUName string
Amount decimal
Aribute1 string
Aribute10 string
Aribute11 string
Aribute12 string
Aribute13 string
603
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute14 string
Aribute15 string
Aribute16 string
Aribute17 string
Aribute18 string
Aribute19 string
Aribute2 string
Aribute20 string
Aribute3 string
Aribute4 string
Aribute5 string
Aribute6 string
Aribute7 string
Aribute8 string
Aribute9 string
AributeCategory string
AributeDate1 date
AributeDate10 date
AributeDate2 date
604
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
AributeDate3 date
AributeDate4 date
AributeDate5 date
AributeDate6 date
AributeDate7 date
AributeDate8 date
AributeDate9 date
AributeNumber1 decimal
AributeNumber10 decimal
AributeNumber2 decimal
AributeNumber3 decimal
AributeNumber4 decimal
AributeNumber5 decimal
AributeNumber6 decimal
AributeNumber7 decimal
AributeNumber8 decimal
AributeNumber9 decimal
AributeTimestamp1 dateTime
AributeTimestamp10 dateTime
605
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
AributeTimestamp2 dateTime
AributeTimestamp3 dateTime
AributeTimestamp4 dateTime
AributeTimestamp5 dateTime
AributeTimestamp6 dateTime
AributeTimestamp7 dateTime
AributeTimestamp8 dateTime
AributeTimestamp9 dateTime
AutosourceFlag boolean
BaseModelNumber string
BaseModelPrice decimal
BuyerEmail string
BuyerId long
BuyerName string
CategoryId long
CategoryName string
ChangeActionReason string
CurrencyCode string
CustomerItemDescription string
606
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
DaysEarlyReceiptAllowed decimal
DeliverToCustomerContactEmail string
DeliverToCustomerContactId long
DeliverToCustomerContactName string
DeliverToCustomerContactNumber string
DeliverToCustomerId long
DeliverToCustomerLocationCLLICode string
DeliverToCustomerLocationOriginalSystemReference
string
DeliverToCustomerName string
DeliverToCustomerNumber string
DeliverToLocationCode string
DeliverToLocationId long
DestinationSubinventory string
FulllLineId Long
GroupCode string
HazardClass string
HazardClassId long
ItemDescription string
ItemRevision string
607
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
LineType string
LineTypeId long
NegotiatedByPreparerFlag boolean
NegotiationRequiredFlag boolean
NewSupplierFlag boolean
NoteToBuyer string
NoteToReceiver string
NoteToSupplier string
Price decimal
ProcurementBUId long
ProcurementBUName string
Rate decimal
RateDate date
RateType string
RequesterEmail string
RequesterId long
SecondaryQuantity decimal
SecondaryUOM string
SecondaryUOMCode string
608
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ShipToCustomerContactEmail string
ShipToCustomerLocationOriginalSystemReference
string
ShipToLocationCode string
ShipToLocationId long
SourceAgreementId long
SourceAgreementLineId long
SourceAgreementLineNumber decimal
SourceAgreementNumber string
SupplierContactEmail string
SupplierContactFax string
SupplierContactId long
SupplierContactName string
SupplierContactPhone string
SupplierItemNumber string
UNNumber string
UNNumberId long
UrgentRequisitionLineFlag boolean
609
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
AssessableAmount decimal
AachmentCategoryItem string
AachmentCategoryShip string
AachmentEntityName string
AachmentPrimaryKey1 string
AachmentPrimaryKey2 string
AachmentPrimaryKey3 string
AachmentPrimaryKey4 string
AachmentPrimaryKey5 string
BackToBackFlag boolean
BaseModelId long
Carrier string
CarrierId long
ConguredItemFlag boolean
CustomerItemNumber string
CustomerPOLineNumber string
CustomerPONumber string
CustomerPOScheduleNumber string
DaysLateReceiptAllowed decimal
610
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
DeliverToCustomerLocationId long
DeliverToOrganizationCode string
DeliverToOrganizationId long
DestinationTypeCode string
FirstPartyTaxRegistrationId long
FirstPartyTaxRegistrationNumber string
InterfaceLineKey string
ItemId long
ItemNumber string
LineIntendedUse string
LineIntendedUseId long
LineIntendedUseName string
LocationOfFinalDischargeCode string
LocationOfFinalDischargeId long
ModeOfTransportCode string
OrchestrationCode string
OverReceiptTolerancePercent decimal
ProductCategory string
ProductCategoryName string
611
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ProductFiscalClassication string
ProductFiscalClassicationId long
ProductFiscalClassicationName string
ProductType string
ProductTypeName string
Quantity decimal
RequestedDeliveryDate date
RequestedShipDate date
SalesOrderLineNumber string
SalesOrderNumber string
SalesOrderScheduleNumber string
ServiceLevelCode string
ShipToCustomerContactId long
ShipToCustomerContactName string
ShipToCustomerContactNumber string
ShipToCustomerId long
ShipToCustomerLocationCLLICode string
ShipToCustomerLocationId long
ShipToCustomerName string
612
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ShipToCustomerNumber string
SupplierId long
SupplierName string
SupplierSiteId long
SupplierSiteName string
TaxClassicationCode string
TaxClassicationName string
ThirdPartyTaxRegistrationId long
ThirdPartyTaxRegistrationNumber string
TransactionBusinessCategory string
TransactionBusinessCategoryName string
UnitOfMeasure string
UnitOfMeasureCode string
UserDenedFiscalClassication string
UserDenedFiscalClassicationName string
WorkOrderId long
WorkOrderNumber string
WorkOrderOperationId long
WorkOrderOperationSequence decimal
613
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
WorkOrderProduct string
WorkOrderSubTypeCode string
You can't use any aributes in the PurchaseRequestInputReqDistInterface element. Specically, you can't use these
aributes.
Aribute1 string
Aribute10 string
Aribute11 string
Aribute12 string
Aribute13 string
Aribute14 string
Aribute15 string
Aribute16 string
Aribute17 string
Aribute18 string
Aribute19 string
Aribute2 string
Aribute20 string
Aribute3 string
614
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
Aribute4 string
Aribute5 string
Aribute6 string
Aribute7 string
Aribute8 string
Aribute9 string
AributeCategory string
AributeDate1 date
AributeDate10 date
AributeDate2 date
AributeDate3 date
AributeDate4 date
AributeDate5 date
AributeDate6 date
AributeDate7 date
AributeDate8 date
AributeDate9 date
AributeNumber1 decimal
AributeNumber10 decimal
615
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
AributeNumber2 decimal
AributeNumber3 decimal
AributeNumber4 decimal
AributeNumber5 decimal
AributeNumber6 decimal
AributeNumber7 decimal
AributeNumber8 decimal
AributeNumber9 decimal
AributeTimestamp1 dateTime
AributeTimestamp10 dateTime
AributeTimestamp2 dateTime
AributeTimestamp3 dateTime
AributeTimestamp4 dateTime
AributeTimestamp5 dateTime
AributeTimestamp6 dateTime
AributeTimestamp7 dateTime
AributeTimestamp8 dateTime
AributeTimestamp9 dateTime
BudgetDate date
616
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ChargeAccountId long
ChargeAccountSegment1 string
ChargeAccountSegment10 string
ChargeAccountSegment11 string
ChargeAccountSegment12 string
ChargeAccountSegment13 string
ChargeAccountSegment14 string
ChargeAccountSegment15 string
ChargeAccountSegment16 string
ChargeAccountSegment17 string
ChargeAccountSegment18 string
ChargeAccountSegment19 string
ChargeAccountSegment2 string
ChargeAccountSegment20 string
ChargeAccountSegment21 string
ChargeAccountSegment22 string
ChargeAccountSegment23 string
ChargeAccountSegment24 string
ChargeAccountSegment25 string
617
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ChargeAccountSegment26 string
ChargeAccountSegment27 string
ChargeAccountSegment28 string
ChargeAccountSegment29 string
ChargeAccountSegment3 string
ChargeAccountSegment30 string
ChargeAccountSegment4 string
ChargeAccountSegment5 string
ChargeAccountSegment6 string
ChargeAccountSegment7 string
ChargeAccountSegment8 string
ChargeAccountSegment9 string
DistributionAmount decimal
DistributionQuantity decimal
InterfaceDistributionKey string
Percent decimal
ProjectBillableFlag boolean
ProjectCapitalizableFlag boolean
ProjectContextCategory string
618
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ProjectContractId decimal
ProjectContractLineId decimal
ProjectContractName string
ProjectContractNumber string
ProjectExpenditureItemDate date
ProjectExpenditureTypeId decimal
ProjectExpenditureTypeName string
ProjectFundingAllocationId decimal
ProjectFundingSourceName string
ProjectId decimal
ProjectName string
ProjectNumber string
ProjectOrganizationId decimal
ProjectOrganizationName string
ProjectReservedAribute1 string
ProjectTaskId decimal
ProjectTaskName string
ProjectUserDenedAribute1 string
ProjectUserDenedAribute10 string
619
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ProjectUserDenedAribute2 string
ProjectUserDenedAribute3 string
ProjectUserDenedAribute4 string
ProjectUserDenedAribute5 string
ProjectUserDenedAribute6 string
ProjectUserDenedAribute7 string
ProjectUserDenedAribute8 string
ProjectUserDenedAribute9 string
ProjectWorkTypeId decimal
ProjectWorkTypeName string
Description string
FulllLineId long
ItemRevision string
Price decimal
SupplierItemNumber string
620
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
AachmentCategory string
AachmentEntityName string
AachmentPrimaryKey1 string
AachmentPrimaryKey2 string
AachmentPrimaryKey3 string
AachmentPrimaryKey4 string
AachmentPrimaryKey5 string
BaseModelId long
BaseModelNumber string
ComponentLineId long
ComponentLineNumber long
InterfaceCongurationComponentKey string
ItemId long
ItemNumber string
ItemType string
ParentComponentLineId long
Quantity decimal
UnitOfMeasure string
UnitOfMeasureCode string
621
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
You can't use these aributes in any element with drop ship.
interfaceSourceCode string
requisitioningBUId long
requisitioningBUName string
groupBy string
nextRequisitionNumber int
initiateApprovalAfterRequisitionImport string
maximumBatchSize int
errorProcessingLevel string
Comments string
CurrencyConversionDate date
CurrencyConversionRate decimal
CurrencyConversionType string
CustomerSiteId long
DocumentRevisionDate dateTime
622
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
DocumentRevisionNumber string
FreightCarrierId long
FreightCarrierName string
FreightTerms string
HeaderId long
NoteToReceiver string
OutsourcerContactId long
OutsourcerContactName string
OutsourcerPartyId long
OutsourcerPartyName string
ShipFromLocationCode string
ShipFromLocationId long
ShipToLocationCode string
ShipToLocationId long
ShipToOrganizationCode string
ShipToOrganizationId long
VendorId long
VendorName string
VendorSiteId long
623
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
VendorSiteName string
CustomerPartyName string
ActionCode string
BUId long
CurrencyCode string
CustomerId long
DocumentCreationDate dateTime
DocumentLastUpdateDate dateTime
DocumentNumber string
ReceiptAdviceNumber string
ReceiptAdviceOriginalSystemReference string
ReceiptSourceCode string
SourceDocumentType string
SourceSystemId long
ReceiptAdviceLine
624
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
AllowSubstituteReceipt string
Comments string
CountryOfOriginCode string
DaysEarlyReceiptAllowed decimal
DaysLateReceiptAllowed decimal
DocumentScheduleNumber string
EnforceShipToLocCode string
FulllLineId long
ItemCategory string
ItemRevision string
NoteToReceiver string
OrigSourceFullLineNumber string
OverReceiptExceptionCode string
OverReceiptTolerance decimal
ReceiptDaysExceptionCode string
RoutingCode string
RoutingHeaderId long
SecondaryQuantityExpected decimal
SecondaryUnitOfMeasure string
625
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
SecondaryUOMCode string
ShipFromLocationCode string
ShipFromLocationId long
ShipToLocationCode string
ShipToLocationId long
SourceLineNumber string
SubstituteItemId long
SubstituteItemNumber string
VendorItemNumber string
AssessableValue decimal
CustomerItemId long
CustomerItemNumber string
DefaultTaxationCountry string
DocumentFiscalClassication string
DocumentLineCreationDate dateTime
DocumentLineLastUpdateDate dateTime
DocumentLineNumber string
626
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ExpectedReceiptDate dateTime
FinalDischargeLocationId long
FirstPtyRegId long
IntendedUseClassifId long
ItemDescription string
ItemId long
ItemNumber string
OrigSalesOrderLineNumber string
OrigSalesOrderNumber string
OrigSourceHeaderNumber string
OrigSourceLineNumber string
ProductCategory string
ProductFiscClassId long
ProductType string
QuantityExpected decimal
ReceiptAdviceLineNumber string
ReceiptSourceCode string
ShipToOrganizationCode string
ShipToOrganizationId long
627
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
SourceFulllmentLineNumber string
SourceHeaderNumber string
TaxClassicationCode string
TaxInvoiceDate date
TaxInvoiceNumber string
TaxShipFromLocationId long
ThirdPtyRegId long
TransactionDate dateTime
TrxBusinessCategory string
UnitOfMeasure string
UOMCode string
UserDenedFiscClass string
FulllLineId long
GradeCode string
LotExpirationDate dateTime
ParentLotNumber string
628
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
SecondaryTransactionQuantity decimal
SecondaryTransactionQuantityUOMCode string
TransactionQuantityUOMCode string
LotNumber string
TransactionQuantity decimal
FulllLineId long
FromSerialNumber string
ToSerialNumber string
FulllLineId long
629
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
GradeCode string
LotExpirationDate dateTime
ParentLotNumber string
SecondaryTransactionQuantity decimal
SecondaryTransactionQuantityUOMCode string
TransactionQuantityUOMCode string
TransactionQuantity decimal
Lot for Receipt Advice Line When Serials Control the Lot
You can't use any aributes in the ReceiptAdviceLineLotSerials element. Specically, you can't use these aributes.
FromSerialNumber string
ToSerialNumber string
CarrierPartyId long
630
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
CarrierPartyName string
CarrierPartyNumber string
FobCode string
FreightTermsCode string
HeaderId Long
ModeOfTransport string
OutsourcerPartyId long
OutsourcerPartyName string
OutsourcerPartyNumber string
ServiceLevel string
ShipFromLocationId long
ActionType string
BillToContactId long
BillToContactName string
BillToContactNumber string
BillToPartyId long
BillToPartyName string
631
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
BillToPartyNumber string
BillToPartySiteId long
BillToPartySiteNumber string
ConversionDate dateTime
ConversionRate decimal
ConversionType string
CurrencyCode string
DocumentNumber string
OrganizationCode string
OrganizationId long
OrganizationName string
SalesOrderNumber string
ShipToContactId long
ShipToContactName string
ShipToContactNumber string
ShipToPartyId long
ShipToPartyName string
ShipToPartyNumber string
ShipToPartySiteId long
632
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ShipToPartySiteNumber string
SoldPartyName string
SoldToContactId long
SoldToContactName string
SoldToContactNumber string
SoldToPartyId long
SoldToPartyNumber string
SourceDocumentType string
SourceHeaderNumber string
SourceSystemId long
SourceSystemName string
ArrivalSetName string
CurrencyCode string
CustomerItemNumber string
DoNotShipAfterDate dateTime
DoNotShipBeforeDate dateTime
633
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
EarliestDropoDate dateTime
EarliestPickupDate dateTime
EndAssemblyItemNumber string
FinalDischargeLocCode string
FulllLineId long
InitialDestinationLocationId long
IntendedUse string
ItemDescription string
LatestDropoDate dateTime
LatestPickupDate dateTime
OrderedQuantity2 decimal
OrderedQuantityUomCode2 string
OrderedQuantityUomName2 string
PreferredGrade string
ShipToleranceAbove decimal
ShipToleranceBelow decimal
SourceLineUpdateDate dateTime
SourceShipmentId long
SrcAribute1 string
634
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
SrcAribute10 string
SrcAribute11 string
SrcAribute12 string
SrcAribute13 string
SrcAribute14 string
SrcAribute15 string
SrcAribute16 string
SrcAribute17 string
SrcAribute18 string
SrcAribute19 string
SrcAribute2 string
SrcAribute20 string
SrcAribute3 string
SrcAribute4 string
SrcAribute5 string
SrcAribute6 string
SrcAribute7 string
SrcAribute8 string
SrcAribute9 string
635
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
SrcAributeCategory string
SrcAributeDate1 date
SrcAributeDate2 date
SrcAributeDate3 date
SrcAributeDate4 date
SrcAributeDate5 date
SrcAributeNumber1 decimal
SrcAributeNumber10 decimal
SrcAributeNumber2 decimal
SrcAributeNumber3 decimal
SrcAributeNumber4 decimal
SrcAributeNumber5 decimal
SrcAributeNumber6 decimal
SrcAributeNumber7 decimal
SrcAributeNumber8 decimal
SrcAributeNumber9 decimal
SrcAributeTimestamp1 dateTime
SrcAributeTimestamp2 dateTime
SrcAributeTimestamp3 dateTime
636
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
SrcAributeTimestamp4 dateTime
SrcAributeTimestamp5 dateTime
TradeComplianceScreeningDate dateTime
TradeComplianceScreeningReason string
TradeComplianceScreeningStatus string
TransportationPlanningStatus string
TransportationShipment string
TransportationShipmentLine string
AssessableValue decimal
BaseItemId long
BaseItemNumber string
BillToContactId long
BillToContactName string
BillToContactNumber string
BillToPartyId long
BillToPartyName string
BillToPartyNumber string
637
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
BillToPartySiteId long
BillToPartySiteNumber string
BusinessUnitName string
CarrierPartyId long
CarrierPartyName string
CarrierPartyNumber string
CategoryId long
CategoryName string
CustPoNumber string
DateRequested dateTime
DateScheduled dateTime
DefaultTaxationCountry string
DocumentSubType string
ExemptCerticateNumber string
ExemptReasonCode string
FinalDischargeLocationId long
FirstPtyNumber string
FirstPtyRegId long
FobCode string
638
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
FreightTermsCode string
FromSubinventoryCode string
IntendedUseClassifId decimal
InventoryItemId long
ItemNumber string
LineActionType string
ModeOfTransport string
OrderedQuantity decimal
OrderedQuantityUomCode string
OrderedQuantityUomName string
OrganizationCode string
OrganizationId long
OrganizationName string
OrgId long
PackingInstructions string
ParentInventoryItemId long
ParentItemNumber string
ParentSourceShipmentId long
ProductCategory string
639
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
ProductType string
ReleaseLock string
RequestDateTypeCode string
SalesOrderLineNumber string
SalesOrderShipmentNumber string
SellingPrice decimal
ServiceLevel string
ShipmentPriorityCode string
ShippingInstructions string
ShipSetName string
ShipToContactId long
ShipToContactName string
ShipToContactNumber string
ShipToPartyId long
ShipToPartyName string
ShipToPartyNumber string
ShipToPartySiteId long
ShipToPartySiteNumber string
SoldToContactId long
640
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
SoldToContactName string
SoldToContactNumber string
SoldToPartyId long
SoldToPartyName string
SoldToPartyNumber string
SourceLineNumber string
SourceShipmentNumber string
TaxClassicationCode string
TaxInvoiceDate date
TaxInvoiceNumber string
ThirdPtyNumber string
ThirdPtyRegId long
TrxBusinessCategory string
UnitPrice decimal
UserDenedFiscClass string
You can't use any aributes in the ShipmentRequestOrderLineHold element. Specically, you can't use these aributes.
HoldActionCode string
641
Oracle SCM Cloud Chapter 3
Implementing Order Management Integrate
HoldId long
HoldReasonCode string
HoldReason string
Related Topics
• Pricing Algorithm
• Service Mapping
642
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Import
643
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Get details.
• Use a web service to create an integration that imports source orders. See the Overview of Using Web Services
with Order Management Cloud topic.
• Use the Order Import Template to reduce errors and simplify order import. This template contains a structure
that the Oracle database requires. It includes a tab for each database table, and it displays tabs in a specic
644
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
sequence. Columns on each tab represent table columns that Oracle requires, and the template species the
data type that Oracle requires for each database column.
◦ Get a copy of Order Import Template and get details about tables that the template references. See the
Sales Orders topic in book File-Based Data Import for Oracle Supply Chain Management Cloud on Oracle
Help Center.
◦ Learn how to use Order Import Template. See the Guidelines for Importing Orders into Order
Management topic.
Related Topics
• Data Security
• Guidelines for Using Web Services to Integrate Order Management
645
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
646
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Note.
• Create a CSV le, such as MySourceOrders.csv. To make sure you include the same structure that the template
uses, its recommended that you open the template le, save it as a CSV le, structure your data so it mirrors the
CSV le, and then copy your source data into the CSV le
• Include the same table names and sequence them in the same sequential order. The tab sequence that the
template uses determines sequential order.
• Include the same columns in each table, and arrange columns in the same sequential order inside each table.
• Use the same data type for each column.
647
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Enter your data so it reects the structure of the Oracle database. The Order Import Template uses a separate
spreadsheet in an Excel workbook to represent each interface table.
• A row near the top of each spreadsheet contains column headers.
• Each column header represents the name of an interface table column.
• The spreadsheet displays columns in a specic sequence.
• You must not modify the sequence. If you do, import will fail.
• Hide columns you don't need, but you must not delete them. If you delete a column, import will fail.
Order Import Template includes a tab for each of these interface tables. The _INT sux indicates its an interface table.
You must include data in each required table.
648
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
DOO_ ORDER_ TXN_ ATTRIBUTES_ INT Aributes that might be associated with Yes
an order line.
DOO_ ORDER_ SALES_ CREDITS_INT Sales credits for the sales representative No
that the source order references.
DOO_ ORDER_ LOT_ SERIALS_INT Lot serial details for the order line. No
DOO_ ORDER_ CHARGES_INT Charges for the sales order. Required only if you don't calculate pricing
in Oracle Fusion.
DOO_ ORDER_ CHARGE_ COMPS_INT Charge components for the sales order. Required only if you don't calculate pricing
in Oracle Fusion.
DOO_ ORDER_ BILLING_ PLANS_INT Billing plans for the sales order. No
DOO_ ORDER_ MANUAL_ PRICE_ADJ_INT Manual price adjustments for the sales No
order.
DOO_ ORDER_ HDRS_ ALL_EFF_B_INT Flexeld details for the order header. No
DOO_ ORDER_ LINES_ ALL_EFF_B_INT Flexeld details for the order line. No
649
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Note.
• Order Import Template uses an asterisk ( * ) to indicate required columns. For example, the Source Transaction
Schedule Identier column on the DOO_ORDER_LINES_ALL_INT tab is required.
• The template uses an asterisk ( * ) to indicate each required column.
• The template uses a double asterisk ( ** ) to indicate the color group requires a value in at least one of these
columns. For example, if a color group includes columns **a, **b, and c, then you must include a value in a or
b, or a and b.
• Required columns aren't always contiguous. Carefully examine column headings in each spreadsheet to make
sure you include data for each required column.
• To locate required headings on each spreadsheet, press CTRL + F, enter ~* (a tilde and an asterisk), and then
click Find All.
650
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
• For example, the DOO_ORDER_HEADERS_ALL_INT sheet uses a tan color to group columns Buying Party
Identier, Buying Party Name, and Buying Party Number. You must enter a value in at least one column of this
color group.
• Some sheets include more than one color group. You must enter at least one value for each color group.
• Color groups might not display contiguously. Carefully examine the color group on each spreadsheet to make
sure you include at least one value for each color group.
• Some color groups are conditional. For example, you must enter a value for at least one column in the color
group that represents these columns.
The DOO_ORDER_LINES_ALL_INT sheet contains these columns and uses them only for rows that references a
return order. The sheet includes an instructional note immediately above each conditional color group.
• Use the format that the database column uses. For example, data in column Source Transaction Identier of tab
DOO_ORDER_LINES_ALL_INT must use format VARCHAR2(50).
• Use example data and descriptive text to help determine the type of data to include.
• Order Import Template comes predened with example data already populated, and some column headers
include descriptive text.
• For example, click the DOO_ORDER_LINES_ALL_INT tab, and notice that row seven in column Requested
Fulllment Organization Name includes a value of Vision Operations.
• Position your mouse over column header Requested Fulllment Organization Name, and then read the
descriptive text that indicates this eld must contain only VARCHAR2(240 CHAR) data. The value Vision
Operations meets this requirement.
• Make sure you remove example data before you import data.
For details, see the topic about Oracle data types in Oracle Server Concepts Manual at hps://docs.oracle.com/cd/
A57673_01/DOC/server/doc/SCN73/ch6.htm.
651
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Note
• You must use a comma (,) for the thousands separator and a period (.) for the decimal separator in number
columns. For example, use 1,500.25. Don't use 1500,25.
• Use a whole number when required. If a column must use a whole number, then the control le that validates
data in this column includes only whole numbers. If it doesn't, then the import fails.
• You must use format YYYY/MM/DD HH:MM:SS for each date eld. For example, 1/15/2019 10:10:10 AM is January 15,
year 2019, 10 hours, 10 minutes, and 10 seconds after 00:00:00 AM.
652
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
in your implementation project to get the identier and other aributes that you must map for the internal
identier.
Make sure you correctly set up the rank for each customer item relationship before you import orders. For details, see
the Import Customer Items into Order Management topic.
653
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Note.
• Use the Load Interface File for Import scheduled process to upload your data to the server.
Use the Import Sales Orders scheduled process to import data into Order Management.
Verify the Order Management work area displays your imported data.
654
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
If you use a le to import a customer, contact, or address that doesn't already exist in Trading Community Architecture,
then you must manually assign privileges to the role for the user who runs the Load Interface File for Import scheduled
process.
Privilege Description
For details about how to add a privilege, see topic Data Security: Explained.
Import a Revision
If you import a draft order, modify it in the Order Management work area, submit it, then import a revision of the order
in a subsequent import, then the imported revision must include the current aribute values. If you want to change
aribute values, then the imported revision must include the new values.
For example, assume you set up an order management extension that sets the default value for the Shipping Method
aribute. You import a value of Air for Shipping Method, you change the Shipping Method to Rail in the Order
Management work area, submit the order, then import an order revision in a subsequent import. If you want to keep
Rail, then your subsequent import must include a value of Rail for Shipping Method. If the subsequent import doesn't
include any value for Shipping Method, then Order Management will set Shipping Method to some other value,
depending on your pretransformation rule.
Related Topics
• How Order Management Transforms Source Orders Into Sales Orders
655
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Note.
1. Convert source data.
2. Create import le.
3. Upload source data.
4. Import source data.
5. Delete imported orders from interface tables.
656
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Order import typically uses this same ow when you integrate Order Management with a source system, except you
import orders from a spreadsheet. For details, see the How Order-to-Cash Works with Order Capture Systems topic.
Use the template to help make sure your converted data uses the same structure that the Oracle database requires.
This topic describes one recommended way to convert your source data. The details of your conversion might require a
dierent way.
If you can't use Order Import Template for some reason, and if you aren't familiar with doing data conversion, then
consult Oracle resources about how to use an open interface when importing data. For details about other ways to
import your data, such as through a web service, see the Use Web Services to Integrate with Order Management topic.
You can use SQL (Structured Query Language), ODI (Oracle Data Integrator), or some other tool to convert your
source data into a CSV le.
◦ Use a spreadsheet editor that can read a CSV le, such as Excel, to open Order Import Template.
◦
Delete the example data from Order Import Template. This template comes with example data
that helps you determine the type of data that you must include. For example, row four of tab
DOO_ORDER_HEADERS_ALL_INT includes example data. Make sure you delete all example data from all
tables in the spreadsheet, even from tables you don't need.
2. Copy and paste your source data into each of the tables in Order Import Template.
◦ Use a spreadsheet editor to open the CSV le that contains your source data.
◦ Copy your order line data to the clipboard.
◦ In the Order Import Template, click the DOO_ORDER_LINES_ALL_INT tab.
◦ Click cell A5, then paste your data.
657
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
◦ Examine the results to make sure you correctly pasted the data. For example, make sure the Product
Description column contains VARCHAR data, and that the Ordered Quantity column contains NUMBER
data.
◦ Continue copying data for each table until you nish copying all your source data into Order Import
Template.
Tip: Save your work after each copy.
◦ Click the Create CSV tab, then click Generate CSV File.
If Generate CSV File isn't active, then click Developer in the menu bar, then click Macros. In the Macro
dialog, choose GenCSV, then click Run.
◦ Wait for the macro in Excel to nish.
When the macro nishes, Excel displays a dialog that allows you to save a .zip le.
◦ In the save dialog, choose a location to save your .zip le, then click Save.
The macro creates a .zip le that includes a separate le for each table that the template contains.
◦ Optional. In subsequent save dialog boxes, save each individual CSV le.
If you must import data for an individual table, then save the data as an individual CSV le. Otherwise,
click Cancel.
Aribute Value
Parameter Description
Data File a. In the Data File aribute, click the down arrow .
b. Scroll down and click Upload a New File.
c. In the Upload File dialog, click Choose File.
d. In your Windows Explorer window, locate and choose the .zip le you created when
you used Order Import Template, then click Open.
658
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Parameter Description
7. Click Submit.
8. In the Conrmation dialog, note the value of aribute Process ID, then click OK > Close.
9. Click Actions > Refresh.
10. Use the Process ID that you noted earlier to locate your scheduled process, then make sure the Status aribute
for this process displays Succeeded.
The Succeeded status indicates that the scheduled process successfully uploaded your source data. If the
upload fails on any row, then the status displays Error. If the search results doesn't display your process, then
click Refresh until it does.
11. Correct errors, if necessary.
◦ If the scheduled process ends in an error, then click the Error status in the search results for your
scheduled process and examine the log and output les to get details about data that caused the error.
◦ Use Excel to open the Order Import Template that contains your source data, and then correct the source
data that causes the error.
◦ In the Order Import Template, click Generate CSV File, then run the scheduled process again.
Repeat this step until the scheduled process successfully uploads your source data.
Parameter Description
Source System To import all records from the source system, enter the value that you set in the Source
Transaction System column on the DOO_ ORDER_ LINES_ALL_INT tab of the Order Import
Template.
For example, enter LEG.
Source Order Number To import the record for only one source order, enter the value that you set in the Source
Transaction Identier column on the DOO_ ORDER_ LINES_ALL_INT tab of the Order Import
Template.
For example, enter 12345.
659
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Related Topics
• How Order-to-Cash Works with Order Capture Systems
Go to White Papers for Order Management Cloud (Doc ID 2051639.1) on My Oracle Support at hps://
support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=240734770529730&id=2051639.1.
Download and open aachment Files_for_Implementation_Examples.docx, then use Microsoft Excel to open
OrderImportTemplate_Example.xlsm.
2. In OrderImportTemplate_Example.xlsm, click Generate CSV le, then save the output le as
SourceSalesOrderImport.zip.
3. Run the Load Interface File For Import scheduled process.
4. Run the Import Sales Order scheduled process.
660
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
5. Verify that the Order Management work area contains your imported data.
DOO_ORDER_HEADERS_ALL_INT
661
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Aribute Value
SourceTransactionIdentier PMC_IMP_161208
SourceTransactionSystem OPS
SourceTransactionNumber PMC_IMP_161208
SourceTransactionRevisionNumber 1
BuyingPartyIdentier 300000001469001
BuyingPartyType ORGANIZATION
TransactionalCurrencyCode USD
TransactionalCurrencyName US Dollar
BatchName 10810
PartialShipAllowedFlag N
FreezePricing N
FreezeShippingCharge N
FreezeTax N
662
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Aribute Value
CreateCustomerInformationFlag N
DOO_ORDER_LINES_ALL_INT
Aribute Value
SourceTransactionIdentier PMC_IMP_161208
SourceTransactionSystem OPS
SourceTransactionLineIdentier 1
SourceTransactionScheduleIdentier 1011
SourceTransactionScheduleNumber 11
SourceTransactionLineNumber 1
ProductNumber AS54888
OrderedQuantity 3
OrderedUOMCode zzy
OrderedUOM Ea
RequestedFulllmentOrganizationCode DOOCSPS1
SubstitutionAllowedFlag N
RequestedShipDate 2016/12/09
PaymentTerm 30 Net
663
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Aribute Value
TransactionCategoryCode ORDER
PartialShipAllowedFlag N
ContractStartDate 2014/09/26
ContractEndDate 2019/09/26
DOO_ORDER_ADDRESSES_INT
SourceTransactionLineIdentier 1 1
State AZ CO
664
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Related Topics
• How Order Management Transforms Source Orders Into Sales Orders
Option Description
Create one conguration package. This package contains the oerings that include the inventory organizations, and that also
contains the Order Management oering.
Create more than one conguration Use a separate conguration package for the oering that includes the inventory
package. organizations, and use another package for the Order Management oering.
665
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
• Import a record that includes customer item Vision Desktop and customer Vision Operations.
• Create a relationship between Vision Desktop and inventory item AS54888 (Standard Desktop).
• Create a relationship between Vision Desktop and inventory item AS54600 (Sentinel 9000-S Desktop).
• Rank AS54888 higher than AS54600 so Order Management uses AS54888 rst to fulll the item, then uses
AS54600 only if AS54888 isn't available in inventory.
1. Sign into Oracle Fusion Applications with a user role you can use to administer Product Information
Management.
If you don't sign in with this role, then the Product Information Management work area won't display your
product details and you won't be able to do this procedure.
2. In the Navigator, click Product Management > Product Information Management.
3. In the Product Information Management work area, click Tasks > Manage Trading Partner Items.
4. Click Actions > Create.
5. In the Create Trading Partner Type dialog, set the value, then click OK.
Aribute Value
Aribute Value
Aribute Value
Organization MASTERORGANIZATION
Item AS54888
Rank
1
666
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Aribute Value
◦ Enter a value. If you don't enter a value, then Order Management can't identify the
inventory item to use during order import, and your import will fail.
◦ Make sure the value you enter is unique across the customer item relationships you
set up for this customer item.
For example, if you set up a rank of 5 for AS54888, and a rank of 5 for AS54600, then
the import will fail because Order Management can't determine which customer item
relationship takes precedence.
Aribute Value
Organization MASTERORGANIZATION
Item AS54600
Rank 2
The term freeze means Pricing Administration won't recalculate charges. For example, if you set Freeze Price to.
• Y. Don't recalculate charges.
• N. Recalculate charges.
Here's how Pricing Administration maps these aributes to aributes on the header entity of the pricing service data
object.
FreezePricing CalculatePricingChargesFlag
FreezeShippingCharge CalculateShippingChargesFlag
667
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
FreezeTax CalculateTaxFlag
Pricing will use values in the import payload to determine price, shipping charges, and tax. The aributes you use
depend on how you import price data. For details, see these topics.
Import Tax
Specify Whether to Include Tax in Net Price
You can include or not include Tax in Net Price. In either case.
<soap:Envelope
<soap:Body>
<ns1:process
<ns1:OrchestrationOrderRequest
<ns2:OrchestrationOrderRequestLine>
<ns2:LineCharge>
<ns2:ChargeComponent
• Get example payloads. For details, search for Document ID 2051639.1 (White Papers for Order Management
Cloud) on My Oracle Support, download the Files_That_Support_Implementation_Examples aachment, then
examine the examples that include or don't include tax in net price.
<ns2:ChargeComponent>
<ns2:ChargeCurrencyCode>USD</ns2:ChargeCurrencyCode>
<ns2:HeaderCurrencyCode>USD</ns2:HeaderCurrencyCode>
<ns2:HeaderCurrencyExtendedAmount>-10</ns2:HeaderCurrencyExtendedAmount>
<ns2:PriceElementCode>QP_DISCOUNT_ADJ</ns2:PriceElementCode>
<ns2:SequenceNumber>2</ns2:SequenceNumber>
<ns2:PriceElementUsageCode>PRICE_ADJUSTMENT</ns2:PriceElementUsageCode>
<ns2:ChargeCurrencyUnitPrice>-1</ns2:ChargeCurrencyUnitPrice>
<ns2:HeaderCurrencyUnitPrice>-1</ns2:HeaderCurrencyUnitPrice>
<ns2:RollupFlag>false</ns2:RollupFlag>
<ns2:SourceParentChargeComponentId></ns2:SourceParentChargeComponentId>
<ns2:SourceChargeIdentifier>SC1</ns2:SourceChargeIdentifier>
<ns2:SourceChargeComponentIdentifier>SCC2</ns2:SourceChargeComponentIdentifier>
<ns2:ChargeCurrencyExtendedAmount>-10</ns2:ChargeCurrencyExtendedAmount>
</ns2:ChargeComponent>
<ns2:ChargeComponent>
<ns2:ChargeCurrencyCode>USD</ns2:ChargeCurrencyCode>
<ns2:HeaderCurrencyCode>USD</ns2:HeaderCurrencyCode>
<ns2:HeaderCurrencyExtendedAmount>10</ns2:HeaderCurrencyExtendedAmount>
<ns2:PriceElementCode>QP_INCLUSIVE_TAX</ns2:PriceElementCode>
<ns2:SequenceNumber>3</ns2:SequenceNumber>
<ns2:PriceElementUsageCode>INCLUSIVE_TAX</ns2:PriceElementUsageCode>
668
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Note.
◦ Add the code starting right after the line that contains PriceElementCode up to and including
PriceElementUsageCode>INCLUSIVE_TAX.
Note.
Note.
669
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
<ns2:HeaderCurrencyCode>USD</ns2:HeaderCurrencyCode>
<ns2:HeaderCurrencyExtendedAmount>100</ns2:HeaderCurrencyExtendedAmount>
<ns2:PriceElementCode>QP_NET_PRICE_PLUS_TAX</ns2:PriceElementCode>
<ns2:SequenceNumber>5</ns2:SequenceNumber>
<ns2:PriceElementUsageCode>NET_PRICE_PLUS_TAX</ns2:PriceElementUsageCode>
<ns2:ChargeCurrencyUnitPrice>10</ns2:ChargeCurrencyUnitPrice>
<ns2:HeaderCurrencyUnitPrice>10</ns2:HeaderCurrencyUnitPrice>
<ns2:RollupFlag>false</ns2:RollupFlag>
<ns2:SourceParentChargeComponentId></ns2:SourceParentChargeComponentId>
<ns2:SourceChargeIdentifier>SC1</ns2:SourceChargeIdentifier>
<ns2:SourceChargeComponentIdentifier>SCC5</ns2:SourceChargeComponentIdentifier>
<ns2:ChargeCurrencyExtendedAmount>100</ns2:ChargeCurrencyExtendedAmount>
<ns2:ChargeComponent>
Note.
Don't Include Tax in Net Price Pay Now equals tax plus Net Price.
Total Tax includes only the exclusive tax.
Assume.
670
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Here's how pricing works when your import includes a sales order line or a return line that doesn't reference the original
sales order.
Supported
Here are the combinations of values you can use for the freeze aributes.
Not Supported
Here are the combinations of values you can't use for the freeze aributes.
671
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Assume your import includes a return line that does reference the original sales order.
Related Topics
• How Order Management Transforms Source Orders Into Sales Orders
• Import Price Lists
• Aributes You Can Use with Web Services
672
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Aribute Value
673
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Aribute Value
Customer Name Name of customer you're importing, such as Computer Service and Rentals.
Use this aribute only when Address Use Type contains BILL_ TO.
Account Site Identier Value that uniquely identies the account, such as 300000001469016.
Use this aribute only when Address Use Type contains BILL_ TO.
• Ship-to Customer
• Ship-to Address
674
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Aribute Value
Party Name Name of party you're importing, such as Computer Service and Rentals.
Use this aribute only when Address Use Type contains SHIP_ TO.
Party Site Identier Value that uniquely identies the party site address, such as 300000001469004.
Use this aribute only when Address Use Type contains SHIP_ TO.
675
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Aribute Value
• Bill-to Customer
• Bill-to Address
676
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Set the same values you use to populate order header aributes, except set this aribute.
Aribute Value
Source Transaction Line Identier Value that uniquely identies the transaction line in the source system, such as 1.
Make sure you set Source Transaction Line Identier on DOO_ORDER_LINES_ALL_INT and on
DOO_ORDER_ADDRESSES_INT to the same value.
The import uses Source Transaction Line Identier to create a relationship between the address on
DOO_ORDER_ADDRESSES_INT with the order line on DOO_ORDER_LINES_ALL_INT.
• Ship-to Customer
• Ship-to Address
677
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
678
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
In your SQL, replace the placeholder with a value from your order import template.
679
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
680
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Related Topics
• Use SQL to Query Order Management Data
• How Order-to-Cash Works with Order Capture Systems
Sales Orders for Order Hub SourceSalesOrderImportTemplate Through File-Based Data Import
Resource in REST API
If you import a shipping method through REST API or FBDI, you must make sure the method is valid.
• If you include a value for one of the three aributes, then you must include a value for all of them. For
example, if you include a value for ShippingCarrierId, then you must include a value for ShippingMode and
ShippingServiceLevel.
• The WSH_MODE_OF_TRANSPORT lookup type must contain the value you import for ShippingMode.
• The WSH_SERVICE_LEVELS lookup type must contain the value you import for ShippingServiceLevel.
The combination of ShippingCarrierId, ShippingMode, and ShippingServiceLevel must be valid with each other. Here's
an easy way to identify valid combinations that you can import.
1. Go to the Order Management work area, then create a sales order.
2. In the Order Lines area, click Shipment Details.
3. On the Shipment Details tab, in the Shipping Method aribute, click down arrow > Search.
4. In the Select Shipping Method dialog, leave the aributes in the Search area empty and click Search.
5. Choose a set of values from the search results and use them in your REST API payload or FBDI template.
Here are some example results.
Airborne Parcel 2nd day air Airborne Parcel 2nd day air
681
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
◦ On the Manage Carriers Lookups page, search Lookup Type for WSH_MODE_OF_TRANSPORT.
◦ In the search results, examine the values in the Lookup Meaning column.
Example results include Air, Less than Truckload, Ocean, Parcel, Rail, Truckload, and so on. Set the
ShippingMode aribute in your import payload to one of these values.
If you don't see the lookup code you need, then click Actions > New in the Lookup Codes area, and add
it.
3. Identify the service levels you can use.
◦ On the Manage Carriers Lookups page, search Lookup Type for WSH_SERVICE_LEVELS.
◦ In the search results, examine the values in the Lookup Meaning column.
Example results include Door-to-door, Express, FedEx 2day, and so on. Set the ShippingServiceLevel
aribute in your import payload to one of these values.
If you don't see the lookup code you need, then click Actions > New in the Lookup Codes area, and add
it.
682
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Troubleshoot
If you import a shipping method that isn't valid, then the communication with Global Order Promising might fail. You
will notice when the Order Entry Specialist aempts to submit a sales order but receives an error, similar to. . .
You can't submit the sales order because the combination of the mode of transport, service level, and
carrier that determines the shipping method on the order header isn't valid.
Trouble Shoot
The DOO_ VALIDATE_ ORDER_ Reimport the shipping method with the correct values.
SHIP_METHOD processing constraint
or DOO_ VALIDATE_ FULFILL_ LINE_
SHIP_METHOD constraint examined
the shipping method and found that
it isn't valid.
Related Topics
• Use Domain Value Maps to Cross-Reference Data in Order Management
683
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Use the DocumentReferenceType aribute to identify the original order line you're returning.
DocumentReferenceType Description
ORIGINAL_ SALES_ORDER Identify the original order line in the source system from a channel, such as a legacy order
capture system.
ORIGINAL_ ORCHESTRATION_ Identify the original sales order line in Order Management Cloud.
ORDER
You must use DocumentSubLineIdentier.
Use ORIGINAL_SALES_ORDER
Use ORIGINAL_SALES_ORDER in the DocumentReference section to specify details about the source order you
originally created in your source system.
DocumentIdentier Value that uniquely identies the original CS_ SO_ 1234445555565656
source order. This is the source order in
your source system that you originally
used to order the item.
684
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Note.
• Provide values that uniquely identify the source order line. For instance, you can provide identiers for the
source order and source order line to uniquely identify the source order line. You can also provide other values,
such as source order number and source order line number, to uniquely identify the source order line.
• Include values for DocumentNumber or DocumentIdentier, or DocumentNumber and DocumentIdentier.
• Include values for DocumentLineNumber or DocumentLineIdentier, or DocumentLineNumber and
DocumentLineIdentier.
Use ORIGINAL_ORCHESTRATION_ORDER
Add another DocumentReference section, and use ORIGINAL_ORCHESTRATION_ORDER to identify details about the
order you originally created in Order Management Cloud.
685
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Example Payload
Here's an example payload. It uses ORIGINAL_SALES_ORDER and ORIGINAL_ORCHESTRATION_ORDER. You use the
DocumentReference section to specify details about the original sales order. Use the Order Information Service to get
the values you need for your payload. For details, see the Web Services You Can Use to Integrate Order Management
topic.
<ns2:DocumentReference>
<ns2:DocumentReferenceType>ORIGINAL_SALES_ORDER</ns2:DocumentReferenceType>
<ns2:DocumentIdentifier>CS_SO_1234445555565656</ns2:DocumentIdentifier>
<ns2:DocumentAdditionalIdentifier>LEG</ns2:DocumentAdditionalIdentifier>
<ns2:DocumentNumber>CS_SO_122_0034</ns2:DocumentNumber>
<ns2:DocumentAdditionalNumber/>
<ns2:DocumentLineIdentifier>101</ns2:DocumentLineIdentifier>
<ns2:DocumentAdditionalLineIdentifier/>
<ns2:DocumentLineNumber/>
<ns2:DocumentAdditionalLineNumber/>
<ns2:DocumentAdditionalSubLineIdentifier/>
<ns2:DocumentSubLineNumber/>
<ns2:DocumentAdditionalSubLineNumber/>
</ns2:DocumentReference>
<ns2:DocumentReference>
<ns2:DocumentReferenceType>ORIGINAL_ORCHESTRATION_ORDER</ns2:DocumentReferenceType>
<ns2:DocumentIdentifier>300100177488708</ns2:DocumentIdentifier>
<ns2:DocumentAdditionalIdentifier>GPR</ns2:DocumentAdditionalIdentifier>
<ns2:DocumentNumber>45098</ns2:DocumentNumber>
<ns2:DocumentAdditionalNumber/>
<ns2:DocumentLineIdentifier>300100177488711</ns2:DocumentLineIdentifier>
<ns2:DocumentSubLineIdentifier>300100177495497</ns2:DocumentSubLineIdentifier>
<ns2:DocumentAdditionalLineIdentifier/>
<ns2:DocumentLineNumber>1</ns2:DocumentLineNumber>
<ns2:DocumentAdditionalLineNumber/>
<ns2:DocumentSubLineNumber>2</ns2:DocumentSubLineNumber>
<ns2:DocumentAdditionalSubLineNumber/>
</ns2:DocumentReference>
Here's the entire payload. It returns a quantity of 1 Each for item AS92888.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns1:createOrders xmlns:ns1="http://xmlns.oracle.com/apps/scm/fom/importOrders/orderImportService/types/">
<ns1:request xmlns:ns2="http://xmlns.oracle.com/apps/scm/fom/importOrders/orderImportService/">
<ns2:BatchName>Test001</ns2:BatchName>
<ns2:Order>
<ns2:SourceTransactionIdentifier>ppar_mar22_12</ns2:SourceTransactionIdentifier>
<ns2:SourceTransactionSystem>GPR</ns2:SourceTransactionSystem>
686
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
<ns2:SourceTransactionNumber>ppar_mar22_12</ns2:SourceTransactionNumber>
<ns2:BuyingPartyId>1006</ns2:BuyingPartyId>
<ns2:BuyingPartyContactId>1560</ns2:BuyingPartyContactId>
<ns2:TransactionalCurrencyCode>USD</ns2:TransactionalCurrencyCode>
<ns2:TransactionOn>2018-01-01T06:08:52.0340</ns2:TransactionOn>
<ns2:RequestingBusinessUnitIdentifier>204</ns2:RequestingBusinessUnitIdentifier>
<ns2:RequestingLegalUnitIdentifier>204</ns2:RequestingLegalUnitIdentifier>
<ns2:FreezePriceFlag>true</ns2:FreezePriceFlag>
<ns2:FreezeShippingChargeFlag>true</ns2:FreezeShippingChargeFlag>
<ns2:FreezeTaxFlag>true</ns2:FreezeTaxFlag>
<ns2:ShipToPartyIdentifier>1006</ns2:ShipToPartyIdentifier>
<ns2:ShipToPartySiteIdentifier>1036</ns2:ShipToPartySiteIdentifier>
<ns2:ShipToPartyContactIdentifier>1560</ns2:ShipToPartyContactIdentifier>
<ns2:BillToCustomerIdentifier>1006</ns2:BillToCustomerIdentifier>
<ns2:BillToCustomerName>1006</ns2:BillToCustomerName>
<ns2:BillToAccountSiteUseIdentifier>1025</ns2:BillToAccountSiteUseIdentifier>
<ns2:BillToAccountContactIdentifier>4820</ns2:BillToAccountContactIdentifier>
<ns2:Line>
<ns2:SourceTransactionLineIdentifier>101</ns2:SourceTransactionLineIdentifier>
<ns2:SourceTransactionScheduleIdentifier>101</ns2:SourceTransactionScheduleIdentifier>
<ns2:SourceTransactionLineNumber>1</ns2:SourceTransactionLineNumber>
<ns2:SourceTransactionScheduleNumber>1</ns2:SourceTransactionScheduleNumber>
<ns2:ProductNumber>AS92888</ns2:ProductNumber>
<ns2:OrderedQuantity>1</ns2:OrderedQuantity>
<!--ns2:OrderedUOMCode>BX1</ns2:OrderedUOMCode-->
<ns2:OrderedUOM>Each</ns2:OrderedUOM>
<ns2:RequestedFulfillmentOrganizationIdentifier>207</ns2:RequestedFulfillmentOrganizationIdentifier>
<ns2:RequestingBusinessUnitIdentifier>204</ns2:RequestingBusinessUnitIdentifier>
<ns2:RequestedShipDate>2018-01-01T06:08:52.0340</ns2:RequestedShipDate>
<ns2:PaymentTermsCode>4</ns2:PaymentTermsCode>
<ns2:TransactionCategoryCode>RETURN</ns2:TransactionCategoryCode>
<ns2:ShipToPartyIdentifier>1006</ns2:ShipToPartyIdentifier>
<ns2:ScheduleShipDate>2018-11-20T06:08:52.0340</ns2:ScheduleShipDate>
<ns2:ScheduleArrivalDate>2018-11-20T06:08:52.0340</ns2:ScheduleArrivalDate>
<ns2:ShipToPartySiteIdentifier>1036</ns2:ShipToPartySiteIdentifier>
<ns2:BillToCustomerIdentifier>1006</ns2:BillToCustomerIdentifier>
<ns2:BillToCustomerName>1006</ns2:BillToCustomerName>
<ns2:BillToAccountSiteUseIdentifier>1025</ns2:BillToAccountSiteUseIdentifier>
<ns2:BillToAccountContactIdentifier>4820</ns2:BillToAccountContactIdentifier>
<ns2:InventoryOrganizationIdentifier>204</ns2:InventoryOrganizationIdentifier>
<ns2:ShippingInstructions>BM Ship Instructions- Ship it in a day</ns2:ShippingInstructions>
<ns2:UnitListPrice currencyCode="USD">105</ns2:UnitListPrice>
<ns2:PartialShipAllowedFlag>FALSE</ns2:PartialShipAllowedFlag>
<ns2:FOBPoint>DEST</ns2:FOBPoint>
<ns2:OrderCharge>
<ns2:ChargeDefinitionCode>QP_SALE_PRICE</ns2:ChargeDefinitionCode>
<ns2:ChargeSubtypeCode>ORA_PRICE</ns2:ChargeSubtypeCode>
<ns2:PriceTypeCode>ONE_TIME</ns2:PriceTypeCode>
<ns2:PricedQuantity>1</ns2:PricedQuantity>
<ns2:PricedQuantityUOM>Each</ns2:PricedQuantityUOM>
<ns2:PricedQuantityUOMCode/>
<ns2:PrimaryFlag>true</ns2:PrimaryFlag>
<ns2:ApplyTo>PRICE</ns2:ApplyTo>
<ns2:RollupFlag>false</ns2:RollupFlag>
<ns2:SourceChargeIdentifier>SC1</ns2:SourceChargeIdentifier>
<ns2:ChargeCurrencyCode>USD</ns2:ChargeCurrencyCode>
<ns2:ChargeTypeCode>ORA_SALE</ns2:ChargeTypeCode>
<ns2:ChargeCurrencyCode/>
<ns2:SequenceNumber>1</ns2:SequenceNumber>
<ns2:PricePeriodicityCode/>
<ns2:GsaUnitPrice/>
<ns2:OrderChargeComponent>
<ns2:ChargeCurrencyCode>USD</ns2:ChargeCurrencyCode>
<ns2:HeaderCurrencyCode>USD</ns2:HeaderCurrencyCode>
<ns2:HeaderCurrencyExtendedAmount>-100</ns2:HeaderCurrencyExtendedAmount>
<ns2:PriceElementCode>QP_LIST_PRICE</ns2:PriceElementCode>
687
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
<ns2:SequenceNumber>1</ns2:SequenceNumber>
<ns2:PriceElementUsageCode>LIST_PRICE</ns2:PriceElementUsageCode>
<ns2:ChargeCurrencyUnitPrice>-10</ns2:ChargeCurrencyUnitPrice>
<ns2:HeaderCurrencyUnitPrice>-10</ns2:HeaderCurrencyUnitPrice>
<ns2:RollupFlag>false</ns2:RollupFlag>
<ns2:SourceParentChargeComponentId/>
<ns2:SourceChargeIdentifier>SC1</ns2:SourceChargeIdentifier>
<ns2:SourceChargeComponentIdentifier>SCC2</ns2:SourceChargeComponentIdentifier>
<ns2:ChargeCurrencyExtendedAmount>-100</ns2:ChargeCurrencyExtendedAmount>
</ns2:OrderChargeComponent>
<ns2:OrderChargeComponent>
<ns2:ChargeCurrencyCode>USD</ns2:ChargeCurrencyCode>
<ns2:HeaderCurrencyCode>USD</ns2:HeaderCurrencyCode>
<ns2:HeaderCurrencyExtendedAmount>-90</ns2:HeaderCurrencyExtendedAmount>
<ns2:ChargeCurrencyExtendedAmount>-90</ns2:ChargeCurrencyExtendedAmount>
<ns2:PriceElementCode>QP_NET_PRICE</ns2:PriceElementCode>
<ns2:SequenceNumber>2</ns2:SequenceNumber>
<ns2:PriceElementUsageCode>NET_PRICE</ns2:PriceElementUsageCode>
<ns2:ChargeCurrencyUnitPrice>-9</ns2:ChargeCurrencyUnitPrice>
<ns2:HeaderCurrencyUnitPrice>-9</ns2:HeaderCurrencyUnitPrice>
<ns2:RollupFlag>false</ns2:RollupFlag>
<ns2:SourceParentChargeComponentId/>
<ns2:SourceChargeIdentifier>SC1</ns2:SourceChargeIdentifier>
<ns2:SourceChargeComponentIdentifier>SCC1</ns2:SourceChargeComponentIdentifier>
</ns2:OrderChargeComponent>
</ns2:OrderCharge>
<ns2:DocumentReference>
<ns2:DocumentReferenceType>ORIGINAL_SALES_ORDER</ns2:DocumentReferenceType>
<ns2:DocumentIdentifier>CS_SO_1234445555565656</ns2:DocumentIdentifier>
<ns2:DocumentAdditionalIdentifier>LEG</ns2:DocumentAdditionalIdentifier>
<ns2:DocumentNumber>CS_SO_122_0034</ns2:DocumentNumber>
<ns2:DocumentAdditionalNumber/>
<ns2:DocumentLineIdentifier>101</ns2:DocumentLineIdentifier>
<ns2:DocumentAdditionalLineIdentifier/>
<ns2:DocumentLineNumber/>
<ns2:DocumentAdditionalLineNumber/>
<ns2:DocumentAdditionalSubLineIdentifier/>
<ns2:DocumentSubLineNumber/>
<ns2:DocumentAdditionalSubLineNumber/>
</ns2:DocumentReference>
<ns2:DocumentReference>
<ns2:DocumentReferenceType>ORIGINAL_ORCHESTRATION_ORDER</ns2:DocumentReferenceType>
<ns2:DocumentIdentifier>300100177488708</ns2:DocumentIdentifier>
<ns2:DocumentAdditionalIdentifier>GPR</ns2:DocumentAdditionalIdentifier>
<ns2:DocumentNumber>45098</ns2:DocumentNumber>
<ns2:DocumentAdditionalNumber/>
<ns2:DocumentLineIdentifier>300100177488711</ns2:DocumentLineIdentifier>
<ns2:DocumentSubLineIdentifier>300100177495497</ns2:DocumentSubLineIdentifier>
<ns2:DocumentAdditionalLineIdentifier/>
<ns2:DocumentLineNumber>1</ns2:DocumentLineNumber>
<ns2:DocumentAdditionalLineNumber/>
<ns2:DocumentSubLineNumber>2</ns2:DocumentSubLineNumber>
<ns2:DocumentAdditionalSubLineNumber/>
</ns2:DocumentReference>
</ns2:Line>
<ns2:OrderPreferences>
<!--Optional:-->
<ns2:CreateCustomerInformationFlag>false</ns2:CreateCustomerInformationFlag>
<!--Optional:-->
<ns2:SubmitFlag>true</ns2:SubmitFlag>
</ns2:OrderPreferences>
</ns2:Order>
</ns1:request>
688
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
</ns1:createOrders>
</soap:Body>
</soap:Envelope>
Related Topics
• Web Services You Can Use to Integrate Order Management
Here are some other web services you can also use.
Get Order Details • Communicate status details or order details to the source system that requests it.
• Get details about the entire sales order or a set of order lines.
• Get details about a sales order that starts in an integrated source system.
You can specify a source system so the query limits results to only this system. If you don't
specify a source system, then the service might return order numbers from more than one
source system.
Get Order Shipping Details • Communicate shipping details to the source system that requests it.
◦ Current schedules
Apply a Hold Route a request for a hold from your source system to a hold task. Process more than one hold
in a request, each hold for one sales order, or more than one order line in the sales order.
Release a Hold Route a request to release a hold from our source system to the hold task.
Check Availability Send a request to Order Management to determine the quantity that's available on a date in
the source system. Order Management sends a reply to the source system that includes these
details.
689
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Assume you use Integration Cloud Service to integrate your implementation. The original order line contains a quantity
of 100. Global Order Promising analyzes the supply chain and determines the best way to fulll your order is to split the
order into two fulllment lines, where line 1.1 contains a quantity of 75 and line 1.2 contains a quantity of 25. Promising
sends the request to Integration Cloud Service, who then calls the Order Import web service to make the change in
Order Management Cloud, and Order Management successfully splits the line.
The supply chain is constantly changing. The next day, Global Order Promising analyzes the supply chain again and
determines to use a quantity of 60 on line 1.1 and 40 on line 2.2. So you now must change the quantity on line 1.1 from
75 to 60, and the quantity on line 1.2 from 60 to 40.
But you encounter a null pointer error because the import can't locate the fulllment lines.
You use the Order Import service again to change the values but this time specify dierent source lines so they match
the fulllment lines.
• source line number = 1, fulllment line number = 1, quantity = 60
• source line number = 2, fulllment line number = 2, quantity = 40
The import updates the quantity on line 1 to 60, cancels line 1.2, and creates a new line 2 with a quantity of 40.
Some time later, you receive a request to update only fulllment line 1.1. You use the Order Import service to
successfully update line 1.1, but the import automatically cancels line 2.
You can only do these kinds of updates to split fulllment lines in the Order Management work area. You can't use the
Order Import service to do them.
Related Topics
• How Order Management Transforms Source Orders Into Sales Orders
• Web Services You Can Use to Integrate Order Management
• Example Web Service Payloads That Integrate Order Management
Transform
Transformation Rules
Write a business rule that populates order aributes before Order Management transforms a source order, while it
transforms a source order, and after it transforms a source order.
A source system is a system in your implementation that captures the details of a sales order. The source orders
that your source system captures probably use aributes, structures, and data that are dierent from what Order
Management uses. If you use more than one source system, then the details across source systems might be dierent.
690
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Order Management uses a specic structure in sales orders so it can fulll each of them consistently and eectively.
Transformation rules transform each source order into a structure that Order Management can use, such as the
arrangement of aributes on the order header, order lines, and fulllment lines, and the relationships between header,
order lines, and fulllment lines.
Pretransformation Rule
Populate an order aribute before Order Management transforms the source order. You can use the predened
aribute value that the rule already contains. Order Management defaults the master inventory organization to the
sales order so you can use it in the rule.
691
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
• If the item is AS54888 desktop computer, then display the Request Date aribute on the
fulllment line.
• If the item is a AS54888, then convert the Size aribute and display it on the fulllment
line.
Order Management runs pretransformation rules each time the Order Entry Specialist modies the sales order.
Transformation Rule
Order Management uses item relationships, item structures, transactional aributes, and business rules to transform a
sales representation of the item in the source order to a fulllment representation of the item on fulllment lines.
• You use the Manage Product Transformation Rules page in the Setup and Maintenance work area to write
the transformation rule. You can also use the Product Information Management work area to set up item
relationships, item structures, and transactional aributes.
• You can't use a transformation rule to add a product model to a sales order.
• An order line that a transformation rule creates gets most aributes from the line that the rule uses to create
the new line. You can't edit, revise, or price an order line that a transformation rule creates.
For example, assume you sell a laptop computer that ships to dierent geographical regions. Each region
requires a dierent electrical adapter, such as 110 volts or 240 volts. You create a rule that uses the
geographical region where you ship the item to determine the adapter to include in the sales order. You create
a transformation rule that transforms the source order to a sales order that includes order line a and order line
b, then adds the adapter to order line b. Assume the Ship To address on order line a is 550 Vision Way. The rule
sets Ship To address on order line b to 550 Vision Way. You can't change this value on order line b.
The Create Order page and the Edit Order page in the Order Management work area don't display an order line
that a transformation rule creates because transformation adds the line only after your user clicks Submit. You
can view the new line in a fulllment view, such as View Order. If you create an order revision, you can also view
the new line on the Create Revision or Edit Revision page.
Product-to-Product Transformation
Transform a single item to one or more items according to item structure, item relationship, and the transformation
rule. You can write a rule that transforms an item to another item, and that creates individual fulllment lines.
Assume your source order includes a laptop that comes with an accessory package that includes more than one item,
such as a docking station, mouse, and so on. You write a product-to-product transformation rule that transforms the
692
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
source order into a sales order that includes individual fulllment lines for the laptop and each item in the accessory
package.
693
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Product-to-Aribute Transformation
Transform the item in a source order according to the aributes of another item.
Assume you sell the Window item. You can write a rule that uses aributes in the source order. . .
• Width
• Height
• Pane
• Glass
. . .to get the number for an item that uses the same dimensions, but that uses double-pane, tempered glass.
The transformed order includes the item number for the combination of aributes.
694
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Aribute-to-Product Transformation
Use aributes to transform an aribute to an item number. Add the transformation to an item that already exists or
replace the item in the source order.
Assume you sell an MP3 player that includes the Color aribute and Size aribute, and that you must use a combination
of them to reference an item number. You can create a rule that transforms Color and Size of item Mini Plus to item
VIS481A.
Aribute-to-Aribute Transformation
Transform the value of an order line aribute in a source order to a dierent order line aribute in a sales order.
695
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Assume your company resides in Europe, you receive orders from an oce in the United States that measures the item
size in inches, but you must display the size in centimeters. Create a rule that transforms the width and height from
inches on the source order to centimeters on the sales order.
Context-to-Product Transformation
Use the context of the source order to determine the item in the sales order.
Assume you sell laptop computers that ship to dierent geographical regions. Each region requires a dierent electrical
adapter, such as 110 volts or 240 volts. Create a rule that uses the geographical region where you ship the item to
determine the adapter to include in the sales order, transforms the source order to a sales order that includes two order
lines, and then adds the adapter to one of these lines.
696
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Context-to-Aribute Transformation
Assume you ship some laptop computers to domestic locations in the USA and others to international locations in
other countries. The destination requires dierent packaging. So you create a Domestic Packaging exeld to store
the details. Assume an aribute in the source order includes the domestic address, so the context is domestic, and the
transformation rule sets the Domestic Packaging aribute to Yes.
697
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Posransformation Rule
Populate an order aribute after Order Management transforms the item.
698
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Write a rule that populates order line 2 so it sets the Warehouse aribute to a value that's
dierent from the warehouse that supplies the laptop computer on line 1.
Populate an order with a new Assume your source order uses the MM/DD/YYYY format for requested date. Your sta nds
aribute. it useful to also know the day of the week because delivery costs more on Saturday or Sunday.
You write a rule that populates the day of the week in the new sales order.
Order Management work area Order Management only runs transformation rules and posransformation rules on order
lines. It doesn't run them on return order lines.
Web service or the order import Order Management runs transformation and posransformation rules when it validates the
template draft sales order during import.
It runs these types of rules on both order lines and return order lines.
Related Topics
• How Order Management Transforms Source Orders Into Sales Orders
• Use Groups to Manage and Control Sales Orders
• Manage Pretransformation Rules
Set Up Transformation
Set up transformation so Order Management Cloud can correctly transform each source order.
1. Use the Product Information Management work area.
◦ Set up the product that your transformation rule will reference.
◦ If your transformation rule will reference.
• The product structure, then set up the product structure.
• Transactional item aributes, then set up transactional item aributes.
◦ Create item substitution rules when you set up your item. Order Management doesn't validate item
substitutions.
For example, assume a fulllment line includes a noncongured item, the Order Entry Specialist
examines availability for the item, then Order Management displays more than one option. If you don't
set up each item substitution rule correctly, then the Order Entry Specialist might select an option that
uses an incorrect substitution, such as a kit.
699
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Related Topics
• How Order Management Transforms Source Orders Into Sales Orders
Assume you use priority shipping for each sales order that includes a Green Server. You need a rule.
You will create a bucket set that contains the values you will select when you create your transformation rule, then
create the rule.
Its strongly recommended that you get details about decision tables, bucket sets, and how to use them. For details, see
the Overview of Using Business Rules With Order Management topic.
700
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Do it.
Aribute Value
Description List of IDs and aliases for server items to select in a product transformation rule.
701
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Aribute Value
5. Click Add Bucket, then, in the Bucket Values list, in the Bucket 1 row, set values.
Aribute Value
Value 300000047394016L
This number identies the item ID that the database contains. The leer L indicates a long
value.
Alias "AS85005"
You must include the double quotation marks.
6. Click Add Bucket, then, in the Bucket Values list, in the Bucket 2 row, set values.
Aribute Value
Value 300000047393961L
Alias "AS85004"
702
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Do it.
The Condition Browser dialog displays objects from the OrderTransformationRules dictionary. You can use
the FulllLineVO object in this dictionary to specify transformation according to the value of a fulllment line
aribute, such as InventoryItemId.
In this example, you use toString to get the value of InventoryItemId as a string so you can compare it in the
rule.
• If InventoryItemId is AS85005
Do it.
703
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
For example.
2. Click Local List of Values > Server IDs, which is the bucket set you created earlier.
3. In row OrderTransformationRules.FulllLineVO.InventoryItemId.toString(), double-click the cell in column R1,
single-click the cell in column R1, then add a check mark to AS85005.
At run time, order fulllment will recognize that ShipClassOfService is Expedited, then expedite the shipment.
Do it.
1. Immediately above the decision table, click Add > Add Action > Modify.
2. In the Action Editor dialog, in the Target list, click OrderTransformationRules.FulllLineVO.
3. In the Arguments list, locate the ShipClassOfService argument, set the value, then click OK. You might need to
scroll or page down through the Arguments list.
Property Value
4. In the decision table, in the ShipClassOfService row, double-click the cell in column R1, then enter "Expedited".
You must include the double quotation marks.
5. Click Save.
Related Topics
• Use Visual Information Builder
• Manage Pretransformation Rules
704
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
• If fulllment line a requests to add inventory item x, and if fulllment line b requests to delete inventory item x,
then delete fulllment lines a and b.
Statement Description
Third IF statement If the inventory item in fulllment line 1 is the same as the inventory item in fulllment line 2.
Fourth IF statement If the fulllment line ID of fulllment line 1 is dierent from the fulllment ID of fulllment line
2.
705
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
This topic uses Advanced Mode. Its strongly recommended you familiarize yourself with this mode and creating
business rules. For details, see the Overview of Using Business Rules With Order Management topic.
706
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Aribute Value
Do it.
707
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Do it.
Click Save.
Do it.
Click Save.
708
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Do it.
1. Click Add Paern.
2. In the window below And, enter FulfillLine.
3. In the eld to the right of Is A, click the down arrow, then click OrderTransformationRules.FulllLineVO.
4. Click Add Test > Simple Test, then click Left Value.
5. In the Condition Browser, expand FulllLine, then click InventoryItemId > OK.
6. Click Is > Isn't.
7. Click Right Value.
8. In the Condition Browser, expand FulfillLine2, click InventoryItemId > OK.
Click Save.
Do it.
1. In the Then area, click Add Action > Assert New.
2. Click Select a Target, then click OrderTransformationRules.DeleteOrderLine.
3. Click Edit Properties.
4. In the Properties dialog, enter values, then click OK
Name Value
fulllmentLineId fulllmentLineId
viewRowImpl fulllmentLineId
709
Oracle SCM Cloud Chapter 4
Implementing Order Management Import and Transform
Click Save.
Related Topics
• Demo for Creating Business Rules
710
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
5 Orchestrate Fulllment
Overview
711
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Orchestration Processes
Set up an orchestration process so it meets fulllment requirements for your sales order.
An orchestration process is a sequence of steps that automate fullling your sales order's fulllment lines across
fulllment systems. For example, here's the predened ShipOrderGenericProcess orchestration process.
Note.
712
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Step 100, Schedule Create Scheduling Create a schedule that the process can
use to fulll the fulllment line. It makes
sure fulllment meets the delivery dates
that the sales order species.
Step 200, Create Reservation Create Inventory Reservation Reserve inventory for the item on the
fulllment line so no other order can use
the inventory.
Step 300, Create Shipment Request Create Shipping Create a shipping plan that makes sure
the carrier delivers the item on time.
Step 400, Wait for Shipment Advice Wait for Shipment Wait to receive conrmation that the
carrier delivered the item.
Step 500, Create Invoice Create Billing Lines Create billing lines that we can send to
accounts receivable.
Step 600, Wait for Invoice Wait for Billing Wait to receive conrmation from
accounts receivable that billing is done.
• The orchestration process does each step sequentially, starting with step 100 and ending with step 600.
• You use the Setup and Maintenance work area to create and manage your orchestration process.
• To see how an orchestration process works in context, and to get an overview of how task services interact with
the fulllment system, see the How Order-to-Cash Works in Order Management topic.
713
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Set up Steps
You do almost all your set up on the steps.
Note.
• Dependencies. If your process includes a branch, then set dependencies that aect branching.
• Planning. Specify how to plan fulllment for the fulllment line.
◦ Set the default lead-time that the process needs to do the step.
◦ Create a business rule that uses conditions to set lead-time.
◦ Specify the status you expect from the fulllment system during planning.
◦ Specify the step that determines whether fulllment is done.
• Change Management. Specify how to manage change that occurs in the fulllment system.
◦ Specify the task service to use for update messages or cancel messages that the fulllment system sends
to you.
◦ Create a business rule that uses conditions to specify what to do when a change occurs.
714
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• Specify dependency, planning, and change management for each step. For example, click Planning to scroll to
the part of the row that contains planning aributes.
Set Up Statuses
Note.
715
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
For example, fulllment system x might use SCHEDULED, and system y might use
FULFILLMENT_SCHEDULED. Add values to handle both systems.
• You can also set statuses for fulllment lines.
Related Topics
• Fix Errors in All Sales Orders
• How Order-to-Cash Works in Order Management
716
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
You add the default lead time to each orchestration process step. If a step gets delayed during fulllment, then a
process runs in the background that replans the orchestration process and resets the expected completion dates.
Set a Status
Assume you have an important customer who requires that you notify their receiving clerk one day before the shipping
system ships the item. You set up an orchestration process class for the orchestration process. You determine the class
must include statuses.
• SHIPPED
• RESERVED
• READY TO SHIP
• SHIPPED
• INVOICED
You use the Orchestration Process Status tab to dene a status condition.
• If the status of the Create Shipment step is PRESHIP READY, then use the READY TO SHIP status to indicate the
orchestration process status.
Your users can use the Order Management work area to determine whether the orchestration process status is READY
TO SHIP.
Related Topics
• Order Management Statuses
717
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Each predened process comes already set up to work with Order Management and is ready to use with lile or no
modication.
ShipOrderGenericProcess • Schedule
• Reservation
• Shipment
• Invoice
Use it for various fulllment requirements, such as back-to-back shipments, drop ship, and so
on.
Set up business rules that determine How Order Management Processes Change
how the orchestration process
handles changes to sales orders.
718
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Set up the schedule that uses Guidelines for Seing Up Orchestration Process Steps
process planning to display the
completion date of each task and the
orchestration process.
• Set and help meet the completion date for each orchestration process step and task in an orchestration
process.
• Specify how to use the transformation rules that an orchestration process references to transform each source
order, including planning for each step after it receives a source order from an order capture system.
• Use order management parameter Enable Orchestration Process Planning and Calculate Jeopardy. For details,
see the Manage Order Management Parameters topic.
• Replan completion dates when a change occurs to the sales order at any point in the orchestration process.
• Replan immediately after each orchestration process step nishes.
• Replan according to an event, such as every time the orchestration process receives an update from your order
capture system. To control replanning, use the Plan Orchestration Processes scheduled process to schedule an
update at regular intervals according to the frequency that your deployment requires.
For example, if your orchestration process requires planning data that's current, then set up the scheduled
process to run the orchestration process and update the planning data one time each day. For an example that
uses a scheduled process, see the Fix Errors in More Than One Sales Order topic.
719
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Enable the Replan Instantly option when you set up your orchestration process. It replans the orchestration process
immediately after the process nishes the orchestration process step, then displays the revised order data according to
the results of the replanning.
• Use Replan Instantly only for high priority sales orders, or with sales orders that include a jeopardy threshold of
less than one day.
• For performance reasons, don't use Replan Instantly with an orchestration process step that's long or complex.
• If you don't enable Replan Instantly, then Order Management updates planning data only during the scheduled
replanning.
Migrate
Caution: If you use your implementation project to migrate an orchestration process instance from a
development environment to a production environment, then don't modify the process name in either
environment. Modifying the name might prevent Order Management Cloud from updating references to other
data in the orchestration process. For details about using an implementation project, see the Guidelines for
Seing Up Order-to-Cash topic.
To set up an orchestration process step, you open the Edit Orchestration Process Denition page, then use the Step
Denition list in the Process Details area.
This topic describes the aributes you can set on each step.
Aribute Description
Step Type
Set the behavior for the orchestration process step.
Task Type
Each task type includes services you can use to communicate with a fulllment system, such as
a billing system. Here are the predened task types you can use.
• Schedule
• Reservation
720
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Description
• Shipment
• Invoice
• Return
Task Specify the task to run. A task can include more than one step. For example, the Ship task calls
the Create Shipment service. It also calls the Wait for Shipment service to wait for dierent
status values to occur in the fulllment system updates.
Caution: If you use your implementation project to migrate an orchestration
process instance from a development environment to a production environment,
then don't modify the task name in either environment. Modifying the name
might prevent Order Management from updating references to other data in the
orchestration process. For details about your implementation project, see the
Guidelines for Seing Up Order-to-Cash topic.
Manual Specify whether to wait for user input. If you specify a manual task, then the orchestration
process waits until the user manually nishes the task in the Order Management work area.
For example, set the Schedule task as a manual task so your users can manually schedule all
fulllment lines at the end of the day.
Exit Criteria
Specify the task status that determines when to exit a wait step. For example, if the status of a
shipment task changes to Shipped, then exit the wait step.
If your task includes more than one wait step, then make sure these steps don't use the same
exit criteria.
Use the Manage Task Status Conditions page to make sure only the last step or wait step uses
the exit criterion.
If you set up more than one wait step for a task, then make sure you set the exit criteria for
each wait step that occurs before the nal wait step to Mark as Complete. For example.
• Assume you set up wait step x, wait step y, and wait step z on the same task, and that
wait step z occurs last.
• Make sure you set the exit criteria for step x and step y to Mark as Complete.
• If the fulllment system doesn't reply to step x or step y, but instead replies only to step
z, then the ow can continue without waiting for step x and step y to nish.
• If you don't set Mark as Complete for x and y, then the orchestration process might
remain at x or y and never proceed to the next task.
• Make sure you specify the value Canceled as an exit criteria status to exit the wait task in
your orchestration process.
• The rule populates the result with the fulllment line Ids that identify the fulllment lines
to select.
• The rule runs for each fulllment line that the orchestration process is processing.
721
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Description
• If the rule doesn't select any fulllment line, then the orchestration process skips the
step.
An orchestration process might not require all of the order lines or fulllment lines when it calls
the fulllment task service. For example, assume the item on an order line is a warranty. You
typically don't ship a warranty, so you can create a business rule that species not to ship items
that don't ship.
For details, see the Select Fulllment Lines for Orchestration Process Steps topic.
Pause Rule Specify when to pause processing before calling the next step, or when to resume processing.
For details, see the Pause Orchestration Processes topic.
Set Up Branching
An orchestration process branch is a path in an orchestration process that the process runs when the ow meets a
condition.
You can set up an orchestration process so its linear, where steps occur in a sequence with no branching, or so it
contains a branch where ow travels along dierent paths depending on a condition.
The technique you use depends in part on the complexity you need. For example, you can create several simple,
linear orchestration processes, then use an assignment rule to choose one. Or, you can combine these orchestration
processes into a single orchestration process that uses branching conditions. A more complex set up might require
assignment rules and branching conditions.
For an example that uses branching, see the Add Branches to Orchestration Processes topic.
Aribute Description
Branching Condition
Specify the criteria that the condition must meet to run the steps in a branch.
• Add the condition on the rst step of the branch, which is the rst step immediately
after the conditional step.
• If you don't add a check mark to the Otherwise option on the conditional step, then you
must include a branching condition.
Evaluation Sequence Specify the sequence that the orchestration process uses when it evaluates each branch
condition.
Otherwise If you add a check mark to the Otherwise option on the conditional step, and if the branching
condition does meet the criteria you specify for the branch, then the orchestration process
runs the branch that doesn't meet the branching condition.
722
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Description
Set Up Planning
Aribute Description
Planning Default Branch Specify the default path that the orchestration process uses for planning. The process uses this
seing only if it includes one or more conditional branches.
• The orchestration process uses this seing when it does planning to make sure it meets
the request date.
• The last step that occurs in chronological order in the process isn't necessarily the
Fulllment Completion Step. For example, to indicate the completion date, the
orchestration process might use the requested ship date as the last step instead of
using the shipped date.
• The process uses lead-time to plan and to predict the completion date.
The lead-time is the amount of time the process needs to nish the step, including wait
steps and pause steps.
• If you don't specify a lead-time expression for the step, then the process uses the value
you set for Default Lead Time.
• If actual completion dates are available, then the process uses actual dates instead of
estimated dates.
• The Gan chart in the Order Management work area displays the planned orchestration
process. Order Management uses the number of days that are past the lead time when
it calculates jeopardy.
Lead Time UOM The unit of measure for the lead-time, such as days, hours, or minutes.
Lead-Time Expression
A lead-time expression is a business rule that determines the amount of time you expect the
step needs to nish.
• Use it to calculate planning for the orchestration process. For example, an item that uses
complex packing might require a longer lead-time for shipping.
• The rule populates the result with a numeric value that represents the lead time.
• You must use BigDecimal with your lead-time expression.
Here's an example expression that determines the dierence between the current date and the
scheduled ship date.
BigDecimal.valueOf((DooSeededOrchestrationRules.DOOHeader/
childFLines.scheduleShipDate.time-CurrentDate.date.timeInMillis)/
(1000*60*60*24))
723
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Description
where
For details, see the Set Up Lead-Times for Orchestration Process Steps topic.
Aribute Description
Hold on wait Sends a message to the fulllment system for each active step when the orchestration process
receives a change order.
Use Transactional Item Aributes If you enable transactional item aributes, then the step examines the transactional item
aributes to help it determine the dierences that exists between the change order and the
previous version of the order.
Use Flexeld Aributes If you enable exeld aributes, then the step examines them to help it determine the
dierences that exists between the change order and the previous version of the order.
Compensation Paern
Specify the set of rules that determine how to handle each step that ran before Order
Management received the change order.
For example, assume a change order requests a change from carpet to tiles.
• The orchestration process must cancel a number of the previous steps that it ran.
• If it already scheduled carpet for shipping, then the process must cancel the steps that
scheduled the shipping.
• Order Management creates a dierent set of fulllment lines for tiles when it processes
the change order, so it must use a dierent orchestration process because a tile order
requires more time to fulll and it uses a dierent contractor.
• Order Management must cancel most of the previous steps, but it doesn't cancel the
Measure step because the room dimensions are still accurate.
724
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Description
If you don't specify a compensation paern, then Order Management might process a step
as an update, depending on the context of the operation. It might rerun some steps. If Order
Management can't compensate a step for some reason, then it bypasses the step, then
compensates the next step that it encounters.
Keep this sequence in mind when you set up your integration and orchestration process.
Improve Performance
The way you set up your orchestration processes and orchestration process steps can directly aect performance in
your environment. Here are some tips.
• Remove each step that you don't need. Each step eats up resources and increases processing time. For
example, if you use the predened ShipOrderGenericProcess and don't need to do invoicing, then delete the
Create Invoice and Wait for Invoice steps. Don't use line-selection criteria to skip steps you don't need because
that approach increases processing time and might lead to a step that remains in a Not Started status for a long
time, or a process that seems to take forever to nish.
• Use a separate orchestration process to accomplish each goal. Don't use one large, monolithic process that
has a lot of branches and skipped steps to do all your processing. Instead, use several processes with fewer
branches.
725
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Related Topics
• Guidelines for Seing Up Order-to-Cash
Create
726
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
727
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
This topic includes example values. You might use dierent values, depending on your business requirements.
Aribute Value
Set
Common Set
728
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Note.
◦ A set is a collection of business units. Use it to organize business units and control the
business units that can access an orchestration process.
◦ Select the set that allows the business unit to access the orchestration process.
◦ Use the predened Common Set to provide access to many business units.
◦ You must add your business unit to the set you specify.
Aribute Description
Step Name Enter text that describes the purpose of the step. For this example, enter Schedule Product.
Step Type Select a value that indicates the type of processing that this step does.
For example, if this step must do conditional branching, then choose Conditional. This
example calls a service, so select Service.
Task Type Select the group of services that Order Management uses to do a fulllment task. For this
example, select Schedule.
Task Select the task that this step must perform. For this example, select Schedule.
Service Identify the service that this step must call. For this example, select Create Scheduling.
Aribute Value
Task Reserve
729
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Tip: To maintain the correct sequence when you add each step, click the step that you most
recently added, then click Add Row. To make sure you don't lose any work, click Save after you add
each step.
Aribute Value
Task Ship
Aribute Value
Task Ship
Note that you also specify the exit criteria in this step.
6. Repeat steps 1 and 2. Use these values.
730
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Task Invoice
Aribute Value
Task Invoice
731
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
For a demonstration that creates a business rule, see Creating Business Rules: Demo.
732
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Aribute Value
733
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Tip: In some aributes, you can copy the value from one aribute to
another instead of using the drop-down list. For example, you can copy
DooSeededOrchestrationRules.DOOFLine.inventoryOrganizationId from Left Value of the rst rule,
then paste it into Left Value of the second rule.
4. Click the down arrow for the operator, then click isn't.
5. In the Right Value aribute, enter 1234440.
Aribute Value
Related Topics
• Demo for Creating Business Rules
• Overview of Using Business Rules With Order Management
In this example, you create a line selection rule that makes sure Order Management doesn't aempt to ship a
nonshippable item.
734
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Assume you sell digital video recorders. The sales order includes more than one fulllment line for each items.
• Digital video recorder
• Remote control
• Instruction manual
• Extended warranty
Your customers can purchase the extended warranty as a contract online, but its not a shippable item, so Order
Management must not aempt to send it to the fulllment system during the Shipment task. So, you create a rule.
• If Order Management can't ship the item, then don't aempt to ship it.
where
• DooSeededOrchestrationRules is a dictionary that contains a set of predened functions, variables, objects, and
other data you can use to dene behavior for an orchestration process.
• DOOFLine contains fulllment line aributes, such as orderedQty, customerPONumber, creationDate, and so
on. You can reference these aributes and use their values in your rule.
• shippableFlag is a fulllment line aribute.
• Y is one possible value of shippableFlag.
735
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
This example includes a business rule that requires you to use a dictionary, fact, and other objects. Its strongly
recommended that you familiarize yourself with these objects before you proceed. For details, see the Business Rules
chapter in the Implementing Order Management book.
where
• Assert New adds the result into the Result fact of the DooSeededOrchestrationRules dictionary.
• resultObjKey is a property of Result. It species the fulllment line to examine.
• DooSeededOrchestrationRules.DOOFLine.fulfillLineId species to use the value of the fulfillLineId aribute in
the DOOFLine fact of DooSeededOrchestrationRules.
736
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
737
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Try it.
You can't modify the predened process, so you create a duplicate and modify it instead. Notice the process
name.
(CopyOf)CustomDOO_ShipOrderGenericProcess
100 Schedule
4. On the step 100 row, in the Line Selection Criteria column, click Click for Rule.
5. In the Line Selection Criteria dialog, click Expand, then notice the predened rule. Locate the last condition,
immediately above the THEN area.
6. On the row you just located, click the down arrow at the far right of the row, then click Simple Test.
7. In the new row, enter "ORDER", change is to equals ignore case, then enter
DooSeededOrchestrationRules.DOOHeader/childFLines.categoryCode.
Deploy
Deploy Orchestration Processes
Release and deploy an orchestration process that you create so its available throughout Order Management.
If you use one of these predened orchestration processes, then you must deploy it, but its not necessary to release it.
• ShipOrderGenericProcess
• ReturnOrderGenericProcess
738
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Finds errors. Order Management stops the release and displays an error icon next to the orchestration
process name. It keeps these errors until the next time it runs the validation.
You must resolve errors before you can continue the release.
739
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
740
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
<searchReplace>
<search>http://localhost_soa:port</search>
<replace>http://actualDOOSOAserver:port</replace>
</searchReplace>
</attribute>
</binding>
</reference>
</composite>
</SOAConfigPlan>
Note.
• Replace each host name with the Oracle Application Development Framework (ADF) server.
• Replace each port with the port that your organization uses for Order Management and the server and port that
Supply Chain Management uses for SOA. Use the external-facing URLs of the servers.
The JAR le resides in a Deploy folder. The Deploy folder resides in a folder that uses the name of the orchestration
process you downloaded.
For details about how to deploy an SOA composite application, see Oracle Fusion Middleware Administrator's Guide for
Oracle SOA Suite and Oracle Business Process Management Suite.
Example of a Subprocess
Assume you use dierent steps to process dierent sales orders, depending on the item. However, all orders use these
billing steps.
• Create invoice.
• Wait for invoice.
• Send request to activity system that noties customer of payment receipt.
• Send request to activity system that creates coupons.
So, you create an orchestration subprocess that includes these steps, and then add it to each orchestration process you
use.
741
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
For example, assume you sell commercial computer systems, and you must implement a business rule.
• If the sales order is valued at $50,000.00 or more, then make sure a representative calls the customer before
sending the invoice for the order.
Here's the orchestration process ow you create for this example.
742
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
• Each step in the ow includes the step number, task name, task type, and service name.
• The Conditional Node indicates that an orchestration process is about to branch. The rst step of the branch
contains the condition.
• If the ow.
◦ Meets the condition. The orchestration process runs the steps on the branch that notify the
representative.
◦ Doesn't meet the condition. The orchestration process runs the steps on the branch that don't notify
the representative.
• Order Management adds an empty default branch when it runs the orchestration process. If the orchestration
process includes only one branch, then it isn't necessary to set an Otherwise condition.
This example uses a rule that processes only one fulllment line. To write a rule for an orchestration process that
processes more than one fulllment line, you use advanced rules. For details, see the Overview of Using Business Rules
With Order Management topic.
Aribute Value
743
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
For details about how to set up an orchestration process, see the Seing Up Orchestration Processes topic.
1. Add a step.
Aribute Value
744
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Task Schedule
Tip: To maintain the correct sequence when you add each step, click the step you most recently
added, then click Add Row.
Aribute Value
Task Reserve
Aribute Value
Task Ship
Aribute Value
745
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Task Ship
Aribute Value
Aribute Value
Task Activity
Evaluation Sequence 1
Aribute Value
746
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Task Activity
Aribute Value
Task Invoice
Aribute Value
Task Invoice
10. In the Step Denition list, click the Conditional Node step, then add another step. This step creates the
Otherwise branch.
747
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Task
Otherwise Create Invoice
Each task name you associate with a task type must be unique. You associated the Invoice
task with the Invoice task type earlier in this procedure, so you must create a new task name.
To do this, In the Task aribute, click the Search down arrow, then click Create. In the Create
Task Name dialog, enter values.
◦ Code: 1
◦ Name: Otherwise_Create_Invoice
Evaluation Sequence 2
11. In the Step Denition list, click the Otherwise Step - Create Invoice step, then add another step. This step
creates the Wait for Invoice Step on the Otherwise branch.
Aribute Value
748
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
12. In the Step Denition list, click the Wait for Invoice step, then add another step. This step merges the branch
back to the main ow.
Aribute Value
Do it.
1. In the Step Denition list, in the Phone Customer step, in the Branching Condition column, click Click for Rule.
749
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
2. In the Branching Condition Rules dialog, click Add Rule, then click Expand.
3. Delete the value Rule 1 , and then enter Condition for invoices valued at more than 50000 dollars.
4. Click Left Value.
5. In the Condition Browser dialog, expand DooSeededOrchestrationRules > DOOFLine, click
extendedAmount, then click OK.
where
• ( resultObj:DooSeededOrchestrationRules.Boolean.TRUE )
where
• resultObj is a variable in the DooSeededOrchestrationRules dictionary. You use it to store the result of the
business rule.
• Boolean sets the value of resultObj to TRUE.
Do it.
750
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
For example.
7. Click OK.
8. In the Branching Condition Rules dialog, click Save.
9. On the Edit Orchestration Process Denition page, click Save.
◦In the header of the Edit Orchestration Process Denition page, click Actions, then click Generate
Process Diagram.
◦ Make sure the diagram includes the same steps and logic that the diagram at the beginning of this topic
displays.
2. Test the nonbranching ow.
◦ In the Order Management work area, create a sales order that's valued at less than $50,000.00.
◦ Verify that Order Management ships the item without requesting that the user call the customer.
3. Test the branching ow.
Related Topics
• Demo for Creating Business Rules
751
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Assume your customer purchases a laptop computer that includes a service contract, and your business ow requires
that the fulllment system ship the laptop in a truck at the same time that it sends the service contract through email.
You can use parallel processing to ship the laptop and send the email at the same time.
This orchestration process includes branches that run in parallel with one another.
• Step 300 begins the parallel branching.
• Steps 400 and 500 run in one branch at the same time that steps 600 and 700 run in a parallel branch.
• The Create Invoice and the Wait for Billing steps occur after step 800. The illustration doesn't include these nal
steps.
The orchestration process plans the ow after it nishes each task. However, if a task requires several days to nish,
then planning data might not be current because the orchestration process can't replan the branch while it waits for
752
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
a long-running task to nish. For details about how to use the Plan Orchestration Processes scheduled process to
schedule an update that occurs at regular intervals, see the Orchestration Processes topic.
Note.
• Use parallel processing when more than one long-running task must run at the same time. For example, to
send simultaneous requests to two dierent fulllment systems that typically require elapsed time to reply.
• Don't use parallel processing when the reply from a task request occurs almost immediately.
• You can set up parallel processing so more than one task can run at the same time.
• You can lter the fulllment lines of a group so the tasks for some lines in the group run at the same time as
tasks for the other lines.
• You can create a parallel process that doesn't lter lines in a branch so that more than one task is active for
each line.
• Order Management doesn't allow you or a fulllment system user to split a task that resides in a parallel branch.
Assign
Overview of Assigning Orchestration Processes
Create an assignment rule that assigns an orchestration process to one or more fulllment lines of a sales order.
• Assign the orchestration process according to each set of unique conditions.
• Order Management Cloud doesn't version assignment rules so the changes you release take eect
immediately. You can save rules without releasing them.
• Use Otherwise logic to set up a default orchestration process for each orchestration group.
• Create an assignment rule that references data from a dierent product model. For details, see the Use
Business Rules to Get Data from Dierent Product Models topic.
• You don't need to specify versions or eective dates in the assignment rules because the orchestration process
controls them.
Note.
• You must set up your orchestration processes before you create your assignment rule.
• Order Management can't reassign an existing order line to a dierent orchestration process when you revise a
sales order. For details, see the Fix Problems That Occur When Assigning Orchestration Processes topic.
• If a set of fulllment lines are part of a shipment set, then you can't assign dierent orchestration processes to
them. For example, if fulllment line w and fulllment line x are part of a shipment set, then you can't assign
line w to process y and line x to process z. You must use the same orchestration process for lines w and x. Order
Management uses this conguration to make sure it can schedule, reserve, and ship the lines together.
753
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• You create an orchestration group as a shipment set, congured item, or set of order lines.
• An assignment rule processes each orchestration group at run time, so you must add a test that links each
fulllment line with the group. The predened assignment rules already include this test.
Standard Groups all fulllment lines that fulll items that aren't congured or are nished items.
Congured Item or Kit Groups all fulllment lines that fulll a congured item or kit.
Shipment Set Groups all fulllment lines that fulll a shipment set.
Examples
Item Each sales order for the AS54888 Desktop Computer must use the same processing steps.
You write an assignment rule that assigns an orchestration process named AS54888 Desktop
Computer Process to each order line that includes the AS54888 in the Item aribute of the
order line.
Customer Customer Computer Service and Rentals requires an inspection step for each sales order.
You write an assignment rule that assigns an orchestration process named Computer Service
and Rentals Process to each order line that includes Computer Service and Rentals in the
Customer aribute of the order header.
Destination Each sales order that the fulllment system must ship to a country that resides outside of your
current location requires dierent handling, such as completing customs forms.
You write an assignment rule that assigns an orchestration process named International
Orders Process to each order line that includes a foreign country in the Ship-To Address
aribute of the order header.
Related Topics
• Return Sales Orders
754
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Process_ Small_Orders For quantity under 100. Expedite shipping and don't measure impact to inventory.
Process_ Medium_Orders For quantity 100 to 999. Use regular shipping and measure impact to inventory only at the
distributor, not the warehouse.
Process_ Large_Orders For quantity over 1,000. Use bulk freight. Measure impact to inventory at the warehouse and
the distributor, and call the customer to conrm before shipping.
755
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
This topic includes example values. You might use dierent values, depending on your business requirements.
756
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
757
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
◦ Enter Process_Small_Orders.
Note:
If you didn't deploy your orchestration process, then Search won't nd it.
◦ Click the row in the search results.
◦ Click OK.
◦ In the Create Action dialog, click OK.
Related Topics
• Use Visual Information Builder
• Manage Process Assignment Rules
• Demo for Creating Business Rules
Pause
Overview of Pausing Orchestration Processes
Use a pause task to temporarily stop an orchestration process from running so it can wait to meet a condition.
758
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
When it meets the condition, the orchestration process releases the pause task, then proceeds to the next orchestration
process step. You can specify a pause task to wait between tasks, or specify when to release the pause and begin the
next orchestration process step.
Note.
1. You add a step that references a pause task in an orchestration process. You can add a pause task step at
any point in the orchestration process. This example includes a simple three step orchestration process. For
example, assume the orchestration process successfully scheduled fulllment, and now must wait to conrm
payment before shipping the item to your customer.
2. You set up a rule that pauses the orchestration process to wait for an event to occur, time to elapse, or for a
dependency to resolve.
759
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
3. You set up a release rule that releases the pause task so the orchestration process can continue to the next
step. Here's how you release a pause task.
◦ Release it automatically when the timer expires, when the ow meets the release condition, or when the
ow doesn't meet any of the conditions.
◦ Allow a user to release it manually in the Order Management work area.
◦ Use a scheduled process that releases it automatically according to a regularly scheduled interval.
◦ Use a web service that informs the orchestration process when to release.
Examples
Pause Until An Event Occurs
Assume you provide a layaway program that allows your customer to reserve an item, then pay for it in installments.
Use a pause task to pause the orchestration process. When the customer pays in full, the orchestration process calls the
Release Paused Tasks service, releases the pause task, then ships the item to the customer.
In another example, assume you must release each sales order to shipping only if inventory is available at the fulllment
location. Use a pause task that pauses the orchestration process until the inventory is available. When the inventory is
available, the web service calls Release Paused Tasks, releases the pause task, then ships the item to the customer.
If you set up a rule that waits for an event to occur, then you typically use a web service to resume the pause task. In this
context, event means something that occurs outside of Order Management Cloud. Its not synonymous with a business
event. For details, see the Pause Orchestration Processes Until an Event Occurs topic.
Assume you prefer not to overload the warehouse with shipment requests that aren't due for delivery for two weeks.
You can pause the orchestration process to wait to send the shipment request to the warehouse until two days before
the scheduled shipment date occurs.
In another example, assume you sell a video game up to seven days before the release date of the game.
• You estimate it requires seven days to schedule and process the sales order before it ships. Use this lead time
so you can ship the game as soon as its available.
• You set up a pause task that pauses the orchestration process before the schedule step occurs, and continues
to pause until the publisher releases the game.
• You set up a rule that releases the pause task according to an extensible exeld that includes a value of the
release date minus seven days. The orchestration process releases the pause task, schedules the sales order,
then resumes processing.
For details, see the Pause Orchestration Processes Until Time Elapses topic.
• A customer requests to receive a shipment that includes coee, paper cups, sugar, and creamer at the same
time. One fulllment line fullls each item. For example, fulllment line x fullls the coee, fulllment line y
fullls the cups, and so on. You can use a pause task that pauses each order line until the orchestration process
nishes scheduling each of these lines. The orchestration process periodically evaluates the sales order. It
nishes scheduling all lines, then ships them to the customer at the same time.
760
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• A customer must receive invoices for all fulllment lines of a sales order at the same time, regardless of when
the orchestration process ships each of these lines. You can use a pause task that pauses the orchestration
process until it ships all items. It then sends the invoices for all lines to the customer at the same time.
• Your company policy requires people in your organization to review and approve each sales order where the
scheduled date occurs after the requested date. You can use a pause task to pause the orchestration process
until these folks nish review and approval.
For details, see the Pause Orchestration Processes Until a Dependency Resolves topic.
Aribute Value
reevaluateFlag • Y. Evaluate the condition every time the orchestration process nishes a step. If the
condition doesn't evaluate to true, then release the pause task.
For example, assume the orchestration process is processing more than one fulllment
line in a sales order, and that you must evaluate the condition after it processes each
line. You can use reevaluateFlag to evaluate each line.
For another example, assume you must print pictures for customers and then frame
them. You set up a ow that includes a parallel task that prints the picture. You promise
same day shipping, so you periodically examine whether the picture printed so you can
frame it as soon as possible.
• N. Don't evaluate the condition every time the orchestration process nishes a task.
If the IF statement is True, then the orchestration process remains paused until you
explicitly release the pause task.
sacType
Specify the action to take when your If statement evaluates to True.
Related Topics
• Manage Order Management Parameters
• Manage Order Aributes That Identify Change
761
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
• In the Setup and Maintenance work area, use the Edit Orchestration Process Denition page.
• Add a pause step. Set values.
Aribute Value
762
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
• Click the link in the Start After Condition aribute to set up your release rule. Starting in Release 13C, the label
for Start After Condition changed to Pause Rule.
You typically use line-selection criteria to lter fulllment lines that the orchestration process step processes.
However, line-selection criteria isn't available for a pause task because the pause task examines every
fulllment line in the sales order, by default.
763
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
Aribute Description
sacType Required
764
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Description
sacEventName Optional, depending on the type of pause. For example, if the rule pauses according to a
dependency to resolve, then you must include sacEventName.
ReevaluateFlag
For details, see the Overview of Pausing Orchestration Processes topic.
waitDateTime
If you set up your pause task so the evaluation interval is too short, then the orchestration process might evaluate the
pause condition an excessive number of times and degrade performance. For example, assume you.
• Create a pause step that pauses the orchestration process until Scheduled Ship Date occurs.
• Set reevaluateFlag to Y.
• Evaluate the condition one time every ve minutes.
Assume ve days typically elapse between the time the pause step runs and when Scheduled Ship Date occurs. On
average, the orchestration process will evaluate the condition 1,440 times.
• 12 times for each hour, multiplied by 24 hours, multiplied by ve days, equals 1,440
This processing consumes a lot of resources, can aect performance, and might result in memory problems that can
cause your runtime environment to fail. So, set up your pause step so it evaluates the condition less frequently. In this
example, the evaluation could probably occur one time every two hours without aecting the orchestration process in a
negative way.
Use the Number of Times to Retry Pause order management parameter to control the maximum number of times
the orchestration process evaluates the condition before it temporarily pauses the pause task and displays an error
message informing your users to click Recover to manually recover the pause. For details, see the Manage Order
Management Parameters topic.
Use the Recover Errors scheduled process to evaluate the conditions again. For example.
765
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Pause task rules run each time the Order Entry Specialist revises a sales order. You can set aributes that control this
behavior.
Note.
• If your pause task doesn't reference an extensible exeld, then disable the Use Flexeld Aributes option to
instruct the orchestration process to skip the pause step when the value in an extensible exeld changes.
• If you don't need to run your pause task when revising a sales order, then write a compensation paern.
For example, assume you write a pause step that waits for payment. The Order Entry Specialist manually
indicates that the customer sent payment, and the pause ends. Some time later, the Order Entry Specialist
revises the sales order in a way that doesn't aect the payment amount, such as modifying the ship-to address.
It isn't necessary to pause to wait for payment after the revision, so you can write a compensation paern that
skips pause on the payment step.
• The orchestration process uses the aributes you specify on the Order Aributes That Identify Change page
to determine when to compensate when revising a sales order. Use it to make sure your pause task runs only
if the revision that the Order Entry Specialist makes aects an aribute that your pause task references. For
details, see the Manage Order Aributes That Identify Change topic.
766
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
• Use the Assign action to set the waitDateTime variable.
• Don't specify a duration for waitDateTime. For example, if you specify a duration of 5 hours, then the rule might
convert it to a date and time that already occurred, and the rule will never pause the task because the date that
it uses to determine whether to pause already occurred. Instead, specify a date and time.
For example, Header.getAdjustedDate(null, 1) species to get the current system date, and then wait for
current system date plus one day before releasing the pause.
Use dateTime for the rst parameter in the function. For example, to wait until two days before the schedule
ship date, use Header.getAdjustedDate(FLine.ScheduleShipDate,-2).
767
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• reevaluateFlag evaluates the conditions in the IF part of the rule to determine whether the condition changed.
In general, set reevaluateFlag to N unless your rule requires periodic evaluation. If you set reevaluateFlag to
Y, then carefully consider the interval you use for waitDateTime. For example, if you set getAdjustedDate
to refresh every minute, then reevaluateFlag will cause the rule to run the IF statement every minute until it
evaluates the condition in the IF statement to True.
Use SAC_SYSTEM_EVENT_IPC_PAUSE and set reevaluateFlag to Y to cause the rule to examine every orchestration
process instance that's in a wait state for the sales order each time an orchestration process step nishes. For
example, assume a sales order includes 100 fulllment lines, and 75 of them are in a wait state according to
SAC_SYSTEM_EVENT_IPC_PAUSE. The rule will reevaluate each of the 75 lines every time it runs.
If a sales order includes a large number of fulllment lines, and if you must pause according to a dependency, then
don't use SAC_SYSTEM_EVENT_IPC_PAUSE. Instead, set up a rule that uses SAC_TYPE_TIMER, and that examines all
fulllment lines but only after time elapses. Specify an appropriate interval. For example, if you determine that most
fulllment lines on a large sales order ship within six hours, and you only need to invoice once every 12 hours, then use
an interval of eight hours.
768
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Assume you must limit the time you allow your business partners to provide quotes to 90 days. Assume you already
dened an extensible exeld with a context named Quote and segment named quoteexpiration to allow the Order
Entry Specialist to use the Order Management work area to specify the quote expiration date.
Create a pause task that expires on the date and time that the expire quote segment species. This segment resides in
Quote context of an extensible exeld. You create these rules.
769
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Rule Description
Pause Until Quote Expires Pause task that expires on the date and time that the expire quote segment species. This
segment resides in the Quote context of an extensible exeld. If Pause Until Quote Expires
expires, then it will override Pause for 90 Days.
Note.
770
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Code Description
Priority equals High Make sure you run this rule before you run any other rule.
Header is a Declare variable Header, then load values into Header from object DOOHeader of method
DooSeededOrchestrationRules. DooSeededOrchestrationRules. DOOHeader contains order header aributes and their values.
DOOHeader and
This If statement doesn't include conditional logic because we must run the rule in all
conditions.
DooSeededOrchestrationRules. Create a new instance variable SAC, set it to type SacResult in method
SacResult SAC new DooSeededOrchestrationRules.
DooSeededOrchestrationRules.
SacResult()
header. sacResult = SAC Set the value of object sacResult on the order header to the value that SAC contains.
header. sacResult. reevaluateFlag "N" The IF statement doesn't contain a condition that we must reevaluate.
GetAdjustedDate adds the number of days to the rst parameter, then returns the result as
date and time.
771
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
Code Description
Priority equals Medium Make sure you run this rule after rule Pause for 90 Days.
If equals True If all conditions in statement If are true, then override rule Pause for 90 Days.
772
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Code Description
Header is a Declare variable Header, and then load values into Header from object DOOHeader of method
DooSeededOrchestrationRules. DooSeededOrchestrationRules.
DOOHeader and
DOOHeader contains order header aributes and their values.
Fline is a Declare variable Fline (fulllment line), and then load values into Fline from object DOOFline of
DooSeededOrchestrationRules. method DooSeededOrchestrationRules. DOOFline (Distributed Order Orchestration Fulllment
DOOFline and Line) contains fulllment line aributes and their values.
header. childFLines RL. contains ine Declare variable ine into the rules language (RL) dictionary, then set the value of ine to the
value that childFLines contains.
This condition makes sure variable ine contains a child fulllment line of the parent sales
order that the orchestration process instance is processing. It also makes sure you correctly
declare the variable into the dictionary.
ineEFF is a Declare variable ineEFF, then store the value of object FlexContext into this variable.
DOOSeededOrchestrationRules.
FlexContext Note that method DooSeededOrchestrationRules contains FlexContext.
ineEFF isn't null Proceed to the next AND only if ineEFF contains a value.
ine. exContexts contains ineEFF Proceed to the next AND only if variable ineEFF references an extensible exeld on the
fulllment line.
To reference an extensible exeld on the order header, use header. exContexts instead of
ine. exContexts.
ineEFF. context isn't null Proceed to the next AND only if the context contains a value.
ineEFF. context equals ignore case Proceed to the next AND only if context equals the string Quote.
"Quote"
ineEFF. Proceed to the THEN statement only if the Order Entry Specialist enters a value in the exeld.
getFlexAributeDateValue("quoteexpiration")
isn't null
773
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
Code Description
header. sacResult. reevaluateFlag "N" Don't reevaluate the condition when the timer expires.
This rule doesn't evaluate according to a timer. Instead it waits until the quote expiration date
occurs, so reevaluate isn't necessary.
If the user submits a revision that includes a new value for the date, then the rule reevaluates
the date and time, and sets this new time as part of compensation.
header. sacResult. Set variable waitDateTime of rule set sacResult on the order header to the value that the Order
waitDateTime ineEFF. Entry Specialist entered into the exeld.
getFlexAributeDateValue("quoteexpiration")
774
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
• Assume the application sets paymentTermId to 1 when it requires the orchestration process to pause and
makes sure you received payment from your customer.
• Most orchestration processes process one fulllment line at a time when they pause according to time or an
event. If you pause according to time or event, then, to lter fulllment lines, use one of these codes.
Code Description
Header. childFLines Reference the fulllment line that the orchestration process is processing.
Header. allFLinesInTheOrder References all fulllment lines in the sales order that the orchestration process is processing.
775
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• Use isn't null. If your rule examines an aribute that doesn't contain a value, then your rule might fail with
results you can't predict.
• Use Assign. If you use Assert New, then the rule creates more than one instance, and it might fail with results
you can't predict.
• If you use Assign New for a rule in a pause rule set, then you must set priority for the Assign New rule to
Highest, and make sure no other rule in the set is Highest.
Note.
• The Pause step references the pause task. The Pause step resides between the Shipping step and the Invoicing
step in the orchestration process.
• If no fulllment line meets any condition in the IF statement, then all fulllment lines have shipped, the rule
releases the pause, and the ow continues to the next orchestration process step.
776
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
Code Description
Header is a Declare variable Header, and then load values into Header from object DOOHeader of method
DooSeededOrchestrationRules. DooSeededOrchestrationRules.
DOOHeader
DOOHeader contains order header aributes and their values.
There is a case where Ask a question. Does the sales order include at least one fulllment line that order fulllment
hasn't shipped, and that order fulllment can ship?
Fline is a Declare variable Fline (fulllment line), and then load values into Fline from object DOOFline of
DooSeededOrchestrationRules. method DooSeededOrchestrationRules.
DOOFline and
DOOFline (Distributed Order Orchestration Fulllment Line) contains fulllment line aributes
and their values.
Header. allFLinesinTheOrder Examine all fulllment lines in the sales order, including lines that the orchestration process
isn't currently processing.
A dependency might exist between the fulllment line that the orchestration process is
currently processing, and other fulllment lines in the sales order, so you must inspect all of
them.
Fline. shippableFlag is "Y" If aribute shippableFlag on the fulllment line is Y, then proceed.
Make sure each fulllment line is shippable. Some items can't ship, such as a subscription. If
a fulllment line contains a subscription, then shippableFlag is N for this line, the rule ignores
this line, and moves to the next line.
Fline. actualShipDate is null If aribute actualShipDate on the fulllment line doesn't contain a value, then it indicates the
fulllment line hasn't shipped, and the rule must pause the orchestration process.
Fline. orderedQty more than 0 If aribute orderedQty on the fulllment line is 0, then it indicates the fulllment line is a
canceled line, the rule ignores this line, and moves to the next line.
SAC_ SYSTEM_ EVENT_ IPC_PAUSE Use SAC_ SYSTEM_ EVENT_ IPC_PAUSE where IPC means Interprocess Communication. The
rule evaluates this type of pause each time a task nishes for each fulllment line.
reevaluateFlag = Y Evaluate the condition each time an orchestration process step nishes.
In this example, the Shipping step ships the fulllment lines, so the rule must evaluate after the
Shipping step nishes for each fulllment line to determine whether order fulllment shipped
all fulllment lines.
Assume you must modify the pause task so the orchestration process sends all fulllment lines to invoicing as a single
group, including lines that fulllment can ship and can't ship instead of only lines that fulllment can ship. An extensible
777
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
exeld identies the group. You can use the same Then statement, but the If statement is dierent. Here's the rst part
of the If statement.
Note.
Code Description
currentFline is a Declare variable currentFline, and then store aributes of the fulllment line that the
DOOSeededOrchestrationRules. orchestration process is currently processing into this variable.
DOOFLine
778
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Code Description
header. childFLines RL. contains Declare currentFline into the rules language (RL) dictionary, and then set the value of
currentFline currentFline to the value that childFLines contains.
This condition makes sure variable currentFline references a fulllment line that the
orchestration process is processing. It also makes sure you correctly declare the variable into
the dictionary.
header. allFLinesInTheOrder RL. Declare variable allFlines into the rules language dictionary, and set the value of allFlines to the
contains allFlines value that allFLinesInTheOrder contains.
This condition makes sure you correctly declare the variable into the dictionary.
currentFline. exContexts RL.contains Declare currentFlineEFF into the rules language dictionary, and set the value of
currentFlineEFF currentFlineEFF to the value that exContexts contains.
This condition makes sure you correctly declare the variable into the dictionary.
exContexts is a list of context rows for the extensible exeld. FlexContext is a type of row or
variable.
779
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note that extensible exeld context FulllLineContext1 and segment FL1AributeChar1 dene one group.
For example, assume the sales order contains 10 fulllment lines and you must group them into two sets of ve lines
each. You can use.
• FulllLineContext1 and FL1AributeChar1 to dene GROUP1 that contains the rst ve lines
• FulllLineContext2 and FL1AributeChar2 to dene GROUP2 that contains the last ve lines
Code Description
allFlineEFF is a Declare variable allFlineEFF, and store the value of object FlexContext into this variable.
DOOSeededOrchestrationRules.
FlexContext Method DooSeededOrchestrationRules contains FlexContext.
FLATTR = "FL1AributeChar1" Declare variable FLATTR (exeld aribute), and set it to FL1AributeChar1.
780
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Code Description
You reference extensible exeld aribute FL1AributeChar1 in more than one location in this
rule. For eciency, and to avoid problems because of typographical errors, you can declare
FLATTR one time, set it to FL1AributeChar1, and then reference FLATTR instead of declaring
FL1AributeChar1 more than one time.
currentFline. fulllLineId isn't Proceed to the next AND only if aribute fulllLineId in variable currentFline and aribute
allFlines. fulllLineId fulllLineId in variable allFlines don't reference the same fulllment line.
currentFlineEFF. context equals Get the value of the exeld context from currentFlineEFF.
ignore case "FulllLineContext1"
Proceed to the next AND statement only if context contains string FulllLineContext1.
equals ignore case species to ignore the case sensitivity of string FulllLineContext1. This
condition avoids the situation where your deployment might use some other case for this
aribute.
currentFlineEFF. Use method getFlexAributeValue to get the value of aribute FL1AributeChar1 from the
getFlexAributeValue. (FLATTR) isn't extensible exeld on the current fulllment line.
null
Proceed to the next AND only if FL1AributeChar1 contains a value.
Recall that FLATTR contains FL1AributeChar1.
currentFlineEFF. Use method getFlexAributeValue to get the value of aribute FL1AributeChar1 from the
getFlexAributeValue. (FLATTR) isn't extensible exeld on the current fulllment line.
null
Proceed to the next AND only if FL1AributeChar1 contains a value.
Recall that FLATTR contains FL1AributeChar1.
allFlineEFF. context equals ignore Get the value of the exeld context from allFlineEFF.
case "FulllLineContext1"
Proceed to the next AND statement only if context contains string FulllLineContext1.
currentFlineEFF. Proceed to the next AND only if the extensible exeld aribute contains the same value on
getFlexAributeValue. (FLATTR) is the current line and on all lines.
allFlineEFF. getFlexAributeValue.
(FLATTR) This condition makes sure these fulllment lines are part of the same group.
781
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
If you set up more than one rule on the start after condition, then you must set the release rule to the highest priority of
all these rules.
782
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
• Order Management runs the rule with the highest priority rst.
• The release rule has the highest priority, so it runs rst.
• Don't use the If statement on the release rule to dene the condition that your business logic requires. Instead,
set up your conditional logic on the pause rule.
• The rule editor requires that you set up a condition on the release rule so it passes validation, so set up a
condition that's always true.
• Assign New creates a new instance of SacResult so you can assign values to it while the rules run.
783
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• If the ow doesn't meet the conditions in the pause rule, then the release rule releases the pause. For example,
if actualShipDate in the pause rule contains a value for each fulllment line, then.
◦ All fulllment lines already shipped.
◦ The ow hasn't met the pause rule condition that pauses the task.
◦ Flow is ready to proceed to the next orchestration process step.
◦ Flow returns to the release rule.
◦ The release rule sets SacResult to SAC_TYPE_IMMEDIATE.
◦ The release rule releases the pause.
◦ Flow continues to the next orchestration process step.
Its important to resume the orchestration process that your pause task paused. If you use.
• SAC_TYPE_TIMER or SAC_SYSTEM_EVENT_IPC_PAUSE. Let the condition evaluate and release the process,
or use one of the set ups described in this section.
• SAC_TYPE_EVENT. You must use one of the set ups described in this section.
Note: You must make sure to release a paused orchestration process. If you don't, then the orchestration
process will remain in a paused state, which might result in failed sales orders, failed order fulllment, and so
on.
Release the pause task that's pausing the orchestration process. Try one of.
• Automatic. Use the Release Pause Tasks scheduled process to release a pause task that's waiting for a business
event to nish. Use a variety of parameters to identify the pause task to release, such as Item, Customer, Task
Name, and so on.
You can also set the Manual Release Type parameter.
◦ Tasks That Exceed Maximum Retries. Use this choice for most situations.
◦ Tasks That Can't Establish Wait. Release pause task that fails to release because of some problem that's
internal to Order Management. Set this value only in consultation with Oracle Support.
• Web service. Use a web service to automatically release the pause task.
• Manual. In the Order Management work area, navigate to the Orchestration Process page, then click Release
Pause Task. You must use the Order Orchestration Error Recovery Manager role. For details, see the Resume
Paused Sales Orders topic.
784
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Related Topics
• Manage Order Management Parameters
• Manage Order Aributes That Identify Change
• Guidelines for Creating Business Rules
785
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
4. On the Create Orchestration Process Denition page, set values, then click Save.
Aribute Value
Aribute Value
Task Schedule
786
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
◦ Create Reservation
◦ Create Shipment
◦ Wait for Shipment Advice
◦ Create Invoice
◦ Wait for Invoice
Note.
For example, for the Create Reservation step, set these values.
Aribute Value
Task Reserve
◦Make sure you set the Exit Criteria aribute for each wait step. For example, set Exit Criteria for the Wait
for Shipment Advice step to Shipped.
4. Add the pause step. Click the Create Reservation step, click Add Row, set values in the new row, then click
Save.
Aribute Value
Task Pause
787
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
where
• DOOFLine is a function in dictionary DooSeededOrchestrationRules.
• DOO is an abbreviation for distributed order orchestration, which is an earlier name for order orchestration.
• FLine is an abbreviation for fulllment line.
• demandClassCode is a fulllment line aribute. This aribute stores the customer class, such as Gold, Silver, or
Bronze.
• isn't determines whether demandClassCode contains Gold.
• For details about these values, see the Guidelines for Pausing Orchestration Processes topic.
788
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
◦ On the test you just added, to the far right, click the down arrow, then click Simple Test.
◦ On the new line that displays, click Left Value.
◦ In the Condition Browser, expand FLine.
Notice that each value under FLine references a fulllment line aribute.
◦ Click demandClassCode, then click OK
◦ Change Is to Isn't.
◦ Click Right Value.
◦ In the Condition Browser, click null, then click OK.
5. Determine whether the customer is Gold.
◦ On the test you just added, to the far right, click the down arrow, then click Simple Test.
◦ On the new line that displays, click Left Value.
◦ In the Condition Browser, expand FLine.
◦ Click demandClassCode, then click OK.
◦ In the Right Value window, enter "Gold".
789
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
For brevity, this screen print doesn't include the entire value for the event.
( eventName:"Gold Preorders",
reevaluateFlag:"N",sacType:DooSeededOrchestrationRules.SacResult.SAC_TYPE_EVENT )
where
◦ eventName is a variable that you can use to help track the status of the pause task. The Order
Management work area uses the text you enter wherever it displays status details, such as in the Gan
790
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
chart on tab Orchestration Plan of page Orchestration Process that the user can access from page
Manage Orchestration Process. This example species to use event Gold Preorders.
◦ reevaluateFlag:"N" species not to evaluate this rule again.
◦ sac is an abbreviation for start after condition.
◦ sacType species the dictionary, rule set, and event to use for the start after condition.
◦ DooSeededOrchestrationRules is a dictionary that contains predened rules you can use in your business
rule.
◦ SacResult is a rule set in DooSeededOrchestrationRules. It contains events and variables you can use to
specify how to handle the result of a start after condition.
◦ EVENT is an event in SacResult. It species to raise a business event.
◦ A pause type of EVENT causes the orchestration process to pause until an event occurs.
◦ An aribute on a scheduled process references this event, but you can also use it in a public service. You
can also use other parameters to release a pause task. This event isn't related to the events that the event
framework in Oracle Middleware uses.
◦ You must include double quotation marks ( " " ).
4. Click Save.
791
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
1. On the Pause step, in the Pause Rule column, click Click for Rule.
2. In the Pause Rule Set dialog, in the check box to the left of Pause for Gold Customers, add a check mark.
3. Click Cut > Paste.
4. Scroll down to the boom of the dialog and notice the rule that the paste added.
5. Make these changes to this new rule.
792
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Pause for Gold Customers Skip Customers Who Are Not Gold
header. sacResult = header. sacResult = ( eventName: "Gold Preorders", ( reevaluateFlag: "N" sacType:
( eventName: "Gold Preorders", DooSeededOrchestrationRulesSacResultSACTYPE IMMEDIATE )
reevaluateFlag: "N"sacType:
DooSeededOrchestrationRulesSacResultSACTYPEEVENT
Start after condition
) IMMEDIATE ends the pause task and allows the orchestration process
to continue to the next step.
6. Click Save.
7. On the Edit Orchestration Process Denition page, click Save.
Related Topics
• Demo for Creating Business Rules
793
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Follow the instructions in section Dene the Orchestration Process Steps of topic Pause Orchestration
Processes Until an Event Occurs.
794
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Create If Statement
Create the If statement that determines whether the source system is Legacy.
◦ On the Pause step, in the Pause Rule column, click Click for Rule.
◦ In the Start After Condition dialog, click Expand > Show Advanced Seings.
◦ Set values.
795
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Description If source system is Legacy, then release pause on ShipDate minus two.
◦ Immediately under the left eld that contains the value Line, click down arrow > Simple Test.
◦ Click Left Value.
◦ In the Condition Browser, expand Header.
Notice that the list displays order header aributes you can use to specify which aribute to examine. For
this example, this If statement creates a lter that causes the rule to only consider source orders where
aribute Source Order System contains a value of LEG, where LEG is an abbreviation for the term legacy.
◦ Click sourceOrderSystem > OK.
◦ In the Right Value aribute, enter "LEG".
796
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
1. Use Assign New to create a variable named DateTime. You will use this variable to calculate the amount of time
to delay shipment.
Don't include quotation marks. Adding DateTime in this aribute creates the variable that this example
uses for the date calculation.
2. Choose the fulllment line aribute that you will use to calculate the date.
The dialog displays a list of fulllment line aributes. You can set up you rule so it considers the value of
one of these aributes.
◦ Click scheduleShipDate > OK.
◦ Make sure the aribute where you added DateTime still contains DateTime.
◦ Click Add Action > Modify.
◦ Click Select a Target > DateTime.
3. Calculate the amount of time to delay shipment.
Note that the Condition Browser adds a value of DateTime.time to aribute Expression.
◦ In the Expression aribute, append -(2*24*60*60*1000) to the end of DateTime.time.
797
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
where
This value calculates the number of milliseconds so the pause task ends two days before the
orchestration process schedules the order lines for shipping.
You can use function getAdjustedDate instead of DateTime.time. For details, see the Guidelines for
Pausing Orchestration Processes topic.
◦ Make sure the Expression aribute includes DateTime.time-(2*24*60*60*1000), then click OK.
For example.
798
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
◦ Click OK.
4. Pause the orchestration process.
( reevaluateFlag:"N", sacType:DooSeededOrchestrationRules.SacResult.SAC_TYPE_TIMER,
waitDateTime:DateTime )
A pause type of TIMER causes the orchestration process to pause until time elapses.
◦ In the Properties dialog, in the waitDateTime row, click Value.
799
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Related Topics
• Demo for Creating Business Rules
• Overview of Using Business Rules With Order Management
Assume a school district places a sales order for 600 new history books and requires that they receive the invoice for
the sales order only after Order Management ships all books.
Assume that the orchestration process must get the books from these warehouses.
• Fulllment line 1 gets 80 books from the Seale warehouse
• Fulllment line 2 gets 400 books from the Denver warehouse
• Fulllment line 3 gets 120 books from the Chicago warehouse
You set up an orchestration process that processes the fulllment lines, pauses until fulllment shipped all lines,
resumes processing, then sends the lines to billing.
800
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• Properties you set for the pause task, see the Overview of Pausing Orchestration Processes topic.
• Business rules, see Overview of Using Business Rules With Order Management.
◦ Schedule
◦ Reserve
◦ Ship
◦ Wait for Shipment
◦ Pause
◦ Invoice
◦ Wait for Billing
801
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
where.
• DooSeededOrchestrationRules. A dictionary that contains predened rules you can use in your business rule.
• DOOHeader. An object in the DooSeededOrchestrationRules dictionary that stores details about the sales order
header.
• Assign New. Species to assign DOOHeader as a new object in the DooSeededOrchestrationRules dictionary.
This assignment makes the object available throughout your rule.
• SacResult. A rule set in the DooSeededOrchestrationRules dictionary. It contains events and variables you can
use to specify how to handle the result of a start after condition.
• SAC. A value you can set for SacResult. sac is an abbreviation for start after condition.
• The rst Assign. Species to set the value of SacResult to SAC.
• sacType. A property of SacResult. sacType stores the value that the rule uses to determine whether to pause
the orchestration process or release it.
• SAC_TYPE_IMMEDIATE. A value of sacType. If sacType contains IMMEDIATE, then the rule will immediately
release the pause task.
• The second Assign. Species to set sacType to SAC_TYPE_IMMEDIATE.
Aribute Value
Description Default rule that pauses orchestration process until a dependency resolves.
Priority Highest
802
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
It states that if the actual ship date isn't null on all fulllment lines, then release the pause task.
803
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
where.
• There is a Case Where. Species to pause all shipped lines even if the fulllment system shipped all lines except
one line.
• OrderHeader/allFLinesIntheOrder. Allows Order Management to coordinate across more than one
orchestration process where more than one orchestration process processes the fulllment lines for the sales
order.
• actualShipDate is null. Determines whether any of the fulllment lines haven't shipped. actualShipDate is null
when orchestration starts. Orchestration sets actualShipDate to a value when it ships the item.
1. On the Pause step, in the Pause Rule column, click Add Rule.
In the Start After Condition dialog, collapse the rule you just created.
2. click Add Rule > Expand > Show Advanced Seings, then set values.
Aribute Value
Priority Medium
804
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
For details about these properties, see the Overview of Pausing Orchestration Processes topic.
805
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
8.Click the down arrow next to Add Action, then click Assign.
9.Click Select a Target, then click OrderHeader.sacResult.sacType.
10. Click Expression Value on the same line.
11.In the Condition Browser, expand DooSeededOrchestrationRules, expand SacResult, click
SAC_TYPE_EVENT, then click OK.
12. Click Validate, then click Save.
Related Topics
• Demo for Creating Business Rules
Aribute Value
4. Use one of the parameters to specify the orchestration process you must resume.
For example, if you set up a pause task on an orchestration process that's waiting for the Gold Preorders event,
then set the event parameter to Gold Preorders.
5. Click Submit.
For an example that uses this scheduled process, see the Pause Orchestration Processes Until an Event Occurs topic.
To get the aributes that the sales order references, you can use the order capture service that requests order details.
Related Topics
• Operations and Aributes You Can Use with the Receive Order Request Service
Hold
806
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Type Description
Generic Hold that you apply on any step of an orchestration process. It doesn't apply a hold for a
specic task. You enable Hold All Services when you create the hold code.
Service Hold that you apply on a specic task type and service, such as the Create Billing Lines service
of the Invoice task type. You specify the service when you create the hold code.
System
Hold that Order Management automatically applies and releases. Here are some examples.
807
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
• Use the Setup and Maintenance work area to manage hold codes, orchestration processes, and task types.
• Use the hold code to specify the task to hold, such as creating the invoice.
• Specify the service, or specify the task type.
808
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
If You Don't Enable the Hold All If You Enable the Hold All Services Option
Services Option
The service you specify aects The task type you specify aects each orchestration process step that references the task
each orchestration process step that type.
references the service.
Assume you.
Assume you.
◦ Add a check mark to Hold All Services for the HOLD CREATE SHIP hold.
◦ Don't add a check mark to
Hold All Services for the ◦ You leave the Services tab empty.
HOLD CREATE SHIP hold.
◦ On the services tab, you
specify the Create Billing
Your hold aects step 300 and step 400 because these steps reference the Shipment task
type.
Lines service.
Your hold aects only step Use this option when you don't any part of the task to run. Let's say you're shipping a highly
300 of orchestration process ammable, dangerous item. Before shipping, you place a hold to verify the carrier is licensed
ShipOrderGenericProcess because to handle hazardous material. Enable the Hold All Services option on the shipping task type
step 300 is the only step that to make sure no part of shipping runs.
references the Create Shipping
service.
• Use the Applicable Roles tab to specify who can apply and release the hold, such as the Order Manager.
Note that you can't specify a role for applying a system hold, but you can specify a role to release a
DOO_CreditCheck hold.
• As an option, use the Set aribute of the hold code to specify the business unit where Order Management
applies the hold. You can also use Set to create a set of hold codes and apply them all to the same business
unit.
• Order Management automatically enables the Hold Tasks In Progress option when the user applies it on the
Order page in the Order Management work area or when you import a hold. Disable this option only if you
haven't set up your fulllment system to correctly interpret it.
• Order Management comes with a number of predened hold codes that hold a variety of task types and
services. Add your own hold code only if the predened ones don't meet your needs.
• Don't set the End Date for a predened, system hold code, such as HOLD_FOR_CHANGE_REQUEST.
Order Management uses these codes internally. If you set the end date on one, you might introduce
errors in your implementation. Examine the description to determine whether a predened hold code is a
system hold code. The description usually identies system holds. For example, here's the description for
HOLD_FOR_CHANGE_REQUEST.
System defined hold code used in change management process
809
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• If you set the End Date for a hold code, then you can't apply the hold after the end date occurs, but you can
release the hold after the end date occurs.
• If you don't see the task type and service you need on the Services tab, then use the Manage Task Types page
to specify the tasks and services that you can choose for the hold. You must set the Hold Enabled option to
make the service display on the Services tab. You can't enable some services for hold, such as Billing Response
or Wait for Billing. For details, see the Set Up Task Types for Holds topic.
• If you create a hold code for a long-running task, such as a shipping or invoicing task, then set it up so Order
Management applies it on a wait step.
Using this approach will help to avoid a concurrency problem that happens when the user revises a sales order
while a long-running task is running. Placing the hold on a wait step helps to make sure any actions that were in
process nish before the user can revise the order.
An orchestration process that references a service that does a Wait operation is a wait step. To determine which
services do a wait operation, go to the Manage Task Types page in the Setup and Maintenance work area,
click the row that includes your task type of interest, such as Shipment, then, in the Details area, examine the
services. Look for services that do a Wait operation.
Apply the hold on the Wait for Shipment service for a shipment task, and the Wait for Billing service for an
invoice task. Each of these services do a wait operation.
Points to Consider
• Your downstream fulllment systems can't nish the task until you release the hold.
• Order Management ignores a hold that you apply on a pause task. The pause task will resume according to its
own conditions.
• For a congured item, make sure you apply the hold on the congured item. Don't apply a hold on a congure
option. For details, see the Sales Order Hold topic.
• You can't enable a hold on a service that uses a Wait, Apply Hold, Release Hold, or Inbound operation. For
example, the Wait for Shipment task places the orchestration process in a wait state that's eectively the
same as a hold, so its not necessary to place a hold when the process is already waiting. If you must hold the
orchestration process, then add the hold to the step immediately before the Apply Hold, Release Hold, or
Inbound operation step.
810
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
DOO_ INVOICE_ CREATE HOLD CREATE INVOICE Invoice Create Billing Lines.
If I Apply Hold Here Can I Release it on Create Can I Release It in Fulllment Can I Release It Through
Order or Revise Order Page View in Order Management Web Service
in Order Management Work Work Area
Area
Create Order or Revise Order Yes Yes Yes, but only if you applied the
Page in Order Management hold on the order header or
Work Area order line.
You can't use the web service
to release a hold that you
apply on a fulllment line on
the Revise Order page.
Fulllment View Yes, but only if you applied the Yes Yes, but only if you applied the
hold on the order header or hold on the order header.
fulllment line.
You can't use the web service
You can't use the Revise to release a hold that you
Page to release a hold apply on a fulllment line in a
that you applied on an fulllment view.
order line because you
already submied the order,
and Order Management
transformed the order line to a
fulllment line.
Web Service Yes, but only if you applied the Yes Yes
hold on the order header.
You can't use the Create page
or Revise page to release a
hold that you apply on an
811
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
If I Apply Hold Here Can I Release it on Create Can I Release It in Fulllment Can I Release It Through
Order or Revise Order Page View in Order Management Web Service
in Order Management Work Work Area
Area
What I Need to Do Job Role You Need to Do It Formal Name of Job Role
Apply, release, or view a hold on a sales Order Entry Specialist or Order Manager ORA_ DOO_ ORDER_ ENTRY_
order, order line, or fulllment line on the SPECIALIST_JOB ORA_ DOO_ ORDER_
Create Order page, Revise Order page, or MANAGER_JOB
in a fulllment view.
View a hold on an orchestration process in Order Manager ORA_ DOO_ ORDER_ MANAGER_JOB
a fulllment view.
Here's an example payload that applies the DOO_SHIP_ALL hold on order line 101 for source order 20156 that you
import from source system LEG.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope>
<soapenv:Header/>
<soapenv:Body>
<dood:RequestHoldProcessRequest>
<!-1 or more repetitions:-->
<dood:ApplyHoldRequestParams>
<dood:SourceOrderSystem>LEG</dood:SourceOrderSystem>
<!--Optional:-->
<dood:SourceOrderId>20156</dood:SourceOrderId>
<!--Optional:-->
<dood:SourceLineId>101</dood:SourceLineId>
<!--Optional:-->
<dood:SourceHoldCode>DOO_SHIP_ALL</dood:SourceHoldCode>
<!--Optional:-->
<dood:HoldComments>Hold Shipping</dood:HoldComments>
<!--Optional:-->
812
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
<dood:SourceOrderNumber></dood:SourceOrderNumber>
<!--Optional:-->
<dood:SourceOrderLineNumber></dood:SourceOrderLineNumber>
<!--Optional:-->
<dood:HoldName></dood:HoldName>
<!--Optional:-->
<dood:AppliedBy>?</dood:AppliedBy>
</dood:ApplyHoldRequestParams>
</dood:RequestHoldProcessRequest>
</soapenv:Body>
</soapenv:Envelope>
Note.
• Use web service ReceiveOrderRequestService. For details, see the Web Services You Can Use to Integrate Order
Management topic.
• To apply a hold on the order header, include a value for SourceOrderId but not for SourceLineId. The hold will
apply to the header and all lines in the order.
• To apply or release a hold on the order line, you must include a value for SourceOrderId and for SourceLineId.
• Apply or release a hold on more than one sales order. Use the same soapenv:Header and soapenv:Body, and
include a separate RequestHoldProcessRequest section or ReleaseHoldProcessRequest section for each sales
order. For example.
<soapenv:header> ..... </soapenv:header>
<soapenv:body>
<RequestHoldProcessRequest>
<SalesOrderNumber>1234</SalesOrderNumber>
<SalesOrderSystem>GPR</SalesOrderSystem>
</RequestHoldProcessRequest>
813
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
<RequestHoldProcessRequest>
<SalesOrderNumber>2345</SalesOrderNumber>
<SalesOrderSystem>GPR</SalesOrderSystem>
</RequestHoldProcessRequest>
</soapenv:body>
Related Topics
• Sales Order Hold
• Web Services You Can Use to Integrate Order Management
• Copy Setups Between Instances of Order Management
You can set up a hold code only for a hold that originates in Order Management. You can't use it for a hold that
originates in some other application.
Assume you're an order administrator for Vision Corporation, and your sales engineers have informed you that a
problem might exist with an item. You must create a hold code that your users can use to temporarily hold all sales
orders that reference the item while your sales engineers investigate the problem.
1. Create a hold code.
2. Specify job roles that manage holds.
3. Create a release reason.
4. Test your set up.
This topic includes example values. You might use dierent values, depending on your business requirements.
814
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
Description This hold allows us to investigate a problem that occurred with the item.
Set COMMON
You can use Set to specify the business unit set that Order Management uses with a hold
code. You can assign a hold code to a single business unit, or you can assign more than one
hold code to sets of business units. These sets can share hold codes.
4. Optional. Specify each service where Order Management must apply the hold.
For example, do these steps to apply the hold only for the Shipment service.
◦ Make sure the Hold All Services option doesn't contain a check mark.
◦ In the Hold to Investigate Item: Services area, click Actions > Select and Add.
◦ In the Select and Add: Services dialog, leave all aributes empty, then click Search.
◦ Click a row that displays Shipment in the Task Type column.
◦ For this example, you must apply the hold to all services, so click Cancel, then add a check mark to option
Hold All Services.
5. Click Save.
815
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Order Management might place a sales order on hold for a variety of reasons. Your business requirements might
demand that a person who possesses the correct knowledge or authority to release a hold. Controlling holds according
to job role helps you improve security by limiting functionality according to role. It also helps you decrease order
processing time and reduce downstream problems that might be related to a hold that nobody released.
For example, allow role x to apply and release hold 1, and apply hold 2 but not release hold 2.
Assume you must allow the Order Manager job role to apply and release a hold, and allow the Order Entry Specialist job
role to apply a hold but not release it.
Order Entry Specialist Contains a check mark. Doesn't contain a check mark.
816
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
If none of the predened job roles meet your needs, then create your own job role.
Assume users in the Vision Services department of Vision Corporation receive service calls from customers
who are inquiring about the status of a sales order, such as what item the customer ordered, and expected
delivery date. The user must view the sales order, but not edit it. Assume you already created a user named
order_entry_specialist_vision_services to meet this requirement.
For details about job roles, see the Assign Job Roles in Order Management topic.
1. Examine the predened job roles to determine whether any of them meet your needs.
Aribute Value
The values you can search for depend on the users you created in your environment.
◦ Click Next > Save and Close.
817
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
For details about this task, see book SCM Cloud: Implementing Common Features for Oracle SCM Cloud.
◦ On the page that displays, click Submit.
6. Use the Manage Hold Denitions page to add your new job role to the hold code.
818
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Try it.
819
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Aribute Value
3. In the DOO_HLD_RELEASE_REASON: Lookup Codes area, click Actions > New then set values.
Aribute Value
Display Sequence 1
Aribute Value
Aribute Value
820
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
7. In the Order Lines area, to verify that Order Management placed a hold on the order line, make sure it displays
the On Hold icon.
8. Click the arrow next to Apply Hold, then click Release Hold.
9. In the Release Hold dialog, set values, then click Save and Close. You dened these values earlier in this topic.
Aribute Value
10. Sign out of Order Management, then sign back in with the Order Entry Specialist role.
11. Repeat the steps described above, but verify that Order Management doesn't display Release Hold when you
click the arrow next to Apply Hold.
Related Topics
• Sales Order Hold
821
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
• Apply or release a hold regardless of the channel where you applied it.
• Apply hold n in fulllment system x, then release it in fulllment system y.
• Use web services to communicate changes through Order Management to your fulllment systems.
822
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Here's an example web service payload that uses the SourceHoldCode aribute to apply and release a hold.
Note.
• The top line in the image is truncated. Here's the full line.
• Release a hold regardless of the channel that applied the hold. For example, assume fulllment system
x is a channel, fulllment system y is a channel, and the Order Management work area is a channel.
Assume fulllment system x uses a web service to apply hold on sales order 759674. You can use the Order
Management work area to release the hold on sales order 759674.
• Use a web service to release a hold on a sales order header that the Order Management work area applied.
• Use a web service to apply a hold on a fulllment line.
• Use the Order Management work area to manually release a hold that a web service automatically placed.
• Use the Order Management work area to manually apply a hold on a Draft sales order.
823
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• Use the Order Lines tab in a fulllment view in the Order Management work area to apply a hold on a fulllment
line. The Order page that you access from the Manage Orders page is an example of a fulllment view.
• You can't use a web service to apply a hold on a Draft sales order.
• Release a hold on a fulllment line only from the Order Lines tab in a fulllment view in the Order Management
work area.
• You can't use a web service to release a hold on a fulllment line.
• You can't use a web service to apply a hold on a fulllment line when the web service integrates with an order
capture system. Most order capture systems focus on inputs to sales order, such as customer and item. They
don't integrate directly with a fulllment system, so they don't provide or manage the details that a fulllment
line hold requires.
Related Topics
• Sales Order Hold
• Guidelines for Using Web Services to Integrate Order Management
824
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
825
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Assume you create your own task type named My Shipment. You want to allow the Order Entry Specialist to place the
sales order on hold when the order reaches the orchestration process step that references the My Shipment task type.
Aribute Value
Description My Shipment
3. Click the row that contains My Shipment in the Task Type column.
4. Click Services.
Notice that the Manage Task Types page automatically adds a create service and enables it for holds.
For example.
Hold My Shipping Hold My Shipping Apply hold Doesn't contain a check mark.
Release Hold on My Shipping Release Hold on My Shipping Release hold Doesn't contain a check mark.
Related Topics
• How Data Flows Through Order Management
• Actions You Can Set When Routing Requests to Fulllment Systems
826
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Fulllment Task
Fulllment Tasks
Use a task type to specify the type of fulllment task that the orchestration process step does, such as schedule a
fulllment line for shipment, ship it, or conrm delivery.
A task type is group of services that Order Management uses to do a fulllment task. It represents a common
business function that processes a sales order from the time your user creates the sales order to the time that Order
Management sends the order to your order fulllment system.
827
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Here are some typical task types, the services they call, and the sequence you use to run them. This example starts with
reservation.
Note.
828
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• A typical sequence is to use services to reserve inventory for your item, schedule it for shipping, ship it, then
invoice it.
◦ Create Inventory Reservation
◦ Create Schedule
◦ Create Shipping
◦ Create Billing Lines
You can.
• Use a task to represent the services that the task type references. For example, if you create a Ship Goods task
that references services from the Shipment task type, then the Order Management work area displays Ship
Goods when a Shipment service runs, regardless of whether it calls the Create Shipment service or the Update
Shipment service. The Order Management work area doesn't display the service. It displays only the task.
• Create a new task type.
• Add more than one task to your new task type, such as ShipGoods or ShipWidgets.
• Add a predened service to your new task type.
• Edit the service names of an activity or task type you create.
You can't.
• Modify the name of a task type after you create it because other objects in your setup might reference the
name.
• Modify or delete a predened task type.
• Edit or delete a predened service.
Invoice Communicate with your billing system to create an invoice for the fulllment line.
FulllOrder Integrate between Order Management and an Enterprise Resource Planning (ERP) system.
Note that fulllment tasks can run more than one fulllment action through a single request,
such as shipment and invoice.
829
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Pause Temporarily pause processing to wait until a date to occur, an event to occur, or a dependency
to resolve before proceeding to the next orchestration process step.
Use the pause task to coordinate processing across more than one fulllment line in one sales
order.
Activity Communicate with your fulllment system to manage a human activity, such as install the
AS54888 Desktop Computer.
DOO_ Procurement Source and ship the item when you procure the item from an organization that resides outside
of your typical supply chain.
DOO_Supply Communicate with Oracle Fusion Supply Chain Orchestration so you can use more complex
logic when you source the item.
Use the Manage Task Types page in the Setup and Maintenance work area to get the complete list of task types and the
services you can use with each task type.
830
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Note.
• Use the Manage Task Types page to create your own task type.
• Add services to your task type.
• For example, the Schedule task type includes services.
◦ Create Scheduling
831
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
◦ Update Scheduling
◦ Cancel Scheduling
Task Services
Use dierent task services to fulll dierent types of fulllment requests.
Note.
832
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Activity Services
Activity services send an activity request to your fulllment system. The fulllment system creates and fullls the
activity, then sends replies and updates to the activity service. The activity service interprets these replies and updates.
An activity is an event that occurs outside of Order Management Cloud. For example, an orchestration process might
include an activity task type to set up a network router.
• An activity contains the details needed to nish the task.
• Your users can do an activity as part of nishing order fulllment. Order Management can assign an activity to
one of your users.
• Each activity includes aributes, such as subject, activity type, earliest start date, due date, scheduled duration,
actual duration, percent complete, and assignee.
• Order Management can associate an activity with one or more fulllment lines.
• The activity service doesn't typically immediately fulll an activity task, so a wait service allows the orchestration
process to wait for the activity to nish.
• Order Management doesn't support partial fulllment. An activity step must nish before the orchestration
process can proceed to the next orchestration process step.
Note.
Send request to fulllment system. Send a Create Activity request to the fulllment system that creates the activity.
If the service receives a change order, then it changes or cancels the activity, as necessary.
If Order Management applies a hold on a sales order, then the activity service sends a request
to the fulllment system to hold the activity that's currently in progress.
Receive activity status update. You can schedule an orchestration process that periodically gets the updated activity status.
Modify activity. • An activity is a predened task type. You can also create a new activity task type, and
use an extensible exeld to modify an activity.
• You can enable an activity default in a task type or orchestration process step. Default
the activity type so you can categorize activities, then your fulllment system can run
business logic and do validation according to the activity type.
833
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• If you don't set the default value for the task type or the orchestration process step, then
Order Management sets the subject of the activity to the name of the step.
• You can use some fulllment systems to create an activity template that supports a
human task. To use the template, you can specify the activity template for a task type
or an orchestration process step that creates the activity according to the predened
template when you dene the task type and the orchestration process.
Service Description
Reserve services Send a reservation request to the part of your fulllment system that manages inventory. A
reservation reserves the supply for a sales order so no other sales order or inventory system
can use the supply.
Schedule services
Send a scheduling request to order promising. For example, to schedule a sales order, remove
the schedule from a sales order, or determine whether the item is available.
• Scheduling applies to fulllment lines that are waiting for manual scheduling and
fulllment lines that fail scheduling in the automated or manual process.
• Scheduling works only for fulllment lines that aren't scheduled. Order Management
doesn't allow automatic rescheduling from the Order Management work area.
Hold services Send a hold request to the fulllment system. For example, the Hold Shipping service can
send a hold request from Order Management to the part of your fulllment system that does
shipping.
Shipment Services
Shipment services send a shipment request to the part of your fulllment system that does shipping.
Send shipment request to fulllment If Order Management receives a change order, then the shipment service changes or cancels
system. the shipment request, if necessary.
If someone applies a shipping hold, and if the Hold on Running Task option is enabled, and
if the task that's running is a Shipping task, then the shipment service sends a request to the
shipping system to hold the shipment request that its currently processing.
Consolidate fulllment lines. Consolidate the fulllment lines of a shipment set or a congured item, then send all the lines
of the shipment set or the congured item as a group to the shipping system.
834
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• Picked
• Packed
• Shipped
• Backordered
Note.
• The shipment service continues to interpret the updates it receives from the shipping
system even after the shipping system ships fulllment lines. It sends details about
these updates to Order Management.
• If the shipping system uses more than one currency to represent cost, then the
shipment service converts them before it sends the update to Order Management.
• If the shipping system uses a unit of measure to represent shipping that's dierent from
the unit of measure that Order Management uses in the sales order, then the shipment
service converts the unit of measure back to the unit of measure that the sales order
uses, then communicates the shipped quantity to Order Management.
• Shipment set. The shipment service removes the lines that didn't ship from the
shipment set.
• Congured item. The shipment service splits the congured item into a shipped item
and an item that hasn't shipped.
Invoice Services
Invoice services send a request to the part of your fulllment system that does billing and interprets the replies it
receives from this system.
• The billing system creates the invoice and the credit transactions.
• Order Management doesn't allow you to modify a fulllment line after the invoice service sends the request.
• If you use a source system that resides outside of Order Management, then the source system must provide
most of the data that the billing system requires to nish billing. Order Management stores these details, then
routes the billing request to the billing system.
835
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• An invoice service sends charges that occur in the order header with the rst fulllment
line that Order Management fullls for the sales order.
• If the fulllment line doesn't include payment details or sales credits, then the invoice
service sends these details from the order header.
• The invoice service sends prepayment details from the order header for all fulllment
lines.
• Order Management doesn't support discounts that occur in the order header.
Return lines The invoice service sends the reference to the original sales order line, the return reason,
received quantity, and delivered quantity.
Shipment set or congured item The invoice service sends the fulllment lines that the shipment set or the congured item
contains together. If the fulllment system fullls only some lines in the shipment set or
congured item, then the invoice service sends only the fullled lines.
Note: A change order from Order Management can't update an invoice. A change to an invoice is typically a
credit from a return order or prepayment. Its not typically a cancel.
The billing system processes the data that it receives, then sends details to the invoice service.
• Invoice details
• Credit memo details
• Billing amount
• Billing date
• Invoice date or credit memo date
• Number
• Status
• Legal entity details
Return Services
Return services send a request to the part of your fulllment system that does receiving and interprets the reply and
update that it receives from the receiving system.
• The return service creates a change receipt advice or a cancel receipt advice when Order Management receives
a return request.
• The request might include one or more aribute updates, such as to increase the receipt quantity.
• If Order Management receives a request to change the original copy of the sales order that the customer
returned, then the return service sends a request to the fulllment system that creates the receipt advice.
836
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• If Order Management receives a request to cancel the original copy of the sales order line that the customer
returned, then the return service cancels the receipt advice. Order Management typically allows cancel until the
fulllment system receives the returned items.
• If the ordered quantity is greater than the delivered quantity on the receipt advice, and if the customer doesn't
require the ordered quantity, then the return service can request to cancel the remaining quantity.
Return services can process a partial receipt, such as the return of only some items of a congured item.
If the customer returns only part of the return, then the return service splits the fulllment line into two lines.
• One line includes a status of Delivered for the items the customer returned
• One line includes the items the customer didn't return
If the customer returns only part of the original order, and if the return includes a congured item or kit, then the return
service splits the fulllment line into two orchestration groups.
• One group includes the fulllment lines that the customer returned
• One group includes the fulllment lines that the customer didn't return or that aren't returnable
The receiving system that starts the event might send a status update for the return. For example, if the receiving dock
receives the item, then the receiving system might send a status update that starts an event that creates the receipt
advice. Here are the events in the receiving system that might start a status update in Order Management.
• Receive the item on the receiving dock when the receipt is created.
• Deliver the item into inventory.
• Return the item to a customer.
• Correct the sales order after a receipt transaction occurs. For example, a customer can't return a deliver
transaction.
Fulll order services can send a request that modies a sales order that resides in Order Management, and that the
fulllment system uses.
• Create.
• Update.
• Place hold.
• Release hold.
• Update status.
• Cancel.
• Send an update to the fulllment system each time Order Management accepts a change order that aects
fulllment.
837
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• Receive interim and nal status updates from the fulllment system. Fulll order services don't immediately
send a reply. They send the reply when the fulllment activity runs.
For more details, see the Parameters You Can Use When Routing Requests to Fulllment Systems topic.
Related Topics
• How Data Flows Through Order Management
• Actions You Can Set When Routing Requests to Fulllment Systems
Aribute Value
Notice that the page adds services in the Services list. The page copies the value you enter in the Task Type
aribute, appends it with the type of service, such as Create, then inserts the value in the Code column of the
service. For example.
Code Name
Note.
838
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
For example, assume you create a new task type, set the Task Type aribute to Pause_for_Backorder,
tab out of the aribute, the page adds service Pause_for_Backorder Create, you change the Task
Type aribute to Pause_for_Backorder_During_Drop_Ship, but the Code aribute in the service is still
Pause_for_Backorder Create. Its recommended that you change the Code column in the services lists to
Pause_for_Backorder_During_Drop_Ship Create before you click Save.
2. Assign a status code to the task type.
Order Management sets a default value for some system status codes, such as Pending, Change Pending,
Cancel, or Canceled. The status code that each task type references also controls the values for the exit criteria
on a wait step that uses the task type, and the value of the task status in the next orchestration process step.
You can create a new status code, or you can assign a status code that already exists.
3. Click Save.
4. Connect Order Management to the fulllment system that will do the tasks and services that your new task type
references.
5. Reference your new task type when you create the orchestration process step.
Preprocessing
Add preprocessing logic. For example.
Postprocessing
Add postprocessing logic. For example.
839
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Change management Use change management on an orchestration process step that references your new task type.
Specify the aributes for the task type on the Manage Order Aributes That Identify Change
page.
Make sure your task type references the Update service and the Cancel service, and the
connectors that these services require.
Hold code To apply a hold to your new service, create hold codes for it. Hold All applies to your new
service and to services that already exist.
Jeopardy threshold To include a jeopardy score for your new task, set up a jeopardy threshold for it.
Processing constraint Create a processing constraint that controls when to use your new task. For example, use a
processing constraint that species the aributes that are required in the outbound request or
on the inbound reply.
If you use one of them, then the template task uses a complete data set to communicate Order
Management aributes.
Register error messages If your fulllment system sends error messages to Order Management and you prefer to
process and display them in Order Management, then you must register them.
Maintaining data integrity makes sure the task type you create displays correctly throughout the Order Management
work area. Order Management also makes sure functionality works correctly with your new task type.
• Status update
• Wait step
• Forward planning
• Jeopardy
• Hold processing
• Split processing
840
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
• Change management
• Error recovery
Related Topics
• Manage Connector Details Between Order Management and Your Fulllment System
841
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Reserve supply for a sales order so no other demand can use the supply. Demand includes other fulllment lines in your
sales order, fulllment lines in other sales orders, transfer orders, work orders, and so on.
You use the Create Inventory Reservations fulllment task to reserve supply. Here's what it does.
• Uses your inventory system to reserve physical supply that currently exists in the warehouse.
• Doesn't reserve future supply, such as supply that's scheduled to be built.
• Reserves supply for each fulllment line.
• Reserves the entire quantity on the fulllment line.
842
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
◦ If the entire quantity isn't available in inventory, then the reservation task doesn't reserve any quantity.
For example, if the quantity on fulllment line x for item AS54888 is 4, and if there's only a quantity of 3
in inventory, then the reservation task doesn't reserve any quantity.
• Reserves only from inventory that's currently available. It doesn't reserve according to date. It reserves from
current inventory even if your sales order includes a scheduled ship date that occurs in the future.
• Automatically reserves each item where you set the Reservable aribute and the Back-to-Back Enabled
aribute to Yes for the item in Product Information Management.
• Reserves items that aren't congured and items that are congured.
• Reserves all items in each assemble-to-order model, pick-to-order model, kit, or ship set together. It doesn't
reserve individual items or only some items in each model, kit, or ship set.
Assume you sell a desktop computer as a model, and the model includes the CPU, memory, hard drive,
monitor, keyboard, and mouse. If inventory has everything in stock except the memory, then the task doesn't
reserve anything.
843
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
Use DOO_OrderFulllmentGenericProcess or create a copy of it, then add an optional pause step.
Note.
• Use the pause step to pause the orchestration process until the shipment is almost ready to ship.
• The reservation step will provide a more accurate picture of supply that's available because it's closer to the
ship date.
• Waiting to reserve supply can also reduce the cost of holding inventory until it's time to ship.
844
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
If you.
• Enable the Manual Aribute on any step in the orchestration process. Order Management enables the
Reserve action on the Management Fulllment Lines page and waits for the user to manually reserve the
fulllment line.
• Don't enable it on any step.. Order Management disables the Reserve action and the process doesn't wait for
the user to manually reserve the fulllment line.
The step details in the graphic might be a lile hard to read. Here are the same details.
Step Step Name Step Type Task Type Task Service Manual
Aribute Value
Reservable Yes
Aribute Value
845
Oracle SCM Cloud Chapter 5
Implementing Order Management Orchestrate Fulllment
1. In the Order Management work area, click Tasks > Manage Fulllment Lines, then search for your fulllment
line.
2. In the search results, in the General Tab, click the link next to Orchestration Process Number, such as
300100181483263.
3. On the Orchestration Process page, click Fulllment Lines.
4. Click Actions > Reserve.
• Global Order Promising is an application that collects supply data from a planning system and promises to
reserve the supply it collects.
• Supply isn't physical inventory. Its planned supply that the factory hasn't built yet.
• You can set up Global Order Promising to account for expected future supply and to split a fulllment line.
• Recall that the reservation service in Order Management doesn't consider future supply. It only reserves from
on-hand inventory.
• If you use Global Order Promising to reserve future supply, then don't use the reservation service in Order
Management. Use one or the other, but not both at the same time.
There's a trade o between using Global Order Promising and the reservation service in Order Management. If there
isn't enough supply to fulll the line by the request date, and if you set the Allow Partial Shipments of Lines aribute on
the line to Yes, then.
• The scheduling service in Global Order Promising will split the line into two lines. The second line will contain a
future date.
• The reservation service in Order Management never splits the line, so it fails.
If you use Global Order Promising to schedule your fulllment lines, then consider removing the reserve step from your
orchestration process. If you must keep the reserve step, or if you don't use Global Order Promising, then.
• Enable the Manual property on the step so the user must click a buon when close to the request date.
• Only send lines to the reservation step that you can fulll with the inventory that you have on hand. Or use a
pause step to pause lines that you can't fulll from on-hand inventory. The pause delays the reservation until
nearer the request date.
Another option is to remove the reserve step and let shipping handle reserving inventory.
846
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
6 Business Rules
Overview
Overview of Using Business Rules With Order Management
Set up a business rule in Order Management Cloud to implement a dynamic decision at run time that automates a
company policy, does a calculation, or does some processing.
A business rule is a statement that describes how to implement a business policy or make a business decision. It can
implement logic.
Here are some business requirements you can meet with a business rule.
A business rule keeps rule logic separate from the underlying application code, which allows a business analyst to
modify rule logic without using programming code and without interrupting your business process.
• If the sales order is valued at $50,000 or more, then make sure a representative calls the customer before
sending an invoice.
847
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Here are the types of business rules you can use and where you can use them.
Note.
Transform a sales order. Order Management transforms each source order that you create in Order Management or
that it receives from a source system so it can optimize order fulllment. You can write a rule
• Pretransformation to. . .
• Product Transformation
• Populate order aributes before transformation.
• Posransformation
• Transform a source order.
848
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
For example.
• Populate an aribute on a fulllment line. If the item is a widget, then populate the
Request Date aribute on the fulllment line.
• Convert a measurement. If the item is a widget, then convert the value in the Size
aribute from centimeters to inches in the fulllment line.
• Create fulllment lines from one item. For example, if the item is a laptop that includes
a docking station, then transform the item into one fulllment line for the laptop and
another fulllment line for the docking station.
For details, see the Transform Source Orders to Sales Orders topic.
Process Assignment
Assign the orchestration process that Order Management runs to process fulllment lines.
For example.
• If the ordered quantity is large, then assign the sales order to an orchestration process
that optimizes scheduling and delivery for large orders.
• If the customer is Important, then assign the sales order to an orchestration process that
expedites delivery.
• If the ship-to address in the order header resides outside of your country, then assign
the sales order to an orchestration process that handles international fulllment, such as
checking for trade compliance.
Process a sales order. Set up a rule that aects processing, such as branch in an orchestration process, do a complex
calculation that determines planning lead time, or manage a change that occurs to the sales
• Start After Condition order.
• Branching Condition
• Lead Time Expression For example.
• Line Selection Criteria
• If an invoice exceeds $100,000, then make sure a representative phones the customer.
• If the status of the Create Shipment orchestration process step is Shipped, then send a
Process a change order.
notication to your customer that the sales order is on its way.
• Compensation Paern • If the sales order includes a shippable item, such as a laptop, and an item that isn't
shippable, such as a warranty for the laptop, then make sure the orchestration process
• Cost of Change
doesn't aempt to ship the warranty.
Routing Rule
Set up a rule that routes a fulllment request to a fulllment system according to an aribute
on the sales order, fulllment line, or orchestration process.
For example.
• If product type is Goods, and if task type is Invoice, then route the request to fulllment
system ABCInvoicingSystem.
• If item is 2TX Server, then route the service request to fulllment system Big Server.
For details, see the Overview of Connecting Order Management to Your Fulllment System
topic.
849
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
For background details about creating Oracle Business Rules, see Designing Business Rules with Oracle Business
Process Management on Oracle Help Center.
Starting with release 13B, its strongly recommended that you use only Visual Information Builder for routing,
pretransformation, and assignment rules.
Editor for Oracle Business Rules Editor for Visual Information Builder
Manage External Interface Routing Manage External Integration Routing Rules for Sales Orders
Rules
Manage Orchestration Process Manage Process Assignment Rules for Sales Orders
Assignment Rules
850
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Page Topic
For details about using business rules with extensible exelds, see the Overview of Seing Up Extensible Flexelds in
Order Management topic.
Line Selection Criteria Select Fulllment Lines for Orchestration Process Steps
851
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
You use the Manage Orchestration Process Denitions page to set these aributes. For details, see the Guidelines for
Seing Up Orchestration Process Steps topic.
852
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Note.
1. An event occurs that causes Order Management to run the rule. The event depends on the context where you
write the rule. For example, if you set up a rule.
◦ On a step in an orchestration process. The rule runs when the process reaches the step.
◦ On the external interface. The rule runs when a task in the external interface references the rule.
2. If the If statement is true according to the facts, then Order Management activates the rule.
For example.
853
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
where
• Item is a fact.
• Green Server is a fact.
3. The rule references the dictionary to get the objects it needs at run time.
For example, you create variables and declare objects when you set up the rule. You store these objects in the
dictionary.
4. The rule does the action.
where
854
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
855
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
• Create all your rules in the same instance of Order Management. Don't create some rules in one instance, and
then some other rules in another instance or environment.
• Some rule dictionaries are available in jDeveloper. However, don't use jDeveloper because problems might
occur during patching, instantiating objects, and migrating. Instead, use the Setup and Maintenance work area
to set up your rules.
Use the work area to migrate setup data from one environment to another environment. You can create rules
for orchestration processes only through the Manage Orchestration Process Denitions page in the Setup and
Maintenance work area. Migration migrates rules that you create when you set up an orchestration process.
Use autofill to display a list of values that are available according to the rule structure that you dene. Autofill helps
to simplify creating the rule because you don't need to research what aributes and facts are available, and you don't
856
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
need to research whether you can use an aribute or fact in the logic you dene. Autofill continues to lter the results
each time you enter another character.
Use the tree in Visual Information Builder to nd aributes you can use in your rule, then add them.
857
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
The tree displays the hierarchy of the objects you can add to the rule. For example, the Manage External Interface
Routing Rules page displays the hierarchy of aributes you can add. sales order .
◦ Order Header
◦ Order Fulll Line
• Each entity includes aributes. For example, here are some aributes in the Order Fulll Line entity.
◦ Business Unit
858
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
◦ Item
◦ Ordered Quantity
◦ And many others
• To add an aribute to your rule, click the aribute, drag, then drop it onto the rule.
For example, drag the Item aribute onto the If statement of your rule.
You can use the tree to set up a wide range of conditional logic that meets your business requirements. If you prefer not
to use the tree, you can search directly in the If statement or Then statement for the entity, aribute, values, and so on.
Use Advanced Mode and Tree Mode to help simplify creating and managing your rule. These modes help structure your
rule to make sure it contains the correct logic structure, and to lter choices available to you to help make sure the rule
references objects correctly according to structure.
859
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
860
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Note.
• In the Setup and Maintenance work area, click Actions > Export > Create New Export.
• Export the business objects you need to run business rules. For example.
861
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
For example, assume you write rule x that assigns a fulllment line with item type of server to one process, and
you write rule y that assigns server item ABC to another process. A conict might occur. You must revise rule x
so it doesn't specify server item ABC. Oracle Business Rules provide details about potential conicts after you
save the rule.
• If your rule compares one data object to another data object of the same type, then use advanced mode and
create two variables, one variable to represent each data object.
You must specify that variable one is not the same as variable two. Set up this test.
If you don't set up this test, then Oracle Business Rules will use variable1 and variable 2 to represent the same
object instance when it determines the rule to apply.
• Make sure each rule evaluates to a single result. For example, if you write two rules for the interface layer, then
make sure only one rule evaluates to true. Assume you write two rules.
These rules look dierent but they each evaluate to true when Task Type equals Shipment and Customer
equals GOLD. To avoid this problem, write If, Then, Else rules in Visual Information Builder to make sure your
rules are mutually exclusive.
862
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Note.
1. Notice the entity. You enter the aribute, such as Order Type, and then the entity that contains the aribute,
such as Order Header, displays immediately under the aribute.
Most aributes on the order header are dierent from aributes on the order line. For example, the order
header includes the Order Type aribute but the order line doesn't. However, the order header and the order
line contain similar or identical aributes. For example, the order header and the order line each include
aribute Shipping Instruction. If your rule must reference Shipping Instruction on the order header, then make
sure you use the order header entity.
2. Is in the List. Use Is in the List to examine the list of values that the aribute references instead of writing an
OR condition. For example, the list of values for Order Type includes Mixed Orders and Standard Orders. If you
don't use Is in the List, then it might be necessary to write a series of OR conditions. For example.
If Order Type equals Mixed Orders, or If Order Type equals Standard Orders
863
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
3. Add the description. Description for the IF statement is optional. However, you can use it to quickly scan your
rule logic without having to drill down into the rule to determine the purpose of the statement. You can also
add a description for the Then clause.
4. Make sure the object isn't empty. Make sure the value of any aribute that your rule references isn't empty. If
your rule references an empty aribute, but depends on a value, then it might fail with unpredictable results.
Use rule logic in Visual Information Builder to simplify creating and managing your rule.
Note.
◦ Put all your logic in one rule instead of spreading it across more than one rule.
864
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
◦ Write one rule that includes more than one IF_THEN_ELSE statement instead of writing more than one
rule.
◦ Add an IF THEN ELSE structure.
◦ Nest your rules, such as adding another IF after an ELSE.
2. To look for values that aren't in the list, write a rule that looks for values in the list, then add a False condition.
Use False directly in the IF statement to implement a NOT condition rather than adding another rule.
Write More Than One Rule
If you set up more than one rule to meet the same business requirement, then set priority. For details, see the
Guidelines for Pausing Orchestration Processes topic.
Make sure the rules in a single rule set are mutually exclusive.
865
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
A rule set is a group of rules that run together to achieve a business objective. For example, assume you create a pause
rule and a release rule on a pause task. The pause rule and release rule together constitute one rule set. Oracle Business
Rules runs all the rules in a rule set. To avoid logic problems, make sure no two rules can be true at the same time, or
false at the same time.
Dene If Statements
• Use an If Then format that uses natural language when you rst begin writing your rule. For example.
If the item type is server, then add extra packing to the shipping instructions.
866
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
• Remove dependencies where the result of one rule changes the If statement of another rule in a way that
causes innite looping.
• Consider the outcome under a variety of data inputs. The If Then statement is the most common statement.
You can also use If Then Else in advanced mode.
• Add the equivalent of an Else clause so your rule can handle the situation where no condition is met. To avoid
an interruption in processing, this is particularly important when your rule assigns an orchestration process or
routes processing to the interface layer.
• Use a bucket set to simplify If logic in the decision table. Use parameters on actions to provide dierent values
for the same aribute in each rule.
• Use a decision table when you require more than one rule that uses the same set of If statements and Then
statements.
Reference Aributes
• Identify the aributes you will reference in the rule. For example, Item Type and Shipping Instructions are each
an aribute on the fulllment line. For details about Order Management tables that these aributes reference,
see book Tables and Views for Oracle Supply Chain Management Cloud at hps://docs.oracle.com/en/cloud/
saas/supply-chain-management/r13-update18a/oedsc/index.html.
• Add a default, catch all rule that can handle the situation where you must set an aribute value.
• Make sure your rule can handle an aribute that doesn't contain a value, even for aributes that normally do
contain a value.
If the aribute doesn't contain a value, and if your rule does a calculation that requires a value, then it might
create an error or result in a null pointer exception at runtime. For example, an Order Entry Specialist might or
might not set the value for an extensible exeld because adding a value is optional. If your rule references an
extensible exeld, and if this exeld doesn't contain a value at run time, then write your rule so it populates
the exeld with a default value that your rule can use during calculations.
For details about using rules with extensible exelds, see the Overview of Using Extensible Flexelds in Order
Management topic.
867
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Apply guidelines when you reference an extensible exeld in Visual Information Builder.
Apply guidelines when you reference an extensible exeld in Oracle Business Rules.
868
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Note.
• Use isn't null to make sure the value of any aribute or object, such as the segment or context, that your rule
references isn't empty. If your rule references an empty aribute, but depends on a value, then it might fail with
unpredictable results.
• Reference the context code, such as HeaderEFF.context.
• Reference the segment name, such as HeaderEFF.getFlexAttributeDateValue("_CompleteCompliancedate").
• If you reference a value set, then Oracle Business Rules uses the VALUE column, by default. If the value set.
◦ Contains a value for ID. The editor uses the ID, and you must write the rule so it uses the ID.
◦ Doesn't contain a value for ID. The editor uses the value.
For example, if you write a rule that references a payment term, then you must make sure the value set
includes a value for ID, and your rule must reference the ID.
869
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Note.
• Order Promising uses the Scheduled Ship Date aribute on the sales order only if you set the Override Schedule
aribute to Yes. If you create a rule that references Scheduled Ship Date, then make sure you override the
schedule.
• Specify the warehouse, or specify the supplier and supplier site. It isn't necessary to specify scheduled arrival
date.
• If you don't make these seings, then Order Promising ignores the scheduled ship date that the rule sets.
870
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Note.
◦ Item Denition
◦ Item Category
◦ Related Item
• These entities are children of the Order Fulll Line entity, grandchildren of Order Line, and great grandchildren
of Order Header.
• You can reference an item aribute in Visual Information Builder or Oracle Business Rules.
871
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
• Don't reference an item aribute that ends with sux _OBSOLETE in the aribute name.
Note.
Here's some code that adds a new fulllment line for item 12345678.
This code deletes the fulllment line that references item 12345678.
This example code modies the ShippingInstructions aribute. It sets the contents of the aribute to the text
Sales credits are 17.
872
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
• Make sure you use each rule only to do work for its intended design. For example, use a product transformation
rule only to transform the product. Don't use it to implement some other functionality.
Note.
• Use parameters, such as Maximum Lines to Aggregate, to aggregate the lines you send to your fulllment
system.
• For details about how to set aributes, see the Actions You Can Set in Routing Rules topic.
• Run several tests and measure the results. Optimize values for each parameter after each test.
873
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Compensation Paern
Note.
• Don't use this rule to set the default value for any other aribute.
874
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Note.
assign Header.mRuleDecision.costOfChange = 10
• Don't use this rule to set the default value for any other aribute.
875
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Note.
• Don't use this rule to set the default value for any other aribute.
Line-Selection Rule
876
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Note.
• Don't use this rule to set the default value for any other aribute.
877
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Note.
• Don't use this rule to set the default value for any other aribute.
878
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Related Topics
• Overview of Using Extensible Flexelds in Order Management
• Guidelines for Pausing Orchestration Processes
• Overview of Seing Up Extensible Flexelds in Order Management
• If the sales order is valued at $50,000.00 or more, then make sure a representative calls the customer before
sending an invoice.
879
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Note.
1. Left Value of the If statement. Species the object the rule compares in the If statement.
DooSeededOrchestrationRules.DOOFLine.extendedAmount
where
◦ DooSeededOrchestrationRules is the name of a dictionary. A dictionary is an XML le that contains rules
organized in rule sets, facts, functions, variables, bucket sets, links, the data model, and so on.
◦ DOOFLine is an object in the dictionary.
• DOO is an abbreviation for distributed order orchestration, which is a name Order Management
used in earlier releases. It means the same as order orchestration.
• extendedAmount is a fulllment line aribute. It contains the total value of the sales order.
• FLine is an alias for fulllment line.
• DOOFLine contains the data model for the fulllment line in order orchestration. For example,
DOOFLine contains the fulllment line aributes, such as orderedQty, customerPONumber,
creationDate, and so on. You can reference these aributes and use their values in your rule.
2. Right Value of the If statement. Species the value the rule uses to determine whether the If statement is
true. The example contains a literal value of 50000. You can also reference an object from the dictionary. If you
reference an object, then the rule uses the value that the object contains at run time to make the comparison.
3. Action. Species how to add your target to the dictionary. You can specify a variety of actions. Assert New
means to add a new fact to the dictionary.
A fact is transactional data that the rule uses, such as the items on a sales order.
◦ An object stores this data. You reference the object when you create a rule.
◦ Order Management provides a hierarchy of facts according to the transactional data for the sales order in
each dictionary.
◦ Each object instance corresponds to a single fact.
◦ You must assert each fact before you can use it in a rule. Assert makes the fact available so you can
reference it elsewhere in the rule, such as in the properties of the Target.
4. Target. Species the object that the rule modies when the If statement evaluates to true. In this example,
if extendedAmount is more than 50000, then the rule will assert the Result object as a fact into the
DooSeededOrchestrationRules dictionary.
5. Edit Properties. Species the properties of the target. If the rule evaluates the If statement to true, then the rule
modies the values of the properties of the target according to how set up these values. Here's the code that
this example uses for the properties.
( resultObj:DooSeededOrchestrationRules.Boolean.TRUE )
where
880
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
The Then statement sets the resultObj property of the Result fact to TRUE. This example is a branching
condition, so the orchestration process examines the value of resultObj at run time. If it contains TRUE, then
the process runs the branch that makes sure a representative phones the customer.
Note.
• Business rules that you add to an orchestration process are part of the orchestration process denition. You
use the Functional Setup Manager to export these denitions from one environment and to import them into
another environment.
• In most situations, an upgrade or patch won't aect your rules, with these exceptions.
◦ The upgrade or patch might overwrite modications you make to a predened rule or decision table.
◦ The upgrade or patch might change rule behavior, and this change might aect the behavior of your
business rules.
Assume you create rule in Oracle If Business Unit 203 or FulllOrdID 207 doesn't exist in your target environment, then
Business Rules. the migration will fail. To avoid this error, make sure these entities exist in your target
environment.
If Business Unit equals "203", then
set FulllOrdID to "207"
Assume you create a rule in Visual If Business Unit Vision Operations or Warehouse Singapore Distribution doesn't exist in your
Information Builder. target environment, then the migration will fail. To avoid this error, make sure these entities
exist in your target environment.
881
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
3. Make sure each rule operation that uses Starts with or Contains includes the full aribute value or ID value.
4. For each aribute that your rule references in the source environment, make sure you also set up each of these
aributes in the target environment.
For example, if a rule in your source environment references the Primary Salesperson aribute, then make sure
the target environment also includes Primary Salesperson.
5. Make sure none of the rules you're about to migrate contain errors.
Migration deletes all rules in the target environment before it does the migration, including rules you don't set
up in the source. For example, if the target includes rules x, y, and z, and if the source includes rules x and y,
then the migration deletes rules x, y, and z from the target, then copies rules x and y from the source to the
target. If the target depends on rule z, then copy rule z to the source before you do the migration.
7. Make sure you release each rule you must migrate.
If you create a business rule in the source environment but don't release it, then the migration won't migrate
the rule. Migration only migrates rules you save and release.
8. If your rule references an extensible exeld, then make sure you set up each of exeld in the same way in the
source environment and in the target environment.
The Manage Conguration Packages page doesn't examine your extensible exeld setup. You must manually
examine your setup.
9. Migrate your rules.
The Setup and Maintenance work area exports business rules from your source environment and
imports them into your target environment.
Related Topics
• Export Setup Data Using Implementation Project
882
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
The page you access depends on the set up you must do. For this example, you modify an orchestration
process denition, so open Manage Orchestration Process Denitions.
3. Access the rule editor.
You access the rule editor in dierent ways, depending on the page you use. For this example, you click Add
to Rule in the Pause Rule column on the step of an orchestration process. For an example, see the Pause
Orchestration Processes Until Events Occur topic.
883
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Do it.
1. Click the magnifying glass (Left Value) to access the Condition Browser.
The Condition Browser displays objects that come predened in the dictionary. It also displays objects that you
assert into the dictionary while you create your rule.
The browser lters the items it displays according to where you access it. This behavior helps make sure you
only choose objects that make sense in the context where you access the browser. For example, here's the
dictionaries that the browser displays when you create a start-after condition.
884
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
The browser displays the objects that this dictionary contains, including facts, variables, and so on.
You usually use only some of the objects that are available in the dictionary. For example, here are the objects
you typically use in the DooSeededOrchestrationRules dictionary.
◦ Result
◦ Date
◦ Timestamp
◦ DOOHeader
◦ SacResult
◦ DOOFLine
885
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
where
886
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
DOO Abbreviation for distributed order orchestration, which is an earlier name for order
orchestration.
billToCustomerId Fulllment line aribute. This aribute stores an identication number for the customer. Its
the same number that displays in the Order Management work area.
A sales order uses the demandClassCode aribute to allow you to classify the customer. Assume your rule must
examine the value of demandClassCode, so scroll down, click demandClassCode, then click OK.
887
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
4. Click Right Value (the magnifying glass) to access the Condition Browser.
The Right Value window species the value that the If statement uses to determine whether its True. Similar
to Left Value, you can expand DooSeededOrchestrationRules to access objects in the dictionary. You can also
specify a string.
For this example, enter "GOLD" in the window, then click OK. You must enclose the string with double quotation
marks.
888
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
889
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Choose an action. For this example, you will assert the Then statement as a new fact into the dictionary.
Action Description
890
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Action Description
Modify Modify a data value that's associated with a matched fact in the dictionary.
Other Actions Advanced mode displays more actions, but you don't use most of them. For details, see How
to Use Advanced Mode Action Forms in Oracle Fusion Middleware User's Guide for Oracle
Business Rules.
891
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
The target species the object this rule will modify if it evaluates to true.
For this example, select object SacResult, where sac means start after condition. The rule will modify this
value.
If you click Edit Properties, the rules editor gets the properties of the object that you selected as the target, then
displays them in the Properties dialog. In this example, it displays the properties of SacResult.
892
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
4. In the reevaluateFlag row, in the Value column, enter "N". You must include the double quotation marks.
Each target contains a dierent set of properties, so you must set them dierently depending on your business
requirements. In this example, reevaluateFlag species to evaluate the result of the start after condition again
after the rule runs. You don't want this reevaluation, so set reevaluateFlag to N.
5. In the Value column, click Value (the magnifying glass).
Use the sacType property to specify the action to take when the If statement evaluates to true. In this example,
you must pause the orchestration process while it waits for an event to occur. The EVENT pause type causes
893
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
the orchestration process to pause, so you set sacType. For details about seing properties for the start after
condition, see the Use Holds to Pause Orchestration Processes topic.
894
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
6. In the Condition Browser, expand DooSeededOrchestrationRules > SacResult, click SAC_TYPE_EVENT, then
click OK.
895
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
7. Verify that the Properties dialog displays your seings, then click OK.
Notice that the Then area displays a string representation of the properties you set. Use this string to quickly
assess the action the rule will do. Here's the complete business rule.
Related Topics
• Pause Orchestration Processes Until Events Occur
• Use Holds to Stop Orchestration Processes
896
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Here are the aributes that are available in the rule header when you use Advanced Mode.
Aribute Description
Priority
Determines when to run each rule when you create a set of rules.
897
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Aribute Description
If Active doesn't contain a check mark, then Order Management doesn't include it during
validation, even if Order Management previously released it as an active rule.
For examples that use Advanced Mode, see the Get Data from Product Information Management topic.
• The business rule uses the data model from Order Management to identify each fact it must use.
• A fact doesn't include data that resides outside of Order Management.
• Use facts for transformation, process assignment, and external interface routing according to business
components in Oracle Application Development Framework (ADF), specically view objects (VO) that expose the
data model.
• View objects provide a hierarchical view of transactional data, such as a sales order. However, each business
rule converts them into rule language (RL) facts. Facts in rule language don't include a hierarchy. You don't
need to manage rule language facts, but this conversion might aect how you create your rule.
• If the fact is a business component in Application Development Framework, and if your rule uses more than
one object type, then you must make sure your rule reestablishes the view object (VO) hierarchy. Reestablishing
the hierarchy makes sure each rule performs at an optimal level.
Property Description
ViewRowImpl References a row in a view object. You use ViewRowImpl to access a row in a database table.
You typically specify this property in the result. Its required in a transformation rule. Its
optional for other business rules.
The Business Components for Java framework instantiates an object of ViewRowImpl for each
record that the view object query returns for the row.
key_values References the oracle. rules. sdk2. decisionpoint. KeyChain object. You can use this property to
get the set of key values for this row and the parent rows of this row. This property is optional.
You can use Advanced Mode with an explicit join to reestablish the hierarchy. You can also use Tree Mode to more
clearly represent the hierarchy in the rule editor.
898
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
If you use Advanced Mode and Tree Mode, then you can select objects in the existing
If you use only Advanced Mode, hierarchy, such as Header, Line, and FulllLine.
and if the If statements and Then
statements in your rule will process a If you use an extensible exeld, then you might need to create more joins.
public view object on the sales order,
then your rule must make sure it
joins each public view object so it
accurately represents the sales order
hierarchy. For example.
Note.
• If you use Tree Mode, then also use Advanced Mode because Advanced Mode helps you to maintain the
hierarchy.
• If you use only Advanced Mode to maintain the object hierarchy, then you must explicitly specify the hierarchy.
For an example, see the Get Data from Product Information Management topic.
• If you use Tree Mode to set the root of an object hierarchy, then the rules editor displays objects only at the
root level or below the root level while you create the rule. This ltering helps to make sure you correctly
maintain the object hierarchy.
• Tree Mode uses the forward slash (/) to indicate hierarchy.
For an example that uses Tree Mode to maintain the object hierarchy and that uses the forward slash, see the Use
Extensible Flexelds in Line-Selection Rules topic.
Related Topics
• Use Extensible Flexelds in Line-Selection Rules
• Get Data from Product Information Management
See these topics for examples that use a decision table and bucket set.
• Create Transformation Rules
• Assign Orchestration Processes
For background details about decision tables, see Working with Decision Tables in Oracle Fusion Middleware User's
Guide for Oracle Business Rules.
899
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Here's an example that uses a decision table. It labels each If statement as a Condition and each Then statement as an
Action.
A bucket set is a container you can use to hold the overall range of values that a group of buckets denes. Use it to
constrain the values that the If statement and the facts in a decision table will consider.
900
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Assume you create a Colors bucket set that includes string values of red and purple. You can write a rule for each color.
You can also write one rule for blue and another rule for purple.
In another example, assume you create a Numbers bucket set that uses integers instead of strings. You can then create
buckets in the Numbers bucket set. Here's the buckets.
• Less than 1
• 1 to 10
• Greater than 10
901
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
You can create a bucket set that species aliases for data that might be dicult to recognize, such as identication
numbers. You can use the toString() function in the If statement to convert the value from the Long data type to a
String alias, such as a product code. In this set up, the bucket set maps each identication number to the product code.
Here's an example bucket set that chunks ranges of values into a large, a medium, and a small bucket.
Way Description
Create a local list of values or a list of Create the bucket set in the decision table.
ranges.
Manually create a global bucket set. Create the bucket set in a product transformation rule, then select bucket set values from a list
of values for each decision table that the rule page displays.
The list of values only includes values that match the data type you're seing up. For example,
assume you set up one bucket set that includes numeric values, another bucket set that
includes text values, then add an If statement that examines numeric data. The list of values in
the If statement will display values only from the bucket set that contains numeric data.
Automatically create a global bucket Use the Generate Bucket Sets scheduled process to create a bucket set from transactional data.
set.
902
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
ORAAccountingRules ORAInvoicingRules
ORACurrencies ORAShipmentPriority
ORADemandClasses ORAFreightTerms
ORAFOB ORAReceiptMethods
ORAModeOfTransport ORAConversionType
ORAPaymentTerms ORACarrier
ORASalesCreditTypes ORASupplier
ORAServiceLevel ORASupplierSite
ORATaxClassicationCodes ORAReturnReason
ORATaxExemptionReason ORACancelReason
ORAUOM ORAReturnReason
903
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
• To avoid data type and object hierarchy problems, you can't use a business rule to do date arithmetic with a
fact. However, you can create a rule that does date arithmetic in an orchestration process.
• A date aribute use the time stamp data type.
Here's an example that uses an If statement to set up fline as the alias for the fulllment line. It compares the time of
the scheduled ship date to the current date, and uses milliseconds in the comparison conversion.
If fline.scheduleShipDate.time>=CurrentDate.date.timeInMillis
In another example, here's some code that calculates the scheduled arrival date to occur three days after the current
date.
If fline.scheduleArivalDate.time>= CurrentDate.date.timeInMillis+3*24*60*60*1000
where
• 3 is the number of days.
• 24 is the number of hours in one day.
• 60 is the number of minutes in one hour.
904
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Here's a dialog that sets up a business rule for the line selection criteria in an orchestration process.
Note.
If the requested arrival date occurs DooSeededOrchestrationRules. DOOFLine. requestArrivalDate. time more than CurrentDate.
earlier than three days after the date. timeInMillis+3*24*60*60*1000
current date, then skip this step.
If you use this kind of calculation in the THEN clause, then make sure your rule doesn't modify or overwrite the original
value. You might need to assign a temporary variable to hold the calculation before your rule populates the result
object.
905
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Here's an example of a lead time expression in a business rule on an orchestration process. fline represents the
fulllment line object and DateTime represents the temporary variable.
Action Code
Function Example
Note.
• Use these functions for each aribute that's a Timestamp data type, including a temporary variable that you
declare with the Timestamp object.
• You can manually enter the function after you select the aribute. You can also open the Expression Builder,
click the Functions tab, then open the folder next to the date aribute.
• The format for each function, except compareTo, is true or false, and this format doesn't require quotation
marks.
• Here's the format that compareTo uses.
◦ -1. The object to the left of compareTo occurs before the object to the right of compareTo.
◦ 0. The object to the left of compareTo occurs at the same time as the object to the right of compareTo.
906
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
◦ 1. The object to the left of compareTo occurs after the object to the right of compareTo.
Manage Errors
Each business rule validates your syntax when you save your rule. It displays errors in the error pane at the boom of
the page or dialog.
For example.
Manage Conicts
Each business rule provides conict management for your decision tables.
• The business rule displays conicts between the If statement and the Then statement.
• You can use the exclamation point (!) on the tool bar to toggle visibility of the conict.
907
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
• The business rule identies each rule that the conict aects, including rules that depend on a conicted rule.
For example, if rule A is conicted, and if Rule B depends on Rule A, then Rule B also displays as conicted.
• An icon on the decision table toolbar identies a missing set up in your business rule. For example, if you add
bucket set elements but don't use them in your rule, then the page displays an icon.
• The page might display the rules you must add to correct the set up. You can select a rule to add it to your set
up, but you aren't required to select them. Instead, you can create a dierent rule to correct the set up.
This feature is useful when you create a bucket set that includes a large number of values. Each bucket set
allows you to choose Otherwise when it isn't necessary to individually specify each selection.
Here's an example where a new rule is in conict with three other rules.
Aribute Description
ModifyEntity
Modify an entity.
908
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Aribute Description
• arName(String)
• arValue(Object)
• viewRowImpl(oracle.jbo.server.ViewRowImpl)
Note.
• If you don't use the list of values to set arName(), then you must enclose the aribute
that you provide with quotation marks.
• The name of the aribute is the required data type, not the value of the aribute at run
time.
• Make sure your rule populates the ModifyEntity arguments when your rule uses them to
do an action.
• ModifyEntity behavior is dierent from the Modify action you use on menus on the
Manage Product Transformation Rules page.
AddNewOrderLine
Add an order line to a sales order.
• newItemId(Long)
• viewRowImpl(oracle.jbo.server.ViewRowImpl)
DeleteOrderLine
Delete an order line from a sales order.
Arguments.
• fulllmentLineId(Long)
• viewRowImpl(oracle.jbo.server.ViewRowImpl)
For example.
Note that viewRowImpl(oracle.jbo.server.ViewRowImpl) represents the current object instance. For example, a
fulllment line record.
909
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
These functions work at the aribute level. You can nd them on the Functions tab of the Expression Builder dialog as
the rst entries under each object.
You can also use predened date functions on each date aribute.
Function Description
getAdjustedDate(Timestamp, Double) Add or subtract the value of argument Double (in days) from the Timestamp argument,
depending on the sign, and then returns the result in the Timestamp argument.
subtractFromDate(Timestamp, Subtract the value of the second Timestamp argument from the rst Timestamp argument.
Timestamp)
If the second Timestamp argument is empty, then subtractFromDate subtracts the current
date from the rst Timestamp argument.
subtractFromDate returns the number of days as a BigDecimal() value.
Function Description
hasChanges() Determine whether extensible exeld values in the change order are dierent from values
that the previous version of the sales order contains.
You can also use these functions. You must prex the aribute name with an underscore (_), and you must enclose the
aribute name in quotation marks.
Function Description
aributeChanged(String) Determine whether the value of an aribute in the change order is dierent from the value that
the previous version of the sales order contains.
Use it on the order header, fulllment line, or extensible exeld context.
910
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Function Description
getFlexAributeValue(String) Get the value of an extensible exeld aribute of data type String.
Use it only on an extensible exeld context.
getFlexAributeDateValue(String) Gets the value of an extensible exeld aribute of data type Date in time stamp format.
Use it only on an extensible exeld context.
getFlexAributeNumValue(String) Get the value of an extensible exeld aribute of data type Number.
Use it only on an extensible exeld context.
For details about using a business rule with an extensible exeld, see the Use Extensible Flexelds with Order
Management topic.
911
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
912
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
• If task type is shipment, then set the connector to Connect to Oracle Fusion Shipping System
Do it.
Limitations
• You can't use a decision table. If you created a rule in an earlier version of Order Management that uses a
decision table, and if you prefer to use Visual Information Builder to replace this rule, then use the IF-THEN-
ELSE structure in Visual Information Builder to replace the decision table. For an example, see the Manage
Process Assignment Rules topic.
• Don't use Visual Information Builder and Oracle Business Rules at the same time in the same implementation.
Use Visual Information Builder or Oracle Business Rules for all your rules.
• You can't create a global variable for use in a rule.
• You can't create collections of objects in conditions.
• Don't reference an object that includes the text _Obsolete when you create your rule. _Obsolete indicates that
business rules might no longer support the object in the current or future release.
913
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
• If the task type is Compliance Check, and if the compliance value is less than 100, then set the connector to
ComplianceCheckConnector, and set the interface type to SDO.
914
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Aribute Value
915
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Related Topics
• Route Requests from Order Management to Fulllment Systems
916
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
For example.
917
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Aribute Value
918
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Notice that the Active indicator for the Pretransformation Default Rule for Warehouse rule is green.
4. Click Publish.
Order Management publishes each of the rules that are active on the Manage Pretransformation Defaulting
Rules page.
• If the source system is a legacy system, and if the quantity is more than 1,000, and then use carrier Fedex, else
use carrier UPS.
In your shipping environment, assume you typically use Fedex (Federal Express) to deliver small to medium size
packages, and you use UPS (United Parcel Service) to deliver large packages.
919
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
You can add the OR, ELSE, THEN, and AND conditions to meet your business requirements.
Related Topics
• Transformation Rules
• How Order Management Transforms Source Orders Into Sales Orders
• How Order Management Transforms Order Lines Into Fulllment Lines
920
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
921
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
Part One
Create the Routing Rule and First IF Condition
1. In the Setup and Maintenance work area, go to the task.
◦ Oering: Order Management
◦ Functional Area: Orders
◦ Task: Manage Process Assignment Rules for Sales Orders
2. On the Manage Orchestration Process Assignment Rules page, click Create New Rule.
3. Change the rule name.
922
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
8. Click Save.
Create the Second IF
1. Below the IF area, click ELSE > IF.
2. Name the If statement so it describes the meaning of the condition.
923
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
3. Click New Action (the dashed circle in the DO area), then click Perform an Action.
4. In the Create Action dialog, enter process name, wait a moment, click Process Name (Order Fulll Line), then
click Search.
5. In the Search dialog, enter DOO_, then click Search.
6. In the ProcessName area, click DOO_OrderFulllmentGenericProcess, then click OK.
7. In the Create Action dialog, click OK.
Notice that the DO area displays text.
8. Click Save.
Create the Third IF
Returns for dierent types of fulllment lines might require Order Management to use dierent fulllment processing.
In this example, you set up the rule to consider only returns for credit.
• If Line Type isn't empty, and if Line type is equal to Return for credit
Do it.
1. In the area to the right of condition IF category = RETURN, click THEN > IF.
2. Name the IF so it describes the meaning of the action.
924
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
◦ In the upper right corner of the Line Type is Blank area, click Select (the circle with the solid line), then
wait for it to display a blue check mark.
◦ In the upper left corner of the page, next to the trash can, click Group.
Notice that the IF Line Type = Credit Only area now displays the This Condition is True area around the
Line Type is Blank area. This grouping is equivalent to adding parenthesis inside your statement.
In this example, you group Line Type is Blank to test whether this statement is true or false. To group a
set of statements, you select each statement, then click Group.
◦ Click true.
Notice that true changes to false. In this example, when you run the rule, you must make sure the line
type is blank condition is false because you want Order Management to assign the orchestration process
only if the line type contains a value.
6. In the IF line type = credit only area, click the AND that resides outside of the this condition is false area.
7. In the Create Condition dialog, enter line type, wait a moment, then click Line Type (Order Fulll Line).
8. Set the condition to is equal to Return for credit, then click OK.
Notice that the IF area now displays text.
◦ Line type is equal to Return for credit
9. Click Save.
Part Two
Create the DO That Assigns the Orchestration Process When Receiving Returns for Credit
1. In the area to the right of condition IF line type = credit only, click THEN > DO.
2. Name the DO so it describes the meaning of the action.
◦ In the DO area, click Enter Description.
◦ In the Enter Description dialog, enter Set process to BillOnly, then click OK.
3. Click New Action (the dashed circle in the DO area).
925
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
4. In the Create Action dialog, enter process name, wait a moment, click Process Name (Order Fulll Line), then
click Search.
5. In the Search dialog, enter %Bill%, then click Search.
The percentage symbols (%) are wildcards that search for all values before and after the text Bill. This search
returns orchestration process names that contain the text Bill.
6. In the ProcessName area, click DOO_BillOnlyGenericProcess, then click OK.
7. In the Create Action dialog, click OK.
Create the DO That Assigns the Orchestration Process for All Other Returns
1. Immediately below the IF line type = credit only condition , click ELSE > DO
2. Name the DO so it describes the meaning of the action.
8. Click Save.
Create the DO That Assigns the Orchestration Process for All Other Sales Orders
Assign the orchestration process to use for the sales orders that don't meet the other IF conditions.
1. Immediately below the IF category = RETURN condition, click ELSE > DO.
2. Name the DO so it describes the meaning of the action.
8. Click Save.
926
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
1. On the Manage Orchestration Process Assignment Rules page, notice that the Active indicator for the Default
Process Assignment Rule rule is grey.
2. Right-click Default Process Assignment Rule, then click Actions > Edit.
3. In the Default Process Assignment Rule dialog, add a check mark to option Activate Rule, then click Save and
Close.
Notice that the Active indicator for the Default Process Assignment Rule rule is green.
4. Click Publish.
Order Management publishes each of the rules that are active on the Manage Orchestration Process
Assignment Rules page.
Related Topics
• Overview of Assigning Orchestration Processes
927
Oracle SCM Cloud Chapter 6
Implementing Order Management Business Rules
928
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
7 Features
Approvals
Overview of Seing Up Approval
Set up Order Management Cloud to route each sales order for sales order approval.
Sales order approval is a process that includes one or more approvers who must approve a sales order before Order
Management sends it to order fulllment. An approval rule determines whether to do approval. Here are some
examples.
Assume your company policy limits the discount you provide to your customer to 10%. Create a rule to implement the
policy.
If an Order Entry Specialist adds a 20% discount, then route the sales order to an Order Manager for approval.
Note.
• You can set it up to accept or reject the sales order according to a variety of approval rules, and on a variety of
sales order aributes.
• Use approval to streamline how you enforce a policy, such as to streamline communication between the Order
Entry Specialist and one or more approvers, and to improve the experience for people who enter and approve
the order.
• Approving the sales order before starting order fulllment can reduce the number of sales orders that Order
Management must return to Draft status because they don't meet a fulllment requirement for some reason,
which in turn reduces rework after fulllment starts.
929
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Approval includes at least one Order Entry Specialist and one or more approvers. Consider an example where you need
approval when the sales order total exceeds $10,000.
Note.
1. An Order Entry Specialist creates a sales order, and then clicks Submit.
930
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
2. If the Source Order System value that you set in the Start Approval Process for Sales Orders order management
parameter matches the source order system aribute of the sales order, and if Source Order System is Yes, and
if you create an approval rule.
◦ Then. Order Management sets the order status to Approval Pending and routes the sales order for
approval.
◦ Else. Order Management doesn't evaluate any approval rules, even if dened, and proceeds to step 5.
3. The rule you create on the Manage Order Approval Rules page routes the sales order through the approval
process, such as assign and route the sales order to an order manager.
4. The approver uses their Pending Notications page or worklist to view and approve the approval request.
If the approver rejects the approval request, then Order Management sets the sales order status to Draft,
unlocks it, routes it back to the person who created the sales order, and displays a message on the Order page
that describes the rejection.
The person who creates the order can use the Approval Notes tab on the sales order to get approval details,
including suggested actions the approver entered in comments when rejecting the approval request. For
example.
◦ Split the sales order into two separate orders so the total amount of the sales order doesn't
exceed $10,000
5. Order Management sets the order status to Processing, then sends it to order fulllment.
6. Order fulllment fullls the sales order.
Related Topics
• Get Approvals for Sales Orders
• Overview of Approval Management
931
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
For example, assume your in house sta has authority to set discounts that exceed 10%, and they use the Order
Management work area to create sales orders. You also receive orders from a partner, but the partner isn't authorized to
provide these discounts.
Note.
932
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
• Search for the Manage Source Systems task, then use the Create Source System page to create your source
system.
For details, see the Integrate Order Management with Source Systems topic.
• Use the Manage Order Management Parameters page to add your source system to the Start Approval Process
for Sales Orders parameter.
• At run time, Order Management will do approval for each source order where the Source System aribute
equals Partner.
• In this example, the All source system and GPR source system are each No, so the rule runs only when the
source system is Partner.
If you set the Start Approval Process for Sales Orders aribute to No, then the ow doesn't do approval and
proceeds directly to fulllment.
933
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Create Condition
Specify the condition that determines when to do approval according to the value of an aribute.
934
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ Order total
◦ Order charge
◦ Price adjustment
◦ Validation
◦ Order type aribute on the order header
The Manage Order Approval Rules page lters the aributes you can use. Use the tree to choose the aribute, or, more
simply, enter it in the If statement. If you use the Tree, only use aributes under the Order Header branch. Don't use the
HierarchyPrincipal or Task branches.
What should we do if the condition evaluates to true? You have a range of choices, such as Assign to Individual, Assign
to Group, Assign to Supervisors, and so on. The rule editor lters your choices depending on the action you choose.
935
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
• Assign to Individual. A dialog displays where you can choose the individual. It includes other options, such as
Information Only or Approval Required.
• Assign to Group. A dierent dialog displays where you can choose the group.
936
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
• Assign to Supervisors. A dierent dialog displays where you can specify the approval chain, rst approver,
level of supervisors, highest approver, and so on.
937
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
The rule is
If Manual Adjustment Type is Discount Percent, and if Manual Adjustment Value is greater than 10, then assign
approval to Diane Cho.
Notes
• Order Management doesn't come with predened approval rules because they're specic to your requirements.
If you need approval, then you must create an approval rule.
• Sign in with privilege fom_manage_order_approval_rules_priv.
• Approval evaluates each order line, one at a time, sequentially.
• If more than one rule applies for dierent order lines, then approval creates a separate approval ow for each
line that requires approval.
938
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
For example, if approval rule b applies to line 1, and approval rule c applies to line 2, then approval sends
approval request x for line 1 and request y for line 2. The approvers in request x might be dierent from the
approvers in request y, depending on how you set up your rules.
• You can set up a group of approvers. For example, get three separate approvals from user x, user y, and user z
for a single approval request. Use the Manage Approval Groups page in the Setup and Maintenance work area,
and assign the group in your rule. Approval will send notication to each user, sequentially. For example, it will
send notication to user, x, and then y, and then z.
Limitations.
• Order Management approves only the entire sales order. It can't approve only an order line.
• You can't start approval according to order status. For example, you can't start approval depending Draft status
or Processing status. Approval automatically sets status to Approval Pending.
• You can't start an approval ow according to a change in an aribute value during order revision.
• You can't start an approval ow according to comparison between dierent versions of the sales order.
• Use an approval only before Order Management submits the sales order to order fulllment. You can't do
approval during order fulllment.
If your condition references the order total, then make sure your rule species the primary total.
A sales order includes more than one total. For example, it includes the header total, total list price, total net price, total
tax, total credit, and so on. The header total is the primary total. In the price breakdown dialog, it displays on the Pay
Now row.
Assume you create an approval rule that lters only according to Order Total Amount is greater than 10,000. At
runtime, the rule will create a separate approval request for each order total that's greater than 10,000 although you
require only one approval request for the sales order.
To avoid this problem, add another condition that lters approval according to Primary equals Yes. This way, the rule
evaluates only the primary order total, ignores the other totals, and sends only one approval request.
For example.
939
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
940
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
• Use the Manage Task Congurations for Supply Chain Management task in the Setup and Maintenance work
area.
• Search for and edit task ApprovalHumantask. Don't edit the TaskApproval task because its for supply orders,
not sales orders. Don't edit ApproversTask. Its for another type of ow.
• Use the tabs to specify a range of behavior.
941
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Tab Description
Access
◦ Who can access data
• Use participant when you set up the worklist. Don't use other levels, such as position.
942
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Notications
Note.
• Use the Task Status list to specify when to send a notication when the approval status changes.
• Example statuses include Assign, Complete, Error, Request Info, Suspend, Withdraw, Resume, and so on.
• Specify who to send the notication to, such as Assignees, Initiator, Approvers, and so on.
• The initiator is the person who creates the sales order and requests approval. The task assignee is the person
who approves the request.
• The list comes predened to send a notication to the task assignee when the ow changes the status to
Assign, and to send a notication to the initiator when the ow changes the status to Complete.
943
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
• You can change the status, add new statuses, and delete statuses. For example, an approver can Request
Information, Suspend, Withdraw, or Resume an approval request. You can send a notication each time the
approver takes one of these actions.
• As an option, add text to include in the notication header.
Note.
944
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Email "From" Display Name Specify text to include in the From line of the email message.
For details about seing up email, see the Overview of Seing Up Workow Email Notications
topic.
Group Notication Conguration Specify whether to send a separate email to each recipient or to send only one email to all
recipients.
Enable this aribute so approval sends only a single request for the entire order instead of
sending a separate request for each rule.
Make Notication Actionable Let the recipient take action directly in the notication.
Access
945
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Use the Access tab to specify who can see what, where.
Note.
• Access determines visibility of data, such as the history section and comment section of the approval request in
Order Management.
• Specify who, such as administrator, approver, assignee, creator, owner, or reviewer.
• Specify data, such as aachments, assignees, comments, dates, and history.
• Specify what the user can see, such as read aachments or read comments.
Use the Actions area of the Access tab to specify who can do what, where.
946
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
947
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Conguration
Aribute Description
Allow All Participants to Route Task to Allow a participant to send the approval request to another user.
Other Participants
Assume you're an approver and have a large backlog of approval requests. You need to
reassign the request to another approver. Enable this aribute so the approver can route the
approval to another participant.
Allow Participants to Edit Future Allow a participant in the approval ow to add another downstream participant.
Participants
Allow Initiator to Add Participants Allow the person who creates the sales order to add an approver or reviewer to the approval
request.
Mandate Comments Before Updating Make comments required and use them to establish an audit trail.
These Outcomes
Complete Parallel Subtasks Early Use a subtask to separate an approval request into dierent parts.
Complete Parent Tasks of Early Assume you work at company headquarters and receive a large order with a quantity of 1,000.
Completing Subtasks You are authorized to approve large quantities for the customer but you rst must make sure
you can deliver the quantity by the delivery date. Create a subtask and approval will send a
request to someone in your warehouse or factory to verify they can meet the delivery deadline.
For example, if the hold occurs because of a licensing eective date, then the Order Manager can choose to
release the sales order to fulllment, then manage the license problem at some later time.
Related Topics
• Overview of Using Business Rules With Order Management
• Manage Order Management Parameters
• Overview of Approval Management
• More Setup for Workow Email Notications
948
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
• If the order total is greater than $10,000, and if the Primary is yes, and if the customer is Computer Service and
Rentals, then request and get approval from a manager.
949
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Notice that the dialog displays suggestions when you wait a moment after you nish typing.
10. In the Create Condition dialog, set values, then click OK.
Field Value
Value 10000
950
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Field Value
Aribute Primary
Condition Is equal to
Value Yes
Field Value
Aribute Customer
Condition Equals ( =)
4. Click Search.
5. In the Search dialog, in the Name aribute, enter Computer Service and Rentals, then click Search.
6. In the search results, click Computer Service and Rentals, then click OK.
7. In the Create Condition dialog, click OK.
Notice that the IF area now displays the condition.
◦ Customer = Computer Service and Rentals
951
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
8. Click Save.
Create the DO
1. Click THEN > DO.
2. Name the DO so it reects the meaning of the action.
◦ Click Enter Description.
◦ In the Enter Description dialog, enter Assign to Order Manager, then click OK.
3. Click New Action (the dashed circle in the DO area), then click Perform an Action.
4. In the Create Action dialog, set the action to Assign to Job Level.
5. In the Create Action dialog, verify the values.
Field Value
6. Click Search.
7. In the Search dialog, next to Users, enter manager, then click Search.
8. In the Search for Highest Possible Approver dialog, in the manager row, click the radio buon, then click OK.
9. Verify that Highest Possible Approver contains manager, then click OK.
Notice that the DO area now displays the condition.
◦ Assign to Job Level
952
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Order Management publishes the active rules that display on the Manage Order Approval Rules page.
Aribute Value
Amount Add items to an order line so that the Amount exceeds $10, 000.
2. Verify that Order Management updates the order status to Approval Pending.
3. Click View Approval Information, then verify the approval details reect the approval rule you created.
4. In a separate browser session, sign into Order Management with the Order Manager job role.
5. Open the Pending Notications page, locate the link for the approval request, such as Action Required:
Approval Request for Order 258093, then click Approve.
6. Navigate to the browser session for the Order Entry Specialist, refresh the page, then verify that the order
status is now Processing.
953
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Related Topics
• Get Approvals for Sales Orders
• Manage Order Management Parameters
• Send a reminder to the approver one hour before the approval request expires.
• Include text in the From line of the email notication.
Order Entry Specialist Requests Your Approval
• Send only one email to all users who participate in the approval request. Don't send separate emails.
• Allow everyone to read aachments and comments, but don't allow reviewers to edit them.
• Allow the assignee and owner to send an information request, but allow only the assignee to approve it.
• Assume your company policy requires an audit trail, so make sure each approval and each rejection contains a
comment.
954
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Reviewers Li Yu
Aribute Value
Day 1
The approval request will expire one day after approval sends the request to the approver.
Hour 0
Minutes 0
Set Up Notications
1. Click Notications.
Notice the Task Status list comes predened with a separate row for three dierent statuses.
Assign Assignees
Complete Initiator
Error Owner
◦ In the assign row, in the Notication Header column, click the pencil.
◦ In the Edit Notication Message dialog, enter text, then click OK.
955
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
The notication that approval sends to the approver will include this text.
3. Add a reminder.
Aribute Value
Repeat 1
Frequency Day 0
Hour 4
Minutes 0
Approval will send the reminder four hours before the deadline expires. You set the
deadline at 1 day, so approval will send the reminder 20 hours after approval sends the
request to the approver.
Aribute Value
Set Up Access
1. Click Access, then set values.
956
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Task Content Individuals with Read Access Individuals with Write Access
◦ Approvers
◦ Assignees
◦ Creator
◦ Owner
◦ Reviewers
Information Request
Make sure each option contains a check mark.
◦ Assignees
◦ Owners
Approve Make sure only the Assignees option contains a check mark.
Set Up Conguration
1. Click Conguration, then set values.
Aribute Value
◦ Reject
Related Topics
• Overview of Using Business Rules With Order Management
• Manage Order Management Parameters
• Overview of Approval Management
• More Setup for Workow Email Notications
957
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
This topic includes example values. You might use dierent values, depending on your business requirements.
Aribute Value
◦ On the Select Oerings to Implement page, in the Order Management row, add a check mark to Include,
then click Save and Open Project.
◦ In the Task Lists and Tasks area, click Actions > Select and Add.
◦ In the Select and Add dialog, set Search to Task, search for Manage Order Approval Rules, then click
Apply > Done.
◦ On the Implementation Project page, click Done > Done.
3. Create the conguration package you will use to implement the project that you created in step 2.
◦ On the Setup page, click Tasks > Manage Conguration Packages.
◦ On the Manage Conguration Packages page, click Actions > Create.
958
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ On the Create Conguration Package page, in the Source Implementation Project area, set values.
Aribute Value
◦ In the Conguration Package Details area, make a note of the value that displays, then click Next >
Submit.
Aribute Value
Aribute Value
◦ In the Download column, click Download, then click Download Conguration Package.
◦ Save the le to a location on your computer. Make a note of the location and the le name, such as
Project to Export Approval Rules_1_20180310_1805.zip.
◦ Click Done, then sign out of Order Management.
4. Import the rule dictionary that you downloaded in step 4.
◦ Sign into the Order Management instance where you must import the approval rules.
◦ In the Navigator, click Setup and Maintenance.
◦ On the Setup page, click Tasks > Manage Conguration Packages.
◦ On the Manage Conguration Packages page, click Upload, locate the le you downloaded in step 4, click
Get Details > Submit.
◦ In the Search Results area, click the row that includes the value.
Aribute Value
959
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Type Upload
Aribute Value
◦ In the Search Results area, click the row that includes the value.
Aribute Value
Aribute Value
5. Navigate to the Manage Order Approval Rules page, then verify that your approval rules imported successfully.
Related Topics
• Get Approvals for Sales Orders
• Manage Order Management Parameters
960
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Credit Check
Overview of Seing Up Credit Check
Use credit check in Order Management to minimize the nancial risk that your organization assumes during day-to-day
operations. Validate each sales order and verify your customer has credit available that's sucient to cover the cost of
purchase.
For example.
961
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Order Management can do a credit check on each sales order or on each order line, and can hold an order line that
doesn't pass credit check.
Note.
1. The Order Entry Specialist creates a sales order in Order Management, adds order lines, sets payment terms,
payment method, and Bill-to Customer, then clicks Submit.
2. If you set the Activate Credit Check on Order Submit order management parameter to.
962
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
3. Do credit check.
◦ Receivables does credit check. If credit check.
• Passes. Receivables sends the result to Order Management, and Order Management orchestrates
fulllment.
• Fails. Credit check continues.
4. Order Management processes the sales order depending on how you set the value of the Credit Check Failure
at Order Submit order management parameter.
Value Description
Save Order in Draft Status Save the sales order in Draft status and don't proceed to fulllment. Wait for the credit
analyst to approve or decline.
Submit the Order with Hold on Lines Save the sales order in Processing status, place a hold on each order line that fails credit
That Failed Credit Check check, then send order lines that aren't on hold to fulllment.
For details, see the Handle Credit Check Failure section later in this topic.
5. Receivables creates a case folder for the credit request and determines credit status.
Status Description
Failed Receivables sends the credit check result to Order Management, including credit
authorization number, credit authorization amount, and credit expiration date.
The credit analyst uses the Credit Reviews page in the Receivables work area to examine the case folder, then
approves or declines the credit request. Receivables sends the result of the credit review to Order Management.
6. If the credit analyst.
◦ Approves. Receivables sends the authorization ID, date, Bill To, and release reason to Order
Management. Order Management sets the status to Processing and orchestrates fulllment for the entire
sales order.
◦ Declines. Order Management sets the status to Draft and doesn't send any part of the sales order to
fulllment. The Order Entry Specialist must revise the sales order.
Note.
• Credit check establishes a credit line only for a single currency, and only for the customer account.
• Order Management runs credit check when the user submits the sales order, and immediately before running
approval. If credit check succeeds, and if approval fails, then Order Management removes authorization for the
authorization number, then gets a new authorization number after the user resubmits the sales order.
• If the Order Entry Specialist modies an aribute that aects payment sometime after Order Management runs
credit check, then Order Management runs credit check again. Bill-To Customer is an example of an aribute
that aects payment.
963
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
• If the Order Entry Specialist cancels a sales order before fulllment nishes, then Order Management
communicates with Credit Management in Receivables to reverse the credit amount of the sales order. It
reverses this amount in the customer account in Oracle Fusion Financials.
• Credit limit, minus the open balance, minus total outstanding authorization, equals available credit.
• $2,000 credit limit, minus $0 open balance, minus $500 outstanding authorization, equals $1,500 available
credit.
• $1,500 available credit exceeds the $1,000 item cost, so Receivables authorizes the purchase, and then sends
an authorization number, expiration date, authorization amount of $1,000, and available credit to Order
Management. Receivables uses the same currency that the sales order uses.
You can use the Receivables work area to dene a dierent formula, such as modifying credit limit, including shipping
charges and taxes, and so on. For details, see Oracle Credit Management User Guide on Oracle Help Center.
This section assumes you enable the Credit Management feature in Receivables.
If any order line fails credit check, then the entire sales order fails during order submit.
◦ Updates the Credit Authorization Number aribute and the Expiration Date aribute on the sales order.
964
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ Displays a message for the fulllment lines. The message contains case folder details, such as Closure
Date, Status, and Closed By. For details, see the Release Holds for Order Lines That Fail Credit Check
topic.
◦ Changes order status and continues processing depending on how the credit analyst sets the
recommendation.
This section assumes you enable the Credit Management feature in the Receivables work area.
Approve Source Transaction Release credit check hold on fulllment lines and send them to order fulllment.
Credit Request
Decline Source Transaction Credit Doesn't release credit check hold on fulllment lines. These lines remain on hold, and
Request Order Management doesn't send them to order fulllment.
The Order Entry Specialist can query or cancel failed lines, but can't revise them.
965
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
• If a revision fails credit check, then Order Management sets the status to Credit Review Pending regardless of
how you set the order management parameter.
• If the sales order or order revision is in the Credit Review Pending status, then the Order Entry Specialist can't
make any changes. The Order Entry Specialist must use the Revert to Draft action, and then make changes.
• If you enable or don't enable the Credit Management feature.
◦ Enable. Order Management waits for the credit analyst to close the case folder before submiing failed
lines to order fulllment.
◦ Don't enable. The Order Entry Specialist must manually revise the revision to a draft, modify the sales
order, such as delete lines that failed credit check, reduce quantity so the sales order total doesn't exceed
credit limit, and so on, and then resubmit.
• The revision must successfully pass credit check so Order Management can merge the Draft sales order into
the Processing instance of the same sales order that's currently running in order fulllment.
This section assumes you don't enable the Credit Management feature in Receivables, and credit check fails during
order submit.
1. Order Management takes action depending on the value of the Credit Check Failure at Order Submit
parameter.
Value Result
Save Order in Draft Status Set order status to Credit Review Pending.
Wait for the credit analyst to resolve the issue and close the case folder.
Don't submit any order lines to order fulllment.
2. Credit analyst resolves the issue and closes the case folder.
3. Order Entry Specialist must revise the sales order, then resubmit it.
Related Topics
• Release Holds for Order Lines That Fail Credit Check
• Reauthorize Payment
• Manage Order Management Parameters
966
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
967
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
• Option 1. Check credit when the Order Entry Specialist clicks Submit when creating or revising a sales order.
◦ Submit the sales order to order fulllment but hold order lines that fail credit check.
◦ Don't submit the sales order to order fulllment. Instead, set the status to Credit Review Pending, and
route the sales order to a credit analyst to do credit check.
• Option 2. Check credit during order fulllment. For example, add a credit check step to the orchestration
process after scheduling and reserving the item, but before shipping it.
• Option 3. Check credit during order entry at order submit, then check credit again during order fulllment.
Order Management processes credit check dierently during order submit or order fulllment.
How does Order Management send order Send order lines as a group according to Send one fulllment line at a time.
lines to Credit Management? bill-to customer.
What happens when an order line fails Set fulllment line to error.
credit check? Order Management does one of these.
• Place order line on credit check
hold.
• Lock order line, set status to Credit
Review Pending, and wait for credit
analyst to review case folder.
Limitations Credit check occurs only for all order lines Order Entry Specialist can't manually
in the entire sales order. You can't check proceed past the credit check. Can only
credit for a single line or only for some retry the step.
lines.
Order Entry Specialist can't modify
aributes that aect credit while the
fulllment line is on credit check hold.
Order Entry Specialist can only cancel the
line.
Order Management processes credit check dierently depending on the state of the order lines.
968
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
State of Order Lines Check Credit On Submit Check Credit During Order Fulllment
Order Management rechecks each line Allow all changes. Apply normal change
Lines are in order fulllment, and. that it checked earlier during submit. processing.
It does the recheck regardless of the
• Before credit check step. change. It creates a new authorization. If Order management nished credit
• In error because credit check failed check during order fulllment, and if credit
during fulllment. check fails when processing the change,
• Credit check nished. then Order Management doesn't allow the
Order Entry Specialist to revise the sales
order. You must use error recovery to x
the problem.
In order fulllment, on credit hold. Allow all changes. Apply normal change
If changed aributes. processing.
• Aect credit. Reject revision.
• Don't aect credit. Recheck credit.
• Your fulllment cycles run for a long time. For example, run credit check immediately before shipping to make
sure credit authorization hasn't expired while process the sales order through fulllment.
• You import sales orders from a source system, the source system already checked credit, so you don't want
to check credit again when submiing the order to fulllment. But you also don't want to send the order to
shipping if credit authorization expired. A long delay might exist between the time the source system checks
credit and when the item is ready to ship.
969
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
◦ If credit check passes the rst time Receivables performs credit check, then it creates an authorization
number and authorization expiration date.
970
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
For example, assume you do credit check during order submit on January 1, 2019, credit check passes,
and Receivables sets the expiration date to January 10, 2019. If the orchestration process runs the credit
check step on.
• January 2 during fulllment, then it won't run credit check again, but will instead proceed to the
next orchestration process step.
• January 11, then it will run credit check again.
◦ The orchestration process sends only the fulllment lines that require credit check. It doesn't send the
entire sales order.
4. If credit check fails, then the fulllment line goes into error and processing stops.
971
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
Value Description
972
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Value Description
Use when.
• Your sales order includes more than one value for Bill-to Customer on the order lines,
and you must move the order to fulllment only if credit check passes for all bill-to
customers.
• You don't need to do credit check during fulllment.
• You don't need to release credit check hold so fulllment can continue. You can wait for
the credit analyst to resolve the hold.
Use when.
• Your sales orders sometimes include more than one value for Bill-to Customer on the
order lines, and you must move the order to fulllment even if credit check fails for
some or all bill-to customers.
For example, if credit check for Bill To Customer x succeeds, and if credit check for Bill
To Customer y fails, then Order Management can send order lines for customer x to
order fulllment, and place order lines for customer y on hold.
If order lines include only one Bill To Customer value, then Order Management uses the
order total when it checks credit.
• You don't revise aributes that aect credit check, or you might cancel the failed lines.
• You must release credit check hold so fulllment can continue, even if you must
manually release the hold.
Question Description
Why does Order Management place The orchestration process orchestrates and Order Management tracks each fulllment line
credit check hold on the fulllment separately so they can optimize fulllment.
line instead of on the order header
when all fulllment lines of the sales For example, if supply is available for lines x and y but not z, then it can reserve supply and
order fail credit check? move to the next orchestration process step for x and y.
If Order Management placed the hold on the sales order instead of the fulllment lines, then it
would have to pause orchestration for all lines while it waits for supply to become available for
z.
How can we allow fulllment lines Manually release the credit check hold. To make sure you don't ship a line that fails credit
that are on credit check hold to check, add another orchestration process step that does credit check. Add it after the
proceed beyond scheduling? scheduling step.
Assume credit check fails during You must retry the step and it must pass credit check so the fulllment line can move forward
fulllment and the credit check step is in the ow.
in error. Can we manually get that line
past the credit check step? You can't manually remove a hold because Order Management doesn't place a hold when
credit check fails during fulllment. It only places the line in error.
973
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Related Topics
• Release Holds for Order Lines That Fail Credit Check
• Reauthorize Payment
• Manage Order Management Parameters
974
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
• Inventory is out of stock for the item and requires several days to replenish.
• The credit that's available for a customer might decrease during this time because the customer continues to
make other purchases.
975
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
You can add a credit check step at any point in the orchestration process. For example, to occur immediately before
shipping. Use this functionality to make sure the credit check is accurate and up to date so you don't ship an item when
customer credit no longer covers the purchase amount.
For example, you can add a credit check step to an orchestration process immediately after the Reserve step, and
immediately before the Ship step.
Here's the values you set for the credit check step you add.
976
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Step Name Enter text that describes the step, such as Credit Check.
If credit check fails when you run it from the DOO_CreditCheck task, then credit check sets the task to an error state,
stops processing order lines, and pauses the orchestration process. To recover, you must set up the Recover Tasks
scheduled process. Aempting to release a hold won't resume processing.
If you add a credit check step to an orchestration process, and if the orchestration process already checked credit for
the sales order before order submit, then Order Management examines the expiration date of the credit check.
• If the current date occurs after the expiration date. Order Management does the credit check.
• If the current date occurs on or before the expiration date. Order Management doesn't do the credit check.
Related Topics
• Manage Order Management Parameters
• Orchestration Processes
For details about case folders and the set ups you must do to use them, see these books on My Oracle Support.
• Oracle Financials Cloud, Implementing Receivables Credit to Cash
• Oracle Financials Cloud, Using Receivables Credit to Cash
In this example, you will allow user Aaron Holmes to close case folders.
1. Assign a role to your user that allows the user to view and approve credit.
For details, see Oracle Credit Management User Guide.
2. Sign into Order Management with the predened it_security_manager job role.
3. In the Navigator, click Setup and Maintenance.
4. In the Setup and Maintenance work area, go to the task.
◦ Oering: Order Management
977
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
The Security Console displays the Roles page after you click Manage Job Roles. For details, see book
Securing Oracle HCM Cloud.
5. Add your user to the Credit Manager job role.
◦ On the Roles page, search for, then open the Credit Manager job role.
◦ Click Actions > Copy Role.
◦ In the Copy Options dialog, click Copy Top Role and Inherited Roles > Copy Role.
◦ On the task-based page that displays, click Next four times until Users is the active step on the task line.
◦ On the Copy Role Credit Manager Custom Users page, click Add User.
◦ In the Add User dialog, in the search window, enter the predened user ar_mgr_operations, then click
Search.
If you don't use a predened user, but instead create your own user, then make sure the user includes a
role that allows the user to close case folders.
◦ In the search results, click the row that contains Aaron Holmes, the user you must add, then click Add
User to Role > Cancel.
◦ Conrm that the Copy Role Credit Manager Custom Users page displays the user you just added, then
click Next > Submit and Close.
6. Import the user and role.
Repeat until this value displays for the Import User and Role Application scheduled process.
Aribute Value
Status Succeeded
Related Topics
• Manage Order Management Parameters
• Orchestration Processes
978
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
979
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ Notice that you can use the Release Hold dialog to set values and release the hold.
980
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ On the Manage Hold Denitions page, click Query by Example, enter the value, then press Enter on your
keyboard.
Aribute Value
Aribute Value
◦ In the search results, click the row that includes Order Manager, then click Apply > OK.
◦In the Details area, make sure the Release Hold aribute contains a check mark, then click Save and
Close.
3. Test your set up.
Notice that Order Management changes the Status aribute on the order line from Not Started to
Scheduled. If the status doesn't change, wait a moment, then try again.
◦ Click Actions > Switch to Fulllment View.
◦ Click Fulllment Lines.
981
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ In the Details area, click Holds, then examine the release details.
Related Topics
• Manage Order Management Parameters
• Orchestration Processes
982
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Set aributes in the payload you use to import your source order.
983
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Description
PreCreditCheckedFlag
Set the value.
• True. Don't check credit. Order Management won't do credit check on the source order
even if you enable credit check for the business unit.
• False. Do check credit.
CreditCheckAuthorizationExpiryDate
Set to a date value, such as 2016-10-05T10:00:00Z.
Order Management uses the value that you set to populate the Expiration Date aribute on the
order line.
Note.
• You can reference PreCreditCheckedFlag from a transformation rule or an order management extension.
• You can send PreCreditCheckedFlag only through order import.
• PreCreditCheckedFlag doesn't display in the Order Management work area.
To view the code and date, in the Order Management work area, navigate to a fulllment view, then open a sales order.
On the Order page, in the Fulllment Line Details area, in the Aributes area, on the Billing tab, in the Credit Approval
area, note.
For example.
984
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
985
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
<ns2:BuyingPartyContactId></ns2:BuyingPartyContactId>
<ns2:BuyingPartyContactName></ns2:BuyingPartyContactName>
<ns2:BuyingPartyContactNumber></ns2:BuyingPartyContactNumber>
<ns2:CustomerPONumber></ns2:CustomerPONumber>
<ns2:TransactionalCurrencyCode>USD</ns2:TransactionalCurrencyCode>
<ns2:TransactionalCurrencyName></ns2:TransactionalCurrencyName>
<ns2:TransactionOn>2017-06-07T10:10:10</ns2:TransactionOn>
<ns2:PlacedOn></ns2:PlacedOn>
<ns2:RequestingBusinessUnitIdentifier>204</ns2:RequestingBusinessUnitIdentifier>
<ns2:TransactionTypeCode></ns2:TransactionTypeCode>
<ns2:CurrencyConversionType></ns2:CurrencyConversionType>
<ns2:CurrencyConversionRate></ns2:CurrencyConversionRate>
<ns2:CurrencyConversionDate></ns2:CurrencyConversionDate>
<ns2:TransactionDocumentTypeCode></ns2:TransactionDocumentTypeCode>
<ns2:CancelReasonCode></ns2:CancelReasonCode>
<ns2:CancelReason></ns2:CancelReason>
<ns2:RequestCancelDate></ns2:RequestCancelDate>
<ns2:Comments></ns2:Comments>
<ns2:BatchIdentifier></ns2:BatchIdentifier>
<ns2:RequestingLegalUnitIdentifier>204</ns2:RequestingLegalUnitIdentifier>
<ns2:RequestingLegalUnit></ns2:RequestingLegalUnit>
<ns2:OrigSystemDocumentReference>ManualShipmentProcess</ns2:OrigSystemDocumentReference>
<ns2:InterfaceStatus></ns2:InterfaceStatus>
<ns2:PartialShipAllowedFlag>false</ns2:PartialShipAllowedFlag>
<ns2:FreezePriceFlag>true</ns2:FreezePriceFlag>
<ns2:OperationMode></ns2:OperationMode>
<ns2:PreCreditCheckedFlag>true</ns2:PreCreditCheckedFlag>
<ns2:OrchestrationOrderRequestLine>
<ns2:SourceTransactionLineIdentifier>101</ns2:SourceTransactionLineIdentifier>
<ns2:SourceTransactionScheduleIdentifier>101</ns2:SourceTransactionScheduleIdentifier>
<ns2:SourceTransactionLineNumber>1</ns2:SourceTransactionLineNumber>
<ns2:SourceTransactionScheduleNumber>1</ns2:SourceTransactionScheduleNumber>
<ns2:ProductIdentifier>149</ns2:ProductIdentifier>
<ns2:ProductNumber></ns2:ProductNumber>
<ns2:ProductName></ns2:ProductName>
<ns2:OrderedQuantity>10</ns2:OrderedQuantity>
<ns2:CanceledQuantity></ns2:CanceledQuantity>
<ns2:OrderedUOMCode>Ea</ns2:OrderedUOMCode>
<ns2:RequestedFulfillmentOrganizationIdentifier>204</ns2:RequestedFulfillmentOrganizationIdentifier>
<ns2:RequestedFulfillmentOrganizationCode></ns2:RequestedFulfillmentOrganizationCode>
<ns2:BusinessUnitIdentifier></ns2:BusinessUnitIdentifier>
<ns2:BusinessUnitName></ns2:BusinessUnitName>
<ns2:RequestingBusinessUnitIdentifier>204</ns2:RequestingBusinessUnitIdentifier>
<ns2:RequestingBusinessUnitName></ns2:RequestingBusinessUnitName>
<ns2:CancelReasonCode></ns2:CancelReasonCode>
<ns2:CancelReason></ns2:CancelReason>
<ns2:SubstitutionAllowedFlag></ns2:SubstitutionAllowedFlag>
<ns2:SubstitutionReasonCode></ns2:SubstitutionReasonCode>
<ns2:CustomerPONumber></ns2:CustomerPONumber>
<ns2:CustomerPOLineNumber></ns2:CustomerPOLineNumber>
<ns2:CustomerPOScheduleNumber></ns2:CustomerPOScheduleNumber>
<ns2:CustomerProductIdentifier></ns2:CustomerProductIdentifier>
<ns2:TransactionLineTypeCode></ns2:TransactionLineTypeCode>
<ns2:ParentLineReference></ns2:ParentLineReference>
<ns2:RootParentLineReference></ns2:RootParentLineReference>
<ns2:ShippingInstructions>XYZ</ns2:ShippingInstructions>
<ns2:PackingInstructions>XYZ</ns2:PackingInstructions>
<ns2:InvoicingRuleCode></ns2:InvoicingRuleCode>
<ns2:InvoicingRule></ns2:InvoicingRule>
<ns2:AccountingRuleCode></ns2:AccountingRuleCode>
<ns2:AccountingRule></ns2:AccountingRule>
<ns2:RequestedShipDate></ns2:RequestedShipDate>
<ns2:RequestedArrivalDate>2015-11-15T10:10:10</ns2:RequestedArrivalDate>
<ns2:ScheduleShipDate>2015-11-15T10:10:10</ns2:ScheduleShipDate>
<ns2:ScheduleArrivalDate>2015-11-15T10:10:10</ns2:ScheduleArrivalDate>
<ns2:DemandClassCode></ns2:DemandClassCode>
986
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
<ns2:DemandClass></ns2:DemandClass>
<ns2:IncotermCode></ns2:IncotermCode>
<ns2:Incoterm></ns2:Incoterm>
<ns2:ShippingCarrierCode></ns2:ShippingCarrierCode>
<ns2:ShippingCarrier></ns2:ShippingCarrier>
<ns2:PaymentTerms></ns2:PaymentTerms>
<ns2:PaymentTermsCode>1</ns2:PaymentTermsCode>
<ns2:TransactionCategoryCode>ORDER</ns2:TransactionCategoryCode>
<ns2:ReturnReasonCode></ns2:ReturnReasonCode>
<ns2:ReturnReason></ns2:ReturnReason>
<ns2:ShippingServiceLevelCode></ns2:ShippingServiceLevelCode>
<ns2:ShippingServiceLevel></ns2:ShippingServiceLevel>
<ns2:ShippingModeCode></ns2:ShippingModeCode>
<ns2:ShippingMode></ns2:ShippingMode>
<ns2:ShipmentPriorityCode></ns2:ShipmentPriorityCode>
<ns2:ShipmentPriority></ns2:ShipmentPriority>
<ns2:InventoryOrganizationIdentifier>204</ns2:InventoryOrganizationIdentifier>
<ns2:InventoryOrganization></ns2:InventoryOrganization>
<ns2:FreightTermsCode></ns2:FreightTermsCode>
<ns2:FreightTerms></ns2:FreightTerms>
<ns2:RequestCancelDate></ns2:RequestCancelDate>
<ns2:OriginalProductIdentifier></ns2:OriginalProductIdentifier>
<ns2:OriginalProductName></ns2:OriginalProductName>
<ns2:OriginalProductNumber></ns2:OriginalProductNumber>
<ns2:ShipToPartyIdentifier>1006</ns2:ShipToPartyIdentifier>
<ns2:ShipToPartyName></ns2:ShipToPartyName>
<ns2:ShipToPartyNumber></ns2:ShipToPartyNumber>
<ns2:ShipToPartySiteIdentifier>1036</ns2:ShipToPartySiteIdentifier>
<ns2:ShipToAddress1></ns2:ShipToAddress1>
<ns2:ShipToAddress2></ns2:ShipToAddress2>
<ns2:ShipToAddress3></ns2:ShipToAddress3>
<ns2:ShipToAddress4></ns2:ShipToAddress4>
<ns2:ShipToCity></ns2:ShipToCity>
<ns2:ShipToPostalCode></ns2:ShipToPostalCode>
<ns2:ShipToState></ns2:ShipToState>
<ns2:ShipToProvince></ns2:ShipToProvince>
<ns2:ShipToCountry></ns2:ShipToCountry>
<ns2:ShipToContactPartyIdentifier></ns2:ShipToContactPartyIdentifier>
<ns2:ShipToContactPartyNumber></ns2:ShipToContactPartyNumber>
<ns2:ShipToContactPartyName></ns2:ShipToContactPartyName>
<ns2:BillToCustomerIdentifier>1002</ns2:BillToCustomerIdentifier>
<ns2:BillToCustomerName></ns2:BillToCustomerName>
<ns2:BillToCustomerNumber></ns2:BillToCustomerNumber>
<ns2:BillToAccountSiteUseIdentifier>1009</ns2:BillToAccountSiteUseIdentifier>
<ns2:BillToAddress1></ns2:BillToAddress1>
<ns2:BillToAddress2></ns2:BillToAddress2>
<ns2:BillToAddress3></ns2:BillToAddress3>
<ns2:BillToAddress4></ns2:BillToAddress4>
<ns2:BillToCity></ns2:BillToCity>
<ns2:BillToPostalCode></ns2:BillToPostalCode>
<ns2:BillToState></ns2:BillToState>
<ns2:BillToProvince></ns2:BillToProvince>
<ns2:BillToCountry></ns2:BillToCountry>
<ns2:BillToAccountContactIdentifier></ns2:BillToAccountContactIdentifier>
<ns2:BillToAccountContactName></ns2:BillToAccountContactName>
<ns2:BillToAccountContactNumber></ns2:BillToAccountContactNumber>
<ns2:PartialShipAllowedFlag>false</ns2:PartialShipAllowedFlag>
<ns2:FulfillmentLineIdentifier></ns2:FulfillmentLineIdentifier>
<ns2:ShipToRequestRegion></ns2:ShipToRequestRegion>
<ns2:RequestedSupplierCode></ns2:RequestedSupplierCode>
<ns2:RequestedSupplierName></ns2:RequestedSupplierName>
<ns2:RequestedSupplierNumber></ns2:RequestedSupplierNumber>
<ns2:RequestedSupplierSiteCode></ns2:RequestedSupplierSiteCode>
<ns2:SupplierAddressLine1></ns2:SupplierAddressLine1>
<ns2:SupplierAddressLine2></ns2:SupplierAddressLine2>
<ns2:SupplierAddressLine3></ns2:SupplierAddressLine3>
987
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
<ns2:SupplierAddressLine4></ns2:SupplierAddressLine4>
<ns2:SupplierAddressCity></ns2:SupplierAddressCity>
<ns2:SupplierAddressState></ns2:SupplierAddressState>
<ns2:SupplierAddressZipCode></ns2:SupplierAddressZipCode>
<ns2:SupplierAddressProvince></ns2:SupplierAddressProvince>
<ns2:SupplierAddressCountry></ns2:SupplierAddressCountry>
<ns2:FulfillmentMethodCode></ns2:FulfillmentMethodCode>
<ns2:Comments></ns2:Comments>
<ns2:ReferenceTransactionLineId></ns2:ReferenceTransactionLineId>
<ns2:InterfaceStatus></ns2:InterfaceStatus>
<ns2:UnitListPrice>5</ns2:UnitListPrice>
<ns2:UnitSellingPrice>5</ns2:UnitSellingPrice>
<ns2:ExtendedAmount>100</ns2:ExtendedAmount>
<ns2:BatchIdentifier></ns2:BatchIdentifier>
<ns2:DestinationShippingOrganizationIdentifier></ns2:DestinationShippingOrganizationIdentifier>
<ns2:DestinationShippingLocationIdentifier></ns2:DestinationShippingLocationIdentifier>
<ns2:EarliestAcceptableShipDate></ns2:EarliestAcceptableShipDate>
<ns2:LatestAcceptableShipDate></ns2:LatestAcceptableShipDate>
<ns2:EarliestAcceptableArrivalDate></ns2:EarliestAcceptableArrivalDate>
<ns2:LatestAcceptableArrivalDate></ns2:LatestAcceptableArrivalDate>
<ns2:PromiseShipDate></ns2:PromiseShipDate>
<ns2:PromiseArrivalDate></ns2:PromiseArrivalDate>
<ns2:SubInventoryCode></ns2:SubInventoryCode>
<ns2:SubInventory></ns2:SubInventory>
<ns2:ShipSetName></ns2:ShipSetName>
<ns2:TaxExemptFlag>S</ns2:TaxExemptFlag>
<ns2:TaxClassificationCode></ns2:TaxClassificationCode>
<ns2:TaxExemptionCertificateNumber></ns2:TaxExemptionCertificateNumber>
<ns2:TaxExemptReasonCode></ns2:TaxExemptReasonCode>
<ns2:DefaultTaxationCountry></ns2:DefaultTaxationCountry>
<ns2:FirstPartyTaxRegistration></ns2:FirstPartyTaxRegistration>
<ns2:ThirdPartyTaxRegistration></ns2:ThirdPartyTaxRegistration>
<ns2:DocumentSubType></ns2:DocumentSubType>
<ns2:FinalDischargeLocationIdentifier></ns2:FinalDischargeLocationIdentifier>
<ns2:ProductFiscalCategoryIdentifier></ns2:ProductFiscalCategoryIdentifier>
<ns2:ProductType></ns2:ProductType>
<ns2:ProductCategory></ns2:ProductCategory>
<ns2:TransactionBusinessCategory></ns2:TransactionBusinessCategory>
<ns2:AssessableValue></ns2:AssessableValue>
<ns2:UserDefinedFiscClass></ns2:UserDefinedFiscClass>
<ns2:IntendedUseClassificationIdentifier></ns2:IntendedUseClassificationIdentifier>
<ns2:FOBPointCode></ns2:FOBPointCode>
<ns2:FOBPoint></ns2:FOBPoint>
<ns2:OrigSystemDocumentReference>ORIGSYS</ns2:OrigSystemDocumentReference>
<ns2:OrigSystemDocumentLineReference>ORIGSYSLINE</ns2:OrigSystemDocumentLineReference>
<ns2:CreditCheckAuthorizationCode>1235</ns2:CreditCheckAuthorizationCode>
<ns2:CreditCheckAuthorizationExpiryDate>2016-11-15T10:10:10</ns2:CreditCheckAuthorizationExpiryDate>
<ns2:ContractStartDate></ns2:ContractStartDate>
<ns2:LineCharge>
<ns2:ChargeDefinitionCode>QP_SALE_PRICE</ns2:ChargeDefinitionCode>
<ns2:ChargeSubtypeCode>ORA_PRICE</ns2:ChargeSubtypeCode>
<ns2:PriceTypeCode>ONE_TIME</ns2:PriceTypeCode>
<ns2:PricedQuantity>1</ns2:PricedQuantity>
<ns2:PricedQuantityUOMCode>Ea</ns2:PricedQuantityUOMCode>
<ns2:PrimaryFlag>true</ns2:PrimaryFlag>
<ns2:ApplyTo>PRICE</ns2:ApplyTo>
<ns2:RollupFlag>false</ns2:RollupFlag>
<ns2:SourceChargeIdentifier>SC1</ns2:SourceChargeIdentifier>
<ns2:ChargeTypeCode>ORA_SALE</ns2:ChargeTypeCode>
<ns2:ChargeCurrencyCode>USD</ns2:ChargeCurrencyCode>
<ns2:SequenceNumber>1</ns2:SequenceNumber>
<ns2:PricePeriodicityCode></ns2:PricePeriodicityCode>
<ns2:GsaUnitPrice></ns2:GsaUnitPrice>
<ns2:ChargeComponent>
<ns2:ChargeCurrencyCode>USD</ns2:ChargeCurrencyCode>
<ns2:HeaderCurrencyCode>USD</ns2:HeaderCurrencyCode>
988
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
<ns2:HeaderCurrencyExtendedAmount>97</ns2:HeaderCurrencyExtendedAmount>
<ns2:PriceElementCode>QP_NET_PRICE</ns2:PriceElementCode>
<ns2:SequenceNumber>2</ns2:SequenceNumber>
<ns2:PriceElementUsageCode>NET_PRICE</ns2:PriceElementUsageCode>
<ns2:ChargeCurrencyUnitPrice>97</ns2:ChargeCurrencyUnitPrice>
<ns2:HeaderCurrencyUnitPrice>97</ns2:HeaderCurrencyUnitPrice>
<ns2:RollupFlag>false</ns2:RollupFlag>
<ns2:SourceParentChargeComponentId></ns2:SourceParentChargeComponentId>
<ns2:SourceChargeIdentifier>SC1</ns2:SourceChargeIdentifier>
<ns2:SourceChargeComponentIdentifier>SCC1</ns2:SourceChargeComponentIdentifier>
<ns2:ChargeCurrencyExtendedAmount>97</ns2:ChargeCurrencyExtendedAmount>
</ns2:ChargeComponent>
<ns2:ChargeComponent>
<ns2:ChargeCurrencyCode>USD</ns2:ChargeCurrencyCode>
<ns2:HeaderCurrencyCode>USD</ns2:HeaderCurrencyCode>
<ns2:HeaderCurrencyExtendedAmount>97</ns2:HeaderCurrencyExtendedAmount>
<ns2:PriceElementCode>QP_LIST_PRICE</ns2:PriceElementCode>
<ns2:SequenceNumber>1</ns2:SequenceNumber>
<ns2:PriceElementUsageCode>LIST_PRICE</ns2:PriceElementUsageCode>
<ns2:ChargeCurrencyUnitPrice>97</ns2:ChargeCurrencyUnitPrice>
<ns2:HeaderCurrencyUnitPrice>97</ns2:HeaderCurrencyUnitPrice>
<ns2:RollupFlag>false</ns2:RollupFlag>
<ns2:SourceParentChargeComponentId></ns2:SourceParentChargeComponentId>
<ns2:SourceChargeIdentifier>SC1</ns2:SourceChargeIdentifier>
<ns2:SourceChargeComponentIdentifier>SCC2</ns2:SourceChargeComponentIdentifier>
<ns2:ChargeCurrencyExtendedAmount>97</ns2:ChargeCurrencyExtendedAmount>
</ns2:ChargeComponent>
</ns2:LineCharge>
</ns2:OrchestrationOrderRequestLine>
</ns1:OrchestrationOrderRequest>
</ns1:process>
</soap:Body>
</soap:Envelope>
Related Topics
• Reauthorize Payment
• Overview of Importing Orders into Order Management
989
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
990
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Related Topics
• Overview of Creating Order Management Extensions
Projects
Overview of Seing Up Projects in Order Management
Create and fulll sales orders that include project aributes, such as Project Number, Task Number, and Expenditure
Organization.
Store project details on sales orders and order lines to reduce order processing time and improve the accuracy of
tracking cost, revenue, and protability throughout your supply chain.
• Store project details on each sales order.
• Fulll all sales order for one project from the same inventory.
• Examine the cost of services and items that you shipped for the project.
• Compare budgeted costs to actual costs.
• Create an invoice according to percent complete or milestone.
• Manage more than one project from the same set of warehouses while maintaining visibility to material and
cost for each project.
• Ship each sales order for your project from project inventory or common inventory, according to your business
rules.
To maintain your Project-Driven Supply Chain, you want to make sure you ship inventory for the project only
for sales orders or transfer orders that are specic to the project. If you ship from common inventory, then you
can send the cost of goods sold to the project.
• Create a business rule that reserves project-specic inventory rst, then reserves the remaining quantity from
common inventory.
• Set up orchestration so it reserves order line quantity in project-specic inventory, a mix of project-specic and
common inventory, or only common inventory.
• If you ship from common inventory, then you can send the cost of shipped goods to the project during
shipment.
• Use the ProjectRecordIndicator aribute to prevent Order Management from sending project-specic order
lines to Receivables. Use the indicator when you set up your orchestration process and set up your assignment
rule.
For example, Green Corp. bids on a project to design and supply 100 custom baeries for an electric vehicle
manufacturer. Green Corp. expects design and development will require 100 hours at a cost of $50,000, and it will cost
$1,000 to manufacture each unit. Green Corp. adds 40% overhead and prot, and bids the job at $210,000, or $2,100
for each baery. Green Corp. decides to run invoicing from the sales order when it ships the rst 20 baeries, and then
again when it ships the remaining 80.
Green Corp. creates a project to capture cost and revenue, and then to calculate gross margin for the project.
• Set up a project with a cost budget of $150,000 and revenue budget of $210,000.
991
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
• Use the existing Quick Charge Baery item as the base item. Don't modify the original set up for this item
because most items on the project are minor variances of Quick Charge Baery.
• Standard cost for Quick Charge Baery is $1,000.
• Charge 90 hours at a total of $45,000 directly to the project for design and development.
• Include $100,000 for material in the project.
• Project creates invoice for $210,000.
The project captures cost for manufacturing, design and development. It also captures revenue. For brevity, this
example doesn't include shipping and other costs.
How it Works
992
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
1. Create a sales order that includes project details, such as project number, task number, and so on.
Order Management gets the list of projects dened in Project Management, lters them according to Sales
Order Business Unit and Warehouse Business Unit, then displays them as choices in the Edit Project Details
dialog on the order line.
The user clicks Submit, then Order Management validates each order line that includes project details. For
example, Order Management makes sure.
◦ The project that the user chooses is associated with a project contract.
◦ The value in the Ship-to Address aribute on the order line matches the value in the Ship-to Address for
the contract.
◦ The value in the Bill-to Address aribute on the order line matches the value in the Bill-to Address for the
contract.
If validation fails, Order Management displays an error and the user must update the order and submit again.
For details about how to set up and manage projects, see book Using Project Costing on Oracle Help Center.
2. An orchestration process orchestrates fulllment for the item, including schedule, reserve, and ship.
The ProjectRecordIndicator aribute comes predened as set to No. If the Order Entry Specialist adds project
details, then Order Management sets it to Yes, then sends it in a request to Warehouse Management. Shipping
ships the order line, then uses the indicator to determine whether to add project details to the inventory
transaction.
3. Fulllment.
◦ Global Order Promising promises and schedules without the context of the project, project task, or other
project details, and updates order fulllment details.
Global Order Promising determines the warehouse for the order line, then Order Management
validates the line again immediately before the orchestration process sends the line to shipping. Order
Management also sets the Scheduled Ship Date to the Expenditure Item Date so it reects the actual
transaction date.
◦ Inventory Management reserves the item in inventory.
◦
Warehouse Management creates the shipment, picks the item from inventory, ships the item, then sends
shipment conrmation to Cost Management.
4. Cost Management uses the sales order as input when it does cost accounting.
5. Project Management imports costs into the project.
If you enable Grants Management, then the Order Management work area displays the Contract Number and Funding
Source aributes.
You can't.
• Include project details in a drop-ship or back-to-back ow. For details, see the Overview of Drop Ship in Order
Management topic and the Overview of Back-to-Back Fulllment topic.
• Send a transfer order that includes project details through Order Management.
• Use project details with sales orders that you capture through a business-to-business ow (B2B) or electronic
data interchange (EDI).
• Use project details to bill an item that provides a service, such as a coverage or subscription.
• Do order promising according to project or project task.
993
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Extend
Include project aributes in an order management extension.
Order Management calls Project Management when the On Start of Submission event occurs. The call validates the
changes that the Order Entry Specialist makes.
For example.
if("PROJECT EXTN".equals(header.getAttribute("CustomerPONumber"))){
def lines = header.getAttribute("Lines"){
while(lines.hasNext()){
def line = lines.next();
if("N".equals(line.getAttribute)("ProjectRecordIndicator"))){
def rowIter = line.getAttribute("Projects");
def row = rowIter.createRow();
row.setAttribute("ProjectNumber","BAT-PJCBAT-Proj-02");
994
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
row.setAttribute("TaskId",new BigDecimal"1000000019394094");
row.setAttribute("ExpenditureType","Cartridges");
row.setAttribute("ExpenditureOrganization","Vision Operations");
row.setAttribute("ExpenditureItemDate",java.sql.Date.valueOf("2018-07-30"));
rowIter.insertRow(row);
}
}
}
Note.
• Examine the ProjectRecordIndicator aribute to determine whether the order line contains project details.
• Set a value for each of the required project aributes.
◦ ProjectNumber
◦ TaskId
◦ ExpenditureType
◦ ExpenditureOrganization
◦ ExpenditureItemDate
• Use extension event On Save, On Start of Submission, or On End of Submission to read project aributes on the
order line and ProjectRecordIndicator.
• Use the On Save event or the On Start of Submission event to update project aributes on the order line.
• Use an extension to set the default value of a project aribute when the value is empty.
• Don't use.
995
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Constrain
The DOO_PRJ_FULFILLMENTLINE_UPDATE processing constraint comes predened to prevent the Order Entry
Specialist from updating a fulllment line that includes project details. You can disable it to meet your business
requirements. For details about how, see the Processing Constraints topic.
Related Topics
• Dierent Ways of Managing Project Lifecycle
• Overview of Back-to-Back Fulllment
• Overview of Creating Order Management Extensions
• Guidelines for Importing Orders into Order Management
• Overview of Implementing Project Execution Management
996
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Here's the part of the payload where you include project details. All aributes are required.
<ns2:Project xmlns:pjc="http://xmlns.oracle.com/apps/flex/scm/doo/processOrder/pjcDff/" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance">
<ns2:PJCDFFVA xsi:type="pjc:OmSalesOrder">
<pjc:projectId_Display>PDSC-CT-PDSCM1X-004</pjc:projectId_Display>
<pjc:taskId_Display>1.1.1</pjc:taskId_Display>
<pjc:expenditureItemDate>2019-03-20</pjc:expenditureItemDate>
<pjc:expenditureTypeId_Display>Material</pjc:expenditureTypeId_Display>
<pjc:organizationId_Display>Vision Operations</pjc:organizationId_Display>
</ns2:PJCDFFVA>
</ns2:Project>
where
pjcD Indicates that you're using a descriptive exeld to store project details.
You must use this value.
xsi:type Identies the source type as OmSalesOrder, which means Order Management sales order.
You must use this value.
997
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Reservation ID The example payload doesn't include this aribute. The web service uses the aribute only for
earlier releases. For the current release, the value is empty, and the web service doesn't use it.
_Display indicates to use the value when we display the aribute in an Oracle Fusion application.
998
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
<ns2:SourceTransactionScheduleNumber>1</ns2:SourceTransactionScheduleNumber>
<ns2:ParentLineReference/>
<ns2:RootParentLineReference/>
<ns2:TransactionCategoryCode>ORDER</ns2:TransactionCategoryCode>
<ns2:ProductNumber>OM-PDSC-STD-03-C</ns2:ProductNumber>
<ns2:OrderedQuantity>100</ns2:OrderedQuantity>
<ns2:OrderedUOM>Each</ns2:OrderedUOM>
<ns2:RequestedFulfillmentOrganizationCode>PDSCM1</ns2:RequestedFulfillmentOrganizationCode>
<ns2:CustomerPONumber>NKPO2017/10/005/01</ns2:CustomerPONumber>
<ns2:CustomerPOLineNumber>1</ns2:CustomerPOLineNumber>
<ns2:RequestedShipDate>2019-06-30T23:08:52Z</ns2:RequestedShipDate>
<ns2:PaymentTerms>30 Net</ns2:PaymentTerms>
<ns2:PartialShipAllowedFlag>false</ns2:PartialShipAllowedFlag>
<ns2:Comments/>
<ns2:TaxExempt>S</ns2:TaxExempt>
<ns2:ShipToPartyName>FOM-Customer-001</ns2:ShipToPartyName>
<ns2:ShipToAddress1>1045, 5th Avenue</ns2:ShipToAddress1>
<ns2:ShipToCity>San Diego Country Estate</ns2:ShipToCity>
<ns2:ShipToPostalCode>92065</ns2:ShipToPostalCode>
<ns2:ShipToState>CA</ns2:ShipToState>
<ns2:ShipToCountry>US</ns2:ShipToCountry>
<ns2:ShipToPartyContactName>James Pattison</ns2:ShipToPartyContactName>
<ns2:BillToPartyType>ORGANIZATION</ns2:BillToPartyType>
<ns2:BillToCustomerName>FOM-Customer-001</ns2:BillToCustomerName>
<ns2:BillToCustomerIdentifier>300100046859202</ns2:BillToCustomerIdentifier>
<ns2:BillToAddress1>1045, 5th Avenue</ns2:BillToAddress1>
<ns2:BillToCity>San Diego Country Estate</ns2:BillToCity>
<ns2:BillToPostalCode>92065</ns2:BillToPostalCode>
<ns2:BillToState>CA</ns2:BillToState>
<ns2:BillToCountry>US</ns2:BillToCountry>
<ns2:BillToAccountContactName>James Pattison</ns2:BillToAccountContactName>
<ns2:Project xmlns:pjc="http://xmlns.oracle.com/apps/flex/scm/doo/processOrder/pjcDff/" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance">
<ns2:PJCDFFVA xsi:type="pjc:OmSalesOrder">
<pjc:projectId_Display>PDSC-CT-PDSCM1X-004</pjc:projectId_Display>
<pjc:taskId_Display>1.1.1</pjc:taskId_Display>
<pjc:expenditureItemDate>2019-03-20</pjc:expenditureItemDate>
<pjc:expenditureTypeId_Display>Material</pjc:expenditureTypeId_Display>
<pjc:organizationId_Display>Vision Operations</pjc:organizationId_Display>
</ns2:PJCDFFVA>
</ns2:Project>
<ns2:AdditionalFulfillmentLineInformationCategories
xsi:type="ns12:j_FulfillLineEffDooFulfillLinesAddInfoprivate" xmlns:ns12="http://xmlns.oracle.com/
apps/scm/doo/processOrder/flex/fulfillLineCategories/" xmlns:ns22="http://xmlns.oracle.com/apps/scm/doo/
processOrder/flex/fulfillLineContextsB/" xmlns:ns8="http://xmlns.oracle.com/apps/scm/doo/processOrder/
model/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ns8:Category>DOO_FULFILL_LINES_ADD_INFO</ns8:Category>
<ns12:FulfillLineEffBShipment__InstructionsprivateVO>
<ns8:ContextCode>Shipment Instructions</ns8:ContextCode>
<ns22:packInstructions>OM-PI-Test</ns22:packInstructions>
<ns22:shipInstructions>OM-SI-Test</ns22:shipInstructions>
<ns22:handlingCost>12.5</ns22:handlingCost>
<ns22:needByDate>2018-10-15</ns22:needByDate>
<ns22:expectedPickDate>2018-10-15T12:12:12</ns22:expectedPickDate>
</ns12:FulfillLineEffBShipment__InstructionsprivateVO>
</ns2:AdditionalFulfillmentLineInformationCategories>
</ns2:Line>
<ns2:Line>
</ns2:Order>
</ns1:request>
</ns1:createOrders>
</soap:Body>
</soap:Envelope>
999
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
For brevity, this payload contains only one order line. To see a more complete payload, see White Papers for
Order Management Cloud (Doc ID 2051639.1) at hps://support.oracle.com/epmos/faces/DocumentDisplay?
_afrLoop=472607338634463&id=2051639.1. Download aachment Payloads and Other Files That Support
Implementation.
The web service validates the business unit for the selling prot center and the warehouse during the On Submission
event.
• The user provides values for each required aribute in the Edit Project Details dialog.
◦ Project Number
◦ Task Number
◦ Expenditure Organization
◦ Expenditure Item Date
◦ Expenditure Type
If validation fails, then Order Management displays a warning or error and a suggestion of how to x it.
Order Management does these validations to prevent problems from occurring during shipping or when it invoices the
contract. For example, if the ship-to location on the sales order doesn't match the ship-to location on at least one of the
contract lines, then the sales order might use an incorrect tax when Order Management invoices the contract for the
project. Shipping might also ship the item to an incorrect location. The user would need to change the fulllment line
and manually recover the order so Order Management can send the corrected lines to shipping.
Here's an example response that the web service sends when the expenditure item date occurs outside the project
dates.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns1:createOrders
<ns0: createOrdersResponse xmlns:ns0="http://xmlns.oracle.com/apps/scm/fom/importOrders/orderImportService/
types/">
<ns1:result xsi:type="ns0:OrderImportResponse xmlns:ns1=
"http://xmlns.oracle.com/apps/scm/fom/importOrders/orderImportService/">
<ns0:Order>
<ns0:SourceTransactionNumber>RRFPDSC_TEST_112</ns0:SourceTransactionNumber>
<ns0:SourceTransactionIdentifier>RRFPDSC_TEST_112</ns0:SourceTransactionIdentifier>
<ns0:SourceTransactionSystem>LEG</ns0:SourceTransactionSystem>
<ns0:OrderNumber>514626</ns0:OrderNumber>
<ns0:HeaderId>xsi:nil="true"</ns0:HeaderId>
<ns0:OrderStatus>DOO_DRAFT</ns0:OrderStatus>
<ns0:ReturnStatus>ERROR</ns0:ReturnStatus>
<ns0:MessageName>env:Server</ns0:MessageName>
1000
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
<ns0:MessageText>The submit failed for sales order RRFPDSC_TEST_112 on order line1, in schedule 1. The
expenditure item date occurs outside the project dates. Change the project start and finish dates, or
change the expenditure item date.</ns0:MessageText>
<ns0:flowType>xsi_nil="true"</ns0:flowType>
Aribute Value
Source Transaction Identier Enter any alphanumeric text, such as FBDI_ SRK_0318_08.
Source Transaction Line Identier Identify the order line in the source transaction, such as 1.
Source Transaction Schedule Identify the schedule in the source transaction, such as 1.
Identier
Expenditure Organization or Identify the business unit, such as Vision Operations for Expenditure Organization.
Expenditure Organization ID
1001
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Contract Number or Contract ID If you enable grants for the project, then identify the contract.
Include a value for at least one of these aributes.
Funding Source Number or Funding If you enable grants for the project, then identify the funding source.
Source Id
Include a value for at least one of these aributes.
For some templates that include example values, see White Papers for Order Management Cloud (Doc ID 2051639.1) at
hps://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=472607338634463&id=2051639.1. Download
aachment Payloads and Other Files That Support Implementation.
For more details, see the Guidelines for Importing Orders into Order Management topic. For assistance with using the
template to import project details, contact Oracle support.
Resource Description
Project Includes the DooOrderPrjId aribute. It identies the project, such as 300100010341182.
Here are aributes from an example payload that uses the project detail resource.
"DooOrderPrjId": 300100181049087,
"__FLEX_Context": "OM_Sales_Order",
"__FLEX_Context_DisplayValue": "SCM: General",
"projectId": 300100010341182,
"projectId_Display": "Projects-TL-Int-01",
"taskId": 300100010341193,
"taskId_Display": "1.1",
"expenditureItemDate": null,
"expenditureTypeId": 10028,
1002
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
"expenditureTypeId_Display": "Material",
"organizationId": 204,
"organizationId_Display": "Vision Operations",
"contractId": null,
"contractId_Display": null,
"reservedAttribute1": null,
"reservedAttribute1_Display": null,
"billableFlag": null,
"billableFlag_Display": null,
"capitalizableFlag": null,
"capitalizableFlag_Display": null,
"workTypeId": null,
"workTypeId_Display": null,
Here's an example payload that creates a sales order for item AS92888 in a project named Projects-TL-Int-01. It includes
display aributes that use values to identify the project, such as projectId_Display.
URL: https://fuscdrmsmc347-fa-ext.myCompany.com:443/fscmRestApi/resources/11.13.20.01/salesOrdersForOrderHub
METHOD: POST
{
"SourceTransactionNumber": "R13_project_valueattrs_01",
"SourceTransactionSystem": "GPR",
"SourceTransactionId": "R13_project_valueattrs_01",
"BusinessUnitId": 204,
"BuyingPartyId": 1006,
"BuyingPartyContactId": 2663,
"TransactionalCurrencyName": "US Dollar",
"RequestedShipDate": "2019-01-20T20:51:21+00:00",
"PartialShipAllowedFlag": false,
"RequestingBusinessUnitId": 204,
"RequestingLegalEntityId": 204,
"FreezePriceFlag": "N",
"FreezeTaxFlag": "N",
"RequestedFulfillmentOrganizationId":207,
"PaymentTerms": "30 Net",
"SubmittedFlag": true,
"billToCustomer": [
{
"CustomerAccountId": 1006,
"SiteUseId": 1025,
"ContactFirstName": "Sarah",
"ContactLastName": "Takesh"
}
],
"shipToCustomer": [
{
"PartyId": 1006,
"SiteId": 1036
}
],
"lines": [
{
"SourceTransactionLineId": "1",
"SourceTransactionLineNumber": "1",
"SourceScheduleNumber": "1",
"SourceTransactionScheduleId": "1",
"ProductNumber": "AS92888",
"OrderedUOMCode": "Ea",
"PurchasingUOMCode": "Ea",
"OrderedQuantity": 1,
"project": [
{
"projectDetail": [
{
"projectId_Display": "Projects-TL-Int-01",
"taskId_Display": 1.1,
1003
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
"expenditureTypeId_Display": "Material",
"organizationId_Display": "Vision Operations",
"contractId": null,
"reservedAttribute1": null,
"billableFlag": null,
"capitalizableFlag": null,
"workTypeId": null
}
]
}
]
}
]
}
Here's another example that creates a sales order for item AS92888 in project 300100010341182. It includes aributes
that use an identier to identify the project, such as projectId.
URL: https://fuscdrmsmc347-fa-ext.myCompany.com:443/fscmRestApi/resources/11.13.20.01/salesOrdersForOrderHub
METHOD: POST
{
"SourceTransactionNumber": "R13_project_Idattrs_01",
"SourceTransactionSystem": "GPR",
"SourceTransactionId": "R13_project_Idattrs_01",
"BusinessUnitId": 204,
"BuyingPartyId": 1006,
"BuyingPartyContactId": 2663,
"TransactionalCurrencyName": "US Dollar",
"RequestedShipDate": "2019-01-20T20:51:21+00:00",
"PartialShipAllowedFlag": false,
"RequestingBusinessUnitId": 204,
"RequestingLegalEntityId": 204,
"FreezePriceFlag": "N",
"FreezeTaxFlag": "N",
"RequestedFulfillmentOrganizationId":207,
"PaymentTerms": "30 Net",
"SubmittedFlag": true,
"billToCustomer": [
{
"CustomerAccountId": 1006,
"SiteUseId": 1025,
"ContactFirstName": "Sarah",
"ContactLastName": "Takesh"
}
],
"shipToCustomer": [
{
"PartyId": 1006,
"SiteId": 1036
}
],
"lines": [
{
"SourceTransactionLineId": "1",
"SourceTransactionLineNumber": "1",
"SourceScheduleNumber": "1",
"SourceTransactionScheduleId": "1",
"ProductNumber": "AS92888",
"OrderedUOMCode": "Ea",
"PurchasingUOMCode": "Ea",
"OrderedQuantity": 1,
"project": [
{
"projectDetail": [
{
1004
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
"projectId": 300100010341182,
"taskId": 300100010341193,
"expenditureTypeId": 10028,
"organizationId": 204,
"expenditureItemDate": "2019-09-24",
"contractId": null,
"reservedAttribute1": null,
"billableFlag": null,
"capitalizableFlag": null,
"workTypeId": null
}
]
}
]
}
]
}
For details about how to use REST API, see Sales Orders for Order Hub at hps://docs.oracle.com/en/cloud/saas/
supply-chain-and-manufacturing/19d/fasrp/api-sales-orders-order-hub.html.
Related Topics
• Guidelines for Importing Orders into Order Management
In this example, assume you must modify the ShipOrderGenericProcess orchestration process, and that you already
released this process into production.
1. Enable the Process Sales Orders for Projects opt-in feature. For details, see the Opt Into Features in Order
Management topic.
2. Modify the orchestration process.
1005
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
1006
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Description Allow Order Entry Specialist to specify whether order line contains project details.
Module Orchestration
Aribute Value
Sequence 1
Aribute Value
Sequence 2
Related Topics
• Opt In To Features in Order Management
• Manage Lookups in Order Management
Agreements
1007
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
1008
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
1. If you use a web service or le to import the order, and if your source system.
◦ Already priced the order. Skip steps 2 through 7. Instead, validate the order and start orchestration.
◦ Didn't price the order. Go to step 3.
2. The Order Entry Specialist sets the customer and business unit on the order header.
3. Order Management sends the sold-to party, business unit, currency, and current system date to Contract
Management.
1009
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
4. Contract Management searches all of its contracts. It applies lters during the search.
Contract Management sends the contracts that pass these lters to Order Management. Here are the aributes
that it sends for each contract.
◦ Contract ID
◦ Version Number
◦ Contract Number
◦ Contract Name
◦ Description
◦ Start Date
◦ End Date
5. Select contract.
◦Order Management displays the list of ltered contracts in the Sales Agreement aribute on the order
header.
◦ If Contract Management sends only one contract, then Order Management sets Sales Agreement to this
contract, by default.
◦ The Order Entry Specialist chooses a contract in the Sales Agreement aribute. Order Management
references this value later when it sets the sales agreement number on each order line.
◦ Order Management searches for an item on the catalog line, then sends a request to Pricing
Administration to calculate price. Assume you already dened an agreement line for the item.
6. Pricing gets contract details from Contract Management, prices the order line, then sends the result to Order
Management.
7. The Order Entry Specialist clicks Submit.
8. Order Management validates the sales order to make sure the contract is active, the current system date occurs
within the contract date, that the contract line and version are valid, then starts orchestration.
Note.
• Order Management processes each order line as soon as the Order Entry Specialist enters it. It repeats step 6
for each order line.
• If the Order Entry Specialist doesn't set an agreement on the order header, and doesn't set an agreement on
the order line, then Pricing prices the item in the same way it prices without an agreement.
1010
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
1011
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
• Applies a 10% discount on each order line when Computer Service and Rentals orders a quantity of 10 or more
of item AS54888.
Pricing calculates price for the item on the catalog line according to the price adjustment you specify in the sales
agreement. The Sales Agreement aribute on the order header species the agreement to apply.
1012
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
1013
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
Aribute Value
• Apply to Qualifying Price Lists. Apply the price adjustment that you set up on
the agreement regardless of whether the price list on the sales order matches the
negotiated price list on the sales agreement.
• Enforce Price List and Apply Price. Apply the price adjustment only if the price list on
the sales order matches the negotiated price list on the sales agreement.
Price List Specify the price list to set the price for the item. For details, see the Manage Price Lists topic.
Price Type
List Price
Adjustment Type
Specify the type of adjustment, such as discount amount or discount percent.
1014
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Adjustment
For example, if list price is $1000, and if you set Adjustment Type to Discount Percent,
Adjustment Basis Adjustment to 10, and Adjustment Basis to List Price, then the adjustment equals one of these
values.
You can also create a tier adjustment according to quantity or extended amount.
For an example that includes a value for each adjustment type, and details about tiers, see the
Add Tiers to Pricing Rules topic.
Allow Price Override on Order Allow the Order Entry Specialist to edit Your Price on the sales order.
Apply Pricing Strategy Adjustments Apply adjustments that the pricing strategy calculates.
For details, see the How Proles, Segments, and Strategies Work Together topic.
Pricing uses the Apply Pricing Terms pricing algorithm to apply the pricing terms it receives from Contracts.
1015
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
This algorithm evaluates and applies a list of pricing terms to each charge for the item.
1016
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
For an example that modies pricing terms, see the Set Up Discounts That Accumulate or Cascade topic.
Note.
• Use Oracle Application Development Framework (ADF), File-Based Data Import (FBDI), REST API, or electronic
data interchange (EDI) in a Business-to-Business implementation.
• Use these technologies to create, edit, view, or revise sales orders.
• You must enable the Add Sales Agreements to Sales Orders opt-in feature to import or integrate.
• For details about the aributes you can import or integrate, see the Reference for Seing Up Sales Agreements
in Order Management topic.
• Use a POST operation with the Sales Orders for Order Hub REST API.
• Use the Create Order operation or Stage Order operation with an ADF web service.
1017
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Pricing a congured item is similar to pricing an item that isn't congured. Assume the user sets the agreement on the
order header to 101. If the user searches for a congured item on the catalog line, then clicks.
• Congure and Add. Order Management displays the congurator, and Pricing uses agreement 101 to price
each congure option.
If sometime later, the user clicks View Components on the order line, then, in the dialog, Order Management
sets the agreement for each congure option to 101. If the user changes this agreement to 102, then Pricing
uses agreement 102 to price the option.
• Add. Order Management adds an order line, sets the order line agreement to 101, and prices the item and its
congure options according to agreement 101.
If the user changes the order line agreement to 102, clicks Edit on the line and edits the congured item, then
Pricing uses agreement 102 to price congure options.
1018
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Report
Use the Reports and Analytics work area to get data that includes sales agreement aributes.
Next, expand Sales Agreement to examine the aributes you can use in your report.
For details, see the Use Reports and Analytics with Order Management topic.
1019
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Reference the Sales Agreement aribute in a processing constraint, pretransformation rule, order approval rule, or
order management extension.
Related Topics
• Manage Price Lists
• Add Tiers to Pricing Rules
• How Proles, Segments, and Strategies Work Together
• Create Discounts That Accumulate or Cascade
• Use Reports and Analytics with Order Management
1020
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Type SalesAgreement
Number 101
This value will display in the Sales Agreement aribute throughout the Order Management
work area.
Currency USD
Intent Sell
1021
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
5. On the Edit Contract page, click Lines > Actions > Add, set values, then click Submit.
Aribute Value
Type Product
Name AS54888
UOM Each
Adjustment 10
If you enable, then Order Management displays sales agreement aributes throughout the Order Management
work area.
For details about how to enable, see the Opt Into Features in Order Management topic.
3. Set parameter Automatically Set Values on Sales Agreement Aributes.
If you extended a pricing algorithm in an earlier release, then you must also create a new version and
reconcile changes. For details, see the Promote Pricing Algorithms Into the Current Release topic.
1022
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Related Topics
• Overview of Enterprise Contracts
• Create a Sales Agreement Line
• Opt In To Features in Order Management
• Manage Order Management Parameters
• Promote Pricing Algorithms Into the Current Release
1023
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Related Topics
• How Service Mappings, Pricing Algorithms, and Matrixes Work Together
1024
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
◦ Full Lifecycle
◦ Customer Asset
6. Click Sales and Order Management, then set the value, or leave it empty.
Aribute Value
◦ Goods
◦ Software
If Sales Product Type contains one of these values, then Oracle Fusion Installed Base ignores the item even if
you set Enable Asset Tracking to Customer Asset or Full Lifecycle.
◦ Included Warranty
◦ Extended Warranty
◦ Service Level Agreement
◦ Software Maintenance
◦ Preventive Maintenance
◦ Installation
◦ Training
◦ Subscription
◦ One Time Service
7. Optional. Task type DOO_AssetManagement allows Order Management to send a request to Oracle Fusion
Installed Base to create or update an asset. You can set up your own task that DOO_AssetManagement
references, then reference your task from various steps in dierent orchestration processes that you create. For
details about task types, see the Task Types topic.
1025
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ On the Manage Task Types page, click View > Query by Example, enter the value, then click the Enter
key on your keyboard.
Aribute Value
◦ In the DOO_AssetManagement Details area, click Tasks > Actions > Add Row, set values, then click Save
and Close.
Aribute Value
Aribute Value
Add this step after the shipment step and before the invoicing step. For example, if you copy, then
modify the copy of predened orchestration process DOO_OrderFulllmentGenericProcess, then add this
step immediately before the Create Invoice step.
◦ If you created your own task type earlier in this procedure, then set the value.
Aribute Value
Related Topics
• Orchestration Processes
• Monitor Order Fulllment
• Fulllment Tasks
1026
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
• Order Management updates the selling prot center every time a downstream system updates the warehouse.
• If the user changes the warehouse in the Order Management work area, then Order Management doesn't
update the selling prot center.
• Order Management prices the order line each time the value in the Selling Prot Center aribute on the order
line changes.
• Order Management communicates the selling prot center to downstream applications, such as Shipping,
Costing, Sales Financial Orchestration, Tax, and Receivables.
• You can reference the selling prot center in the Order Information Service, an order management extension,
or interface mapping.
Order Management Set the Selling Prot Center aribute on the order line to the same value that the Business
Unit aribute on the order header contains.
Shipping Organization
Set the Selling Prot Center aribute on the order line to the business unit that the shipping
inventory organization references.
◦ Normal shipment.
◦ Drop shipment.
1027
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ back-to-back shipment.
Related Topics
• Opt In To Features in Order Management
• Manage Order Management Parameters
Trade Compliance
Overview of Seing Up Trade Compliance
Use Order Management Cloud with your trade management solution to create and manage trade transactions that
comply with global import trade rules, export global trade rules, and other trade regulations that the country or region
requires.
Some governments and companies impose rules and regulations on trade with dierent countries, people, companies,
nancial institutions, and so on. Use trade compliance to meet these rules.
• Trade compliance is a structure of rules that makes sure trade between countries or regions occurs only
according to the approved laws and guidelines that these countries or regions use.
• Manage legal, regulatory, and corporate requirements for each transaction that crosses a government border,
such as across states, provinces, regions, or countries, according to the unique requirements of each country,
region, company, and so on.
For example, set up trade controls that apply United States rules and Chinese rules on each transaction that
occurs between a company that resides in the United States and another one that resides in China.
• Apply trade controls on various items, such as munitions, computer equipment, licenses, license exceptions,
documents, registrations, and so on.
• Manage trade compliance policy, hold transactions until they clear trade compliance screening, and so on.
• Screen each sales order for restricted parties and sanctioned countries when submiing the sales order in
Order Management.
• Don't screen sales order at submit, but do screen before shipping.
• Screen each sale order at dierent points during a long fulllment cycle.
1028
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Here's an example ow that illustrates how you can use your trade management solution with Order Management.
This supply chain imports raw materials from more than one source into a factory in the United States, sends a partially
nished assembly to a factory in Europe, then sends the nal assembly to distribution centers in more than one country
in Africa.
Each import and export point might require a dierent set of trade compliance rules for each transaction. For example,
you can manage compliance according to trade compliance policies.
Your users can manage compliance in the Order Management work area.
1029
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Related Topics
• Manage Sales Orders That Require Trade Compliance Screening
1030
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Here's an example where Order Management applies trade compliance during screening.
Note.
1. An Order Entry Specialist creates a sales order in the Order Management work area, then clicks Submit. Order
Management validates the sales order in the same way it validates any sales order, then sends it to Global
Trade Management for screening.
◦ If you set order management parameter Check for Trade Compliance When User Submits Sales Order to
Yes, then Order Management sends a request to Global Trade Management to screen the sales order for
trade compliance.
◦ Global Trade Management can screen an item that isn't congured, a congured item, or a change order.
1031
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ You can screen a source order that you import form a source system.
◦ You can screen only for restricted part or sanctioned territory during order submit.
◦ This integration can't screen a return line.
2. Global Trade Management screens the sales order.
◦Apply trade compliance policies that you set up for this integration to the sales order, then create a
screening result. Global Trade Management supports a variety of compliance screening types. For
example, restricted party, sanctioned countries or territories, and trade control.
◦ Set the trade compliance status to Passed, Under Review, or Failed, according to the screening result.
You can't modify this value.
◦ If the trade compliance status is Failed or Under Review, then provide the screening failure reason for
each order line that fails screening.
◦ Send the screening result to Order Management. You can use the screening result in a constraint or
approval rule.
3. Order Management updates the trade compliance status on the sales order according to the most restrictive
trade compliance status that applies on the order lines in the sales order.
For example, if status is Failed for one order line, then the sales order status is Failed.
Here's the hierarchy that Order Management uses to determine which status is most restrictive, where 1 is least
restrictive, and 3 is most restrictive.
1. Passed
2. Under Review
3. Failed
Note.
◦ Global Trade Management typically nishes screening and sends the result to Order Management
without delay. However, Global Trade Management might require a few minutes to screen a large or
complex sales order.
◦ If the sales order hasn't moved to order fulllment, then the Order Entry Specialist can click Actions, then
click Revert to Draft. Order Management will set order status to Draft and stop screening.
4. If screening fails, then Order Management sends the sales order back to the Order Entry Specialist because a
predened processing constraint prevents Order Management from submiing a sales order that includes a
trade compliance exception. The Order Entry Specialist can modify or cancel the sales order.
You can disable the constraint or create a new one that allows the sales order to proceed according to a
condition. For details, see the Constrain Compliance Screening topic.
5. If screening doesn't fail, then Order Management sends the sales order to order fulllment.
If the constraint allows the sales order to proceed according to a condition, then, as an option, you can set up
an approval rule that uses the trade compliance result of the order header or order line to route the sales order
to an Order Manager for approval.
6. As an option, you can also screen during order fulllment according to an orchestration process step that you
set up.
This ow uses Oracle Global Trade Management as the trade compliance solution. You can use your own solution. As
an option, it identies the points where you can screen for trade compliance during order fulllment in Oracle Fusion
Shipping. For details about Global Trade Management and how to set it up, see Oracle SCM Solutions, Global Trade
1032
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Management at hps://www.oracle.com/applications/supply-chain-management/solutions/logistics/global-trade-
management.html.
1033
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
• Use the Manage Order Management Parameters page in the Setup and Maintenance work area.
• As an option, to screen at order submit, set parameter Check for Trade Compliance When User Submits Sales
Order to Yes.
• This parameter comes predened as No.
Constrain Changes
Note.
• Use the Manage Processing Constraints page in the Setup and Maintenance work area.
• As an option, use the DOO_GTM_EXCEPTION predened processing constraint to implement a condition.
1034
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
1035
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
• Use the Manage Order Approval Rules page in the Setup and Maintenance work area to create an approval rule.
• Approval comes predened to display the screening result in the Pending Notications page or worklist for the
approver.
• As an option, you can create an approval rule to request review and approval for each sales order that doesn't
pass screening.
1036
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
For example, if the sales order fails screening, then Order Management rejects the submit and sets the order
status to Draft. You can create an approval rule that allows the sales order to proceed to order fulllment while
compliance is under review.
• Test on a variety of conditions, such as Trade Compliance Status of the order header, Trade Compliance
Comment on an order line, and so on.
Choose an action.
1037
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
For details about approvals and how to set them up, see the How Approvals Work in Order Management topic.
At order submit You must use Integration Cloud Service, and you must set Invocation Mode on the connector
to Business Event.
During order fulllment You can use some other integration service, and you can set Invocation Mode to
Asynchronous Service or Synchronous Service. However you must set up your own integration
and connector. You can't use the example integrations that Integration Cloud Service provides
as a starting point.
For details, see the Set Up Integration section in the Guidelines for Integrating Order Management with Transportation
Management topic.
1038
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
• Use TradeComplianceScreeningResultCode to provide the result for each request.
• Use TradeComplianceScreeningResultCode to provide the result for each fulllment line.
• Use FulllmentDetail to provide separate result details for each compliance type. For example, provide a
separate FulllmentDetail for each type.
◦ ORA_SANCTIONED_TERRITORY
◦ ORA_RESTRICTED_PARTY
◦ ORA_TRADE_CONTROL
• Set TradeComplianceScreeningResultCode of the overall result to the most restrictive value from the
FulllmentDetail sections. For example, if. . .
◦ ORA_SANCTIONED_TERRITORY is ORA_PASSED.
◦ ORA_RESTRICTED_PARTY is ORA_PASSED.
1039
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ ORA_TRADE_CONTROL is ORA_FAILED.
For example, if compliance checks ORA_SANCTIONED_TERRITORY for the ship to customer and for the bill to
customer, then make sure the payload includes one ORA_SANCTIONED_TERRITORY FulllmentDetail for the
ship to customer, and another ORA_SANCTIONED_TERRITORY FulllmentDetail for the bill to customer.
◦ If compliance type is Restricted Party, then use a comment to identify the customer on the restricted
party list.
◦ If compliance type is Sanctioned Country or Territory, then use a comment to identify the country or
territory.
In this example, the screening violation occurs in the International Trac in Arms Regulations trade agreement.
• Include one Trade Control Type for each FulllmentDetail. Its applicable only for these compliance types.
◦ Trade Control
◦ Sanctioned Country or Territory
1040
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
• Lookup codes and values are predened. You can't modify them, but you can create your own codes. For
details, see the Manage Trade Control Types topic.
• Search for lookup type ORA_DOO_TRADE_COMPLIANCE_TYPE on the Manage Standard Lookups page to
verify codes that your implementation uses.
• Make sure your response payload includes each lookup code. At a minimum, your payload must include these
codes.
◦ ORA_RESTRICTED_PARTY
◦ ORA_SANCTIONED_TERRITORY
1041
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ ORA_TRADE_CONTROL
Note.
• Search for lookup type ORA_DOO_VALIDATION_RESULT on the Manage Standard Lookups page.
• Make sure your response payload includes each lookup code. At a minimum, your payload must include these
codes.
◦ ORA_FAILED
◦ ORA_PASSED
◦ ORA_HOLD
1042
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Trade control type claries the government policy, document, agreement, and so on, that Trade Management uses
when it veries trade compliance. Export Administration Regulations and Atomic Energy Act is an example of a
government policy.
Note.
• Search for lookup type ORA_DOO_TRADE_CONTROL_CODE on the Manage Standard Lookups page.
• This lookup type is predened, but comes without lookup codes. You can add your own codes. Here are the
codes that we added in this example.
◦ AT. Antiterrorism.
1043
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Related Topics
• Manage Order Management Parameters
Set up trade compliance screening so it occurs before sending the sales order to order fulllment.
1. Set up an integration between Order Management and your trade management system.
Related Topics
• Manage Order Management Parameters
1044
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
◦ The request step sends a request to Global Trade Management to screen the sales order.
◦ The wait step pauses the orchestration process while it waits for the reply from Global Trade
Management. The pause makes sure fulllment doesn't nish without rst clearing trade compliance
1045
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
check. The wait step also processes the response depending on the compliance status that Global Trade
Management sends.
• Set up exit criteria for the wait step according to compliance status, and according to your business needs.
• As an option, add a pause step at some point after the wait step to allow for manual intervention. For example,
assume you prefer to allow fulllment to continue while an approver investigates the reason for screening
failure, right up to the point of shipping the item. You can add a pause step immediately before Create
Shipment Request.
• Add the request and wait steps at any point in the orchestration process. For example, screen before creating
the reservation, screen before creating the shipment request, screen after creating the invoice, and so on.
• Use any text for the Step Name aribute.
• You must use the predened value DOO_TradeCompliance for the Task Type aribute and the Task aribute.
• Choose from a variety of services, such as Request Screening for Trade Compliance or Wait for Trade
Compliance Screening.
This topic includes example values. You might use dierent values, depending on your business requirements.
Aribute Value
For details about how to set up an orchestration process, see the Set Up Orchestration Processes topic.
3. In the Search Results, click Actions > Duplicate.
4. On the Edit Orchestration Process Denitions page, set values, accept all other default values, then click Save.
Aribute Value
Description Screen sales order for trade compliance, then process it through order fulllment.
1046
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Note.
1047
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ The values for the Task aribute and the Service aribute are required to call the compliance screening
service. Other aribute values are optional.
6. In the Process Details area, create a step immediately after the Request Screening for Trade Compliance step.
Aribute Value
Note.
◦ This step pauses the orchestration process so it waits for the compliance screening service to nish
screening.
◦ The values for aributes Task, Service, and Exit Criteria are required. Other aribute values are optional.
◦ Compliance screening is a long-running task, so you can do compliance screening only through a long-
running task.
1048
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
7. In the Process Details area, click Status Conditions > Orchestration Process Status Values, then add values.
The exit criteria is DOO_PASSED for the Wait for Trade Compliance Screening step in this example.
8. Optional. To pause fulllment while waiting for compliance review, or while doing more review and approval,
add a pause step after the Wait step.
You can also create a new constraint. For example, create a constraint that rejects a sales order with status Failed but
that doesn't reject an order with status Under Review.
In this example, you create a processing constraint that rejects each sales order that doesn't pass trade compliance
screening.
This topic includes example values. You might use dierent values, depending on your business requirements.
1049
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Disable DOO_GTM_EXCEPTION
1. In the Setup and Maintenance work area, go to the task.
Aribute Value
Description Creates a new constraint that prevents a sales order that doesn't pass trade compliance
screening from moving to order fulllment.
3. In the Details area, click Actions > Add Row, then set values.
Aribute Value
1050
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Display Name Reject Sales Orders that Contain Trade Compliance Exceptions
3. In the Conditions tab, click Actions > Add Row, then set values.
Aribute Value
Group Number 1
Scope Any
Message You can't submit the order line because it doesn't pass trade compliance screening.
1051
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
4. Click Save.
Assume you must add the Chemical and Biological Weapons trade control type.
This topic includes example values. You might use dierent values, depending on your business requirements.
The Manage Fulllment Line Exceptions page only displays the View Details link next to a red or yellow trade
compliance status.
5. Examine the predened lookup that displays the trade control type.
1052
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
For example, a fulllment line might reference a trade control, such as Anti-Terrorism, and details about the
control, such as Atomic Energy Act.
Aribute Value
4. In the search results, click the row that contains the value.
Aribute Value
5. In the Lookup Codes section, click Actions > New, then enter values.
Aribute Value
1053
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Display Sequence 1
6. Click Save.
Related Topics
• Manage Sales Orders That Require Trade Compliance Screening
• Manage Lookups in Order Management
This topic includes example values. You might use dierent values, depending on your business requirements.
1054
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ Display sales order aributes for coverage or subscription throughout the Order Management work area,
such as Duration, Period, Contract Start Date, Contract End Date, Sales Product Type, and Associated
Order Line.
◦ If the Order Entry Specialist chooses a coverage item or subscription, then Order Management disables
actions that don't apply to a coverage item or subscription, such as Edit, Schedule, Check Availability,
Unschedule, Split, Reserve, Unreserve, and Substitute.
◦ Display coverage items for each congure option in a congured item.
4. Click Done.
5. In the Setup and Maintenance work area, go to the task.
Coverage Start Date Specify whether to set the start date for a coverage item to the delivery date or the shipment
date.
Aribute Value
Number of Items 1
Template You can choose any value. For this example, choose Finished Goods.
1055
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
5. Click Specications, then, under Item Organization, click Sales and Order Management.
6. Set the value.
Aribute Value
◦ Subscription. An item that provides a product or service that recurs, and that includes
a duration and period. For example, a one year subscription to a magazine, a 90 day
subscription for cell phone service, and a six month subscription for software usage
are each an example of a subscription.
◦ Empty.
Aribute Value
Aribute Value
1056
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Number of Items 1
Template You can choose any value. For this example, choose Finished Goods.
Aribute Value
4. Click Specications, then, under Item Organization, click Sales and Order Management.
5. Set the value.
Aribute Value
◦ Extended Warranty
◦ Software Maintenance
◦ Preventive Maintenance
Value Description
Fixed The Order Management work area will default the values that it displays for Duration and
Period to the values you set, then make them read-only.
1057
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Value Description
Variable Works the same as Fixed, except the Order Entry Specialist can edit Duration and Period.
Open Ended Allows the Order Entry Specialist to edit Duration and Period, but doesn't display a default
value for these aributes. The Order Entry Specialist must set them.
You can't set the Enable Contract Coverage aribute because this aribute allows a coverage item to cover
the item you're dening. However, a coverage item can't cover another coverage item. For example, you can't
create a 1 Year Sentinel Desktop Warranty that covers a 5 Year Sentinel Desktop Warranty.
8. Set the values, click Save and Close, then sign out.
Aribute Value
Duration 5
Note: Its strongly recommended that you set these values. Order Management displays them in
elds that aren't labeled on the catalog line. If you don't set them, then the elds will be empty, and
your users might not understand how to use them.
You must set up a charge for each of these durations. For details, see the Manage Pricing for Covered Items section in
the Oracle SCM Cloud, Administering Pricing book.
Assume you already set up pricing for covered item PTO54222 - Sentinel Personal Desktop Computer so it
calculates a pricing basis of $500.
2. In the Navigator, click Pricing Administration.
3. On the Overview page, click Tasks > Manage Price Lists.
4. Search for Corporate Segment Price List.
5. In the search results, click Action > Add Row, set values, then click Save.
1058
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
If you.
◦ Don't enter a value for Service Duration, then Pricing won't calculate a value for the Duration Extended
Amount aribute.
◦ Enter a value for Service Duration, then Pricing will calculate a value for the Duration Extended Amount
aribute.
If the Service Duration Type is Open Ended for the coverage item in the Product Information Management work
area.
◦ The Search Results area won't display a value for Service Duration Period or Service Duration, and won't
allow you to edit these aributes.
◦ And if Pricing prices the sales order instead of your source system pricing it, then the Order Entry
Specialist must enter a value for Service Duration Period.
6. In the Associated Items column, click Manage Covered Item.
7. On the Manage Covered Items page, in search results, click Add Row, set values, then click Create Charge.
8. In the Charge area, set values, then click Save and Close.
Aribute Value
Calculation Amount 20
1059
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
9. In the search results, click Add Row, set values, then click Create Charge.
10. In the Charge area, set values, then click Save and Close.
Aribute Value
Calculation Amount 10
11. Click Save and Close again, then sign out of Pricing.
Specify Charges for Each Duration
• Year
• Quarter
• Month
• Week
• Day
• Hours
• Minutes
Note.
• Order Management renders pricing details only for each charge that you specify. For example, if you don't
specify a charge for Month, and if your user sets Duration to Month, then the order line for the coverage item
won't display price details, Order Management will display an error message, and the user can't submit the
sales order.
• If you set up a coverage item in the Product Information Management work area, but don't set up pricing for it
in the Pricing Administration work area, then your user might add the coverage item but not be able to submit
the sales order because of a pricing error.
1060
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Caution: If you set up a coverage item in Product Information Management, but incorrectly set up pricing for
it in Pricing Administration, then your user might add the coverage item and successfully submit it without
error, but the pricing values on the order line might not be correct, resulting in overcharging or undercharging
the billing.
Field Value
Field Value
4. Wait for the search to nish, then verify that the catalog line displays these values.
Aribute Value
Duration 5
Period Year
These are the default values you set up in Product Information Management.
5. Click Select Covered Item, choose the order line to cover, then click Add.
6. Click View > Columns, then click Period.
7. Verify that these values display on the coverage line, by default.
8. Change the quantity on the covered line from 1 to 2, then verify that the coverage line displays these values.
1061
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
11. Change the Period to Month, then verify that the coverage line displays these values.
1 50 50 50 1 Month
12. Change the Period to Day, verify that the coverage line doesn't display price details, click Actions > Reprice
Order, then notice the error message.
Order Management will display an error for any charge you don't set up. Recall that you didn't create a charge
for Day.
Aribute Value
Number of Items 1
1062
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Duration 5
Aribute Value
Number of Items 1
1063
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
2. Set up pricing.
Aribute Value
Calculation Amount 20
Order Management doesn't allow your user to change the Duration or Period for a xed coverage item,
so you only need to set up a charge for one period.
◦ Add the open-ended coverage item to the Corporate Segment Price List.
Aribute Value
1064
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Calculation Amount 20
Aribute Value
Calculation Amount 5
1065
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Calculation Amount 10
Aribute Value
Calculation Amount 7
1066
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Field Value
Field Value
◦ Wait for the search to nish, then notice that the catalog line displays 5 Year as a read-only value.
◦ Click Select Covered Item, choose the order line to cover, then click Add.
◦ Verify that you can't edit the Duration or Period.
◦ On the catalog line, search for the item.
Field Value
◦ Wait for the search to nish, then notice that the catalog line displays two empty elds, and that you
must set them before you continue. If you don't, then Order Management displays an error.
An open-ended coverage item is similar to a variable coverage item, except Order Management displays
the default values for Duration and Period on the catalog line for a variable coverage item, and doesn't
display any values for an open-ended coverage item. The Order Entry Specialist must set these values for
an open-ended coverage item.
◦ Set values on the catalog line.
Aribute Value
Duration 1
Period Day
◦ Click Select Covered Item, choose the order line to cover, then click Add.
◦ Verify that the coverage order line for the open-ended coverage doesn't contain prices. You didn't set up
a charge for Day, so no pricing will display, and you can't submit the sales order.
1067
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ Set Period to Year, then verify that these values display on the coverage line.
◦ Set Period to Month, and then verify that the following values display on the coverage line.
1 50 50 50 1 Year
◦ Set Period to Week, then verify that these values display on the coverage line.
1 35 35 35 1 Year
◦ Set Duration to 2, then verify that these values display on the coverage line.
1 35 35 70 1 Year
Related Topics
• Coverages and Subscriptions in Sales Orders
• Coverages and Subscriptions in Sales Orders
1068
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
• Make sure processing for the covered item and coverage item remain synchronized, and make sure processing
for the covered item doesn't get too far ahead or behind processing for the coverage item.
Do it.
2. Set up an assignment rule to make sure Order Management uses the same orchestration process instance for
the covered item and for the coverage item.
You set up the rule one time during setup. The orchestration process instance that runs in the runtime
environment is dierent for each sales order or fulllment line.
1069
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
3. Set up an expression in the line selection criteria for each orchestration process step that must not run so the
step doesn't call the fulllment task service.
◦ You don't ship a coverage item, such as a warranty, so you set up an expression that prevents the
shipping step from processing the coverage item. Add a line selection criteria that species to process
only shippable lines. Add the criteria to a Scheduling task or Shipping task. Predened orchestration
processes already use this line selection criteria.
◦ The Contracts step doesn't need to run for a covered item, so add a line selection criteria that species to
run this step for each line only when the Sales Product Type species a coverage item.
For details about how to set up an expression, see the Select Fulllment Lines for Orchestration Process Steps
topic.
This orchestration process is only for illustration purposes. You might need a dierent set up for your assignment rules
and expressions.
Do it.
1070
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Here's an example that illustrates how you can use a pause task to coordinate dierent orchestration process
instances.
◦ The pause task makes sure the orchestration process instance that processes the coverage item doesn't
get too far out in front of the instance that processes the covered item. For example, the Contracts step
must not process the coverage item until after the covered item ships and the Install Base step runs.
◦ You can set the pause exit criteria to a condition, such as Shipped Quantity is greater than zero.
◦ For details, see the Pause Orchestration Processes topic.
This orchestration process is only for illustration purposes. You might need dierent pause tasks.
Related Topics
• Overview of Assigning Orchestration Processes
• Select Fulllment Lines for Orchestration Process Steps
1071
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Assume you must set up an annual subscription for Visions Magazine at a rate of $5 for each week.
Do the set up described in the Set Up Coverage for Sales Orders topic, but with these dierences.
1. Use the Product Information Management work area to create a subscription.
Aribute Value
Number of Items 1
Description Subscription for Visions Magazine, a weekly publication for trade professionals.
1072
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
If you use Open Ended, then renewal isn't required and the subscription continues until the
Order Entry Specialist ends it. For example, assume your customer buys a subscription to an
electrical utility that must continue indenitely until the customer actively ends it.
Duration 52
2. Use the Pricing Administration work area to set up pricing for the subscription on the Corporate Segment Price
List.
Aribute Value
Service Duration 52
Aribute Value
Base Price 5
Calculation Amount 20
4. Sign out of Pricing Administration, and then sign into Order Management.
5. Add the Subscription to Visions Magazine item to the sales order, then verify that the order line displays these
values.
1073
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Related Topics
• Coverages and Subscriptions in Sales Orders
Aribute Value
1074
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
1. Use the Product Information Management work area to set up the agreement.
Aribute Value
Number of Items 1
Duration 3
Aribute Value
1075
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
Number of Items 1
Duration 3
3. Use the Pricing Administration work area to set up pricing for the agreement on the Corporate Segment Price
List.
Aribute Value
1076
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
5. Set up pricing for the subscription on the Corporate Segment Price List.
Aribute Value
Aribute Value
1077
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
9. Search for the Vision Cloud Agreement item on the catalog line, click Select Covered Item, associate it with the
Vision Cloud Subscriptions order line, click Add, then verify that the Vision Cloud Agreement order line displays
these values.
Related Topics
• Coverages and Subscriptions in Sales Orders
Aribute Value
1078
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Aribute Value
◦ At the same time. This subline can reside in the same source order.
◦ At some later time. This subline can reside in a closed order line from another sales
order that you already imported.
The import uses these aributes to establish a relationship between the coverage item and the covered item.
The import process you use must map each of these aributes in the import payload of the source order to an
aribute in a sales order in Order Management.
3. Make sure your source order includes a value for the Number of Billing Periods aribute for the coverage item.
4. Make sure your source order includes values for coverage item aributes, depending on whether the source
order contains price details.
Oracle Fusion Pricing won't price the Oracle Fusion Pricing will price the item.
item.
◦ Make sure you set up the Enable Contract Coverage aribute and Sales Product Type aribute so they
support the covered item. For details, see the Manage Coverage for Sales Orders topic.
1079
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
◦ To specify a subscription item, set Sales Product Type to Subscription. To use a subscription as a covered
item, enable Contract Coverage for the subscription.
A subscription is similar to a coverage item. It includes a Duration, Period, Contract Start Date, and
Contract End Date. In general, the rules that apply when you import a coverage item also apply when you
import a subscription. For details, see the Manage Subscriptions for Sales Orders topic.
6. Set values for duration and period dierently according to your set up.
Fixed Make sure the Duration and Period in the source order match the values you set for Duration
and Period in Product Information Management.
Open Ended If you import a source order that includes a coverage item, and if the coverage item doesn't
include price details, then make sure the import includes values for Duration and Period.
7. Make sure the value of the coverage quantity equals the value of the covered quantity.
8. Make sure the value of the coverage UOM equals the value of the covered UOM.
9. If the coverage item covers a covered item that Order Management already submied to order fulllment, then
make sure the status of the covered item is Closed.
10. Examine your import payload. Make sure the document references that identify the coverage line map to only a
single covered line.
One coverage line can cover only one covered line. A coverage line must not cover more than one covered line.
• If you import the start time stamp, duration, and period, then Order Management uses these values to
automatically calculate the end time stamp for you.
• If you import the start time stamp and the end time stamp, then Order Management uses these values to
automatically calculate the duration and period.
1080
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
For example, use a REST API payload to import the contract duration, start time stamp, and end time stamp.
• A duration of 2
• Period of 0zE
• Contract start time stamp of 2019-12-13T19:51:49+05:30
• No value for the end time stamp
Note.
1081
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Technology Aributes
Sales Orders for Order Hub REST API • Use the ContractStartDateTime and ContractEndDateTime aributes to import your
or an ADF web service. time stamps for the current release.
• Use the ContractStartDate and ContractEndDate aributes for earlier releases.
• Use the ServiceDuration aribute to import the duration of a coverage or subscription.
• Use the ServiceDurationPeriodCode aribute to import the period of a coverage or
subscription.
SourceSalesOrderImportTemplate
FBDI template. Use these aributes.
• Contract Start Date
• Contract End Date
• Service Duration
• Service Duration Code
• Freeze Price
• Freeze Shipping Charges
• Freeze Tax
. . .then make sure the input payload includes coverage for each congure option that you enable for contract coverage.
If you set the Enable Contract Coverage aribute to Y on the Edit Item page in the Product Information Management
work area, then the congure option is enabled for contract coverage.
• If the source order doesn't contain a coverage for each congure option, then reject the source order.
• If the coverage quantity and the UOM for each congure option don't match the line quantity and UOM for the
covered item, then reject the source order.
Make sure it does these validations for each congure option that's enabled for contract coverage.
For details about pricing, see the Overview of Pricing Covered Items topic.
• Freeze Price
• Freeze Shipping Charges
• Freeze Tax
1082
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
Note.
• The source order must include coverage only for the congured item that's the root parent, and not for each
congure option.
• If you enable the congure option for contract coverage, then your import process must create a coverage line
for each congure option. Each congure option can be an option class or option item.
• If the input payload contains a coverage for the root parent and also for one or more congure options, then
your import must reject the source order.
Note these points when you return a covered item, depending on whether the source order contains price details.
If Oracle Fusion Pricing prices the item, then the import payload can specify to return the
If Oracle Fusion Pricing doesn't covered item and the coverage lines.
price the item, then you can return
the coverage item that covers the Make sure your import payload includes the return line for the covered item. Oracle Fusion
covered item. Applications will create the return lines for the coverage lines.
Make sure your import payload
includes these details.
1083
Oracle SCM Cloud Chapter 7
Implementing Order Management Features
If your import payload returns only the coverage item, then note these points.
• The quantity for the coverage line must equal the total returnable quantity of the covered line. Your import
payload can't return only part of the returnable quantity.
• The coverage return UOM in the import payload must equal the covered line UOM.
• If the source order contains price details, then the import payload must include the return charges.
Related Topics
• Overview of Importing Orders into Order Management
1084
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
8 Order Processing
Application Behavior
Use Order Proles to Control Order Management Behavior
Manage predened prole values to control behavior in Order Management Cloud.
Most proles include predened values so you don't need to set them up unless you need dierent values to meet your
deployment requirements.
Currency Conversion Type Specify the value to use when converting Single site and for each user
a currency in the Order Management work
area. This value is a conversion type.
Display Currency Specify the currency to display in the Single site and for each user
Order Management work area.
Required Overview Status Filter Specify the default customer to use when Only for a single site
ltering the summary of status data on the
Overview page of the Order Management
work area.
It allows your users to view summary
data for only one customer at a time.
It removes the All option. Order
Management provides no value, by
default. To improve performance, you can
enter a customer identication number.
Skip Availability When Searching for Item Improve performance when the user Only for a single site
searches for an item on the catalog line.
If you set this option to Yes, then Order
Management doesn't send a request to
Global Order Promising to determine
1085
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Skip Pricing Totals and Pricing Validation Improve performance. Don't validate the Only for a single site
price and don't calculate the total price
when the user clicks Add on the catalog
line.
User Request Waiting Period in Seconds Specify the number of seconds to wait Only for a single site
after an action nishes. This time allows
each asynchronous web service to nish
before displaying a conrmation message
or a warning message in the Order
Management work area. The default value
is 5.
The Where You Can Use It column describes whether you can use the aribute for a single site in your implementation,
and for each user.
Retain Sales Order Number Single site and for each user
Choose one.
If you set Retain Sales Order Number to N, then Order Management doesn't use the source order number as the order
number during or after transformation.
• Order Management will assign a new order number for the source order and display the new number
throughout the Order Management work area after transformation and during order fulllment.
• If the source order number in the source order you import from the source system isn't unique in the source
system, then you must set this option to N.
1086
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
For example, if source system A contains two source orders that each use order number 12345, then set this
option to N. If source system A contains one source order that uses order number 12345, and if source system B
contains one source order that uses order number 12345, then set this option to Y or N. This set up is necessary
to avoid an error during order import because Order Management requires a unique order number for each
sales order in the same source system.
• If you use Oracle Fusion Order Orchestration and Planning (OPS) as your source system in a channel, then you
must set Retain Sales Order Number to N. Order Management comes predened to use OPS to create the sales
order number when you create a sales order in the Order Management work area, by default. You can't modify
this behavior. Seing Retain Sales Order Number to Y when you use OPS as your source system in a channel
causes conicts with order numbers for sales orders that you create in the Order Management work area. For
details about OPS, see the Integrate Order Management with Source Systems topic.
• The default value is N.
Related Topics
• Integrate Order Management with Source Systems
Product transformation
Use the order type as part of a pretransformation, transformation, or posransformation rule.
For example.
• Write a rule that sets the default value for the order type according to the value of some
other aribute on the order header.
For example, assume your company writes a contract to fulll sales orders from
Customer y over all other customers. You can write a rule if Customer is Y, then
set Order Type to Top Priority, then use an external interface routing rule that
routes the sales order to a fulllment system that prioritizes shipment speed over other
factors, such as cost.
• Write a rule that uses the value of the order type to determine the default value to
display for an aribute on the order header or order line.
1087
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Order Management runs each pretransformation rule when the user creates or revises a sales
order in the Order Management work area. For example, when the user sets or updates the
Business Unit, Customer, or Order Type, or adds an order line. To avoid overwriting these
selections, you can write a pretransformation rule so it sets a value only if the aribute is
empty.
Process assignment Write a rule that uses the order type to assign an orchestration process.
For example, if Order Type is Government - Department of the Interior, then set up an
orchestration process that fullls order lines according to Department of the Interior
procurement requirements.
External interface routing Write a rule that uses the order type to determine which fulllment system will fulll the sales
order.
For example, if Order Type is Emergency, then route the sales order to a fulllment system that
prioritizes shipment speed over other factors.
Use the order type in the condition or result of a processing constraint. For example, prevent Order Management from
updating an aribute according to the value of some other aribute. You can also use the order type to prevent Order
Management from submiing a sales order. For example.
This topic includes example values. You might use dierent values, depending on your business requirements.
Aribute Value
1088
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Order Management uses the ORA_DOO_ORDER_TYPES lookup for aribute Order Type, but doesn't come
predened with values for this lookup. If you don't add any values, then Order Management still displays the
Order Type aribute but it won't contain any values.
3. In the Lookup Codes area, click Actions > New to add each lookup code.
Related Topics
• Use Visual Information Builder
• Overview of Assigning Orchestration Processes
• Route Requests from Order Management to Fulllment Systems
1089
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
You can expose and modify aributes in various locations, such as in the sales order header or on the order line. The
Order Entry Specialist then uses the Order Management work area to display them. You use a sandbox to do the
change, test it, publish it, then use the actual work area to verify.
In this example, you create a sandbox named My Sandbox, expose the Primary Salesperson aribute, then modify the
display name so it says My Primary Salesperson.
1090
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
◦ On the Sandbox page, click Create Sandbox. create a new sandbox, activate it, then open it.
◦ On the Create Sandbox page, on the Page Composer row.
Aribute Value
Name My Sandbox
Oracle Page Composer displays, which is a page editor you can use to modify the visual layout that the
Order Management work area uses. You can tell you're in Page Composer because it displays a section
across the top of the page. The section includes tabs, such as Add Content, Select, and Structure.
To modify an aribute in another work area, go to that work area, then go to the page in the work area
that displays the aribute you must modify.
For details about how to use Page Composer, see the Guidelines for Page Modication topic.
3. Expose the aribute.
◦ Click Select.
◦ Click in the lower portion of the order header, for example, below the Customer aribute, then click Edit
Parent Component.
◦ In the Component Properties dialog, click Children, then notice the list of aributes that display.
Each aribute that doesn't contain a check mark is hidden. You can add a check mark to unhide the
aribute.
◦ Add a check mark next to Primary Salesperson, then click Apply > OK.
4. Verify values in the sandbox.
◦ Verify that the order header displays the Primary Salesperson aribute.
◦ In the Order Lines area, click View > Columns, and notice you can display the aribute.
◦ In the upper-right corner, click Close.
◦ On the Order page, click Done.
1091
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
◦ Notice that you can now display the Primary Salesperson aribute on the Manage Orders page.
You are no longer in the sandbox. You're now back in Order Management.
◦ Repeat the verication you did earlier in the sandbox, but this time use the Order Management work area
outside of the sand box.
Related Topics
• Create and Activate Unied Sandboxes
• Guidelines for Using Page Composer
1092
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Note.
◦ Order Management doesn't allow you to add a new line and cancel a line in the same shipment set during
the same revision, so it displays the error message.
◦ The predened DOO_ORCHC_SHIPSET_ADD_CANCEL message denes the message text.
1093
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Try it.
You open a second browser window so you can toggle between your design time set up in the Setup and
Maintenance work area and run time rendering in the Order Management work area.
◦ In the Setup and Maintenance work area, click Tasks > Search.
1094
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Rene your search. Remove the value from the Application aribute and enter a value in Message Name,
such as DOO_ORCHC_SHIPSET_ADD_CANCEL.
If you don't know the name, then remove the value from the Application aribute and enter a value in the
Module aribute.
Decomposition Preparing a source order for Order Management during order import.
Process Order Order Management starts to process fulllment. There's usually missing data, aribute
values aren't correct, there's a problem in communicating with other applications
during fulllment, and so on.
Common Order Management encounters any one of a wide variety of problems. The problem
isn't specic to Order Management. It might occur with other Oracle Fusion
applications. For example, communication with a web service fails, you aempt to use
an application programming interface that Oracle Fusion doesn't support, and so on.
Search is additive. For example, if you set Module to Common and Message Name to
DOO_ORCHC_SHIPSET_ADD_CANCEL, then the search doesn't return anything because
DOO_ORCHC_SHIPSET_ADD_CANCEL isn't in the Common module.
Use a wildcard. For example, enter DOO_% in Message Name to return all messages that start with DOO_.
Here are some abbreviations you might nd useful.
1095
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
FOM_% Order Management Cloud. FOM is an abbreviation for Oracle Fusion Order
Management
◦ In the search results, click the line that includes DOO_ORCHC_SHIPSET_ADD_CANCEL in the Message
Name column, then click Actions > Edit.
◦ On the Edit Message page, add your text at the end of the User Details aribute. For example.
Instead, revise the sales order, cancel lines in the shipment set, then submit the order. Wait
for order management to process the revision. Revise the order again, add lines, then submit the
order. Hi there. I am Diane Cho, your order administrator. Please contact me if you need help
with shipping.
Note.
• Don't modify the Message Number. Order Management uses it to uniquely identify the message.
• Examine the Translation Notes. They might contain details that describe when and why a message
displays. Use them to help troubleshoot errors or warnings.
• In general, don't modify predened text in the Short Text aribute. Each message describes an
error or warning condition. Its important to keep the predened Short Text to support these
conditions.
• Short Text has a 160 character limit.
• In general, don't modify predened text in the User Details aribute. If you want to add text, add it
immediately after the predened text.
◦ Click Save.
3. Test your set up.
1096
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Message Name
FOM_EXAMINE_QUANTITY
Use a format that helps you identify your message and distinguish it from predened
messages that Order Management and other Oracle Applications display.
application_text_description
where
application. Abbreviation that identies the application. Use FOM for Oracle Fusion
◦ Order Management, which is an earlier name for Order Management Cloud, orDOO
for Distributed Order Orchestration.
◦ text_description. Describe the purpose of the message. Use underscores to improve
readability.
Module
Manage Orders
Here are the modules you typically use when you set Application to Order Management.
◦ Manage Orders
◦ Import Orders
Here are the modules you typically use when you set Application to Distributed Order
Orchestration.
◦ Task Layer
◦ Decomposition
◦ Process Order
◦ Orchestration
1097
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Enter any number from 10,000,000 to 10,999,999. The Order Entry Specialist can use this
number when they contact the help desk.
At runtime, the message displays the message name, number, and application abbreviation.
For example.
Category Product
Severity Low
3. In the Message Tokens area, click Actions > New, then set values.
Aribute Value
Description Number that the Order Entry Specialist enters in the Quantity aribute on the order line.
4. Click Save and Close, and then click Save and Close again.
◦ Split the fulllment line. To split the line, remove it from the shipment set, add a new line, then split
your new line.
1098
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
◦ Substitute an item. To substitute, remove the line that contains the item you must substitute from the
shipment set, then add a new line that contains the substitution.
• If the fulllment line already shipped, or if Order Management already created a request to invoice the line,
then the Fulllment Line Shipment Set Update constraint prevents you from updating the shipment set. The
constraint comes predened as enabled. You can disable it.
• If you remove an order line from a shipment set, then Order Management doesn't update the orchestration
plan.
• If you manually schedule a shipment set, and if you select an option for one or more fulllment lines, and if
these lines are part of a shipment set, then Order Management applies the scheduling option that you select to
all of the fulllment lines that reference the shipment set.
• If you include items that can ship with items that can't ship in the same shipment set, then include a pause step
in your orchestration process only if you need the pause so you can invoice the shippable and nonshippable
items together. For example, you add line 1 that contains the shippable AS54888 Desktop Computer and line 2
that contains the nonshippable warranty that covers the AS54888 in the same set.
Note.
• Use the ShipSetName aribute to specify the shipment set. Include the aribute in the Line hierarchy. This
example sets the name to SS1, and its part of the hierarchy for source transaction line 101. It adds line 101 to
shipment set SS1.
1099
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• Set ShipSetName to the same value in each line that you need in the set. Assume your set includes lines 101 and
102. Set ShipSetName in line 102 to SS1.
• Make sure each line that's part of the shipment set uses the same value for aributes that aect the set, such as
Warehouse. For a list of these aributes, see the Ship Order Lines in Shipment Sets topic.
• To get the complete payload for this example, go to White Papers for Order Management
Cloud (Doc ID 2051639.1) at hps://support.oracle.com/epmos/faces/DocumentDisplay?
_afrLoop=472607338634463&id=2051639.1. Download the Payloads and Other Files That Support
Implementation aachment. Open the aachment then open source_order_with_shipment_set.txt.
Related Topics
• Cancel Order Lines That Remain in the Same Status
• Ship Order Lines in Shipment Sets
Order Management comes predened to use a default set of statuses for fulllment tasks. You can also set up statuses
and sequences. For example, you can set up an orchestration process that uses a set of statuses and rule logic for
textbooks for a college, and set up another orchestration process that uses a dierent set of statuses and rule logic for
textbooks for a primary school.
• You must specify the status that Order Management assigns to an orchestration process at each orchestration
process step. For example, if the Schedule School Books task includes a status of Unsourced, then you must
specify the status that Order Management assigns to the orchestration process for this step.
• You must specify a status that indicates when a task done. You can select only a status that you set up to
indicate that a task is done.
• If you modify the name of the default status, then Order Management displays the modied name throughout
the Order Management work area.
• If you don't set up statuses for an orchestration process, then Order Management uses the predened statuses,
by default.
Order Management evaluates the status conditions that you create sequentially at run time. The condition that
evaluates to true, and that includes the highest sequence number, determines the orchestration process status.
1100
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Related Topics
• Set Up Orchestration Processes
• Order Management Statuses
Tab Description
Status Codes Specify the display name that Order Management displays in the Order Management work
area.
Fulllment Lines Create the status values that users can select for a fulllment line in an orchestration process.
Task Types Assign a status code to a task type. If a system outside of Order Management Cloud provides
the status, then assign this status to the fulllment task that references this system. For
example, if a shipping system provides the status, then assign the code to the Shipping task
type.
Orchestration Process Classes Assign the status code to fulllment lines or orchestration processes where Order
Management must use the status.
For example, you can use an orchestration process class to control the status codes that an
administrator can choose when creating a status condition for an orchestration process. You
must use the Manage Status Values page to set the status values and to make them available
when you create a status condition.
Related Topics
• Order Management Statuses
1101
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Set Ups
Manage Task Status Conditions
Order Management Cloud fullls each fulllment task one step at a time when it processes a sales order, and it uses a
predened set of sequential statuses to track the progress of each task. You can use the Manage Task Status Conditions
page to manage the status conditions that determine the status of these tasks according to task type.
1. On the Manage Task Status Conditions page, in the task list, click the task type that you must manage.
For example, to manage the status conditions when Order Management processes a return, click the row that
contains Return in the Type column.
2. In the Status Conditions list, modify or add new conditions as necessary.
Aribute Description
Internal Status Value Displays a status that Order Management receives from a fulllment system through a
fulllment task. For details, see the Task Types topic.
Display Status Value Species the value that Order Management displays.
For example, assume your fulllment system sends a status of Invoiced for a task, but your
company uses Billed. You can set Display Status Value to Billed to display Billed throughout
the Order Management work area.
Mark as Complete If this option contains a check mark, then Order Management considers the task to be done
when it reaches the condition.
For example, assume you click the Return row in the task list on the Manage Task Status
Conditions page, then, in the Status Conditions area, you add a check mark to Mark as
Complete for the Canceled status condition and for the Delivered status condition. In this
example, Order Management considers the task to be done when the task reaches the
Canceled status or the Delivered status.
Related Topics
• Task Services
This topic includes example values. You might use dierent values, depending on your business requirements.
1102
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Code Standard_Class
Name Standard_Class
4. Click Save.
5. In the Status Values area, click Actions > Add Row, then add the value.
Aribute Value
Related Topics
• Order Management Statuses
• Set Up Orchestration Processes
Fulllment Line
Fulllment Line Status
Specify the status that your orchestration process assigns to a fulllment line.
For example, you can specify that if the Schedule School Books task includes a status of Pending Scheduling, then set
the fulllment line status to Unscheduled.
• The orchestration process step runs fulllment tasks when it processes the fulllment line.
1103
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• The fulllment line status displays throughout the Order Management work area.
• You can specify dierent sets of statuses and rules for dierent items that the fulllment line references. For
example, specify one set of status conditions for a hard cover book, and another set of status conditions for a
paperback book.
• If you don't create conditions, then Order Management uses the status rule set that it assigns to the default
category.
You might need dierent fulllment lines to use dierent sets of statuses. For example, a fulllment line you ship, such
as a computer, might need statuses that are dierent from a fulllment line you don't ship, such as a warranty.
• Use a category to make sure Order Management applies the same set of status conditions to specic sets of
fulllment lines. It applies the same status conditions to all fulllment lines that reference the item that resides
in the category.
• Use catalogs and categories in more than one orchestration process.
• Select the status catalog when you set up your orchestration process.
You can only select a catalog that meets these requirements.
◦ The item exists in only one category in the catalog.
◦ The category contains items or subcategories.
◦ The category doesn't contain items and subcategories.
◦ Order Management controls the catalog only for the master, and not for each organization.
• Use the Product Information Management work area to set up the status catalog.
Note.
• You can use a single status rule set with more than one category. If a parent category and a child category each
reference a dierent status rule set, then Order Management uses the status rule set that the child references.
Use this feature so you can create an All category to handle all items in one orchestration process. Use it to add
a subcategory for a subset of items that must use a dierent status rule set.
• If you migrate an orchestration process between environments, such as from a development environment to
a production environment, then don't modify the status rule set name in either environment. Modifying the
name might prevent Order Management from updating references to other data in the orchestration process.
1104
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Here's an example.
Note.
• You use the Sequence aribute in the Orchestration Process Status Values area on the Status Conditions tab of
the Create Orchestration Process Denition page.
• You set the sequence of the status conditions so they match the logical progress of the status. For example,
Sequence 150 for status Awaiting Shipping occurs before Sequence 160, status Shipped. If Awaiting Shipping
and Shipped each evaluate to true, then the orchestration process sets the status to Shipped because 160 is
higher than 150.
Related Topics
• Order Management Statuses
1105
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Code SCHED_GOODS
4. In the Create Status Code dialog, enter values, then click Save and Close.
Aribute Value
Code SCHED_CLOTHING
1. On the Manage Status Values page, click Fulllment Lines > Actions > Select and Add.
2. In the Select and Add dialog, in the Status Code aribute, enter SCHED_GOODS, then click Search.
3. Click SCHED_GOODS > OK.
4. Click Actions > Select and Add.
5. In the Select and Add dialog, in the Status Code aribute, enter SCHED_CLOTHING, then click Search.
6. Click SCHED_CLOTHING > OK.
7. Click Save and Close.
You can now set the status value for the fulllment line in the orchestration process to SCHED_GOODS or
SCHED_CLOTHING.
Related Topics
• Order Management Statuses
1106
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Status Condition
Add Status Conditions to Orchestration Processes
Add status conditions that specify when to set the status of an orchestration process.
Assume you need an orchestration process that fullls sales orders for company t-shirts, and you must specify the
statuses that the process uses throughout the order life cycle according to the status of the fulllment task.
• If the status of the Schedule task is Scheduled, then set the orchestration process status to Scheduled.
You typically add more than one status condition to an orchestration process. For brevity, you will add only one in this
topic.
This topic includes example values. You might use dierent values, depending on your business requirements.
For details about how to create this process, see the Add Branches to Orchestration Processes topic.
3. On the Edit Orchestration Process Denitions page, set the value.
Aribute Value
4. Click Save.
1107
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Sequence 1
Notice that the dialog added a value of "Schedule" in the Expression window of the Expression Builder.
◦ In the Expression window, click anywhere after "Schedule", then enter an equal sign (=).
◦ Expand CallCustomerWhenLargeInvoice - Schedule, click SCHEDULED, then click Insert Into
Expression.
◦ Notice that the Expression window contains "Schedule"="SCHEDULED", then click OK.
5. Click Save.
Related Topics
• Add Branches to Orchestration Processes
Assume you must set up orchestration processes that can handle sales orders for dierent types of t-shirts. You could
use the same orchestration process for dierent types of merchandise, but you prefer to dene statuses for each type
of clothing separately because each clothing type requires a dierent status. To do this, you select the status catalog,
then add the status conditions for a single category of items in the orchestration process.
You typically create more than one status condition for each fulllment line. For brevity, in this topic you create only one
status condition for the default category and another status condition for the item.
This topic includes example values. You might use dierent values, depending on your business requirements.
1108
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Aribute Value
Code LargeOrders
1109
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
◦ In the Status Value aribute, click the arrow, then click Search.
◦ In the Search and Select dialog, in the Status Code aribute, enter SCHED, then click Search.
◦ In the list, click Scheduled, then click OK.
9. Add the expression.
◦ On the Edit Status Rule Set page, in the Expression column, click the icon.
◦ In the Expression Builder dialog, click CallCustomerWhenLargeInvoice - Schedule, then click Insert
Into Expression. Make sure you don't expand CallCustomerWhenLargeInvoice - Schedule.
Notice that the dialog added a value of "Schedule" in the Expression window of the Expression Builder.
◦ In the Expression window, click anywhere after "Schedule", then enter an equal sign (=).
◦ Expand CallCustomerWhenLargeInvoice - Schedule, click SCHEDULED, then click Insert Into
Expression.
◦ Notice that the Expression window contains "Schedule"="SCHEDULED", then click OK.
10. On the Edit Status Rule Set page, add a check mark to Notify External Systems, then click Save and Close.
Notify External Systems allows Order Management to communicate the status to an external system that
resides outside of Order Management. For details, see the Send Notications from Order Management Cloud to
External Systems topic.
Aribute Value
Code Shirts
Name Shirts
Related Topics
• Add Branches to Orchestration Processes
• Order Management Statuses
1110
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
1111
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
This topic includes example values. You might use dierent values, depending on your business requirements.
1. In the Setup and Maintenance work area, click Tasks > Search, search for, then open Manage Document
Sequences.
2. On the Manage Document Sequences page, search for the value.
Aribute Value
1112
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
3. In the search results, click Expand, set values, then click Save and Close.
Aribute Value
Display Ignore this aribute. Don't set it. Its for internal use only.
End Date Leave empty. Order Management will continue to increment the sales order number in
perpetuity.
Note.
• Order Management uses the predened ORA_FOM_DOC_SEQUENCE_AUTO number sequence to create order
numbers, starting with the value you set in Initial Value.
• Each order number is unique.
• The order number is permanent. Order Management doesn't change the order number even if the user
modies an order aribute.
• If you import orders from a source system through a web service, REST API, a le, or any other way, and if you
set the DOO_RT_USE_ORDER_NUMBER order prole to Y, then Order Management uses order numbers from
your source system and ignores ORA_FOM_DOC_SEQUENCE_AUTO.
• You can't.
◦ Use your own number sequence, except for order numbers you import.
◦ Specify sequence according to determinant type.
◦ Specify gapless or manual sequencing.
Related Topics
• Document Sequences
• Guidelines for Managing Document Sequences
1113
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Note.
• A list of values is a user interface element that allows your users to choose the value for an aribute. For
example, the user can use a drop down list of values to set the value for the Order Type aribute on the order
header.
• Use the Manage Order Lookups page in the Setup and Maintenance work area to set up the lookup. Set these
aributes.
1114
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Description
Lookup Code Specify an abbreviation that represents the meaning. Each code uses one value that the user
can choose in the list of values.
Display Sequence
Specify the sequence of the lookup codes in the list of values.
For example, if Sequence is 1 for Standard Orders, 2 for Drop-ship Orders, and 3 for Mixed
Orders, then the list of value displays values in this sequence.
◦ Standard Orders
◦ Drop-ship Orders
◦ Mixed Orders
Related Topics
• Aributes You Can Use with Web Services
Precision is the total number of digits that a number contains, where scale species the number of digits that exist to
the right of the decimal point.
You can't modify precision but you can modify scale. For example, if you set the scale to 3 in the Quantity Decimal
Precision prole, and if the Order Entry Specialist enters 17.3468 for the quantity, then the prole will round 17.3468 to
17.347..
1115
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Quantity for some items is typically a whole number. For example, most companies sell a desktop computer as a whole
item. Don't use Quantity Decimal Precision to allow only a whole number in the quantity. Instead, you can set the
Indivisible aribute to Yes in the Product Information Management work area when you set up the item.
Aribute Value
5. In the search results, in the Prole Values area, set the value, click Save and Close > Done.
Aribute Value
Prole Value 3
You can set decimal precision only at the Site level. You can't set it for each item or for each unit of measure.
6. In the Navigator, click Order Management.
7. On the Overview page, click Create Order.
8. On the Create Order page, in the Select Item window, enter Diamond, then click Search.
9. On the catalog search line, in the quantity window to the left of Gram, set the value to 17.3468, then click Add.
10. Verify that the Create Order page displays a message that it rounded your value to 17.347.
1116
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
If the user adds the AS54888 item, then set the default value for the Accounting Rule attribute to Immediate,
and set the value for the Invoicing Rule to the Arrears Invoice attribute.
This topic includes example values. You might use dierent values, depending on your business requirements.
Do it.
1. Sign into Oracle Fusion Applications with a user role you can use to administer Product Information
Management.
If you don't sign in with this user role, then the Product Information Management work area won't display your
product details and you can't do this procedure.
1117
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Item AS54888
Aribute Value
1118
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Do it.
IF item = AS54888
1119
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Related Topics
• Overview of Assigning Orchestration Processes
• Demo for Creating Business Rules
• Overview of Using Business Rules With Order Management
1120
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
You create a rule that references the hazardousMaterialFlag aribute in Product Information Management.
For details about how to create a business rule, see the Overview of Using Business Rules in Order Management topic.
Do it.
1121
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
The phrase Item Denition indicates that the aribute resides on an item denition in Product
Information Management.
◦ Set the operator to Is Equal To.
◦ Enter Y, then click OK.
3. Create the Do statement.
The phrase Order Fulll Line indicates that the orchestration process you set will process order fulllment
lines.
4. Search for your orchestration process.
For this example, assume you already created and deployed this orchestration process. If you didn't
deploy, then Search won't nd it.
◦ Click the row in the search results.
◦ Click OK.
◦ In the Create Action dialog, click OK.
5. Activate and publish your rule.
Related Topics
• Overview of Assigning Orchestration Processes
• Demo for Creating Business Rules
• Overview of Using Business Rules With Order Management
1122
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• If the source order header includes PMC, then set the default value for Scheduled Ship Date to the current date.
Note.
1123
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
The orchestration process uses shipping aributes when it orchestrates shipment during fulllment.
• Carrier
• Method of Transport
• Service Level
INSTANCE CODE ENTITY NAME ATTRIBUTE NAME SOURCE VALUE TARGET VALUE
1124
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
INSTANCE CODE ENTITY NAME ATTRIBUTE NAME SOURCE VALUE TARGET VALUE
Next, get details about the service level and mode of transport. Query according to the lookup codes from the result of
your rst query.
SELECT
lookup_code
, lookup_type
, meaning
, enabled_flag
, start_date_Active
, end_date_Active
FROM
MSC_SR_LOOKUP_VALUES_vl
WHERE LOOKUP_CODE IN (15,39)
order by
lookup_code;
Next, get details about the carrier. Query according to the lookup code for the carrier from the result of your rst query.
SELECT
tp_id
, partner_name
, party_id
FROM FUSION.MSC_GLOBAL_TRADING_PARTNERS
where tp_id = 32512;
Related Topics
• Overview of Using Business Rules With Order Management
1125
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• If an Order Entry Specialist aempts to submit or modify a sales order, order line, or fulllment line, and if a
processing constraint doesn't allow the submit or change, then Order Management rejects it and displays a
message.
• If a source system aempts to submit or modify a sales order, then Order Management rejects it and sends a
return message.
• Order Management also uses the processing constraint to make sure each fulllment request includes the
aributes that it needs to process the request.
For details about how to use a constraint to manage change, including how to set up AND and OR conditions, see the
Guidelines for Managing Change That Occurs During Order Fulllment topic.
Examples
Create a constraint that rejects the change after the orchestration process has achieved the
shipment step.
Reject each sales order that doesn't Assume your company doesn't deliver items to an address that doesn't include a ship-to
include required aributes. contact.
Create a constraint that rejects the sale order when it doesn't include a ship-to contact.
1126
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Create a processing constraint that rejects a change when all of these conditions are true.
Part Description
Role The job role that the constraint doesn't allow to make the change.
For example, you can constrain an Order Entry Specialist from changing a sales order when the
orchestration process proceeds beyond a step that you specify.
Action
The action that the constraint doesn't allow. You can constrain the user from doing these
actions.
• Create
• Validate
• Update
• Split
• Submit
• Cancel
• Delete
Condition The condition that the constraint evaluates to determine whether to apply the constraint. For
example, you can create a condition that applies a constraint when Order Management books
a sales order.
• if the validation rule set is true, and if the user aempts an action on the record set that the processing
constraint prevents, then constrain the operation and display a message.
Note.
• If you set up a constraint that doesn't include a condition, then the constraint is always true. For example, the
predened processing constraint that prevents the Order Entry Specialist from deleting a sales order prevents
deletion in all situations.
• You can use a constraint with an extensible exeld.
• You can write a constraint for a sales credit. For example, write a constraint that prevents the user from
updating the sales credit if Order Management already shipped the order line. You can't write a a validation rule
set that constrains a sales credit. For example, you can't write a constraint that prevents the user from updating
the warehouse if the sales credit empty.
1127
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
How It Works
1128
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Object Description
In this example, a predened validation rule set named Order is Closed examines the Open
aribute on the order header to determine whether the value is N.
Note.
• Use the validation rule set to restrict the validation that the constraint does to lines that
meet the condition you specify, such as lines that are billed.
• The validation rule set prevents the constraint from examining all lines, which might
degrade performance.
• Create the validation rule set before you create the constraint.
• You can't modify or delete a predened validation rule set, but you can create a new
one.
• You can apply a processing constraint when the condition is true or isn't true.
• You can't enter a value that contains ~ (a tilde) when you dene a validation rule
set because Order Management uses the tilde as a delimiter when it evaluates the
constraint rule at run time.
You might also encounter this problem at run time with some order aributes. For
example, a shipping instruction might contain a tilde.
Record set
A set of records that Order Management groups according to common aribute values so it
can evaluate a constraint.
For example, to evaluate all sales orders for a customer, specify to evaluate one of these
entities when you create the record set.
• Order header
• order line
• Order fulllment line
1129
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Object Description
You then select an aribute to rene the record set. For example, to evaluate all sales orders
for a customer, select the Order Header entity, then select the Sold-to Customer aribute.
Validation rule sets and record sets work together to create the conditions where the constraint
constrains the action.
You must create your validation rule sets and record sets rst, then create the constraint.
Constraint entity The business object or orchestration process that the constraint constrains.
For example, an order header, or an aribute of an order header, such Latest Acceptable Ship
Date.
Constraint package
A set of triggers that Order Management applies to a table in an Oracle database. A
background process sets triggers when you create a constraint package.
• Use the Manage Processing Constraints page or run the Generate Constraint Packages
scheduled process.
• Create or modify a record set or a validation rule set that's of a table type.
You don't need to create a constraint package for a validation that isn't a table type.
Constraint Name
Here are the text strings you can use in the constraint name.
PAYMENT Payment.
PRICING Pricing.
Constraint name doesn't include Screen for all types during order validation.
GTM, PAYMENT, or PRICING
1130
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
The text style in the text string isn't case-sensitive. For example, use GTM, Gtm, gtm, gtM, and so on.
You can place the text string anywhere in the constraint name.
Constraint Entities
A constraint entity is the view or orchestration process that a processing constraint constrains.
View
Constrain change according to the value of an aribute that a user can view in the Order
Management work area.
Here are the types of view constraint entities you can choose.
For example, if you set Order Header as the constraint entity, then the constraint constrains
changes according to the order header.
Use a predened view constraint entity, but you can't create a new one.
The Aribute Details list on the Manage Constraint Entities page displays when you choose a
view constraint entity. Use it to choose the aributes to constrain.
Process
Constrain an action from occurring at some point in an orchestration process, such as updating
an aribute or deleting a table entity, according to a combination of orchestration process,
task, and service.
For example, the Update Shipping task layer service references the OrderOnlyProcess
constraint entity. Here's what OrderOnlyProcess species.
• Considers the current position of the transaction in the orchestration process ow.
• Can validate required aributes for a fulllment request, such as a Create Shipment
request, Update Shipment request, or Create Reservation request.
You can use a predened process constraint entity or create a new one.
1131
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
This topic includes example values. You might use dierent values, depending on your business requirements.
Aribute Value
Description A record set created on fulllment lines that belong to the same customer.
3. In the Fulllment Lines That Belong to Same Customer area, click Actions > Add Row, then set the value.
Aribute Value
1132
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
The concurrent request to generate constraints validation packages was submitted. Request ID: 10650.
Aribute Value
Description The validation rule set for lines with status Awaiting Shipment.
3. In the Shipment Validation Rule Set area, click Actions > Add Row, then set values.
Aribute Value
Aribute Value
1133
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
3. In the Shipping Constraint area, in the Conditions list, click Actions > Add Row, then set values.
Aribute Value
Group Number 1
Message You can't update the fulllment line because its in the shipping stage.
4. In the Shipping Constraint area, click Applicable Roles, make sure All Roles is enabled, then click Save.
1134
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
The Manage Constraint Entities page displays view constraint entities and process constraint entities. Order
Management can constrain changes to any process constraint entity, so it isn't necessary to enable them for
constraint.
3. In the Search Results, click the constraint entity that displays the aribute you must constrain.
For example, to constrain changes to Latest Acceptable Ship Date on the order header, in the Display Name
column, click Order Header.
4. In the Aribute Details list, in the row that contains Latest Acceptable Ship Date in the Aribute column, add a
check mark to the Constraint Enabled option.
• Use the Manage Constraint Entities page to enable an extensible exeld so you can use it on the Manage
Processing Constraints page.
• Extensible exelds aren't available on the Aributes menu of the Record Sets tab.
• You must enable an extensible exeld before you can use it.
• A processing constraint prevents changes to the order line after Order Management closes the line. If you
set up an extensible exeld on the order line, and if you don't constrain the extensible exeld, then the
constraint doesn't prevent the user from changing the value in the extensible exeld.
1135
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
This topic uses example values. You might use dierent values, depending on your business requirements.
Aribute Value
1136
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
4. In the Details area, click Actions > Add Row, set values, then click Save.
Aribute Value
Value String N
Order Management activates the validation rule set so you can use it in your constraint.
If you add more than one line in the Details area of a validation rule set, then Order Management evaluates them
together.
If you select two context and segment aributes, then the aributes must use the same context value. The context is
mutually exclusive. Consider this example.
Context Segment
Dealer Information ID
Warranty Information ID
You can't simultaneously select segment ID for the Dealer Information context and for the Warranty Information
context.
Aribute Value
1137
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
2. In the Details area, click Actions > Add Row, set values, then click Save.
Aribute Value
Scope Any
Related Topics
• Overview of Using Extensible Flexelds in Order Management
• Deploy Extensible Flexelds
Change Orders
Overview
Overview of Managing Change That Occurs During Order Fulllment
Order Management Cloud comes predened to process change, but you can modify the set up to meet your needs.
A change order is a change that aects a sales order during order fulllment. It can come from a variety of sources,
such as from a user through an order capture system, a user who uses the Order Management work area, or from
1138
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
change orders you import. For example, you might need to make changes to a sales order after you submit it to order
fulllment.
• Order Entry Specialist uses the Create Order Revision action to revise a sales order or makes changes in
fulllment views. Order Management doesn't apply order management extensions when the user makes a
change in a fulllment view. For details, see the Revise Sales Orders That You Already Submied topic.
• You import change from a channel.
1139
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
A processing constraint is a rule that controls who can change a sales order, what can change in the sales order,
and when the change can occur.
1140
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Entity Description
Order Header
Determine whether a processing constraint on header prevents change, and whether the
sales order is closed.
◦ If a constraint doesn't allow change, or if the order is closed, then reject the entire
change and exit this sequence.
◦ Evaluating order header before evaluating order lines prevents Order Management
from unnecessarily processing a closed sales order.
◦ Order Management evaluates aributes when the user creates the revision, and also
when the user submits the revision to make sure other fulllment changes didn't
occur that might aect the order.
Fulllment Line
Determine whether constraints on the fulllment line allow change.
◦ If a constraint doesn't allow change on any fulllment line, then reject the entire
change and exit this sequence.
◦ Some constraints on a fulllment line don't allow some changes, by default, such as
updating an order line if fulllment line status is Shipped.
Order Management does the transformations you set up, such as transforming an aribute value in the source
order to a value that your fulllment system can understand. For details, see the Transformation Rules topic.
If you create an order management extension that aects a change order, then Order Management nishes
transformation, then runs the extension.
4. Delta?. The delta is the dierence between an aribute value in the original sales order and the new value for
the aribute in the change order. For example.
Condition Description
• Uses values you specify on the Order Aributes That Identify Change page.
• Examines predened aributes that aect the task. You can't specify to examine or not examine
these predened aributes.
• Examines aributes you add that aect the task. You can specify to examine or not examine
aributes you add.
◦ Identies orchestration process steps that reference these aributes.
1141
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
◦ Analyzes the state of each step. The orchestration process records the state every time it runs a task.
Order Management compares the change order to the existing sales order to determine whether the
value of the aribute changed.
◦ Uses these state details to determine the processing needed to incorporate the change.
In this example, assume the user changed the quantity, and you specied Quantity as a change aribute, so
Order Management starts compensation.
5. Hold Current Task. If a delta exists, then hold the task that's currently running.
A change order requests to change a sales order that an orchestration process is already processing in order
fulllment. The orchestration process runs various tasks during order fulllment, such as schedule, reserve,
ship, or invoice.
For example, assume the orchestration process sent a request to the shipping system to ship the item, is
currently waiting for the shipping system to send a reply, and sets the status to Awaiting Shipping. The change
order might aect shipping, so Order Management sends a request to the shipping system to temporarily stop
processing the task.
Stopping the task allows Order Management to nish the change and prevent the shipping system from
shipping the sales order without the changes that the change order requests.
If the fulllment system can't accommodate the change, then it replies with a rejection, and the sequence ends.
For example, if the fulllment system already shipped the sales order, then its too late to accommodate the
change. Instead, the Order Entry Specialist must create a return order to make the requested changes.
6. Merge. Merge the change order into the sales order that the orchestration process is currently processing.
7. Compensate.
Compensate
A compensation paern is a rule that you set up on an orchestration process step that species adjustments to make
when an order changes.
For example.
1142
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
1. Check for Delta. Determine whether a delta exists that aects the current task. For example, if the current task
is reservation, and if a delta exists for the Quantity aribute, then the delta aects the reservation task because
the orchestration process must adjust the reserved quantity so it reects the change order.
If the delta determines that an aribute requires compensation, then the orchestration process uses the
compensation paern that the step references to compensate the step.
2. Compensate. Here's what Order Management does.
You can set up a business rule that determines the action to take according to the compensation paern.
Most orchestration process steps don't include a compensation paern, and they use Update, by default. In this
example, Order Management compensates some steps.
1143
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Schedule Cancels the Schedule step, then creates a new instance of this step. Order Promising
determines availability. Order Management replans fulllment, then assigns a revised date to
each orchestration process step.
Create Reservation
Assume the orchestration process in this example includes a paern for the Create
Reservation step.
◦ If Demand Class Code isn't Gold, then cancel the Create Reservation step, then create
a new instance of this step.
This rule instructs Order Management to release supply and create a new reservation for
all customers except Gold customers. Order Management also updates Create Reservation
according to the new dates, and updates the reserved quantity.
Create Shipment Request Updates the Create Shipment Request step with new dates and new item.
The compensating services run, and then nish. These services use FIFO (rst in, rst out) sequence to
compensate the sales order, according to the orchestration process sequence, by default. If Order Management
must cancel the entire sales order, then it uses LIFO (last in, rst out).
◦
Can accommodate the change. Order Management uses the original orchestration process to continue
processing.
◦ Can't accommodate the change. Order Management cancels the original orchestration process, then
starts a new one that can accommodate the change.
3. Send Update. Compensation nishes. Processing for the orchestration process is now at the same step it was
on when Order Management received the change order.
Order Management sends an update message to your fulllment system to update the original message with
the changed order that includes the changed aributes. For example.
Values Description
Values after compensation sends Quantity is 2 and Arrival Date is August 18, 2018
an Update Inventory message for
the change order that includes the
changed aributes.
1144
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
You create the ShipOrderGenericProcess orchestration process. Here are the set ups you use.
Set Up Value
• Ordered Quantity
• Demand Class Code
• Requested Ship Date
Cost of Change
You specify a rule.
1 Schedule Schedule
Each step references a task type, and each task type references order aributes that Order Management uses to
determine whether to compensate the sales order. In this example, the Schedule step and the Shipment step each
reference a task type that references the Ordered Quantity aribute.
1145
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
For example, if the user increases Quantity on the sales order, then Order Management must schedule and ship more
supply.
• Assume the Order Entry Specialist submits a sales order for the AS54888 Desktop Computer with a quantity of
1.
• One day later, the Order Entry Specialist clicks Create Revision, changes Quantity to 2, then clicks Submit.
Order Management compensates the Schedule step and the Shipment step.
1146
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Note.
• A channel can include an order capture system, fulllment system, the Order Management work area, and so
on.
• Order Management cross-references, transforms, validates, and orchestrates the change in a way that's similar
to how it does this work for a new sales order. If rules that control how to process a change exist, then Order
Management applies them. You can use setup options to modify how Order Management does this processing.
1147
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• Use the same Excel template that you use to import sales orders to import change orders. For details, see the
Import Orders into Order Management topic.
• Use the same web service that you use to create a sales order to import a change order. For details, see the Use
Web Services to Import Orders topic.
• Use only one channel to make changes. For example, use Create Order Revision to make changes, or use a web
service, or use le-based import. Don't use Create Order Revision and web services and le-based import. Using
dierent channels causes confusion when aempting to identify the source of the change.
• Some implementations price the order in a channel, then send it to Order Management.
◦ You can't change pricing that your channel uses to pricing that Oracle Pricing Administration uses.
◦ You can't change pricing that Oracle Pricing Administration uses to pricing that your channel uses.
• Order Management submits the change orders it receives through a web service to order fulllment. You can't
submit a change order through a web service and keep it in Draft status. Order Management only keeps a sales
order in Draft if an error occurs in the change order.
• Order Management doesn't update a sales order that's in Draft status.
• If you use Create Order Revision in the Order Management work area, and must revise the order again, then
use Create Order Revision again. Don't use a web service or le-based import to revise the order again.
• If you change only one line in a sales order, then it isn't necessary to import all order lines.
• To cancel the order line, import a quantity of 0.
• Order Management sets the aribute value to empty for each order line aribute that the channel doesn't send.
For example, if the original order includes a value for Shipping Method, and if the channel sends a change
request that doesn't include Shipping Method, then Order Management sets Shipping Method to empty.
• If the channel revises only the order header, then Order Management revises the header but not the order lines.
• The channel must include a value for each required aribute.
• To cancel an order line, the channel must explicitly request the cancel. Order Management doesn't implicitly
cancel order lines when it revises a sales order.
1148
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Feature Description
Cost of Change Rule A rule you set up on an orchestration process that species the business cost your
organization will incur as a result of processing the change.
1149
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Feature Description
Change Mode
An option you set on an orchestration process. It determines when Order Management records
the state of the process. It compares these states during order compensation.
Choose a value.
• Advanced. Process change. Record the state of the orchestration process at each
orchestration process step.
• Simple. Process change only on the step that receives change. Record the state of the
orchestration process when it starts and at the step where the orchestration process
receives the change.
• None. Don't allow change. Don't record the state of the orchestration process.
Use Flexeld Aributes An option you set on an orchestration process or orchestration process step that species
whether to examine exeld aributes when compensating the sales order.
If you enable this option, then Order Management examines exeld aributes that the item
references to determine whether it must compensate the orchestration process.
For example, assume you create exeld Color. Assume the user changes the value of Color
from Red to Blue. You can use Color during compensation to allow your fulllment system to
reschedule the order line so it ships a blue item instead of a red one.
Order Management disables Use Flexeld Aributes and Use Transactional Item Aributes
on each predened orchestration process, by default. You can't enable these options
on a predened orchestration process. However, you can create a copy of a predened
orchestration process, and then enable them on the copy.
Use Transactional Item Aributes An option you set on an orchestration process or orchestration process step that species
whether to examine transactional aributes when compensating a sales order. For details, see
the Transactional Aributes topic.
Enable the Use Flexelds Aributes option and the Use Transactional Item Aributes option
only if you will send these aributes to your fulllment system during compensation.
Use Dynamic Aributes An option you set that species whether to examine dynamic aributes when compensating a
sales order.
Compensation Paern A rule you set up on an orchestration process step that species the adjustment to make to the
sales order when the order changes.
For example, if Order Management receives a change order that species to ship an item from
a dierent warehouse during the Create Shipment step, then it runs the Cancel service and the
Create service again.
If you don't specify a compensation paern, then Order Management uses the predened
compensation paern, by default. A predened paern uses Update, Cancel, or Create.
Task Type
An aribute you set on an orchestration process step. The task type that you select determines
the aributes that Order Management uses when it determines whether it must compensate
the sales order for this step.
1150
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Feature Description
Order Management comes predened to use a set of aributes for each predened task type.
You can't modify the predened set up, but you can add more aributes. Order Management
doesn't add these aributes to a new task type you add, and it doesn't evaluate this task until
you add these aributes. To add them, you must click Add All.
Reserve Supply
If you reserve or schedule an order line according to future supply, then consider whether your orchestration process
needs the reserve or schedule step. For example, the reservation step examines supply that's currently available, and
then reserves it to make sure your fulllment system can fulll the item. If you don't need to reserve supply, then don't
include the reservation step. If you do need to reserve, then consider making the reservation step a manual step, for
example, so the user must click a buon, such as Reserve.
You can also add a pause step before the reserve or schedule step. The pause task can pause the orchestration process
until the shipment is almost ready to ship, such as 12 hours before scheduled shipment. When the reservation step runs,
it will provide a more accurate picture of supply that's available because its closer to the ship date. Waiting to reserve
supply in this way can also reduce the cost of holding inventory until its time to ship.
1151
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Note.
• Set up a rule that measures the cost of change. If its too high, reject the change.
• In the header area of the orchestration process, next to Cost of Change Rule, click Click for Rule.
• Use Advanced Mode.
• Use the Assign action.
• Assign a numeric value to Header.mRuleDecision.costOfChange. For example.
Header.mRuleDecision.costOfChange = 10
Set Up Compensation
1152
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Note.
• Use a compensation rule only to compensate change. If you must also set values for other aributes, then use a
posransformation rule.
• In the steps area of the orchestration process, in the step you must compensate, in column Compensation
Paern, click Click for Rule.
• Use Advanced Mode.
• In the IF statement.
1153
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• For example.
For a list of aributes you can specify, see topic Reference for Entities and Aributes You Can Use When
Integrating Order Management.
• In the THEN statement.
header.mRuleDecision.compensationPattern = "CANCEL_CREATE"
◦ Assign a value.
Value Description
UPDATE Update the current fulllment request with the latest aribute value.
Each orchestration process comes predened to use UPDATE, by default. If you don't
specify a compensation paern, and if the orchestration process detects a change, then
it will send an update request to the fulllment system.
UPDATE_CREATE Update the current fulllment request with the latest aribute value, and also create a
new request.
CANCEL_CREATE Cancel the current fulllment request, and then create a new request that includes the
latest aribute value.
CANCEL_UPDATE Cancel the current fulllment request, and then update another fulllment request with
the latest aribute value.
CANCEL_ UPDATE_CREATE Cancel the current fulllment request, update another fulllment request with the latest
aribute value, and then create a new request that includes the latest aribute value.
These values determine what request the orchestration process sends to the fulllment system.
Constrain Change
Use a processing constraint.
• Disallow change that you know your fulllment system can't accommodate, such as changing the supplier for
an item that requires signicant lead time for the supplier to produce.
• Make sure a channel doesn't make a change that your fulllment system can't accommodate.
1154
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• Make sure the user includes required aributes. For example, assume you add your own numeric aribute x for
invoicing, and invoicing requires aribute x to calculate the invoice. You can use a constraint to make sure the
user adds a value for x, and that the value is numeric.
• If a constraint doesn't meet your business requirement, then set up an order management extension. Use an
extension to validate, then display a message or warning.
Note.
1155
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• Use the same value in the Group Number aribute to create an AND condition across constraints. For example,
if you set Group Number to 10 for condition x, and Group Number to 10 for condition y, and if conditions x and
y both evaluate to True, then Order Management applies the constraint.
• Use dierent values in Group Number to create an OR condition. For example, if you set Group Number to 10
for condition x, and Group Number to 20 for condition y, and if condition x or y evaluates to True, then Order
Management applies the constraint.
• Use the Applicable Roles tab to specify the user roles that can or can't edit an aribute according to the
constraint.
• Use the Manage Processing Constraints page in the Setup and Maintenance work area.
• For details, see the Manage Processing Constraints topic.
For example.
1156
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
1157
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
1158
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Note.
• The user creates a revision, clicks Submit, and then the orchestration process starts.
• The orchestration process reaches a step that uses the Shipment task type, then examines the Manage Order
Aributes That Identify Change page in the Setup and Maintenance work area to determine whether to process
the change.
• For details, see the Manage Order Aributes That Identify Change topic.
For example.
1159
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Note.
• Set the Task Type aribute to a value, such as Schedule, Reservation, Shipment, and so on, to determine when
to examine the change.
• Specify an entity to determine where the aribute resides.
Other Guidelines
Order Management doesn't run pretransformation rules when you use Create Order Revision. If you must set the
default aribute value on a new order line that the user adds when using Create Order Revision, then create a
posransformation rule that sets the default value.
Your users can use the fulllment view to change a large number of fulllment lines. If you set up a number of business
rules that must run for each change, and if the user submits a large set of changes, then you might encounter degraded
performance. You must test how many fulllment line updates your environment can accommodate, then limit updates
from the fulllment view according to the optimal.
This topic includes example values. You might use dierent values, depending on your business requirements.
Order Management comes predened with a number of task types. To reduce maintenance, use a predened
task type before you create a new one.
3. Click the row that includes Shipment, then click Actions > Edit.
4. On the Edit Order Aributes That Identify Change page, in the Orchestration Components list, click a
component that you think might contain the aribute that Order Management must use to identify change.
1160
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
The orchestration process step examines each aribute in this list to determine whether to compensate the
sales order when it receives a change order. If the list includes the aributes that your step requires to identify
change, then set the Task Type aribute on the step to this task type, then exit this procedure.
For this example, the list does include Ordered Quantity, so set Task Type to Shipment.
If the Predened column in the Aributes list includes a check mark, then you can't remove this aribute.
6. If the Aributes list doesn't include the aributes your step needs to identify change, then do these steps.
Here are some set ups you can do on the Manage Order Aributes That Identify Change page.
Set Up Description
On the Create Order Aributes That Identify Change page, add aributes, as necessary.
If you create a new task type, and if you don't use this page to add at least one aribute to the
task type, then Order Management won't examine any aributes when it identies change.
If the source system requests a determination for cost of change, then Order Management calculates the value, then
returns it to the source system so the customer service representative can choose whether to proceed with the change.
The source system can request the value before it submits the sales order. Order Management also calculates the cost
after it compensates the sales order.
You use a business rule to assign the cost of change to an orchestration process. If you choose not to use values for the
cost of change, then Order Management uses a value of zero to calculate cost.
Assume you need a business rule that measures the cost of change your company will incur when a customer requests
a change. If fulllment line status is.
1161
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
This example includes a simple business rule you can use with an orchestration process that includes only one line.
You use advanced rules to write a rule that includes more than one line. For details, see the Overview of Using Business
Rules With Order Management topic.
1162
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
where
Object Description
DooSeededOrchestrationRules Dictionary that contains rule sets, facts, functions, variables and so on for order orchestration.
1163
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Object Description
DOOFLine is an abbreviation for distributed order orchestration (DOO) fulllment line (FLine).
The phrase distributed order orchestration is an earlier name for Order Management Cloud.
Result Fact in DooSeededOrchestrationRules. You use it to store the results of the business rule
you're dening.
Aribute Value
Description This rule measures the cost to change a sales order when the fulllment line status is
Scheduled. It sets the cost of change to 5.
1164
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Value 5
5. Click Collapse.
1165
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
1. Click Add Rule > Expand > Show Advanced Seings, then set values.
Aribute Value
1166
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Description This rule measures the cost to change a sales order when fulllment line status is Shipped. It
sets the cost of change to 50.
Related Topics
• Set Up Orchestration Processes
• Demo for Creating Business Rules
For example, assume the compensation paern for a Create Shipment step is Redo, and that the step calls the Cancel
service and the Create service. If Order Management receives a change order that includes a new warehouse for the
step, then it runs Cancel and Create again.
Assume you need a compensation paern that pauses the orchestration process until compliance check nishes.
• If compliance details change, then pause the orchestration process until compliance is done.
1167
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
where
Code Description
DooSeededOrchestrationRules Dictionary that contains a set of predened business rules for an orchestration process. You
use it to store objects and their values.
DOO means distributed order orchestration, which is a term that Order Management used for
order orchestration in earlier releases.
1168
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Code Description
DOOHeader Object in DooSeededOrchestrationRules. It contains aributes for the sales order header and
their values.
headerEFF Extensible exeld on the order header. For this example, assume you dened an extensible
exeld that stores details about the compliance check.
For details about exelds, see the Overview of Seing Up Extensible Flexelds in Order
Management topic.
FlexContext Object that stores the value for the extensible exeld.
Code Description
header is a Declare header as a temporary variable that stores the value from object DOOHeader of
DooSeededOrchestrationRules. dictionary DooSeededOrchestrationRules.
DOOHeader
Proceed to the next AND statement only after you declare header.
headerEFF is a Declare headerEFF as a temporary variable that stores the value from object FlexContext of
DooSeededOrchestrationRules. DooSeededOrchestrationRules.
FlexContext
Proceed to the next AND statement only after you declare headerEFF.
headerEFF isn't null Proceed to the next AND statement only if the extensible exeld on the sales order header
contains a value.
This set up uses headerEFF to store the value of the extensible exeld that stores aribute
Compliance Details on the order header. If the value of Compliance Details is empty, then it
indicates compliance isn't required, compensation isn't required, and the orchestration process
continues to the next orchestration process step.
header. exContexts RL. contains Declare headerEFF into the rules language (RL) dictionary, and set the value of headerEFF to
headerEFF the value that exContexts contains.
1169
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Code Description
This condition makes sure you correctly declare the variable into the dictionary.
Proceed to the next AND statement only if RL contains headerEFF.
Do this test on each of your variables to make sure the declaration is correct. If you don't do
the test, and if the declaration isn't correct, then the rule might fail in a subsequent step.
headerEFF. context isn't null Make sure a context is dened for the order header. Proceed to the next AND statement only if
context contains a value.
headerEFF. context equals ignore Get the context and segments for Compliance Details for this variable.
case "ComplianceDetails"
Proceed to the next AND statement only if context contains the string ComplianceDetails.
Ignore case sensitivity when examining.
if context contains some other value, then it indicates that no other process requested a
compliance check.
headerEFF. Make sure aribute ComplianceInfo of the extensible exeld changed. You use
aributeChanged("ComplianceInfo") aributeChanged to determine whether the value for ComplianceInfo is dierent in this
is true revision.
This example includes a simple rule that processes only one line. Use an advanced rule to process more than one line.
For details, see the Overview of Using Business Rules With Order Management topic.
Create If Statement
You will create a statement.
• If compliance details changed
Do it.
1. Create the rule.
1170
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
◦ On the Edit Orchestration Process Denitions page, in the Process Details area, in the Step Denition list,
click Change Management.
◦ In the Ship Item row, in the Compensation Paern column, click Click for Rule.
◦ In the Compensation Paern dialog, click Add Rule > Expand, then set values.
Aribute Value
Description If compliance details changed, then pause the orchestration process until compliance is
done.
Priority Medium
◦ Click the down arrow located to the right of Right Value, then click Simple Test.
◦ In the window to the left of Is, click Left Value, expand header, then click exContexts > OK.
◦ Change Is to RL.contains.
1171
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
◦ In the eld to the right of RL.contains, click Right Value > headerEFF > OK.
6. Make sure context contains a value.
headerEFF.attributeChanged()
Insert "_ComplianceInfo" between the parentheses, then click OK. For example.
headerEFF.attributeChanged("_ComplianceInfo")
1172
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Order Management sets the compliance completion date when compliance check is done. If the date is empty, then it
indicates compliance check isn't done, and the rule doesn't release the pause task. For example.
• If CompleteCompliancedate is empty, then compliance check isn't done. Assign a business event to indicate we
must wait.
1173
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
then
assign header.sacResult.sacType = DooSeededOrchestrationRules.SacResult.SAC_TYPE_EVENT
assign header.sacResult.eventName = "Awaiting Compliance Check Completion"
assign header.sacResult.reevaluateFlag = "N"
You can create a rule that pauses until compliance completion date is later than order header date. For example.
• If CompleteCompliancedate occurs after order header date, then compliance check is done. Prepare to release
the pause task.
To prepare to release the pause task, you set waitDateTime to the compliance date. For details about waitDateTime and
sacResults, see the Guidelines for Pausing Orchestration Processes topic.
1174
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
then
assign header.sacResult.sacType = DooSeededOrchestrationRules.SacResult.SAC_TYPE_TIMER
assign header.sacResult.waitDateTime = headerEFF.getFlexAttributeDateValue("_CompleteCompliancedate")
It uses the values that these rules set for SacResult to determine when to release the pause task.
1175
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
then
assign new DooSeededOrchestrationRules.sacResult SAC = new DooSeededOrchestrationRules.sacResult()
assign header.sacResult = SAC
assign header.sacResult.sacType = DooSeededOrchestrationRules.SacResult.SAC_TYPE_IMMEDIATE
assign header.sacResult.reevaluateFlag = "N"
You add this rule in the Pause Rule column on the same step where you added the compensation paern.
Related Topics
• Demo for Creating Business Rules
1176
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• If the requested ship date is less than or equal to the current date plus three days, then cancel and redo the
Ship Product step.
1177
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
If
DooSeededOrchestrationRules.DOOFLine.requestShipDate same or less than CurrentDate.date.timeInMillis
+3*24*60*60*1000
Then
assert new DooSeededOrchestrationRules.Result (resultObj."CANCEL_CREATE")
where
Code Description
DOOFLine Object in DooSeededOrchestrationRules. It contains fulllment line aributes and their values.
time Property of the toLocateString function. This function references the requestShipDate
aribute.
CurrentDate. date. timeInMillis Equation that species to use the date that occurs three days after the current date.
+3*24*60*60*1000
Result Object in DooSeededOrchestrationRules that you use to store the result of the If statement.
1. Create If statement.
2. Create Then statement.
This topic includes example values. You might use dierent values, depending on your business requirements.
Create If Statement
You will create a statement.
• If the requested ship date is less than or equal to the current date plus three days
Do it.
1178
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
For details about how to create CallCustomerWhenLargeInvoice, see the Add Branches to Orchestration
Processes topic.
3. On the Edit Orchestration Process Denitions page, in the Process Details area, in the Step Denition list, click
Change Management.
4. In the Ship Item row, in the Compensation Paern column, click Click for Rule.
5. In the Compensation Paern dialog, click Add Rule > Expand, then set the value.
Aribute Value
6. In the If area, click Left Value, expand DOOSeededOrchestrationRules > DOOFline > requestShipDate, then
click time > OK.
7. In the Is list, click Is > Same or Less Than.
8. Click Right Value.
9. In the Condition Browser, expand CurrentDate > Date > Time, then click timeInMillis.
CurrentDate.date.timeInMillis+3*24*60*60*1000
The time function for most business rules work in milliseconds, so you must convert time to milliseconds. The
calculation 3*24*60*60*1000 calculates the total number of milliseconds that three days contains, where.
1179
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
5. Click OK.
6. Click Validate, make sure the Validation Log that displays doesn't contain any errors, then click Save.
7. On the Edit Orchestration Process Denition page, click Save.
Related Topics
• Demo for Creating Business Rules
Note.
• If you need dierent behavior, then you can write a compensation rule according to an item change. Note that
business rules call the Update service for an item change.
• Change management can only identify change to an extensible exeld. However, you can write a
compensation rule that examines the extensible exeld segment so it can determine whether to do
compensation.
Each shipping step and reservation step on a predened orchestration process that integrates with shipping already use
this logic. You add this logic only if you set up your own orchestration process.
1180
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Notify Systems
Overview of Sending Notications from Order Management to Other Systems
Use a business event to send a notication to a system that resides outside of Order Management Cloud when a change
occurs, such as when details in a sales order or fulllment line change.
You can send the notication to an upstream system, such as an order capture system,, or to a downstream system,
such as a fulllment system or billing system.
1181
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
A business event is something that occurs that's signicant enough that requires in Order Management to take an
action. Here are some examples.
1182
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Note.
1. Order Management monitors conditions that occur during order fulllment according to the trigger points you
specify.
For example, if you enable the Notify External System option for the Shipped status value on a status rule set,
then Order Management communicates the business event each time it sets a fulllment line status to Shipped,
and it sends the business event to the endpoint URL of the connector you set up for the Fulllment Line Status
Update business event. For details about this option, see the Add Status Conditions to Fulllment Lines topic.
2. You use the Manage Business Event Trigger Points page in the Setup and Maintenance work area to specify
the trigger point. If Order Management determines a trigger point occurred, then it uses the Connector Name
1183
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
aribute on the Manage Business Event Trigger Points page to identify the connector to use to communicate to
the external system.
3. The connector communicates with the external system. You use the connector to specify the URL that locate
the external system and the security credentials that your external system requires to communicate data. For
example, the fulllment line status is Shipped, so you notify your invoicing system that the order is ready to
invoice.
4. As an option, you can use the Notify Frequency parameter to specify how frequently Order Management sends
notications. For details, see the Manage Order Management Parameters topic.
You can also use a web service to communicate details about the event.
Change Order Compensation Send a notication when Order Management nishes processing a change order. If the change
Complete order results in an error, then this business event reports the error.
Fulllment Line Closed Send a notication when Order Management closes a fulllment line. Some applications, such
as Cost Management, can use these details to do downstream processing on the fulllment
line.
Hold
Send a notication when a user applies a hold, or when the order capture system or fulllment
system applies a hold on an entity.
• Order
• Order line
• Fulllment line
1184
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Note.
• If a hold doesn't go into eect immediately, for example, if the hold applies to a future
task, then Order Management communicates the business event when the hold goes
into eect, not when the request to add the hold occurs.
• If change management releases or applies a hold, then Order Management doesn't
communicate the business event.
Jeopardy Send a notication when process planning changes a jeopardy priority value, such as High,
Medium, or Low. You can specify the value to notify.
• Each aribute that the Order Update - Aributes That Trigger Events area displays
can trigger a business event. These aributes are predened. You can also set up an
extensible exeld that modies these aributes.
If you set up an extensible exeld, then Order Management displays it in the Select and
Add - Aributes That Trigger Events dialog. If you select one or more segments, and
then click OK or Apply, then Order Management displays the segments that you select
in the Order Aribute Update - Aributes That Trigger Events area.
• If Order Management updates more than one aribute of the Order Aribute Update
business event at the same time, then it sends only one notication. This notication
includes details about the aributes it updated.
• The status values in the Order Header Status Update - Status Values That Trigger
Events area start the Order Header Status Update business event. These values are
predened. You can't add status values in this area.
Order Header Status Update Send a notication when Order Management cancels, partially closes, or closes a sales order.
You can specify the status value to notify.
Split Send a notication when a partial shipment occurs or when an integrated system splits a
fulllment line.
Related Topics
• Deploy Extensible Flexelds
For background details about how to do the set up, see these topics.
• Guidelines for Integrating Order Management
1185
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Target System Select the external system that must receive the notication. This system subscribes to the
business event.
Connector Name Enter text that describes the purpose of the connector. For example, to indicate that you use
this connector to send notications to a legacy system, enter LEG_ Notication.
Connector URL Specify an endpoint URL. The URL is the address of the web service you deploy on the
external system. Order Management will call this web service, and the web service must
accept the event payload that Order Management sends.
User Name Enter the user name that the external system requires.
1186
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
4. Set values.
Aribute Value
Connector Name Select the connector you added earlier in this topic.
◦ Contains a check mark. Send a notication about each sales order even if the
external system that receives the notication doesn't have any knowledge about the
sales order.
◦ Doesn't contain a check mark. If the external system doesn't have any knowledge
about the sales order, then don't send the notication about the sales order.
Here's an example.
◦ Assume your implementation includes Source System 1 and Source System 2, and
that each of these systems can send a source order to Order Management.
◦ Assume Source System 2 has no knowledge of source orders that originate in Source
System 1, and that you don't want to notify Source System 2 when an event occurs
that's associated with a source order that originates in Source System 1.
◦ If Override Default Visibility doesn't contain a check mark, then Order Management
won't call the connector for Source System 2, and Source System 2 won't receive the
notication.
You can associate the same connector with more than one business event, as necessary.
6. Optional. Repeat step 2 through 5 for each trigger point you must administer.
7. Click Save and Close.
Related Topics
• Manage Order Management Parameters
• Guidelines for Integrating Order Management
• Overview of Using Integration Cloud Service with Order Management
Return Orders
1187
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Description
UnreferencedReturnFlag
Specify whether the payload references the original return.
1188
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Use services to integrate Order Management with another system in your deployment.
• GetOrderDetails
• OrderInformationService
• OrderFulllmentResponseService
For details, see the Overview of Using Integration Cloud Service with Order Management topic.
Guidelines
Use the Order Import Template
Use the DOO_ORDER_DOC_REFERENCES_INT worksheet in the order import template to identify the original order and
the item you're returning. For details, see the Overview of Importing Orders into Order Management topic.
If you use an accounting and invoicing rule when you create a sales order, and if you must create a return for an order
that references return lines, then do these steps.
1. Disable the predened DOO_RMA_BILLING_ATTR_CHANGED constraint.
It veries the accounting and invoicing rules between the referenced return line and the original order line. You
don't need it.
2. Write an order management extension that nullies the accounting and invoicing rule for referenced return
lines.
◦ Remove the rule only after Order Management sends the line to your billing system.
◦ If you use Oracle Fusion Receivables, then use Manage AutoInvoice Lines to remove the values.
If you set the Line Type aribute on a return line to Return for Credit and Return the Item, and if the item is shippable,
then you must provide the return-to location in the Return Location aribute on the order line. If you create your own
return type and use it on the return line, and if you must physically return the item, then its recommended that you
create an order management extension or processing constraint that makes sure you provide a value in the Return
Location aribute. Order Management uses the Warehouse as the return-to location.
1189
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns2:Order>
<ns2:SourceTransactionIdentifier>AP_RETURN_ORDER_01</ns2:SourceTransactionIdentifier>
<ns2:SourceTransactionSystem>GPR</ns2:SourceTransactionSystem>
<ns2:SourceTransactionNumber>AP_RETURN_ORDER_01</ns2:SourceTransactionNumber>
<ns2:TransactionOn>2019-1-20T06:08:52</ns2:TransactionOn>
<ns2:SourceTransactionLineIdentifier>101</ns2:SourceTransactionLineIdentifier>
<ns2:SourceTransactionScheduleIdentifier>101</ns2:SourceTransactionScheduleIdentifier>
<ns2:SourceTransactionLineNumber>1</ns2:SourceTransactionLineNumber>
<ns2:SourceTransactionScheduleNumber>1</ns2:SourceTransactionScheduleNumber>
<ns2:ProductNumber>AS54888</ns2:ProductNumber>
<!-- TransactionCategoryCode can use one of two values. Use ORDER for regular order line. Use RETURN
for return order line. If RETURN, you must provide the reference to original order and line under
LineDocumentReference-->
<ns2:TransactionCategoryCode>RETURN</ns2:TransactionCategoryCode>
<!-- ReturnReasonCode and Return Reason are optional for a return order line. -->
<ns2:ReturnReasonCode>ORA_QTY_CHANGE</ns2:ReturnReasonCode>
<ns2:OrigSysDocumentReference>ORIGSYS</ns2:OrigSysDocumentReference>
<ns2:OrigSysDocumentLineReference>ORIGSYSLINE</ns2:OrigSysDocumentLineReference>
<!Send the Line Document Reference only for a return line. This entity references the original order line
for the item you're returning.-->
<ns2:DocumentReference>
<ns2:DocumentReferenceType>ORIGINAL_SALES_ORDER</ns2:DocumentReferenceType>
<!-- SourceOrderId for original order -->
<ns2:DocumentIdentifier>ORIG_SALES_ORDER_01</ns2:DocumentIdentifier>
<!-- Source Order System for original order identifier-->
<ns2:DocumentAdditionalIdentifier>GPR</ns2:DocumentAdditionalIdentifier>
<!-- SourceOrderNumber of original order -->
<ns2:DocumentNumber>ORIG_SALES_ORDER_01</ns2:DocumentNumber>
<ns2:DocumentAdditionalNumber/>
<!-- SourceLineId for originl order -->
<ns2:DocumentLineIdentifier>101</ns2:DocumentLineIdentifier>
<ns2:DocumentAdditionalLineIdentifier/>
<!-- SourceLineNumber for original order -->
<ns2:DocumentLineNumber>1</ns2:DocumentLineNumber>
<ns2:DocumentAdditionalLineNumber/>
<ns2:DocumentAdditionalSubLineIdentifier/>
<ns2:DocumentSubLineNumber/>
<ns2:DocumentAdditionalSubLineNumber/>
</ns2:DocumentReference>
</ns2:Line>
</ns2:Order>
</ns1:request>
</ns1:createOrders>
</soap:Body>
</soap:Envelope>
1190
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
1191
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns0:PaymentTermId xsi:nil="true"/>
<ns0:PricedOn xsi:nil="true"/>
<ns0:PricingSegmentCode>CORPORATE_SEGMENT</ns0:PricingSegmentCode>
<ns0:PricingSegmentExplanation>The applicable pricing segment for this transaction is Pricing
Segment=Corporate Segment Precedence=1 because Revenue Potential=Medium Customer Size=Medium Cost To
Serve=Medium Customer Value=Medium Customer Rating=Medium</ns0:PricingSegmentExplanation>
<ns0:PricingStrategyExplanation>The applicable pricing strategy for this transaction is Pricing
Strategy=Corporate Pricing Strategy because Channel Method=null Transaction Type=null Pricing
Segment=Corporate Segment</ns0:PricingStrategyExplanation>
<ns0:PricingStrategyId>300100071623888</ns0:PricingStrategyId>
<ns0:ReferenceHeaderId xsi:nil="true"/>
<ns0:RequestArrivalDate xsi:nil="true"/>
<ns0:RequestShipDate xsi:nil="true"/>
<ns0:SegmentExplanationMsgName xsi:nil="true"/>
<ns0:ShipClassOfService xsi:nil="true"/>
<ns0:ShipModeOfTransport xsi:nil="true"/>
<ns0:ShipmentPriorityCode xsi:nil="true"/>
<ns0:ShippingInstructions xsi:nil="true"/>
<ns0:ShipsetFlag xsi:nil="true"/>
<ns0:SoldToPartyContactPointId xsi:nil="true"/>
<ns0:StrategyExplanationMsgName xsi:nil="true"/>
<ns0:SubmittedFlag>Y</ns0:SubmittedFlag>
<ns0:SubstituteAllowedFlag xsi:nil="true"/>
<ns0:SupplierId xsi:nil="true"/>
<ns0:SupplierSiteId xsi:nil="true"/>
<ns0:SoldToPartyName>Computer Service and Rentals</ns0:SoldToPartyName>
<ns0:SoldToPartyPersonFirstName xsi:nil="true"/>
<ns0:SoldToPartyPersonLastName xsi:nil="true"/>
<ns0:SoldToPartyPersonMiddleName xsi:nil="true"/>
<ns0:SoldToPartyPersonNameSuffix xsi:nil="true"/>
<ns0:SoldToPartyPersonTitle xsi:nil="true"/>
<ns0:SoldToPartyContactName>Piere Legrand</ns0:SoldToPartyContactName>
<ns0:SoldToPartyContactNumber>CONTACT-1560</ns0:SoldToPartyContactNumber>
<ns0:SoldToPartyContactFirstName>Piere</ns0:SoldToPartyContactFirstName>
<ns0:SoldToPartyContactLastName>Legrand</ns0:SoldToPartyContactLastName>
<ns0:SoldToPartyContactMiddleName xsi:nil="true"/>
<ns0:SoldToPartyContactNameSuffix xsi:nil="true"/>
<ns0:SoldToPartyContactTitle xsi:nil="true"/>
<ns0:TransactionalCurrencyName>US Dollar</ns0:TransactionalCurrencyName>
<ns0:LegalEntity xsi:nil="true"/>
<ns0:SoldToPartyType>ORGANIZATION</ns0:SoldToPartyType>
<ns0:SoldToPartyLastUpdateDate>2017-07-26T17:51:22.683Z</ns0:SoldToPartyLastUpdateDate>
<ns0:RequestingBusinessUnitIdentifier xsi:nil="true"/>
<ns0:RequestingBusinessUnitName xsi:nil="true"/>
<ns0:CancelReason xsi:nil="true"/>
<ns0:OrgName>Vision Operations</ns0:OrgName>
<ns0:PreCreditCheckedFlag>N</ns0:PreCreditCheckedFlag>
<ns0:SalesChannelCode xsi:nil="true"/>
<ns0:SalespersonIdentifier xsi:nil="true"/>
<ns0:Salesperson xsi:nil="true"/>
<ns0:SalesChannel xsi:nil="true"/>
<ns0:SubmittedBy>SCMOPERATIONS</ns0:SubmittedBy>
<ns0:SubmittedDate>2018-08-03T05:40:40.842Z</ns0:SubmittedDate>
<ns0:OrderLine>
<ns0:HeaderId>300100138387475</ns0:HeaderId>
<ns0:LineId>300100138387476</ns0:LineId>
<ns0:LineNumber>1</ns0:LineNumber>
<ns0:StatusCode>OPEN</ns0:StatusCode>
<ns0:OwnerId xsi:nil="true"/>
<ns0:SourceLineNumber>1</ns0:SourceLineNumber>
<ns0:SourceLineId>101</ns0:SourceLineId>
<ns0:SourceOrderId>bdanthal_aug03_urr_001</ns0:SourceOrderId>
<ns0:SourceScheduleId>101</ns0:SourceScheduleId>
<ns0:SourceOrderNumber>bdanthal_aug03_urr_001</ns0:SourceOrderNumber>
<ns0:SourceOrderSystem>LEG</ns0:SourceOrderSystem>
<ns0:SourceScheduleNumber>1</ns0:SourceScheduleNumber>
1192
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns0:ItemTypeCode>4</ns0:ItemTypeCode>
<ns0:OrderedUom>Ea</ns0:OrderedUom>
<ns0:SourceOrgId>204</ns0:SourceOrgId>
<ns0:OrgId>204</ns0:OrgId>
<ns0:LineTypeCode>ORA_RETURN</ns0:LineTypeCode>
<ns0:OpenFlag>Y</ns0:OpenFlag>
<ns0:CanceledFlag>N</ns0:CanceledFlag>
<ns0:ParentLineId xsi:nil="true"/>
<ns0:OrigSysDocumentLineRef xsi:nil="true"/>
<ns0:RootParentLineId xsi:nil="true"/>
<ns0:ActualShipDate xsi:nil="true"/>
<ns0:CanceledQty xsi:nil="true"/>
<ns0:ExtendedAmount>0</ns0:ExtendedAmount>
<ns0:FulfilledQty xsi:nil="true"/>
<ns0:FulfillmentDate xsi:nil="true"/>
<ns0:InventoryItemId>300100125547361</ns0:InventoryItemId>
<ns0:OrderedQty>3</ns0:OrderedQty>
<ns0:OrigSysDocumentRef xsi:nil="true"/>
<ns0:RmaDeliveredQty xsi:nil="true"/>
<ns0:ScheduleShipDate>2015-07-15T00:00:00.0Z</ns0:ScheduleShipDate>
<ns0:ShippedQty xsi:nil="true"/>
<ns0:UnitListPrice>0</ns0:UnitListPrice>
<ns0:UnitSellingPrice>0</ns0:UnitSellingPrice>
<ns0:DeltaType xsi:nil="true"/>
<ns0:ReferenceLineId xsi:nil="true"/>
<ns0:OnHold>N</ns0:OnHold>
<ns0:CategoryCode>RETURN</ns0:CategoryCode>
<ns0:InventoryOrganizationId>204</ns0:InventoryOrganizationId>
<ns0:TransformFromLineId xsi:nil="true"/>
<ns0:DisplayLineNumber>1</ns0:DisplayLineNumber>
<ns0:OrderFulfillLine>
<ns0:FulfillLineId>300100138387477</ns0:FulfillLineId>
<ns0:ReferenceFlineId xsi:nil="true"/>
<ns0:FulfillLineNumber>1</ns0:FulfillLineNumber>
<ns0:OriginalFlineId xsi:nil="true"/>
<ns0:LineId>300100138387476</ns0:LineId>
<ns0:HeaderId>300100138387475</ns0:HeaderId>
<ns0:StatusCode>NOT_STARTED</ns0:StatusCode>
<ns0:OwnerId xsi:nil="true"/>
<ns0:SourceLineId>101</ns0:SourceLineId>
<ns0:SourceLineNumber>1</ns0:SourceLineNumber>
<ns0:SourceOrderId>bdanthal_aug03_urr_001</ns0:SourceOrderId>
<ns0:SourceOrderNumber>bdanthal_aug03_urr_001</ns0:SourceOrderNumber>
<ns0:SourceOrderSystem>LEG</ns0:SourceOrderSystem>
<ns0:SourceScheduleId>101</ns0:SourceScheduleId>
<ns0:SourceScheduleNumber>1</ns0:SourceScheduleNumber>
<ns0:InventoryItemId>300100125547361</ns0:InventoryItemId>
<ns0:ItemTypeCode>4</ns0:ItemTypeCode>
<ns0:ItemTypeName xsi:nil="true"/>
<ns0:FulfillOrgId>204</ns0:FulfillOrgId>
<ns0:OrderedQty>3</ns0:OrderedQty>
<ns0:OrderedUom>Ea</ns0:OrderedUom>
<ns0:RmaDeliveredQty xsi:nil="true"/>
<ns0:FulfilledQty xsi:nil="true"/>
<ns0:ShippedQty xsi:nil="true"/>
<ns0:ReservedQty xsi:nil="true"/>
<ns0:ReservableFlag>Y</ns0:ReservableFlag>
<ns0:ShippableFlag>N</ns0:ShippableFlag>
<ns0:InvoiceableItemFlag>Y</ns0:InvoiceableItemFlag>
<ns0:InvoiceEnabledFlag>Y</ns0:InvoiceEnabledFlag>
<ns0:BillToContactId>4820</ns0:BillToContactId>
<ns0:BillToCustomerId>1006</ns0:BillToCustomerId>
<ns0:BillToSiteUseId>1025</ns0:BillToSiteUseId>
<ns0:SourceOrgId>204</ns0:SourceOrgId>
<ns0:OrgId>204</ns0:OrgId>
<ns0:RequestArrivalDate xsi:nil="true"/>
1193
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns0:RequestShipDate>2015-01-15T10:10:10.0Z</ns0:RequestShipDate>
<ns0:ScheduleArrivalDate>2015-07-15T00:00:00.0Z</ns0:ScheduleArrivalDate>
<ns0:ScheduleShipDate>2015-07-15T00:00:00.0Z</ns0:ScheduleShipDate>
<ns0:PromiseArrivalDate xsi:nil="true"/>
<ns0:PromiseShipDate xsi:nil="true"/>
<ns0:ActualShipDate xsi:nil="true"/>
<ns0:FulfillmentDate xsi:nil="true"/>
<ns0:CustomerItemId xsi:nil="true"/>
<ns0:CustomerPoLineNumber xsi:nil="true"/>
<ns0:CustomerPoNumber xsi:nil="true"/>
<ns0:DemandClassCode xsi:nil="true"/>
<ns0:ExtendedAmount>0</ns0:ExtendedAmount>
<ns0:FobPointCode xsi:nil="true"/>
<ns0:CarrierId xsi:nil="true"/>
<ns0:InvoicingRuleId xsi:nil="true"/>
<ns0:ExemptionCertificateNumber xsi:nil="true"/>
<ns0:AccountingRuleId xsi:nil="true"/>
<ns0:LineTypeCode>ORA_RETURN</ns0:LineTypeCode>
<ns0:CategoryCode>RETURN</ns0:CategoryCode>
<ns0:OpenFlag>Y</ns0:OpenFlag>
<ns0:CanceledFlag>N</ns0:CanceledFlag>
<ns0:OverrideScheduleDateFlag>N</ns0:OverrideScheduleDateFlag>
<ns0:OriginalInventoryItemId xsi:nil="true"/>
<ns0:GopReferenceId xsi:nil="true"/>
<ns0:PackingInstructions xsi:nil="true"/>
<ns0:ParentFulfillLineId xsi:nil="true"/>
<ns0:PaymentTermId xsi:nil="true"/>
<ns0:RequestType xsi:nil="true"/>
<ns0:ReturnReasonCode xsi:nil="true"/>
<ns0:OrigSysDocumentRef xsi:nil="true"/>
<ns0:OrigSysDocumentLineRef xsi:nil="true"/>
<ns0:RootParentFulfillLineId xsi:nil="true"/>
<ns0:ShipClassOfService xsi:nil="true"/>
<ns0:ShipModeOfTransport xsi:nil="true"/>
<ns0:ShipToContactId xsi:nil="true"/>
<ns0:ShipToCustomerId xsi:nil="true"/>
<ns0:ShipToSiteUseId xsi:nil="true"/>
<ns0:FulfillToleranceAbove xsi:nil="true"/>
<ns0:FulfillToleranceBelow xsi:nil="true"/>
<ns0:ShipmentPriorityCode xsi:nil="true"/>
<ns0:ShippingInstructions xsi:nil="true"/>
<ns0:ShipSetName xsi:nil="true"/>
<ns0:SplitFromFlineId xsi:nil="true"/>
<ns0:PartialShipAllowedFlag>N</ns0:PartialShipAllowedFlag>
<ns0:SubstituteAllowedFlag>N</ns0:SubstituteAllowedFlag>
<ns0:SubstituteReasonCode xsi:nil="true"/>
<ns0:TaxExemptFlag>S</ns0:TaxExemptFlag>
<ns0:TaxClassificationCode>765</ns0:TaxClassificationCode>
<ns0:TaxExemptionReasonCode xsi:nil="true"/>
<ns0:UnitListPrice>0</ns0:UnitListPrice>
<ns0:UnitSellingPrice>0</ns0:UnitSellingPrice>
<ns0:LatestAcceptableShipDate xsi:nil="true"/>
<ns0:LatestAcceptableArrivalDate xsi:nil="true"/>
<ns0:EarliestAcceptableShipDate xsi:nil="true"/>
<ns0:CanceledQty xsi:nil="true"/>
<ns0:ReturnableFlag>Y</ns0:ReturnableFlag>
<ns0:DeltaType xsi:nil="true"/>
<ns0:OnHold>N</ns0:OnHold>
<ns0:Description>Extended Warranty1</ns0:Description>
<ns0:LongDescription xsi:nil="true"/>
<ns0:InventoryItemId1>300100125547361</ns0:InventoryItemId1>
<ns0:OrganizationId>204</ns0:OrganizationId>
<ns0:ItemNumber>cov_open</ns0:ItemNumber>
<ns0:ActualCompletionDate xsi:nil="true"/>
<ns0:EstimateFulfillmentCost xsi:nil="true"/>
<ns0:EstimateMargin xsi:nil="true"/>
1194
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns0:FulfillInstanceId xsi:nil="true"/>
<ns0:FulfillmentSplitRefId xsi:nil="true"/>
<ns0:InventoryOrganizationId>204</ns0:InventoryOrganizationId>
<ns0:RemnantFlag xsi:nil="true"/>
<ns0:ReservationId xsi:nil="true"/>
<ns0:StatusRulesetId xsi:nil="true"/>
<ns0:InventoryItemIdCrossRef>LEGCOV_OPEN</ns0:InventoryItemIdCrossRef>
<ns0:ShipToCustomerIdCrossRef xsi:nil="true"/>
<ns0:ShipToContactIdCrossRef xsi:nil="true"/>
<ns0:ShipToSiteUseIdCrossRef xsi:nil="true"/>
<ns0:BillToCustomerIdCrossRef>1006</ns0:BillToCustomerIdCrossRef>
<ns0:BillToContactIdCrossRef>4820</ns0:BillToContactIdCrossRef>
<ns0:BillToSiteUseIdCrossRef>1025</ns0:BillToSiteUseIdCrossRef>
<ns0:InvoicingRuleIdCrossRef xsi:nil="true"/>
<ns0:AccountingRuleIdCrossRef xsi:nil="true"/>
<ns0:OrderedUomCrossRef>Ea</ns0:OrderedUomCrossRef>
<ns0:ShipClassOfServiceCrossRef xsi:nil="true"/>
<ns0:ShipModeOfTransportCrossRef xsi:nil="true"/>
<ns0:ShipmentPriorityCodeCrossRef xsi:nil="true"/>
<ns0:TaxClassificationCodeCrossRef>VAT20</ns0:TaxClassificationCodeCrossRef>
<ns0:TaxExemptionReasonCodeCrossRef xsi:nil="true"/>
<ns0:DemandClassCodeCrossRef xsi:nil="true"/>
<ns0:FobPointCodeCrossRef xsi:nil="true"/>
<ns0:FreightTermsCodeCrossRef xsi:nil="true"/>
<ns0:ReturnReasonCodeCrossRef xsi:nil="true"/>
<ns0:CarrierIdCrossRef xsi:nil="true"/>
<ns0:PaymentTermIdCrossRef xsi:nil="true"/>
<ns0:FreightTermsCode xsi:nil="true"/>
<ns0:SchedulingReasonCode xsi:nil="true"/>
<ns0:ObjectVersionNumber>4</ns0:ObjectVersionNumber>
<ns0:SchedulingReason/>
<ns0:LookupCode/>
<ns0:LookupType/>
<ns0:SubInventory xsi:nil="true"/>
<ns0:ShipToPartyId>1006</ns0:ShipToPartyId>
<ns0:ShipToPartySiteId>1036</ns0:ShipToPartySiteId>
<ns0:ShipToPartyContactId xsi:nil="true"/>
<ns0:ShipToPartyIdCrossRef>1006</ns0:ShipToPartyIdCrossRef>
<ns0:ShipToPartySiteIdCrossRef>1036</ns0:ShipToPartySiteIdCrossRef>
<ns0:ShipToPartyContactIdCrossRef xsi:nil="true"/>
<ns0:CancelReasonCode xsi:nil="true"/>
<ns0:Comments xsi:nil="true"/>
<ns0:RequestCancelDate xsi:nil="true"/>
<ns0:CancelReasonCodeCrossRef xsi:nil="true"/>
<ns0:ShipToPartyNumber>1006</ns0:ShipToPartyNumber>
<ns0:ShipToPartySiteNumber>1036</ns0:ShipToPartySiteNumber>
<ns0:ShipToCustomerAccountNumber xsi:nil="true"/>
<ns0:ShipToLocationCode xsi:nil="true"/>
<ns0:BillToCustomerAccountNumber>1006</ns0:BillToCustomerAccountNumber>
<ns0:BillToLocationCode xsi:nil="true"/>
<ns0:FulfillmentOrgCode>V1</ns0:FulfillmentOrgCode>
<ns0:AssessableValue>5</ns0:AssessableValue>
<ns0:DefaultTaxationCountry>US</ns0:DefaultTaxationCountry>
<ns0:DocumentSubType xsi:nil="true"/>
<ns0:FinalDischargeLocationId xsi:nil="true"/>
<ns0:FirstPtyRegId>35647</ns0:FirstPtyRegId>
<ns0:ProductCategory xsi:nil="true"/>
<ns0:ProductType>GOODS</ns0:ProductType>
<ns0:TaxInvoiceDate xsi:nil="true"/>
<ns0:TaxInvoiceNumber xsi:nil="true"/>
<ns0:ThirdPtyRegId xsi:nil="true"/>
<ns0:TrxBusinessCategory>SALES_TRANSACTION</ns0:TrxBusinessCategory>
<ns0:UserDefinedFiscClass xsi:nil="true"/>
<ns0:IntendedUseClassifId xsi:nil="true"/>
<ns0:ProdFcCategId xsi:nil="true"/>
<ns0:DestinationOrgId xsi:nil="true"/>
1195
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns0:DestinationLocationId xsi:nil="true"/>
<ns0:ConfigInventoryItemId xsi:nil="true"/>
<ns0:ConfigItemReference xsi:nil="true"/>
<ns0:ItemSubTypeCode>STANDARD</ns0:ItemSubTypeCode>
<ns0:ItemSubTypeName>Standard</ns0:ItemSubTypeName>
<ns0:ConfigInventoryItemNumber xsi:nil="true"/>
<ns0:SupplierId xsi:nil="true"/>
<ns0:SupplierSiteId xsi:nil="true"/>
<ns0:PurchasingUom xsi:nil="true"/>
<ns0:ShippedUom xsi:nil="true"/>
<ns0:RequisitionBuId xsi:nil="true"/>
<ns0:RequisitionInventoryOrgId xsi:nil="true"/>
<ns0:BuyerId xsi:nil="true"/>
<ns0:AppliedPriceListId xsi:nil="true"/>
<ns0:BillToContactPointId xsi:nil="true"/>
<ns0:ChangeEligibleFlag>Y</ns0:ChangeEligibleFlag>
<ns0:ComponentIdPath xsi:nil="true"/>
<ns0:ConfigCreationDate xsi:nil="true"/>
<ns0:ConfigHeaderId xsi:nil="true"/>
<ns0:ConfigRevisionNumber xsi:nil="true"/>
<ns0:ConfiguratorPath xsi:nil="true"/>
<ns0:ContractEndDate>2018-03-05</ns0:ContractEndDate>
<ns0:ContractStartDate>2018-03-01</ns0:ContractStartDate>
<ns0:CustomerPoScheduleNumber xsi:nil="true"/>
<ns0:ModifiedFlag>Y</ns0:ModifiedFlag>
<ns0:PrefOverriddenBitset xsi:nil="true"/>
<ns0:PricedOn>2018-08-03T05:40:28.015Z</ns0:PricedOn>
<ns0:PurchasingEnabledFlag>N</ns0:PurchasingEnabledFlag>
<ns0:QuantityPerModel xsi:nil="true"/>
<ns0:RequiredFulfillmentDate>2015-01-15T10:10:10.0Z</ns0:RequiredFulfillmentDate>
<ns0:ShipToContactPointId xsi:nil="true"/>
<ns0:ShowInSales xsi:nil="true"/>
<ns0:SupplyStatusCode xsi:nil="true"/>
<ns0:UnitQuantity xsi:nil="true"/>
<ns0:ValidConfigurationFlag xsi:nil="true"/>
<ns0:ShipToPartyName>Computer Service and Rentals</ns0:ShipToPartyName>
<ns0:ShipToPartyPersonFirstName xsi:nil="true"/>
<ns0:ShipToPartyPersonLastName xsi:nil="true"/>
<ns0:ShipToPartyPersonMiddleName xsi:nil="true"/>
<ns0:ShipToPartyPersonNameSuffix xsi:nil="true"/>
<ns0:ShipToPartyPersonTitle xsi:nil="true"/>
<ns0:ShipToAddress1>2164 Broadway</ns0:ShipToAddress1>
<ns0:ShipToAddress2 xsi:nil="true"/>
<ns0:ShipToAddress3 xsi:nil="true"/>
<ns0:ShipToAddress4 xsi:nil="true"/>
<ns0:ShipToCity>Tempe</ns0:ShipToCity>
<ns0:ShipToProvince xsi:nil="true"/>
<ns0:ShipToPostalCode>85282</ns0:ShipToPostalCode>
<ns0:ShipToState>AZ</ns0:ShipToState>
<ns0:ShipToCounty>Maricopa</ns0:ShipToCounty>
<ns0:ShipToCountry>US</ns0:ShipToCountry>
<ns0:ShipToPartyContactNumber xsi:nil="true"/>
<ns0:ShipToPartyContactName xsi:nil="true"/>
<ns0:ShipToContactFirstName xsi:nil="true"/>
<ns0:ShipToContactLastName xsi:nil="true"/>
<ns0:ShipToContactMiddleName xsi:nil="true"/>
<ns0:ShipToContactNameSuffix xsi:nil="true"/>
<ns0:ShipToContactTitle xsi:nil="true"/>
<ns0:BillToCustomerName>Computer Service and Rentals</ns0:BillToCustomerName>
<ns0:BillToCustomerNumber>1006</ns0:BillToCustomerNumber>
<ns0:BillToAccountPersonFirstName xsi:nil="true"/>
<ns0:BillToAccountPersonLastName xsi:nil="true"/>
<ns0:BillToAccountPersonMiddleName xsi:nil="true"/>
<ns0:BillToAccountPersonNameSuffix xsi:nil="true"/>
<ns0:BillToAccountPersonTitle xsi:nil="true"/>
<ns0:BillToAddress1>301 Summit Hill Drive</ns0:BillToAddress1>
1196
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns0:BillToAddress2 xsi:nil="true"/>
<ns0:BillToAddress3 xsi:nil="true"/>
<ns0:BillToAddress4 xsi:nil="true"/>
<ns0:BillToCity>CHATTANOOGA</ns0:BillToCity>
<ns0:BillToProvince xsi:nil="true"/>
<ns0:BillToPostalCode>37401</ns0:BillToPostalCode>
<ns0:BillToState>TN</ns0:BillToState>
<ns0:BillToCounty>Hamilton</ns0:BillToCounty>
<ns0:BillToCountry>US</ns0:BillToCountry>
<ns0:BillToAccountContactNumber>CONTACT-1560</ns0:BillToAccountContactNumber>
<ns0:BillToAccountContactName>Piere Legrand</ns0:BillToAccountContactName>
<ns0:BillToContactFirstName>Piere</ns0:BillToContactFirstName>
<ns0:BillToContactLastName>Legrand</ns0:BillToContactLastName>
<ns0:BillToContactMiddleName xsi:nil="true"/>
<ns0:BillToContactNameSuffix xsi:nil="true"/>
<ns0:BillToContactTitle xsi:nil="true"/>
<ns0:BillToPartyType>ORGANIZATION</ns0:BillToPartyType>
<ns0:ShipClassOfServiceName xsi:nil="true"/>
<ns0:FreightTerms xsi:nil="true"/>
<ns0:ShipModeOfTransportName xsi:nil="true"/>
<ns0:OrderedUomName>Each</ns0:OrderedUomName>
<ns0:CarrierName xsi:nil="true"/>
<ns0:LineTypeName>Return for credit and return the item</ns0:LineTypeName>
<ns0:FulfillOrgLocationId>204</ns0:FulfillOrgLocationId>
<ns0:FulfillOrgAddress1>90 Fifth Avenue</ns0:FulfillOrgAddress1>
<ns0:FulfillOrgAddress2 xsi:nil="true"/>
<ns0:FulfillOrgAddress3 xsi:nil="true"/>
<ns0:FulfillOrgAddress4 xsi:nil="true"/>
<ns0:FulfillOrgCity>New York</ns0:FulfillOrgCity>
<ns0:FulfillOrgPostalCode>10022-3422</ns0:FulfillOrgPostalCode>
<ns0:FulfillOrgState>NY</ns0:FulfillOrgState>
<ns0:FulfillOrgProvince xsi:nil="true"/>
<ns0:FulfillOrgCounty>New York</ns0:FulfillOrgCounty>
<ns0:FulfillOrgCountry>US</ns0:FulfillOrgCountry>
<ns0:FulfillmentOrgName>Vision Operations</ns0:FulfillmentOrgName>
<ns0:SupplierIdCrossRef xsi:nil="true"/>
<ns0:SupplierNumber xsi:nil="true"/>
<ns0:SupplierName xsi:nil="true"/>
<ns0:SupplierSiteIdCrossRef xsi:nil="true"/>
<ns0:SupplierAddressLine1 xsi:nil="true"/>
<ns0:SupplierAddressLine2 xsi:nil="true"/>
<ns0:SupplierAddressLine3 xsi:nil="true"/>
<ns0:SupplierAddressLine4 xsi:nil="true"/>
<ns0:SupplierCity xsi:nil="true"/>
<ns0:SupplierPostalCode xsi:nil="true"/>
<ns0:SupplierState xsi:nil="true"/>
<ns0:SupplierProvince xsi:nil="true"/>
<ns0:SupplierCounty xsi:nil="true"/>
<ns0:SupplierCountry xsi:nil="true"/>
<ns0:ShipToPartyType>ORGANIZATION</ns0:ShipToPartyType>
<ns0:TransportationPlannedFlag>N</ns0:TransportationPlannedFlag>
<ns0:TransportationPlanningStatus>Not Applicable</ns0:TransportationPlanningStatus>
<ns0:CancelReason xsi:nil="true"/>
<ns0:SubstitutionReason xsi:nil="true"/>
<ns0:CustomerProductNumber xsi:nil="true"/>
<ns0:CustomerProductDescription xsi:nil="true"/>
<ns0:InvoicingRule xsi:nil="true"/>
<ns0:AccountingRule xsi:nil="true"/>
<ns0:DemandClass xsi:nil="true"/>
<ns0:PaymentTerms xsi:nil="true"/>
<ns0:ReturnReason xsi:nil="true"/>
<ns0:ShippingPriority xsi:nil="true"/>
<ns0:InventoryOrganization>V1</ns0:InventoryOrganization>
<ns0:InventoryOrganizationName>Vision Operations</ns0:InventoryOrganizationName>
<ns0:SubInventoryName xsi:nil="true"/>
<ns0:TaxClassification>VAT20</ns0:TaxClassification>
1197
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns0:TaxExemptionReason xsi:nil="true"/>
<ns0:FOBPoint xsi:nil="true"/>
<ns0:FulfillmentSplitReferenceLineNumber xsi:nil="true"/>
<ns0:ConfiguredInventoryItemDescription xsi:nil="true"/>
<ns0:BuyerName xsi:nil="true"/>
<ns0:BuyerFirstName xsi:nil="true"/>
<ns0:BuyerMiddleName xsi:nil="true"/>
<ns0:BuyerLastName xsi:nil="true"/>
<ns0:ShipToPartyLastUpdateDate>2017-07-26T17:51:22.683Z</ns0:ShipToPartyLastUpdateDate>
<ns0:ShipToPartySiteLastUpdateDate>1998-06-16T17:13:50.0Z</ns0:ShipToPartySiteLastUpdateDate>
<ns0:BillToPartyLastUpdateDate>2017-07-26T17:51:22.683Z</ns0:BillToPartyLastUpdateDate>
<ns0:BillToPartySiteLastUpdateDate>2004-09-09T10:46:39.0Z</ns0:BillToPartySiteLastUpdateDate>
<ns0:OrderedQuantityInPrimaryUOM xsi:nil="true"/>
<ns0:PrimaryUOMCode xsi:nil="true"/>
<ns0:PrimaryUOM xsi:nil="true"/>
<ns0:ShipmentPriority xsi:nil="true"/>
<ns0:FinalDischargeLocationAddressLine1 xsi:nil="true"/>
<ns0:FinalDischargeLocationAddressLine2 xsi:nil="true"/>
<ns0:FinalDischargeLocationAddressLine3 xsi:nil="true"/>
<ns0:FinalDischargeLocationAddressLine4 xsi:nil="true"/>
<ns0:FinalDischargeLocationAddressCity xsi:nil="true"/>
<ns0:FinalDischargeLocationAddressState xsi:nil="true"/>
<ns0:FinalDischargeLocationAddressPostalCode xsi:nil="true"/>
<ns0:FinalDischargeLocationAddressProvince xsi:nil="true"/>
<ns0:FinalDischargeLocationAddressCounty xsi:nil="true"/>
<ns0:FinalDischargeLocationAddressCountry xsi:nil="true"/>
<ns0:DefaultTaxationCountryShortName>United States</ns0:DefaultTaxationCountryShortName>
<ns0:FirstPartyTaxRegistration>4567890</ns0:FirstPartyTaxRegistration>
<ns0:ThirdPartyTaxRegistration xsi:nil="true"/>
<ns0:DocumentSubTypeName xsi:nil="true"/>
<ns0:ProductTypeName>Goods</ns0:ProductTypeName>
<ns0:TransactionLineType xsi:nil="true"/>
<ns0:ProductCategoryName xsi:nil="true"/>
<ns0:TransactionBusinessCategoryName xsi:nil="true"/>
<ns0:IntendedUseClassificationName xsi:nil="true"/>
<ns0:UserDefinedFiscClassName xsi:nil="true"/>
<ns0:ProductFiscalCategoryName xsi:nil="true"/>
<ns0:DestinationShippingOrganizationName xsi:nil="true"/>
<ns0:DestinationShippingOrganizationCode xsi:nil="true"/>
<ns0:DestinationShippingAddressLine1 xsi:nil="true"/>
<ns0:DestinationShippingAddressLine2 xsi:nil="true"/>
<ns0:DestinationShippingAddressLine3 xsi:nil="true"/>
<ns0:DestinationShippingAddressLine4 xsi:nil="true"/>
<ns0:DestinationShippingAddressCity xsi:nil="true"/>
<ns0:DestinationShippingAddressPostalCode xsi:nil="true"/>
<ns0:DestinationShippingAddressState xsi:nil="true"/>
<ns0:DestinationShippingAddressProvince xsi:nil="true"/>
<ns0:DestinationShippingAddressCounty xsi:nil="true"/>
<ns0:DestinationShippingAddressCountry xsi:nil="true"/>
<ns0:JeopardyPriority>HIGH</ns0:JeopardyPriority>
<ns0:CreditChkAuthExpDate xsi:nil="true"/>
<ns0:CreditChkAuthCode xsi:nil="true"/>
<ns0:BillToPartyIdentifier>1006</ns0:BillToPartyIdentifier>
<ns0:BillToPartySiteIdentifier>1034</ns0:BillToPartySiteIdentifier>
<ns0:BillToPartyContactIdentifier>1560</ns0:BillToPartyContactIdentifier>
<ns0:ActionTypeCode>ORA_ADD</ns0:ActionTypeCode>
<ns0:ServiceDuration>2</ns0:ServiceDuration>
<ns0:ServiceDurationPeriodCode>YR</ns0:ServiceDurationPeriodCode>
<ns0:ServiceDurationPeriodName xsi:nil="true"/>
<ns0:SalespersonIdentifier xsi:nil="true"/>
<ns0:Salesperson xsi:nil="true"/>
<ns0:UnreferencedReturnFlag>Y</ns0:UnreferencedReturnFlag>
<ns0:CoveredProductIdentifier>300100090628362</ns0:CoveredProductIdentifier>
<ns0:CoveredProductNumber>OAL_KIT</ns0:CoveredProductNumber>
<ns0:CoveredProductDescription>OAL KIT Item</ns0:CoveredProductDescription>
<ns0:CoveredCustomerProductId xsi:nil="true"/>
1198
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns0:CoveredCustomerProductNumber xsi:nil="true"/>
<ns0:CoveredCustomerProductDescription xsi:nil="true"/>
<ns0:CancellationEffectiveDate>2018-03-07T10:10:10.0Z</ns0:CancellationEffectiveDate>
<ns0:CoveredProductSrcsysReference>OAL_KIT_SPOKE_ITEM_1</ns0:CoveredProductSrcsysReference>
<ns0:SupplierSiteCode xsi:nil="true"/>
<ns0:ContractStartDateTime>2018-03-01T00:00:00.0Z</ns0:ContractStartDateTime>
<ns0:ContractEndDateTime>2018-03-05T00:00:00.0Z</ns0:ContractEndDateTime>
<ns0:FulfillLineEffCategories xsi:type="ns15:j_FulfillLineEffDooFulfillLinesAddInfoprivate"
xmlns:ns14="http://xmlns.your_server.com/apps/scm/doo/processOrder/flex/fulfillLineContextsB/"
xmlns:ns15="http://xmlns.your_server.com/apps/scm/doo/processOrder/flex/fulfillLineCategories/">
<ns3:Category>DOO_FULFILL_LINES_ADD_INFO</ns3:Category>
<ns3:FulfillLineId>300100138387477</ns3:FulfillLineId>
</ns0:FulfillLineEffCategories>
<ns0:OrderDocumentReference>
<ns0:CreatedBy>SCMOPERATIONS</ns0:CreatedBy>
<ns0:CreationDate>2018-08-03T05:40:18.402Z</ns0:CreationDate>
<ns0:DocAltUserKey xsi:nil="true"/>
<ns0:DocContextId xsi:nil="true"/>
<ns0:DocId>300100090628362</ns0:DocId>
<ns0:DocLineAltUserKey xsi:nil="true"/>
<ns0:DocLineContextId xsi:nil="true"/>
<ns0:DocLineId xsi:nil="true"/>
<ns0:DocLineUserKey xsi:nil="true"/>
<ns0:DocRefType>COVERED_ITEM_FOR_ADHOC_RTN</ns0:DocRefType>
<ns0:DocSublineAltUserKey xsi:nil="true"/>
<ns0:DocSublineContextId xsi:nil="true"/>
<ns0:DocSublineId xsi:nil="true"/>
<ns0:DocSublineUserKey xsi:nil="true"/>
<ns0:DocSystemRefId>300100138387481</ns0:DocSystemRefId>
<ns0:DocUserKey>OAL_KIT</ns0:DocUserKey>
<ns0:FulfillLineId>300100138387477</ns0:FulfillLineId>
<ns0:HeaderId>300100138387475</ns0:HeaderId>
<ns0:LastUpdateDate>2018-08-03T05:40:26.953Z</ns0:LastUpdateDate>
<ns0:LastUpdateLogin>72822FC9F7FE2923E0534E08F20A027A</ns0:LastUpdateLogin>
<ns0:LastUpdatedBy>SCMOPERATIONS</ns0:LastUpdatedBy>
<ns0:LineId>300100138387476</ns0:LineId>
<ns0:ObjectVersionNumber>1</ns0:ObjectVersionNumber>
<ns0:OwnerTableId xsi:nil="true"/>
<ns0:OwnerTableName xsi:nil="true"/>
</ns0:OrderDocumentReference>
<ns0:OrderCharge>
<ns0:ChargeAppliesTo>PRICE</ns0:ChargeAppliesTo>
<ns0:ChargeCurrencyCode>USD</ns0:ChargeCurrencyCode>
<ns0:ChargeDefinitionCode>QP_SALE_PRICE</ns0:ChargeDefinitionCode>
<ns0:ChargeSubtypeCode>ORA_PRICE</ns0:ChargeSubtypeCode>
<ns0:ChargeTypeCode>ORA_SALE</ns0:ChargeTypeCode>
<ns0:GsaUnitPrice xsi:nil="true"/>
<ns0:OrderChargeId>300100138387478</ns0:OrderChargeId>
<ns0:ParentEntityCode>LINE</ns0:ParentEntityCode>
<ns0:ParentEntityId>300100138387477</ns0:ParentEntityId>
<ns0:PricePeriodicityCode xsi:nil="true"/>
<ns0:PriceTypeCode>ONE_TIME</ns0:PriceTypeCode>
<ns0:PricedQuantity>3</ns0:PricedQuantity>
<ns0:PricedQuantityUomCode>YR</ns0:PricedQuantityUomCode>
<ns0:PrimaryFlag>Y</ns0:PrimaryFlag>
<ns0:RollupFlag>N</ns0:RollupFlag>
<ns0:SequenceNumber>1</ns0:SequenceNumber>
<ns0:SourceChargeId>SC1</ns0:SourceChargeId>
<ns0:ReferenceOrderChargeId xsi:nil="true"/>
<ns0:AvgUnitSellingPrice xsi:nil="true"/>
<ns0:ChargeDefinition>Sale Price</ns0:ChargeDefinition>
<ns0:ChargeSubtype>Price</ns0:ChargeSubtype>
<ns0:PriceType>One time</ns0:PriceType>
<ns0:PricedQuantityUOM>Year</ns0:PricedQuantityUOM>
<ns0:ChargeType>Sale</ns0:ChargeType>
<ns0:ChargeCurrencyName>US Dollar</ns0:ChargeCurrencyName>
1199
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns0:OrderChargeComponent>
<ns0:ChargeCurrencyCode>USD</ns0:ChargeCurrencyCode>
<ns0:ChargeCurrencyExtAmount>0</ns0:ChargeCurrencyExtAmount>
<ns0:ChargeCurrencyUnitPrice>0</ns0:ChargeCurrencyUnitPrice>
<ns0:HeaderCurrencyCode>USD</ns0:HeaderCurrencyCode>
<ns0:HeaderCurrencyExtAmount>0</ns0:HeaderCurrencyExtAmount>
<ns0:HeaderCurrencyUnitPrice>0</ns0:HeaderCurrencyUnitPrice>
<ns0:OrderChargeComponentId>300100138387485</ns0:OrderChargeComponentId>
<ns0:OrderChargeId>300100138387478</ns0:OrderChargeId>
<ns0:ParentChargeComponentId xsi:nil="true"/>
<ns0:PercentOfComparisonElement xsi:nil="true"/>
<ns0:PriceElementCode>QP_BASE_LIST_PRICE</ns0:PriceElementCode>
<ns0:PriceElementUsageCode xsi:nil="true"/>
<ns0:RollupFlag>N</ns0:RollupFlag>
<ns0:SequenceNumber>1000</ns0:SequenceNumber>
<ns0:SourceChargeComponentId>300100138387485</ns0:SourceChargeComponentId>
<ns0:SourceChargeId>300100138387478</ns0:SourceChargeId>
<ns0:SourceParentChargeCompId xsi:nil="true"/>
<ns0:PricingSourceId xsi:nil="true"/>
<ns0:PricingSourceTypeCode>RETURN</ns0:PricingSourceTypeCode>
<ns0:Explanation xsi:nil="true"/>
<ns0:ExplanationMessageName xsi:nil="true"/>
<ns0:TaxIncludedFlag>N</ns0:TaxIncludedFlag>
<ns0:ReferenceOrderChargeCompId xsi:nil="true"/>
<ns0:ChargeCurrencyName>US Dollar</ns0:ChargeCurrencyName>
<ns0:HeaderCurrencyName>US Dollar</ns0:HeaderCurrencyName>
<ns0:PriceElement>Base List Price</ns0:PriceElement>
<ns0:PriceElementUsage xsi:nil="true"/>
<ns0:ChargeCurrencyDurationExtendedAmount>0</ns0:ChargeCurrencyDurationExtendedAmount>
<ns0:HeaderCurrencyDurationExtendedAmount>0</ns0:HeaderCurrencyDurationExtendedAmount>
</ns0:OrderChargeComponent>
<ns0:OrderChargeComponent>
<ns0:ChargeCurrencyCode>USD</ns0:ChargeCurrencyCode>
<ns0:ChargeCurrencyExtAmount>0</ns0:ChargeCurrencyExtAmount>
<ns0:ChargeCurrencyUnitPrice>0</ns0:ChargeCurrencyUnitPrice>
<ns0:HeaderCurrencyCode>USD</ns0:HeaderCurrencyCode>
<ns0:HeaderCurrencyExtAmount>0</ns0:HeaderCurrencyExtAmount>
<ns0:HeaderCurrencyUnitPrice>0</ns0:HeaderCurrencyUnitPrice>
<ns0:OrderChargeComponentId>300100138387486</ns0:OrderChargeComponentId>
<ns0:OrderChargeId>300100138387478</ns0:OrderChargeId>
<ns0:ParentChargeComponentId xsi:nil="true"/>
<ns0:PercentOfComparisonElement xsi:nil="true"/>
<ns0:PriceElementCode>QP_LIST_PRICE</ns0:PriceElementCode>
<ns0:PriceElementUsageCode>LIST_PRICE</ns0:PriceElementUsageCode>
<ns0:RollupFlag>N</ns0:RollupFlag>
<ns0:SequenceNumber>1001</ns0:SequenceNumber>
<ns0:SourceChargeComponentId>300100138387486</ns0:SourceChargeComponentId>
<ns0:SourceChargeId>300100138387478</ns0:SourceChargeId>
<ns0:SourceParentChargeCompId xsi:nil="true"/>
<ns0:PricingSourceId xsi:nil="true"/>
<ns0:PricingSourceTypeCode>RETURN</ns0:PricingSourceTypeCode>
<ns0:Explanation xsi:nil="true"/>
<ns0:ExplanationMessageName xsi:nil="true"/>
<ns0:TaxIncludedFlag>N</ns0:TaxIncludedFlag>
<ns0:ReferenceOrderChargeCompId xsi:nil="true"/>
<ns0:ChargeCurrencyName>US Dollar</ns0:ChargeCurrencyName>
<ns0:HeaderCurrencyName>US Dollar</ns0:HeaderCurrencyName>
<ns0:PriceElement>List Price</ns0:PriceElement>
<ns0:PriceElementUsage>List price</ns0:PriceElementUsage>
<ns0:ChargeCurrencyDurationExtendedAmount>0</ns0:ChargeCurrencyDurationExtendedAmount>
<ns0:HeaderCurrencyDurationExtendedAmount>0</ns0:HeaderCurrencyDurationExtendedAmount>
</ns0:OrderChargeComponent>
<ns0:OrderChargeComponent>
<ns0:ChargeCurrencyCode>USD</ns0:ChargeCurrencyCode>
<ns0:ChargeCurrencyExtAmount>0</ns0:ChargeCurrencyExtAmount>
<ns0:ChargeCurrencyUnitPrice>0</ns0:ChargeCurrencyUnitPrice>
1200
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns0:HeaderCurrencyCode>USD</ns0:HeaderCurrencyCode>
<ns0:HeaderCurrencyExtAmount>0</ns0:HeaderCurrencyExtAmount>
<ns0:HeaderCurrencyUnitPrice>0</ns0:HeaderCurrencyUnitPrice>
<ns0:OrderChargeComponentId>300100138387480</ns0:OrderChargeComponentId>
<ns0:OrderChargeId>300100138387478</ns0:OrderChargeId>
<ns0:ParentChargeComponentId xsi:nil="true"/>
<ns0:PercentOfComparisonElement xsi:nil="true"/>
<ns0:PriceElementCode>QP_NET_PRICE</ns0:PriceElementCode>
<ns0:PriceElementUsageCode>NET_PRICE</ns0:PriceElementUsageCode>
<ns0:RollupFlag>N</ns0:RollupFlag>
<ns0:SequenceNumber>1002</ns0:SequenceNumber>
<ns0:SourceChargeComponentId>SCC1</ns0:SourceChargeComponentId>
<ns0:SourceChargeId>SC1</ns0:SourceChargeId>
<ns0:SourceParentChargeCompId xsi:nil="true"/>
<ns0:PricingSourceId xsi:nil="true"/>
<ns0:PricingSourceTypeCode xsi:nil="true"/>
<ns0:Explanation xsi:nil="true"/>
<ns0:ExplanationMessageName xsi:nil="true"/>
<ns0:TaxIncludedFlag>N</ns0:TaxIncludedFlag>
<ns0:ReferenceOrderChargeCompId xsi:nil="true"/>
<ns0:ChargeCurrencyName>US Dollar</ns0:ChargeCurrencyName>
<ns0:HeaderCurrencyName>US Dollar</ns0:HeaderCurrencyName>
<ns0:PriceElement>Your Price</ns0:PriceElement>
<ns0:PriceElementUsage>Net price</ns0:PriceElementUsage>
<ns0:ChargeCurrencyDurationExtendedAmount>0</ns0:ChargeCurrencyDurationExtendedAmount>
<ns0:HeaderCurrencyDurationExtendedAmount>0</ns0:HeaderCurrencyDurationExtendedAmount>
</ns0:OrderChargeComponent>
<ns0:OrderChargeComponent>
<ns0:ChargeCurrencyCode>USD</ns0:ChargeCurrencyCode>
<ns0:ChargeCurrencyExtAmount>0</ns0:ChargeCurrencyExtAmount>
<ns0:ChargeCurrencyUnitPrice>0</ns0:ChargeCurrencyUnitPrice>
<ns0:HeaderCurrencyCode>USD</ns0:HeaderCurrencyCode>
<ns0:HeaderCurrencyExtAmount>0</ns0:HeaderCurrencyExtAmount>
<ns0:HeaderCurrencyUnitPrice>0</ns0:HeaderCurrencyUnitPrice>
<ns0:OrderChargeComponentId>300100138387487</ns0:OrderChargeComponentId>
<ns0:OrderChargeId>300100138387478</ns0:OrderChargeId>
<ns0:ParentChargeComponentId xsi:nil="true"/>
<ns0:PercentOfComparisonElement xsi:nil="true"/>
<ns0:PriceElementCode>QP_MARGIN</ns0:PriceElementCode>
<ns0:PriceElementUsageCode xsi:nil="true"/>
<ns0:RollupFlag>N</ns0:RollupFlag>
<ns0:SequenceNumber>1003</ns0:SequenceNumber>
<ns0:SourceChargeComponentId>300100138387487</ns0:SourceChargeComponentId>
<ns0:SourceChargeId>300100138387478</ns0:SourceChargeId>
<ns0:SourceParentChargeCompId xsi:nil="true"/>
<ns0:PricingSourceId xsi:nil="true"/>
<ns0:PricingSourceTypeCode xsi:nil="true"/>
<ns0:Explanation xsi:nil="true"/>
<ns0:ExplanationMessageName xsi:nil="true"/>
<ns0:TaxIncludedFlag>N</ns0:TaxIncludedFlag>
<ns0:ReferenceOrderChargeCompId xsi:nil="true"/>
<ns0:ChargeCurrencyName>US Dollar</ns0:ChargeCurrencyName>
<ns0:HeaderCurrencyName>US Dollar</ns0:HeaderCurrencyName>
<ns0:PriceElement>Margin</ns0:PriceElement>
<ns0:PriceElementUsage xsi:nil="true"/>
<ns0:ChargeCurrencyDurationExtendedAmount>0</ns0:ChargeCurrencyDurationExtendedAmount>
<ns0:HeaderCurrencyDurationExtendedAmount>0</ns0:HeaderCurrencyDurationExtendedAmount>
</ns0:OrderChargeComponent>
</ns0:OrderCharge>
</ns0:OrderFulfillLine>
<ns0:LineEffCategories xsi:type="ns17:j_LineEffDooLinesAddInfoprivate" xmlns:ns16="http://
xmlns.your_server.com/apps/scm/doo/processOrder/flex/lineContextsB/" xmlns:ns17="http://
xmlns.your_server.com/apps/scm/doo/processOrder/flex/lineCategories/">
<ns3:Category>DOO_LINES_ADD_INFO</ns3:Category>
<ns3:LineId>300100138387476</ns3:LineId>
</ns0:LineEffCategories>
1201
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
</ns0:OrderLine>
<ns0:HeaderEffCategories xsi:type="ns19:j_HeaderEffDooHeadersAddInfoprivate" xmlns:ns18="http://
xmlns.your_server.com/apps/scm/doo/processOrder/flex/headerContextsB/" xmlns:ns19="http://
xmlns.your_server.com/apps/scm/doo/processOrder/flex/headerCategories/">
<ns3:Category>DOO_HEADERS_ADD_INFO</ns3:Category>
<ns3:HeaderId>300100138387475</ns3:HeaderId>
</ns0:HeaderEffCategories>
<ns0:OrderTotals>
<ns0:CurrencyCode>USD</ns0:CurrencyCode>
<ns0:DisplayName xsi:nil="true"/>
<ns0:EstimatedFlag>N</ns0:EstimatedFlag>
<ns0:HeaderId>300100138387475</ns0:HeaderId>
<ns0:OrderTotalId>300100138387505</ns0:OrderTotalId>
<ns0:PrimaryFlag>N</ns0:PrimaryFlag>
<ns0:TotalAmount>0</ns0:TotalAmount>
<ns0:TotalCode>QP_TOTAL_NET_PRICE</ns0:TotalCode>
<ns0:TotalGroup>2.3.0</ns0:TotalGroup>
</ns0:OrderTotals>
<ns0:OrderTotals>
<ns0:CurrencyCode>USD</ns0:CurrencyCode>
<ns0:DisplayName xsi:nil="true"/>
<ns0:EstimatedFlag>N</ns0:EstimatedFlag>
<ns0:HeaderId>300100138387475</ns0:HeaderId>
<ns0:OrderTotalId>300100138387506</ns0:OrderTotalId>
<ns0:PrimaryFlag>N</ns0:PrimaryFlag>
<ns0:TotalAmount>0</ns0:TotalAmount>
<ns0:TotalCode>QP_TOTAL_DISCOUNT</ns0:TotalCode>
<ns0:TotalGroup>1.2.0</ns0:TotalGroup>
</ns0:OrderTotals>
<ns0:OrderTotals>
<ns0:CurrencyCode>USD</ns0:CurrencyCode>
<ns0:DisplayName xsi:nil="true"/>
<ns0:EstimatedFlag>N</ns0:EstimatedFlag>
<ns0:HeaderId>300100138387475</ns0:HeaderId>
<ns0:OrderTotalId>300100138387500</ns0:OrderTotalId>
<ns0:PrimaryFlag>N</ns0:PrimaryFlag>
<ns0:TotalAmount>0</ns0:TotalAmount>
<ns0:TotalCode>QP_TOTAL_CREDIT</ns0:TotalCode>
<ns0:TotalGroup>2.6.0</ns0:TotalGroup>
<ns0:OrderTotalComponents>
<ns0:OrderChargeComponentId>300100138387480</ns0:OrderChargeComponentId>
<ns0:OrderTotalComponentId>300100138387501</ns0:OrderTotalComponentId>
<ns0:OrderTotalId>300100138387500</ns0:OrderTotalId>
</ns0:OrderTotalComponents>
</ns0:OrderTotals>
<ns0:OrderTotals>
<ns0:CurrencyCode>USD</ns0:CurrencyCode>
<ns0:DisplayName xsi:nil="true"/>
<ns0:EstimatedFlag>N</ns0:EstimatedFlag>
<ns0:HeaderId>300100138387475</ns0:HeaderId>
<ns0:OrderTotalId>300100138387502</ns0:OrderTotalId>
<ns0:PrimaryFlag>Y</ns0:PrimaryFlag>
<ns0:TotalAmount>0</ns0:TotalAmount>
<ns0:TotalCode>QP_TOTAL_PAY_NOW</ns0:TotalCode>
<ns0:TotalGroup>3.7.1</ns0:TotalGroup>
<ns0:OrderTotalComponents>
<ns0:OrderChargeComponentId>300100138387480</ns0:OrderChargeComponentId>
<ns0:OrderTotalComponentId>300100138387503</ns0:OrderTotalComponentId>
<ns0:OrderTotalId>300100138387502</ns0:OrderTotalId>
</ns0:OrderTotalComponents>
</ns0:OrderTotals>
<ns0:OrderTotals>
<ns0:CurrencyCode>USD</ns0:CurrencyCode>
<ns0:DisplayName xsi:nil="true"/>
<ns0:EstimatedFlag>N</ns0:EstimatedFlag>
<ns0:HeaderId>300100138387475</ns0:HeaderId>
1202
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
<ns0:OrderTotalId>300100138387507</ns0:OrderTotalId>
<ns0:PrimaryFlag>N</ns0:PrimaryFlag>
<ns0:TotalAmount>0</ns0:TotalAmount>
<ns0:TotalCode>QP_TOTAL_SHIP_CHARGE</ns0:TotalCode>
<ns0:TotalGroup>2.4.0</ns0:TotalGroup>
</ns0:OrderTotals>
<ns0:OrderTotals>
<ns0:CurrencyCode>USD</ns0:CurrencyCode>
<ns0:DisplayName xsi:nil="true"/>
<ns0:EstimatedFlag>N</ns0:EstimatedFlag>
<ns0:HeaderId>300100138387475</ns0:HeaderId>
<ns0:OrderTotalId>300100138387508</ns0:OrderTotalId>
<ns0:PrimaryFlag>N</ns0:PrimaryFlag>
<ns0:TotalAmount>0</ns0:TotalAmount>
<ns0:TotalCode>QP_TOTAL_TAX</ns0:TotalCode>
<ns0:TotalGroup>2.5.0</ns0:TotalGroup>
</ns0:OrderTotals>
<ns0:OrderTotals>
<ns0:CurrencyCode>USD</ns0:CurrencyCode>
<ns0:DisplayName xsi:nil="true"/>
<ns0:EstimatedFlag>N</ns0:EstimatedFlag>
<ns0:HeaderId>300100138387475</ns0:HeaderId>
<ns0:OrderTotalId>300100138387504</ns0:OrderTotalId>
<ns0:PrimaryFlag>N</ns0:PrimaryFlag>
<ns0:TotalAmount>0</ns0:TotalAmount>
<ns0:TotalCode>QP_TOTAL_LIST_PRICE</ns0:TotalCode>
<ns0:TotalGroup>1.1.0</ns0:TotalGroup>
</ns0:OrderTotals>
</ns0:Value>
</ns2:result>
</ns0:getOrderDetailsResponse>
</env:Body>
</env:Envelope>
Related Topics
• Return Items Without Original Sales Order
• Opt In To Features in Order Management
1203
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• Order import template. The template is SourceSalesOrderImportTemplate.xlsm. Many of the return aributes
are on tab DOO_ORDER_LINES_ALL_INT.
• Web service in Oracle Application Development Framework (ADF).
1204
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Required Aributes
Here are the aributes that your import must include.
Aribute Description
Aribute that identies the item. Choose from the group. For example, Product Number.
Ordered Quantity
Make sure quantity is greater than 0 for a new source order. You can use 0 for a revise order.
• Allows decimals. Make sure the number of digits after the decimal point doesn't exceed
the maximum number of digits allowed according to prole Quantity Decimal Precision.
For details, see the Control Decimal Precision topic.
• Doesn't allow decimals. Make sure the source order doesn't include decimal values.
Ordered UOM Make sure the unit of measure is appropriate for the item.
For example, Quart is appropriate for a liquid, but Amperage isn't because amperage measures
electrical current.
If the item returns a coverage, then make sure the unit of measure is appropriate for the
covered item.
Return Type Identies type of order line. Use a value from the Return Order Line Types lookup.
If you use the order import template, then use the Transaction Line Type Code aribute in
column AB of tab DOO_ ORDER_ LINES_ ALL_INT.
Return Location If Return Type is Return for credit and return the item, then the import requires Return
Location.
If you use the order import template, then use the Requested Fulllment Organization
Identier aribute in column N of tab DOO_ ORDER_ LINES_ ALL_INT.
Return Reason If you use the order import template, then use the Return Reason aribute in column DJ and
DK of tab DOO_ ORDER_ LINES_ ALL_INT.
Coverage
If you cancel a coverage, then include the Covered Item aribute, the Source System Reference for Covered Product
aribute, and at least one of these aributes.
1205
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Cancel a Service
A service can be a coverage and subscription. For details, see the Import Source Orders That Include Coverage or
Subscriptions topic.
Here are the aributes you can use when you cancel a service.
Aribute Description
For details about these types, see the Set Up Coverage for Sales Orders topic.
Note.
• If your source system already priced the source order, and if source order includes Duration, then you must
also include the extended amount for duration.
• If the import includes a coverage, then you must also include the covered item.
Not Allowed
Make sure your import doesn't . . .
• Include a congured item.
• Include recurring billing. The source order must specify one time billing.
• Modify a return item and its covered item or add or remove the original sales order revision.
Related Topics
• Return Items Without Original Sales Order
1206
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
An unreferenced return is a sales order that includes a return line that doesn't reference the sales order that your
customer used to purchase the item.
Examples
Your Customer Returns a Whole Bunch of Orders
Vision Corporation is a wholesaler who sold 8,000 items in 475 sales orders to retailer Fantastic Laptops.
One year later, Fantastic Laptops returns 50 items in a large container. To simplify order entry, billing, and through
agreement with Fantastic Laptops, Vision Corporation credits all items at the same price. The Order Entry Specialist
uses the Order Management work area to create a single unreferenced return order for all the returned items. This
approach allows the Order Entry Specialist to complete the return without having to spend many hours looking up the
original sales order for each item.
First Software maintains over 50 outlets in a fast-paced environment. They sell to an established set of clients, and
maintain a contractual, working relationship with each client. Each outlet receives return items that they sold, and also
returns items that other outlets sold. However, personnel who work at the outlets don't have time to look up the original
sales order for each return.
First Software trusts their clients and don't feel its necessary to conrm the original sales order. At the end of the week,
one person at each location enters all returns they received into a single return order that doesn't reference any of the
original sales orders.
Computer Service and Rentals is a new company who sells laptops in a retail marketplace. They are interested in gaining
market share, so they accept items that their customer purchased from a competitor as part of a promotion to sell new
laptops. Computer Service and Rentals enters these items as unreferenced returns, then sells them later as refurbished.
Green Corporation sells magazine subscriptions. Customers call the call center to cancel subscriptions. Green
Corporation recently upgraded to Order Management, but didn't migrate order data from their legacy system to Order
Management.
The Order Entry Specialist creates an unreferenced return to cancel the subscription and credit the remaining part of
the subscription that the customer already paid but didn't use. The Order Entry Specialist sets details on the order line,
such as item, quantity, return type, and then uses aribute Duration and aribute Period to specify details about the
return. Order Management calculates the price when the Order Entry Specialist adds the return to the order.
Computer Service and Rentals is a retailer who sells directly to the public. Their customer returns an item but doesn't
have the original receipt, and the item doesn't include a serial number or other marking that the Order Entry Specialist
can use to look up the item when creating the return. The Order Entry Specialist uses the Add Unreferenced Return
Lines action to add the item.
1207
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Small Inc.is a retailer who sells the Long Life Tea Set, which is a pick-to-order, congured item that includes congure
options, such as steeping pot, pouring vessel, and set of tea cups. Customers return items but no longer have the
receipt, and the item doesn't include an identifying marking that the Order Entry Specialist can use to look up the
item when creating the return. The Order Management work area doesn't allow the Order Entry Specialist to return a
congured item. Instead, the Order Entry Specialist creates a return line for each congure option.
If you have an unreferenced return, and if you're returning a congured item that's.
• pick-to-order. You can return one or more individual congure options or the entire item.
• assemble-to-order. You can't return any congure option. You can't return the entire item.
How It Works
1208
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• Fills in aributes on the order header, then, in the Order Lines area, clicks Add Unreferenced Return Lines.
• Adds unreferenced return lines, then clicks Add to add them to the sales order.
• Uses aribute values from the order header to set default values for aributes on return lines.
• Runs pretransformation rules to set the default values.
• Prices the return according to current system date.
• Sets Billing Frequency to One Time Billing and credits the entire amount as a single credit.
• Adds included item for each kit according to the product structure you set up in the Product Information
Management work area.
Set Up
1209
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Note.
• Enable opt-in feature Return Items or Cancel Services Without a Reference Order. For details, see the Opt Into
Features in Order Management topic.
• If you're upgrading, then here's what opt-in does, depending on whether you extended pricing algorithms.
• Determines whether the return line does or doesn't include a reference to the original sales order.
• Calculates price like it normally calculates a sales order line, then adds a negative sign.
• Calculates price according to the pricing set up that exists on the return date or cancel date. For example, it
applies the discounts and charges that existed on the item as of the return date or cancel date.
• Calculates a one time charge or recurring charge.
• Calculates the pricing adjustment and discount.
• If Pricing can't determine the charge, then it applies a zero charge.
• Allows the Order Entry Specialist to manually adjust the price as an override on the return line.
• Prices the cancel for a coverage or subscription, including pricing only part of the coverage or subscription
period.
1210
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
For example.
Note.
• Pricing determines that the list price for the AS54888 item is $2500.00 according to the price that exists on the
date and time when the user added the order line.
• Pricing applies the negative sign to get -2500.00.
• The user overrides the price to -$2000.00. For example, assume your company policy requires that you reduce
the refund by $500 when the customer returns the AS54888 without the original sales order.
1211
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
1212
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Get a Report
In the Reports and Analytics work area, expand the Order Management - Fulllment Lines Real Time subject area,
expand Fulllment Lines General Details, then notice the aributes you can use for a fulllment line. To create a report
that includes unreferenced return lines, add a lter.
For details, see the Use Reports and Analytics with Order Management topic.
Related Topics
• Return Items Without Original Sales Order
• Opt In To Features in Order Management
1213
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
• If the return doesn't reference the original sales order, then don't allow the user to modify Cancellation Eective
Date.
1214
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
For details about processing constraints, see the Set Up Processing Constraints topic.
Use an order management extension to implement a more specialized constraint. For example, if its been 15 days or
more since Order Management sent the sales order to invoicing, then write an extension that prevents the user from
creating a return material authorization. Use the On Save extension point. For details, see the Overview of Creating
Extensions That Modify Order Management topic.
This topic includes example values. You might use dierent values, depending on your business requirements.
1215
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Try it.
◦ On the Manage Processing Constraints page, click Validation Rule Set, then add a rule set.
Aribute Value
Aribute Value
Description If the return doesn't reference the original sales order, then don't allow user to modify
date.
◦ In the Details area, click Actions > Add Row, set values, then click Save.
Aribute Value
◦ Click Generate Packages, notice the Conrmation dialog displays your request ID, then wait a few
minutes for the request to nish.
For example.
The concurrent request to generate constraints validation packages was submitted. Request ID:
10650.
◦ Click Constraints > Actions > Add Row, then set values.
1216
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Aribute Value
Group Number 1
Scope Any
Message You must not modify Cancellation Eective Date when you return a sales order without
the original order because Order Management uses this date to price the return.
Aribute Value
1217
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
2. In the Order Lines area, click Actions > Create Unreferenced Return Lines, then set values.
Aribute Value
Item Add a subscription that uses a xed Service Duration Type. For details about this type, see
the Set Up Coverage for Sales Orders topic.
For this example, assume your implementation includes xed subscription QP_ SUBS_
ITEM7-FIXED.
Return Quantity 1
UOM Each
3. Click Submit.
4. If the order line status is Not Started, then wait a moment, and click Refresh. Repeat until status is Awaiting
Receiving.
5. Click Actions > Create Revision.
6. On the order line, modify the value in Cancellation Eective Date, then click Submit.
Related Topics
• Return Items Without Original Sales Order
• Overview of Creating Order Management Extensions
1218
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Note.
1. You create a lookup that allows your users to specify whether its a return without credit.
1219
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
2. The user searches for and views a closed sales order, clicks Return in the Order Lines area, then uses the Return
Items dialog to set Return Type.
3. You create an assignment rule.
◦ If CategoryCode is equal to Return, and. . .
◦ If Line Type is equal to Return Without Credit
4. You create an action in your rule.
◦ Assign orchestration process CustomDOO_ReturnOrderGenericProcess.
5. You create CustomDOO_ReturnOrderGenericProcess. You copy the predened ReturnOrderGenericProcess,
then remove steps so it doesn't issue a credit memo.
For.
• More examples, see the Overview of Returning Items Without Original Sales Order topic.
• Details about credit memos, see book Oracle Financials Cloud, Using Receivables Credit to Cash.
Aribute Value
4. In the Lookup Codes area, click Actions > New, set values, then click Save and Close.
Aribute Value
1220
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
3. In the search results, click the row that includes ReturnOrderGenericProcess in the Name column, then click
Actions > Duplicate.
4. On the Edit Orchestration Process Denition page, set values, then click Save.
Aribute Value
Process Display Name Return Sales Order Without Creating Credit Memo
Enter any text that's meaningful to you.
5. In the Process Details area, click Status Conditions > Fulllment Line Status Values, then click Edit Status
Rule Set.
6. On the Edit Status Rule Set page, delete rows that contain the following values in the Status Value column, then
click Save and Close.
◦ Awaiting Billing
◦ Billed
◦ Partially Received
7. In the Process Details area, click Orchestration Process Status Values, then delete rows that contain the
following values in the Status Value column.
◦ Awaiting Billing
◦ Billed
◦ Partially Received
8. In the Process Details area, click Step Denition, then delete rows that contain the following values in the Step
Name column.
1221
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
9. Click Save, then deploy the orchestration process. For details, see the Deploy Orchestration Processes topic.
For details about how to create an assignment rule, see the Overview of Using Business Rules topic.
Related Topics
• Return Items Without Original Sales Order
• Overview of Using Business Rules With Order Management
• Deploy Orchestration Processes
• Orchestration Processes
Delays
Jeopardy Priority
Jeopardy indicates the severity of a delay of a task in an orchestration process. You can modify the predened range of
jeopardy scores for a jeopardy priority to control how Order Management calculates and displays jeopardy.
For example, you can set a minimum score of 0, and a maximum score of 100 for the Low jeopardy priority.
Note.
• You can use jeopardy on planned dates or on actual dates. This set up allows an order manager to become
aware that a jeopardy condition might exist before it actually occurs, and to take action to x the condition and
reduce jeopardy.
• You can't add or delete a jeopardy priority.
• You can't modify the value of a predened jeopardy priority, such as Low.
To get details about jeopardy and how it works, see the Jeopardy Score topic.
Related Topics
• Jeopardy Score
Jeopardy Threshold
Set up a jeopardy threshold to measure and monitor an orchestration process.
Set up a set of ranges for each fulllment task of an orchestration process, then assign a score that indicates the
severity of the delay. Order Management uses your set up in the jeopardy aributes that it displays in the Order
1222
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Management work area. These aributes help your users to quickly determine the severity of the delay, then take
appropriate action.
You can set up a jeopardy threshold for any combination of these aributes.
• Task type
• Task name
• Process name
• Process version
If you leave these aributes at their default seing of All, then Order Management applies jeopardy threshold to all
fulllment tasks.
If you apply a jeopardy threshold, then you must rst set up the orchestration process, fulllment task, and task type
that the threshold will reference so you can select these objects when you apply the threshold.
Related Topics
• Jeopardy Score
This topic includes example values. You might use dierent values, depending on your business requirements.
LOW 10 199
1223
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Don't.
◦ Overlap scores across priorities. For example, don't set up a Low priority of 10 to 210, and a Medium
priority of 200 to 400. An overlap exists between 200 and 210.
◦ Set up priorities that intersect at the same value. If you set up two priorities that intersect at the same
value, then Order Management assigns the intersecting value to the lower priority.
For example, if you set up Low priority of 10 to 200, and Medium priority of 200 to 400, then Order
Management considers a score of 200 as Low priority.
Schedule Goods 2
Ship Goods 4
Prepare Documentation 1
1224
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Invoice Goods 3
Aribute Value
Code Enter any text that Order Management can use as an abbreviation for the threshold. Order
Management uses this text as a code to identify the threshold throughout the Order
Management work area, such as in lists.
For this example, enter t-shirt_ threshold.
Process Name Choose the name of the orchestration process where Order Management must apply the
jeopardy threshold.
For this example, choose Orchestration_ Process_1.
For details about how to create this process, see the Pause Orchestration Processes Until an
Event Occurs topic.
4. Set the threshold for the Low range of the jeopardy priority. Click Actions > Add Row, then set values.
1225
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
Aribute Value
Maximum Delay 2
Jeopardy Score Enter a value that resides in the Low range of the jeopardy priority that you modied above,
such as 100.
5. Set the threshold for range Medium of the jeopardy priority. Click Actions > Add Row, then set values.
Aribute Value
Maximum Delay 5
Jeopardy Score Enter a value that resides in the Medium range of the jeopardy priority that you modied
above, such as 300.
6. Set the threshold for the High range of the jeopardy priority. Click Actions > Add Row, then set values.
Aribute Value
Maximum Delay 8
Jeopardy Score Enter a value that resides in the High range of the jeopardy priority that you modied above,
such as 500.
Related Topics
• Orchestration Processes
1226
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
1227
Oracle SCM Cloud Chapter 8
Implementing Order Management Order Processing
1228
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
9 Congure-to-Order
Overview
Overview of Congure-to-Order
Use congure-to-order to allow your customer to choose options for each component of a congured item.
For example, order a laptop computer with a 1 terabyte hard drive. The computer is an example of a congured item.
The hard drive is an example of a congure option. 1 terabyte and 500 megabytes are each values your customer can
choose for the option. A congured item can include more than one congure option. A laptop computer can include
other options, such as memory, the display, color of the chassis, and so on.
1229
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Concept Description
Conguration model A structure that denes the options your user can choose for each component. You can also
specify that a component is required. You dene the model during set up. You don't order or
build the model at run time.
1230
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Concept Description
Congure option Child of an object class. The hard drive, monitor, and mouse are each an example of a
congure option. Your user can choose the value for a congure option from a list of available
options.
Congured item An item that includes one or more congure options that your user chooses. A desktop
computer where you choose the hard drive, monitor, and mouse is an example of a congured
item. A congured item is the result of the choices that your user makes at run time when
conguring the item.
Required component Component in the model that the user can't choose. For example, you usually can't choose the
cooling fan when you order a laptop computer.
Note.
• You create the model, classes, options, and structure in the Product Information Management work area at
design time.
• A user chooses options in the Order Management work area in a sales order at run time.
1231
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Example
Here's an example of a conguration model.
Note.
• The model, each option class, and each option are separate items that you create in the Product Information
Management work area. For example, CTO_474000 is the item name for the model, CTO_474100 is the name
of the screen option class, and CTO_474101 is the name of the 14" screen option.
• The processor and baery are required components in this model. You can't order a laptop without them.
• The screen option class is required. You can't order a laptop without a screen, but you can order a 14" screen or
15.6" screen.
1232
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• The camera option class is optional. You can order a laptop without a camera. If you add a camera, then you
can add a front camera, rear camera, or front and rear camera.
• Your user chooses the options at run time.
You use the Product Information Management work area to create the structure. For example.
Types of Congurations
Conguration Description
Assemble-to-order (ATO)
Item that isn't yet manufactured and isn't ready to ship. You make it or procure it according to
the options that your user sets.
• A warehouse usually doesn't stock every possible set of options your user might set.
Instead, the warehouse receives the work order, then.
• Uses a drop-ship ow or back-to-back ow to purchase the congured item from a
supplier.
• Uses a back-to-back ow to manufacture the item according to the work order.
Pick-to-order (PTO)
Item where you already manufactured the components, or you must make or purchase them.
1233
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Simple Example
Here's an example that includes a few congure options..
1234
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
You go to the Order Management work area, create a sales order, search for a conguration model on the catalog line,
then click Congure and Add. Use the Congure page to set congure options. For details, see the Add Congured
Items to Order Lines topic.
Note.
• This conguration includes a parent model. The parent references child models.
• Deluxe Viking Stove is the parent model.
1235
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• Viking Stove Burner ATO and Oven ATO are each a child model.
• Burner Knobs is an option class.
• Large Knobs and Small Knobs are each a congure option in the Burner Knobs class.
• Finish is an option class.
• Midnight Black Finish, Stainless Steel Finish, and Winter White Finish are each a congure option in the Finish
class.
• In this example, the user has chosen options.
This model includes two dierent types of ovens. The main oven and a warming oven. The user can choose the type of
oven and the type of warmer.
1236
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Note.
• The Oven ATO model is a child of the parent Deluxe Viking Stove model.
Note that VIK12 is an abbreviation for Deluxe Viking Stove. You can specify it.
• Oven Type is an option class in the Oven ATO model.
• Gas, Gas with Convection, and Electric Oven are each an option in the Oven Type class.
• Warming Oven is an option class in the Oven ATO model.
• Gas, Gas with Convection, and Electric Oven are each an option in the Warming Oven class.
1237
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Note.
• Burner Style ATO is a child model of the Viking Stove Burner ATO model and a grandchild of the parent Deluxe
Viking Stove model.
• In this example, the user can choose two options for the Commercial Burners class.
◦ The Large Commercial option species to use large commercial burners for the stove top.
◦ The Griddle option species to include a griddle burner for the griddle part of the stove top. Commercial
stove tops often include more than one burn area. One area includes an open ame and another area
includes a at, steel griddle. This model illustrates how you can set up your conguration to meet
specialized customer requirements.
1238
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
◦ You can continue to add child, grandchild, great grandchild models and so on to meet your specic
hierarchical requirements.
For details about this example model, see the Overview of Using Web Services with Congure-to-Order topic.
More Examples
Here are some more examples.
For example.
• Use a transaction aribute to add content at run-time, such as the weight of the item.
• Add detail, such as display a second dialog that includes choices for accessories.
1239
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Here's an example where you choose options for a car, such as color, seat trim, seats, and so on.
1240
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
1241
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Note.
1. Your user creates a sales order in the Order Management work area, searches the catalog line for the
zCZ_AT6751010- Vision Slimline 5001 item, clicks Congure and Add, uses the Congure dialog to set congure
options, clicks Finish, then submits the order.
2. Order Management sends a request to Supply Orchestration. The request includes details about the congured
item, including options that the user chooses.
If its an assemble-to-order request, or a pick-to-order request with at least one assemble-to-order component,
then Supply Orchestration examines the request to determine whether it already processed the congured item
during a prior request.
1242
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
For example.
◦ Assume the user adds the Vision Slimline 5001 to an order line. It includes congure
options for the screen and CPU. The user sets the screen to 10" and CPU to 2.5GHz.
Supply Orchestration searches it records and nds that no other order line has ever
requested this conguration, so it sends a request to create it.
◦ Some time later, the user adds another Slimline and sets the screen to 10" and CPU to
2.5GHz. Supply Orchestration nds the exact same conguration and uses it.
◦ Some time later, the user adds another order line that contains the Slimline, but this
time sets the screen to 8" and CPU to 2.5GHz. Supply Orchestration doesn't nd the
exact same conguration, so it sends a request to create it.
Supply Orchestration sends a request to create a new conguration even if only one option
is dierent from congurations it already created.
This feature works the same across users, order lines, and orders.
Already processed the congured Supply Orchestration sends the Conguration Item aribute to Order Management.
item with the same congure
options in a previous request.
1243
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Note.
◦ A search for zCZ_AT6751010 returns the model and each instance of the model.
◦ zCZ_AT6751010 is the conguration model you create. Product Information Management doesn't update
it.
1244
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
◦ Supply Orchestration sent a request to Product Information Management to create the other two
instances when your user ordered them in Order Management.
Product Information Management stores the item as a noncongured item with no structure. It doesn't
store the structure of the congured item instance. It does this to avoid storing duplicate structural
elements in tables. Supply Orchestration stores the choices your user makes for each congure option
and the structure in the match repository that Supply Orchestration uses. If you enable transaction
aributes on your item, then Supply Orchestration also stores them in the match repository.
3. The ow continues. It uses the same steps that a make ow uses for an item that isn't congured. For details,
see the How Supply Orchestration Works topic.
Points to Consider
• Congure-to-order primarily supports the make ow and the buy ow. It also supports the transfer ow and
drop ship ow. For example, if your customer returns a congured item, then its available for transfer or ship
from stock.
• Supply Orchestration sends a request to Product Information Management to create the congured item for
assemble-to-order when the user clicks Submit in the Order Management work area.
• The congure-to-order ow creates the congured item in Product Information Management on demand,
when you need it. If the conguration already exists, then the ow reuses it instead of creating a new record.
Inventory creates the physical item just-in-time, only when you need it, then ships it. Inventory doesn't stock
the item before you need it. Inventory creates another instance of the physical item for each shipment.
• Congure-to-order also supports drop ship where you source and ship from a supplier. Supply Orchestration
doesn't manage supply for drop ship, but it does manage creating the congured item in a drop ship ow.
• To support the make ow, congure-to-order uses the work denition to create a work order at run time.
The model can be valid in Product Information Management but the ow can still fail in manufacturing. For
example, if the work order in manufacturing fails to assign even one option or option class to an operation step,
then the work denition isn't valid, Promising won't provide a recommendation, and the ow will fail.
• Use the View Congured Item Structure page or a web service to get details about each congure option. For
details, see the View Structures of Congured Items topic.
• You can't disable matching because it makes sure your ow is ecient.
◦ You can add a transactional item aribute for conguration matching that implements specicity in your
conguration. You can add it to an item class at any level of your model.
◦ The Match Conguration aribute on the Specications tab on the Edit Item page in Product Information
Management applies to Oracle E-Business Suite. It has no eect on Oracle Cloud applications.
Child Components
Congure-to-order supports each item or assemble-to-order model as a child component in a pick-to-order model. The
back-to-back ow can stock each component separately, in dierent locations.
• It isn't necessary to source all child components in a pick-to-order model from the same business-to-business
ow.
1245
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• You can ship some children in a typical Order Management shipment as long as you ship them together with
the business-to-business items.
• If you use the same date, then you can ship all children in a business-to-business ow or none in the business-
to-business ow.
• You can drop ship all children from the same supplier.
Main Setup
1246
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Overview
Guidelines for Seing Up Conguration Models
Follow guidelines to help your setup go smoothly.
Note.
1247
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
2. Use the Setup and Maintenance work area to manage the item class.
3. Use the Product Information Management work area.
For example, if you set Optional to Yes for the Hard Drive component, and if the user doesn't choose an option
for the hard drive, such as 1TB or 2TB, then congure-to-order uses the default value that you set for the hard
drive.
• If you use a transaction aribute, then, to create a new congured item at run time, set the scope to
Conguration Matching in the item class for your transaction aribute. You must set the scope for each
1248
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
transaction aribute that's unique in your assemble-to-order model. If you don't do this, then Order
Management will save the value, but Supply Orchestration won't save it or send it to manufacturing.
Note.
• Click Tasks > Create Item in the Product Information Management work area to create the model, each class,
and each option.
• Click Specications > Manufacturing.
◦ Set Build In WIP to Yes for an assemble-to-order model and each option. It instructs manufacturing to
build the item.
1249
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
◦ Set Shippable to Yes for an assemble-to-order model model and each of its options. Set it to No for a
pick-to-order model and each of its options. Pick-to-order is already built, for example, with a return or
transfer order.
◦ Set Shippable and Build In WIP to No for any option class. You don't build or ship the class. You build and
ship the option in the class.
• Click Specications > Sales and Order Management.
◦ Set Back to Back Enabled to Yes for an assemble-to-order model for all Inventory organizations.
◦ Set Shippable to Yes for an assemble-to-order model model. Set it to No for a pick-to-order model and
each of its option classes and options.
• Promise an assemble-to-order item, pick-to-order item, or a hybrid that includes an assemble-to-order item
inside a pick-to-order item.
• Consider lead times for the model, option class, and option when determining the lead time for the congured
item. You can do supply chain availability but not lead-time promising when you use an available-to-promise
rule in a business-to-business ow. You can set some values, but don't mix rule types.
• Exclude sourcing on each option and option class.
• Create a supply recommendation at run time for each congured item in a back-to-back ow.
• Promise each congured item in a drop ship ow.
1250
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• Make sure Supply Planning is available for each component. Planning plans each component, including child
models.
Note.
• Go to the Plan Inputs work area, then click Tasks > Collect Planning Data.
• Collect your congured item on a schedule, such as at the end of each day, so the ow can include them in
the on-hand quantity. For example, the return orders you receive throughout the day might increase on-hand
quantity.
• Collect items, item structures, and work denitions for your new model. Promising won't provide a make
recommendation if you don't collect the work denition.
1251
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• Collect on-hand inventory for each congure option. If even one component isn't in stock, then Promising
won't display availability for your model.
• You must collect each new congured item.
• Refresh the repository after you collect.
• Create an available-to-promise (ATP) rule to get a recommendation from Promising during the back-to-back
ow.
• Explicitly reference the model and each component in your available-to-promise rule. If you don't explicitly
reference them, then include them in a category.
If you use the Congurator Models work area, then follow these guidelines.
• If you must display a transaction aribute at run time, then import your model into the Congurator Models
work area.
• If you import a congured item at run time through.
◦ File-base data import. Use the same template you use when you import a sales order that includes only
one order line.
◦ Web service. Use the same web service you use when you import a sales order that includes only one
order line.
◦ Make sure your import includes child lines for the congure options and that it establishes a relationship
between the child and parent congured item.
• If you revise a model, update the item class, add it to an unreleased workspace, then release the workspace into
the Congurator Models work area.
For details, see the How You Create and Maintain Congurator Models topic.
Troubleshoot
You set up a conguration model in two phases.
1. Create the model, options, classes, and hierarchy in Production Information Management.
2. Send details about the model to your downstream systems.
1252
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Use the Manage Congured Item Exceptions page to examine most errors that occur in this step. Correct the
error and resubmit, or ignore it.
Other Guidelines
Use two browser applications during set up. Opening a second browser application allows you toggle between work
areas without having to close a work area, go through the Navigator, then open another work area. For example, you
can keep the Product Information Management work area open in browser x, open the Work Denition work area in
1253
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
browser y, then toggle between x and y as necessary if you nd you need to modify your set up in Product Information
Management.
1254
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Details
Visualize the Hierarchy for Your Conguration Model
Use a graphics program or pen and paper to visualize the hierarchy.
Assume you must set up conguration model CTO_474000, Build My Laptop, in a make ow that uses assemble-to-
order.
Note.
• Come up with a meaningful name for your model, such as Build My Laptop.
• Identify the classes in your model that you will allow your customer to choose. For example, you can often
choose from dierent screen sizes, memory, and hard drives when you buy a laptop, but you usually can't
specify the voltage for the hard drive.
1255
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• Identify the options you will provide in each class, such as a 14" screen and a 15.6" screen.
• Design a number nomenclature that uniquely identies the model, each class, and each option. For example,
CTO_474000 identies the model, where CTO means congure-to-order, and 474000 identies the model.
Each class and each option use CTO_474xxx to identify that they're part of CTO_474000. For example.
◦ The Screen class uses CTO_474100 to identify that its part of CTO_474000.
◦ The 14" option uses CTO_474101 to identify that its part of the CTO_474100.
• Determine the price you plan to charge for the model and each option.
For now, you will do the minimum setup you need to get started when you create your own class.
1. In the Navigator, click Setup and Maintenance, click Tasks > Search, search for, then open Manage Item
Classes.
2. On the Manage Item Classes page, in the search results, click Actions > Create.
3. In the Create Item Class dialog, set values, then click Save and Add Details.
Aribute Value
4. On the Edit Item Class page, verify the options, then click Save and Close.
Aribute Value
1256
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
1257
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Organization V1
V1 is an abbreviation for Vision Operations.
Number of Items 9
This is a nifty feature you can use to add more than one item to the same class.
4. On the Create Multiple Items page, don't click Save. Instead, set values.
1258
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
1259
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
◦ Click the row that contains CTO_474101 in the Name column, click Specications > Sales and Order
Management, then set the value.
Aribute Value
1260
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Specify whether your user can use a decimal quantity for the item. If Yes, then your
user can use only a whole number for the quantity, such as 1, 2, or 3, and can't use a
decimal, such as 1.4.
In this example, each item is indivisible. For example, you can't order a fraction of a
screen, memory, or hard drive.
◦ Click Associations, click Actions > Select and Add, search for an inventory organization, click Apply,
then click Done.
Aribute Value
Organization M1
You must specify an inventory organization. If you don't, you can't create a work
denition for your item.
You use the option class to group options but you don't actually ship the class. You do ship the option. So, you
set some values dierently for the option class than you do for the option.
◦ Set values for the screen. Click the row that contains CTO_474100 in the Name column, click
Specications, click Manufacturing under Item Organization, then set values.
Aribute Value
Pick Components No
Build in WIP No
The class is a phantom. You don't pick, assemble, or build it. You do pick, assemble, and build the option.
1261
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Shippable No
You don't ship the class. You ship the option.
Aribute Value
Name CTO_474100
Note: Product Information Management creates a new version of each item when you
associate the item with an inventory organization, then appends the name of the organization,
such as M1, to the name of the item. The search results display the V1 and M1 versions in
separate rows, but doesn't display V1 or M1. It displays only the name. Make sure you click the
M1 version. Its usually the second row.
1262
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
◦ On the Edit Item page, click Structures, then click Actions > Create from Common.
Don't use Actions > Create. If you do, you will be creating a separate structure. Instead, click Create from
Common to use the structure you created for the V1 version.
◦ In the Create New Item Structure from Common dialog, set values, then click OK.
Aribute Value
Item CTO_474100
◦ On the Edit Item Structure page, click Actions > Select and Add.
1263
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Item CTO_474101
◦ In the search results, click the row, then click Edit and Add.
◦ In the Edit Multiple Components dialog, set the values, then click OK.
Aribute Value
Optional
Set to No for the option classes.
Note.
Minimum Quantity 1
Specify the minimum quantity the user can set for this option. A laptop computer must
have one and only one screen, so set the minimum quantity to 1 and the maximum
quantity to 1.
Maximum Quantity 1
Instantiability
Don't modify for this example.
Specify whether to create a separate ow for each instance of the item on the order
line. If the quantity of the component is greater than one, and if Instantiability is Yes,
then use a separate instance for each assemble-to-order ow.
For example, assume you add an order line for the CTO_474000 with a quantity of 12,
and Instantiability is.
• Enabled. Create 12 separate ows and set the quantity on each ow to 1. Enable
Instantiability when each item requires a slight variation that the ow must fulll.
For example, the item is a personal computer that includes two hard drives, and
you must serialize each drive. For another example, the item is a cell phone and
you must provision a unique telephone number for each phone.
1264
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
• Not enabled. Create one ow and set the quantity on the ow to 12.
Aribute Value
Organization V1
Number of Items 1
Aribute Value
Name CTO_474000
1265
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
4. Click Specications, then set values. Use these values for an assemble-to-order ow.
Aribute Value
Autocreated Conguration No
Pick Components No
If you were seing up a pick-to-order ow, you would use dierent values.
Aribute Value
Assemble to Order No
Build in WIP No
1266
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Back-to-Back Enabled
Yes
This aribute allows Supply Orchestration to procure the item in a back-to-back ow, such as
buy or make.
◦ Set to No for pick-to-order. You can enable the congure options for back-to-back in
a pick-to-order ow, but not the model.
Shippable
Yes
Note.
◦ Set to Yes for an assemble-to-order model. Order Management views the model as
the item. The congured item is an aribute on the model. So you must make the
model is shippable.
◦ Set to No for a pick-to-order model. Each item in the pick-to-order model is shippable,
but the pick-to-order model only represents the collection of items to ship. It isn't
shippable.
Note.
◦ Set to Yes for pick-to-order because Order Management only supports shipping all
pick-to-order items together from the same warehouse.
Invoiced Yes
If you set this aribute to No, then the ow won't send any details to Accounts Receivable.
Aribute Value
1267
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Aribute Value
Purchasable Yes
Set to Yes for the model, each option class, and each option.
8. Add a structure.
Aribute Value
Name Primary
◦ Click Save.
◦ On the Edit Item page, on the Structures tab, in the Item Structures list, in the Name column, click
Primary.
◦ On the Edit Item Structure page, click Actions > Select and Add.
◦ In the Select and Add dialog, search for the value.
1268
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Item CTO_474100
◦ Click the row that contains CTO_474100 in the search results, then click OK.
◦ On the Edit Item Structure page, click the row that contains CTO_474000 in the Item column.
2. Repeat step 2 to add the memory class, CTO_474200.
3. Repeat step 2 to add the hard drive class, CTO_474300.
4. Click Done, then click Save.
5. Add a picture of your model.
◦ On the Edit Item page, in the large empty area under the page name, under the text No items to display,
next to the text None, click the plus sign.
◦ In the Aachments dialog, click Browse to locate a le that contains an image of your model, click OK,
then click Save.
Aribute Value
Organization M1
◦ On the Manage Items page, open the CTO_474000 (M1) version of your model for editing.
You add the structure from the V1 version you created earlier. In this example, the V1 version is the
master organization. This way, you use a single structure for all classes and options in the congured
1269
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
item, which helps manage and maintain the item. For example, if you update the structure in V1, then
Product Information Management updates the structures that reference V1.
Don't use Actions > Create. If you do, you will be creating a separate structure for the M1 version.
For details about master organizations, see the Item Organizations topic.
◦ In the Create New Item Structure from Common dialog, set values, then click OK.
Aribute Value
Item CTO_474000
Aribute Value
Aribute Value
Item CTO_474000
3. Wait for the search results to display, then verify that the catalog line displays the Congure and Add buon.
1270
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Note.
• Verify that the hierarchy on the Congure page reects the hierarchy you set up in Product Information
Management.
• Verify that you can choose one, and only one congure option in each class.
• Notice there's no pricing. You set it up in the Set Up Pricing for Conguration Models topic.
1271
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Note.
• You use the Edit Item Class page in the Setup and Maintenance work area to specify the number at design time.
• Order Management displays the number in the Conguration Item aribute on the sales order at run time.
1272
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Let's say you need to add a sux to the item name for each unique conguration of item CTO_474000. You need to
start the sux with the number 100, increment it by 1 each time a user orders the item, and use a hyphen (-) to separate
the sux from the name. For example, here's the name that the ow creates the rst time the user adds the item.
CTO_474000-100
where
• CTO_474000 is the name of the congured item
• - (the dash) is the delimiter
• 100 is the starting number of your sequence
Here's the name for the next time a user adds the item.
CTO_474000-101
The number is unique across order lines, sales orders, and users.
Aribute Value
1273
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Aribute Value
Increment By 1
Delimiter Hyphen
Specify the character that separates the starting number from the prex or the sux.
• In fulllment views and the Availability Options area in the Order Management work area.
• In the Item column of the Supply Lines area of the Supply Order Details page in the in the Supply Orchestration
work area.
• In the Item column of the Review Dispatch List in the Inventory Management work area.
1274
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
You use the Pricing Administration work area to set up pricing for the conguration model that you create in the
Product Information Management work area.
For details about price lists, see the Manage Price Lists topic.
1275
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
◦ On the Edit Price List page, in the Search Results area, click Actions > Add Row, then search for the item.
Aribute Value
Item CTO_474000
◦ Wait for the search results to display the description, then set Pricing UOM to Each.
◦ Click Create Charge, scroll down, set values, then click Save.
Aribute Value
Here's the pricing you set up when you visualized the hierarchy in the Set Up Congure-to-Order topic.
Use the same values for each aribute except for Base Price.
CTO_474201 8 GB Memory 5
CTO_474202 12 GB Memory 10
1276
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
1277
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
2. Verify that the catalog line in Order Management displays the base price you set for the CTO_474000 in Pricing
Administration, which is $100.
3. Click Congure and Add, then verify that each item contains the pricing you set up in Pricing Administration.
1278
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Notice that your design time set up on the Edit Price List page in Pricing Administration displays on the
Congure page of the sales order in Order Management at run time.
For example, verify that the price for the 15.6" screen is $300.
4. Click Finish and Review, verify the summary displays the correct pricing for your choices and calculates the
correct total, then click OK.
5. Click Submit to send your sales order to order fulllment.
1279
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Global Order Promising uses the category when it runs the available-to-promise rule for your model. The category helps
Promising to recognize the congured item.
• You must assign at least one catalog that the Catalog for Sourcing Assignments prole in Promising contains.
Supply Orchestration sends a request to Product Information Management to create the congured item, then
copies the catalog to the item when Product Information Management creates the item.
• In this example, Global Order Promising uses the predened GOP_Category (Global Order Promising) to assign
the congured item to the rule.
1280
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• Make sure you assign each component in your model to an available-to-promise rule or associate it with a
catalog that you assign to an available-to-promise rule.
• If you don't set up the catalog and category correctly, the ow will usually create the congured item, but other
downstream processing might fail, such as scheduling. For details, see the Troubleshooting Congure-to-Order
topic.
• The Product Information Management work area might automatically add catalogs and categories to your
model depending on how you set up the work area. It might still be necessary to add a catalog to support your
congure-to-order ow.
For details, see the Relationship Between Categories and Catalogs topic.
Try it.
Aribute Value
◦ In the search results, in the Prole Values area, note the value.
Aribute Value
◦ In the Product Information Management work area, click Tasks > Manage Items.
◦ Search for, then open your model, such as CTO_474000 for editing.
◦ On the Edit Item page, click Categories.
◦ Click Actions > Add Row, set values, then click Save.
1281
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Catalog GOP_Catalog
Category GOP_Category
3. Collect data and refresh the server. See the Collect Planning Data for Congured Items topic.
Here are the catalogs that the ow copies to the congured item.
◦ Inventory
◦ Purchasing
◦ Planning
◦ Cost
◦ Order Entry
◦ Product Line Accounting
◦ Asset Management
◦ Distributed Order Orchestration
◦ Order Capture
◦ Pricing
◦ Congurator
◦ Supply Chain Financial Flow Orchestration
Do the work described in the Collect Planning Data for Order Management topic. Make sure you include entities when
you run the Collect Planning Data task.
Aribute Value
1282
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Work Denitions
Aribute Value
On Hand Promising uses this entity to get the inventory that's in stock for the model. If all components
in the congured item aren't in stock, then Promising won't nd availability for the model.
For example, assume the schedule requires you to build the item within ve days to meet the
delivery date. Promising examines the build schedule for each component, the current backlog
of purchase orders for component x, and determines component x isn't available for your
order until the sixth day.
Purchase Orders and Requisitions Add these entities so Global Order Promising can get availability across the entire supply chain.
Transfer Orders
Work Order Supplies
Don't use templates that the dialog displays, such as Dynamic Data for Supply Planning. The templates don't apply for
congure-to-order.
Related Topics
• Collect Planning Data for Order Management
1283
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• If a delay occurs in receiving a component in the warehouse at some later time, then a person in shipping might
decide to ship only the parts of the congured item that are available. You might need to do more processing to
ship the remaining part of the congured item that doesn't involve promising.
This section describes how to set up rules for a congured item. For more details about rules, see the How Order
Promising Rules Work Together topic.
Assume you must create an available-to-promise rule for the CTO_474000 model. For details about this model, see the
Create Your Conguration Model topic.
Try it.
1. Go to the Global Order Promising work area, then click Tasks > Manage ATP Rules.
2. On the Manage ATP Rules page, click Actions > Create, then set values.
Aribute Value
Promising Mode
Choose a value.
◦ Supply Chain Availability Search. Consider supply for the conguration components
in your model when promising availability.
Choose this value for most congured items.
You must use this value for a back-to-back ow.
◦ Lead Time Based. Use this value when the supply chain for your item is reliable and
predictable.
◦ Innite Availability Based. Use when your item is always available.
User Dened Fence in Days Specify the point in time when the ow can consider that the congured item is always
available.
To make sure processing for an advance order is timely, set your time fence to a lead time
that exceeds your typical lead time.
For this example, enable all aributes in the Supply Types area and Demand Types area. Global Order
Promising will consider each type you chose when it analyzes your supply chain.
1284
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Item CTO_474000
Item CTO_474101
Item CTO_474102
Item CTO_474201
Item CTO_474202
Item CTO_474301
Item CTO_474302
Item CTO_474100
Item CTO_474200
Item CTO_474300
Note.
◦ You must assign a rule to the model, each option class, and each congure option in your model at some
hierarchical level.
◦ You typically assign at the Item level.
◦ You typically use the same rule for model, classes, and options. You can use dierent rules, but using the
same rule simplies set up, maintenance, and troubleshooting.
4. Click Actions > Add Row, then set values.
Category GOP_Category
Note.
◦ This step assigns your rule at the Category level so the same rule can recognize each instance of your
congured item that Product Information Management creates at run time, such as CTO_474000-100
and CTO_474000-101.
1285
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
◦ Supply Orchestration associates the congured item that it creates at run time with the same category
you set for the conguration model in Product Information Management at design time. Downstream
processes also use the same catalog at run time.
Related Topics
• How Order Promising Rules Work Together
• Set Up Promising and Sourcing Rules for Order Management
Try it.
1. Go to the Global Order Promising work area, then click Tasks > Manage Sourcing Rules.
2. On the Manage Sourcing Rules page, Click Actions > Create, then set values.
Aribute Value
Set to.
◦ Global when you must specify where to fulll and ship the sales orders. You don't
specify an organization to create supply. Instead, you specify a transfer or buy source.
Use buy for a drop ship supplier.
◦ Local when you must specify how to create supply and the organization that creates
it.
3. In the Sourcing Rule Eective Dates area, click Actions > Add Row, then set the start date.
4. In the Eective Start Date area, Click Actions > Add Row, then set values.
Aribute Value
Type Make At
Set to Make At or Buy From for an assemble-to-order model, such as the Build My Laptop
model.
You typically make an assemble-to-order item instead of keeping it in inventory. So, you
usually don't use Transfer From for the model.
Use Transfer From for a made-to-stock item, such as a component. For example, you don't
stock the laptop, but you probably would stock screens for the laptop.
1286
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Global Order Promising enables Make At only when you set assignment type to Local.
Supplier If you create a global rule for a Buy From sourcing type, then you must specify values for
these aributes.
Supplier Site
If your supply chain includes more than one supplier, then create a separate sourcing rule for
Supplier Site Source System each supplier. Add a separate row for each supplier.
Rank 1
If you add more than one row, then you can specify the rank order to use for sources. For
example, if you add a row for Vision Manufacturing and set Rank to 1, add another row
for Vision Distribution and set Rank to 2, then Promising will use Vision Manufacturing to
promise the order rst. If Promising determines that Vision Manufacturing can't fulll the
order, then Promising will consider Vision Distribution.
Shipping Method Global Order Promising disables Shipping Method for a local rule. You can't edit it. Leave it
empty for a global rule.
If you set a value for a global rule, you might get an error.
Don't set shipping method in this context because it species where supply originates, not
how to ship it to the customer.
Exclude for Options and Option Exclude options and option classes when promising a sales order. Exclude them for a Make
Classes At or Buy From sourcing type.
For example, exclude an item from planning when you know your source can't make it
because it includes toxic chemicals that the source isn't authorized to handle, or your
company limits production to only one specic site.
For another example, assume you know Seale Manufacturing created a large oversupply
of the CTO_474100 screen option class from a prior marketing campaign. You already
know supply is available. To improve planning performance, you decide to exclude it from
planning.
1287
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Catalog GOP_Catalog
Use the same catalog you use for your model in Production Information Management
and in your available-to-promise rule.
Aribute Value
Assignment Level
Item
Note.
◦ Promising fullls your sales order only from the source that you assign to the
assignment set.
◦ Assign at least one sourcing rule at the global level so Global Order Promising can
use it to identify a ship-from location. If you don't, then your users must specify the
warehouse in every sales order.
◦ You must use the same ship-from and source in a congure-to-order make ow.
Item CTO_474000
Assign your model. In this example, CTO_474000 is the Build My Laptop model.
1288
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
For example, assume you create three dierent sourcing rules and assign them dierently according to item,
organization, and customer.
1. Assign the CTO_474000 Build My Laptop item, which is the model, to Sourcing rule for Build My Laptop.
2. Assign the CTO_474000 to Sourcing rule for Build My Laptop only if the customer is Computer Service and
Rentals.
3. Assign the CTO_474300 Hard Drive, which is an option class, to the Hard Drives sourcing rule, which is a rule
you set up that's optimized to source hard drives.
1289
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
4. Assign the CTO_474100 Screen, which is an option class, to the Monitor sourcing rule, which is a rule you set
up that's optimized to source monitors. Source the CTO_474100 only from D1 Denver Manufacturing when
running the sourcing rule.
If you add more than one assignment, then Global Order Promising considers the sourcing rule you set for the most
detailed assignment level rst. Here's a list of assignment levels you can use, listed from least detailed to most detailed.
For example, Region is more detailed than Global. If you add a global assignment and a regional assignment, then
planning runs the regional assignment rst, then the global assignment.
• Global
• Region
• Demand class
• Customer
• Customer and customer site
• Category
• Category and region
• Item
• Category and demand class
• Category and customer
• Category and customer site
• Item and region
• Item and demand class
• Item and customer
• Item and customer site
Trouble Shoot
I can't nd an item when creating a The Work Denition work area only recognizes items that you associate with an inventory
work denition. organization. Make sure you add an inventory organization on the Associations tab in Product
Information Management for the model, each option class, and each congure option.
1290
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Trouble Shoot
◦ CTO_474300 is an
option class (hard drive)
• CTO_474301 is a
congure option
(1TB hard drive)
ITEM='CTO_474000'.'CTO_474300'.'CTO_474301'
I encounter an error when I use the Use the Associations tab in Product Information Management to add your inventory
Create Work Denition dialog. organization, open the new version that Product Information Management creates, then use
the Structures tab to add your structure to the new version.
For Assemble to Order model CTO_
474000 Primary item structure is not If you add the structure rst, Product Information Management creates a new version of your
available. 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.
The structure isn't associated with an
inventory organization.
An error occurs when I create an This error sometimes occurs if you navigate away from the rule editor and come back to it, or
applicability rule. add and remove rule text several times.
Aribute RuleText in RuleEO is Click Cancel on the Edit Work Denition Details page, reopen the work denition, then add
required. your rule.
I create an applicability rule, validate
it, and close the rule editor. I then
click Save to save the work denition,
but encounter an error.
1291
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Trouble Shoot
The Manage ATP Rules page doesn't Collect data and refresh the repository. See the Collect Planning Data for Congured Items
contain my item. topic.
I add a catalog to my model. I search
the Manage ATP Rules page for my
item but the search doesn't return
anything.
I receive a warning when I use the In the Collect Planning Data dialog, change the Collection Type to Automatic Selection to let
Plan Inputs page to collect data. the server choose the data to collect. You can use Net Change the next time you 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?
Global Order Promising keeps This problem typically occurs in a test environment where your ow isn't nished yet or
giving available-to-promise Promising isn't refreshed. Promising identies on-hand quantities for the item and uses them
recommendations. to source supply until you exhaust the quantities.
I test my make or buy setup, but Examine and correct your inventory quantities, run collections, then run the Refresh and Start
Promising keeps giving available-to- the Order Promising Engine scheduled process.
promise recommendations.
I add an extensible exeld to the Write a processing constraint on each extensible exeld so the constraint prevents Order
parent of my conguration model. Management from updating the child exelds during a revision.
I also add an extensible exeld to
each child.
However, if the user creates a
revision, then Order Management
copies the value from the exeld on
the parent into the exelds on the
children, replacing whatever data was
in the exelds on the children. We
don't want this overwrite to happen.
1292
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Trouble Shoot
Make sure you set the Optional aribute to Yes for each class that contains an option, and for
The Conguration page in the Order each option. For the option, you must set this aribute on the child structure. You can't set it
Management work area doesn't from the parent structure.
display the congure options.
1. Go to the Congurator 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.
◦ Revised.
• Update the item class.
• Add it and the model to an unreleased workspace.
• Release the workspace.
An exception occurs after i click For details on how to x this problem, see the Manage Exceptions for Congured Items topic.
Submit.
I congure the item in Order
Management, then click Submit.
Order Management accepts the
conguration and sets the sales order
status to Processing.
The ow creates the congured item
but an error occurs in downstream
processing.
1293
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Trouble Shoot
Do the x, then release the planning recommendations to create the supply order.
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
denition.
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
Specications 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.
Global Order Promising doesn't make Promising is only aware of on-hand quantities that you collect and refresh.
a recommendation.
1294
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Trouble Shoot
To collect on-hand quantities from your warehouse, run the scheduled process Refresh and
Inventory contains the on-hand Start the Order Promising Engine.
quantities for the congured item,
but Global Order Promising doesn't
make an available-to-promise
recommendation.
Exception Messages
Here's an example exception message.
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 x the setup, then Resubmit.
For details, see the Manage Exceptions for Congured Items topic.
Geing Help
It might be necessary to contact Oracle Support. If you do, here's an article on My Oracle Support that can help you
prepare.
• SRDC - Congure to Order : Data Collection for Congure to Order (Doc ID 2141338.1)
Related Topics
• Manage Exceptions for Congured Items
• Troubleshoot Order Management Setup
Other Setups
1295
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Work Denitions
Guidelines for Creating Work Denitions for Congured Items
Assemble-to-order in a make ow creates the work order for the congured item dynamically at run time according to
the primary work denition that you set up at design time.
Here's what Oracle Manufacturing Cloud does.
1. Receives a request to create a work order for a congured item:
2. Uses the work denition that you set up to create a work order.
Note.
• Manufacturing uses the assemble-to-order (ATO) model as the ordered item when it creates the customer
order. The item includes congure options that your user sets at run time.
• You must set up a work denition for the assemble-to-order model.
• You must set the structure name of the model to Primary in Product Information Management. If the name isn't
Primary, then you can't create a work denition for the model.
• Manufacturing currently supports work denitions for an assemble-to-order model only for discrete
manufacturing.
Specify Operations
• You can assign the component of a model and a manufacturing resource to each operation.
• You can assign an option class, which will assign all of its components.
• You can apply an item to an operation only if the item is a component in the model.
To specify that the operation depends on the congure option, open your work denition for editing. On the Edit Work
Denition Details page, click your operation, click Actions > Edit, then, in the Edit Operation dialog, set the Option
Dependent aribute.
Value Description
• Your user chooses the congure option that the ow assigns to the operation.
or
• The ow meets the criteria you set up in the applicability rule for the operation.
Doesn't contain a check mark. The operation is required. The work order for the congured item always includes a required
operation.
1296
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
You can assign each component to an operation from any level of the item structure.
• You can expand an option class to view the congure options that the class contains.
• You can expand a phantom to view the congure options that phantom contains.
• If you assign the parent, then you can't assign its children.
• If you already assigned the children, you can assign the parent, but the work denition will delete the child
assignments.
• You can choose to assign the option class or the options.
• For a phantom that isn't an assemble-to-order item, you can choose to assign the parent phantom or the
components.
• If you assign an option class to an operation that depends on an option, and if the user selects at least one
option in the class, then the work order for the congured item includes the operation that you specify in the
work denition.
• You can't expand a child assemble-to-order model.
• You must assign the entire quantity for the component to the operation.
◦ You can't update or split the quantity to more than one operation.
◦ You can't inverse the quantity, unit of measure, or yield.
◦ You can't assign an item that isn't part of the model structure.
Set Up Phantoms
A phantom is an item that you physically build but don't stock. If you specify an item as a phantom, and if your user
chooses the item, then manufacturing stores it as part of the structure.
• If you set the supply type for the component to Phantom in Product Information Management, then you can
expand the phantom and view its components in the work denition.
• You can keep expanding until you encounter a component that isn't a phantom.
• You can't expand a child model even if its supply type is Phantom.
• Manufacturing replaces each phantom with its physical counterpart at the next level of the hierarchy when
congure-to-order creates the work order.
For details, see the Overview of Phantom Explosion in Work Orders topic.
1297
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• Create a rule for a congure option, option class, transaction aribute, or a combination of them.
• Add a check mark to the Option Dependent option in the Option Dependent Details area. Enabling Option
Dependent turns on the Add icon. Click Add to open the Add Applicability Rule dialog.
• The Add Applicability Rule dialog displays the item structure for your model, but it only displays the congure
options.
• The dialog displays congure options and transaction aributes according to the date you select in the Date list
on the Edit Work Denition Details page. It doesn't options and aributes that aren't currently in eect.
• Expand each option class to view the congure options that the class contains.
• You can't expand a child model.
Transaction Aribute
Operators
1298
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Keywords
Use the
TRANSACTIONALATTRIBUTE 'CTO_474000'.'CTO_474300'.'CTO_474301'. TRANSACTIONALATTRIBUTE ["Finish"] is equal
keyword to specify a transaction to "Mae"
aribute.
where
Use double quotation marks to
enclose each transaction aribute • Finish is the name of the transaction aribute.
name and value.
• Mae is the value of the transaction aribute.
Operators
• Equal to • Equal to
• Not equal to • Not equal to
• Less than • STARTSWITH
• Less than or equal to • ENDSWITH
• Greater Than • CONTAINS
• Greater than or equal to • DOESNOTCONTAIN
Verify Assignments
Make sure you assign each component in your work denition. If you don't, the ow will fail to create the work order for
the congured item.
Go to the Edit Work Denition Details page, then click Actions > Export Operation Item Assignments. The export
saves the entire model structure to Microsoft Excel.
Examine the status in Excel. If the status of your conguration model is.
• Complete. You assigned all the required operations.
• Incomplete. Identify which part of the hierarchy you must assign, then assign it.
1299
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Implicit You assigned the parent and the child inherited the parent assignment.
Modify Aributes
The work denition gets values for aributes from the model you create in the Product Information Management work
area.
• Basis
• Quantity
• Inverse Quantity
• UOM
• Item Yield
• Planning Percent
• Optional
• Supply Type
You can't modify any of these aributes in the work denition except for Supply Type.
1300
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
For example, specify assemble, test, and pack operations for the CTO_474000 model.
This example assumes you already set up the work centers and you create your own supply. You don't get supply from
a supplier.
Try it.
◦ On the Overview page, click Tasks > Manage Work Denition Names.
1301
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
◦ On the Manage Work Denition Names page, click Add Row, set values, then click Save and Close.
Aribute Value
Type Standard
1302
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Item CTO_474000
Production Priority 1
Priority 1 species to use the primary work denition.
1303
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Sequence 10
Name Assemble
Aribute Value
Sequence 20
Name Test
◦ Click Add Row, set values, then click Save and Edit.
Aribute Value
Sequence 30
Name Pack
1304
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Try it.
1. On the Edit Work Denition Details page, in the area that displays the item structure, click Resources.
2. Add resources to your rst operation.
1305
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Each work center has resources that do the operation. Your work center might use resources that are
dierent than this example uses. For details about how to create a work center and it's resources, see the
How You Manage Work Centers topic.
◦ In the Assign Operation Resource dialog, set values, then click OK.
Aribute Value
Units Assigned 1
Basis Variable
This aribute determines whether you need more resources as the quantity increases
when you assemble the item. You typically need more resources to assemble a laptop
as quantity increases, so set it to Variable.
Usage 1
Inverse Usage 1
Scheduled No
Activity Setup
For details about these aributes, see the Edit Operation Resources section in the How You Edit Work
Denitions topic.
◦ Click the Final Assembly Labor resource, drag it and drop it onto the Assemble operation, set values in
the dialog, then click OK.
3. Repeat step 2 for the Test operation.
4. Repeat step 2 for the Pack operation.
Your set up should like something like this.
1306
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
1307
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Assume you must do a performance test that depends on a congure option your user sets in Order Management. You
can create two dierent operations.
• Do the 1 Terabyte Hard Drive Test operation only if the user chooses the 1 terabyte hard drive.
• Do the 2 Terabyte Hard Drive Test operation only if the user chooses the 2 terabyte hard drive.
Try it.
1. In the Navigator, click Work Denition.
2. Create a work denition for the CTO_474000 item.
1308
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
◦ On the Edit Work Denition Details page, click the Test 1 TB Hard Drive operation, then click Actions >
Edit.
◦ In the Edit Operation dialog, add a check mark to Option Dependent.
◦ Next to Applicability Rule, click Add.
◦ In the Applicability Rule dialog, in the Item Structure area, click the CTO_474300 Hard Drive component.
◦ Drag and drop the CTO_474301 1 TB Hard Drive option onto the Rule Text area.
ITEM='CTO_474000'.'CTO_474300'.'CTO_474301'
CTO_474000 is the model, CTO_474300 is the option class for the hard drive, and CTO_474301 is the 1
TB hard drive.
ITEM='model'.'option class'.'option'
Forecast
Forecast an Assemble-to-Order Item
Set up a forecast according to your organization for an assemble-to-order item.
• Use the Planning Central work area to set up the forecast.
1309
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• Create a statistical forecast for an assemble-to-order item. Use shipment history and booking history to do the
forecast.
• Consume the forecast for your model. Each sales order that contains your congured item consumes the
forecast.
• Explode the forecast that remains after the model is done consuming. Generate a production forecast for your
option classes and options.
Planning Central displays the forecast for the options, option classes, and child models as a production
forecast. It indicates the forecast that remains after planning consumes the forecast for the model that your
sales orders needs to fulll the congured item.
Planning uses the planning percent you set on the class and option to forecast demand. You specify the
percent when you set up the structure for the item in the Product Information Management work area.
• Create supply for your forecast according to organization. Set up a planning sourcing rule that sources
components and subassemblies.
• Planning uses the xed and variable lead times you set up on the model to oset the production forecast it
creates for the options.
1310
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Here's an example.
Assume you need organization M1 to manufacture an assemble-to-order model that includes a hierarchy.
• Built-in Option
1311
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• External Option
The congured item in the sales order consumes part of the forecast. Planning explodes what's left over according to
your set up. Assume 1,000 units are available to explode after the sales order consumes the congured item.
Object Math
Camera Class The model consumes one unit of the camera class for each laptop. You expect 100% of your
customers will want a camera. So planning calculates the production forecast at 1,000.
100% multiplied by 1,000 units that are available to explode equals 1,000.
1,000 multiplied by a quantity of one equals 1,000.
Dual Camera Option The dual camera option needs two cameras for each laptop, so the model consumes two units.
You expect 60% of your customers will choose this option. Planning calculates the forecast at
1,200.
1312
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Object Math
Single Camera Option The single camera option needs only one camera for each laptop, so the model consumes one
unit.
You expect 40% of your customers will choose this option. Planning calculates the forecast at
400.
40% multiplied by 1,000 units in the camera class equals 400.
400 multiplied by a quantity of one equals 400.
Speaker Class The model consumes one unit of the speaker class for each laptop. Assume the speaker class
allows your user to choose high-delity speakers, either built-in or external. You expect 80% of
your customers will want high-delity speakers. Planning calculates the forecast at 800.
80% multiplied by 1,000 units that are available to explode equals 800.
800 multiplied by a quantity of one equals 800.
Built-in Option You need only one set of built-in speakers for each laptop, so the model consumes 1 unit of the
built-in option.
You expect 70% of your customers will choose this option. Planning calculates the forecast at
560.
70% multiplied by 800 units in the built-in class equals 560.
560 multiplied by a quantity of one equals 560.
External Option You need only one set of external speakers for each laptop, so the model consumes 1 unit of
the external option.
You expect 30% of your customers will choose this option, but you set the Production Forecast
to None for this option. So planning doesn't calculate a forecast.
Assume you set the xed lead time for the model to 5 days and the variable lead time to 0. Here's how planning
explodes the forecast that's due on day 15.
1313
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
For background details, see the Forecasting for CTO Products topic.
Note.
• The sum of the values you set for congure options in a single class must equal 100%.
• The Planning Central work area uses the value you set when it forecasts demand.
You will modify the CTO_474000 model. For details about how to set it up, see the Set Up Congure-to-Order topic.
Try it.
◦ In the Product Information Management work area, click Tasks > Manage Items.
1314
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
◦ On the Manage Items page, search for the CTO_474000 (M1) conguration model, and open it for
editing.
◦ On the Edit Item page, click Structures, then click Primary.
◦ On the Edit Item Structure page, click View, then make sure Component Details contains a check mark.
◦ Expand the Build My Laptop model, then click the CTO_474100 screen option.
◦ On the Edit Item CTO_474100 page, click Structures.
◦ In the Name column, click Primary.
2. Set the value for the 14" screen.
◦ On the Edit Item Structure CTO_474100 - Primary page, expand the CTO_474100 screen model, click the
row that contains 14 Inch Laptop Screen in the description column, then click Actions > Edit.
◦ In the Edit Components Dialog, set the value, then click OK.
Aribute Value
Planning Percent 70
3. Repeat step 2 but set the value for the 15.6" screen.
Aribute Value
Planning Percent 30
4. Click Done.
5. On the Edit Item CTO_474100 page, click Save and Close.
6. On the Edit Item Structure: CTO_474000 - Primary page, expand the screen option, then verify your values.
1315
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Order Management Cloud uses a sales order to record details about a transaction you make between you and your
customer. Use a transaction aribute to capture details that are specic to each sales order transaction. For example,
assume the item is Transmission Service, and License Plate Number is the transaction aribute. The license plate
number changes for each transmission service transaction, but you can only capture the license plate number at run
time because its specic to each customer. You don't know who the customer is at design time so you can't use an
extensible exeld that references a predened value set.
You use an item class to organize your transaction aributes. For example, create an item class named Auto Repair
Services, then add transaction aribute Transmission Service to it. Add other relevant transaction aributes to the
same class. For example, add transaction aribute Transmission Serial Number to capture the serial number of the
transmission you repair.
Note.
For details about how to add an aribute that allows your user to add details to a sales order while the user creates the
sales order, see the Overview of Using Extensible Flexelds in Order Management topic.
1316
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
If you use Order Management Cloud, then you must add a check mark to each of these application scopes. They enable
downstream work areas and applications to use your transaction item as part of a congure-to-order ow.
Scope Description
Conguration Matching Enable Supply Orchestration to examine the match repository to see if there's a match.
1317
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Scope Description
If your ow uses the transaction aribute to create a unique congured item, then you must
add a check mark to Conguration Matching. If you do, Supply Orchestration will examine the
match repository. If it doesn't nd a match, it will create a new conguration for each unique
aribute value, then save the conguration.
Pricing Use the values you set in the Pricing Administration work area to price the item.
Order Capture Capture the sales order that your user creates in the Order Management work area or that you
import.
Distributed Order Orchestration Use the orchestration part of Order Management Cloud, particularly the orchestration process.
Manufacturing Execution Enable manufacturing to add your congured item to the work order.
Your user must also select an option that your model uses as a transaction aribute when the user congures the
assemble-to-order item on the sales order in Order Management.
1318
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Aribute Value
Module Orchestration
4. In the Lookup Codes area, use Actions > New three times to add three codes. Make sure Enabled contains a
check mark for each code.
MAGENTA 1 Magenta
BLACK 2 Black
BLUE 3 Blue
Aribute Value
1319
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
3. Set values.
Aribute Value
Setup varies for dierent types of value sets. For details, see the Value Sets topic.
1320
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Application Scope
For this example, add a check mark to each choice.
◦ Congurator
◦ Order Capture
◦ Pricing
◦ Conguration Matching
Value Set
Lid Color
Note.
◦ Lid Color is the value set you created earlier in this topic.
◦ The value set is optional, but recommended. It constrains the values that the
transaction aribute can contain. For example, constrain values that your customer
can set or enter for the aribute at run time according to data type or length, or
provide a pick list that your customer uses to set the value.
◦ Make sure the values are valid with the model you set up for the item in the
Congurator work area. For example, if you use the aribute to allow the user to
choose black or purple for the lid, then make sure values in the value set also include
Black and Purple.
1321
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
◦ On the Manage Workspaces page, search for your new work space, then click it in the search results.
3. Add your model to the workspace.
◦ On the Workspace page, in the Workspace Participants area, click Actions > Select and Add > Models.
◦ In the Select and Add dialog search for CTO_474000, click it in the search result, add a check mark to
Include Updated Item Snapshots For Models, then click Apply > OK.
You add the conguration model. You don't add an option class, congure option, component, or child
model.
4. Click Release.
If you update a model that you already added to a workspace, then do this instead of the steps above.
If you add a transaction aribute to a model that you already added to a workspace, then you must import
the model into the congurator and release the workspace. The import makes the aribute visible in Order
Management so the user can select it at run time.
If some time later you change the aribute, then you must create a new workspace, add your model, add an
updated snapshot for the item class, then release the new workspace.
For details, see the Importing Items topic and Releasing Workspaces topic.
1322
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
The buy ow works the same as the make ow except.
1323
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• Your supplier uses a purchase order to supply the item instead of creating the work order in Inventory
Management and making the item.
• During the buy ow, if a blanket purchase agreement.
◦ Exists. Supply Orchestration automatically converts the purchase requisition (PR) to a purchase order
(PO).
◦ Doesn't exist. You must manually do the conversion. For example, you must nd the purchase request,
then create a document to generate the purchase order. For details, see the Use the Purchase Orders
Work Area topic.
Congure-to-order uses the Congure-to-Order Blanket Purchase Agreement template to create a relationship between
a component and the parent. Use the template to set up pricing for the model instead of for each component.
For details about the make ow, see the How Congure-to-Order Works topic.
1324
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• Computer World is your supply. They will supply conguration model CTO_474000 and its congure options.
• You negotiated pricing with your supplier that's 50% of the base price. The base price is the price you charge
your customers.
1325
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
CTO_474202 12 GB Memory 10 5
For details about seing up base price, see the Set Up Pricing for Conguration Models topic.
Note.
◦ You must enable the Conguration Ordering Enabled option on the style you use.
◦ You can't combine an assemble-to-order item and an item that isn't congured on the same blanket
purchase agreement. Instead, create two agreements that cover all the components of a pick-to-
order model. Use the congure-to-order template for your assemble-to-order model. Create another
agreement for your item that isn't congured.
◦ The agreement stores price for the assemble-to-order model and uses congure options to procure
the congured item. The agreement contains only the models and options, so the ow calculates the
purchase price of the congured item each time it procures the item outside of Oracle Fusion.
◦ You must add each congure option to the agreement.
◦ Don't add option classes to the agreement. The congure options in each class contain pricing, not the
class.
◦ Don't add required items to the agreement. Each required item comes priced as part of the model.
◦ If necessary, use the Revision aribute on each line to specify the revision of each item.
1326
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
5. Click Categories, then verify that the Catalog column contains a row for the Purchasing catalog. If it doesn't,
then click Actions > Add Row, and add it.
Aribute Value
Catalog Purchasing
Category Miscellaneous_ 1
6. Click Save.
7. Repeat this procedure for each of your option classes and congure options.
If you don't sign in with these privileges, then the work areas you use in this procedure don't display.
2. Set up your document style.
Use the document style to control the look and feel of the application so it matches the usage of the purchasing
document.
You can typically use the predened Congure to Order Blanket Purchase Agreement style. Do this step only if
you can't nd a predened style that meets your needs.
• Oering: Procurement
• Functional Area: Procurement Foundation
• Task: Manage Document Styles
◦ On the Manage Document Styles page, click Actions > Create.
◦ On the Create Document Style page, set values, then click Save and Close.
1327
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Display Name in the Blanket Blanket Purchase Agreement for Congure-to-Order Item
Purchase Agreement area
Aribute Value
Supplier Site Choose the address where your supplier ships the item from.
◦ In the Lines area, click Actions > Add Row, set values, then click Save.
Aribute Value
Line 1
Type Goods
1328
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
Item CTO_474000
Price
50
Note.
• Enter the purchase price for the item you're adding on the line. It's the price you
negotiated with Computer World, your supplier.
• You can enter zero or a negative value to reect a discount for an agreement
that you use to price and source a congured item.
• If you provide a price for a congure option, then the ow applies the price only
if your customer chooses the option when ordering the congured item.
1329
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
1330
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
6. At the top of the page, click View PDF, then open it.
1331
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
7. Examine the output. Make sure it contains your model, options, and pricing. The buy ow sends this document
to your supplier at run time.
For brevity, this screen print includes only the model and one option. The actual document includes a cover
leer and another page that has the rest of the options.
8. Click Save, then sign out.
Don't click Submit. Submit sends the agreement to approval. If you clicked Submit, then query the document on
the Manage Agreements page and cancel it.
1332
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
1333
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
You use the Product Information Management work area to set up a congured item. You can't use it to view how
the user sets conguration options because the work area doesn't store the bill of materials for the congured item.
Fulllment uses values that the user sets at run time to create the bill of materials. You can use the View Congured
Item Structure page to examine the congured item the user set up without accessing the sales order.
Use the Item aribute in the Search area to search for the congured item, then use the Item Structure Details area to
drill down to the congured item and congure options.
• For details, see the Overview of Using Web Services with Congure-to-Order topic.
• You must make sure the required components and congure options for each congured item are the same
across organizations.
1334
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
The ow also supports an advanced shipment notice (ASN) that it receives from your supplier or during an internal
material transfer from a shipping organization.
1335
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Assume.
• You nished the setup described in the Create Your Conguration Model topic.
• Manufacturing nished the work order. Inventory contains the congured item and Shipping contains
shipment lines for the congured item.
• You set up the pick release process for the organization so it automatically pick conrms and creates the
shipment.
Next, put on your Shipping Manager hat (pretend you're the Shipping Manager). You receive an urgent request to fulll
a congured item, so you manually pick release and ship conrm it.
You will navigate to the Shipments work area and use it to search for shipments and shipment lines. You can also click
graphs that display the outstanding and completed work for the current day. This is where you determine the work
activities to do and drill into an activity.
1336
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Value
1337
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
1338
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Note.
• It isn't necessary to do any more set up to get and display the invoice.
• A web service in Supply Orchestration gets details for this sales view when you ship conrm the sales order.
• You can view the model and options for the congured item on the commercial invoice and the packing slip.
• The invoice displays the quantity for each component in the congured item assuming that the congured item
quantity is one.
• You don't have to do any special document setup for congured items.
1339
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
1340
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
A bill-of-material (BOM) is a structure you use to store lists of items that you associate with a parent item. The structure
stores details that describe how to relate each item to the parent. You arrange child items in the structure hierarchically
so they reect the composition of the parent item. For example, a laptop computer is the parent, and the hard drive,
screen, and memory are each a child item.
A structure explosion is the act of breaking apart each assembly or subassembly into its component parts. You explode
to improve order fulllment eciency.
Example
Assume you have a bill-of-materials for parent item CTO_474000, Build My Laptop.
CTO_474201 8 GB Memory
CTO_474202 12 GB Memory
CTO_474100 Screen
CTO_474200 Memory
1341
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
You need to explode this bill of materials so you can pick each item separately, then assemble them into the parent
CTO_474000. You pick items separately so you can more quickly fulll them item.
For another example, assume you need to pick a newer part for an item from inventory instead of an older part. For
example, you sell laptop computers to college students. You manufacture a mouse pad every week, and the pad is an
included part in a kit. As part of a promotion, you stamp the name and logo of a popular music group on the pad. You
stamp the pad each week with the group that's currently #1 on the Worldwide Music Singles Chart. The chart changes
every week, but some groups return to the #1 spot several times in subsequent weeks with the same song or a dierent
song, so you keep older pads in stock in case they return to the #1 spot. You use the Conguration Models work area to
change the mouse pad, item CTO_474400, in parent model CTO_474000, Build My Laptop.
Use order management parameter Conguration Eective Date for Exploding Included Items to control which model to
explode.
Note.
• The Product Information Management work area stores a dierent version each time you revise the model. The
sales order uses the Conguration Eective Date parameter to determine which model to use.
• Fulllment skips closed or canceled lines. Instead, it copies child items from the original model.
• This parameter doesn't aect the current explosion behavior when the user creates the sales order.
• Use this parameter only for a bill-of-material explosion.
• Don't change the validation behavior for congured items.
• You also use the Conguration Eective Date parameter to control behavior.
• For details about the aributes in an explosion, see the Item Structure Explosion section in Oracle Supply
Chain Management Cloud SOAP Web Services for SCM On Oracle Help Center at hps://docs.oracle.com/en/
cloud/saas/supply-chain-management/19c/oessc/business-object-services.html#itemstructureexplosion-
d24777e193193.
1342
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Split Lines
You can split a fulllment line so you can use a new item. You can specify whether to use the date when fulllment
creates the conguration for the bill-of-material structure, or the date when it creates the parent.
When you submit a revision or pick-to-order model you don't want to explode the existing kit and add new included
items to it. Instead, you only want to explode the new kit.
You can use only one open item when you split the quantity where you reduce the quantity and add a new line for the
split quantity. Assume the original quantity on line 1 is 10. You split line 1 into line 1 and line 2. You reduce the quantity
on line 1 to 7 and set the quantity on line 2 to 3.
If you set the Conguration Eective Date order management parameter to Ordered Date, then fulllment uses the
same included item.
Assume you change the bill of materials for the kit and need to explode on the date when you make the change. If you
set Conguration Eective Date for Exploding Included Items to Parent Creation Date, then fulllment explodes the new
line according to the date you make change instead of the date that Conguration Eective Date species.
Kit Example
Assume you create sales order 58697 on June 12 that includes the Movie Basket kit. The kit includes one fulllment line,
and the line includes two items, Popcorn and Ice Cream.
Line Number Item Item Type Ordered Ordered Date Creation Date Conguration
Quantity of Fulllment Eective Date
Line
Assume you use the Conguration Models work area on June 15 to change the model for the kit. You replace Ice Cream
with Big Drink.
On June 20, you revise order 58697. You add a new fulllment line that includes another Movie Basket kit.
Next, assume you set the Conguration Eective Date parameter to Ordered Date.
Line Number Item Item Type Ordered Ordered Date Creation Date Conguration
Quantity of Fulllment Eective Date
Line
1343
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Line Number Item Item Type Ordered Ordered Date Creation Date Conguration
Quantity of Fulllment Eective Date
Line
The sales order uses the Conguration Eective Date of June 12 for fulllment line 1 and fulllment line 2. The Ordered
Date is June 12, so the order doesn't use the new conguration you revised in the model. It continues to use Ice Cream
instead of Big Drink.
Assume you set parameter Conguration Eective Date for Exploding Included Items to Parent Creation Date.
Line Number Item Item Type Ordered Ordered Date Creation Date Conguration
Quantity of Fulllment Eective Date
Line
The sales order uses a Conguration Eective Date of June 12 for fulllment line 1. The Movie Basket in fulllment line 2
is the parent, you created it on June 20, so the sales order uses a Conguration Eective Date of June 20 for fulllment
1344
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
line 2. You replaced Ice Cream with Big Drink in the conguration model on June 15, so the sales order includes Big
Drink instead of Ice Cream on line 2.
Pick-to-Order Example
Assume you create sales order 53867 on June 12 that includes the My Phone pick-to-order model, and it includes one
fulllment line.
Line Number Item Item Type Ordered Ordered Date Creation Date Conguration
Quantity of Fulllment Eective Date
Line
Assume you use the Conguration Models work area on June 15 to change the model. You replace Charger with
Wireless Charger.
On June 20, you revise order 53867. You add a new fulllment line that includes another My Phone model.
Assume you set the Conguration Eective Date parameter to Current Date.
Line Number Item Item Type Ordered Ordered Date Creation Date Conguration
Quantity of Fulllment Eective Date
Line
1345
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
The Current Date is the date that when you click Revise or Submit.
The sales order uses the Current Date of June 20 for the Conguration Eective Date for line 1 and line 2. So, the sales
order uses the new conguration you revised in the model on June 15. It uses Wireless Charger instead of Charger on
both lines.
Line Number Item Item Type Ordered Ordered Date Creation Date Conguration
Quantity of Fulllment Eective Date
Line
The sales order uses the Parent Creation Date. The My Phone is the parent for line 1. You created line 1 on June 12, so
the sales order uses the model that existed on June 12 for line 1. That model uses Charger, not Wireless Charger.
The My Phone is the parent for line 2. You created line 2 on June 20, so the sales order uses the model that exists on
June 20 for line 2. That model uses Wireless Charger, not Charger.
Split Example
Assume you set the Conguration Eective Date parameter to Current Date.
1346
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Line Number Item Item Type Ordered Ordered Date Creation Date Conguration
Quantity of Fulllment Eective Date
Line
Assume.
• You add line 1 on June 8. It includes the DVD item, which is a standard item.
• You use the Conguration Models work area on June 10 to change the model. You replace Ice Cream with
Chocolates.
• You add line 2 on June 12. It includes the Movie Basket item, which is a kit that includes two items. The sales
order uses the model that exists as of the Current Date, which is June 12. The current date is the date you revise
or submit the sales order. You updated the model on June 10, so the order includes Chocolates.
Assume you use the Conguration Models work area on June 15 to change the model. You replace Chocolates with Big
Drink.
On June 20, you revise the sales order. You split line 2 into two lines, lines 2.1 and 2.2.
1347
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
The order uses the Conguration Eective Date parameter to determine which model to use. In this example, you set
Conguration Eective Date to Current Date. The current date is the date that you revise or submit the order, which
is June 20, so the order uses the model that exists as of June 20 to identify the items it must include. On June 15, you
updated the model to use Big Drink instead of Chocolates, so the order includes Big Drink on lines 2.1 and 2.2.
Assume you use the Conguration Models work area on June 24 to change the model. You replace Big Drink with Lile
Drink.
On June 25, you revise the sales order again. You split line 2.1 into two lines, lines 2.2 and 2.3.
1348
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
The order uses the Conguration Eective Date parameter to determine which model to use. In this example, you set
Conguration Eective Date to Current Date. The current date is the date that you revise or submit the order, which
is June 20, so the order uses the model that exists as of June 20 to identify the items it must include. On June 15, you
updated the model to use Big Drink instead of Chocolates, so the order includes Big Drink on lines 2.1 and 2.2.
Assume you.
Here's what happens to sales order 79639 when you split line 2.
1349
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
You set Conguration Eective Date to Current Date. The current date is June 20. It's the date you revise or submit
the order. So the order uses the model that exists as of June 20 to identify the items it must include. On June 10, you
updated the model to use Chocolates instead of Ice Cream, so the order includes Chocolates on lines 2.1 and 2.2.
Assume you use the Conguration Models work area on June 24 to change the model. You replace Ice Cream with
Chocolates.
On June 25, you revise the sales order again. You split line 2.1 into two lines, lines 2.2 and 2.2.
Here's what happens to sales order 79639 when you split line 2.
1350
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
You set Conguration Eective Date to Current Date. The current date is June 25, so the order uses the model that
exists as of June 25 to identify the items it must include. On June 24, you updated the model to use Chocolates instead
of Ice Cream, so the order includes Chocolates on lines 2.1, 2.2, and 2.3.
Related Topics
• Manage Order Management Parameters
Web Services
Overview of Using Web Services with Congure-to-Order
Use web service ConguredItemService to create, read, update, or delete a congured item.
Get and view the options your user selects for the model and the congured item structure, including the model
reference and description, selected options and description, and transaction aributes that the selected options
reference.
1351
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Example
Here's an example of an assemble-to-order model for the VIK12 Viking Stove. For an introduction to this model, see the
Examples of Using Congure-to-Order topic.
1352
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• FINOC, an option class for the nish. It contains options your user can choose to specify the type of nish, such
as stainless steel.
• CLK, a phantom for the clock assembly. It includes options your user can choose to specify the display and type
of control. A phantom is an item that you physically build but don't stock. In this example, you assemble the
clock on demand. You don't build it in anticipation of demand and stock it.
• Option class OVTY species the oven type. It contains options Gas, Gas Convection, and Electric. Gas
Convection and Electric aren't congure options.
• Option class WRM species options for the warming oven.
1353
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Note.
• BRN1 is a complex child model that includes its own assemble-to-order model.
• FTOC is an option class your user uses to choose the fuel type, such as electric, propane, or gas.
• BSOC is an assemble-to-order model that species the style as residential or commercial.
• BSOC is a child of BRN1 and a grandchild of VIK12.
• RES and COM each contain options and phantoms.
• RES contains BRSS and GRD, which are items you stock. It also contains BRLG, a phantom you don't stock. You
don't stock BRLG and COMLG because your market research indicates customers don't order these options
very often, its costly to keep in inventory, so you build it on demand.
1354
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• COMLG is a phantom of COM. It contains its own phantom COMLG, and COMLG contains a phantom, COM-
BRN. Customers use the CM-BRN-BS to choose the type of base and COM-BRN_VAL to choose the type of
value to use when building COM-BRN.
Here's an example congured item, VIK12-100, that your customer ordered. It includes only the options the customer
chose.
Note.
• STVU is the stove unit base. Its required. The work order includes STVU but VIK12-100 doesn't.
• An oven can use only one type of fuel, burner style, oven type, and warming oven. So each of these
components includes only the one option you customer chooses.
1355
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
• The customer didn't want the clock, didn't choose CLK, so its not in VIK12-100.
• The customer chose COM, the commercial burner, and GRD, the griddle for the commercial burner. The
customer also chose COMLG, the large commercial burner.
Operations You Can Use with Web Services for Congured Items
Use operations with the ConguredItemService web service to create, read, update, or delete a congured item.
Operation Value
ndCtoSalesStructure Get the set of options, option classes, and transaction aributes you user selects at run time.
ndCtoItemStructure Get the entire structure of the congured item that your user selects at run time. It includes
child congured items, options, required components, phantoms, substitutions and
transaction aributes.
Here's the payload that the ndCtoSalesStructure operation returns for the VIK12-100 congured item. For details about
this item, see the Overview of Using Web Services with Congure-to-Order topic.
1356
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
The payload includes each of the child assemble-to-order items. Assume BRN-11, BSOC-2, and OVOC-30 are the child
congured items.
Here's the payload that the ndCtoItemStructure operation returns for the VIK12-100 congured item.
LINE_ID SUB_ITEM_TYPE
ITEM_NUMBER
INVENTORY_ITEM_ID
PARENT_LINE_ID
CONFIG QTY UOM WIP_SUPPLY_TYPE
RootPhantomItemId
ITEM_NUMBER
1357
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
LINE_ID SUB_ITEM_TYPE
ITEM_NUMBER
INVENTORY_ITEM_ID
PARENT_LINE_ID
CONFIG QTY UOM WIP_SUPPLY_TYPE
RootPhantomItemId
ITEM_NUMBER
Transaction Aributes
The web service also returns transaction aributes when it returns the item.
1358
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
7 FINISH Black - -
Details for the congured item are already available in the repository, so it isn't necessary to bring data into the
repository as part of ndCtoItemStructure.
◦ true. Refresh data that already exists in the repository before geing it.
◦ false. Save only the missing structure details in the repository. Don't refresh data that already exists in
the repository. The default value is false.
Use deleteCongStrucure to delete structure details of the congured item from the repository.
• ndCtoSalesStructure
• ndCtoItemStructure
• refreshCongStructure
• deleteCongStrucure
You must use at least one of parameter. If you don't, the web service will raise an error.
1359
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
For example, to refresh data for the VIK12-100, set CongItemNumber to VIK12-100.
◦ 1.1 fetchStart and fetchSize. Required. Specify the number of rows in the result set, and specify which
row to start with.
• fetchStart. Row to use as the starting point. The default is 0. If you set the value to 0, then the
result set begins with the rst row of the data set. If you set the value to 99, then the result set
begins with the 100th row of the data set.
Caution: If you use ndCtoItemStructure, and if you set fetchStart to any value other
than 0, then you must use refreshCongStructure before you use ndCtoItemStructure.
The web service assumes the congured item is available in the explosion repository and
gets records beginning with the starting point. Using refreshCongStructure makes sure
the starting point contains a value.
• fetchSize. Maximum number of rows to get. If you set fetchSize to -1 (negative one), then the
search gets all rows that it nds, starting with the row that fetchStart species.
If fetchSize is greater than the number of remaining rows, then the search returns only the
remaining rows. The predened maximum fetchSize is 500. You can't exceed it in a single query.
If you set fetchSize to a value greater than 500 or to -1, and if more than 500 records match your
search criteria, then the web service creates an exception.
◦ 1.2 lter. Structure that contains runtime search conditions. The view criteria restricts data that your
query returns to the rows that match the lters you specify. If no view criteria exists, then the web service
doesn't apply lters when it processes your request.
Think of view criteria as a collection of one or more query-by-example (QBE) rows that dene a data lter
for a view object. The web service converts view criteria to an SQL WHERE clause.
• 1.2.1 conjunction. Specify how to evaluate search conditions in relation to each other. For example,
And, Or, Not, AndNot, and OrNot.
If you don't specify a value, then the web service uses AND. Behavior is similar to how Oracle
Application Development Framework works when a conjunction exists between view criteria and
the previous view criteria.
1360
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
1.2.2.2.3 Aributes
Include the case sensitive name of the aribute to lter on. The root node of a child object is an aribute of the parent
object.
Here are the aributes you can use. You must use at least one of them. If you don't, the web service will raise an error.
1361
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
RefreshStructure Boolean
Contains.
1.2.2.2.4 Operators
Note.
• Use one of =, >=, <=, >, <,<>, ISBLANK, ISNOTBLANK, CONTAINS, STARTSWITH, AFTER, ONORAFTER,
BEFORE, ONORBEFORE, BETWEEN, or NOTBETWEEN.
• Some operators won't work for all aribute types, such as String, Integer, Date, and so on.
• You typically use numeric operators , such as = or < , for a String aribute.
• Each text operator is case sensitive. For example, ISBLANK is a text operator and is case sensitive.
Here are the operators you can use to search a required aribute when you use ndCtoItemStructure. If you use any
other operator, the web service will create an error.
Aribute Operator
CongItemId =
CongItemNumber =
BaseModelId =
BaseModelItemNumber =
CreationDate BETWEEN
1362
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Aribute Operator
You can use any operator on an aribute that isn't required when you use ndCtoSalesStructure or
ndCtoItemStructure.
http://hostname:port/ctoUtilitiesPublicService/ConfiguredItemService
Use SQL
1363
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
For example.
3. Use SQL to query the table to get details about the response.
SELECT * FROM CTO_ITEM_STRUCTURE WHERE <CONDITION>
1364
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Here's some XSLT code you can use to format the response. Use this code with your favorite XML tool.
< xsl: stylesheet version = "1.0"
xmlns: xsl = "http://www.w3.org/1999/XSL/Transform"
xmlns: ns0 = "http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/configItemStructureSer
vice / types / "
xmlns: ns2 = "http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/configItemStructureSer vice/
types/"
xmlns: ns1 = "http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/configItemStructureSer
vice / "
xmlns: env = "http://schemas.xmlsoap.org/soap/envelope/"
xmlns: wsa = "http://www.w3.org/2005/08/addressing"
xmlns: typ = "http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/configItemStructureService/
types/ " >
<
xsl: output method = "xml"
indent = "yes"
version = "1.0"
encoding = "UTF-8" / >
<
xsl: template match = "*" >
<
xsl: element name = "{local-name()}" >
<
xsl: if test = "not(not(text()) and not(node()))" >
<
1365
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
<
xsl: apply - templates select = "node()" / >
<
xsl: if test = "../ns2:result[(./ns1:ParentLineId = $LineId and ./ns1:OrganizationId =
$OrganizationId and concat($ComponentItemHierarchy, '-', . / ns1: InventoryItemId) =
. / ns1: ComponentItemHierarchy)]
">
<
xsl: apply - templates select = "../ns2:result[(./ns1:ParentLineId = $LineId and
. / ns1: OrganizationId = $OrganizationId)]
" /> <
/ xsl : if > <
/ xsl : element > <
xsl: variable name = "nl"
select = "'
'" / >
<
xsl: value - of select = "$nl"
disable - output - escaping = "no" / >
<
/ xsl : template > <
/ xsl : stylesheet >
1366
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Use this XSLT code only to format the output of the ndCtoItemStructure operation.
As an alternative, here's some example code you can use to programmatically format the response.
String xml = "input.xml ; // input XML file location
String xslt = "transformations.xsl"; // XSLT file location
String output = "formatted.xml"; //output XML file location
TransformerFactory tf = TransformerFactory.newInstance();
Transformer tr = tf.newTransformer(new StreamSource(new File(xslt)));
tr.transform(new StreamSource(new File(xml)),
fc.setFilter(vc);
int fetchCounter = 0;
List < CtoItemStructure > opList = new ArrayList < CtoItemStructure > ;
List
for storing all the output records List < CtoItemStructure > opTempList = null;
List
for storing the result of one service call
while (opTempList == null || opTempList.size() == 500) {
fc.setFetchStart(fetchCounter);
fc.setFetchSize(500);
opTempList = ctoConfigItemService.findCtoItemStructure(fc, null);
opList.addAll(opTempList);
items of result list from the service call be will be added to the final list fetchCounter = fetchCounter +
500;
}
1367
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
ViewCriteria vc = obj.createViewCriteria();
ViewCriteriaItem vci = obj.createViewCriteriaItem();
vci.setAttribute("CreationDate");
vci.getValue().add("2017-12-09");
vci.getValue().add("2019-12-09");
vci.setOperator("BETWEEN");
vci.setConjunction(Conjunction.AND);
vcr.getItem().add(vci);
}
//End of making the first call
//Get the item structure for configured items that the first call returned
ViewCriteriaRow configVcr = obj.createViewCriteriaRow();
ViewCriteria configVc = obj.createViewCriteria();
ViewCriteriaItem configVci = null;
for (CtoItemStructure itemStructRow: configItemList) //For loop to iterate through the list of configured
items
{
if (itemStructRow.getSubItemType().getValue().intValue() == 1) // if it is a config item create condition
based on config item id
{
configVci = obj.createViewCriteriaItem();
configVci.setAttribute("ConfigItemId");
configVci.getValue().add(itemStructRow.getConfigItemId().getValue());
configVci.setOperator("=");
configVci.setConjunction(Conjunction.OR);
1368
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
configVcr.getItem().add(configVci);
}
}
configVc.getGroup().add(configVcr);
//Make the second call
FindCriteria configFc = obj.createFindCriteria(); configFc.setFilter(configVc);
counter = 0;
List < CtoItemStructure > opList = new ArrayList < CtoItemStructure > (); //List for storing the final
output opTempList=null;
while (opTempList == null || opTempList.size() == 500) {
configFc.setFetchStart(counter);
configFc.setFetchSize(500);
opTempList = ctoConfigItemService.findCtoItemStructure(configFc, null);
counter = counter + 500;
opList.addAll(opTempList);
}
//End of making the second call
//End of get the item structure for configured items that the first call returned
Here's an example of the response you receive for the entire structure.
< ns0: findCtoItemStructureResponse xmlns: ns0 = "http://xmlns.oracle.com/apps/scm/cto/matchRepository/
utilities/configItemStructureService/ty
pes / "> <
ns2: result
xmlns: ns2 = "http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/configItemStructureService/ty
pes/"
xmlns: ns1 = "http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/configItemStructureService/"
xmlns: ns0 = "http://xmlns.oracle.com/adf/svc/types/"
xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi: type = "ns1:CtoItemStructure" >
<
ns1: ConfigItemId > 300100071637243 < /ns1:ConfigItemId> <
ns1: ConfigItemNumber > DOS - BAT - CTO * 101 * < /ns1:ConfigItemNumber> <
ns1: BaseModelId > 100100035462338 < /ns1:BaseModelId> <
ns1: BaseModelItemNumber > DOS - BAT - CTO < /ns1:BaseModelItemNumber> <
ns1: InventoryItemId > 300100071637243 < /ns1:InventoryItemId> <
ns1: InventoryItemNumber > DOS - BAT - CTO * 101 * < /ns1:InventoryItemNumber> <
ns1: ParentInventoryItemId > 300100071637243 < /ns1:ParentInventoryItemId> <
ns1: ParentInventoryItemNumber > DOS - BAT - CTO * 101 * < /ns1:ParentInventoryItemNumber> <
ns1: HeaderId > 300100071637281 < /ns1:HeaderId> <
ns1: LineId > 300100071637284 < /ns1:LineId> <
ns1: ParentLineId xsi: nil = "true" / >
<
ns1: SubItemType > 1 < /ns1:SubItemType> <
ns1: UnitQuantity xmlns: tns = "http://xmlns.oracle.com/adf/svc/errors/"
unitCode = "Ea" > 1 < /ns1:UnitQuantity> <
ns1: UnitUOM > Ea < /ns1:UnitUOM> <
ns1: CreationDate > 2018 - 12 - 02 T10: 59: 08.119 + 05: 30 < /ns1:CreationDate> <
ns1: RevisionId xsi: nil = "true" / >
<
ns1: EffectivityDate > 2018 - 12 - 02 T10: 59: 08.119 + 05: 30 < /ns1:EffectivityDate> <
ns1: DisableDate xsi: nil = "true" / >
<
ns1: OrganizationId > 204 < /ns1:OrganizationId> <
ns1: OrganizationCode > V1 < /ns1:OrganizationCode> <
ns1: BillSequenceId > 300100046112964 < /ns1:BillSequenceId> <
ns1: ComponentSequenceId xsi: nil = "true" / >
<
ns1: ComponentType > 1 < /ns1:ComponentType> <
ns1: WIPSupplyType xsi: nil = "true" / >
<
ns1: OptionalComponent > Y < /ns1:OptionalComponent> <
ns1: SubstituteComponent > N < /ns1:SubstituteComponent> <
ns1: ComponentYieldFactor xsi: nil = "true" / >
1369
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
<
ns1: PlanningFactor xsi: nil = "true" / >
<
ns1: RoundingDirection xsi: nil = "true" / >
<
ns1: BasisType xsi: nil = "true" / >
<
ns1: CheckATP xsi: nil = "true" / >
<
ns1: ComponentHierarchy > 300100046112964 < /ns1:ComponentHierarchy> <
ns1: ComponentItemHierarchy > 300100071637243 < /ns1:ComponentItemHierarchy> <
ns1: ItemClassId > 100000011369001 < /ns1:ItemClassId> <
ns1: RootPhantomItemId > < /ns1:RootPhantomItemId> <
/ns2:result> <
ns2: result >. . .< /ns2:result> <
ns2: result >. . .< /ns2:result>. . .<
/ns0:findCtoItemStructureResponse>
Here's an example of the response you receive for the structure according to congure options your user sets in the
sales order.
< ns2: result xsi: type = "ns1:CtoSalesStructure"
xmlns: ns2 = "http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/configItemStructureService/
types /
" xmlns:ns1="
http: //xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/configItemStructureService/"
xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:xsi="http://www.w3.org/2001/XMLSchema- instance">
<
ns1: ConfigItemId > 300100090366280 < /ns1:ConfigItemId> <
ns1: ConfigItemNumber > BSOC * 220 * < /ns1:ConfigItemNumber> <
ns1: BaseModelId > 300100032201662 < /ns1:BaseModelId> <
ns1: BaseModelItemNumber > BSOC < /ns1:BaseModelItemNumber> <
ns1: InventoryItemId > 300100032201442 < /ns1:InventoryItemId> <
ns1: InventoryItemNumber > STD - Burner < /ns1:InventoryItemNumber> <
ns1: ParentInventoryItemId > 300100090366280 < /ns1:ParentInventoryItemId> <
ns1: ParentInventoryItemNumber > BSOC * 220 * < /ns1:ParentInventoryItemNumber> <
ns1: HeaderId > 300100090366310 < /ns1:HeaderId> <
ns1: LineId > 300100090366315 < /ns1:LineId> <
ns1: ParentLineId > 300100090366312 < /ns1:ParentLineId> <
ns1: SubItemType > 2 < /ns1:SubItemType> <
ns1: UnitQuantity unitCode = "Ea"
xmlns: tns = "http://xmlns.oracle.com/adf/svc/errors/" > 1 < /ns1:UnitQuantity> <
ns1: UnitUOM > Ea < /ns1:UnitUOM> <
ns1: ItemHierarchy > /300100090366280/
300100032201442 < /ns1:ItemHierarchy> <
ns1: CreationDate > 2018 - 10 - 05 T06: 49: 45.836 - 07: 00 < /ns1:CreationDate> <
ns1: RootHeaderId > 300100090366310 < /ns1:RootHeaderId> <
ns1: CtoTransactionAttr >
<
ns1: LineId > 300100090366315 < /ns1:LineId> <
ns1: TimestampAttributeValue xsi: nil = "true" / >
<
ns1: NumberAttributeValue > 0 < /ns1:NumberAttributeValue> <
ns1: DateAttributeValue xsi: nil = "true" / >
<
ns1: CharacterAttributeValue xsi: nil = "true" / >
<
ns1: AttributeName > Number < /ns1:AttributeName> <
/ns1:CtoTransactionAttr> <
/ns2:result>
1370
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Basic Queries
Query on Simple Condition
Use ndCtoItemStructure to get the entire structure for each congured item created between 09-Dec-2018
and 09-Dec-2019 where the conguration model is VIK12. Don't include the InventoryItemId aribute or the
ParentInventoryItemId aribute in the response.
<ns1: findCtoItemStructurexmlns:ns1="http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/
configItemStr uctureService/types/">
<ns1:findCriteria xmlns:ns2="http://xmlns.oracle.com/adf/svc/types/">
<ns2:fetchStart>0</ns2:fetchStart>
<ns2:fetchSize>-1</ns2:fetchSize>
<ns2:filter>
<ns2:conjunction>And</ns2:conjunction>
<ns2:group>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare></ns2:upperCaseCompare>
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
1371
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
<ns2:upperCaseCompare></ns2:upperCaseCompare>
<ns2:attribute>CreationDate</ns2:attribute>
<ns2:operator>between</ns2:operator>
<ns2:value>2018-10-9</ns2:value> -- Use format YYYY-MM-DD.
<ns2:value>2019-12-09</ns2:value>
</ns2:item>
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare></ns2:upperCaseCompare>
<ns2:attribute> BaseModelItemNumber </ns2:attribute>
<ns2:operator>CONTAINS</ns2:operator>
<ns2:value>VIK12</ns2:value>
</ns2:item>
</ns2:group>
</ns2:filter>
<ns2:findAttribute>InventoryItemId</ns2:findAttribute> --List of attributes to include or not include in
response.
<ns2:findAttribute>ParentInventoryItemId</ns2:findAttribute>
<ns2:excludeAttribute>true</ns2:excludeAttribute> --true means don't include in response.
</ns1:findCriteria>
</ns1: findCtoItemStructure>
Use ndCtoItemStructure to get the entire structure for each congured item created between 09-Dec-2018 and 09-
Dec-2019 where the conguration model is VIK12. Use RefreshStructure to refresh the explosion repository.
<ns1: findCtoItemStructurexmlns:ns1="http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/
configItemStructureService/types/">
<ns1:findCriteria xmlns:ns2="http://xmlns.oracle.com/adf/svc/types/">
<ns2:fetchStart>0</ns2:fetchStart>
<ns2:fetchSize>-1</ns2:fetchSize>
<ns2:filter>
<ns2:conjunction>And</ns2:conjunction>
<ns2:group>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare></ns2:upperCaseCompare>
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare></ns2:upperCaseCompare>
<ns2:attribute>CreationDate</ns2:attribute>
<ns2:operator>between</ns2:operator>
<ns2:value>2018-10-09</ns2:value> -- Use format YYYY-MM-DD.
<ns2:value>2019-12-09</ns2:value>
</ns2:item>
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare></ns2:upperCaseCompare>
<ns2:attribute> BaseModelItemNumber </ns2:attribute>
<ns2:operator>CONTAINS</ns2:operator>
<ns2:value>VIK12</ns2:value>
</ns2:item>
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare></ns2:upperCaseCompare>
<ns2:attribute> RefreshStructure </ns2:attribute>
<ns2:operator>=</ns2:operator>
<ns2:value>true</ns2:value> -- Use true or false with RefreshStructure.
</ns2:item>
</ns2:group>
</ns2:filter>
</ns1:findCriteria>
</ns1: findCtoItemStructure>
1372
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
If the web service response for a congured item structure includes more than 500 rows, then you must call the service
one time for each set of 500 rows. For example, if the structure contains 1550 rows, then you make four calls.
• First call gets rows 0 through 499
• Second call gets rows 500 through 999
• Third call gets rows 1,000 through 1,499
• Fourth call gets rows 1,500 through 1,550
You must not set the start value to a value greater than 0 in the rst call. The start value for the second call is greater
than zero, so the web service doesn't refresh the repository. Seing the start value to 0 in the rst call makes sure the
web service refreshes the entire structure.
1373
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
<ns2:group>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare />
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare />
<ns2:attribute>CreationDate</ns2:attribute>
<ns2:operator>BETWEEN</ns2:operator>
<ns2:value>2018-12-09</ns2:value>
<ns2:value>2019-12-09</ns2:value>
</ns2:item>
</ns2:group>
</ns2:filter>
<ns2:excludeAttribute />
</ns1:findCriteria>
<ns1:findControl xmlns:ns2="http://xmlns.oracle.com/adf/svc/types/">
<ns2:retrieveAllTranslations />
</ns1:findControl>
</ns1:findCtoItemStructure>
Using ndCtoItemStructure to get a large structure might take a lot of time because it must rst refresh the explosion
repository to get structure details, and then query the data. To avoid this problem, make two calls.
Add subsequent calls to get the structure. See the Get Large Structures section, above.
Other Queries
Group Your Conditions
In this example, use ndCtoItemStructure to get the entire structure of each congured item created between 09-
Dec-2018 and 09-Dec-2019 for conguration model VIK12. Use the OR conjunction to group your conditions.
<?xml version="1.0" encoding="UTF-8"?>
<ns1:findCtoItemStructure xmlns:ns1="http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/
configItemStructureService/types/">
<ns1:findCriteria xmlns:ns2="http://xmlns.oracle.com/adf/svc/types/">
<ns2:fetchStart>0</ns2:fetchStart>
<ns2:fetchSize>500</ns2:fetchSize>
<ns2:filter>
<ns2:conjunction>And</ns2:conjunction>
<ns2:group>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare />
<ns2:item>
1374
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare />
<ns2:attribute>CreationDate</ns2:attribute>
<ns2:operator>BETWEEN</ns2:operator>
<ns2:value>2018-12-09</ns2:value>
<ns2:value>2019-12-09</ns2:value>
</ns2:item>
</ns2:group>
<ns2:group>
<ns2:conjunction>Or</ns2:conjunction>
--Group with the OR condition.
<ns2:upperCaseCompare />
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare />
<ns2:attribute>BaseModelItemNumber</ns2:attribute>
<ns2:operator>=</ns2:operator>
<ns2:value>VIK12</ns2:value>
</ns2:item>
</ns2:group>
</ns2:filter>
<ns2:excludeAttribute />
</ns1:findCriteria>
<ns1:findControl xmlns:ns2="http://xmlns.oracle.com/adf/svc/types/">
<ns2:retrieveAllTranslations />
</ns1:findControl>
</ns1:findCtoItemStructure>
Use ndCtoItemStructure to get the entire structure of the VIK12-100 congured item. Filter the result so it only includes
details for transactional aribute names that start with MFG_Transactional_Aributes, and that contain the value Black.
<ns1:findCtoItemStructure xmlns:ns1="http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/
configItemStructureService/types/"
>
<ns1:findCtoItemStructure>
<ns1:findCriteria>
<ns2:fetchStart>0</ns2:fetchStart>
<ns2:fetchSize>-1</ns2:fetchSize>
<ns2:filter>
<ns2:conjunction>And</ns2:conjunction>
<ns2:group>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare>false</ns2:upperCaseCompare>
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare>false</ns2:upperCaseCompare>
<ns2:attribute>ConfigItemNumber</ns2:attribute>
<ns2:operator>=</ns2:operator>
<ns2:value>VIK12*100</ns2:value>
</ns2:item>
</ns2:group>
</ns2:filter>
<ns2:childFindCriteria> -- This is the structure for adding conditions based on TIA
<ns2:fetchStart>0</ns2:fetchStart>
<ns2:fetchSize>-1</ns2:fetchSize>
<ns2:filter>
<ns2:conjunction>And</ns2:conjunction>
<ns2:group>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare>false</ns2:upperCaseCompare>
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare>false</ns2:upperCaseCompare>
1375
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
<ns2:attribute>AttributeName</ns2:attribute>
<ns2:operator>STARTSWITH</ns2:operator>
<ns2:value>MFG_Transactional_Attributes</ns2:value>
</ns2:item>
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare>false</ns2:upperCaseCompare>
<ns2:attribute>CharacterAttributeValue</ns2:attribute>
<ns2:operator>=</ns2:operator>
<ns2:value>Black</ns2:value>
</ns2:item>
</ns2:group>
</ns2:filter>
<ns2:childFindCriteria/>
<ns2:childAttrName>CtoTransactionAttr</ns2:childAttrName> -- This value is fixed and needs to be passed if
we want filter based on the TIA
</ns2:childFindCriteria>
</ns1:findCriteria>
<ns1:findControl>
<ns2:retrieveAllTranslations>false</ns2:retrieveAllTranslations>
</ns1:findControl>
</ns1:findCtoItemStructure>
Get the entire item structure for congured items created between 09-DEC-2018 and 09-DEC-2019, and where the
value of transaction aribute SCO_color is Black.
1376
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare>false</ns2:upperCaseCompare>
<ns2:attribute>AttributeName</ns2:attribute>
<ns2:operator>=</ns2:operator>
<ns2:value>SCO_Color</ns2:value>
</ns2:item>
<ns2:item>
<ns2:conjunction>And</ns2:conjunction>
<ns2:upperCaseCompare>false</ns2:upperCaseCompare>
<ns2:attribute>CharacterAttributeValue</ns2:attribute>
<ns2:operator>=</ns2:operator>
<ns2:value>Black</ns2:value>
</ns2:item>
</ns2:group>
</ns2:nested>
</ns2:item>
</ns2:group>
</ns2:filter>
<ns2:excludeAttribute />
</ns1:findCriteria>
</ns1:findCtoItemStructure>
Here's a payload that removes the structure of all congured items that include VIK12 as the item number.
<?xml version="1.0" encoding="UTF-8"?>
<ns1:deleteConfigStructure xmlns:ns1="http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/
configItemStructureService/types/">
<ns1:configList xmlns:ns2="http://xmlns.oracle.com/apps/scm/cto/matchRepository/utilities/
configItemStructureService/">
<ns2:BaseModelItemNumber>VIK12</ns2:BaseModelItemNumber>
1377
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
</ns1:configList>
</ns1:deleteConfigStructure>
1378
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
1379
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
1380
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
Transaction Aribute
Here are the aributes that the response contains when your payload includes a transaction aribute.
1381
Oracle SCM Cloud Chapter 9
Implementing Order Management Congure-to-Order
1382
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
10 Extend
Extensions
Overview
Overview of Creating Order Management Extensions
Write your own Groovy script that modies your Order Management deployment, implements your own functionality,
and species the extension point that determines when to run this script.
An order management extension is a Groovy script you write that meets your specic business requirements. An
extension point is an event that you specify to determine when to run the script.
You can use a exeld to modify the data model, or Page Composer to modify the user interface, but you can't use
them to programmatically modify logic or modify your order management deployment. Instead, you can create an
order management extension.
1383
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Here is some Groovy script in an example extension named Update Order Submit Date. It uses aribute
_H1AributeDateTime so it can set the value of an extensible exeld to the date and time when Order Management
submied the sales order.
Get data
Create an order management extension to get data from dierent sources.
1384
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• Use a public view object (PVO) to get data from some other Oracle Fusion product.
A public view object is a data object that Order Management gets from some other
Oracle Fusion solution. For example, you can use a public view object to look up an item
category in Product Information Management or a purchase order in Oracle Fusion
Purchasing.
• Use a web service to get data from a source that resides outside of Order Management
Cloud.
Implement your own logic Use Groovy to write your own logic when you code your extension. Your code can validate the
sales order. If validation fails, then your code can stop the ow and create a message.
For details about Groovy, see website Groovy Programming Language at www. groovy-lang.
org.
Raise error messages and warnings Create an extension that raises an error message or warning.
Set the default value for sales order Use Groovy to write your own logic that sets default values before you save the sales order or
aributes or extensible exelds submit it to order fulllment.
Get values for return lines from the A return order doesn't include values from the original order on some order line aributes. For
original sales order. example, the return line doesn't include the original value for the sales credit or purchase order
number. You can use an extension to get the value from the original line order.
Example Actions
Action Description
Submit a sales order • Reassign the warehouse for pick-to-order. Set up an item that determines whether the
sales order references a pick-to-order or a hardware model.
• Stop support lines that reference an incorrect accounting rule. Set up item entities and
accounting rule entities.
• Make sure only one contract is Active or Signed for a booking. Set up entities for the
installed base, contracts, or order management.
• Assign a sales representative. Set up sales compensation rules.
• Update the accounting rule for a model for included items.
• Update the quote status for each sales order from a store front that a third-party partner
maintains.
• Verify the purchase order number that the Order Entry Specialist enters on the sales
order equals a purchase order in Oracle Fusion Procurement.
• Assign the Salesperson according to a sales compensation rule that you create in some
application outside of Oracle Fusion, then use a web service to call the application.
• During order import, copy aachments from a purchase-to-order kit to each item that
the kit contains.
• Set the default value for order preferences in each sales order. Get these values from the
customer master.
Save or validate a sales order Write a validation on an imported source order that rejects the import or prevents the Order
Entry Specialist from saving the order without xing the problem.
1385
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Part Description
Function A Groovy function, similar to a Java function, such as getAr. Use a function only in the
extension where you set it up. You can't dene a function in one extension, and then use it in
another extension.
Web Service
The name of a web service.
• Your extension code can only call a web service that you set up on the Manage Web
Service Denitions page.
• You must manually create the request payload in your code.
• Your code must parse and interpret the response payload.
• You must write your code so it works only for a synchronous interaction. You can't write
code for an asynchronous interaction.
Message
A message you send to Order Management and that can display in the Order Management
work area.
1386
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
1. Something occurs that triggers the On Save extension point.
◦ An Order Entry Specialist does an action in the Order Management work area that causes Order
Management Cloud to automatically save the sales order. Here are some example actions.
• Validate
• Save
1387
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
If an order management extension that runs during On Save raises a validation failure, then Order Management stops
running the extension and moves control to the next extension that you specify to run during On Save. If the validation
failure includes at least one error message, and if Order Management has already run each of the On Save extensions,
then it aborts the save for the sales order.
Order Management handles each message that the extension raises dierently depending on how its saving the sales
order.
• An Order Entry Specialist is saving a sales order in the Order Management work area. Order Management
displays the message in a dialog. This user must correct the validation error and aempt to save the sales order
again.
• A service is saving a source order during order import. Order Management returns the message in a response.
The channel that's importing the source order must x it, then import it again.
Order Management doesn't save the message in the messaging framework because it might not have saved the sales
order and the change that caused the validation to fail.
1388
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• If the validation failure includes at least one error message, then Order Management aborts the submit for the
sales order, returns the order status to Draft, then logs the error and warning messages.
• If the Order Entry Specialist is saving a sales order in the Order Management work area, and if the validation
failure includes at least one error message, then Order Management displays a dialog that includes the
message.
• If all messages are warnings, then Order Management submits the sales order to order fulllment and doesn't
display a dialog in the Order Management work area. The user can view the warning message after Order
Management submits the sales order to order fulllment.
Data from a sales order in Order To read data, use methodgetAribute. Each method can read or write only to the
Management Cloud. sales order that the Order Entry Specialist
To write data, use method setAribute. is currently entering in work area Order
Management. They don't read or write to
some other version of the current sales
order, or to some other sales order in
Order Management.
Use a public view object to access data
from a sales order that isn't the current
sales order.
Each method can only read from or write
to an aribute. They can't create an order
line.
Data from an Oracle Fusion Application Public View Object (PVO). The Oracle Fusion Application must share
outside of Order Management, such as their data through a public view object.
the customer master, the item master For details, see topic Using Extensions The public view object you need might not
in Oracle Fusion Procurement or Oracle to Access Data Outside of Order be available, or it might not provide access
Fusion Receivables, and so on. Management: Procedure. to the aribute that you require. It might
1389
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Data from a system that resides outside of Web service. You can use only a synchronous web
an Oracle Fusion Application service. You can't use an asynchronous
web service. You can only use a SOAP
service. You can't use a REST service.
Consider the data you can access. For a complete list, see topic Aributes You Can Use With Order Management
Extensions: Reference.
Do a read operation on this data at Do a write operation on this data during extension points On Save or On Start of Submission
any of the extension points. Request.
1390
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
• Each extension runs in sequential order, and only extensions where aribute Active contains a check mark run.
Assume you create extensions x, y, and z. Extension x runs rst, then extension y. If you make z active, then
extension x runs, and then z, and then y.
1391
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• Each active extension runs until it nishes unless an error or warning occurs. If an error or warning occurs, then
no more extensions will run. For example, assume x, y, and z are active, x nishes, but z ends in error. Extension
y won't run.
• Each variable is local to each extension. You can't share them across extensions. For example, assume you
require variable A in extensions x and y. If you dene variable A in x, then you can't use A in y. Instead, you
must write logic in y that references A in x.
1392
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
1. Use an IF. Avoid writing code that runs in every condition in your development environment. Instead, use an IF
statement so your code runs only in your specic use case.
Assume you write a statement that runs every time the extension point occurs, without conditional logic,
but the extension contains an error. The extension might cause every sales order in your development
environment to fail in every situation, regardless of the condition you must test. This situation might negatively
aect other developers, and also make it more dicult for you to manage each of your own extensions.
For example, assume you write an extension that manipulates aribute shipInstructions. You can add this
statement as the rst statement in your extension so your code runs only for your use case.
if (shipInstructions != "ValidateCustomerPONumber" ) return;
If the statement evaluates to true, then no more logic in your extension runs. Instead, the ow exits your
extension.
Remove the IF after you test your extension and are ready to deploy into production.
2. Check for empty values. Avoid a null pointer exception. Use an IF statement that makes sure each aribute
you reference contains a value. If it doesn't, then return ow out of the extension.
3. Add comments. Add detailed comments that document each part of your code so you know exactly the logic
that each statement implements. Comments help others to understand the intent of your code, and also help
you to troubleshoot large complex code, or code that you haven't examined for a long period of time.
• Consider all factors that impact the order line, such as congured items, kits, or ship sets.
• Take advantage of Groovy constructs, such as simplied array usage and initializing maps.
Groovy is a dynamic language and doesn't require you to dene the type for each variable. For example, you can dene
soldToPartyName and Lines each as a variable without a type. As an option, specify a type, if necessary. For example,
dene soldToPartyName as type String.
Use implicit variables with each extension. You don't need to dene them.
Header Represents the order header object. Use the Header variable to access order header aributes
and child entity rows.
Context Context object that allows each extension to access context details, such as the name of the
extension that's running, the event code, and so on. The context object also provides access to
utility and helper methods, such as logging.
You use this format.
context extension name
For example.
1393
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
context Update Order Submit Date
Use the implicit header variable to access each order entity. Order Management exposes each entity as a generic row
object. Each extension can reference only get methods or set methods.
Action Code
Write to an aribute.
setAribute("aributeName", aributeValue)
For example.
Code Description
header.
setAribute("ShippingInstructions" Set the value of the ShippingInstructions aribute to Use only next-day air.
"Use only next-day air.");
def lines = header. Return a set of lines. You can iterate over the iterator to access individual lines.
getAribute("Lines");
1394
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Order Management returns each child entity as a set of rows. For example, an order line is a child of a sales order. This
example illustrates how you can use while next to loop through each row, an order line, from the set, which is the sales
order.
Code Description
def lines = header. Call the getAribute method on the order header to access the row set iterator for the order
getAribute("Lines"); lines.
while( lines. hasNext() ) { Determine whether the lines row set includes a next row, and loop until the row set doesn't
contain any more rows.
• On the rst loop through the while, move from line 1 to line 2.
• On the second loop through the while, move from line 2 to line 3.
• And so on.
line. Set the value of the billing transaction type on the order line to 12345L.
SetAribute("BillingTransactionTypeIdentier
12345L"); For brevity, this example hard codes the value 12345L. In most situations, its more likely you
would dene a variable or some other logic rather than hard code the value.
1395
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
def lines = header. Use method getAribute on the order header to access the row set iterator for the order lines.
getAribute("Lines");
while( lines. hasNext() ) { Determine whether the lines row set includes a next row, and loop until the row set doesn't
contain any more rows.
def charges = line. Get the row set for the order charges on the order line.
getAribute("OrderCharges");
def charge = charges. next(); Get the next order charge from the row set.
def chargeComps = charge. Get the row set for the charge components of the child entity.
getAribute("ChargeComponents");
while( chargeCompo. hasNext() ) { Loop through the charge components for the current charge.
def currency = chargeComp. Get the value of aribute ChargeCurrencyCode from the current charge component row.
getAribute("ChargeCurrencyCode");
1396
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
}
}
For details, see topic Using Extensible Flexelds in Order Management: Guidelines.
Implement Security
Write logic according to the job role. For example, write an extension that prevents an action or that sets default values
on the sales order according to the job role that the Order Entry Specialist uses when signing into Order Management.
This example references ORA_FOM_ORDER_ENTRY_SPECIALIST_JOB, which is the role code for job role Order Entry
Specialist.
1397
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
1. Use the Security Console to get details about the job roles and role code that your extension must reference.
For details, see topic Security Console: Overview.
2. Use method isUserInRole.
3. In the rst parameter for isUserInRole, reference the role code that the security console denes.
Manipulate Aachments
Use an order management extension to create, read, update, or delete an aachment. Use a text or XML aachment le.
Don't use a binary le.
Note.
1. Use get methods to get aachment details from an aachment that already exists, such as getText to get all
the text that the aachment contains, use getPklValue to get the sales order or order line that references the
1398
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
aachment, getFileName to get the name of the aachment le name, and so on. Here's some of the methods
you can use.
◦ getText
◦ getPklValue
◦ getEntityName
◦ getDataTypeCode
◦ getTitle
◦ getDescription
◦ getFileName
◦ getUrl
◦ getCategoryName
2. Use method createAachment to create an aachment, and use set methods to specify how to create it. You
can specify a new aachment le of type File, Text, or URL. For example, use setFileName to specify the name
of the aachment le. Here's some of the methods you can use.
◦ setDataTypeCode
◦ setTitle
◦ setDescription
◦ setFileName
◦ setFileContentType
◦ setFileContent
3. Use method deleteAachment to delete an aachment. In this example, the code uses a for statement to
iterate through all the aachments that a sales order contains and deletes all of them.
1399
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Dene Messages
Use an extension to dene a message.
Note.
1. messageType. Dene the messageType as WARNING or ERROR. The Order Management work area uses a
dierent icon for each type.
2. Lookup. Use page Manage Order Lookups in work area Setup and Maintenance to categorize your messages,
then reference them from your code.
Use predened lookups or create your own. Categorizing helps the Order Entry Specialist search for messages
and view them in analytic charts.
1400
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Use Error to improve search and display because errors display in work area Order Management in aribute
Error Type.
In this example, assume you dene the Meaning as Customer Relationship Mismatch.
3. Header or line. Indicate where the error occurs. Use one of these values.
◦ header. Apply the message to an error that occurs on the order header.
◦ line. Apply the message to an error that occurs on an order line.
The example in the screen print uses line. This example includes code (not visible, for brevity) above
throw new ValidationException that denes line as a variable, uses it to iterate through all the lines in the
sales order, then saves the order line number where the error occurs, such as line 3. At run time, Order
Management displays an icon on line 3 that the Order Entry Specialist can click to examine message
details.
4. Manage Messages. Use page Manage Messages in work area Setup and Maintenance.
1401
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• Click on the orange part of the circle to drill into to sales orders that are in error because of the mismatch.
• Search aribute Error Type on page Manage Orders for Customer Relationship Mismatch.
For details, see topic Dening Error Messages When Using Order Management Extensions: Explained.
Accumulate messages, then display them in work area Order Management all together at one time. For example,
assume you write an extension that contains three lines that check for error conditions, x, y, and z. At run time, assume
x, y and z all meet their error conditions, but the extension stops immediately after it encounters x and displays the
message for error x. Instead, write your extension so it continues to run through y and z, saves each message to a
temporary list, then displays messages for x, y and z together in a single dialog. This technique allows the Order Entry
1402
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Specialist to examine all errors together, correct them, then resubmit the sales order instead of correcting x, submit,
correct y, submit, correct z, and submit.
For example.
This example uses the following code to examine each sales credit. If the revenue percentage is less than 30% for the
sales credit, then the extension creates a message and stores it in a local list. The extension processes all sales credits.
If the local list contains any messages after it nishes processing sales credits, then the extension displays them in a
dialog in work area Order Management.
Code Description
import oracle. apps. scm. Import method ValidationException so your code can use it.
doo. common. extensions.
ValidationException;
import oracle. apps. scm. doo. Import method Message so your code can use it.
common. extensions. Message;
def salesCredits = header. Dene a local variable named salesCredits, use method getAribute to get the value of
getAribute("SalesCredits"); aribute SalesCredits from the order header, then set the value of this variable to the value
that getAribute returns.
1403
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
getArbute("SalesCredits") returns an iterator you can use to access sales credits rows. For
example, the code references salesCredits later in this topic to get SalesCreditTypeCode,
Percent, and Salesperson.
The while loop Iterate through each sales credit until it nishes processing all of them.
Examine aributes SalesCreditTypeCode, Percent, and Salesperson for each sales credit.
def percent = salesCredit. Dene a local variable named percent, use method getAribute to get the value of aribute
getAribute("Percent") Percent from local variable salesCredit, then set this variable to the value that getAribute
returns.
if ( percent < 30 ) If the condition is True, then create a message, and add it to the local msgs list. Messages
accumulate in the msgs list until the extension nishes processing all sales credits.
def tokens
Dene these tokens.
• SALESPERSON. def tokens sets the value of this token to the value that method
getAribute gets for aribute Salesperson from local variable salesCredit.
• PERCENT. def tokens sets the value of this token to the value of variable percent
that the while loop denes.
Message msg = new Message Dene a local variable named msg and add it to local array Message. msg stores each message
that the code adds to list object msgs.
msgs.add(msg); Add the contents of local variable msg, which contains a single message, to local list variable
msgs, which is an array that includes all messages that the code creates in this scenario.
1404
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
If local list msgs isn't empty, then run method ValidationException. Display all the messages
if( !msgs.isEmpty() ) { that local list msgs contains.
throw new
ValidationException(msgs); Perform this check after the while loop nishes processing all sales credits.
}
Import behavior it dierent depending on whether your extension creates a warning message or error message.
1405
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
• Sales orders entered in work area Order Management. The Warning dialog in work area Order Management
allows the Order Entry Specialist to examine the warning, then submit the sales order or cancel.
• Source orders imported from a source system. Order processing stops only if an error occurs. If only
warnings occur, then you can view the messages but the import submits the sales order to order fulllment. It
doesn't allow user intervention.
1406
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
Code Description
Object getItem(Long itemId, Dene a local object that your code can call. This object will contain data from the public view
Long orgId) { object.
def itemPVO = Create an instance of the public view object for the item, then store it in variable itemPVO. Use
context.getViewObject("context") this format.
def itemPVO =
context.getViewObject("oracle.apps.scm.productModel.items.publicView.ItemPVO")
1407
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
where
def vc = Dene the variable that will store details for the public view object.
itemPVO.createViewCriteria();
• vc. Variable that stores details for the view criteria object.
View criteria is a lter that determines the data that the public view object returns.
• itemPVO. Name of the public view object that contains the data you must get and lter.
• createViewCriteria. Method that creates the view criteria object. It denes vc as a
list that contains one or more rows.
vcrow.setAttribute("InventoryItemId",
Populate variable vcrow with data from the public view object.
itemId);
• setAttribute. Method that sets the value for the aribute in the row.
• InventoryItemId. Aribute in the public view object. This example gets the value that
uniquely identies the item in inventory.
• itemId. Variable that the extension code denes. This code gets the value of aribute
InventoryItemId on the order line from the public view object, then stores it in itemId.
vcrow.setAttribute("OrganizationId",
Populate variable vcrow with data from the public view object.
orgId);
• setAttribute. Method that sets the value for the aribute in the row.
• OrganizationId. Aribute in the public view object. This example gets the value that
uniquely identies the organization that ordered the item.
• orgId. Variable that the extension code denes. This code gets the value of aribute
OrganizationId on the order header from the public view object, then stores it in orgId.
def rowset = Get the iterator that contains the number of rows that meet the criteria and store it in local
itemPVO.findByViewCriteria(vc, variable rowset.
-1);
• rowset. Variable that stores the iterator.
• findByViewCriteria. Method that searches the public view object according to
criteria that you dene.
• vc. Contains the data that the public view object returns.
• -1. Return all rows that match the view criteria.
You can also use a positive integer to get a subset of rows. For example, use vc, 3 to
get the rst three rows that match the criteria. If only two rows match the criteria, then
the method returns only these two rows.
The variable item can now access all aributes in ItemPVO. return returns variable item so you
return item can reference item from your extension to get details from ItemPVO.
1408
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
The customer master in Oracle Trading Community Architecture (TCA) might include descriptive exelds. However,
public view objects that contain customer account site details, such as PartyPVO, might not include these descriptive
exelds. Use this technique to get them.
1409
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
1. Navigate to page Manage Customer Account Site Descriptive Flexelds, locate the descriptive exeld that you
must access, click Download Flexeld Archive, then examine the structure that it uses.
2. Reference public view object publicFlex to reference the descriptive exeld. In this example, you reference
publicFlex for custAccountSite.
oracle.apps.cdm.foundation.parties.publicFlex.custAccountSite.view.CustAccountSiteInformationVO
3. Use the structure you examined when you downloaded the archive to help determine how to specify the view
criteria.
Here is the entire code.
1410
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Get Data From Sales Orders That Aren't the Current Sales Order
You can use HeaderPVO to access order header data and FulllLinePVO to access order line or fulllment line data.
For example, if the Order Entry Specialist sets the purchase order number on a sales order, then make sure some other
sales order doesn't already use this purchase order number. Perform this validation when the Order Entry Specialist
submits the sales order.
• If a new sales order includes return lines, then get the order type from the original sales order and use it to set
the order type on each return line.
• If order revision 2 increases the total price of the sales order by 10% or more over the total price on order
revision 1, then don't allow the revision. For example, version 1 of sales order x is a complete and separate sales
order from version 2 of sales order x. Use a public view object to get data from a version that isn't the current
version.
1411
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
1. Use method invokeSoapService in your extension to call the web service.
You can call an Oracle Fusion web service or some other service that resides outside of Oracle Fusion. You can
call only a SOAP service. You can't call a REST service.
2. You must use page Manage Connector Details to dene the web service that you reference in your extension.
Set these values.
Aribute Value
Connector Name Use the exact same name that you use in the extension. For example.
For this example, set Connector Name to FundsCapturePaymentMethod.
1412
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
Connector URL Enter the URL that locates the web service address that you deploy on the external system.
User Name Enter the user name you use to sign into the web service.
Password Enter the password you use to sign into the web service.
1413
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
1. Dene the payload. This example uses String payLoad to hard code the payload as a string. You can also use
other techniques to meet your requirements, such as dening variables in the payload.
2. Reference your payload denition in a parameter of method invokeSoapService. This example references string
payLoad.
3. Use method getSoapBody to handle the response that the web service sends in reply to your request. Your
extension can receive the response, parse it, then extract the details it requires from the response.
4. Dene your payload so it includes only the main content. Don't include envelope or body details.
invokeSoapService expects only the main content. It will add envelope and body details.
Extract Details from Web Service Response
The getSoapBody() call on the response object in a web service response is an instance of Java class
javax.xml.soap.SOAPBody for a SOAP body (Simple Object Access Protocol). The Java documentation at hps://
docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPBody.html describes that SOAPBody is an instance of
org.w3c.dom.Element and org.w3c.dom.Node. Use the methods that are available on these interfaces to extract details
from a web service response.
This example order management extension uses methods from these interfaces to extract data from the response.
import oracle.apps.scm.doo.common.extensions.ValidationException;
import oracle.apps.scm.doo.common.extensions.Message;
// invoke the Check Check service using web service connector name 'CreditCheckService'. The connector is
set up using task 'Manage External Interface Web Service Details'. Since this is an external service that
is secured
// using message protection policy, we have registered the the https (external) URL of the service
def response = context.invokeSoapService("CreditCheckService", payLoad);
// print a debug message. This appends the entire response to the shipping instuctions attribute.
// Note: debug statements like these should be disabled in extensions on production instance as they can
cause performance issues.
debug(response.getSoapBody().getTextContent());
1414
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
// The response XML sent by the Credit Check service contains an element named 'Response'. A YES value
indicates that credit check passed. Let us extract the contents of Response tag. The following XML API will
return all nodes (tags)
// with name 'Response' in a NodeList element. We are expecting only one such element in our XML response
def nodeList = response.getSoapBody().getElementsByTagNameNS("*", "Response");
// Get the first element with name 'Response' (we are expecting only one), and gets its text content
String ccResponse = nodeList.item(0).getTextContent();
debug(ccResponse);
/**
* Appends passed in msg to the Shipping Instructions attribute. This method has been implemented only for
debugging purposes.
*/
void debug(def msg) {
String si = header.getAttribute("ShippingInstructions");
header.setAttribute("ShippingInstructions", si + ", " + msg.toString());
}
Enter your code into area Denition of page Edit Extensions, then click Validate to validate your design-time code.
Order Management will make sure you correctly formaed your code, such as correct usage of parentheses,
semicolons, and so on.
If an error occurs at runtime, then Order Management handles the error in the same way it handles any other error. It
displays the cause of failure, extension name, and event name. It displays these details in work area Order Management
and in the log les. It can handle these runtime errors.
1415
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Include debugging tests during development to test your code and verify that it runs as expected.
Note.
• After you nish testing and are ready to deploy your extension to production, modify your debugging logic to
write to a log le instead of commenting your test code. Writing to the log le can be helpful for future possible
troubleshooting. If you write data to the log le in a production environment, then you must contact Oracle
Support or a customer administrator to get view access to the log les that include application diagnostic data.
• Use the log les to evaluate performance. For example, if you write a lot of extension code, then examine and
monitor performance to make sure your code doesn't impact performance in a negative way.
For example, extension code typically performs a signicant amount of validation immediately after the Order
Entry Specialist clicks Submit. If Order Management requires a long amount of time to nish the submit, such
as ve minutes, then it might be necessary to look closely at your code to determine whether it contains some
logic you can streamline.
Inspect Payloads When You Use Web Services or Public View Objects
It might be dicult to examine the response from a web service or from the view criteria of a public view object. Use
method setAribute during development to get values for the aributes that your code references, display them in work
area Order Management, then examine these values to verify your code returns the values you expect.
1416
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
For example, assume your extension references shipping instructions. You can use this code to write the contents of
ShippingInstructions into the response from the web service.
header.setAttribute("ShippingInstructions", response.getSoapBody().getTextContext());
You can write the same data into the response from a public view object.
Make sure you convert your test code to log les or comment it ( // ) before you deploy to production.
You can also write a message to achieve a similar result. However, a message stops or pauses processing. Use a payload
so processing can continue without interruption, and so you can view aribute values in the context of how they display
in work area Order Management, such as aribute Shipping Instructions on the order line.
1417
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Use the Debug method at various points in your code during development to write variables and other values to an
aribute that you can examine in work area Order Management. This example calls debug three times, then writes the
contents of debug into the ShippingInstructions aribute.
You can then write your code so it displays these contents in aribute Shipping Instructions in work area Order
Management, then examine this display output to determine the values of various aributes and variables that exist at
various points in your code.
When you're ready to deploy to production, modify void debug. For example, assume you use this code to write your
debug contents.
void debug(def msg)
{String si = header.getAttribute("ShippingInstructions");
header.setAttribute("ShippingInstructions", si + ", " + msg.toString());
1418
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Modify this code so it writes to the log. You replace header.setAttribute with logger.logFine. For example.
void debug(def msg)
{String si = header.getAttribute("ShippingInstructions");
logger.logFine("ShippingInstructions", si + ", " + msg.toString());
Use this approach so you can change only a single line in your code, which is useful if you have 10s of lines that call
debug. You can also comment each line that calls the debug method, but commenting runs the risk of missing lines that
call debug, or accidentally commenting a line that doesn't call debug but that's critical to your code logic.
// invoke the Check Check service using web service connector name 'CreditCheckService'. The connector is
set up using task 'Manage External Interface Web Service Details'. Since this is an external service that
is secured
// using message protection policy, we have registered the the https (external) URL of the service
def response = context.invokeSoapService("CreditCheckService", payLoad);
// print a debug message. This appends the entire response to the shipping instuctions attribute.
// Note: debug statements like these should be disabled in extensions on production instance as they can
cause performance issues.
debug(response.getSoapBody().getTextContent());
// The response XML sent by the Credit Check service contains an element named 'Response'. A YES value
indicates that credit check passed. Let us extract the contents of Response tag. The following XML API will
return all nodes (tags)
// with name 'Response' in a NodeList element. We are expecting only one such element in our XML response
def nodeList = response.getSoapBody().getElementsByTagNameNS("*", "Response");
// Get the first element with name 'Response' (we are expecting only one), and gets its text content
String ccResponse = nodeList.item(0).getTextContent();
debug(ccResponse);
1419
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
/**
* Appends passed in msg to the Shipping Instructions attribute. This method has been implemented only for
debugging purposes.
*/
void debug(def msg) {
String si = header.getAttribute("ShippingInstructions");
header.setAttribute("ShippingInstructions", si + ", " + msg.toString());
}
• Filter out order lines that are canceled, closed, on backorder, or that Order Management has sent to billing
when you create a business rule that modies a value on a fulllment line that's still in progress.
• Filter out order lines you already fullled. For example, lter out lines you already shipped for outbound lines or
lines you already received and delivered for return lines.
• Filter so you only process changes that you make to billing aributes, for example, on the Billing tab of the
order line, and only if you haven't sent the order line to billing. For example, only modify Accounting Rule,
Payment Terms, Receivable Transaction Type, and so on. Don't modify any other aributes.
• Avoid the NullPointerException error. If your logic depends on using an aribute value as part of a calculation,
then lter out lines that include an aribute that doesn't contain a value.
• Filter according to line category code. For example, to process only order lines, not return lines, lter the
categoryCode aribute on the fulllment line according to ORDER. To process only returns, lter it according to
the value RETURN.
• If you use an order management extension, pretransformation rule, or posransformation rule to set the
default values for aributes, then lter out fulllment lines that reference the original return when you populate
the value for the Accounting Rule aribute and Invoicing Rule aribute.
• Filter out lines that aren't shippable. Don't aempt to ship an item that isn't shippable, such as a warranty.
For an example that lters out lines that aren't shippable, see topic Select Fulllment Lines for Orchestration
Process Steps.
• Filter out lines that reference a coverage item, such as a service agreement. To reserve means you reserve an
item in inventory. You don't store a service agreement in inventory because its not a physical item, so don't
reserve it. For details, see topic Another Example of Using Extensible Flexelds In Line-Selection Rules.
• Filter out return lines that you don't want to ship on an outbound sales order. See topic Prevent Orchestration
Process from Shipping Return Lines.
1420
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• Filter out lines that already passed trade compliance. If the line passed, then don't send a request to screen the
line for trade compliance. For details, see topic Use Extensible Flexelds in Line-Selection Rules.
while( lines.hasNext() ) {
def line = lines.next();
Long referenceFlineId = line.getAttribute("ReferenceFulfillmentLineIdentifier");
if (runningLine.getAttribute("FulfillLineStatusCode") == "CLOSED" ||
runningLine.getAttribute("FulfillLineCanceledFlag") == "Y" || //Line is cancelled.
runningLine.getAttribute("FulfillLineShippedQty") != null || //Line is shipped.
runningLine.getAttribute("FulfillLineInvoiceInterfacedFlag") == "Y" ){ //Line is interfaced to invoicing.
// This line isn't valid for setting default values.
continue;
}
}
else {
// This sales order doesn't have a revision.
//Its ok to set the default value for attributes.
}
//Put your defaulting logic here.
//line.setAttribute(<attribute name>, <value>);
}
def rowset = flinePVO.findByViewCriteriaWithBindVars(vc, -1, new String [0], new String [0]);
if (rowset.hasNext()) {
def fline = rowset.first();
1421
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
return fline;
}
}
The line-selection criteria lters out lines that can't ship so Order Management only sends shippable lines to the
fulllment system that processes shippable lines, such as the shipping system or Global Order Promising.
1422
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
• Use the Manage Orchestration Process Denitions task in the Setup and Maintenance work area.
• Use the line-selection criteria to add the rule.
• Add the rule to each orchestration process step that shippable aects, as necessary. For example, if the item is
a warranty, then it isn't shippable. To lter out the line that isn't shippable, you probably want to add the rule to
each step that references a schedule, reserve, or ship task, such as the Schedule step, the Create Reservation
step, Create Shipment Request step, and so on.
• The entire If statement isn't visible in the screen capture. Here are the entire statements.
◦ DooSeededOrchestrationRules.DOOFLine.categoryCode is "ORDER"
◦ DooSeededOrchestrationRules.DOOFLine.shippableFlag is "Y"
• You can't use Visual Information Builder to select fulllment lines. You must edit the orchestration process and
use Oracle Business Rules.
Write a pretransformation rule where you set the value for an aribute, but only after you lter lines. For example.
• If the order line isn't closed, canceled, shipped, or already sent to billing, then set the default value for the
requested ship date aribute.
For details about how to create a posransformation rule, see the Transformation Rules topic.
1423
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
• Use the Manage Processing Constraints task in the Setup and Maintenance work area.
• Set the Entity aribute to Order Fulllment Line.
• Use the Details area to add your lters.
Assume you don't want your users to modify a fulllment line value, such as Ship-to Site, if the line is closed or
canceled, or if it already shipped or already invoiced.
1424
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
You can also create a constraint that prevents the user from submiing a sales order that doesn't include payment
terms for lines that meet a specic criteria. For example, the line isn't a return line, or the line is for an internal transfer.
For details, see the Control Payment Terms section in topic Guidelines for Controlling Customer Details in Order
Management.
Related Topics
• Processing Constraints
• Orchestration Processes
• Select Fulllment Lines for Orchestration Process Steps
External
Call Web Services from Order Management Extensions
Use an order management extension to get data from a source that resides outside of Order Management Cloud before
you do default logic or validation logic.
Use ServiceInvoker in your extension code to call a web service and get the data. ServiceInvoker is available from the
context object. You use the ExecutionContext method.
1425
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
For details, see the Manage Connector Details Between Order Management and Your Fulllment System topic.
2. Go to the Manage Order Management Extensions page and create a new extension.
3. Set up the call.
Code Description
def lines = header. Get the row set for the order lines.
getAribute("Lines");
while( lines. hasNext() ) Determine whether more lines exist that we must process.
def line = lines.next(); Get the item number that the line species.
def itemNumber = line.
getAribute("ProductNumber");
allocateSalesCredits(line); Call the method that allocates sales credits for this line.
Code Description
void allocateSalesCredits(def line, Get the handle that you use to call the web service.
String itemNumber) {
def serviceInvoker = context.
getServiceInvoker();
def poNumber = header. Get the value of aribute Purchase Order Number for the customer from the order header.
getAribute("CustomerPONumber");
String payLoad = "<ns1: Concatenate the strings so you can prepare the payload. As an option, you can also use an
GetSalesCreditAllocation xmlns: XML API to concatenate the string.
1426
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
ns1\"hp://www. yourcompany.
com/ SalesCreditWS/ \">" +
"<ns1: poNumber>" + poNumber +
"</ns1: poNumber>" +
"<ns1: itemNumber>" + itemNumber
+ "</ns1: itemNumber>" +
"</ns1: GetSalesCreditAllocation>";
def responseBody = serviceInvoker. Use the interface name of the web service and the request payload to call the web service.
invokeSoapService("SalesCreditAllocationService"
payLoad). getSoapBody(); You must specify the interface name in the Connector Name aribute on the Manage External
Interface Web Service Details page. For this example, you specify SalesCreditAllocationService
as the connector name.
def salesPerson = //; Extract the salesperson name from the response payload.
def percent = // Extract the percent allocation from the response payload.
def salesCredits = line. Get the row set for the sales credit from the current line.
getAribute("SalesCredits");
sc. setAribute("Percent" new Set the value for the percent allocation aribute.
BigDecimal(percent));
sc. Set the sales credit type. In this example, assume that 1 equals Revenue credits.
setAribute("SalesCreditTypeCode"
1L);
1427
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
boolean itemOfInterest(String For brevity, this example doesn't include details about how to implement this method. The
itemNumber) { logic you use is specic to your business requirement.
if condition condition is code you write. It decides whether the item number is of interest.
return true;
else
return false
Complete Code
Here's the code for this example.
//get the lines row set.
def lines = header.getAttribute("Lines");
/**
* Call a web service that gets sales credit allocation for the order line.
* @param line identifies the line where you allocate sales credit.
* @param itemNumber is the number of the item that the line specifies.
*/
void allocateSalesCredits(def line, String itemNumber) {
//get a handle for the method that calls the web service.
def serviceInvoker = context.getServiceInvoker();
//get the customer attribute for the purchase order number from the order header.
def poNumber = header.getAttribute("CustomerPONumber");
1428
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
def responseBody =
//use the web service name and the constructed payload to call the service.
serviceInvoker.invokeSoapService("SalesCreditAllocationService",
payLoad).getSoapBody();
//get the row set for the sales credit for the current line.
def salesCredits = line.getAttribute("SalesCredits");
//set the sales credit type. This code assumes your implementation uses the value 1 for revenue credits.
sc.setAttribute("SalesCreditTypeCode", 1L);
//set a unique identifier in case more than one SalesCredit exists. For example, 5768342869.
salesperson.setAttribute("SourceTransactionSalesCreditIdentifier',5768342869);
/**
*Return a boolean that indicates whether the item is of interest.
*/
boolean itemOfInterest(String itemNumber) {
while( lines.hasNext() ) {
def line = lines.next();
1429
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
if( itemOfInterest(itemNumber) ) {
allocateSalesCredits(line);
}
}
void allocateSalesCredits(def line, String itemNumber) {
def serviceInvoker = context.getServiceInvoker();
def poNumber = header.getAttribute("CustomerPONumber");
xmlns:ns1=\"http://your.address/SalesCreditWS/\">" +
serviceInvoker.invokeSoapService("SalesCreditAllocationService",
payLoad).getSoapBody();
def salesPerson = //;
def percent = //
def salesCredits = line.getAttribute("SalesCredits");
def salesCredit = salesCredits.createRow();
sc.setAttribute("Salesperson", salesPerson);
sc.setAttribute("Percent", new BigDecimal(percent));
sc.setAttribute("SalesCreditTypeCode", 1L);
salesperson.setAttribute("SourceTransactionSalesCreditIdentifier',5768342869);
salesCredits.insertRow(salesCredit);
}
boolean itemOfInterest(String itemNumber) {
Code Description
def itemPVO = context. Create an instance of the public view object for the item. You must specify the entire name of
getViewObject("oracle. apps. scm. the public view object.
productModel. items. publicView.
ItemPVO"); This code uses each public view object as a row iterator, so the methods on the RowIterator
interface are also available on each public view object. You can use the RowSetIterator method
to access a method that gets the rows that the view object query returns, and to navigate the
row set for the public view object. For details, see the ViewObject method in the Methods You
Can Use with Order Management Extensions topic.
1430
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
Item ItemPVO
ItemCategoryPVO
Customer PartyPVO
PartySitePVO
LocationPVO
Receivable TransactionTypePVO
To get a complete list of the public view objects you can use, the aributes they contain, and to help determine the view
object you need, see Public View Objects in Oracle Applications Cloud (Document ID 2386411.1) on My Oracle Support.
An order management extension can create a view criteria object that adds ltering logic to the public view object
before it gets data from these objects. A view criteria object is a lter that you create and apply programmatically to a
view object. Order Management converts each of these lters into a WHERE clause when your extension runs the query
that you dene in the public view object.
You use the view criteria row object to create a view criteria object. The view criteria object contains the aribute
names and aribute values that become part of the WHERE clause.
1431
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• Queries the item master for an item according to the item Id and inventory organization Id.
• Examines the HazardousMaterialFlag aribute on the item.
• If the HazardousMaterialFlag aribute ags the item as hazardous, then the extension sets the Shipping
Instruction exeld context segment to indicate that the item needs hazardous handling.
This topic includes example values. You might use dierent values, depending on your business requirements.
Code Description
def lines = header. Get the row set for the order lines.
getAribute("Lines");
while( lines. hasNext() ) { Determine whether we must process more order lines.
def line = lines.next(); Get the next line and assign it to the variable line.
def inventoryItemId = line. Get the inventory item Id for the item from the order line that the Order Entry Specialist
getAribute("ProductIdentier"); selected.
def orgId = line. Get the organization for the item from the order line that the Order Entry Specialist selected.
getAribute("InventoryOrganizationIdentier");
def item = getItem(inventoryItemId, Get the item. Use the item Id and the organization Id to call the getItem method.
orgId);
String hazardous = item. Get the HazardousMaterialFlag aribute from the item.
getAribute("HazardousMaterialFlag");
if( "Y". equals(hazardous) ) { Determine whether HazardousMaterialFlag ags the item as hazardous.
def packShipInstruction = line. Get the row for the extensible exeld context named PackShipInstruction.
getOrCreateContextRow("PackShipInstruction");
Code Description
Object getItem(Long itemId, Long Create an instance of the public view object for the item.
orgId) {
1432
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
def itemPVO = context.
getViewObject("oracle. apps.
scm. productModel. items.
publicView. ItemPVO");
vcrow. Set the inventory item aribute so you can include it in the lter condition, and set the value
setAribute("InventoryItemId" that you will use to compare to this aribute.
itemId);
vcrow. setAribute("OrganizationId" Set the organization aribute so you can include it in the lter condition, and set the value
orgId); that you will use to compare to this aribute.
def rowset = itemPVO. Dene the view criteria that lters the rows when you query the public view object.
ndByViewCriteria(vc -1);
def item = rowset. rst(); Get the rst item row that meets the condition.
1433
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
vcrow.setAttribute("InventoryItemId", itemId);
vcrow.setAttribute("OrganizationId", orgId);
def rowset = itemPVO.findByViewCriteria(vc, -1);
def item = rowset.first();
return item;
}
Messages
Use Messages in Your Order Management Extensions
Create an order management extension to raise a validation error that indicates a sales order requires correction before
Order Management Cloud submits it to order fulllment.
• To raise a validation error, Order Management creates a validation exception, stops running the extension that
failed, then runs a subsequent extension for this extension point that you set up.
• Order Management accumulates each message that it creates from validation exceptions for all the extensions
that it runs during the extension point, then displays them together to the Order Entry Specialist or, if its a
source order from a source system, returns them through a web service call in the response to the caller.
If Order Management creates a validation exception, then your extension code must send a message that describes the
cause of the failure. You must do one of.
• Add the message text to your extension. You must specify Distributed Order Orchestration as the application
for the message. Order Management will display this text in the Order Management work area without
modication.
• Add the name of an Oracle Fusion message and message parameters in your extension. Order
Management will get the message from the Oracle Fusion message repository, populate any message tokens
that the message references, display the message in the Order Management work area, then add it to the
message log. You can use the Manage Messages page to create a message. For details, see the Create
Messages in Order Management topic.
This topic frequently mentions ValidationException. For details, see the ValidationException method in the Methods
You Can Use with Order Management Extensions topic.
Code Description
def salesCredits = header. Get the row set for the sales credits that the order header references.
getAribute("SalesCredits");
while( salesCredits. hasNext() ) Determine whether more sales credit rows exist.
def salesCredit = salesCredits. next(); Get the next sales credit row.
if( "1". equals(salesCredit. Determine whether the sales credit is a revenue percent.
getAribute("SalesCreditTypeCode")) )
1434
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
def percent = salesCredit. Get the percent allocation of the sales credit.
getAribute("Percent");
if( percent < 30 ) { If percent is less than 30, then create a validation error.
throw new Create the exception, and then stop the execution.
ValidationException("SALES_
CREDIT_ TOO_LOW_MSG" tokens);
Here's a variation that creates a validation exception that hard codes the message text. You replace def tokens and
throw new with this code.
String messageText = "The " + percent + "% sales credit for salesperson " + salesperson + " is less than the
required minimum, which is 30%.";
throw new ValidationException(messageText);
For example, if percent equals 20, and if salesperson equals Diane Cho, then here's the text that displays at run time.
The 20% sales credit for salesperson Diane Cho is less than the required minimum, which is 30%.
Here's a variation that creates a validation exception that references a request function that you dene instead of the
default function that comes predened with Order Management. You replace def tokens and throw new with this code.
def tokens = [SALESPERSON: salesCredit.getAttribute("Salesperson"), PERCENT: percent];
throw new ValidationException("ORA_CUSTOM_REQ_FUNCTION", "SALES_CREDIT_TOO_LOW_MSG", tokens);
1435
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
An extension can create one or more instances of a Message object before calling ValidationException. Use this
capability to report all sales credit rows that fail the requirement, and to control how you code your extension.
Here's an example that uses the Message object and provides detailed error reporting. It reports all sales credit rows
that fail validation.
Code Description
import oracle. apps. scm. Import the ValidationException class so you can construct a ValidationMessage object.
doo. common. extensions.
ValidationException;
import oracle. apps. scm. doo. Import the Message class so you can construct a Message object.
common. extensions. Message;
def salesCredits = header. Get the row set for the sales credits that the order header references.
getAribute("SalesCredits");
List<Message> msgs = new Determine whether more sales credit rows exist that we must process.
ArrayList<Message>();
while( salesCredits. hasNext() )
def salesCredit = salesCredits. next(); Get the next sales credit row.
if( "1". equals(salesCredit. Determine whether the sales credit is a revenue percent.
getAribute("SalesCreditTypeCode")) )
{
def percent = salesCredit. Get the percent allocation of the sales credit.
getAribute("Percent");
if( percent < 30 ) { If percent is less than 30, then create a validation error.
1436
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
if( !msgs. isEmpty() ) { If the msgs list isn't empty, then at least one sales credit row is in error.
For details about how to set log levels, see java.util.logging.Level on the Java Platform, Standard Edition 7 API
Specication website at hps://docs.oracle.com/javase/7/docs/api/java/util/logging/Level.html.
This topic includes example values. You might use dierent values, depending on your business requirements.
1437
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
def logger = context. getLogger(); Get the logger object from the context. The rst few lines have been left out of the example.
def item = getItem(inventoryItemId, Get the item. Use item Id and organization Id when calling the getItem method.
orgId);
String hazardous = item. Get the HazardousMaterialFlag aribute from the item.
getAribute("HazardousMaterialFlag");
logger. logFinest("Found line Log at the nest level. Note that the string format provides the rst argument and the
with hazardous item %s, %s", subsequent arguments provide the parameters.
inventoryItemId, orgId);
def packShipInstruction = line. Get the row for the extensible exeld context named PackShipInstruction.
getOrCreateContextRow("PackShipInstruction");
Code Description
Object getItem(Long itemId, Long Create an instance of a public view object named Item. Specify to log at the FINER level.
orgId, def logger) {
logger. logFiner("Entering method
getItem");
def itemPVO = context.
getViewObject("oracle. apps. scm.
productModel. items. publicView.
ItemPVO");
1438
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
vcrow. Set the inventory item aribute to include in the lter condition and the value to use when
setAribute("InventoryItemId" comparing against this aribute.
itemId);
vcrow. setAribute("OrganizationId" Set the organization aribute to include in the lter condition and the value to use when
orgId); comparing against this aribute.
def rowset = itemPVO. Specify the view criteria to lter rows and query the view object.
ndByViewCriteria(vc -1);
def item = rowset. rst(); Get the rst item row that matches the condition.
logger. logFiner("Exiting method Specify to log at the FINER level. Exit the log.
getItem: itemNumber %s", item.
getAribute("ItemNumber"));
1439
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Examples
Use Extensions to Update the Order Submit Date
Create an extension that uses an extensible exeld to update the order submit date.
This topic includes example values. You might use dierent values, depending on your business requirements.
1. Create an extensible exeld.
Aribute Value
Name H1AributeDateTime1
Context HeaderContext1
For details about how to create an extensible exeld, see the Set Up Extensible Flexelds in Order
Management topic.
2. In the Setup and Maintenance work area, go to the task.
◦ Oering: Order Management
◦ Functional Area: Orders
◦ Task: Manage Order Management Extensions
3. On the Manage Order Management Extensions page, notice the elements.
◦ Three tabs, one for each extension point.
◦ A Sequence column. Order Management runs the extensions for each extension point sequentially
according to the values in the Sequence column. For example, if the rst row contains a value of 10, the
second row a value of 30, and the third row a value of 20, then Order Management will run row one, row
three, and then row two.
4. On the Manage Order Management Extensions page, click Actions > Create New.
5. In the Create Extension dialog, accept the default values, then click OK.
The Use Existing option creates a reference to an extension that already exists. It doesn't create a copy. For
example, assume an extension named My_Extension already exists on the On Save extension point. Assume
you set Use Existing to My_Extension when you create an extension on the On Start of Submission Request
extension point. If you modify My_Extension from On Start of Submission Request at any point in the future,
then Order Management will automatically update My_Extension for On Save with your modication. If
you modify My_Extension for On Save, then Order Management will update My_Extension for On Start of
Submission Request.
6. On the Create Extension page, on the On Start of Submission Request tab, enter values.
Aribute Value
1440
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
Description This extension sets the value of an extensible exeld to the date and time when Order
Management submied the sales order.
// Get the current time, and then create an instance of java.sql.Date, and set it to the current time.
long currentTime = new Date().getTime();
def date = new java.sql.Date(currentTime);
// Set the date on the attribute named _H1AttributeDateTime1 to the current date. Use flexfieldContext
to identify the flexfield context where _H1AttributeDateTime1 resides, which is HeaderContext1.
flexfieldContext.setAttribute("_H1AttributeDateTime1", date);
Aribute Value
Aribute Value
1441
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
This topic includes example values. You might use dierent values, depending on your business requirements.
Aribute Value
Description Make sure a relationship exists between the sold-to customer and the ship-to customer, and
between the sold-to customer and the bill-to customer. If one of these relationships doesn't
exist, then create an error and stop the sales order from proceeding.
//import classes for validation exceptions and messages from Oracle Trading Community Architecture.
import oracle.apps.scm.doo.common.extensions.ValidationException;
import oracle.apps.scom.doo.comm.extensions.Message;
// Make sure the extension runs only for your test sales order. If multiple developers use your test
environment, then this condition makes sure the code updates only your sales order. You must remove
this condition in a production environment.
def poNumber = header.getAttribute("CustomerPONumber" );
if(poNumber == null) return;
if( !poNumber.startsWith("MatchRelationship") ) return;
boolean relationExists=false;
//if the relationship exists, then further validation is not necessary, so save the sales order, and
then exit.
if (header.getAttribute("BuyingPartyName")==header.getAttribute("BillToCustomerName"))
relationExists=true;
//determine what relationship currently exists between the bill-to customer and the sold-to customer.
//reference the view object that stores the relationship. In this example, the
CustomerAccountRelationship view object stores this relationship.
def CustPVO =
context.getViewObject("oracle.apps.cdm.foundation.parties.publicView.customerAccounts.CustomerAccountRelationshi
1442
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
//Read through the row set. If a row exists that contains a relationship, then you have determined that
a relationship exists between sold-to and bill-to, so save the sales order, and then exit.
while (rowSet.hasNext()) {
def row = rowSet.next();
def billtorelation=row.getAttribute("CustAccountId")
if (billtorelation == billTo)
{
relationExists=true;
}
}
//Create an exception when a relationship does not exist and display an error message.
//header.setAttribute("ShippingInstructions", header.getAttribute("ShippingInstructions") + ", "
relationExists)
if( !relationExists) {
throw new ValidationException("The order submit failed because the bill-to customer is not related to
the sold-to customer.");
}
This example is only for demonstration purposes in a development environment. It hard codes the message
to display in the Order Management work area in the English language as The order submit failed because
the bill-to customer is not related to the sold-to customer. To avoid problems with translation to other
languages, don't code the message in a production environment.
Instead, here's some code you can use to reference a message from the messaging framework.
where
◦ lookup_code determines where and how to display the message in the Order Management work area.
For example, you can reference more than one lookup code to display messages in dierent pie slices on
the infolets in the Order Management work area, according to lookup code.
◦ message name identies the name of the message that exists in the messaging framework.
◦ token_values species a list of the values to use in the tokens that the message contains. If the message
doesn't contain any tokens, then use null.
For example, here's some code that displays the contents of the FOM_CMN_INV_BILL_TO message.
For details about using lookup_code, see the ValidationException method in the Methods You Can Use with
Order Management Extensions topic.
Aribute Value
1443
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
2. Verify that the error dialog displays the message you coded.
Computer Service and Rentals is the sold-to customer, Business World Inc is the bill-to customer, they don't
match, so Order Management displays an error.
3. Set the value, then click Submit.
Aribute Value
4. Verify that Order Management submits the sales order and sets the status to Processing.
Computer Service and Rentals is the sold-to customer and the bill-to customer, they match, so Order
Management processes the sales order.
For demonstration purposes, this example hard codes some values, such as HW INTERNAL. Your environment will likely
require dierent variable values.
This topic includes example values. You might use dierent values, depending on your business requirements.
1. In the Setup and Maintenance work area, go to the task.
◦ Oering: Order Management
◦ Functional Area: Orders
◦ Task: Manage Order Management Extensions
2. On the Manage Order Management Extensions page, on the On Start of Submission Request tab, create a new
extension.
Aribute Value
Description Determine whether a purchase order exists for the purchase order number that the Order
Entry Specialist enters in the Purchase Order aribute.
1444
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
import oracle.apps.scm.doo.common.extensions.ValidationException;
//If a matching row does not exist, then the purchase order that the user entered does not exist. Create
a validation error and stop the sales order submit.
if( !poExists ) {
throw new ValidationException("ORA_MANAGE_EXTENSIONS", "DOO_EXT_HW_INTERNAL_PO_REQD", null);
}
}
This topic includes example values. You might use dierent values, depending on your business requirements.
1. Create the extensible exeld.
◦ Add it to the Fulllment Line Information exeld. Use these values.
Aribute Value
Name CancelLine
Context ProductObsoleteContext
1445
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
Name CancelLine
Code CancelLine
For details about how to create an extensible exeld, see the Set Up Extensible Flexelds in Order
Management topic.
2. Create your extension.
Aribute Value
Description This extension examines the value of an extensible exeld on an order line to
determine whether to cancel the line.
1446
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
import oracle.apps.scm.doo.common.extensions.ValidationException;
if(lines == null)
return;
while(lines.hasNext()){
if(context == null)
throw new ValidationException("Context ProductObsoleteContext was null");
if("Y".equals(cancelLineEffVal)){
line.setAttribute("OrderedQuantity",0);
}
◦ Go to the Order Management work area and create a new sales order.
Aribute Value
1447
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
◦ On the Create Revision page, set the aribute on the order header.
Aribute Value
// Go through all the order lines. We're interested in return lines. As soon as we find a return line, we
will use the document
// reference on the line to try to locate the original order.
def lines=header.getAttribute(""Lines"");
while (lines.hasNext()) {
def line=lines.next();
// Get the line type specified on the line. A line type code of ORA_RETURN means its a return line.
String lineTypeCode=line.getAttribute(""TransactionLineTypeCode"");
if (""ORA_RETURN""==lineTypeCode) {
// We have a return line. Now let's find the original order.
// We will go through the document references on this line to locate the document reference
// that identifies the original order.
def docRefs=line.getAttribute(""DocumentReferences"");
while (docRefs.hasNext()) {
def docRef=docRefs.next();
String docRefType=docRef.getAttribute(""DocumentReferenceType"");
1448
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
if (""ORIGINAL_ORCHESTRATION_ORDER""==docRefType) {
// We found the document reference that points to the original order.
// The DocumentIdentifier attribute is the header id of the original order.
Long headerId=new Long(docRef.getAttribute(""DocumentIdentifier""));
// Call the getOrderType method to get the order type of the original order using a PVO
String orderTypeCode=getOrderType(headerId);
// If order type isn't null, set it on the current order, else raise a validation exception.
if (orderTypeCode !=null) {
header.setAttribute(""TransactionTypeCode"", orderTypeCode);
break;
}
else {
throw new ValidationException(""Order type isn't specified on the original order."");
}
}
}
}
}
/**
* Returns the order type of the indicated order.
*/
String getOrderType(Long headerId) {
debug(""finding order by headerId: ""+ headerId);
def vo=context.getViewObject(""oracle.apps.scm.doo.publicView.analytics.HeaderPVO"");
return originalHeader.getAttribute(""OrderTypeCode"");
}
if ("ORIGINAL_ORCHESTRATION_ORDER" == docRefType) {
// We found the document reference that points to the original order.
// The DocumentSubLineIdentifier attribute is the fulfillline id of the original order fulfillment line.
lineId = new Long(docRef.getAttribute("DocumentSubLineIdentifier"));
1449
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
if (headerId == 0) {
// The DocumentIdentifier attribute is the header id of the original order header.
headerId = new Long(docRef.getAttribute("DocumentIdentifier"));
}
}
}
if (lineId != 0) {
// throw new ValidationException(lineId.toString());
def oLine = getLine(lineId);
1450
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
}
}
def Object getLine(Long lineId) {
def vo = context.getViewObject("oracle.apps.scm.doo.publicView.analytics.FulfillLinePVO");
Object[] rows = vo.findByKey(lineId, 1);
def originalFLine = rows[0];
return originalFLine;
}
Order Headers
Set the Billing Transaction Type According to Order Type
import oracle.apps.scm.doo.common.extensions.ValidationException;
import oracle.apps.scm.doo.common.extensions.Message;
//Case statement which tests order type and calls function to get billing transaction type
switch (orderTypeCode) {
case ["AUTO RETURN - SHIP", "AUTO RETURN - SHIP", "AUTO RETURN - MXT SHIP", "Mosoi_test"]:
billingTxnTypeId = getBillingTxnTypeId("MOTO_INVOICE");
//msg = new Message(Message.MessageType.WARNING, "First Case " + billingTxnTypeId );
break;
case ["UnreferencedRMA"]:
billingTxnTypeId = getBillingTxnTypeId("Invoice");
//msg = new Message(Message.MessageType.WARNING, "Second Case " + billingTxnTypeId );
break;
default:
billingTxnTypeId = null;
//msg = new Message(Message.MessageType.WARNING, "Default " + billingTxnTypeId );
break;
}
1451
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
//Only return Billing Transaction Type for the - Common Set - to be changed as required
vcrow.setAttribute("Name", billingTxnTypeName);
vcrow.setAttribute("SetName", "Common Set");
return txnTypeId;
}
List < Message > messages = new ArrayList < Message > ();
//messages.add(new Message( Message.MessageType.ERROR, "HeaderId: " + header.getAttribute("HeaderId")));
1452
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
newAttachment3.setFileName("APITextFile.txt");
//newAttachment3.setFileContentType("application/text");
newAttachment3.setFileContentType("text/plain");
//newAttachment3.setFileContent(new BlobDomain("This is a test creation using Bytes".getBytes()));
newAttachment3.setFileContent("This is a test for creation file from api using bytes".getBytes());
header.createAttachment(newAttachment3);
Set an aribute to the current date and time. Use an extensible exeld on the order header.
import oracle.apps.scm.doo.common.extensions.ValidationException;
def poNumber = header.getAttribute("CustomerPONumber");
//throw new ValidationException("An order with the Purchase Order Number " + poNumber + " already exists.");
//throw new ValidationException("An order with the Purchase Order Number " + now + " already exists.");
def complianceDetails = header.getOrCreateContextRow("ComplianceDetails");
complianceDetails.setAttribute("compliancedatetime", now);
1453
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
If the HazardousMaterialFlag aribute equals Y, then set value for aributes that use extensible exelds on the order
header and order lines.
import oracle.apps.scm.doo.common.extensions.ValidationException;
def poNumber = header.getAttribute("CustomerPONumber");
if (!poNumber.startsWith("SetEFFAttributeOnSave")) return;
if ("Y".equals(hazardous)) {
//get tow for fulfill line context PackShipInstruction
def packShipInstruction = line.getOrCreateContextRow("PackShipInstruction");
packShipInstruction.setAttribute("shippinginstruction", "Hazardous Handling Required.");
}
}
return item;
Set the default value to use for the payment term on the order header.
import oracle.apps.scm.doo.common.extensions.ValidationException;
import oracle.apps.scm.doo.common.extensions.Message;
List < Message > messages = new ArrayList < Message > ();
def logger = context.getLogger();
def HeaderPayTerm = header.getAttribute("PaymentTerm");
def PName = header.getAttribute("BillToCustomerName");
def AId = header.getAttribute("BillToCustomerIdentifier");
1454
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
1455
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
//A test should be created for each Business Unit SET ID Assignment Set combination using the following SQL:
//SELECT haotl.NAME ,
//haotl.organization_id,
//fsa.SET_ID
//FROM fusion.FND_SETID_ASSIGNMENTS fsa,
//fusion.HR_ORGANIZATION_UNITS_F_TL haotl
//WHERE reference_group_name LIKE 'HZ_CUSTOMER_ACCOUNT_SITE'
//AND determinant_value = haotl.organization_id
//AND haotl.NAME LIKE '&Business_Unit_Name%'
//AND haotl.LANGUAGE = USERENV('LANG')
//
if (300000017871360. equals(VARBusinessUnitIdentifier)) {
VARBusinesseUnitSetId = 300000000002582;
}
if ((VARBusinesseUnitSetId).equals(RETShipToSetId)) {} else {
//The validation error below can be amended to match your business requirements. The example provided shows
information on the SET IDs returned
Throw new ValidationException("BU Set Id does not match Customer Ship to SET ID - BU Set ID is " +
VARBusinesseUnitSetId + " Ship to Set ID is :" + RETShipToSetId)
}
Prevent Order Management from creating a duplicate of the purchase order number on the order header.
import oracle.apps.scm.doo.common.extensions.ValidationException;
//get the Customer PO Number, order number and the buying party id from the order header of the order being
saved
String customerPONumber = header.getAttribute("CustomerPONumber");
String buyingPartyIdentifier = header.getAttribute("BuyingPartyIdentifier");
String OrderNumber = header.getAttribute("OrderNumber");
1456
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
//Find one row using the specified view criteria. Even if we find one row, we know that we already have an
order with the same PO Number and Bill to Site ID
def rowset = vo.findByViewCriteria(vc, 1);
if (rowset.hasNext()) {
//An Order has been found for the Bill to Site and the order number entered
//Now test to check if the order currently worked on has been previously save or if this is a revision
def vcSameOrder = vo.createViewCriteria();
def vcSameOrderrow = vc.createViewCriteriaRow();
vcSameOrderrow.setAttribute("CustomerPoNumber", customerPONumber);
vcSameOrderrow.setAttribute("SoldToPartyId", buyingPartyIdentifier);
vcSameOrderrow.setAttribute("OrderNumber", OrderNumber);
vcSameOrder.add(vcSameOrderrow);
def rowsetSameOrder = vo.findByViewCriteria(vcSameOrder, 1);
if (rowsetSameOrder.hasNext()) {
//An Order has been found. this has the same order number and PO number as the order being worked on. this
is a valid case. The order found is a revision or a previously saved order.
header.setAttribute("CustomerPONumber", customerPONumber);
} else
//The order found is for a different order number
//Set the customerPO number to the upper case value
{
throw new ValidationException("An order with the Purchase Order Number for this Customer already exists " +
customerPONumber + " already Exists");
}
} else
//No Order found for the bill to site id an po Number - the order can be saved
//Set the customerPO number to the upper case value
{
header.setAttribute("CustomerPONumber", customerPONumber);
}
Order Lines
Set the Fulllment Organization and Shipping Instructions on the Order Line
If the item is shippable, then set the fulllment organization for the order line and shipping instructions on the line to
the default shipping organization that the item references.
import oracle.apps.scm.doo.common.extensions.ValidationException;
import oracle.apps.scm.doo.common.extensions.Message;
if (!poNumber.startsWith("DefaultShippingOrg")) return;
if ("Y".equals(shippable)) {
Long defaultOrgId = item.getAttribute("DefaultShippingOrg");
//msg = new Message(Message.MessageType.WARNING, "default: " + inventoryItemId + " - " + orgId + " - " +
shippable+ " - " + defaultOrgId);
//throw new ValidationException(msg);
1457
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
line.setAttribute("FulfillmentOrganizationIdentifier", defaultOrgId);
line.setAttribute("FulfillmentOrganizationIdentifier", 1234);
line.setAttribute("ShippingInstructions", "Ship From Org :" + 999);
}
}
return item;
If the item is hazardous, then set the packing instructions on the order line.
def poNumber = header.getAttribute("CustomerPONumber");
if (!poNumber.startsWith("HazardousMaterial")) return;
if ("Y".equals(hazardous)) {
//get row for fulfill line context PackShipInstruction
line.setAttribute("PackingInstructions", "Hazardous Handling Required.");
}
}
return item;
1458
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
import oracle.jbo.domain.BlobDomain;
List < Message > messages = new ArrayList < Message > ();
//messages.add(new Message( Message.MessageType.ERROR, "HeaderId: " + header.getAttribute("HeaderId")));
def lines = header.getAttribute("Lines");
while (lines.hasNext()) {
line.createAttachment(newAttachment1);
}
/*delete all header attachments
//messages.add(new Message( Message.MessageType.ERROR, "Delete all header attachments"));
def attachments1 = header.getAttachments();
for (int i; i< attachments1.size(); ++i) {
def attachment1 = attachments1[i];
//header.deleteAttachment(attachment1);
}*/
1459
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
List < Message > messages = new ArrayList < Message > ();
//messages.add(new Message( Message.MessageType.ERROR, "HeaderId: " + header.getAttribute("HeaderId")));
def lines = header.getAttribute("Lines");
while (lines.hasNext()) {
Other Behavior
Display Warning When Fulllment Can't Meet the Order Date
Use the server time to determine whether fulllment can ship the item according to the order entry date. If it doesn't,
display a warning.
import oracle.apps.scm.doo.common.extensions.ValidationException;
import oracle.apps.scm.doo.common.extensions.Message;
//If cusomer is not PMC - Snow Enterprise then we do not want to check for the order date
if( customer != "PMC - Snow Enterprise" ) return;
//Initialize the variable indicating that the order is past cut off time to false
boolean orderAfterCutOffTime = false;
//Initialize calendar object. By default calendar has the current system time. We want to setup the calendar
to be in Eastern Stardard Time
Calendar now = new GregorianCalendar(TimeZone.getTimeZone("EST"));
//The following commented out code line is just for debugging purposes. It prints out the customer, and hour
of day values in the shipping instructions attribute which is visible in the UI.
//This is an easy way to inspect variable values and debug code
header.setAttribute("ShippingInstructions", customer + ", " + now.get(Calendar.HOUR_OF_DAY) + ", " +
now.get(Calendar.MINUTE));
CutOffHour = 10
CurrentHour = now.get(Calendar.HOUR_OF_DAY)
//We will iterate through the lines in the order to check if any of the lines has ship from organization set
to "Vision Operations". In order to save CPU cycles, we run this code
//to iterate through lines only if the order is past the cut-off time
if( orderAfterCutOffTime ) {
//get the lines iterator
count = 0
1460
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Copy extensible exeld data from the original order to a return order that includes a return material authorization.
import oracle.apps.scm.doo.common.extensions.ValidationException;
import oracle.apps.scm.doo.common.extensions.Message;
import java.util.logging.Level;
//Following lines are for applying this extension only to specific cases
String poNumber = header.getAttribute("CustomerPONumber");
if (poNumber == null) return;
if (poNumber != "PMC TEST") return;
Long lineId = 0;
Long headerId = 0;
//get the category code specified on the line. A category code of RETURN means it is a return line
String categoryCode = line.getAttribute("TransactionCategoryCode");
//we have a return line. Now let's find the original line
//we will go through the document references on this line to locate the document reference
//that identifies the original order line.
if (headerId == 0) {
//The DocumentIdentifier attribute is the header id of the original order header
headerId = new Long(docRef.getAttribute("DocumentIdentifier"));
}
}
}
/*
if (lineId != 0) {
1461
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
if (headerId != 0) {
//get to the first row of the context for the original header
def contextRow = context.first();
//Define the context variable that you want to copy value to - header is the header of the return oorder
which is currently being worked on
def complianceDetails = header.getOrCreateContextRow("PMC Pricing");
complianceDetails.setAttribute("partyid", complInfo);
/* The following SQL will be useful in identifying the correct values to set
select
fdsb.context_code
,fdsb.segment_code
,fdsb.SEGMENT_IDENTIFIER
from
fnd_df_segments_tl fdst,
fnd_df_segments_b fdsb
where
fdst.APPLICATION_ID = fdsb.APPLICATION_ID and
fdst.ENTERPRISE_ID = fdsb.ENTERPRISE_ID and
fdst.DESCRIPTIVE_FLEXFIELD_CODE = fdsb.DESCRIPTIVE_FLEXFIELD_CODE and
fdst.CONTEXT_CODE = fdsb.CONTEXT_CODE and
fdst.SEGMENT_CODE = fdsb.SEGMENT_CODE and
fdst.language = 'US' and
fdst.descriptive_flexfield_code = 'DOO_HEADERS_ADD_INFO'
1462
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
order by
fdst.CONTEXT_CODE,
fdsb.SEQUENCE_NUMBER
*/
}
}
def vo = context.getViewObject("oracle.apps.scm.doo.publicView.analytics.FulfillLinePVO");
return originalFLine;
}
List < Message > messages = new ArrayList < Message > ();
messages.add(new Message(Message.MessageType.ERROR, "HeaderId: " + header.getAttribute("HeaderId")));
messages.add(new Message(Message.MessageType.ERROR, "Pre-submit"));
1463
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
1464
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
if (!"TestTIAOnSave_run_extension".equals(header.getAttribute("CustomerPONumber"))) return;
List < Message > messages = new ArrayList < Message > ();
/*messages.add(new Message( Message.MessageType.ERROR, "Enter TIA On Save"));
messages.add(new Message( Message.MessageType.ERROR, "CustomerPONumber: " + poNumber));
messages.add(new Message( Message.MessageType.ERROR, "HeaderId: " + headerId));*/
1465
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
//tia.setAttribute("CharacterValue", "Purple");
//messages.add(new Message( Message.MessageType.ERROR, "After setting CharacterValue to Purple,
CharacterValue: " + tia.getAttribute("CharacterValue")));
1466
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
if (!"OrderTaxDetails_run_extension".equals(header.getAttribute("CustomerPONumber"))) return;
List < Message > messages = new ArrayList < Message > ();
1467
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
List < Message > messages = new ArrayList < Message > ();
//Test DOO:::DOO_CX_ATTRIB_NO_DATA
//Expected message: A value could not be assigned to attribute {ATTRIBUTE}, while running extension
{EXTENSION}, during event {EVENT}, because no data was found.
//Acutally got: An error occurred when running extension UnexpectedExceptionOnSave,
during event On Save: oracle.jbo.JboException: JBO-29000: Unexpected exception caught:
oracle.apps.scm.doo.common.extensions.NoDataFoundException, msg=No data was found using the provided
parameters.
def person = new Person("First Name", "Last Name");
header.setBillToAccount(person);
//}
Code Snippets
Use a code snippet in your order management extension. Each snippet describes how to do a function or how to access
data.
List < Message > messages = new ArrayList < Message > ();
1468
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
List < Message > messages = new ArrayList < Message > ();
1469
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
List < Message > messages = new ArrayList < Message > ();
while (payments.hasNext()) {
def payment = payments.next();
1470
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Get details about the relationship between the sales order and other related sales orders, such as the original order of a
copied order or a return order.
import oracle.apps.scm.doo.common.extensions.ValidationException;
import oracle.apps.scm.doo.common.extensions.Message;
List < Message > messages = new ArrayList < Message > ();
messages.add(new Message(Message.MessageType.ERROR, "HeaderId: " + header.getAttribute("HeaderId")));
1471
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
List < Message > messages = new ArrayList < Message > ();
while (MPAS.hasNext()) {
def mpa = MPAS.next();
1472
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
}
}
List < Message > messages = new ArrayList < Message > ();
1473
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
1474
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
List < Message > messages = new ArrayList < Message > ();
//messages.add(new Message( Message.MessageType.ERROR, "HeaderId: " + header.getAttribute("HeaderId")));
List < Message > messages = new ArrayList < Message > ();
//messages.add(new Message( Message.MessageType.ERROR, "Enter Attachment On Save"));
//messages.add(new Message( Message.MessageType.ERROR, "CustomerPONumber: " + poNumber));
Long headerId = header.getAttribute("HeaderId");
messages.add(new Message(Message.MessageType.ERROR, "HeaderId: " + headerId));
1475
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
while (lines.hasNext()) {
Get the sales credit percent, then validate that Order Management allocates a percent greater than x to each
salesperson.
import oracle.apps.scm.doo.common.extensions.ValidationException;
def salesCredits = header.getAttribute("SalesCredits"); //get the row set for sales credits specified on the
header
while (salesCredits.hasNext()) {
def salesCredit = salesCredits.next();
if ("1".equals(salesCredit.getAttribute("SalesCreditTypeCode"))) {
//we are dealing with revenue percent
def percent = salesCredit.getAttribute("Percent");
Snippet 10. Call the Web Service That Does Credit Check
import oracle.apps.scm.doo.common.extensions.ValidationException;
import oracle.apps.scm.doo.common.extensions.Message;
1476
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
//invoke the Check Check service using web service connector name 'CreditCheckService'. The connector is set
up using task 'Manage External Interface Web Service Details'. Since this is an external service that is
secured
//using message protection policy, we have registered the the https (external) URL of the service
def response = context.invokeSoapService("CreditCheckService", payLoad);
//print a debug message. This appends the entire response to the shipping instuctions attribute.
//Note: debug statements like these should be disabled in extensions on production instance as they can
cause performance issues.
debug(response.getSoapBody().getTextContent());
//The response XML sent by the Credit Check service contains an element named 'Response'. A YES value
indicates that credit check passed. Let us extract the contents of Response tag. The following XML API will
return all nodes (tags)
//with name 'Response' in a NodeList element. We are expecting only one such element in our XML response
def nodeList = response.getSoapBody().getElementsByTagNameNS("*", "Response");
//Get the first element with name 'Response' (we are expecting only one), and gets its text content
String ccResponse = nodeList.item(0).getTextContent();
debug(ccResponse);
/**
* Appends passed in msg to the Shipping Instructions attribute. This method has been implemented only for
debugging purposes.
*/
void debug(def msg) {
String si = header.getAttribute("ShippingInstructions");
header.setAttribute("ShippingInstructions", si + ", " + msg.toString());
}
1477
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Get values for the Bill-to, Ship-to, and Sold-to aributes from the order header. Compare them to the customer account
details and validate that they're all for the same customer.
import oracle.apps.scm.doo.common.extensions.ValidationException;
import oracle.apps.scm.doo.common.extensions.Message;
List < Message > messages = new ArrayList < Message > ();
if (header.getAttribute("BuyingPartyName") == header.getAttribute("BillToCustomerName"))
relationExists = true;
def CustPVO =
context.getViewObject("oracle.apps.cdm.foundation.parties.publicView.customerAccounts.CustomerAccountRelationshipPV
def vc = CustPVO.createViewCriteria();
def vcrow = vc.createViewCriteriaRow();
vcrow.setAttribute("RelatedCustAccountId", soldTo);
def rowSet = CustPVO.findByViewCriteria(vc, -1);
while (rowSet.hasNext()) {
def row = rowSet.next();
def billtorelation = row.getAttribute("CustAccountId");
if (billtorelation == billTo) {
relationExists = true;
}
}
/*
if( !relationExists) {
1478
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Make sure the purchase order isn't on hold when you revise a sales order in a drop ship ow.
import oracle.apps.scm.doo.common.extensions.ValidationException;
import oracle.apps.scm.doo.common.extensions.Message;
List < Message > messages = new ArrayList < Message > ();
def headerPVO =
context.getViewObject("oracle.apps.scm.doo.processOrder.publicModel.partyMerge.view.HeaderPVO");
def vc = headerPVO.createViewCriteria();
def vcrow = vc.createViewCriteriaRow();
vcrow.setAttribute("SourceOrderNumber", header.getAttribute("SourceTransactionNumber"));
vcrow.setAttribute("SourceOrderSystem", header.getAttribute("SourceTransactionSystem"));
vcrow.setAttribute("StatusCode", "OPEN");
if (headerPRow != null)
headerId = headerPRow.getAttribute("HeaderId");
else {
//ValidationException ex = new ValidationException(messages);
//throw ex;
return;
}
while (lines.hasNext()) {
def line = lines.next();
def linePVO =
context.getViewObject("oracle.apps.scm.doo.processOrder.publicModel.partyMerge.view.FulfillLinePVO");
if (linePRow != null)
flineId = linePRow.getAttribute("FulfillLineId");
else
continue;
def docRefPVO =
context.getViewObject("oracle.apps.scm.doo.common.pricing.integration.publicView.DocumentReferencePVO");
1479
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
vcrowDr.setAttribute("HeaderId", headerId);
vcrowDr.setAttribute("FulfillLineId", flineId);
vcrowDr.setAttribute("DocRefType", "DROPSHIP_PO_REFERENCE");
if (drPRow != null)
poHeaderId = drPRow.getAttribute("DocId");
else
continue;
if (poPRow != null) {
if ("Y".equals(poPRow.getAttribute("FrozenFlag")) || "ON
HOLD".equals(poPRow.getAttribute("DocumentStatus")))
throw new ValidationException("PO is frozen. OM Change cannot be submitted");
if (pvPRow != null)
messages.add(new Message(Message.MessageType.ERROR, "PO Change is in progress. OM Change cannot be
submitted"));
} else
continue;
}
Reference
Methods You Can Use with Order Management Extensions
Get details about the methods you can use with your order management extension.
1480
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
where
Parameter Description
public String getExtensionName() String. Name of the order management extension that's currently running.
public String getEventCode() String. Abbreviation that identies the event that triggered the extension.
public Logger getLogger() Logger. Logger where the extension can write logs.
public ServiceInvoker Returns a service that you can use to call a web service from the code in your order
getServiceInvoker() management extension.
public String getUserName() Returns the name of the user currently signed in.
where
public String getLanguage() Returns an abbreviation that identies the language that the user is using in the current
session.
public Date getCurrentDate() Returns the current system date in an instance of java. sql.Date.
public Timestamp getCurrentTime() Returns the current system time in a java. sql. Timestamp object.
Logger Method
The Logger method returns the message log.
1481
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Format Description
where
where
• messageFormat. Format of the message. The command uses this format to create the
message string. It passes the format and argumentsto String.format().
• arguments. Arguments that replace the tokens in the format string.
where
• messageFormat. Format of the message. The command uses this format to create the
message string. It passes the format and argumentsto String.format().
• arguments. Arguments that replace the tokens in the format string.
where
where
1482
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Format Description
• messageFormat. Format of the message. The command uses this format to create the
message string. It passes the format and argumentsto String.format().
• arguments. Arguments that replace the tokens in the format string.
• messageFormat. Format of the message. The command uses this format to create the
message string. It passes the format and argumentsto String.format().
• arguments. Arguments that replace the tokens in the format string.
Message Method
The Message method uses a message type and message text to create a message for the sales order. It uses the
ORA_MANAGE_EXTENSIONS request function to log messages, by default.
Here's the format to use to display a literal message that uses the default message category and no tokens.
Message(MessageType type, String text)
where
Here's the format to use to specify the message name and message token parameters.
Message(MessageType type, String name, Map<String, Object> parameters)
where
Here's the values that aributes for this message must use on the Manage Messages page.
1483
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
Here's some example code that displays the contents of a message named DOO_CUST_RELATIONSHIP_WARNING.
Message(MessageType Message.MessageType.WARNING, String "DOO_CUST_RELATIONSHIP_WARNING", Map<String, Object>
messageParams)
You can use the Request function, message name, and message token parameters to create a message for the sales
order or the order line. The Message method will log the message with the request function that you specify.
where
• Object line. Identies the order line to reference when logging the message.
For details about the other parameters, see the Map Tokens for the Message Repository section in this topic.
where
1484
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Parameter Description
hasNext() Returns a Boolean value that indicates whether another row exists after the current row.
hasPrevious() Returns a Boolean value that indicates whether another row exists before the current row.
createRow() Creates a new row. If the entity doesn't support creating a new row, then this parameter
returns an error message when your extension calls this method.
insertRow(Row row) Inserts the row into the current iterator, where row species the row number to insert.
Use this method to add a new row to the iterator after you create the iterator.
ValidationException can get the error message text from the Oracle Fusion message repository, populate token values,
and then display the message in the Order Management work area.
where
• name. Name of the message that you specify on the Manage Messages page.
1485
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• parameters. A map that contains message tokens and token values. ValidationException uses this map to
populate tokens with values in the message.
Here's the format to use with ValidationException to create the map that parameters species.
ValidationException(java.lang.String requestFunction, java.lang.String name,
java.util.Map<java.lang.String,java.lang.Object> parameters)
where
• requestFunction. Lookup code of the request function to log the message against. You use the Order
Management lookup named Request Function to dene a request function. If this parameter passes an empty
value, then ValidationException defaults the request function to ORA_MANAGE_EXTENSIONS.
• name. Name of the message that you specify on the Manage Messages page. You must specify Distributed
Order Orchestration as the application for this message when you use the Manage Messages page.
• parameters. A map that contains message tokens and token values. ValidationException uses this map to
populate tokens with values in the message.
ValidationException can use a list of message objects to create a validation exception. It can accommodate a validation
error that includes more than one message.
where
• messages. A list of message objects. For details about how to create a message object, see the Message
Method section in this topic.
MANAGE_HOLD Hold.
1486
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
XFORM_ORDER Order transformation. Location that Order Management uses to store an incoming source
order before it transforms it to a sales order.
ORA_ VERIFY_ TRADE_ COMPLIANCE Verify that fulllment lines meet trade compliance policies.
ORA_ ORDER_ APPROVALS Message function classication for Order Approval messages.
ORA_ MANAGE_ EXTENSIONS Default type for messages that the extensions framework logs.
You can specify one of these lookup codes or add new ones to the lookup.
where
1487
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
A view criterion is a list of row criterion for the WHERE clause in a view object. Each row criterion is an array that
contains criterion for each aribute.
Here's the format to use to nd rows according to the view criterion that you provide and return them in an iterator.
RowIterator findByViewCriteria(ViewCriteria viewCriteria, int numberOfRows)
where
• viewCriteria. Name of the view criteria to use to nd rows.
• numberOfRows. Number of rows to return. Use one of.
◦ -1. Get all rows that match the view criteria.
◦ Positive integer. Get a subset of rows. For example, use 3 to get the rst three rows that match the
criteria. If only two rows match the criteria, then the method returns only these two rows.
For example, here's some code that gets all rows and stores them in a local variable named vc.
def rowset = itemPVO.findByViewCriteria(vc, -1);
where
• variableNames. Array of variable names to use with the view criteria.
• variableValues. Array of variable values to use with the view criteria.
Here's the format to use to nd rows according to the name of the view criteria.
RowIterator findByViewCriteriaWithBindVars(String viewCriteriaName, int maxNumOfRows, String[]
variableNames, Object[] variableValues)
where
• viewCriteriaName. Name of the view criteria to use to nd the rows.
Entities and Aributes You Can Use With Order Management Extensions
Get details about entities and aributes you can use with your order management extensions.
• An extension can read from or write to the identier aributes of a sales order, such as
BillToCustomerIdentier.
The text Identier, Id, or ID typically identies an identier aribute.
• Your extension code can use the aribute name of the public view object.
• Order Management converts values to identiers when it saves your code.
• Some identier values use identier Oracle Mobile Supply Chain.
1488
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• You can use a public view object, but it might be necessary for you to use the identier aributes.
• If you set a default value for the ShipSetName aribute, then you must also set aribute PartialShipAllowedFlag
to N.
• Use the Line entity to get the value of the ItemSubTypeCode aribute.
• Use the public view object for the item to get the ShippableFlag aribute.
• You can't use the public view object for an order line that the user adds in the Order Management work area
before the user clicks Submit because Order Management hasn't yet saved it to the database.
Entity Value to Use in Parent Read During All Write During Write During End
Code Events Save or Start of Submission
of Submission Request
Request
1489
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Entity Value to Use in Parent Read During All Write During Write During End
Code Events Save or Start of Submission
of Submission Request
Request
Entity Value to Use in Parent Read During All Write During Write During End
Code Events Save or Start of Submission
of Submission Request
Request
Use methods getOrCreateContextRow("context code") and getAttribute("API name") with these aributes, where
context code is the name of the context code of the extensible exeld and API name is the name of the API (application
programming interface) you use to call the method.
Entity Value to Use in Parent Read During All Write During Write During End
Code Events Save or Start of Submission
of Submission Request
Request
List of Aributes
Here's the list of aributes you can use in an order management extension. To get them in an Excel le, click Download
Files at this end of this topic.
1490
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
AgreementHeaderId Yes
AgreementNumber Yes
AllowCurrencyOverrideFlag No
AppliedCurrencyCode No
AppliedCurrencyName No
BillToAccountContactIdentier Yes
BillToAccountContactName Yes
BillToAccountContactNumber Yes
BillToAccountDescription No
BillToAccountPersonFirstName No
BillToAccountPersonLastName No
BillToAccountPersonMiddleName No
BillToAccountPersonNameSux No
BillToAccountPersonTitle No
BillToAddress1 No
BillToAddress2 No
BillToAddress3 No
BillToAddress4 No
BillToCity No
1491
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
BillToContactFirstName No
BillToContactLastName No
BillToContactMiddleName No
BillToContactNameSux No
BillToContactTitle No
BillToCountry No
BillToCounty No
BillToCustomerIdentier Yes
BillToCustomerName Yes
BillToCustomerNumber Yes
BillToCustomerSiteIdentier Yes
BillToPartyType Yes
BillToPostalCode No
BillToProvince No
BillToState No
BusinessUnitIdentier Yes
BusinessUnitName Yes
BuyingPartyContactFirstName No
BuyingPartyContactId Yes
1492
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
BuyingPartyContactLastName No
BuyingPartyContactMiddleName No
BuyingPartyContactName Yes
BuyingPartyContactNameSux No
BuyingPartyContactNumber Yes
BuyingPartyContactTitle No
BuyingPartyIdentier Yes
BuyingPartyName Yes
BuyingPartyNumber Yes
BuyingPartyPersonFirstName No
BuyingPartyPersonLastName No
BuyingPartyPersonMiddleName No
BuyingPartyPersonNameSux No
BuyingPartyPersonTitle No
BuyingPartyType Yes
CancelReason Yes
CancelReasonCode Yes
CarrierId Yes
CarrierName Yes
1493
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
ChangeVersionNumber No
Comments Yes
CurrencyConversionDate Yes
CurrencyConversionRate Yes
CurrencyConversionTypeCode Yes
CustomerPONumber Yes
DemandClass Yes
DemandClassCode Yes
EarliestAcceptableShipDate Yes
EarliestAcceptArrivalDate Yes
EarliestAcceptArrivalDateTransient Yes
FOBPoint Yes
FOBPointCode Yes
FreezePriceFlag Yes
FreezeShippingChargeFlag Yes
FreezeTaxFlag Yes
FreightTerms Yes
FreightTermsCode Yes
FulllmentOrganizationCode Yes
1494
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
FulllmentOrganizationIdentier Yes
FulllmentOrganizationName Yes
HeaderId No
LatestAcceptableShipDate Yes
LatestAcceptArrivalDate Yes
OrderNumber No
OrigSysDocumentRef Yes
PackingInstructions Yes
PartialShipAllowedFlag Yes
PaymentTerm Yes
PaymentTermCode Yes
PreCreditCheckedFlag Yes
PreferredBillToContactPointIdentier Yes
PreferredShipToContactPointIdentier Yes
PreferredSoldToContactPointIdentier Yes
PricedOn No
PricingSegmentCode No
PricingSegmentExplanation No
PricingStrategy No
1495
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
PricingStrategyExplanation No
PricingStrategyIdentier No
ReferenceHeaderId No
RequestArrivalDate Yes
RequestCancelDate Yes
RequestingBusinessUnit No
RequestingBusinessUnitIdentier Yes
RequestingLegalUnit Yes
RequestingLegalUnitIdentier Yes
RequestShipDate Yes
RevisionSourceOrderSystem Yes
SalesChannel Yes
SalesChannelCode Yes
Salesperson Yes
SalespersonIdentier Yes
SegmentExplanationMessage No
SegmentExplanationMsgName No
ShipClassOfService Yes
ShipClassOfServiceCode Yes
1496
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
ShipmentPriority Yes
ShipmentPriorityCode Yes
ShipModeOfTransport Yes
ShipModeOfTransportCode Yes
ShippingInstructions Yes
ShipsetFlag Yes
ShipToAddress1 No
ShipToAddress2 No
ShipToAddress3 No
ShipToAddress4 No
ShipToCity No
ShipToContactFirstName No
ShipToContactLastName No
ShipToContactMiddleName No
ShipToContactNameSux No
ShipToContactTitle No
ShipToCountry No
ShipToCounty No
ShipToPartyContactIdentier Yes
1497
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
ShipToPartyContactName Yes
ShipToPartyContactNumber No
ShipToPartyIdentier Yes
ShipToPartyName Yes
ShipToPartyNumber Yes
ShipToPartyPersonFirstName No
ShipToPartyPersonLastName No
ShipToPartyPersonMiddleName No
ShipToPartyPersonNameSux No
ShipToPartyPersonTitle No
ShipToPartySiteIdentier Yes
ShipToPartyType Yes
ShipToPostalCode No
ShipToProvince No
ShipToState No
SoldToPartyContactPointId Yes
SourceTransactionIdentier No
SourceTransactionNumber No
SourceTransactionRevisionNumber No
1498
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
SourceTransactionSystem No
StatusCode No
StrategyExplanationMessage No
StrategyExplanationMsgName No
SubmiedBy Yes
SubmiedDate Yes
SubmiedFlag No
SubstituteAllowedFlag Yes
SupplierAddressCity No
SupplierAddressCountry No
SupplierAddressCounty No
SupplierAddressLine1 No
SupplierAddressLine2 No
SupplierAddressLine3 No
SupplierAddressLine4 No
SupplierAddressPostalCode No
SupplierAddressProvince No
SupplierAddressState No
SupplierCode Yes
1499
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
SupplierName Yes
SupplierNumber Yes
SupplierSiteIdentier Yes
TradeComplianceResult Yes
TradeComplianceResultCode No
TransactionalCurrencyCode Yes
TransactionalCurrencyName Yes
TransactionDocumentTypeCode Yes
TransactionOn Yes
TransactionType No
TransactionTypeCode Yes
Lines No
SalesCredits No
OrderTotals No
Payments No
DocumentReferences No
Aribute Updatable
AccountingRule Yes
1500
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
AccountingRuleCode Yes
ActionType Yes
ActionTypeCode Yes
AssessableValue Yes
AssetGroupNumber Yes
AssetTrackedFlag Yes
BillingTransactionTypeIdentier Yes
BillToAccountContactIdentier Yes
BillToAccountContactName Yes
BillToAccountContactNumber Yes
BillToAccountPersonFirstName No
BillToAccountPersonLastName No
BillToAccountPersonMiddleName No
BillToAccountPersonNameSux No
BillToAccountPersonTitle No
BillToAccountSiteUseIdentier Yes
BillToAddress1 No
BillToAddress2 No
BillToAddress3 No
1501
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
BillToAddress4 No
BillToCity No
BillToContactFirstName No
BillToContactLastName No
BillToContactMiddleName No
BillToContactNameSux No
BillToContactTitle No
BillToCounty No
BillToCustomerIdentier Yes
BillToCustomerName Yes
BillToCustomerNumber Yes
BillToPartyType Yes
BillToPostalCode No
BillToProvince No
BillToState No
BillingTransactionTypeIdentier Yes
BusinessUnitIdentier Yes
BusinessUnitName Yes
CancelReason Yes
1502
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
CancelReasonCode Yes
Comments Yes
ComponentIdPath Yes
CongHeaderId Yes
CongRevisionNumber Yes
ConguratorPath Yes
ContractEndDate Yes
ContractStartDate Yes
ContractEndDate1 Yes
ContractStartDate1 Yes
CreditCheckAuthorizationCode Yes
CreditCheckAuthorizationExpiryDate Yes
CustomerPOLineNumber Yes
CustomerPONumber Yes
CustomerPOScheduleNumber Yes
CustomerProductDescription Yes
CustomerProductIdentier Yes
CustomerProductNumber Yes
DefaultTaxationCountry Yes
1503
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
DefaultTaxationCountryShortName Yes
DemandClass Yes
DemandClassCode Yes
DestinationShippingAddressCity No
DestinationShippingAddressCountry No
DestinationShippingAddressCounty No
DestinationShippingAddressLine1 No
DestinationShippingAddressLine2 No
DestinationShippingAddressLine3 No
DestinationShippingAddressLine4 No
DestinationShippingAddressPostalCode No
DestinationShippingAddressProvince No
DestinationShippingAddressState No
DestinationShippingLocationIdentier Yes
DestinationShippingOrganizationCode Yes
DestinationShippingOrganizationIdentier Yes
DestinationShippingOrganizationName Yes
DisplayLineNumber No
DocumentSubType Yes
1504
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
DocumentSubTypeName Yes
EarliestAcceptableShipDate Yes
ExtendedAmount Yes
FinalDischargeLocationAddressCity No
FinalDischargeLocationAddressCountry No
FinalDischargeLocationAddressCounty No
FinalDischargeLocationAddressLine1 No
FinalDischargeLocationAddressLine2 No
FinalDischargeLocationAddressLine3 No
FinalDischargeLocationAddressLine4 No
FinalDischargeLocationAddressPostalCodeNo
FinalDischargeLocationAddressProvince No
FinalDischargeLocationAddressState No
FinalDischargeLocationIdentier Yes
FirstPartyTaxRegistration Yes
FirstPartyTaxRegistrationNumber Yes
FOBPoint Yes
FOBPointCode Yes
FreightTerms Yes
1505
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
FreightTermsCode Yes
FulllInstanceId Yes
FulllmentLineIdentier No
FulllmentOrganizationCode Yes
FulllmentOrganizationIdentier Yes
FulllmentOrganizationName Yes
HeaderId No
IntendedUseClassicationIdentier Yes
IntendedUseClassicationName Yes
InventoryOrganization No
InventoryOrganizationIdentier No
InvoicingRule Yes
InvoicingRuleCode Yes
IsValidConguration Yes
ItemSubTypeCode No
LatestAcceptableArrivalDate Yes
LatestAcceptableShipDate Yes
LineAgreementNumber Yes
LineId No
1506
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
LineNumber No
LineType No
ModiedFlag Yes
OrderedQuantity Yes
OrderedUOM Yes
OrderedUOMCode Yes
OriginalProductDescription Yes
OriginalProductIdentier Yes
OriginalProductNumber Yes
PackingInstructions Yes
ParentLineReference Yes
PartialShipAllowedFlag Yes
PaymentTerm Yes
PaymentTermCode Yes
PreferredBillToContactPointIdentier Yes
PreferredShipToContactPointIdentier Yes
ProductCategory Yes
ProductCategoryName Yes
ProductDescription Yes
1507
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
ProductFiscalCategoryIdentier Yes
ProductFiscalCategoryName Yes
ProductIdentier Yes
ProductNumber Yes
ProductType Yes
ProductTypeName Yes
ProjectRecordIndicator Yes
PromiseArrivalDate Yes
PromiseShipDate Yes
QuantityPerModel Yes
ReferenceFulllmentLineIdentier No
RequestCancelDate Yes
RequestedArrivalDate Yes
RequestedShipDate Yes
RequestingBusinessUnitIdentier Yes
RequestingBusinessUnitName Yes
RequiredFulllmentDate Yes
ReturnReason Yes
ReturnReasonCode Yes
1508
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
RootParentLineReference Yes
Salesperson Yes
SalespersonIdentier Yes
SalesProductType Yes
SalesProductTypeCode Yes
ScheduleArrivalDate Yes
ScheduleShipDate Yes
ServiceCancelDate Yes
ServiceDuration Yes
ServiceDurationPeriod Yes
ServiceDurationPeriodCode Yes
ShipmentPriority Yes
ShipmentPriorityCode Yes
ShippableFlag Yes
ShippingCarrier Yes
ShippingCarrierCode Yes
ShippingInstructions Yes
ShippingMode Yes
ShippingModeCode Yes
1509
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
ShippingServiceLevel Yes
ShippingServiceLevelCode Yes
ShipSetName Yes
ShipToAddress1 No
ShipToAddress2 No
ShipToAddress3 No
ShipToAddress4 No
ShipToCity No
ShipToContactFirstName No
ShipToContactId Yes
ShipToContactLastName No
ShipToContactMiddleName No
ShipToContactNameSux No
ShipToContactTitle No
ShipToCounty No
ShipToPartyContactIdentier Yes
ShipToPartyContactName Yes
ShipToPartyContactNumber Yes
ShipToPartyIdentier Yes
1510
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
ShipToPartyName Yes
ShipToPartyNumber Yes
ShipToPartyPersonFirstName No
ShipToPartyPersonLastName No
ShipToPartyPersonMiddleName No
ShipToPartyPersonNameSux No
ShipToPartyPersonTitle No
ShipToPartySiteIdentier Yes
ShipToPartyType Yes
ShipToPostalCode No
ShipToProvince No
ShipToRequestRegion Yes
ShipToState Yes
SourceTransactionIdentier No
SourceTransactionLineIdentier No
SourceTransactionLineNumber No
SourceTransactionNumber No
SourceTransactionRevisionNumber No
SourceTransactionScheduleIdentier No
1511
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
SourceTransactionScheduleNumber No
SourceTransactionSystem No
StatusCode No
SubInventoryCode Yes
SubInventoryIdentier Yes
SubstitutionAllowedFlag Yes
SubstitutionReason Yes
SubstitutionReasonCode Yes
SupplierAddressCity No
SupplierAddressCountry No
SupplierAddressCounty No
SupplierAddressLine1 No
SupplierAddressLine2 No
SupplierAddressLine3 No
SupplierAddressLine4 No
SupplierAddressPostalCode No
SupplierAddressProvince No
SupplierAddressState No
SupplierCode Yes
1512
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
SupplierName Yes
SupplierNumber Yes
SupplierSiteIdentier Yes
SupplyStatusCode Yes
TaxClassication Yes
TaxClassicationCode Yes
TaxExemptFlag Yes
TaxExemptionCerticateNumber Yes
TaxExemptReason Yes
TaxExemptReasonCode Yes
TaxInvoiceNumber Yes
ThirdPartyTaxRegistration Yes
ThirdPartyTaxRegistrationNumber Yes
TotalContractAmount Yes
TotalContractQuantity Yes
TransactionBusinessCategory Yes
TransactionBusinessCategoryName Yes
TransactionCategoryCode Yes
TransactionLineType Yes
1513
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
TransactionLineTypeCode Yes
UnitListPrice Yes
UnitQuantity Yes
UnitSellingPrice Yes
UnreferencedReturnFlag No
UserDenedFiscClass Yes
UserDenedFiscClassName Yes
TransactionAributes No
SalesCredits No
OrderCharges No
ManualPriceAdjustments No
Payments No
DocumentReferences No
BillingPlans No
FulllLineDetails No
LotSerial No
Projects No
1514
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
ApplyTo No
AverageUnitSellingPrice No
CanAdjustFlag No
ChargeCurrencyCode No
ChargeCurrencyName No
ChargeDenition No
ChargeDenitionCode No
ChargeSubtype No
ChargeSubtypeCode No
ChargeType No
ChargeTypeCode No
GSAUnitPrice No
OrderChargeId No
ParentEntityId No
PricedQuantity No
PricedQuantityUOM No
PricedQuantityUomCode No
PricePeriodicityCode No
PriceType No
1515
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
PriceTypeCode No
PrimaryFlag No
RollupFlag No
SequenceNumber No
SourceChargeIdentier No
OrderChargeComponents No
Aribute Updatable
ChargeCurrencyCode No
ChargeCurrencyDurationExtendedAmountNo
ChargeCurrencyExtendedAmount No
ChargeCurrencyName No
ChargeCurrencyUnitPrice No
Explanation No
HeaderCurrencyCode No
HeaderCurrencyDurationExtendedAmountNo
HeaderCurrencyExtendedAmount No
HeaderCurrencyName No
HeaderCurrencyUnitPrice No
1516
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
OrderChargeComponentId No
OrderChargeId No
PercentOfComparisonElement No
PriceElement No
PriceElementCode No
PriceElementUsage No
PriceElementUsageCode No
RollupFlag No
SequenceNumber No
SourceChargeComponentId No
SourceChargeId No
SourceMpaId No
SourceParentChargeComponentId No
TaxIncludedFlag No
OrderTaxDetails No
Aribute Updatable
CurrencyCode No
DisplayName No
1517
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
EstimatedFlag No
OrderTotalId No
PrimaryFlag No
TotalAmount No
TotalCode No
TotalGroup No
Aribute Updatable
HeaderCurrencyTaxableUnitAmount No
HeaderCurrencyTaxUnitAmount No
OrderChargeComponentId No
OrderTaxDetailId No
TaxExemptionCerticateNumber No
TaxExemptReason No
TaxExemptReasonCode No
TaxIncludedFlag No
TaxRate No
TaxRateIdentier No
1518
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
BillingNumberOfPeriods No
BillingPeriodEndDate No
BillingPeriodNumber No
BillingPeriodStartDate No
BillingPlanId No
BillingPlanTypeCode No
BillingTrxDate No
CancellationEectiveDate No
NetBillingAmountPERPeriod No
OverridePeriod No
OverridePeriodAmount No
OverridePeriodQuantity No
PeriodicityCode No
PeriodicityName No
SourceBillingPlanId No
Aribute Updatable
Percent Yes
SalesCreditIdentier No
1519
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
SalesCreditType Yes
SalesCreditTypeCode Yes
Salesperson Yes
SalespersonIdentier Yes
SourceTransactionSalesCreditIdentier Yes
Aribute Updatable
CharacterValue Yes
DateValue Yes
NumberValue Yes
SourceTransactionLineAributeIdentier Yes
TimestampValue Yes
TransactionAributeCode Yes
TransactionAributeIdentier Yes
TransactionAributeName Yes
TransactionArId No
Aribute Updatable
ItemRevisionNumber No
1520
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
LocatorIdentier No
LotNumber No
LotSerialId No
SerialNumberFrom No
SerialNumberTo No
SourceTransactionLotIdentier No
Payment Aributes
Aribute Updatable
AuthorizationStatus No
InstrumentAssignmentIdentier No
PaymentMethod No
PaymentMethodCode No
PaymentSetIdentier No
PaymentTransactionIdentier No
PaymentType No
PaymentTypeCode No
SourceTransactionPaymentIdentier No
1521
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
DocumentAdditionaldentier Yes
DocumentAdditionalLineIdentier Yes
DocumentAdditionalLineNumber Yes
DocumentAdditionalNumber Yes
DocumentAdditionalSubLineIdentier Yes
DocumentAdditionalSubLineNumber Yes
DocumentIdentier Yes
DocumentLineIdentier Yes
DocumentLineNumber Yes
DocumentNumber Yes
DocumentReferenceType Yes
DocumentSubLineIdentier Yes
DocumentSubLineNumber Yes
DocumentSystemReferenceIdentier No
OwnerTableId Yes
OwnerTableName Yes
TaskType Yes
1522
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
AdjustmentAmount No
AdjustmentElementBasis No
AdjustmentElementBasisCode No
AdjustmentType No
AdjustmentTypeCode No
ChargeDenition No
ChargeDenitionCode No
ChargeRollupFlag No
Comments No
ManualPriceAdjustmentId No
ParentEntityCode No
ParentEntityId No
PricePeriodicityCode No
Reason No
ReasonCode No
SequenceNumber No
SourceManualPriceAdjustmentIdentier No
ValidationStatusCode No
1523
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
ActualDeliveryDate No
AvailabilityShipDate No
BillingTransactionAmount No
BillingTransactionDate No
BillingTransactionNumber No
BillOfLadingNumber No
CustomerTrxLineIdentier No
DeliveryName No
ExceptionFlag No
FulllLineDetailId No
FulllLineId No
Quantity No
RMAReceiptDate No
RMAReceiptLineNumber No
RMAReceiptNumber No
RMAReceiptTransactionIdentier No
Status No
StatusAsOfDate No
TaskType No
1524
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
TrackingNumber No
TradeComplianceCode No
TradeComplianceExplanation No
TradeComplianceName No
TradeComplianceResultCode No
TradeComplianceResultName No
TradeComplianceTypeCode No
TradeComplianceTypeName No
WaybillNumber No
Project Aributes
Aribute Updatable
ContractId Yes
ContractNumber Yes
DooOrderPrjId No
ExpenditureItemDate Yes
ExpenditureOrganization Yes
ExpenditureType Yes
ExpenditureTypeId Yes
FundingSource Yes
1525
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Updatable
OrganizationId Yes
ParentEntityCode No
ParentEntityId No
ProjectId Yes
ProjectNumber Yes
ReferenceProjectId No
ReservedAribute1 Yes
TaskId Yes
TaskNumber Yes
Related Topics
• Download Files
Flexelds
Overview
Overview of Using Extensible Flexelds in Order Management
Set up an extensible exeld so you can add your own aribute to Order Management Cloud.
An extensible exeld is a eld you can use to capture details in a sales order that are unique to your business
requirements. Each sales order in Order Management comes predened with a lot of aributes, but you might need one
that's specic to your needs.
You can use the details in an extensible exeld to determine process automation, send and receive details when
communicating with systems outside of Order Management, or provide the criteria to use in a complex business rule.
For example.
• Capture consumer details in an extensible exeld, then use them to add free samples to a shipment.
• Capture customer loyalty details in an extensible exeld, then determine whether to call the customer or
upgrade shipping priority.
1526
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• Receive a sales order request that includes unique build specications from your customer, store them in
an extensible exeld, and then route the sales order to dierent manufacturing facilities according to the
specications.
• Select and ship a bole of wine according to your customer dining preferences. Store these preferences in an
extensible exeld.
• Store the user ID of the order entry clerk who submied a source order from a source system.
• Track source orders that include warning messages from a source system.
• Store the original schedule date and the new schedule date on the order line so you can track and report
scheduling throughout the fulllment lifecycle.
Note.
• An extensible exeld supports a one-to-many relationship between one entity and one or more aributes. You
can use it to add more than one context sensitive segment.
• You can set up an extensible exeld for a fulllment line, or on some other object that supports an extensible
exeld.
Example Description
Get details from a source system. Get source order details from one or more source systems. A source order is an order that you
import into Order Management from a source system, such as from an upstream channel.
A source order contains a set of aributes. If you need details or aributes that the source
order doesn't contain, then you can use an extensible exeld to get them, then use these
details during order fulllment.
You can use the same extensible exeld aributes to receive details from each source system,
or use dierent extensible exeld aributes according to the unique requirements of each
source system.
Send details to a fulllment system. Order Management sends a fulllment request that includes a predened set of aributes to a
fulllment system. You can use an extensible exeld to send details that these aributes don't
include, but that the fulllment system needs to nish the fulllment request.
Integrate with systems outside of For details, see the Overview of Using Flexelds to Integrate Order Management with Other
Order Management. Oracle Applications topic.
Receive details from a fulllment A fulllment system might send aributes that provide a business value, and that the Order
system. Entry Specialist must view in Order Management or in the source system. In some situations,
Order Management might also use these details in the next set of tasks that it runs in an
orchestration process. You can use an extensible exeld to receive these aributes.
• Transformation rule. Write a rule that references an extensible exeld to add order
details, delete unnecessary details, or modify details. Use an extensible exeld to
determine the transformations to do.
1527
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Example Description
For details, see the Overview of Using Business Rules With Order Management topic.
Manage change. Use an extensible exeld as an order aribute to store details about a change that occurred.
For example, use an extensible exeld as input to calculate the cost of change and to select a
compensation paern when Order management receives a change order.
Display aributes in the Order Allow the Order Entry Specialist to search for sales orders in the Order Management work area
Management work area. according to the value of an extensible exeld.
Note that the Order Entry Specialist can read but not edit an extensible exeld aribute.
Example Description
Assign an orchestration process. Use the value of an extensible exeld in an assignment rule to automatically assign an
orchestration process during order fulllment to fulll each sales order and each order line.
Use an extensible exeld as part of the selection criteria during assignment.
Set up an orchestration process. Create a business rule that uses an extensible exeld to determine branching and the tasks to
run in an orchestration process.
Select the fulllment lines to process. Use an extensible exeld to determine whether a task in an orchestration process will process
the fulllment line or ignore it during order fulllment.
• If the item is a silver cup, and if engraving is yes, then set lead time to 3 days.
• If the item is a silver cup, and if engraving is no, then set lead time to 1 day.
For details, see the Set Up Jeopardy and Lead Time to Manage Delay topic.
1528
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• Price adjustment
• Sales credit
• Payment
• Lot serial
• Activity
Related Topics
• Overview of Flexelds
1529
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
1. Order Management Entity. The top-level object in the hierarchy. You can specify an entity.
1530
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
◦Fulllment Line Detail Information. Store details that the fulllment system provides that you don't
typically store on the fulllment line.
2. Extensible Flexeld. Each extensible exeld includes categories, contexts, and segments.
3. Extensible Flexeld Category. Organize your data into a category according to aributes that contain similar
business data. Specify where to display the extensible exeld in the Order Management work area, such as on
the order header or order line. You can use only one category for each entity.
4. Extensible Flexeld Context. Specify how to display the aribute. For example.
1531
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
Here's an example that displays an extensible exeld in the Order Management work area.
1532
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
1. Additional Information. A dialog that displays when you click Actions > Edit Additional Information on the
sales order header in the Order Management work area.
2. Manage Order Extensible Flexelds. The setup page you use in the Setup and Maintenance work area to
dene an extensible exeld.
3. Additional Header Information. Species the data to display and how to display it in Additional Information.
4. Pages tab. You use the Pages tab to dene each area where your extensible exeld displays. In this example,
the Pages tab denes one area named Compliance Info and another area named HeaderEFFDetails. The
example displays HeaderEFFDetails in the dialog. You can dene one or more area, and you can dene one
more contexts in each area.
1533
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
In this example, the Pages tab denes HeaderContext1 and HeaderContext2. However, for brevity, the screen
capture displays only HeaderContext1. The Sequence species the sequence to use when displaying these
contexts in the area, with 1 displaying at the top, 2 below 1, 3 below 2, and so on.
5. Sequence and Display Name for page. Denes the name for each category that displays in the dialog.
Sequence species the sequence to display the pages in the dialog. In the example, the Sequence is
10 for Compliance Info and 20 for HeaderEFFDetails, so the dialog displays Compliance Info rst, then
HeaderEFFDetails.
6. Sequence and Display Name for context. Denes the name for each context that displays in the dialog. For
example, HeaderContext1 organizes similar business data into a concise area of the dialog.
7. Context Sensitive Segment. Species one ore more segments that display details for each aribute. The
Sequence species the sequence to use when displaying these segments in the area. You can dene the
following segments in each context.
◦ 20 character segments. You can use up to 150 characters for each character segment.
◦ 10 number segments.
◦ Five date segments.
◦ Five date and time segments.
1534
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
The Additional Information dialog displays each extensible exeld you create that references the
DOO_HEADERS_ADD_INFO exeld category. For example, HeaderEFFDetails is an extensible exeld.
4. Click Cancel.
5. In the Order Lines area, search for an item, then click Add.
6. On the order line, click the down arrow, then click Edit Additional Information.
7. Click Submit, then copy the sales order number, such as 57025.
8. On the Overview page, click Tasks > Manage Fulllment Lines.
9. On the Manage Fulllment Lines page, search for your sales order.
10. In the Search Results, scroll to the far right, then click Additional Information.
1535
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
The Additional Information dialog displays the extensible exeld you create that references the
DOO_FULFILL_LINE_DTLS_ADD_INFO exeld category. For example, Pack Ship Instruction is an extensible
exeld.
1536
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
11. In the Fulllment Line Details area, in the Aributes area, click General, scroll down, click Additional
Information, then notice the dialog that displays.
Another Example
Here's an Additional Information dialog that displays each extensible exeld that references the
DOO_FULFILL_LINES_ADD_INFO exeld category. For example, FulllLineEFFInfo is an extensible exeld.
Order Management displays each extensible exeld in an Additional Information dialog. Here's an example that
displays the View Additional Information menu item on each order line on the Order Lines tab.
1537
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
In this example, View Additional Information allows the Order Entry Specialist to access the Source Line Info extensible
exeld.
1538
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
You do some or all of this set up, depending on your business requirements. It might be necessary to also do some of
this ow when you update your extensible exeld denition.
1. Manage Extensible Flexelds. Use the Manage Extensible Flexelds page in the Setup and Maintenance work
area to dene your extensible exeld. Click Deploy Flexeld to make it available throughout the architecture
and to other set up pages.
2. Order Management Work Area. Test your extensible exeld. Depending on your setup, you create a
new sales order, search for a sales order, use a fulllment view, and so on. For example, use the Additional
Information dialog when you create a new sales order to make sure your extensible exeld displays and works
as expected.
1539
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
3. Manage Order Management Extensions. Use the Manage Order Management Extensions page in the Setup
and Maintenance work area to add your extensible exeld to an order management extension.
4. Schedule New Process. Use the Publish Extensible Flexeld Aributes scheduled process to make your
extensible exeld available to various parts of Order Management, other set ups in Oracle Fusion Applications,
and integrations. This scheduled process updates the rule dictionaries in business rules, constraints, business
events, Integration Cloud Service, and the service mappings that you use for an internal integration.
5. Various Set Ups. Here's where you can use your extensible exeld.
Set Up Description
Business Rule
Use your extensible exeld in a business rule.
◦ Pretransformation
◦ Transformation
◦ Posransformation
◦ Routing
◦ Assignment
◦ Branching Expression
◦ Compensation Paern
◦ Cost of Change
Business Event Use an extensible exeld to help determine when to raise a business event, and the actions
to take when you raise it.
Constraint Use an extensible exeld to constraint a sales order aribute. Use a constraint to constrain
an extensible exeld.
◦ Order Import
◦ Transportation Management
◦ Accounts Receivables
◦ Purchasing
1540
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Set Up Description
◦ Receiving
6. Web Service. If you use one of these web services, then manually update your extensible exeld denition in
the web service payload.
◦ CreateOrder
◦ FulllOrderService
◦ FulllmentResponseService
7. Schedule New Process. Use scheduled process Import Oracle Fusion Data Extensions for Transactional
Business Intelligence to make your extensible exeld is available in area Subject Areas of Oracle Transactional
Business Intelligence.
Related Topics
• Overview of Importing Orders into Order Management
For guidelines that describe how to use an extensible exeld in a business rule, see the Guidelines for Creating
Business Rules topic.
1541
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Dene Segments
Note.
• New segments you create. To simplify setup and maintenance, use the same value for the Code aribute and
the API Name aribute. You use API Name throughout the setup, such as during integration setup, with web
services, business rules, business intelligence, and so on. You can't modify Code or API Name after you create
the segment.
• Segments that already exist. Don't modify API Name. Extensible exeld logic examines API Name. If its
empty, then the logic uses the value in Code, so it isn't necessary to dene API Name. If you do modify API
Name, then your exeld might fail with unexpected results at run time.
1542
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• Enter a unique code, name, and description for each segment. The Order Management work area doesn't
display these values, so use whatever nomenclature is most helpful to you during setup and maintenance.
• Don't include spaces in the Code aribute. Spaces will cause a run time error.
Apply guidelines when you use the order import template to import data for an extensible exeld.
• Assign the Table Column aribute of each segment so it references the correct column in the order import
template.
• Add a comment in Excel to document your set up.
• Use tab DOO_ORDER_HDRS_ALL_EFF_B_INT to capture extensible exeld details for order headers.
• Use tab DOO_ORDER_LINES_ALL_EFF_B_INT to capture extensible exeld details for fulllment lines.
• Use columns, such as ATTRIBUTE_CHAR1, to capture details for each aribute.
• Don't modify tab names or column names. Instead, add a comment.
You can't dene an extensible exeld on the order line entity. You can dene one only on the order header entity or
the fulllment line entity. The template uses the phrase DOO_ORDER_LINES, but it uses details that you add on tab
DOO_ORDER_LINES_ALL_EFF_B_INT to interact with extensible exelds on the fulllment line, not on the order line.
For details, see the Import Orders into Order Management topic.
This example illustrates how to set up the Compliance Info segment that references column ATTRIBUTE_CHAR1.
1543
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Add extensible exeld details to the payload that Order Management uses to communicate with the web service.
• Get an example payload from the Example Web Service Payloads That Integrate Order Management topic. A
range of examples are available, such returns, coverage, congurations, and so on. These payloads include
most of the sales order data that you require.
• If you create your own payload, then create it according to the WSDL denition that the payload requires. For
details, see the Use Your Own Payload to Import Extensible Flexelds topic.
• Run the Publish Extensible Flexeld Aributes scheduled process.
1544
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• Copy extensible exeld data from the log le that the scheduled process creates into the XSD le that contains
your payload. Copy this data onto each object that requires extensible exeld data. This approach helps to
keep your channel system synchronized with the set up in Order Management.
• Use the ADF import service. Don't use the SOA import service.
Here's an example payload that copies one section of code from the log le into the XSD le.
For details, see the Overview of Using Web Services to Integrate Order Management topic.
Use an extensible exeld when you integrate with some other Oracle Fusion Application, such as Pricing, Receivables,
Shipping, Receiving, or Purchasing. You set up a service mapping that's similar to a service mapping that you set up for
Oracle Fusion Pricing. You use an extensible exeld to store values that the service mapping requires.
1545
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
• Copy the name of the view object from the log le. The service mapping uses the view object to get data from
your extensible exeld. Use the log le that the Publish Extensible Flexeld Aributes scheduled process
creates.
• Use the _Custom sux when you dene each new entity.
• Use an integration algorithm to implement complex logic. For example, assume you must concatenate an
item with the coverage that covers the item, add quantity, then store the results in a descriptive exeld for
Accounts Receivable. You would use an integration algorithm to implement this requirement.
1546
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
• Include an If statement that makes sure each context and segment that your extension references exists and
contains a value. If you don't check for missing objects and empty values, then your extension might fail with
unpredictable results.
• Use the getOrCreateContextRow method to create or update a value in an extensible exeld. If the object
doesn't exist, then this method creates it, so it isn't necessary to determine whether the object exists before you
use this method to perform an update.
• Use Context Code when you reference an extensible exeld context.
• Use API Name when you reference an extensible exeld segment. If you don't specify API Name when you set
up the extensible exeld, then use Segment Code but with underscores ( _ ) instead of spaces ( ).
• Your Groovy code must traverse the context and the segment to get all data from the extensible exeld.
Here's an example that uses a while statement to traverse all data.
def complianceDetails = header.getOrCreateContextRow("ComplianceDetails");
complianceDetails.setAttribute("_ComplianceReason", "This has been set by pre submit extension.");
1547
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
while( lines.hasNext() ) {
def line = lines.next();
def inventoryItemId = line.getAttribute("ProductIdentifier");
def orgId = line.getAttribute("InventoryOrganizationIdentifier");
def item = getItem(inventoryItemId, orgId);
if( "Y".equals(hazardous) ) {
// get details for fulfill line context PackShipInstruction
If your fulllment system needs data that the predened aributes in a sales order don't provide, then use a value from
an extensible exeld as the criteria for seing the default value in some other sales order aribute.
Assume you set up an extensible exeld named Sample Requested. Here's the values it can contain.
• Complimentary
• Charge
• No Sample
• If the value is Complimentary or Charge, then add a fulllment line for the sample item.
You can then set up a rule that populates price details for the sample lines according to whether the value is
Complimentary or Charge.
Make sure you run the defaulting rule during one of these types of transformations when you process the
transformation rule. You can't default an aribute value into an extensible exeld.
Pretransformation Use an extensible exeld when some other transformation logic requires the default aribute
value.
For example, if you must use the defaulted aribute value to determine whether to add a free
sample item during transformation, then dene a pretransformation rule that sets the default
value.
Postransformation Use when transformation must occur before you run your defaulting rule.
For example, if you plan to add an item during transformation, and you also plan to use an
extensible exeld aribute on the order header to determine the defaulted value to set for the
new fulllment line.
1548
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
• Identify your requirements for change management. For example, determine whether the orchestration
process must compensate when an extensible exeld value changes, and the action to take during
compensation, such as scheduling, calling Accounts Receivables, and so on.
• Compensate when a value that the orchestration process references changes.
◦ Any extensible exeld. Enable the Use Flexeld Aributes option on the header of the orchestration
process denition.
◦ A specic extensible exeld. Enable the Use Flexeld Aributes option in the Change Management
area of the orchestration process denition. Add it to the orchestration process step that references the
extensible exeld. Also dene a compensation paern on this step.
1549
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Use the compensation paern to specify the action to perform, such as Cancel, Create, Update, and so
on, depending on the value that changes. You can congure your set up to send an update when a single
value changes and to skip sending an update when other values change. This approach provides more
detailed control regarding the compensation you perform.
pseudocode:
If segment3 changes, then cancel task x, and then recreate task x.
If segment4 changes, then do nothing.
If segment5 changes, then call an update service.
For a detailed code example, see the Compensate Sales Orders That Change topic.
◦ To ignore changes to all extensible exeld values, make sure Use Flexeld Aributes for each step in the
Change Management area isn't enabled.
Change management ignores each change that the Order Entry Specialist makes to an extensible exeld value that
you dene on the sales order header.
Modify Reports
1550
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
• The Order Entry Specialist can use the Sales Order report when creating or viewing a sales order.
• Add extensible exeld data to the report.
◦ Install Oracle BI Publisher Desktop,
◦ Use the Edit Sales Order Report action in BI Publisher. This action displays Sales Order Report in rich text
format so you can modify it.
◦ Right-click a eld, then click Copy.
◦ Use BI Publisher Properties to specify the source that the report uses to display data for the eld.
Use this format.
1551
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
<?context/segment?>
where
◦ context. Name of the extensible exeld context.
◦ / (forward slash). You must use the forward slash between context and segment.
◦ segment. Name of the extensible exeld segment.
◦ You must use a set of question marks ( ?? ) to enclose context/segment.
◦ You must use a set of angle brackets ( < > ) to enclose the question marks.
For example, assume you dene an extensible exeld that uses Context1 to store details about trade
compliance, and SegmentA to store the compliance description. Here's the code you use.
<?Context1/SegmentA?>
Modify Analytics
Oracle Transaction Business Intelligence (OTBI) provides analytic reporting. You can display extensible exeld data in
OTBI.
1552
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
• Enable the BI Enabled option when you dene your extensible exeld.
• Run scheduled process Import Oracle Fusion Data Extensions for Transactional Business Intelligence. This
process updates OTBI so it displays your extensible exelds in area Subject Areas in OTBI.
• Add your extensible exelds from Subject Areas into a report in OTBI.
• Here's the format that OTBI uses.
Category_Context
For example.
1553
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
where
◦ Additional Fulfillment Line Information is the category
◦ Additional Details1 is the context
Related Topics
• Overview of Importing Orders into Order Management
Set Up
Set Up Extensible Flexelds in Order Management
Set up an extensible exeld in Order Management Cloud.
In this example, set up an extensible exeld so the Order Entry Specialist can view sales order status from the source
order.
1554
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
This topic includes example values. You might use dierent values, depending on your business requirements.
Aribute Value
Notice that the search results displays a list of predened contexts. For this example, you will add a new
context.
7. Click Actions > Create.
8. On the Create Context page, set values.
Aribute Value
Code SourceLineInfo
Values for some aributes, such as Code, automatically populate. In general, don't modify the predened
values.
9. On the Context Usages tab, click Actions > Create, set the value, then click Save.
1555
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
Aribute Value
Name Status
Code Status
Table Column
ATTRIBUTE_CHAR1
You can use choose any column. Choose a column you aren't already using to store some
other value.
To view the values that are available, click the down arrow, then click Search. In the Search
and Select dialog, remove any values that display in the Name aribute, then click Search.
Prompt Status
1556
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Notice that the Category Details area populates the list in the Associated Contexts tab.
2. In the Associated Contexts tab, click Actions > Select and Add.
3. In the Select and Add dialog, in the Name aribute, enter SourceLineInfo, which is the context you created
earlier in this topic, then click Search.
4. In the search results, immediately above OK, click the row, then click Apply > OK.
5. On the Edit Extensible Flexeld page, click Save.
6. In the Category Details area, click Pages.
7. On the Pages tab, click Actions > Create.
Aribute Value
Code SourceLineInfo
Don't include spaces.
Aribute Value
Name SourceLineInfo
6. In the search results, click the row that contains SourceLineInfo in the Name column, then click Apply > OK.
7. On the Edit Extensible Flexeld page, click Save and Close.
1557
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Column Value
extensible_exeld_example_payload.xml includes code that's part of the payload that Order Management creates for
the sales order when it submits a sales order that includes an extensible exeld. It includes the XML that denes the
namespace. Click the Download Files link in the Related Topics section at the end of this topic to access this le.
• Context Code determines SourceLineInfo.
• Segment API Name determines ns22:status.
• The status value is FRAUD_HOLD. You will conrm this value later when you create a sales order.
• For details about how to determine aribute names in the namespace for an extensible exeld, see Document
ID 2195245.1 (How to Include EFF Aributes in the Order Creation Payload - Invoking Web Service) on My Oracle
Support.
1558
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
ORDER_NUMBER 48030
FULFILL_ LINE_NUMBER 1
CONTEXT_CODE SourceLineInfo
Related Topics
• Download Files
• How to Include EFF Aributes in the Order Creation Payload - Invoking Web Service
• Flexeld Segment Properties
1559
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
Status Succeeded
1560
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
The Category Hierarchy and Precongured Context Values aren't available for these extensible exelds.
1561
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
<ns8:Category>DOO_HEADERS_ADD_INFO</ns8:Category>
<ns8:SourceTransactionLineIdentifier>1</ns8:SourceTransactionLineIdentifier>
<ns8:SourceTransactionScheduleIdentifier>1</ns8:SourceTransactionScheduleIdentifier>
<ns12:HeaderEffBPREVIOUS_5FSO_5FREFprivateVO>
<ns8:ContextCode>PREVIOUS_SO_REF</ns8:ContextCode>
<ns22:locationname>West Coast</ns22:locationname>
</ns12:HeaderEffBPREVIOUS_5FSO_5FREFprivateVO>
</ns2:AdditionalHeaderInformationCategories>
<ns2:AdditionalFulfillmentLineInformationCategories
xsi:type="ns12:j_FulfillLineEffDooFulfillLinesAddInfoprivate"
xmlns:ns12="http://xmlns.oracle.com/apps/scm/doo/processOrder/flex/
fulfillLineCategories/"xmlns:ns22=http://xmlns.oracle.com/apps/scm/doo/processOrder/flex/
fulfillLineContextsB/
xmlns:ns8="http://xmlns.oracle.com/apps/scm/doo/processOrder/model/">
<ns8:Category>DOO_FULFILL_LINES_ADD_INFO</ns8:Category>
<ns8:SourceTransactionLineIdentifier>1</ns8:SourceTransactionLineIdentifier>
<ns8:SourceTransactionScheduleIdentifier>1</ns8:SourceTransactionScheduleIdentifier>
<ns12:FulfillLineEffBADD_CONTEXT_HEREprivateVO>
<ns8:ContextCode>ADD_CONTEXT_HERE</ns8:ContextCode>
<ns22:ADD_SEGMENT_HERE>Working</ADD_SEGMENT_HERE>
</ns12:FulfillLineEffBADD_CONTEXT_HEREprivateVO>
</ns2:AdditionalFulfillmentLineInformationCategories>
</ns2:OrchestrationOrderRequestLine>
where
For example.
<ns2:AdditionalFulfillmentLineInformationCategories
xsi:type="ns12:j_FulfillLineEffDooFulfillLinesAddInfoprivate"
xmlns:ns12=http://xmlns.oracle.com/apps/scm/doo/processOrder/flex/fulfillLineCategories/
xmlns:ns22=http://xmlns.oracle.com/apps/scm/doo/processOrder/flex/fulfillLineContextsB/
xmlns:ns8="http://xmlns.oracle.com/apps/scm/doo/processOrder/model/">
<ns8:Category>DOO_FULFILL_LINES_ADD_INFO</ns8:Category>
<ns8:SourceTransactionLineIdentifier>1</ns8:SourceTransactionLineIdentifier>
<ns8:SourceTransactionScheduleIdentifier>1</ns8:SourceTransactionScheduleIdentifier>
<ns12:FulfillLineEffBPCTESTAUGprivateVO>
<ns8:ContextCode>PCTESTAUG</ns8:ContextCode>
<ns22:pctestaugseg1>Working</pctestaugseg1>
</ns12:FulfillLineEffBPCTESTAUGprivateVO>
</ns2:AdditionalFulfillmentLineInformationCategories>
</ns2:OrchestrationOrderRequestLine>
where
Notice the value for the FulllLineEBPCTESTAUGprivateVO virtual object. You will verify it later.
2. Use ReceiveOrderRequestService to import the payload. For details, see the Overview of Using Web Services to
Integrate Order Management topic.
1562
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
1563
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
◦ On the Overview tab, in the Denition Parts area, click the link next to J_FulllLineEFFDooFulllLinesAdd.
1564
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
<xsd:import schemaLocation="https://eczc-test.scm.em2.oraclecloud.com:443/soa-infra/services/
default/DooDecompReceiveOrderExternalComposite/soa-cp/xml/sdoXML.xsd" namespace="commonj.sdo/
xml"></xsd:import>
<xsd:import schemaLocation="https://eczc-test.scm.em2.oraclecloud.com:443/soa-infra/services/
default/DooDecompReceiveOrderExternalComposite/soa-cp/xml/sdoModel.xsd" namespace="commonj.sdo"></
xsd:import>
<xsd:include schemaLocation="j_FulfillLineEffCategories.xsd"></xsd:include>
<xsd:complexType name="j_FulfillLineEffDooFulfillLinesAddInfoprivate">
<xsd:annotation>
<xsd:appinfo source="http://xmlns.oracle.com/adf/svc/metadata/">
<key xmlns="http://xmlns.oracle.com/adf/svc/metadata/">
<attribute>FulfillLineId</attribute>
</key>
</xsd:appinfo>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="j_FulfillLineEffCategories">
<xsd:sequence>
<xsd:element name="FulfillLineEffBLinePrcOverrideprivateVO" type="ns0:Lineprcoverride"
minOccurs="0" sdoXML:dataType="sdo:DataObject"></xsd:element>
<xsd:element name="FulfillLineEffBPCTESTAUGprivateVO" type="ns0:Pctestaug" minOccurs="0"
sdoXML:dataType="sdo:DataObject"></xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="j_FulfillLineEffDooFulfillLinesAddInfoprivate"
type="j_FulfillLineEffDooFulfillLinesAddInfoprivate"></xsd:element>
</xsd:schema>
This value must match the value you included earlier in your import payload. For example,
<ns12:FulfillLineEffBPCTESTAUGprivateVO>.
3. Verify the context code.
Aribute Value
1565
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
Code PCTESTAUG
◦ Verify the search results display your context, then click Actions > Edit.
◦ On the Edit Context page, verify the context contains the values you imported.
On the header.
Aribute Value
Code PCTESTAUG
Aribute Value
Name PCTESTAUGSEG1
Code PCTESTAUGSEG1
On the Context usages tab, make sure a row exists that contains this value.
Aribute Value
1566
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
For example.
If you prefer not to use the Manage Order Extensible Flexelds page, then as an alternative, run a SQL query
against the Oracle database.
select
fdct.application_ID,
fdct.descriptive_flexfield_code,
fdct.context_code,
fdcb.context_identifier,
fdcb.enabled_flag,
fdct.description
1567
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
from
fnd_df_contexts_TL fdct,
fnd_df_contexts_B fdcb
where
fdct.context_code = fdcb.context_code and
fdct.application_id = fdcb.application_id and
fdct.language = 'US' and
fdct.descriptive_flexfield_code = 'DOO_FULFILL_LINES_ADD_INFO';
APPLICATION_ID DESCRIPTIVE_FLEXFIELD_CODE
CONTEXT_CODE CONTEXT_IDENTIFIER ENABLED_FLAG
1568
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Pctestaug is the value of aribute API Name you noted earlier on the Edit Context page.
1569
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
<attribute>EffLineId</attribute>
</key>
</xsd:appinfo>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="ns0:FulfillLineEff">
<xsd:sequence>
<xsd:element name="pctestaugseg1" type="xsd:string" minOccurs="0" nillable="true"></xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="pctestaug" type="Pctestaug"></xsd:element>
</xsd:schema>
This value must match the value you included earlier in your import payload.
If you prefer not to use SoapUI to verify the exeld segment, then as an alternative, run a SQL query against
the Oracle database.
select
fdst.DESCRIPTIVE_FLEXFIELD_CODE,
fdst.CONTEXT_CODE,
fdst.SEGMENT_CODE,
fdst.NAME,
fdsb.SEGMENT_IDENTIFIER,
fdsb.COLUMN_NAME,
fdsb.SEQUENCE_NUMBER
from
fnd_df_segments_tl fdst,
fnd_df_segments_b fdsb
where
fdst.APPLICATION_ID = fdsb.APPLICATION_ID and
fdst.ENTERPRISE_ID = fdsb.ENTERPRISE_ID and
fdst.DESCRIPTIVE_FLEXFIELD_CODE = fdsb.DESCRIPTIVE_FLEXFIELD_CODE and
fdst.CONTEXT_CODE = fdsb.CONTEXT_CODE and
fdst.SEGMENT_CODE = fdst.SEGMENT_CODE and
fdst.language = 'US' and
fdst.descriptive_flexfield_code = 'DOO_FULFILL_LINES_ADD_INFO'
order by
fdst.CONTEXT_CODE,
fdsb.SEQUENCE_NUMBER;
DESCRIPTIVE_FLEXFIELD_CODE
CONTEXT_CODE SEGMENT_CODE NAME SEGMENT_IDENTIFIERCOLUMN_NAME
1570
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
The pctestaugseg1 value in the SEGMENT_IDENTIFIER column must match the value in <ns22:pctestaugseg1>
from your import payload.
Related Topics
• Use SQL to Query Order Management Data
• Example Web Service Payloads That Integrate Order Management
• Guidelines for Using Web Services to Integrate Order Management
1571
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
</soap:Envelope>
where
Related Topics
• Guidelines for Integrating Order Management
Use Rich Text Files to Print Extensible Flexeld Data in Order Headers
Use an RTF le (Rich Text File) to print extensible exeld data in the order header.
1. Download, then install the BI Publisher for Microsoft Word plugin so you can edit the RTF layout. Select a
version that's compatible with your version of Microsoft, such as Oracle BI Publisher Desktop 11.1.1.9.0 for 32 bit
Oce on Windows.
2. Notice the BI Publisher option in the menu bar.
1572
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
3. Set the BI Publisher related properties in the RTF template. See the BI Publisher documentation for details.
1573
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
To view an example rtf le, click Download Files in the Related Links section at the end of this topic, then open
sales_order_report_with_extensible_exeld.rtf.
1574
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
5. Examine the example XML payload that represents a sales order that you send to BIP to create the report.
1575
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
1576
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Related Topics
• Download Files
Business Rules
Use Extensible Flexelds in Transformation Rules
Use a transformation rule to add or change data in a fulllment line. The rule determines information to add or change
according to details that already exist in the fulllment order.
You will create a rule.
• If Preferred customer places a sales order that includes AS54888 Desktop Computer on or before 01/01/2019
12:00 AM, then set Shipment Priority to High Priority, and add a free printer to the shipment.
1577
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Create a rule that references an extensible exeld that stores loyalty details.
For details about how to create a business rule, see the Overview of Using Business Rules With Order Management
topic.
This topic includes example values. You might use dierent values, depending on your business requirements.
1578
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Do it.
1. Create the rule.
◦ In the Navigator, click Setup and Maintenance.
◦ In the Setup and Maintenance work area, go to the task.
• Oering: Order Management
• Functional Area: Orders
• Task: Manage Pretransformation Rules for Sales Orders
◦ On the Manage Pretransformation Defaulting Rules page, click Create New Rule.
◦ Set values.
Aribute Value
1579
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
Description If loyal customer places a sales order that includes AS54888 Desktop Computer on or
before promotion date, then add a free printer to the sales order.
◦ Click And.
◦ In the Create Condition dialog, enter item, wait a moment, then click Item (Item Denition).
1580
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
◦ Click And.
◦ In the Create Condition dialog, enter ordered, wait a moment, then click Ordered Date (Order Header).
◦ Set the operator to is before.
◦ Click Select Date and Time, set it to 01/01/2019 12:00 AM, then click OK > OK.
5. Create the Do statement.
◦ Click Then > Do > New Action > Set a Value, then click .
◦ In the Create Action dialog, enter ship, wait a moment, then click Shipment Priority (Order Header).
◦ Click Search.
◦ In the Search dialog, click Advanced > Search, then notice the dialog displays values you can set for this
aribute.
This functionality helps make sure you specify a value that Order Management can use and understand
for the aribute. For example, Shipment Priority can contain only alphabetic data.
◦ In the Meaning list, click High Priority > OK > OK > Save and Close.
6. Activate and publish your rule.
1581
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
3. To the right of View TransformationDT, click down arrow > Expand > Add Rule > Show Advanced Seings,
then set values.
Aribute Value
Description If loyal customer places a sales order that includes AS54888 Desktop Computer, on or before
promotion date, then add a free printer to the sales order.
Priority Medium
1582
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
headerEFFcat is a OrderTransformationRules.
jHeaderEDooHeadersAddInfoprivateVO
headerEFFCtxt is a OrderTransformationRules.
headerEFFcat.
HeaderEBLoyalty5FStatusprivateVO
1583
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
For example, here's the rule that denes the rst paern, and the cursor is positioned to begin dening the
second paern.
1584
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
1585
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
1586
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
To create a test, click Add Test (green icon underneath the paern), then click Simple Test.
Create the test criteria that identies AS54888 Desktop Computer. If you include optional aributes, then make sure you
include a NOT NULL check for each optional aribute to avoid the NullPointerExceptions runtime error.
Create tests.
1587
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Create them in the same way you created tests when you dened the hierarchy. You must include the double quotation
marks ( " ) as part of the value, where indicated. For example.
1588
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Create the action that adds a fulllment line for the free printer.
Name Value
newItemId 4954L
1589
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Name Value
Assume 4954L identies the printer.
1590
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Do it.
1. On the Manage Posransformation Defaulting Rules page, click Add > Add Rule.
2. Click Expand > Show Advanced Seings, then set values.
1591
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
Priority Medium
PostTransformationRules.FulfillLineVO.InventoryItemId is 4954L
Aribute Value
arName "PackingInstructions"
Related Topics
• Overview of Using Business Rules With Order Management
• How Order Management Transforms Source Orders Into Sales Orders
1592
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Here's the rule you create. For details, see the Overview of Using Business Rules With Order Management topic.
1593
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
orderFulfillLine
where
1594
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Do it.
1. In the Navigator, click Setup and Maintenance.
2. In the Setup and Maintenance work area, go to the task.
1595
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
3. On the Manage Product Transformation Rules page, in the View list, click IF/THEN Rules.
4. Click Expand > Show Advanced Seings.
5. Create a rule.
Aribute Value
Priority Medium
Aribute Value
7. Dene IF statements.
◦ header is a OrderTransformationRules.HeaderVO
◦ line is a header/OrderLine
◦ ine is a header/OrderLine/OrderFulllLine
◦ ineEFFCtgry is a OrderTransformationRules.j_FulllLineEDooFulllLinesAddInfoprivateVO
◦ ineEFFCnts is a OrderTransformationRules.FulllLineEBProductInfoprivate
8. Dene tests.
Make sure you include a hierarchy test when you dene extensible exeld variables. The extensible exeld in this
example is ProductInfo. It contains the segment _CoverageProduct that you will use as a condition in the decision table.
1596
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Note.
• Dene a condition that examines the _CoverageProduct extensible exeld segment and ine.ItemTypeCode
aribute.
• The actions modify the ine.InventoryItemId aribute to transform one product to another product, and also
modify the ine.ReservableFlag aribute.
• A business rule can't modify the value of an extensible exeld.
• The ModifyEntity function modies aribute values.
Related Topics
• Pricing Algorithm
• Service Mapping
• How Service Mappings, Pricing Algorithms, and Matrixes Work Together
• Use Extensible Flexelds to Integrate Order Management with Other Applications
An item aribute typically determines the orchestration process that runs and how to run orchestration process steps.
If no predened aributes meet your requirements, then you can create your own extensible exeld, use it to capture
important details about the item, then use it to select the fulllment steps that run. You can write an assignment rule
that uses extensible exeld data as part of the selection criteria.
Assume.
• You sell an item in your own country and to several other countries throughout the world.
• The item includes details that are protected through international trade agreements.
1597
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• If you ship the item to a location that's outside of your own country, then the trade agreements require you to
consider it an export and screen it for trade compliance.
• You do a needs analysis and determine to create the Trade Compliance Details extensible exeld and add it to
the order header so the Order Entry Specialist can enter the value Export to indicate whether the sales order is
an export.
You will create an assignment rule that references the extensible exeld.
• If the Trade Compliance Details extensible exeld contains the value Export, then assign the fulllment line to
the Screen_Exports_for_Trade_Compliance orchestration process.
1598
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Assume you already set up the extensible exeld and orchestration process. For details, see the Use Extensible
Flexelds in Order Management topic.
This topic includes example values. You might use dierent values, depending on your business requirements.
Aribute Value
1599
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
◦ Click Compliance Info, drag it, then drop it into the IF area.
The phrase Order Fulll Line indicates that the orchestration process you set will process order fulllment
lines.
1600
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Related Topics
• Overview of Using Business Rules With Order Management
Object Description
Paern
Use paerns.
• Root: DooSeededOrchestrationRules.DOOHeader
• header is a DooSeededOrchestrationRules.DOOHeader
• ine is a header/childFLines
• ineEFF is a header/childFLines/exContexts
Test
Use tests.
• ineEFF.context.equalsIgnoreCase("Item_Information") is
DooSeededOrchestrationRules.Boolean.TRUE
• ineEFF.getFlexAributeValue("_Reward_Item") isn't null
Note.
• The equalsIgnoreCase function is optional if you know the absolute case of the
argument.
• The getFlexAributeValue() function on the exContexts object looks up the extensible
exeld value.
1601
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Object Description
Action
Use an Assert New action.
• DooSeededOrchestrationRules.Result (resultObjKey:FLine.fulllLineId)
where
This example uses Tree Mode to maintain the hierarchy rather than explicitly creating the hierarchy. The forward slash
(/) species the hierarchy. For example.
• header/childFLines/flexContexts
In this example, you will dene line selection criteria in an orchestration process to specify which orchestration process
steps to run for each fulllment line. You dene this criterion according to the value that an extensible exeld contains.
You create a rule.
• If the Export Compliance status is Not Passed for an order line, then do a manual examination. Send other
order lines directly to shipping.
1602
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
You will use an extensible exeld to store the value of the compliance status.
1603
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
This topic includes example values. You might use dierent values, depending on your business requirements.
1604
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
5. In the row you just added, in the Line-Selection Criteria column, click Click for Rule.
6. In the Line-Selection Criteria dialog, click Add Rule > Show Advanced Seings, then set values.
Aribute Value
Description If the Export Compliance status is Not Passed for an order line, then perform a manual
examination.
Priority Medium
1605
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
where
• Order Header is the root
• childFLines is a child of Order Header
• exContexts is a child of childFLines and a grandchild of Order Header
This example uses Tree Mode to maintain the hierarchy rather than explicitly creating the hierarchy. Each forward slash
(/) species a hierarchy level.
header/childFLines/flexContexts
where
• header is the root. The root makes sure the rule processes data only in the child object that references the root.
• childFLines is the child. The child makes sure the rule processes data only in the grandchild object that
references the child.
• exContexts is the grandchild.
1606
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
Aribute Value
3. Under the eld that contains header, add a check mark to the option that chooses the test, click Cut > Cut.
For example.
The hierarchy includes the extensible exeld variables, so its not necessary to include tests when you dene
the hierarchy.
4. Click Add Paern.
5. In the eld to the left of Is A, enter the value.
Aribute Value
1607
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Aribute Value
Aribute Value
Aribute Value
This text will select lines only where the exeld context is Compliance.
You will add the test criteria that identies fulllment lines that proceed through compliance testing. If the
aributes you reference are optional, then you include null value checks to avoid a null pointer exception at run
time.
2. Click Left Value.
3. In the Condition Browser, click Expression Builder.
4. In the Expression Builder, click Functions, expand FLineEFF > Context, click equalsIgnoreCase(String), then
click Insert Into Expression.
1608
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
For example.
To navigate the tree structure, expand the folders until you can view the functions of the context object.
FlineEFF is the paern you declared earlier.
The context you expand is a fact in the FlineEFF paern. It includes functions you can use to perform a variety
of calculations. Therefore, the expression you create includes the paern, fact, and function.
5. In the window near the top of the dialog, replace the word String with the context for your extensible exeld
condition. In this example, replace String with Compliance.
1609
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
For example.
1610
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
For example.
• If the value of the exeld aribute named Compliance Status is Not Passed
1611
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
1. In the test you just added, immediately to the right of the Right Value magnifying glass, click the down arrow,
then click Simple Test.
2. Click Left Value.
3. In the Condition Browser, click Expression Builder.
4. In the Expression Builder, click Functions, click FlineEFF.getFlexAributeValue(String), then click Insert Into
Expression.
1612
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
For example.
5. In the window near the top of the dialog, replace the word String with the name of the exeld aribute.
You must use an underscore to prex the aribute name in a function. The aribute name is
Compliance_Status, so you use _Compliance_Status.
1613
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
For example.
where
1614
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• resultObjKey stores the value that this rule uses to identify the fulllment line that requires manual
examination.
• Fline is a fact in the DooSeededOrchestrationRules dictionary that contains fulllment line aributes.
• fulllLineID is a fulllment line aribute.
7. Click OK
8. In the Line-Selection Criteria dialog, click Save.
9. On the Edit Orchestration Process Denition page, click Save.
Related Topics
• Overview of Using Business Rules With Order Management
1615
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Use tree mode to include an extensible exeld in the root hierarchy of an orchestration rule. The hierarchy
includes extensible exeld variables so it isn't necessary to add more tests when you dene the hierarchy.
6. Dene IF statements.
◦ header is a DOOSeededOrchestrationRules.DOOHeader
◦ fline is a header/childFlines
◦ flineEFF is a header/childFLines/flexContexts
where
1616
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
For example.
7. Create an expression that looks up the extensible exeld value in the tests.
◦ flineEFF.context.equalsIgnoreCase("ProductInfo")
1617
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
For example.
8. Create tests.
Code Description
1618
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Code Description
For example.
9. Create an action.
This action creates the result to use for the fulllment line that satises the If statement.
In the Condition Browser, select the aribute. This aribute sets resultObjKey to the run-time value of the
fulllLineId.
1619
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
For example.
Related Topics
• Overview of Using Business Rules With Order Management
For example.
• Assume a customer with a Platinum loyalty status receives a follow up phone call about their order, and that
you dened an extensible exeld named Loyalty that allows the Order Entry Specialist to store the loyalty
status.
• On the change order, assume you dene another extensible exeld named Customer Satisfaction that allows
the Order Entry Specialist to capture the level of customer satisfaction.
1620
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
• If Order Management already sent a request to the fulllment system that schedules a follow up phone call, but
the Order Entry Specialist hasn't made the phone call, then the compensation paern for customer satisfaction
might be Cancel, meaning don't call the customer.
• If the compensation paern for customer satisfaction isn't Cancel, then the rule can continue with the
scheduled phone call.
You use an extensible exeld in a change management rule the same way you use it in a line-selection rule. For details,
see the Use Extensible Flexelds In Line-Selection Rules topic.
Related Topics
• Compensate Sales Orders That Change
Pretransformation PreTransformationRules
Posransformation PostTransformationRules
Transformation OrderTransformationRules
Routing DOOExternalInterfaceLayer
Assignment AssignLaunchRules
1621
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Rule Paerns and Hierarchies You Can Use With Extensible Flexelds
Paerns and Hierarchies for Extensible Flexelds That Display on Order Headers
Paern Description
header is a dictionary.fact
For example.
header is a OrderTransformationRules.HeaderVO
where
my_header_extensible_exeld_category
Here's the format.
header is a dictionary.j_HeaderEDooHeadersAddInfoprivateVO
header is a dictionary.HeaderEffContextNameprivateVO
Note.
• dictionary identies the name of the dictionary that your rule references.
• DOO_HEADERS_ADD_INFO is the category for an order header.
• ContextName identies the name of the context.
. HeaderECategories
my_header header is my_header
_extensible_exed_category
1622
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
Rule Paerns and Hierarchies for Extensible Flexelds That Display on Order Lines
Use rule paerns when your extensible exeld displays on the order line or the fulllment line.
Paern Description
ine is a dictionary.FulfillLineVO
For example.
fline is a AssignLaunchRules.FulfillLineVO
where
For example.
FlineEFFdfaip is a
AssignLaunchRules.j_FulfillLineEffDooFulfilllinesAddInfoprivateVO
where.
For example.
• FlineEFFpsi is a AssignLaunchRules.FulllLineEBPackShipInstructionprivateVO
where
1623
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
where
• dictionary identies the name of the dictionary that your rule references.
• DOO_FULFILL_LINES_ADD_INFO is the category for each order line or fulllment line.
• ContextName identies the name of the context.
. FulllLineECategories
my_ine my_ine is my_
ine_extensible_exed_category
Rule Paerns and Hierarchies for Extensible Flexelds That Display on the General Tab of the Fulllment Line
Use paerns when your extensible exeld displays on the General tab of the fulllment line.
Paern Description
my_ine_details is a dictionary.FulfillLineDetailVO
my_ine_details_extensible_exeld_category
Here's the format.
my_ine_details_extensible_exeld_category is a dictionary.
j_FulllLineDetailEDooFulllLineDetailsAddInfoprivateVO
my_ine_details_extensible_exeld_context
Here's the format.
my_ine_details_extensible_exeld_context is a dictionary.
FulllLineDetailEBContextNameprivateVO
where
• dictionary identies the name of the dictionary that your rule references.
• DOO_FULFILL_LINE_DTLS_ADD_INFO is the category for each fulllment line detail.
• ContextName identies the name of the context.
1624
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
. FulllLineDetailECategories
my_ine_details my_ine_details is my_
ine_details_extensible_exed_category
1625
Oracle SCM Cloud Chapter 10
Implementing Order Management Extend
1626
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
Email
Administer Email Messaging in Order Management
Set up Order Management to send an email message when a business event occurs, such as when the sales order status
changes to Shipped.
Assume you must format the email that Order Management sends when the sales order status changes to Shipped.
Do it.
1. In the Navigator, click Setup and Maintenance.
2. In the Setup and Maintenance work area, go to the task.
◦ Oering: Order Management
◦ Functional Area: Orders
◦ Task: Manage Business Event Trigger Points
3. Optional. Send an email notication when the sales order goes into hold.
◦ On the Manage Business Event Trigger Points page, click the Hold row, then make sure the Active option
in this row contains a check mark.
◦ In the Details area, add a check mark to the Send Email Notication option.
1627
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
4. Optional. Send an email notication when the order header status updates.
◦ On the Manage Business Event Trigger Points page, click the Order Header Status Update row, then
make sure the Active option in this row contains a check mark.
◦ In the Details area, add a check mark to the Raise Event option and the Send Email Notication option
for each Status Value, as necessary.
For example, to send an email notication when the order status changes to Closed, add a check mark to
the options in the Closed row.
The Send Email Notication option depends on the event, so you must make sure you add a check mark
to each option.
◦ Repeat this step for other status values, as necessary.
Administer Email Messaging for Status Updates on Fulllment Lines
Administering Order Management to send an email notication when the status updates on a fulllment line requires
that you modify the orchestration process denition.
1. On the Manage Business Event Trigger Points page, click the Fulllment Line Status Update row, then make
sure the Active option in this row contains a check mark.
2. Click Save and Close.
3. On the Setup page, search for, then open Manage Orchestration Process Denitions.
4. On the Manage Orchestration Process Denitions page, search for ShipOrderGenericProcess.
Each orchestration process controls the status value for each fulllment line, so you must modify the
orchestration process that controls the status value. In this example, you modify the orchestration process that
controls the shipping status value.
5. In the Search Results, click the row that contains ShipOrderGenericProcess, then click Actions > Edit.
6. In the Process Details area, click Status Conditions > Fulllment Line Status Values > Edit Status Rule Set.
7. On the Edit Status Rule Set page, add a check mark to the Notify External System option and the Send Email
Notication option for each Status Value where you must send a notication.
For example, to send an email notication when the fulllment line status changes to Shipped, add a check
mark to the options in the Shipped row.
The Send Email Notication option depends on the Notify External Systems event, so you must make sure you
add a check mark to each option.
8. Repeat step 7 for other status value, as necessary.
Order Management will send an email message when each fulllment line that references this orchestration
process denition reaches the status that you specify in steps 7 and 8. Order Management sends this email to
the customer contact and to the ship-to contact that the sales order references.
9. Repeat steps 4 through 8 for each orchestration process denition in your deployment that updates status
values.
1628
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
Note.
• Use Oracle BI Publisher to modify format, such as add your company name and logo, or modify the template
message text.
• Use the From Address for Email Messages order management parameter to specify the value that Order
Management displays in the email From address. For details, see the Manage Order Management Parameters
topic.
In this example, modify the email template that Order Management uses for a status update.
1. In the Navigator, click Reports and Analytics.
For details, see book Oracle SCM Cloud Creating and Administering Analytics and Reports on My Oracle
Support.
2. On the Reports and Analytics page, click All Folders > Shared Folders.
3. Click Supply Chain Management > Order Management > Fulllment Alerts.
Notice that the work area displays several templates, such as Hold Notication, Sales Order Line Status Update,
and Sales Order Status Update Notication.
4. Click Sales Order Status Update Notication.
5. On the Fulllment Alerts page, click Actions > Edit Report.
6. Under SalesOrderStatusUpdateNoticationLayout, click Edit.
7. Modify the layout and save.
Related Topics
• Manage Order Management Parameters
• Oracle SCM Cloud Creating and Administering Analytics and Reports
Reports
1629
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
1630
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
Try it.
1. In the Navigator, click Reports and Analytics.
For details, see the Reports and Analytics Work Area and Panel Tab topic.
2. On the Reports and Analytics page, click All Folders > Shared Folders.
3. Click Supply Chain Management > Order Orchestration > Transactional Analysis Samples > Past Due
Fulllment Lines, then click the Past Due Fulllment Lines link.
4. Wait for the report to build, then examine the report output.
1631
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
5. Modify search parameters to lter the report, then notice the results.
For example, set Bill-to Customer Name to a value and click Apply.
1632
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
10. On the Catalog page, under My Real Time Fulllment Report, click Open, then examine the report output.
Limitations
If you use a web service to create a data model, then you can't burst the report. To burst means to separate data into
sections, create a separate document for each section, then deliver each document to one or more destinations. For
details, see the Deliver Content topic.
Related Topics
• Overview of Transactional Business Intelligence
• How to Create Folders
• Deliver Content
1633
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
Note.
1634
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
Try it.
◦ Where to sign in, see the How You Access and Modify Report Components topic.
◦
Dierent types of publishers and browser requirements, see the Overview of Transactional Business
Intelligence topic.
3. In the Navigator, click Reports and Analytics.
Some implementations might take you directly to Oracle BI Publisher Enterprise instead of the Navigator. If that
happens, skip to the step where you click Catalog.
4. On the Reports and Analytics page, click Browse Catalog.
On the new tab, make sure the page displays Oracle BI Publisher Enterprise in the upper left corner. If it displays
Oracle Transactional Business Intelligence or Oracle Business Intelligence, then sign out, and sign into the
correct instance of Oracle Fusion Applications. Ask your reports administrator for details.
5. Click Catalog.
6. On the Catalog page, in the Folders area, expand Shared Folders > Supply Chain Management > Order
Management > Sales Orders.
7. In the list area to the right of the Folders area, in the Sales Order Report row, click More > Customize.
The publisher opens the report for editing. For details about using this action, see the How You Modify Copies
of Predened Reports topic.
8. On the Sales Order Report page, click Save Report.
The publisher creates a copy of the report in the Shared Folders/Custom/Supply Chain Management/Order
Management/Sales Orders folder. You will use this copy later.
9. Click Edit.
10. In the dialog that displays, choose the Open with Microsoft Word option, then click OK.
1635
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
Note.
1636
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
◦
You can add labels and aributes to the predened template. For example, you can add the Order Date
label and the OrderedDate aribute.
12. Modify your report.
◦ Change the Contact label. Click the Contact label, and start typing.
◦ To move the SoldToContactPoint aribute down one line, place your cursor at the beginning of
SoldToContactPoint, then press the Enter key.
◦ Click Save.
Don't edit the aribute text. The aribute text reects the data model text and it helps you to see the
relationship between the model and your template.
13. Upload your changes.
Aribute Value
Locale English
1637
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
1. In Oracle BI Publisher Enterprise, navigate to Shared Folders > Supply Chain Management > Order
Management > Sales Orders > Data Model.
2. In the list area to the right of the Folders area, in the row that contains Sales Order Report Data Model, click
Edit.
3. In the Data Model area, click Properties.
4. In the Properties area, click SalesOrderReportDm.xml, then save the le to the same location where you saved
your report template.
Aribute Value
File Name _Supply Chain Management_ Order Management_ Sales Orders_ Data Models_
SalesOrderReportDm. xml
1638
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
Try it.
Examine the screen print earlier in this topic to see where to add it. Place your cursor after the Contact label,
enter a few carriage returns, then start typing in the label.
3. Position your cursor at the end of the SoldToContactPoint aribute, then enter a few carriage returns until the
cursor aligns with the label.
4. In the Word ribbon, click the BI Publisher tab, then click Sample XML.
1639
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
5. In the dialog that displays, choose _Supply Chain Management_Order Management_Sales Orders_Data
Models_SalesOrderReportDm.xml, then click Open.
6. Click the BI Publisher tab then, in the Insert area, click Field.
The Field dialog displays the aributes from your data model.
7. In the Field dialog, click OrderedDate, then click Insert.
8. Click File > Save, then save the le as SalesOrderReport_1.rtf.
You create a new le to avoid an overwrite conict when you upload the template.
Upload Your Template
1. Go back to Oracle BI Publisher Enterprise in your browser.
2. Click Catalog.
3. On the Catalog page, in the Folders area, expand Shared Folders > Custom > Supply Chain Management >
Order Management, then click Sales Orders.
4. In the row that contains the sales order report you created earlier in this procedure, click Edit.
5. On the Sales Order Report page, click Add New Layout.
6. In the Upload or Generate Layout area, click Upload.
7. In the Upload Template File dialog, set values, then click Upload.
Aribute Value
Locale English
1640
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
◦ On the Create Order page, click Actions > Create Document > View.
◦ In the Document dialog, set Template to one of the layouts you created in BI Publisher.
• My Sales Order Report
• My Layout for Sales Order Report
◦ Verify that the report includes the changes you made in Microsoft Word, such as the Ordered Date.
Related Topics
• How You Access and Modify Report Components
• Overview of Transactional Business Intelligence
• How You Modify Copies of Predened Reports
Aachments
Overview of Integrating Aachments in Order Management
Integrate Order Management Cloud so it can receive an aachment as part of a source order from a source system,
then send it to your order fulllment system.
• Your users can use the Order Management work area add an aachment to a sales order, such as a document
that includes requirements for manufacturing, a memo that includes guidelines for negotiating a price, or a
URL to a page that includes item installation instructions.
• Order Management can aachments to your fulllment system.
• Order Management can receive an aachment from a source system and include it as part of a sales order.
• Order Management can't receive an aachment from a fulllment system.
• Order Management can't send an aachment to an order capture system.
You can map aachment aributes from a source order that resides on your source system, to the enterprise business
message (EBM) in Order Management. Order Management then uses the connector to send the aachment to your order
fulllment system.
How it Works
Here's how Order Management processes an aachment it receives from your source system.
1. Uses an enterprise business object (EBO) to get each aachment from the source order.
2. Cross-references each value from the source system to a value that Oracle Fusion Applications use. This
approach provides a single representation of the aachment in the source system and in Oracle Fusion
Applications.
3. Converts the source order to a sales order, then.
◦ Adds aachments from the source order header to the sales order header
◦
Adds aachments from source order lines to sales order lines
The sales order includes fulllment details according to order aributes and product transformation
rules. For details about how Order Management does the mapping, see the Overview of Importing Orders
into Order Management topic.
4. Sends a fulllment request to your fulllment system.
1641
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
If the source system sends a change to an aachment or a source order, such as adding or deleting an aachment
or modifying an existing aachment, and if Order Management already imported the source order, then Order
Management updates the sales order so it reects the change. Order Management can't send an aachment to the
source system, so it isn't necessary to map aachment aributes to a format that the source system understands when
you transform the response that the web service sends to the source system.
1642
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
Section Description
TypeCode coreoom: Aachment/ coreoomTypeCode The type can be File, Text, or URL.
1643
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
URI coreoom: Aachment/ coreoomURI If Type is URL, then URI contains the URL
that locates the document that contains
the aachment content.
Aribute Description
Document Content
Document Content depends on the value of the Type aribute.
1644
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
Order Management sends a fulllment request to your fulllment system to do order fulllment tasks.
• The order fulllment system can access the aachment through the Orchestration Order Aachments Service
web service.
• The GetAachment method of this web service gets the aachments that the order header or fulllment line
references.
• The order fulllment system uses GetAachment to get aachments and map aachment aributes through
the connector to the fulllment system.
Parameter Description
SourceTableName Name of the database table for the entity that the aachment references.
SourcePK1Value First value that identies the entity that the aachment references.
SourcePK2Value Second value that identies the entity that the aachment references.
Use these values for each parameter except for SourcePK2Value. You don't use either value for SourcePK2Value.
The GetAachment method returns the OrchestrationAachmentSDOs as output, which contains aachment details.
1645
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
Here are some topics you can use to get details about the service path, abstract WSDL URL, and so on.
• Aachment Categories
• Aachment Information for Order and Order Lines
• Aachment Interface
• Aachment SDO
• Item Aachments
• Order Aachments
• Shipment Advice Aachment SDO
• Trading Partner Item Aachments
1646
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
These topics are in the Service Data Objects section of book SOAP Web Services for Oracle Supply Chain Management
Cloud on Oracle Help Center.
For background details about aachments, see the Manage Aachments for Order Lines topic.
Related Topics
• Manage Aachments on Order Lines
• Manage Aachments on Order Lines
This step transforms the order management message, including aachment aributes, into a format that the
order fulllment system can process. Note that Order Management doesn't accept aachments from the order
fulllment system, so it isn't necessary to map aachments from the order fulllment system message into a
format that Order Management can use in the response from the order fulllment system.
3. Allow Order Management to send sales order aachments to your fulllment system. Call the AachmentsAM
web service and use it to select and send aachments according to the type of fulllment request and the
aachment category.
4. Call the SalesOrderOrchestrationService web service.
Specify the mapping in the request body to SalesOrderOrchestrationService. For example, here's a request that
get the aachments that one fulllment line references.
<soap:Body>
<ns1:getAttachment xmlns:ns1="http://xmlns.oracle.com/apps/scm/doo/common/attachments/model/types/">
<ns1:dooGetParameters xmlns:ns2="http://xmlns.oracle.com/apps/scm/doo/common/attachments/model/">
<ns2:sourceEntityName>DOO_FULFILL_LINES_ALL</ns2:sourceEntityName>
<ns2:sourcePK1Value>100000045762 </ns2:sourcePK1Value>
<ns2:sourceTableName>DOO_FULFILL_LINES_ALL</ns2:sourceTableName>
</ns1:dooGetParameters>
</ns1:getAttachment>
</soap:Body>
5. Make a call in the connector to the order fulllment system to get the aachments that each fulllment line
references and the corresponding order header.
Social
Administer Social Conversations in Order Management
Enable Oracle Social Network in Order Management Cloud to allow your user community to engage in social
conversations about sales orders.
1. Sign in with a privilege you can use to manage social objects.
1647
Oracle SCM Cloud Chapter 11
Implementing Order Management Email, Reports, Aachments, Social Media
Option Description
Manual Create social conversations only for conversations that the Order Entry Specialist manually
starts for each sales order. To improve performance, choose Manual for most deployments.
Order Management will stamp each aribute and the value for each aribute that you enable into the social
conversation thread. It will also stamp the current aribute value every time the conversation updates.
The term stamp means to impress a snapshot of data onto an object. For example, a sales order might contain
a set of aribute values that exist on a specic date, such as quantity equals four and color equals blue on
October 9, 2019. These values might change at some point, such as during order fulllment. A stamp impresses
the values of this sales order from a specic point in time onto an object, such as a social conversation, so it
provides an audit trail that you can use to communicate the values of aributes that existed in an historical
context.
1648
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
12 Troubleshoot
• Verify the data format and values you must use during order import or with a web service.
• Troubleshoot problems that occur during upgrades or other administrative set up.
• Save data into a data management tool of your choice so you can analyze it.
You create a data model in Oracle Business Intelligence and use it to query the Order Management database.
Assume you must query the database to get a list of users so you can identify the users who are active and the ones
who aren't.
For details about how to use this work area, see the Use Reports and Analytics with Order Management topic.
3. On the Reports and Analytics page, click Browse Catalog.
1649
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
◦ In the Create area, under Published Reporting, click More > Data Model.
You use a data model to set up the SQL you use to query the Oracle database. You can reuse the data
model for dierent SQL queries. It isn't necessary to create and save a separate data model for each SQL
query.
◦ On the Diagram tab, click New Data Set > SQL Query.
◦ In the New Data Set - SQL Query dialog, set values.
Aribute Value
Name My SQL
1650
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Aribute Value
SQL Query You can enter some other query. For example, to get all order headers, enter. . .
To get all order lines, enter. . .
For example.
1651
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
◦ Click OK.
The Diagram tab displays the aributes that your SQL dened.
1652
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
◦ Click View Data, set Rows to 200, click View, click Table View, then examine the output.
6. In the upper-right corner, click Save, then save the output in My Folders.
Create Report
1. On the Data tab, click Save as Sample Data > OK.
2. In the upper-right corner, click Create Report.
1653
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
3. Click Next.
4. On the Select Layout step, enable the Landscape option, enable the Table option, then click Next.
5. On the Create Table step, adjust the layout to t your needs, then click Next.
1654
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
For example, drag and drop columns from the data source to the table.
6. On the Save Report step, enable the View Report option, then click Finish.
1655
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
7. Save the report, name it, such as SQLReport, then examine the results on the report output that displays.
Add a Field
You can't extend the predened data model for Order Management. Instead, you can replace a eld in the report output
with the one you need.
Order Management uses the term item to describe the product your customer buys. The AS54888 Computer is
an example of an item. The predened data model uses the INVENTORY_ITEM_ID column to store the value that
1656
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
identies the item. In this example, you replace INVENTORY_ITEM_ID with ITEM_NUMBER so your report output is
more consistent with this usage.
1. Do steps 1 through 5 from earlier in this topic, except use these values in the New Data Set - SQL Query dialog.
Aribute Value
1657
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Aribute Value
SQL Query
SELECT * FROM fusion.DOO_LINES_ALL
5. Click View Data, set Rows to 200, click View, click Table View, then examine the output.
This problem typically occurs when the SOA server becomes unstable or overloaded and the SOA transactions time
out. Use a query to identify sales orders that remain in Not Started Status or Processing Status but that don't have any
exceptions.
SELECT f.last_update_date,
h.source_order_number,
l.display_line_number,
f.fulfill_line_number,
f.status_code,
f.fulfill_line_id
FROM doo_headers_all h,
doo_fulfill_lines_all f,
doo_lines_all l
WHERE h.header_id =l.header_id
AND h.submitted_flag='Y'
AND l.line_id =f.line_id
AND f.open_flag ='Y'
AND f.creation_date>= sysdate -- Use the date range to meet your needs
AND f.status_code IN ('NOT_STARTED') -- Get orders only in NOT_STARTED status
AND NOT EXISTS
(SELECT OrchestrationGroupEO.TRANSACTION_ENTITY_ID
FROM DOO_WAIT_TASK_DETAILS WaitTaskDetailsEO,
DOO_ORCHESTRATION_GROUPS OrchestrationGroupEO
WHERE WaitTaskDetailsEO.GROUP_ID = OrchestrationGroupEO.GROUP_ID
AND WaitTaskDetailsEO.STATUS_CODE='Active'
AND OrchestrationGroupEO.STATUS ='ACTIVE'
AND TRANSACTION_ENTITY_NAME ='DOO_ORDER_FLINES_V'
AND transaction_entity_id =f.fulfill_line_id
)
1658
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
ORDER BY f.source_order_number;
Use the Force Unlock action to recover these sales orders. For details, see the Unlock Draft Sales Orders topic.
Related Topics
• Use Reports and Analytics with Order Management
• Unlock Draft Sales Orders
1659
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
1. Go to the Order Management work area, then click Tasks > Manage Order Orchestration Messages.
2. On the Manage Order Orchestration Messages page, set values, then click Search.
1660
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Aribute Value
Related Topics
• Overview of Importing Orders into Order Management
• How Order-to-Cash Works with Order Capture Systems
• Overview of Importing Orders into Order Management
1661
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Note.
1662
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
• Get results from a range of diagnostic tests. For example, run the Order Orchestration test to determine
whether.
◦ A shipment set in the sales order includes a line that can't ship, such as a warranty.
◦ Order fulllment is locked because of a force cancel action.
◦ A hold failure occurred.
• Get processing details about the sales order, such as which fulllment tasks have run and their statuses.
•
Assume you must troubleshoot sales order 385081 that you created in the Order Management work area.
Try it.
For details, see the Application Diagnostics Administrator chapter in Security Reference for Common Features
at hps://docs.oracle.com/en/cloud/saas/applications-common/19d/oacsm/application-diagnostics-
administrator-job-role.html#application-diagnostics-administrator-job-role.
2. In the upper-right corner, click down arrow > Run Diagnostics Tests.
3. On the Diagnostic Dashboard page, in the Search for Tests area, enter the value, then click Search.
Aribute Value
4. In the search results, in the row that contains Order Orchestration Details in the Test Name aribute, add a
check mark to the box that's left of the test name, then click Add to Run.
In the Choose Tests to Run and Supply Inputs area, notice that the page added a row.
Order Orchestration No Icon you can click Required Input Values Order Orchestration
Details Are Missing Details
Aribute Value
8. In the search results, click that row that contains your sales order, then click OK > OK.
In the Choose Tests to Run and Supply Inputs area, notice the value.
1663
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Aribute Value
9. In the Test Run Submied dialog, notice the text, then click OK.
1. In the Diagnostic Test Run Status area, click View > Refresh, then examine the values.
Aribute Value
Run By Displays the user you used to sign in, such as DIAG_ADMIN.
The refresh displays all tests that diagnostics has run in the last 24 hours.
2. In the Run / Test / Step Name column, expand the folder, expand the child Order Orchestration Details
folder, then notice the hierarchy that displays.
TestRun_958693F85A9E4A19E0535EBFF20A3CA7
Order Orchestration Details
Diagnostics_Engine_Log
Order Orchestration Data
Aribute Value
4. In the row that contains TestRun_958693F85A9E4A19E0535EBFF20A3CA7, in the Report column, click the
icon.
1664
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
6. In the Diagnostic Test Run Status area, in the row that contains Order Orchestration Details, in the Report
column, click the icon.
Use the analysis area of the report to get details about the current state of the sales order.
1665
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Suggested Recovery
Diagnosis Area
Use the Order Diagnosis area of the report to identify problems that occurred.
Fulllment lines with null delta types. Sales order doesn't have a null delta type.
Shipment set in this order contains Shipment set doesn't have a mix of shippable lines and nonshippable lines.
shippable and nonshippable lines.
Order fulllment is locked because of There are no problems related to a forced cancellation.
force cancel.
Double orchestration exists for There are no problems related to a double orchestration.
fulllment lines in the sales order.
This order has pending action All user request are done and no more changes are allowed.
requests.
No active wait record exists for this There are no problems related to waits.
order.
This order has hold failures. There are no apply hold failures.
1666
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Use the Processing Details area to get details about the processing that Order Management has done for the sales
order, such as order line details, orchestration process details, orchestration process steps that have run and their
statuses, fulllment task details, pending actions, holds applied, error messages, and so on.
Details are extensive. Here's some example data from part of the Step Instances section.
DOO_PROCESS_STEP_ID STEP_NUMBER_NAME
TASK_NAME STEP_INSTANCE_ID
TASK_INSTANCE_ID
GROUP_ID STEP_ACTIVE STEP_STATUS
INSTANCE_ID
300100087585425
213 [1300] Invoice 300100087585434
300100087585430
300100087585407
ACTIVE NOT_STARTED
Create
Invoice
300100087585425
214 [1400] Invoice 300100087585435
300100087585430
300100087585407
ACTIVE NOT_STARTED
Wait for
Invoice
1667
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
DOO_PROCESS_STEP_ID STEP_NUMBER_NAME
TASK_NAME STEP_INSTANCE_ID
TASK_INSTANCE_ID
GROUP_ID STEP_ACTIVE STEP_STATUS
INSTANCE_ID
300100087585425
208 [800] Procure 300100087585436
300100087585431
300100087585407
ACTIVE NOT_STARTED
Wait for
Procurement
300100087585425
209 [900] Reserve 300100087585437
300100087585428
300100087585407
INACTIVE NOT_STARTED
Create
Reservation
300100087585425
210 [1000] Ship 300100087585438
300100087585429
300100087585407
INACTIVE NOT_STARTED
Create
Shipment
Request
300100087585425
211 [1100] Ship 300100087585439
300100087585429
300100087585407
INACTIVE NOT_STARTED
Wait for
Shipment
Advice
300100087585425
204 [400] Pause 300100087585440
300100087585426
300100087585407
INACTIVE NOT_STARTED
Pause
300100087585425
205 [500] Ship Back- 300100087585441
300100087585433
300100087585407
INACTIVE NOT_STARTED
Create to-Back
Back Goods
to Back
Shipment
Request
300100087585425
206 [600] Wait Ship Back- 300100087585442
300100087585433
300100087585407
INACTIVE NOT_STARTED
for Back to-Back
to Back Goods
Shipment
Advice
300100087585425
201 [100] Schedule 300100087585444
300100087585427
300100087585407
ACTIVE COMPLETED
Schedule
300100087585425
203 [300] Supply 300100087585445
300100087585432
300100087585407
INACTIVE NOT_STARTED
Request Orchestration
Supply
300100087585446
213 [1300] Invoice 300100087585455
300100087585451
300100087585413
ACTIVE NOT_STARTED
Create
Invoice
1668
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
DOO_PROCESS_STEP_ID STEP_NUMBER_NAME
TASK_NAME STEP_INSTANCE_ID
TASK_INSTANCE_ID
GROUP_ID STEP_ACTIVE STEP_STATUS
INSTANCE_ID
300100087585446
214 [1400] Invoice 300100087585456
300100087585451
300100087585413
ACTIVE NOT_STARTED
Wait for
Invoice
300100087585446
208 [800] Procure 300100087585457
300100087585452
300100087585413
ACTIVE NOT_STARTED
Wait for
Procurement
300100087585446
209 [900] Reserve 300100087585458
300100087585449
300100087585413
INACTIVE NOT_STARTED
Create
Reservation
300100087585446
210 [1000] Ship 300100087585459
300100087585450
300100087585413
INACTIVE NOT_STARTED
Create
Shipment
Request
300100087585446
211 [1100] Ship 300100087585460
300100087585450
300100087585413
INACTIVE NOT_STARTED
Wait for
Shipment
Advice
300100087585446
204 [400] Pause 300100087585461
300100087585447
300100087585413
INACTIVE NOT_STARTED
Pause
300100087585446
205 [500] Ship Back- 300100087585462
300100087585454
300100087585413
INACTIVE NOT_STARTED
Create to-Back
Back Goods
to Back
Shipment
Request
300100087585446
206 [600] Wait Ship Back- 300100087585463
300100087585454
300100087585413
INACTIVE NOT_STARTED
for Back to-Back
to Back Goods
Shipment
Advice
300100087585446
201 [100] Schedule 300100087585465
300100087585448
300100087585413
ACTIVE COMPLETED
Schedule
300100087585446
203 [300] Supply 300100087585466
300100087585453
300100087585413
INACTIVE NOT_STARTED
Request Orchestration
Supply
300100087585467
213 [1300] Invoice 300100087585476
300100087585472
300100087585419
ACTIVE NOT_STARTED
Create
Invoice
1669
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
DOO_PROCESS_STEP_ID STEP_NUMBER_NAME
TASK_NAME STEP_INSTANCE_ID
TASK_INSTANCE_ID
GROUP_ID STEP_ACTIVE STEP_STATUS
INSTANCE_ID
300100087585467
214 [1400] Invoice 300100087585477
300100087585472
300100087585419
ACTIVE NOT_STARTED
Wait for
Invoice
300100087585467
208 [800] Procure 300100087585478
300100087585473
300100087585419
ACTIVE NOT_STARTED
Wait for
Procurement
300100087585467
209 [900] Reserve 300100087585479
300100087585470
300100087585419
INACTIVE NOT_STARTED
Create
Reservation
300100087585467
210 [1000] Ship 300100087585480
300100087585471
300100087585419
INACTIVE NOT_STARTED
Create
Shipment
Request
300100087585467
211 [1100] Ship 300100087585481
300100087585471
300100087585419
INACTIVE NOT_STARTED
Wait for
Shipment
Advice
300100087585467
204 [400] Pause 300100087585482
300100087585468
300100087585419
INACTIVE NOT_STARTED
Pause
300100087585467
205 [500] Ship Back- 300100087585483
300100087585475
300100087585419
INACTIVE NOT_STARTED
Create to-Back
Back Goods
to Back
Shipment
Request
300100087585467
206 [600] Wait Ship Back- 300100087585484
300100087585475
300100087585419
INACTIVE NOT_STARTED
for Back to-Back
to Back Goods
Shipment
Advice
300100087585467
201 [100] Schedule 300100087585486
300100087585469
300100087585419
ACTIVE COMPLETED
Schedule
300100087585467
203 [300] Supply 300100087585487
300100087585474
300100087585419
INACTIVE NOT_STARTED
Request Orchestration
Supply
1670
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Aribute Value
2. In the Select column, add a check mark mark, then click Add to Run.
3. In the Choose Tests to Run and Supply Inputs area, in the Input Status column, click the icon.
4. In the Input Parameters dialog, set the date range, then click OK.
5. Click Run.
6. In the Diagnostic Test Run Status area, click View > Refresh, then examine the values.
7. Refresh the view until Execution Status displays Completed.
8. In the Order Management Health Check row, click the icon in the Report column.
Your browser displays the report in a separate tab.
9. Examine the results. For example.
◦ Pending recovery for the order
◦ Changes to sales order not successfully processed
◦ Order lines locked by fulllment tasks
◦ Order lines locked by shipping tasks
◦ Order lines that encountered problems while waiting for error recovery
◦ Order lines that are at the Await Billing status even after being billed
◦ Order lines that are missing references
◦ Recover actions not available in Order Management work area but line has an error
◦ Unstable sales orders
◦ Performance of Order Management
Details
Troubleshoot Order Management Setup
Fix problems that occur in your Order Management set ups.
Some solutions use SQL to query the Order Management database. For details about how to query, see the Use SQL to
Query Order Management Data topic.
Setup
1671
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Trouble Shoot
I use the Manage Hold Codes page Use the Manage Task Types page to specify the tasks and services that you can choose for the
in the Setup and Maintenance work hold. You must set the Hold Enabled option to make the service display on the Services tab.
area. When aempting to add a For details, see the Set Up Task Types for Holds topic.
service on the Services tab, the
Select and Add: Services dialog
doesn't display the service I need.
For example, it displays the Create
Shipping service but not the Update
Shipping service.
I go to the Manage Order Lookups The purpose of the Lookup Code aribute is to provide a quick way to scan all the codes. Use
page in the Setup and Maintenance the Meaning or Description aributes to provide more detail.
work area, but I can't add a lookup
code that's longer than 30 characters. The same situation applies for other objects, such as the validation rule set in a processing
constraint. Most of these objects include a code or short name, but also a description that you
I need more characters to accurately can use to elaborate.
describe the code.
I use the ImportSalesOrder web If you use Global Order Promising to schedule your sales order, then create a business rule that
service to import values for the sets the Override Schedule aribute to Yes. This aribute instructs Global Order Promising not
Scheduled Ship Date and Scheduled to schedule the dates but instead to use whatever dates you already have.
Arrival Date aributes of each sales
order. For an example rule, see the Set the Default Value for Scheduled Ship Date topic.
However, Order Management
replaces the imported values with
the value of the Requested Ship Date
aribute. It replaces the values when
it updates the sales order status.
Order Entry
Trouble Shoot
I create a sales order in the Order • Make sure enough stock is available in inventory to reserve and nish the transaction.
Management work area. I search See the Oracle SCM Cloud Using Inventory Management book on My Oracle Support.
for, then add an item on the catalog • Make sure you correctly set up your sourcing rules and ATP rules. Here's some
line, but the line displays an error resources.
message.
◦ Congure Global Order Promising section in the Quick Start for Implementing
Order-to-Cash topic.
No data was retrieved
◦ Dening a Basic Item Sourcing Rule and ATP Rule (Document 2207137.1) on My
Oracle Support.
• Make sure you collected on-hand availability. See article Collecting On Hand Inventory
Levels for Scheduling purposes (Document 2207161.1) on My Oracle Support.
I click Additional Information on Remove the space from the Code aribute, deploy, then publish the extensible exeld. For
the order header or order line details, see the Guidelines for Seing Up Extensible Flexelds in Order Management topic.
when creating a sales order in the
Order Management work area, then
encounter an error that's similar to. . .
1672
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Trouble Shoot
One of my users encounters an error Wait for the server to come back online. If the problem persists after the server is available,
while creating a sales order. then deploy the orchestration process. For details, see the Deploy Orchestration Process topic.
Orchestration process
300000001288069 for order was not
started because it is not deployed or
the server is unavailable.
This problem occurs when you create
or modify an orchestration process
but don't deploy it or when the server
is down.
Order Management creates a new Use the Order Fulllment Response Service instead of OrderImportService or REST API. Order
sales order revision every time we Fulllment Response Service doesn't create a revision.
update an aribute.
For details about Order Fulllment Response Service, see the Web Services You Can Use to
We use OrderImportService or the Integrate Order Management topic.
Sales Order for Order Hub REST API
to import source orders into Order
Management.
We have a scheduling application
in our fulllment system that
periodically calculates the scheduled
ship date, and we use an extensible
exeld on the order line to store the
date.
Our integration creates a new sales
order revision every time we change
the date. We don't want it to create a
revision.
I add my business unit to the If you add your business unit to the Coverage Start Date order management parameter, then
Coverage Start Date order order management uses it to calculate coverage dates.
management parameter.
If you prefer to manually enter the date on the order line, then remove your business unit from
Next, I create a sales order, add a the Coverage Start Date order management parameter.
coverage item, set the Contract Start
Date for the item, then click Submit,
but Order Management changes the
Contract Start Date in the fulllment
view.
1673
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Downstream Fulllment
Trouble Shoot
I encounter an error. Set the payment term when you set up the account.
Data validation failed for the task Order Management typically sets the payment term from the customer account setup when
layer service Create Billing Lines the user creates a sales order, by default. For details about how to specify the payment term,
because required data values were see the Guidelines for Controlling Customer Details in Order Management topic.
not provided. The payment term
in the fulllment line is null. Source As an alternative, instruct your users to create an order revision, then set the payment term on
Order Information: xxxxxx the order header or order line.
This error occurs when the user
doesn't set the payment term on the
order header or order line, and the
customer account setup doesn't set
the payment term.
I encounter an error when I run 1. Sign in with a role you can use to access the Project Financial Management oering.
the Import AutoInvoice scheduled 2. In the Setup and Maintenance work area, open the task.
process.
◦ Oering: Project Financial Management
You must enter a value in either the
Original System Bill-to Customer ◦ Functional Area: Project Billing Base
3. On the Manage Transaction Sources page, in the Name aribute, search for, then open
This error occurs when you set the Distributed Order Orchestration.
value instead of the Id during set up. 4. On the Edit Transaction Source page, in the Customer area, set the option to Id for these
aributes.
◦ Bill-to Customer
◦ Bill-to Address
1674
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Trouble Shoot
◦ Bill-to Contact
For details about the scheduled process, see the Guidelines for Implementing Order-to-Cash
topic.
1675
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Your fulllment system conrmed shipment, but the order status remains at Awaiting Shipping instead of updating to
Shipped.
Its possible that the Send Shipment Advice scheduled process didn't successfully nish. Here's how you can x the
problem.
1. Resubmit the scheduled process for the shipment that shipped the order.
2. Wait for the process to nish.
3. Examine the sales order and conrm the order status is Shipped.
4. If resubmiing the scheduled processes doesn't x the problem, then modify your shipment setup.
Modify Your Shipment Setup
To make sure Order Management updates the order status, you must make sure you interface the shipment to
inventory, and that the shipment is closed.
For this example, assume Vision Operations (V1) is your inventory organization that fullls the shipment.
1676
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Option Value
1677
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Returns
1678
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Trouble Shoot
As an option, run SQL on the Oracle database to conrm the value of the Returnable aribute
on the item and the fulllment line.
SELECT dfla.source_order_number ,
dfla.inventory_item_id ,
dfla.status_code ,
dfla.returnable_flag "Fline Return Flag",
esib.Item_number ,
esib.Returnable_flag "Item Return Flag"
FROM doo_fulfill_lines_all dfla,
egp_system_items_b esib
WHERE source_order_number = '&SOURCE_ORDER_NUMBER'
AND esib.inventory_organization_id = dfla.inventory_organization_id
AND esib.inventory_item_id = dfla.inventory_item_idWord' to retain
layout.]
Features
Transportation Management
Trouble Shoot
Order Management sends a request Use error recovery to retry the task.
to Transportation Management, but
the web service between Integration Don't retry the call through Integration Cloud Service because Order Management can't accept
Cloud Service and Transportation an update from Transportation Management while the task is in error.
Management isn't up and running,
so the Order Management work
area displays an error icon on the
fulllment line.
Transportation Management sends Manually resend the request from Transportation Management.
an update to Order Management,
but Order Management rejects
the update because the fulllment
line isn't on a wait step in the
orchestration process, or the
orchestration process is already
processing another request.
Sales Agreements
1679
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Trouble Shoot
I set the Customer aribute on Make sure you set up a sales agreement for the customer and that its active.
the order header, but no sales
agreements are available in the Sales
Agreement aribute on the order
header when you create a sales order.
Error Messages
Message Solution
Pricing did not apply a sales Make sure you correctly set up the adjustment basis on the pricing term for the sales
agreement adjustment for charge agreement.
Sale Price because it cannot nd
adjustment basis 100010.
Pricing did not apply a tier Make sure you correctly set up the adjustment basis on the pricing term that adjusts price
adjustment on the sales agreement according to tiers for the sales agreement.
for charge Sale Price because it
cannot nd adjustment basis 100010.
Pricing did not apply a tier Make sure you correctly set up the tier basis on the pricing term that adjusts price according
adjustment for the sales agreement to tiers for the sales agreement. Make sure you correctly set up the price element on the tier
to charge Sale Price because it cannot basis.
nd tier basis 100010.
For example, you can't use the QP_NET_PRICE price element as the tier basis for a pricing term
that references a sales agreement.
Get Details
Here's the SQL you can use to get details about sales agreements that you can set on the order header.
SELECT h.CONTRACT_ID, h.ID, h.MAJOR_VERSION, h.VERSION_TYPE,h.CONTRACT_NUMBER, h.CONTRACT_NUMBER_MODIFIER,
h.COGNOMEN CONTRACT_NAME, h.SHORT_DESCRIPTION, h.DESCRIPTION,h.STS_CODE, h.ORG_ID, h.INV_ORGANIZATION_ID,
h.CURRENCY_CODE,h.START_DATE, h.END_DATE,
p.OBJECT1_ID1 PRIMARY_PARTY_ID, p.RLE_CODE FROM OKC_K_HEADERS_VL h, OKC_CONTRACT_TYPES_VL t,
OKC_K_PARTY_ROLES_VL p
where h.CONTRACT_TYPE_ID=t.CONTRACT_TYPE_ID and h.BUY_OR_SELL='S' and t.CONTRACT_CLASS='AGREEMENT'
AND t.INTENT='S' and t.LINE_CLASS='SALES_AGREEMENT' AND h.ID=p.DNZ_CHR_ID(+) AND
h.MAJOR_VERSION=p.MAJOR_VERSION(+) AND p.PRIMARY_YN(+)='Y'
and h.STS_CODE='ACTIVE' and h.VERSION_TYPE in ('C','A') and h.TEMPLATE_YN='N' and h.ORG_ID=<BuId> and
h.CURRENCY_CODE=<CurrencyCode>
and p.OBJECT1_ID1=<PartyId> and <PricingDate> BETWEEN h.START_DATE AND Nvl(h.END_DATE,<PricingDate>)
Here's the SQL you can use to gets details about sales agreements that you can set on the order line.
1680
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
I have to parse this response in an order management extension. I aempt to import the XmlSlurper library to do the
parse but the order management extension displays an error.
To x this problem, see the Extract Details section in the Troubleshoot Problems with Web Services topic.
We deploy Order Management in a language that isn't English, such as Japanese. I set the SetName aribute to
Common Set in an extension.
vcrow.setAttribute("SetName", "Common Set");
1681
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
This problem occurs because Common Set might not be available for your language. Instead, you can set the SetCode
aribute to COMMON.
vcrow.setAttribute("SetCode", "COMMON");
For an example of this usage, see the //Function to get Billing Transaction Type code in subtopic Set the Billing
Transaction Type According to Order Type, in topic Code Examples and Snippets for Order Management Extensions.
Performance
Trouble Shoot
Make sure the aribute value that you transform in a pretransformation rule is empty before
Performance decreases each time you set the value. For details, see the Manage Pretransformation Rules topic.
I add an order line to a sales order
that I create or edit in the Order
Management work area. For example,
I add 25 order lines.
Related Topics
• Overview of Importing Orders into Order Management
• Set Up User Roles and Privileges in Order Management
• Troubleshoot Problems with Congure-to-Order
1682
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
◦ Make sure the search results displays an entry that includes the same URL you specied in the Connector
URL aribute of page Manage Connector Details. For details about this aribute, see the Integrate Order
Management with Source Systems topic.
◦ Make sure the URL correctly identies the connector that resides on the source system. To do this, sign
into your source system, then examine the connector services that are running.
◦ Wait a minute for the log to refresh, requery the Order Orchestration Messages page, then examine the
search results again to determine whether the connection successfully restarted. A network error or some
other problem might cause the connection to momentarily fail. If the connection restarted successfully,
then the list will include details about the events that are associated with the connector URL.
Assume you use a web service to import a sales order. The payload includes. . .
<ns2:ProductNumber>BIGSTORE1111</ns2:ProductNumber>
<ns2:InventoryOrganizationIdentifier>300000001384059</ns2:InventoryOrganizationIdentifier>
The No Matching Row error typically occurs because the Oracle database doesn't contain the same value that your
import contains. In this example, your import inventory item isn't dened in the Oracle database or isn't associated with
the Inventory Organization that the web service payload species.
1683
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
HOUTL.NAME;
Run another query to get the inventory item that's associated with the inventory organization.
SELECT
ItemPEO.INVENTORY_ITEM_ID,
ItemPEO.ORGANIZATION_ID,
HOUTL.NAME,
ItemPEO.ITEM_NUMBER,
ItemPEO.INVENTORY_ITEM_STATUS_CODE
FROM EGP_SYSTEM_ITEMS_B ItemPEO,
HR_ORGANIZATION_UNITS_F_TL HOUTL
where
HOUTL.ORGANIZATION_ID = ItemPEO.ORGANIZATION_ID and
ItemPEO.ITEM_NUMBER = 'BIGSTORE1111';
1684
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
<ns2:ProductNumber>BIGSTORE1111</ns2:ProductNumber> <ns2:InventoryOrganizationIdentifier>300000001384059</
ns2:InventoryOrganizationIdentifier>
This problem occurs because the inventory organization in your import payload isn't dened in the Oracle database.
To x this problem, rst get the list of inventory organizations that the Oracle database currently contains. Run this SQL.
SELECT HOU.ORGANIZATION_ID,
HOUTL.NAME,
HOUCL.CLASSIFICATION_CODE
FROM HR_ALL_ORGANIZATION_UNITS_F HOU,
HR_ORGANIZATION_UNITS_F_TL HOUTL,
HR_ORG_UNIT_CLASSIFICATIONS_F HOUCL
WHERE
HOU.ORGANIZATION_ID=HOUTL.ORGANIZATION_ID AND
HOU.ORGANIZATION_ID =HOUCL.ORGANIZATION_ID AND
HOUCL.CLASSIFICATION_CODE = 'INV'
ORDER BY
HOUTL.NAME;
Next, get details for BIGSTORE1111, which is the inventory organization that your import payload species.
SELECT
ItemPEO.INVENTORY_ITEM_ID,
ItemPEO.ORGANIZATION_ID,
HOUTL.NAME,
ItemPEO.ITEM_NUMBER,
ItemPEO.INVENTORY_ITEM_STATUS_CODE
FROM EGP_SYSTEM_ITEMS_B ItemPEO,
HR_ORGANIZATION_UNITS_F_TL HOUTL
where
HOUTL.ORGANIZATION_ID = ItemPEO.ORGANIZATION_ID and
1685
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
ItemPEO.ITEM_NUMBER = 'BIGSTORE1111';
Assume you use enterprise business message ProcessSalesOrderFulllmentEBM to create a sales order and encounter
this error.
Error Message: {http://xmlns.oracle.com/apps/scm/doo/decomposition/receiveTransform/transformSalesOrder/
DooDecompTransformSalesOrderComposite}ProcessSalesOrderFulfillmentResponseEBM
Fault ID default/DooDecompTransformSalesOrderComposite!11.1.5.0.0*soa_7289e448-8b78-408f-af5c-116da7e1d9d2/
DecompositionProcess/70017-BpThw8-BpSeq55.49-2
Fault Time Sep 16, 2013 11:24:34 AM
Non Recoverable Business Fault :1 env:Server Attribute ORG_ID has invalid value 300000000562209 for service
ProcessOrderValidation.
This error occurs because the payload species value 300000000562209 for aribute ORG_ID, but the
Order Management database doesn't contain this value. The payload also doesn't correctly specify aribute
BusinessUnitReference and aribute BusinessUnitIdentication.
1686
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Assume you're aempting to create a sales order for Chicago Distribution Center, which is in USA2 Business Unit, and
aribute BU_ID for this business unit contains 300000001130053. To x the problem, you must dene these aributes.
Add this code to you payload.
<corecom:BusinessUnitReference>
<corecom:BusinessUnitIdentification>
<!-- BUSINESS UNIT ID-->
<corecom:AlternateObjectKey>
<corecom:ID>300000001130053</corecom:ID>
</corecom:AlternateObjectKey>
</corecom:BusinessUnitIdentification>
</corecom:BusinessUnitReference>
The request seems to run successfully but the Order Management work area doesn't display the sales order. You run a
ow trace in Oracle Enterprise Manager, which displays. . . .
<bpelFault><faultType>0</faultType><selectionFailure xmlns="http://docs.xyz.org/wsbpel/2.0/process/
executable"></selectionFailure></bpelFault>
1687
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
. . .and. . .
Exception is thrown because the from-spec at line 1,616 is evaluated to be empty
. . .and. . .
AssignEILAMServiceInput (faulted)
<details>
<from-spec>
<from>$inputVariable.payload/client:OrchestrationOrderRequest/ns4:SourceTransactionSystem</from>
</from-spec>
<variable>
<message>inputVariable</message>
</variable>
<fault>
<bpelFault>
<faultType>0</faultType>
<selectionFailure/>
</bpelFault>
</fault>
</details>
1688
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
For example.
The problem occurs because your request payload doesn't specify the source system. To x it, add aribute
SourceTransactionSystem to your payload.
<ns2:SourceTransactionSystem>ORA_BM_CPQ</ns2:SourceTransactionSystem>
For example.
<ns1:OrchestrationOrderRequest xmlns:ns2="http://xmlns.oracle.com/apps/scm/doo/decomposition/receiveTransform/
receiveSalesOrder/model/">
<ns2:SourceTransactionIdentifier>PMC-070716-013</ns2:SourceTransactionIdentifier>
<ns2:SourceTransactionNumber>PMC-070716-013</ns2:SourceTransactionNumber>
1689
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
<ns2:SourceTransactionSystem>ORA_BM_CPQ</ns2:SourceTransactionSystem>
For an example that uses ow trace, see the Route Requests from Order Management to Fulllment Systems topic.
Access Denied
I send a request payload that uses the GetOrderDetails operation of web service OrderInformationService to get order
details. . .
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://xmlns.oracle.com/
apps/scm/doo/decomposition/orderDetailServices/orderInformationService/types/" xmlns:ord="http://
xmlns.oracle.com/apps/scm/doo/decomposition/orderDetailServices/orderInformationService/">
<soapenv:Header/>
<soapenv:Body>
<typ:GetOrderDetails>
<!--Zero or more repetitions:-->
<typ:Order>
<!--Optional:-->
<ord:SourceTransactionIdentifier></ord:SourceTransactionIdentifier>
<!--Optional:-->
<ord:SourceTransactionSystem>OPS</ord:SourceTransactionSystem>
<!--Optional:-->
<ord:SourceTransactionNumber>21018</ord:SourceTransactionNumber>
<!--Optional:-->
<ord:SourceTransactionRevision></ord:SourceTransactionRevision>
<!--Optional:-->
<ord:IncludeHeaderAndLineAttributesOnly></ord:IncludeHeaderAndLineAttributesOnly>
</typ:Order>
</typ:GetOrderDetails>
</soapenv:Body>
</soapenv:Envelope>
You use the same user role and password that you use to successfully query and create sales orders in the Order
Management work area, but you receive an error response. . .
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<env:Fault>
<faultcode>env:Server</faultcode>
<faultstring>access denied (oracle.wsm.security.WSFunctionPermission http://server:port/apps/scm/doo/
decomposition/orderDetailServices/orderInformationService/OrderInformationService#GetOrderDetails invoke)</
faultstring>
</env:Fault>
</env:Body>
</env:Envelope>
This problem occurs because you must use privilege Manage Order Details Web Service to access
OrderInformationService, but the user role you used doesn't include this privilege.
1690
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
I try to release a credit check hold through a web service, but the service returns a failed status. For example, the
payload fails even when I use dierent reason codes.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:dood="http://xmlns.oracle.com/apps/scm/doo/decomposition/orderDetailServ
ices/DooDecompOrderDetailSvcComposite">
<soapenv:Header/>
<soapenv:Body>
<dood:ReleaseHoldProcessRequest>
<!--1 or more repetitions:-->
<dood:ReleaseHoldRequestParams>
<dood:SourceOrderSystem>OPS</dood:SourceOrderSystem>
<dood:SourceOrderId>300000005191106</dood:SourceOrderId>
<dood:SourceLineId>300000005191107</dood:SourceLineId>
<dood:SourceHoldCode>SR_TEST</dood:SourceHoldCode>
<dood:HoldReleaseReasonCode>ORA_CREDIT_CHK_FAIL_RESOLVED</dood:HoldReleaseReasonCode>
<dood:HoldReleaseComments>NewTest</dood:HoldReleaseComments>
</dood:ReleaseHoldRequestParams>
</dood:ReleaseHoldProcessRequest>
</soapenv:Body>
</soapenv:Envelope>
You can't release a credit check hold through a web service. You can release it only in the Order Management work area.
Sign into Order Management with a privilege you can use to release the hold, then release it. For details, see the Allow
Users to Close Case Folders topic.
We use the Order Import web service and Receive Order service to import source orders. I need the header details and
order line details for holds that Order Management applies as a result of the import. I need to know whether Order
Management applies the hold and, if not, why not.
The response from Order Import provides details in the callback for each asynchronous operation. Examine the
elements in the response.
ord:ReturnStatus?</ord:ReturnStatus>
<!--Optional:-->
ord:MessageName?</ord:MessageName>
<!--Optional:-->
ord:MessageText?</ord:MessageText>
These elements indicate whether the service successfully processed the sales order or, if not, the errors it encountered
and error text.
The RequestHold operation and Release Pause Tasks operation are asynchronous. You must implement the callback to
receive a response from them.
Related Topics
• Overview of Importing Orders into Order Management
• Set Up User Roles and Privileges in Order Management
1691
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Problem Solution
I encounter an error message. If your order import includes a coverage item, and if your import data already denes pricing
for the item before you do the import, then make sure the extended amount for the charge
Order management did not import components on the coverage line contains a value.
source order TEST_NOV21_02
because of the following error: An Make sure the Duration Header Total aribute on the DOO_ ORDER_ CHARGE_ COMPS_INT
order was not created due to an tab of the order import template contains a value for each coverage line.
unknown error. Check the run time
user interface for processing status.
Number of orders that did not pass
validation: 1. Some of these orders
may be available in the order entry
user interface.
This problem might occur when the
extended amount for the charge
components on the coverage line
doesn't contain a value.
I use OrderImportService to import Manage Customers doesn't support managing contact and contact email for each account.
customer data, including the Contact
aribute and the ContactEmail
aribute. I use the Customer Data
Management page and verify that
the import successfully imported
contact and contact email. I prefer
to manage the contact and contact
email for each account on the
Manage Customers page, but can't
view these aributes on this page.
I encounter an error message. Set the RollupFlag aribute to N on the DOO_ ORDER_ CHARGES_ INT tab of the order import
template.
1692
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Problem Solution
I import a sales order, but then Disable the DOO_ IMPORTED_ DRAFT_ HEADER_UPDATE processing constraint.
encounter an error when I use the
Order Management work area to Note that, if you disable the constraint, and if you import a sales order that you already priced,
change an aribute on the order, and if you then use the Order Management work area to change the quantity or any other
such as price, date, quantity, and so aribute that aects price, then Order Management doesn't reprice the order.
on.
You cannot save the draft Order
because of following error: You
cannot edit this Sales Order because
you can not modify the Price, Tax Or
the Shipping Charge. You cannot edit
this Sale Order because it was created
in a dierent Source System.
1693
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
For example.
Note.
1. On the Scheduled Processes page, in Search Results, click the row that's in error.
2. In the Log and Output area, next to Aachment, click the link.
3. Open the aachment and examine the error message.
For example.
Request Id: 65735
Batch Name: 10810
Source System: null
Order Number: null
Allow Auto Purge: Y
Order PMC_IMP_161208_002 will not be imported due to the following error: An order was not created because
no matching row for attribute ProductNumber with the value AS54888777 was found for the source order with
1694
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
the following details: source order PMC_IMP_161208_002, source order line 1, source order schedule 11.
Check the attribute value, and resubmit the order..
Number of orders that were imported: 0. Check the run time user interface for processing status.
Number of orders that did not pass validation: 1. Some of these orders may be available in the order entry
user interface.
Overall Result : ERROR
This error occur because data in your order import template isn't correct. For example, ProductNumber contains
AS54888777 but the Oracle database contains AS54888. Use SQL to query the Oracle database and identify the correct
data to import.
This error occur because the SOLD_TO_PARTY_ID aribute contains 300,000,001,469,001,777 but the Oracle database
contains 300000001469001. Use SQL to query the Oracle database and identify the correct data to import.
A conguration node is part of a congured item. A congure option is an example of a conguration node. This error
might occur even if the node exists in the structure of a congured 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 denes the structure.
However, if the root of the congured item contains a reference model that you set up as Optional Single Instance, or
if its 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 nd 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 modication won't aect functional behavior. You must
also set order management parameter Use Congurator for Order Import Validation to Yes.
For example, assume the order import data includes M1, M1.M2, M1.M2.SI2, and the Product Information Management
includes this structure for a congured item.
M1
|_M2 (Optional Single Instance)
|_OC1
|_SI2
The order import search won't nd 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.
1695
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
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
This entry indicates that the search couldn't nd a matching congure 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 rst example.
You might also encounter this error in the response to your import payload.
<bpelFault>
<faultType>1</faultType>
<processResponse xmlns="http://xmlns.oracle.com/apps/scm/doo/decomposition/receiveTransform/
receiveSalesOrder/DooDecompReceiveOrderComposite">
<part name="payload">
<processResponse xmlns:client="http://xmlns.oracle.com/apps/scm/doo/decomposition/receiveTransform/
receiveSalesOrder/DooDecompReceiveOrderComposite" xmlns="http://xmlns.oracle.com/apps/scm/doo/decomposition/
receiveTransform/receiveSalesOrder/DooDecompReceiveOrderComposite">
<client:OrchestrationOrderResponse>
<ns4:SourceTransactionNumber xmlns:ns4="http://xmlns.oracle.com/apps/scm/doo/decomposition/receiveTransform/
receiveSalesOrder/model/">HITECH0001</ns4:SourceTransactionNumber>
<ns4:SourceTransactionIdentifier xmlns:ns4="http://xmlns.oracle.com/apps/scm/doo/decomposition/
receiveTransform/receiveSalesOrder/model/">36466323</ns4:SourceTransactionIdentifier>
<ns4:SourceTransactionSystem xmlns:ns4="http://xmlns.oracle.com/apps/scm/doo/decomposition/receiveTransform/
receiveSalesOrder/model/">ORA_BM_CPQ</ns4:SourceTransactionSystem>
<ns4:ReturnStatus xmlns:ns4="http://xmlns.oracle.com/apps/scm/doo/decomposition/receiveTransform/
receiveSalesOrder/model/">ERROR</ns4:ReturnStatus>
<ns4:MessageName xmlns:ns4="http://xmlns.oracle.com/apps/scm/doo/decomposition/receiveTransform/
receiveSalesOrder/model/">env:Server</ns4:MessageName>
<ns4:MessageDescription xmlns:ns4="http://xmlns.oracle.com/apps/scm/doo/decomposition/receiveTransform/
receiveSalesOrder/model/">A cross-referenced value was not found for attribute CURRENCY_CODE in source
system ORA_BM_CPQ.</ns4:MessageDescription>
</client:OrchestrationOrderResponse>
</processResponse>
</part>
</processResponse>
</bpelFault>
1696
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
This problem occurs because the source system, such as CPQ, doesn't require cross references but the Enable Data
Cross-Reference option is enabled on the Manage Planning Source Systems page in the Setup and Maintenance work
area.
• You didn't collect data from the source system for Global Order Promising.
• Your import payload doesn't include the correct UOM code.
1697
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
First, in the Setup and Maintenance work area, open the Review Collected Order Reference Data page, click Units of
Measure, then search for the unit of measure that your import payload references. If you can't nd it, then you must
collect data. For details, see the Quick Start to Implement Order-to-Cash topic.
This SQL determines whether the inventory and data collection tables contain the UOM you're importing.
Next, run SQL to get the unit of measure that the UOM code references.
SELECT uom_code,
uom_class,
base_uom_flag,
unit_of_Measure,
description
FROM inv_units_of_measure_B iuomb,
inv_units_of_measure_tl iuomtl
WHERE iuomb.unit_of_measure_id = iuomtl.unit_of_measure_id
and iuomtl.language = 'US'
ORDER BY UOM_code;
AbC 1 Y EA EACH
Modify your input payload so it uses the UOM_CODE that the query returns. For example, replace. . .
<ns2:OrderedQuantity>1</ns2:OrderedQuantity>
<ns2:OrderedUOMCode>EA</ns2:OrderedUOMCode>
. . . with. . .
<ns2:OrderedQuantity>1</ns2:OrderedQuantity>
<ns2:OrderedUOMCode>AbC</ns2:OrderedUOMCode>
1698
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
As an alternative, modify your input payload or so it uses the OrderedUOM aribute instead of OrderedUOMCode, and
references the value from UNIT_OF_MEASURE instead UOM_CODE.
<ns2:OrderedQuantity>1</ns2:OrderedQuantity>
<ns2:OrderedUOM>EA</ns2:OrderedUOM>
Related Topics
• Overview of Importing Orders into Order Management
• Set Up User Roles and Privileges in Order Management
Assume you run the ProcessOrderRequest operation on the ReceiveOrderRequestService web service at hps://
server:port/soa-infra/services/default/DooDecompReceiveOrderExternalComposite/ReceiveOrderRequestService.
And the order line section of the payload includes this code.
<ns2:OrchestrationOrderRequestLine>
<ns2:BillToCustomerName>ZZZZZZZZZZ</ns2:BillToCustomerName>
<ns2:BillToCustomerIdentifier>8888888888</ns2:BillToCustomerIdentifier>
<ns2:BillToAccountSiteUseIdentifier>9999999999</ns2:BillToAccountSiteUseIdentifier>
Run an SQL query to determine whether these values are correct. For details, see the Use SQL to Query Order
Management Data topic.
BuyingPartyName PARTY_NAME
BuyingPartyId PARTY_ID
BillToCustomerName PARTY_NAME
1699
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Or this error.
An order was not created because a value was not provided for the required attribute BILL_TO_SITE_USE_ID
in the source order with the following details: source order XXXXXXXXX, source order line 1, source order
schedule 1. Provide a value for BILL_TO_SITE_USE_ID, and resubmit the order.
Then run SQL to identify the correct data you should use.
SELECT accounts.party_id ,
accounts.account_name ,
accounts.account_number ,
party_sites.party_site_name ,
sites.cust_acct_site_id ,
sites.cust_account_id ,
site_uses.site_use_code ,
site_uses.primary_flag ,
site_uses.site_use_id ,
site_uses.location ,
1700
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
locations.ADDRESS1 || ' ' || locations.ADDRESS2 || ' ' || locations.ADDRESS3 || ' ' || locations.ADDRESS4
|| ' ' || locations.CITY || ' ' || locations.POSTAL_CODE || ' ' || locations.STATE ||
' ' || locations.country ,
territory.territory_short_name
FROM fusion.hz_cust_accounts accounts ,
fusion.hz_cust_acct_sites_all sites ,
fusion.hz_party_sites party_sites ,
fusion.hz_cust_site_uses_all site_uses ,
fusion.hz_locations locations ,
fusion.fnd_territories_vl territory
WHERE sites.cust_account_id = accounts.cust_account_id
AND party_sites.party_site_id = sites.party_site_id
AND site_uses.cust_acct_site_id = sites.cust_acct_site_id
AND locations.location_id = party_sites.location_id
-- AND site_uses.site_use_code = 'BILL_TO'
-- AND site_uses.primary_flag = 'Y'
AND site_uses.STATUS = 'A'
AND accounts.STATUS = 'A'
AND sites.STATUS = 'A'
AND locations.COUNTRY = territory.territory_code
AND EXISTS
(
SELECT 1
FROM fusion.fnd_setid_assignments
WHERE set_id = sites.set_id
AND reference_group_name = 'HZ_CUSTOMER_ACCOUNT_SITE'
AND determinant_type = 'BU'
)
and upper(accounts.account_name ) like upper('&CUSTOMER_NAME%')
1701
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
BuyingPartyId 300000001469001
BillToCustomerIdentier 300000001469002
BillToAccountSiteUseIdentier 300000001469016
Related Topics
• Overview of Importing Orders into Order Management
• How Order-to-Cash Works with Order Capture Systems
• Overview of Importing Orders into Order Management
If the Update or Close Sales Orders scheduled process hasn't run since Order Management closed the fulllment line,
then Order Management might display sales orders and order lines as open even if it closed all the fulllment lines that
these orders and lines reference. You can run the scheduled process to x the problem.
Assume you administer a call center that's open 9AM to 5PM, and you must process all order headers that Order
Management creates during the open hours. You also must run the process every day for the 2018 scal year, and run
the process after the call center closes.
1702
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
3. In the Schedule New Process dialog, click the down arrow, click Search, then search for the value.
Aribute Value
5. Make sure at least one sales order is open that meets the values you set in the next step. If no sales order meets
the criteria you set, then the process might return an error.
6. In the Process Details dialog, set values.
Aribute Value
Entity Name
Required. Enter one.
Entity ID
To process one.
If you don't enter a start date, end date, or interval hours, then you must enter an entity ID.
You can run a query to get the entity ID.
◦ Start Date. Specify the earliest time and date when Order Management created the
entity.
◦ End Date. Specify the latest time and date when Order Management created the
entity.
For example, if you set Header as the entity, and if you set.
◦ Noon yesterday as the Start Date, and 4PM yesterday as the End Date, then the
scheduled process updates all order headers that Order Management created
yesterday on or after Noon and on or before 4PM.
◦ Noon yesterday as the Start Date but don't specify the End Date, then the scheduled
process updates all order headers that Order Management created on or after Noon
yesterday up to the current time.
◦ Noon yesterday as the End Date but don't specify the Start Date, then the scheduled
process updates all order headers that Order Management created on or before Noon
yesterday.
1703
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Aribute Value
If you enter interval hours, then don't enter a start date or end date.
Interval Hours Period of time in hours to count backward from the time when the process starts. The
scheduled processes uses this interval to identify the entities it processes.
For example, if you enter 8 for interval hours, and if you enter Header, and if you leave
all other aributes empty, then the scheduled process processes all entities that Order
Management created in the eight hours immediately before you click Submit.
For this example, enter 10 in the Interval. The call center is open 9 to 5, which is 8 hours.
You will set the scheduled process to start at 5:30 so the Order Entry Specialists can nish
creating any sales orders that they're currently adding. Using 10 as the interval will pick up
these sales orders, and also any sales orders created after 7:30 AM.
Aribute Value
Frequency Daily
Every 1 Day
8. Click Submit.
• Filter out order lines that are canceled, closed, on backorder, or that Order Management has sent to billing
when you create a business rule that modies a value on a fulllment line that's still in progress.
• Filter out order lines you already fullled. For example, lter out lines you already shipped for outbound lines or
lines you already received and delivered for return lines.
• Filter so you only process changes that you make to billing aributes, for example, on the Billing tab of the
order line, and only if you haven't sent the order line to billing. For example, only modify Accounting Rule,
Payment Terms, Receivable Transaction Type, and so on. Don't modify any other aributes.
1704
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
• Avoid the NullPointerException error. If your logic depends on using an aribute value as part of a calculation,
then lter out lines that include an aribute that doesn't contain a value.
• Filter according to line category code. For example, to process only order lines, not return lines, lter the
categoryCode aribute on the fulllment line according to ORDER. To process only returns, lter it according to
the value RETURN.
• If you use an order management extension, pretransformation rule, or posransformation rule to set the
default values for aributes, then lter out fulllment lines that reference the original return when you populate
the value for the Accounting Rule aribute and Invoicing Rule aribute.
while( lines.hasNext() ) {
def line = lines.next();
Long referenceFlineId = line.getAttribute("ReferenceFulfillmentLineIdentifier");
if (runningLine.getAttribute("FulfillLineStatusCode") == "CLOSED" ||
runningLine.getAttribute("FulfillLineCanceledFlag") == "Y" || //Line is cancelled.
runningLine.getAttribute("FulfillLineShippedQty") != null || //Line is shipped.
runningLine.getAttribute("FulfillLineInvoiceInterfacedFlag") == "Y" ){ //Line is interfaced to invoicing.
// This line isn't valid for setting default values.
continue;
}
}
else {
// This sales order doesn't have a revision.
//Its ok to set the default value for attributes.
1705
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
}
//Put your defaulting logic here.
//line.setAttribute(<attribute name>, <value>);
}
def rowset = flinePVO.findByViewCriteriaWithBindVars(vc, -1, new String [0], new String [0]);
if (rowset.hasNext()) {
def fline = rowset.first();
return fline;
}
}
1706
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
The line-selection criteria lters out lines that can't ship so Order Management only sends shippable lines to the
fulllment system that processes shippable lines, such as the shipping system or Global Order Promising.
Note.
• Use the Manage Orchestration Process Denitions task in the Setup and Maintenance work area.
• Use the line-selection criteria to add the rule.
• Add the rule to each orchestration process step that shippable aects, as necessary. For example, if the item is
a warranty, then it isn't shippable. To lter out the line that isn't shippable, you probably want to add the rule to
each step that references a schedule, reserve, or ship task, such as the Schedule step, the Create Reservation
step, Create Shipment Request step, and so on.
1707
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
• The entire If statement isn't visible in the screen capture. Here are the entire statements.
◦ DooSeededOrchestrationRules.DOOFLine.categoryCode is "ORDER"
◦ DooSeededOrchestrationRules.DOOFLine.shippableFlag is "Y"
• You can't use Visual Information Builder to select fulllment lines. You must edit the orchestration process and
use Oracle Business Rules.
Write a pretransformation rule where you set the value for an aribute, but only after you lter lines. For example.
• If the order line isn't closed, canceled, shipped, or already sent to billing, then set the default value for the
requested ship date aribute.
For details about how to create a posransformation rule, see the Transformation Rules topic.
1708
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
Note.
• Use the Manage Processing Constraints task in the Setup and Maintenance work area.
• Set the Entity aribute to Order Fulllment Line.
• Use the Details area to add your lters.
Assume you don't want your users to modify a fulllment line value, such as Ship-to Site, if the line is closed or
canceled, or if it already shipped or already invoiced.
1709
Oracle SCM Cloud Chapter 12
Implementing Order Management Troubleshoot
You can also create a constraint that prevents the user from submiing a sales order that doesn't include payment
terms for lines that meet a specic criteria. For example, the line isn't a return line, or the line is for an internal transfer.
For details, see the Control Payment Terms section in topic Guidelines for Controlling Customer Details in Order
Management.
Related Topics
• Overview of Creating Order Management Extensions
• Processing Constraints
• Orchestration Processes
• Select Fulllment Lines for Orchestration Process Steps
• Another Example of Using Extensible Flexelds In Line-Selection Rules
1710
Oracle SCM Cloud Glossary
Implementing Order Management
Glossary
action
The kind of access, such as view or edit, named in a security policy.
activity
An event that occurs outside of Order Management Cloud. For example, an orchestration process might include an
activity task type to configure a network router. An activity contains the details needed to finish the task. A user can do
an activity as part of finishingorder fulfillment. Order Management can assign an activity to a user.
approval rule
A statement that specifies an IF THEN condition. The condition determines how and when to route a sales order
through sales order approval. For example, if the order total is greater than $10,000, then get approval from an order
manager.
assemble-to-order (ATO)
An item that warehouse personnel assemble to meet the requirements of a configured item. Warehouse personnel pick
configure options from inventory then assemble them. For example, the Sentinel Laptop Computer is a configured item
that includes configure options, such as hard drive, memory, and processor. Warehouse personnel pick the hard drive,
memory, and processor from inventory shelves, then assemble them into a finished, functioning laptop.
assignment rule
A rule that assigns an orchestration process to fulfillment lines.
attribute
The property of a sales order, order line, fulfillment line, or orchestration process. Customer and Ship-To Address
are each an example of an attribute of a sales order. Quantity is an example of an attribute of an order line. Actual
Start Date is an example of an attribute of an orchestration process. Jeopardy Score is an example of an attribute of a
fulfillment line.
back-to-back fulfillment
A business flow where supply is reserved against a particular sales order until shipping. You create supply for a back-to-
back order using one or more of the following: make, buy, transfer, and reservation of on-hand supply.
1711
Oracle SCM Cloud Glossary
Implementing Order Management
bucket set
A container that holds the overall range of values that a group of buckets defines.
business event
An occurrence in an application or system that might be significant to objects in some other application or system.
Applying a hold on a sales order is an example of a business event.
business object
A resource in an enterprise database, such as an invoice or purchase order.
business rule
A statement that describes how to implement a business policy or make a business decision. For example, a business
rule can enforce a spending policy, constrain a process so it meets a regulatory requirement, calculate a discount or
premium, provide an offer according to customer value, and so on.
business unit
A unit of an enterprise that performs one or many business functions that can be rolled up in a management hierarchy.
catalog line
Area in the Order Lines tab on the Create Order page in order management that you can use to search for an item
before adding it as an order line.
compensation pattern
A rule that you can set on an orchestration process step that specifies the adjustments to make when an order changes.
Undo, Redo, Update, Cancel, and None are each an example of a compensation pattern. For example, assume the
compensation pattern for a Create Shipment step is Redo, and that this step calls the Cancel service and the Create
service. If Order Management receives a change order that includes a new warehouse for the step, then it runs the
Cancel service and the Create service again.
1712
Oracle SCM Cloud Glossary
Implementing Order Management
configuration model
A hierarchical structure that specifies how to represent a configured item. A desktop computer that includes a monitor,
keyboard, mouse, and external speakers is an example of a configuration model. In this example, the desktop computer
is the parent item, and the peripherals are the child configure options.
Configurator
A feature you can use to configure a configured item. Use the Configurator to choose configure options for an item
from a list of available options. It uses constraints to make sure the items you choose fit together correctly. It reduces
configuration errors, which in turn reduces change order processing and rework that's required during order fulfillment.
configure option
A child component of a configured item. A desktop computer is an example of a configured item. The hard drive,
monitor, and mouse are each an example of a configure option. You can choose the value for a configure option from a
list of available options.
configured item
An item that includes one or more configure options that you can configure. A desktop computer where you choose the
hard drive, monitor, and mouse is an example of a configured item. The hard drive, monitor, and mouse are each an
example of a configure option.
connector
A web service that receives a message from order management, transforms the message into a format that your
fulfillment system can understand, then calls the fulfillment system. The connector can also transform the web service
response into an order management message.
cost of change
A numeric value that measures how much a change impacts an orchestration process. For example, the monetary cost
to a company, or the difficulty that's associated with incorporating the change.
coverage
An agreement that adds value to an item by providing support, service, repair, replacement, and so on. Extended
warranty, service level agreement, and software maintenance are each an example of a coverage.
coverage item
An item that adds value by providing coverage for another item. For example, a six month warranty is a coverage item
for a laptop computer, and the laptop computer is the covered item. Extended Warranty, Service Level Agreement, and
Software Maintenance are each an example of a coverage.
covered item
An item that a coverage item covers. For example, a six month warranty is a coverage item for a laptop computer, and
the laptop computer is the covered item.
1713
Oracle SCM Cloud Glossary
Implementing Order Management
credit check
Calculation that determines whether credit that's currently available for the customer account is equal to or greater than
the transaction amount.
cross-reference
A reference that relates business data between an order capture system, order fulfillment system, and order
management. For example, an item cross-reference can create a relationship between an item, such as Widget A, that
resides in a source system, and a representation of the same item in order management. The cross-reference helps to
manage the representation of data across systems.
customer
A customer is someone with whom you have a selling relationship. The selling relationship can result from the purchase
of products and services, or from the negotiation of terms and conditions that provide the basis for future purchases.
data model
The metadata that determines where data for a report comes from and how that data is retrieved.
decision table
A set of IF statements displayed as a table. You can use a decision table when you set up a rule that includes more than
one IF statement.
descriptive flexfield
Expandable fields used for capturing additional descriptive information or attributes about an entity, such as a customer
case. You may configure information collection and storage based on the context.
drop ship
To take the title of a product, but not actually handle, stock, or deliver it, such as when one supplier ships directly to
another or to the buyer's customer.
drop shipment
A type of shipment where the supplier ships directly to your customer. The shipper for a drop shipment that occurs
outside of your organization is usually a 3rd party supplier. The shipper for a drop shipment that occurs inside of your
organization is another business unit.
duty role
A group of function and data privileges representing one duty of a job. Duty roles are specific to applications, stored in
the policy store, and shared within an application instance.
explicit wait
Wait that orchestration applies on an order line for a long-running task. An explicit wait is a planned and expected part
of processing, such as waiting for your fulfillment system to reply with the expected delivery date.
1714
Oracle SCM Cloud Glossary
Implementing Order Management
extensible flexfield
Expandable fields that you can use to capture multiple sets of information in a context or in multiple contexts. Some
extensible flexfields let you group contexts into categories.
extension point
An event that you specify to determine when to run an order management extension.
flexfield
A flexible data field that you can configure such that it contains one or more segments or stores additional information.
Each segment has a value and a meaning.
flexfield segment
An extensible data field that represents an attribute and captures a value corresponding to a predefined, single
extension column in the database. A segment appears globally or based on a context of other captured information.
fulfillment line
A request to fulfill an item. A fulfillment line contains details about the request, such as customer, sales order number,
item, quantity, scheduled ship date, actual ship date, shipping method, and so on. To improve fulfillment, you can
schedule a fulfillment line, reserve product for it, substitute an item for it, change the warehouse, change the shipping
method, change the demand class, and so on.
fulfillment system
A system that resides downstream of order management that's responsible for fulfilling a sales order. For example, a
fulfillment system is responsible for shipping physical goods to your customer, such as shipping a laptop computer
from a warehouse to a customer location.
fulfillment task
A type of task that order management does to fulfill a sales order. Schedule and Ship are each an example of a
fulfillment task. Order management might use more than one orchestration process step to finish a single fulfillment
task.
hold code
An object in Order Management that you can use to control what services the hold can stop from running, and who can
apply the hold. Order Management comes predefined with a set of hold codes that you can use, but you can also add
your own.
1715
Oracle SCM Cloud Glossary
Implementing Order Management
implicit wait
Wait that orchestration applies on an order line when a functional or technical problem occurs during order processing.
An implicit wait allows the user to use a recover action to attempt to recover the order.
import file
Flat file you use as an interface between your source system and order management. You copy source orders into the
file, then use a scheduled process to import orders from the import file into order management.
integration algorithm
Set of rules that uses conditional logic, variables, functions, and code to manipulate data in a service data object (SDO).
An integration algorithm manages an integration between order management and some other application.
interface table
Database table that stores data during data transfer between applications or between databases that reside inside and
outside of an Oracle Fusion application.
internal identifier
Value that order management uses to create a reference between a lookup that you specify for an item, customer, or
reference data, to details from the Product Information Management work area, Trading Community Architecture, or
data collection. The data resides in the Order Orchestration and Planning Repository. For example, if your sales order
uses payment terms, then you must set up the value in Oracle, and then set up collections processing.
internal order
Sales order you use transfer an item from one part of your organization to another part of the same organization. For
example, to transfer an item from Computer Service and Rentals - Warehouse A, to Computer Service and Rentals -
Warehouse B. For another example, to transfer an item from Computer Service and Rentals - Korea Manufacturing, to
Computer Service and Rentals - USA Distribution Center.
inventory organization
A logical or physical entity in the enterprise that tracks inventory transactions and balances, stores definitions of items,
and manufactures or distributes products.
1716
Oracle SCM Cloud Glossary
Implementing Order Management
inventory transaction
A transaction that moves an item into, within, or out of Oracle Fusion Inventory Management.
item
A product you add to a sales order. Order management displays items in the Item column when you add an order line
to a sales order. For example, items for a company that sells hardware might include nuts, bolts, and screws. Items for
a company that sells computers might include hard drives, computer monitors, and desktop computers. Items for a
wireless service provider might include service plans, international calling services, and instant messaging services.
Items for an insurance company might include fire insurance.
item organization
Item definition where inventory balances are not stored and movement of inventory is not tracked in the applications.
Item attributes that carry financial and accounting information are hidden.
jeopardy
Level of risk that the delay of an orchestration process task causes. For example, Low, Medium, or High.
jeopardy priority
Value that describes the level of risk that's associated with delaying a fulfillment task. For example, Low, Medium, or
High.
jeopardy score
Numeric ranking that indicates the severity of a delay in finishing a fulfillment task.
jeopardy threshold
Range of time that a task is delayed.
job role
Sign in that allows each user to access the application features that the user needs to do a job in the application, and to
access the data that these features reference. Order Entry Specialist, Order Manager, Order Administrator, and Supply
Chain Application Administrator are each an example of a job role in order management.
kit
A configured item that includes one or more configure options. The Order Entry Specialist can use the Order
Management work area to modify configure options for a configured item, but not for a kit.
1717
Oracle SCM Cloud Glossary
Implementing Order Management
lead-time
Amount of time that order management needs to finish an orchestration process step, including wait steps and pause
steps.
lead-time expression
Business rule that determines the amount of time you expect an orchestration process step needs to finish. Use it to
calculate planning for an orchestration process. For example, an item that requires complex packing might need a
longer lead-time for shipping.
long-running task
Type of task that includes a wait step, such as a shipping step, receiving step, and so on.
lookup
Value that an Oracle application displays in a list of values. This list typically allows the user to choose a single value,
such as in a drop-down list. The application uses various logic to search for the lookup values that it displays.
offering
Grouping of setup tasks that support specific business functions, such as Sales, Service, and Product Management.
Oracle BI Publisher
An Oracle application that performs the following formatting tasks for Oracle Fusion Payments: 1) formats extracted
data into a message, such as a settlement batch or payment file, that can be understood by the payment system, 2)
supports remittance advice formatting and delivery.
orchestration planning
The process of orchestrating and planning the fulfillment of a sales order. For example, planning dates, planning
shipments, and so on. Replanning is the process of updating an orchestration plan for a sales order to accommodate
a change that occurs to this sales order or in the fulfillment environment. For example, when a customer changes the
quantity of an existing sales order.
orchestration process
A process that includes a sequence of steps. These steps process one or more fulfillment lines during order fulfillment.
An orchestration process coordinates the orchestration of physical goods and activities in a single order, and it
automates order orchestration across fulfillment systems. It contains the instructions that describe how to process an
order, such as the steps and services to use, step dependencies, conditional branching, lead-time information, how to
handle change orders, and the status values to use. It describes how to schedule, reserve, ship, return, and invoice a
sales order.
1718
Oracle SCM Cloud Glossary
Implementing Order Management
orchestration subprocess
Set of sequential steps. Its an orchestration process that another orchestration process references.
order compensation
The process of modifying a sales order so it accurately reflects changes that have occurred to the order. For example,
assume order management receives a change order that requests to ship an item from a different warehouse. Order
management adjusts the order so it uses the different warehouse, updates delivery dates so the dates accurately reflect
the time needed to ship the item from the different warehouse, and so on.
order fulfillment
Part of the order management lifecycle that fulfills a sales order. Order fulfillment typically begins right after the
user clicks Submit in order management. Order management then schedules, ships, and bills the sales order. Order
management communicates with downstream fulfillment systems to finish fulfillment.
order header
Attributes of a sales order that apply to the entire order, such as Customer, Contact, Purchase Order, Business Unit, and
Sales Credits. The attributes that display above the Order Lines area and above the catalog line on the Create Order
page constitute the order header.
1719
Oracle SCM Cloud Glossary
Implementing Order Management
order line
Line on a sales order that specifies details about an item, such as item number, quantity, shipping details, billing details,
and so on. Order management transforms an order line into a fulfillment line when the Order Entry Specialist clicks
Submit.
order orchestration
Order management feature that uses an automated sequence of fulfillment steps to process a sales order through one
or more order fulfillment systems.
order validation
Process that order management does to make sure a sales order meets a set of criteria. For example, to make sure the
sales order includes details for each required attribute.
order-to-cash
Front-to-back flow of details that order management uses to process a sales order through various systems and
applications, from order entry to order fulfillment.
pause task
A task that temporarily stops an orchestration process from running so it can wait for a condition to be met.
pick-to-order (PTO)
An item where warehouse personnel pick configure options from inventory to meet the requirements of a configured
item, but don't assemble them. For example, the Long Life Tea Set is a configured item that includes configure options,
such as steeping pot, pouring vessel, and set of tea cups. Your customer can choose from a variety of choices for each
option when they place their order, but no assembly is required to fulfill the configured item.
predefined
An object, integration, or configuration that comes already defined with an Oracle application and is ready to use with
little or no modification.
1720
Oracle SCM Cloud Glossary
Implementing Order Management
privilege
A grant of access to functions and data; a single, real world action on a single business object.
processing constraint
Rule that controls who can change a sales order, what can change in the sales order, and when the change can occur.
report
An output of select data in a predefined format that's optimized for printing.
requisition
Document generated for a department or an individual to notify the purchasing department of goods or services it is
ordering, their quantity, and the expected delivery time frame.
role
Controls access to application functions and data.
root parent
The item that resides at the top of the hierarchy of an object. For example, if a configured item includes a top level for
computer, a mid level for chassis, and a bottom level for graphics card, then the computer is the root parent of the
configuration, and the chassis is the parent of the graphics card.
routing rule
A rule that determines how to route data through a system or application. It typically uses an IF-THEN structure that
specifies a condition and an action to take depending on the result of the condition. For example, an external interface
routing rule can specify how to route a fulfillment request to a fulfillment system depending on the current state of the
fulfillment environment, such as available inventory, transit time, and so on.
sales order
A contractual document between a sales organization and your customer. You create a sales order in the Order
Management work area. Order management also transforms a source order it receives from a source system into a
sales order that it can submit to order fulfillment.
1721
Oracle SCM Cloud Glossary
Implementing Order Management
scheduled process
A program that you run to process data and, in some cases, generate output as a report.
service mapping
A pricing entity that specifies a group of entities and attributes that a service can retrieve and update. You can use it to
model entities and attributes in a declarative environment without having to write software code. The service mapping
allows an application, such as order management, to price an item without having to get the pricing schema that pricing
uses.
set
Classified and grouped reference data that organizational entities share.
shipment set
A set of order lines that order management ships together as one group. All of these lines ship and arrive on the same
date, although they might be spread across more than one package, depending on packing requirements.
shipment tolerance
The percent of variation between the quantity your customer orders and the quantity you ship. It includes over
shipment and under shipment. Over shipment means you ship more quantity than the customer orders. Under
shipment means you ship less.
shippable item
An item that order management can physically ship to the customer. Order management typically fulfills a shippable
item from a warehouse, and uses a carrier to physically move the item through the supply chain. A parcel service that
uses a truck to transport the item from one location to another location, such as from a warehouse to a residence, is
an example of a carrier. A laptop computer is an example of a shippable item. A warranty for a laptop computer is an
example of a nonshippable item. Other examples of nonshippable items include a subscription to an online magazine,
or a video that your customer can only stream from the cloud.
1722
Oracle SCM Cloud Glossary
Implementing Order Management
source data
Data that you import from an external system into order management.
source order
An order that you import into order management from a source system. Order management transforms a source order
to a sales order when you import it.
source system
System where the sales order was created. Order Management Cloud and an order capture system are each an example
of a source system. A source system provides business application information to an Oracle application. Oracle can use
this information to extract fulfillment data and planning data into data files.
sourcing rule
A specification of the means by which organizations can replenish items.
stamp
To impress a snapshot of data onto an object. For example, a sales order might contain a set of attribute values that
exist on a specific date, such as quantity equals four and color equals blue on October 9, 2019. These values might
change at some point, such as during order fulfillment. A stamp impresses the values of the sales order from a specific
point in time onto an object, such as a social conversation, so it provides an audit trail that you can use to communicate
attribute values that exist in an historical context.
standard item
An item that isn't configured, and that isn't a kit or model.
start-after condition
A condition on a pause task in an orchestration process step that specifies when to pause processing before calling the
next step, or when to resume processing.
status condition
A rule that determines when a sales order reaches a status. Here's an example of a status condition: If the Schedule task
status equals Scheduled, then set the orchestration process status to Scheduled.
subscriber
A system or application that subscribes to a web service or business event. For example, a source system can subscribe
to a business event that sends notifications about changes to sales orders. If a change occurs, then the web service
sends details about the event to the source system in the web service payload. This configuration is similar to a
subscription service that regularly sends details to subscribers, or that sends details when an event occurs.
subscription
An item that provides a product or service that recurs. For example, a one year subscription to a magazine, a 90
day subscription for cell phone service, and a six month subscription for software usage are each an example of
a subscription. A subscription might or might not bill the customer on a recurring basis. Fulfillment does recur
periodically. For example, a weekly magazine fulfills one time each week.
1723
Oracle SCM Cloud Glossary
Implementing Order Management
Subtemplate
An .rtf or .xsl format that is defined once and used multiple times within a single report layout template or across
multiple layout template files.
task type
A group of services that order management uses to do a fulfillment task. It represents a common business function that
order management uses so it can process a sales order from the time a user creates it to the time order management
sends the sales order to an order fulfillment system. Shipment is an example of a task type. Its a set of services that
communicates with a shipping fulfillment system to ship the items that the fulfillment line references.
trade compliance
A set of rules that makes sure trade between countries or regions occurs according to the approved laws and guidelines
that the countries or regions use.
transformation rule
A rule that transforms a source order that resides in your source system to a sales order that resides in order
management.
workflow
An automated process that passes a task from one user (or group of users) to another to view or act on. The task is
routed in a logical sequence to achieve an end result.
1724