My Oracle Support Banner

FA: SCM: OM:Service Mappings And Algorithm Issue on Sales Order line EFF to the Purchase Order Price (Doc ID 2918853.1)

Last updated on JANUARY 04, 2023

Applies to:

Oracle Fusion Order Management Cloud Service - Version and later
Information in this document applies to any platform.


When a sales order is created at line level for an item with an eff value, expectation is to get the Purchase Order(PO) price to be overridden with the EFF value following the run of the Generate Orders ESS process.However , once sales order is populated with the eff value and submitted and PO is created, it is ignoring the groovy script in the algorithm and using the PO price for the item taken from the Blanket Purchase Agreement (BPA). Another flag in PO is getting updated with the value defined in Sales Order fulfillment line EFF  but the price is not getting updated form EFF.


1.OM Extensibility -setup steps:

Define EFFs at line level ex ItemFlag, ItemPrice .Download felxfiled archive and keep it for reference of the attribute name , VO etc.

2.Check the Purchasing Document Lines attributes and keep a note of the Table columns.

3. i.Enable Custom Payloads for Downstream Integration > Check Drop Ship and Invoice .

ii.Under Order Management Configuration> Define service mappings and pricing algorithms.

Service mappings:

FulfillmentIntegration>Create and enter in sandbox>Add Entities FLineEff_Custom>Add custom attributes (choose appropriate types for these attributes) along with FulfillLineId_Custom as primary key for FulfillLineEFF entity. Save.

Sources>PurchaseRequestSource>Add entity FlineEFF_Custom,Type: View Object , View Object to be copied from the downloaded flex field archive>Query Type: Unique identifier , Query Attribute: FulfillLineId >Attribute mappings :Select the custom attributes and update View Object Attribute.

Enter attributes for PurchaseRequestLine. Sending price of the item to purchase request. The purchase request service dictates when we send the override price we also have to pass NegotiatedByPreparerFlag as True.

iii. Services Tab > Select purchaseRequestService >Add entities> select all the required attributes under FlineEff_Custom

Add the DFF attributes where the values are going to be passed in PO . Under PurchaseRequestLine > Like Price, NegotiatedByPreparerFlag etc. attributes based on your requirement. Save and close.

iv.Manage Algorithms under Order Management Configuration> Create Custom Algorithm eg. PRC Custom>Save and add logic

Create variables>Data Type:Data Object>Required checked >Input and Output :Input and Output > Internal Service Schema:FulfillmentIntegration.PurchaseRequestService>Save

Algorithm> Add Step>Conditional Action>Data Sets: Name: FLine, Variable Path : PRCIntegration.FulfillLine, Primary Cardinality: Checked 

Name: PRCLine , Variable Path:PRCIntegration.PurchaseRequestLine, Primary Cardinality: One, Data Set Joins : [FulfillLineId:{FLine.FulfillLineId}]

Name: FLineEFF, Variable Path:PRCIntegration.FLineEff_Custom, Primary Cardinality:Zero or One, Data Set Joins : [FulfillLineId:{FLine.FulfillLineId}]

vi.Add default Action> 

For this example:

//*If FLineEFF is not null then assign value from ItemPrice to Price */


//* If ItemFlag is not null then assign value from ItemFlag to PO Line DFF attribute*/


Test Algorithm>Publish.

4.There are two conditions, one to update an attribute/flag in PO line with the
value set in ItemFlag i.e. Y, and another one is the po unit_price to be
updated from ItemPrice eff.
5.Create Sales Order(SO).
6.Update the ItemFlag in fulfillment line EFF as Y in line.
7.Update ItemPrice  eff value with the price/amount from SO line (or get it
updated using extension - working fine )
9.Generate orders> Search SO> check drop ship PO number > open PO > the flag in
PO gets updated with Y, but the price is captured from Blanket Purchase Agreement (BPA) , not the ItemPrice defined in SO fulfillline EFF




To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!

In this Document

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.