Depot Repair: Estimates and Actuals Price Remains 0 When Using Dynamic Formula Pricing (Doc ID 2051966.1)

Last updated on MARCH 08, 2017

Applies to:

Oracle Depot Repair - Version 12.2.3 and later
Information in this document applies to any platform.

Symptoms

On :  12.2.3 version, Depot Setup

ACTUAL BEHAVIOR  
---------------
Trying to use a dynamic formula in a pricelist with a (custom) pricing attribute that uses a call to cs_cost_api.get_item_cost (passing global variables csd_repairs_pub.g_line.org_id and csd_repairs_pub.g_line.inventory_item_id) to retrieve a price that is based on the current cost price in inventory for use in depot repair estimates. The price remains 0 though.

EXPECTED BEHAVIOR
-----------------------
expect this setup to retrieve the cost for the item, then use the dynamic formula to create the selling price (1.2 * cost price in this case) and show that in the depot repair estimates.

STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. Profile settings:

   CSD: Enable Dynamic Formula for Pricing Attributes -> Yes
   CSD: Enable Advanced Pricing -> Yes
   CSD: Use Global Variables for Advanced Pricing ->  Yes



2. Create a new Pricing Attribute:
   Oracle Pricing manager -> setup / attribute management / context and attributes
   - query Context 'Pricing Attribute'
   - add a new attribute e.g. 'JXXEST_ATTR with valueset QP: Number

3. Link the attribute to the pricing context:
   Oracle Pricing manager -> setup / attribute management / attribute linking and mapping
   - use 'Find' to query Order Fulfillment / Pricing attributes
   - select PRICING ATTRIBUTE and click Link Attributes
   - add a row for the new XXTEST_ATTR
   - click Attribute mapping
   - for request type ASO, enter:
      - user source type = PL/SQL API

      - user value string =
NVL(round(cst_cost_api.get_item_cost(1,CSD_REPAIRS_PUB.G_LINE.INVENTORY_ITEM_ID,CSD_REPAIRS_PUB.G_LINE.ORG_ID,NULL,NULL),2),0)

4. Run Tools / Build Attribute mapping rules

5. Create Dynamic formula
  Oracle Pricing manager -> pricing formulas -> formula setup
   - 'XXtest formula' with formula is "1*2'
   - enter formula lines:
      - Pricing Attribute / XXTest_attr, step 1
      - numeric constant component 1.2, step 2
     (so the formula is pricing attribute * 1.2)

     Run Tools / Build Formula Package

6. Create pricelist 'XXTest PL'; for all items, using formula 'XXtest formula'.


7. In Depot Repair, enter repair estimates for an item and use pricelist 'XXtest PL'. Price should default to the item cost * 1.2. But it is defaulted to 0.


Cause

Sign In with your My Oracle Support account

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

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms