Update Unit Price at Order Line Level

Hi Sir, Ma'am,
Is there a way to enable user to update the Unit Price at Order Line Lever without updating the Price List?
Thanks in Advance,
Nuel

You can also enable the different adjustment (Manaully update allowed) so that you can use the same and update the unit selling price.
This will keep the price list as it is and it will show unit list price for item as Origanl Price.
Regards,
Aks

Similar Messages

  • Manual override option for Unit selling price in Order line level.

    In OM R-12
    Our client wants manual override option for Unit selling price in Order line level.
    But there is no solution available to fulfill this requirment. To be able to manually override the price on a Sales Order line you
    must have defined a manual modifier that qualifies for the Sales Order line in question. Without a suitable manual modifier the price cannot be changed.
    This is current standard functionality.
    Anybody can give some suggestion/workaround to override selling price in Order header level without using the modifiers.
    regards,

    Hi Kashif,
    I'm finding it little difficult to buy Oracle Support's feedback with regards to R12 functionality for direct List Price update without using any modifier (manual or whatever). After all it is Oracle's product and they should know better. But test results in Solution Beacon's Vision 12.0.6 instance (http://www.solutionbeacon.com/tools_r12vision.htm) and documentation updates in R12 (R12.0.4) OM user guide & implementation manuals potray a different picture.
    After your last post, I did a test in Solution Beacon's Vision 12.0.6 instance with following details:
    OM: List Price Override Privilege = "Unlimited Access" at user level
    OM: Discounting Privileges = "None" at user level
    No manual modifiers defined and Order status = "Entered"
    I could display the "List Price" field from folder under Line Items >> Main tab, override the list price to a new value and save. The unit selling price showed the new value based on updated List Price as soon as I tabbed out of the list price field after overriding. After saving it showed the new selling price. _Please note that under Line Items >> Pricing tab there is another "List Price" field and that is not editable_. For such overrides "View Adjustments" (from Line >> Actions) will not show any adjustment details as it is a direct update of list price.
    Also please note that, if "Enforce List Price" checkbox is selected for the order type, the list price cannot be overridden even if the profile option is set to "Unlimited Access".
    Document References:
    Oracle® Order Management User's Guide
    Release 12, Part No. B28099-03, September 2007 >> R12.0.4
    Page No. 10-74
    +Note: Note: If any order line for an order has the Calculate Price Flag value equal to Partial Price or Freeze Price new order level adjustments will not be applied or allowed to be overridden. _The profile option OM: List Price Override  Privilege controls your ability to override the unit list price. If you have this profile set to Unlimited, you may modify the unit list price by editing the current value displayed_. The original list price is saved in a hidden folder field, so you can display it if necessary+.
    Page No. 10-94
    User Procedures
    _A new profile option, OM: List Price Override Privilege controls whether or not you can update the List Price_. It is enabled and updated at the application, responsibility and user level. It is not user visible and updatable. The values include+:
    - View Only: This is the default value. If set to this value, the current behavior is retained, which means unit list price field is protected.
    - Unlimited Privilege: If set to this value, you can override the unit list price field from the main tab and immediately see selling price adjusted accordingly.
    To use Override List Price:
    +1. Navigate to the Sales Orders/Quick Sales Orders window.+
    +2. Enter the header and line information, including the ordered item and quantity, then tab to the next field. The Selling Price and List Price display+.
    +3. If the profile is set to Unlimited Privilege, you can enter a new list price in the List Price field. You can either proceed to the next line or save your work+.
    +4. You can see the new, entered list price, and if there are automatic discounts applied, they will be based on the new list price+.
    +5. If the folder has been modified to show the Original List Price, the original list price displays+.
    +6. To change the List Price again, go to the list price field and enter a new value, replacing a previously entered value. If Audit Trail is enabled for List Price and a reason is required, a window appears to enter a reason and optional comments+.
    Note: Subsequent overrides of the List Price, after the order line is saved, can be captured by Audit Trail, depending on the setup of Audit Trail (entered or booked state) and any processing constraints that have been set up.
    In the OM Implementation Manual also there are notes related to this.
    OM Implementation Manual
    Release 12, Part No. B25975-03, September 2007 >> R12.0.4
    You can refer to page no. 2-59, C-4 etc.
    Thanks
    Supro

  • Sales Order - Line Level Information in Info cube

    Hi BW Guru's,
    We are using the following scenario: -
    Info cube = Sales Order – Line level information (yes, we want to capture the product level sales order information in info cube for our internal reporting purpose)
    ODS = NO. we are not using the same
    Info Source – Same as data source (standard one)
    Data Source – 2LIS_11_VAITM (standard business content data source for sales order information)
    Delta in above data source = contract related information (5 extra fields) – working fine – added as append structure in the data source
    Extractor = Standard using SBIW - Perform setup - SD Sales Order (SD – 11)
    Number of Sales order line records / month = 80,000
    Historical Sales order data to be uploaded = 1 year = 80,000 * 12 = Nearly 1 Million records
    Hardware Configuration = 4 * 750 MHZ, 8 GB RAM
    Please advice on the following things: -
    1) How long it will take to upload 1 million records in BW?
    2) Does our server capacity sufficient enough to take 1 million load?
    3) Which delta procedure should we follow for day to day Sales Order line level data updation? Please advice on data selection procedure.
    4) In case, last month Sales Order is changed, how to reflect the same in our info cube? Please suggest the suitable method.
    Waiting for your reply.
    Thanks
    Rajiv

    Hi Rajiv,
    1) How long it will take to upload 1 million records in BW?
    This depends on your network, on the width of your data record, the performance of your machine, on the settings for communication between BW and R/3 ....
    It can be done in 2 hours, in 3 hours, it can take a whole day. There is no exact answer possible.
    2) Does our server capacity sufficient enough to take 1 million load?
    If your disc space is enough, no problem. If you already loaded your master data, there is not too much space necessary to load the transactional data.
    3) Which delta procedure should we follow for day to day Sales Order line level data updation? Please advice on data selection procedure.
    Just run your initial setup and initialize your delta. Run a daily delta package (this is what most companies do).
    4) In case, last month Sales Order is changed, how to reflect the same in our info cube? Please suggest the suitable method.
    The extractor takes care about this, just post the delta to your cube, that's it.
    Hope this helps,
    regards
    Siggi

  • BAPI_PO_CHANGE to update the Price for the line item not updating the Price

    Hi,
    I am using BAPI_PO_CHANGE to update the Price for the line item. This BAPI is not updating the Price. I am using external cummit also, but the BAPI is not updating price.
    I am passing following data to the BAPI.
    Plant: CQ11
    PO                   Material                Price
    4500002142     TEST_BATCH     12
    Please provide suggestion.
    Regards,
    Jubin.

    Hi,
    check this link...this has sample code
    [http://www.sap-img.com/abap/sample-abap-code-on-bapi-po-change.htm]
    Regards,
    Surinder

  • Updating Unit Price in iProcurement

    Hi All,
    Updating Unit Price in i-proc requisitioned for non stock items.
    To look in to how this should work out.
    Currently users have to create a new requisition as this facility is not available.
    What has to be done on the above said issue..?
    Many thanks in advance and best regards,

    what exactly are you trying to do? Non catalog items? How do you want the price updated? What do you mean by how this should work out?
    Can you clarify your issue?

  • Enabling Points in order line level

    Hi Friends,
    The Requirment is like this..
    If a new system order is booked by sales Administration, i have to validate to check if part number,quantities and enabling points combination should be valid.
    But i don't know what is the enabling points in Order Management.
    Can any one tell me what is the enabling points in order line level .
    Thanks in Advance.
    Shravan Kumar Kota.

    Hi Friends,
    The Requirment is like this..
    If a new system order is booked by sales Administration, i have to validate to check if part number,quantities and enabling points combination should be valid.
    But i don't know what is the enabling points in Order Management.
    Can any one tell me what is the enabling points in order line level .
    Thanks in Advance.
    Shravan Kumar Kota.

  • Unit Cost is not Populating in Sales Order Line Level for OPM Enabled Org

    Dear All,
    This is to inform you that Unit Cost is not populating in Sales Order Lines. Ideally it should pick from OPM financials, but whenever i am running Cost Update it is throwing error. We need to pull out Unit Cost for Sales Analysis Report. Please suggest on the same ASAP. What are the steps needs be followed to populate the Unit Cost. Please suggest.
    Thanks & Regards,
    Patrick

    Hi
    I think it will pick from PRICE list. Why don't to you try by keeping this item in the mentioned Price list.
    Regards
    Raj

  • Sales Order freezes trying to Update Unit Price

    When trying to update the Unit Price on an exisiting Sales Order after pressing the Update button SAP freezes and you have have to crash out of it. It doesn't update the Sales Order at all.
    I have tried using a user and a superuser login details on the client machine and the server but it wont post it.
    Has anyone comes across this situation before?
    Thanks
    Hayden

    Hayden,
    Do you have any add-on running or FMS on the Sales Order form?
    Thanks,
    Gordon

  • Price from Order Line and Price from QP_PREQ_PUB.PRICE_REQUEST is different

    Hi,
    I have trouble in using QP_PREQ_PUB.PRICE_REQUEST to derive the price of an item.
    RDBMS : 11.1.0.7.0
    Oracle Applications : 12.1.3
    From the Pricing Request Viewer or from Order Entry Line, The price lis coming as expected, but not from QP_PREQ_PUB.PRICE_REQUEST API.
    Here are the details -
    Primary Price List - 'Primary'
    Secondary Price List - 'Secondary1' - Item Price 40 (Precedence 150)
    Secondary Price List - 'Secondary2' - Item Price 25 (Precedence 130) , Custom Qualifier Qualifier_Attribute31 = > Attribute1('Yes/No') from Item Master.
    From the application, it is giving 25. Where as using the below code it is giving 40, Can you please advise what could be the issue/fix for it?
    DECLARE
    p_line_tbl QP_PREQ_GRP.LINE_TBL_TYPE;
    p_qual_tbl QP_PREQ_GRP.QUAL_TBL_TYPE;
    p_line_attr_tbl QP_PREQ_GRP.LINE_ATTR_TBL_TYPE;
    p_LINE_DETAIL_tbl QP_PREQ_GRP.LINE_DETAIL_TBL_TYPE;
    p_LINE_DETAIL_qual_tbl QP_PREQ_GRP.LINE_DETAIL_QUAL_TBL_TYPE;
    p_LINE_DETAIL_attr_tbl QP_PREQ_GRP.LINE_DETAIL_ATTR_TBL_TYPE;
    p_related_lines_tbl QP_PREQ_GRP.RELATED_LINES_TBL_TYPE;
    p_control_rec QP_PREQ_GRP.CONTROL_RECORD_TYPE;
    x_line_tbl QP_PREQ_GRP.LINE_TBL_TYPE;
    x_line_qual QP_PREQ_GRP.QUAL_TBL_TYPE;
    x_line_attr_tbl QP_PREQ_GRP.LINE_ATTR_TBL_TYPE;
    x_line_detail_tbl QP_PREQ_GRP.LINE_DETAIL_TBL_TYPE;
    x_line_detail_qual_tbl QP_PREQ_GRP.LINE_DETAIL_QUAL_TBL_TYPE;
    x_line_detail_attr_tbl QP_PREQ_GRP.LINE_DETAIL_ATTR_TBL_TYPE;
    x_related_lines_tbl QP_PREQ_GRP.RELATED_LINES_TBL_TYPE;
    x_return_status VARCHAR2(240);
    x_return_status_text VARCHAR2(240);
    qual_rec QP_PREQ_GRP.QUAL_REC_TYPE;
    line_attr_rec QP_PREQ_GRP.LINE_ATTR_REC_TYPE;
    line_rec QP_PREQ_GRP.LINE_REC_TYPE;
    detail_rec QP_PREQ_GRP.LINE_DETAIL_REC_TYPE;
    ldet_rec QP_PREQ_GRP.LINE_DETAIL_REC_TYPE;
    rltd_rec QP_PREQ_GRP.RELATED_LINES_REC_TYPE;
    x_price_contexts_result_tbl QP_Attr_Mapping_PUB.Contexts_Result_Tbl_Type;
    x_qual_contexts_result_tbl QP_Attr_Mapping_PUB.Contexts_Result_Tbl_Type;
    v_line_tbl_cnt integer;
    I BINARY_INTEGER;
    l_version VARCHAR2(240);
    l_file_val VARCHAR2(60);
    L_MODIFIER VARCHAR2(4000);
    L_ADJUSTMENT_AMOUNT VARCHAR2(300);
    L_MOD_NAME VARCHAR2(240);
    l_unit_price number;
    l_selling_price number;
    BEGIN
    MO_GLOBAL.INIT('ONT');
    MO_GLOBAL.SET_POLICY_CONTEXT('S',89);
    --FND_GLOBAL.APPS_INITIALIZE(1130,21623,660);
    DBMS_OUTPUT.PUT_LINE('1');
    v_line_tbl_cnt := 1;
    ---- Control Record
    p_control_rec.pricing_event := 'BATCH';
    p_control_rec.calculate_flag := QP_PREQ_GRP.G_SEARCH_N_CALCULATE;
    p_control_rec.simulation_flag := 'Y';
    p_control_rec.source_order_amount_flag := 'Y';
    p_control_rec.PUBLIC_API_CALL_FLAG := 'N';
    p_control_rec.rounding_flag := 'Q';
    p_control_Rec.manual_discount_flag := 'N';
    --p_control_rec.MANUAL_ADJUSTMENTS_CALL_FLAG := 'Y';
    p_control_rec.request_type_code := 'ONT';
    p_control_rec.TEMP_TABLE_INSERT_FLAG := 'Y';
    DBMS_OUTPUT.PUT_LINE('2');
    line_rec.request_type_code :='ONT';
    --line_rec.PRICE_LIST_HEADER_ID := 8007;
    line_rec.line_id :=2125125; -- Order Line Id. This can be any thing for this script
    line_rec.line_Index :=1; -- Request Line Index
    line_rec.line_type_code := 'LINE'; -- LINE or ORDER(Summary Line)
    line_rec.pricing_effective_date := TRUNC(sysdate); -- Pricing as of what date ?
    line_rec.active_date_first := TRUNC(sysdate); -- Can be Ordered Date or Ship Date
    line_rec.active_date_second := TRUNC(sysdate); -- Can be Ordered Date or Ship Date
    line_rec.active_date_first_type := 'ORD'; -- ORD/SHIP
    line_rec.active_date_second_type :='SHIP'; -- ORD/SHIP
    line_rec.line_quantity := 1; -- Ordered Quantity
    line_rec.line_uom_code := 'EA'; -- Ordered UOM Code
    line_rec.currency_code := 'USD'; -- Currency Code
    line_rec.price_flag := 'Y'; -- Price Flag can have 'Y' , 'N'(No pricing) , 'P'(Phase)
    p_line_tbl(1) := line_rec;
    DBMS_OUTPUT.PUT_LINE('3');
    ---- Line Attribute Record
    line_attr_rec.LINE_INDEX := 1;
    line_attr_rec.PRICING_CONTEXT :='ITEM'; --
    line_attr_rec.PRICING_ATTRIBUTE :='PRICING_ATTRIBUTE3';
    line_attr_rec.PRICING_ATTR_VALUE_FROM :='ALL';
    line_attr_rec.VALIDATED_FLAG :='Y';
    p_line_attr_tbl(1) := line_attr_rec;
    line_attr_rec.LINE_INDEX := 1;
    line_attr_rec.PRICING_CONTEXT :='ITEM'; --
    line_attr_rec.PRICING_ATTRIBUTE :='PRICING_ATTRIBUTE1';
    --line_attr_rec.COMPARISON_OPERATOR_CODE         := 'BETWEEN';
    line_attr_rec.PRICING_ATTR_VALUE_FROM := '4466'; -- INVENTORY ITEM ID
    line_attr_rec.VALIDATED_FLAG :='Y';
    p_line_attr_tbl(2) := line_attr_rec;
    line_attr_rec.LINE_INDEX := 1;
    line_attr_rec.PRICING_CONTEXT :='ITEM'; --
    line_attr_rec.PRICING_ATTRIBUTE :='PRICING_ATTRIBUTE1';
    --line_attr_rec.COMPARISON_OPERATOR_CODE         := 'BETWEEN';
    line_attr_rec.PRICING_ATTR_VALUE_FROM := '2395'; -- INVENTORY ITEM ID
    line_attr_rec.VALIDATED_FLAG :='Y';
    p_line_attr_tbl(3) := line_attr_rec;
    line_attr_rec.LINE_INDEX := 1;
    line_attr_rec.PRICING_CONTEXT :='ITEM'; --
    line_attr_rec.PRICING_ATTRIBUTE :='PRICING_ATTRIBUTE30';
    --line_attr_rec.COMPARISON_OPERATOR_CODE         := 'BETWEEN';
    line_attr_rec.PRICING_ATTR_VALUE_FROM := 'Yes'; -- INVENTORY ITEM ID
    line_attr_rec.VALIDATED_FLAG :='Y';
    p_line_attr_tbl(3) := line_attr_rec;
    DBMS_OUTPUT.PUT_LINE('4');
    ---- Qualifier Attribute Record
    qual_rec.LINE_INDEX := 1; -- Attributes for the above line. Attributes are attached with the line index
    qual_rec.QUALIFIER_CONTEXT :='MODLIST';
    qual_rec.QUALIFIER_ATTRIBUTE :='QUALIFIER_ATTRIBUTE4';
    qual_rec.QUALIFIER_ATTR_VALUE_FROM :='8007'; -- PRICE LIST ID
    qual_rec.COMPARISON_OPERATOR_CODE := '=';
    qual_rec.VALIDATED_FLAG :='Y';
    p_qual_tbl(1) := qual_rec;
    DBMS_OUTPUT.PUT_LINE('5');
    qual_rec.line_index := 1;
    qual_rec.qualifier_context := 'ITEM';
    qual_rec.qualifier_attribute := 'QUALIFIER_ATTRIBUTE31';
    qual_rec.qualifier_attr_value_from := 'Yes';
    qual_rec.comparison_operator_code := '=';
    qual_rec.validated_flag := 'Y';
    p_qual_tbl (2) := qual_rec;
    DBMS_OUTPUT.PUT_LINE('6');
    OE_ORDER_PUB.G_LINE.inventory_item_id := 4466;
    DBMS_OUTPUT.PUT_LINE(Fnd_Profile.VALUE('QP_CUSTOM_SOURCED') );
    --QP_Attr_Mapping_PUB.Build_Contexts
    --( p_request_type_code => 'ONT',
    -- p_line_index => 1,
    -- p_pricing_type_code => 'L'
    QP_Attr_Mapping_PUB.Build_Contexts(
    p_request_type_code => 'ONT',
    p_pricing_type => 'L',
    --p_org_id => 89,
    x_price_contexts_result_tbl => x_price_contexts_result_tbl,
    x_qual_contexts_result_tbl => x_qual_contexts_result_tbl );
    I := x_qual_contexts_result_tbl.FIRST;
    IF I IS NOT NULL THEN
    LOOP
    DBMS_OUTPUT.PUT_LINE('Context: '||x_qual_contexts_result_tbl(I).context_name);
    DBMS_OUTPUT.PUT_LINE('attribute_name: '||x_qual_contexts_result_tbl(I).attribute_name);
    DBMS_OUTPUT.PUT_LINE('attribute_value: '||x_qual_contexts_result_tbl(I).attribute_value);
    EXIT WHEN I = x_qual_contexts_result_tbl.LAST;
    I := x_qual_contexts_result_tbl.NEXT(I);
    END LOOP;
    END IF;
    I := x_price_contexts_result_tbl.FIRST;
    IF I IS NOT NULL THEN
    LOOP
    DBMS_OUTPUT.PUT_LINE('Context: '||x_price_contexts_result_tbl(I).context_name);
    DBMS_OUTPUT.PUT_LINE('attribute_name: '||x_price_contexts_result_tbl(I).attribute_name);
    DBMS_OUTPUT.PUT_LINE('attribute_value: '||x_price_contexts_result_tbl(I).attribute_value);
    EXIT WHEN I = x_price_contexts_result_tbl.LAST;
    I := x_price_contexts_result_tbl.NEXT(I);
    END LOOP;
    END IF;
    DBMS_OUTPUT.PUT_LINE(Fnd_Profile.VALUE('QP_CUSTOM_SOURCED') );
    DBMS_OUTPUT.PUT_LINE('7');
    l_version := QP_PREQ_GRP.GET_VERSION;
    dbms_output.put_line(OE_ORDER_PUB.G_LINE.price_list_id);
    dbms_output.put_line(OE_ORDER_PUB.G_LINE.inventory_item_id);
    QP_PREQ_PUB.PRICE_REQUEST
    (p_line_tbl,
    p_qual_tbl,
    p_line_attr_tbl,
    p_line_detail_tbl,
    p_line_detail_qual_tbl,
    p_line_detail_attr_tbl,
    p_related_lines_tbl,
    p_control_rec,
    x_line_tbl,
    x_line_qual,
    x_line_attr_tbl,
    x_line_detail_tbl,
    x_line_detail_qual_tbl,
    x_line_detail_attr_tbl,
    x_related_lines_tbl,
    x_return_status,
    x_return_status_text);
    -- Return Status Information ..
    DBMS_OUTPUT.PUT_LINE('8');
    DBMS_OUTPUT.PUT_LINE('Return Status text '|| x_return_status_text);
    DBMS_OUTPUT.PUT_LINE('Return Status '|| x_return_status);
    DBMS_OUTPUT.PUT_LINE('+---------Information Returned to Caller---------------------+ ');
    DBMS_OUTPUT.PUT_LINE('-------------Request Line Information-------------------');
    I := x_line_tbl.FIRST;
    IF I IS NOT NULL THEN
    LOOP
    DBMS_OUTPUT.PUT_LINE('Line Index: '||x_line_tbl(I).line_index);
    DBMS_OUTPUT.PUT_LINE('Unit_price: '||x_line_tbl(I).unit_price);
    DBMS_OUTPUT.PUT_LINE('Percent price: '||x_line_tbl(I).percent_price);
    DBMS_OUTPUT.PUT_LINE('Adjusted Unit Price: '||x_line_tbl(I).adjusted_unit_price);
    DBMS_OUTPUT.PUT_LINE('Pricing status code: '||x_line_tbl(I).status_code);
    DBMS_OUTPUT.PUT_LINE('Pricing status text: '||x_line_tbl(I).status_text);
    EXIT WHEN I = x_line_tbl.LAST;
    I := x_line_tbl.NEXT(I);
    END LOOP;
    END IF;
    DBMS_OUTPUT.PUT_LINE('-----------Pricing Attributes Information-------------');
    I := x_line_detail_attr_tbl.FIRST;
    IF I IS NOT NULL THEN
    LOOP
    DBMS_OUTPUT.PUT_LINE('Line detail Index '||x_line_detail_attr_tbl(I).line_detail_index);
    DBMS_OUTPUT.PUT_LINE('Context '||x_line_detail_attr_tbl(I).pricing_context);
    DBMS_OUTPUT.PUT_LINE('Attribute '||x_line_detail_attr_tbl(I).pricing_attribute);
    DBMS_OUTPUT.PUT_LINE('Value '||x_line_detail_attr_tbl(I).pricing_attr_value_from);
    DBMS_OUTPUT.PUT_LINE('Status Code '||x_line_detail_attr_tbl(I).status_code);
    DBMS_OUTPUT.PUT_LINE('---------------------------------------------------');
    EXIT WHEN I = x_line_detail_attr_tbl.last;
    I:=x_line_detail_attr_tbl.NEXT(I);
    END LOOP;
    END IF;
    DBMS_OUTPUT.PUT_LINE('-----------Qualifier Attributes Information-------------');
    I := x_line_detail_qual_tbl.FIRST;
    IF I IS NOT NULL THEN
    LOOP
    DBMS_OUTPUT.PUT_LINE('Line Detail Index '||x_line_detail_qual_tbl(I).line_detail_index);
    DBMS_OUTPUT.PUT_LINE('Context '||x_line_detail_qual_tbl(I).qualifier_context);
    DBMS_OUTPUT.PUT_LINE('Attribute '||x_line_detail_qual_tbl(I).qualifier_attribute);
    DBMS_OUTPUT.PUT_LINE('Value '||x_line_detail_qual_tbl(I).qualifier_attr_value_from);
    DBMS_OUTPUT.PUT_LINE('Status Code '||x_line_detail_qual_tbl(I).status_code);
    DBMS_OUTPUT.PUT_LINE('---------------------------------------------------');
    EXIT WHEN I = x_line_detail_qual_tbl.last;
    I:=x_line_detail_qual_tbl.NEXT(I);
    END LOOP;
    END IF;
    I := x_line_detail_tbl.FIRST;
    DBMS_OUTPUT.PUT_LINE('------------Price List/Discount Information------------');
    IF I IS NOT NULL THEN
    LOOP
    L_MOD_NAME := '';
    DBMS_OUTPUT.PUT_LINE('Line Index: '||x_line_detail_tbl(I).line_index);
    DBMS_OUTPUT.PUT_LINE('Line Detail Index: '||x_line_detail_tbl(I).line_detail_index);
    DBMS_OUTPUT.PUT_LINE('Line Detail Type:'||x_line_detail_tbl(I).line_detail_type_code);
    DBMS_OUTPUT.PUT_LINE('List Header Id: '||x_line_detail_tbl(I).list_header_id);
    DBMS_OUTPUT.PUT_LINE('List Line Id: '||x_line_detail_tbl(I).list_line_id);
    DBMS_OUTPUT.PUT_LINE('List Line Type Code: '||x_line_detail_tbl(I).list_line_type_code);
    DBMS_OUTPUT.PUT_LINE('Adjustment Amount : '||x_line_detail_tbl(I).adjustment_amount);
    DBMS_OUTPUT.PUT_LINE('Line Quantity : '||x_line_detail_tbl(I).line_quantity);
    DBMS_OUTPUT.PUT_LINE('Operand Calculation Code: '||x_line_detail_tbl(I).Operand_calculation_code);
    DBMS_OUTPUT.PUT_LINE('Operand value: '||x_line_detail_tbl(I).operand_value);
    DBMS_OUTPUT.PUT_LINE('Automatic Flag: '||x_line_detail_tbl(I).automatic_flag);
    DBMS_OUTPUT.PUT_LINE('Override Flag: '||x_line_detail_tbl(I).override_flag);
    DBMS_OUTPUT.PUT_LINE('status_code: '||x_line_detail_tbl(I).status_code);
    DBMS_OUTPUT.PUT_LINE('status text: '||x_line_detail_tbl(I).status_text);
    DBMS_OUTPUT.PUT_LINE('-------------------------------------------');
    EXIT WHEN I = x_line_detail_tbl.LAST;
    BEGIN
    SELECT NAME INTO L_MOD_NAME
    FROM QP_LIST_HEADERS_ALL
    WHERE LIST_HEADER_ID=x_line_detail_tbl(I).list_header_id
    AND x_line_detail_tbl(I).list_line_type_code <>'PLL'
    AND x_line_detail_tbl(I).adjustment_amount IS NOT NULL;
    L_MODIFIER := L_MODIFIER||'~'||L_MOD_NAME;
    EXCEPTION
    WHEN OTHERS THEN
    NULL;
    END;
    IF x_line_detail_tbl(I).list_line_type_code <>'PLL' AND x_line_detail_tbl(I).adjustment_amount IS NOT NULL THEN
    L_ADJUSTMENT_AMOUNT := L_ADJUSTMENT_AMOUNT||'~'||x_line_detail_tbl(I).adjustment_amount;
    END IF;
    I := x_line_detail_tbl.NEXT(I);
    END LOOP;
    END IF;
    SELECT line_unit_price , order_uom_selling_price
    INTO l_unit_price , l_selling_price
    FROM qp_preq_lines_tmp
    WHERE pricing_status_code = Qp_Preq_Pub.g_status_updated
    ORDER BY line_id;
    DBMS_OUTPUT.PUT_LINE('Unit Price := '||l_unit_price);--x_line_tbl(1).UNIT_PRICE );
    DBMS_OUTPUT.PUT_LINE('Selling Price := '||l_selling_price);---x_line_tbl(1).LINE_UNIT_PRICE );
    DBMS_OUTPUT.PUT_LINE('L_MODIFIER: '||L_MODIFIER);
    DBMS_OUTPUT.PUT_LINE('L_ADJUSTMENT_AMOUNT: '||L_ADJUSTMENT_AMOUNT);
    DBMS_OUTPUT.PUT_LINE('--------------Related Lines Information for Price Breaks/Service Items---------------');
    I := x_related_lines_tbl.FIRST;
    IF I IS NOT NULL THEN
    LOOP
    DBMS_OUTPUT.PUT_LINE('Line Index :'||x_related_lines_tbl(I).line_index);
    DBMS_OUTPUT.PUT_LINE('Line Detail Index: '||x_related_lines_tbl(I).LINE_DETAIL_INDEX);
    DBMS_OUTPUT.PUT_LINE('Relationship Type Code: '||x_related_lines_tbl(I).relationship_type_code);
    DBMS_OUTPUT.PUT_LINE('Related Line Index: '||x_related_lines_tbl(I).RELATED_LINE_INDEX);
    DBMS_OUTPUT.PUT_LINE('Related Line Detail Index: '||x_related_lines_tbl(I).related_line_detail_index);
    DBMS_OUTPUT.PUT_LINE('Status Code: '|| x_related_lines_tbl(I).STATUS_CODE);
    EXIT WHEN I = x_related_lines_tbl.LAST;
    I := x_related_lines_tbl.NEXT(I);
    END LOOP;
    END IF;
    END; -- procedure --;
    Edited by: user7751421 on Apr 20, 2013 8:54 AM

    I tried with bellow code but it shows both Unit Price (price after apply all adjustment) and List price same_
    What I need is get unit selling price before order book, when customer called for inquiry only._
    DECLARE
    p_line_tbl QP_PREQ_GRP.LINE_TBL_TYPE;
    p_qual_tbl QP_PREQ_GRP.QUAL_TBL_TYPE;
    p_line_attr_tbl QP_PREQ_GRP.LINE_ATTR_TBL_TYPE;
    p_LINE_DETAIL_tbl QP_PREQ_GRP.LINE_DETAIL_TBL_TYPE;
    p_LINE_DETAIL_qual_tbl QP_PREQ_GRP.LINE_DETAIL_QUAL_TBL_TYPE;
    p_LINE_DETAIL_attr_tbl QP_PREQ_GRP.LINE_DETAIL_ATTR_TBL_TYPE;
    p_related_lines_tbl QP_PREQ_GRP.RELATED_LINES_TBL_TYPE;
    p_control_rec QP_PREQ_GRP.CONTROL_RECORD_TYPE;
    x_line_tbl QP_PREQ_GRP.LINE_TBL_TYPE;
    x_line_qual QP_PREQ_GRP.QUAL_TBL_TYPE;
    x_line_attr_tbl QP_PREQ_GRP.LINE_ATTR_TBL_TYPE;
    x_line_detail_tbl QP_PREQ_GRP.LINE_DETAIL_TBL_TYPE;
    x_line_detail_qual_tbl QP_PREQ_GRP.LINE_DETAIL_QUAL_TBL_TYPE;
    x_line_detail_attr_tbl QP_PREQ_GRP.LINE_DETAIL_ATTR_TBL_TYPE;
    x_related_lines_tbl QP_PREQ_GRP.RELATED_LINES_TBL_TYPE;
    x_return_status VARCHAR2 (240);
    x_return_status_text VARCHAR2 (240);
    qual_rec QP_PREQ_GRP.QUAL_REC_TYPE;
    line_attr_rec QP_PREQ_GRP.LINE_ATTR_REC_TYPE;
    line_rec QP_PREQ_GRP.LINE_REC_TYPE;
    detail_rec QP_PREQ_GRP.LINE_DETAIL_REC_TYPE;
    ldet_rec QP_PREQ_GRP.LINE_DETAIL_REC_TYPE;
    rltd_rec QP_PREQ_GRP.RELATED_LINES_REC_TYPE;
    x_price_contexts_result_tbl QP_Attr_Mapping_PUB.Contexts_Result_Tbl_Type;
    x_qual_contexts_result_tbl QP_Attr_Mapping_PUB.Contexts_Result_Tbl_Type;
    v_line_tbl_cnt INTEGER;
    I BINARY_INTEGER;
    l_version VARCHAR2 (240);
    l_file_val VARCHAR2 (60);
    L_MODIFIER VARCHAR2 (4000);
    L_ADJUSTMENT_AMOUNT VARCHAR2 (300);
    L_MOD_NAME VARCHAR2 (240);
    l_unit_price NUMBER;
    l_selling_price NUMBER;
    l_item_id number:=17155;
    BEGIN
    MO_GLOBAL.INIT ('ONT');
    MO_GLOBAL.SET_POLICY_CONTEXT ('S', 91);
    --FND_GLOBAL.APPS_INITIALIZE(1130,21623,660);
    DBMS_OUTPUT.PUT_LINE ('1');
    v_line_tbl_cnt := 1;
    ---- Control Record
    p_control_rec.pricing_event := 'LINE';
    p_control_rec.calculate_flag := 'Y';
    p_control_rec.simulation_flag := 'Y';
    p_control_rec.source_order_amount_flag := 'Y';
    p_control_rec.PUBLIC_API_CALL_FLAG := 'N';
    p_control_rec.rounding_flag := 'Q';
    p_control_Rec.manual_discount_flag := 'N';
    --p_control_rec.MANUAL_ADJUSTMENTS_CALL_FLAG := 'Y';
    p_control_rec.request_type_code := 'ONT';
    p_control_rec.TEMP_TABLE_INSERT_FLAG := 'Y';
    DBMS_OUTPUT.PUT_LINE ('2');
    line_rec.request_type_code := 'ONT';
    -- line_rec.PRICE_LIST_HEADER_ID := 386481;
    line_rec.line_id := 72202; -- Order Line Id. This can be any thing for this script
    line_rec.line_Index := 1; -- Request Line Index
    line_rec.line_type_code := 'LINE'; -- LINE or ORDER(Summary Line)
    line_rec.pricing_effective_date := TRUNC (SYSDATE); -- Pricing as of what date ?
    line_rec.active_date_first := TRUNC (SYSDATE); -- Can be Ordered Date or Ship Date
    line_rec.active_date_second := TRUNC (SYSDATE); -- Can be Ordered Date or Ship Date
    line_rec.active_date_first_type := 'ORD'; -- ORD/SHIP
    line_rec.active_date_second_type := 'SHIP'; -- ORD/SHIP
    line_rec.line_quantity := 10; -- Ordered Quantity
    line_rec.line_uom_code := 'Ea'; -- Ordered UOM Code
    line_rec.currency_code := 'USD'; -- Currency Code
    line_rec.price_flag := 'Y'; -- Price Flag can have 'Y' , 'N'(No pricing) , 'P'(Phase)
    p_line_tbl (1) := line_rec;
    DBMS_OUTPUT.PUT_LINE ('3');
    ---- Line Attribute Record
    line_attr_rec.LINE_INDEX := 1;
    line_attr_rec.PRICING_CONTEXT := 'ITEM'; --
    line_attr_rec.PRICING_ATTRIBUTE := 'PRICING_ATTRIBUTE3';
    line_attr_rec.PRICING_ATTR_VALUE_FROM := 'ALL';
    line_attr_rec.VALIDATED_FLAG := 'N';
    p_line_attr_tbl (1) := line_attr_rec;
    line_attr_rec.LINE_INDEX := 1;
    line_attr_rec.PRICING_CONTEXT := 'ITEM'; --
    line_attr_rec.PRICING_ATTRIBUTE := 'PRICING_ATTRIBUTE1';
    --line_attr_rec.COMPARISON_OPERATOR_CODE := 'BETWEEN';
    line_attr_rec.PRICING_ATTR_VALUE_FROM := '17155'; -- INVENTORY ITEM ID
    line_attr_rec.VALIDATED_FLAG := 'Y';
    p_line_attr_tbl (2) := line_attr_rec;
    -- line_attr_rec.LINE_INDEX := 1;
    -- line_attr_rec.PRICING_CONTEXT := 'ITEM'; --
    -- line_attr_rec.PRICING_ATTRIBUTE := 'PRICING_ATTRIBUTE1';
    -- --line_attr_rec.COMPARISON_OPERATOR_CODE := 'BETWEEN';
    -- line_attr_rec.PRICING_ATTR_VALUE_FROM := '72201'; -- INVENTORY ITEM ID
    -- line_attr_rec.VALIDATED_FLAG := 'Y';
    -- p_line_attr_tbl (3) := line_attr_rec;
    -- line_attr_rec.LINE_INDEX := 1;
    -- line_attr_rec.PRICING_CONTEXT := 'ITEM'; --
    -- line_attr_rec.PRICING_ATTRIBUTE := 'PRICING_ATTRIBUTE30';
    -- --line_attr_rec.COMPARISON_OPERATOR_CODE := 'BETWEEN';
    -- line_attr_rec.PRICING_ATTR_VALUE_FROM := 'Yes'; -- INVENTORY ITEM ID
    -- line_attr_rec.VALIDATED_FLAG := 'Y';
    -- p_line_attr_tbl (3) := line_attr_rec;
    DBMS_OUTPUT.PUT_LINE ('4');
    ---- Qualifier Attribute Record
    qual_rec.LINE_INDEX := 1; -- Attributes for the above line. Attributes are attached with the line index
    qual_rec.QUALIFIER_CONTEXT := 'MODLIST';
    qual_rec.QUALIFIER_ATTRIBUTE := 'QUALIFIER_ATTRIBUTE4';
    qual_rec.QUALIFIER_ATTR_VALUE_FROM := '386481'; -- PRICE LIST ID
    qual_rec.COMPARISON_OPERATOR_CODE := '=';
    qual_rec.VALIDATED_FLAG := 'Y';
    p_qual_tbl (1) := qual_rec;
    DBMS_OUTPUT.PUT_LINE ('5');
    -- qual_rec.line_index := 1;
    -- qual_rec.qualifier_context := 'ITEM';
    -- qual_rec.qualifier_attribute := 'QUALIFIER_ATTRIBUTE31';
    -- qual_rec.qualifier_attr_value_from := 'Yes';
    -- qual_rec.comparison_operator_code := '=';
    -- qual_rec.validated_flag := 'Y';
    -- p_qual_tbl (2) := qual_rec;
    qual_rec.LINE_INDEX := 1; -- Attributes for the above line. Attributes are attached with the line index
    qual_rec.QUALIFIER_CONTEXT := 'CUSTOMER';
    qual_rec.QUALIFIER_ATTRIBUTE := 'QUALIFIER_ATTRIBUTE5';
    qual_rec.QUALIFIER_ATTR_VALUE_FROM := 5728; -- Customer Account ID
    qual_rec.COMPARISON_OPERATOR_CODE := '=';
    qual_rec.VALIDATED_FLAG := 'Y';
    p_qual_tbl (3) := qual_rec;
    qual_rec.LINE_INDEX := 1;
    qual_rec.QUALIFIER_CONTEXT := 'ITEM_CATEGORY';
    qual_rec.QUALIFIER_ATTRIBUTE := 'QUALIFIER_ATTRIBUTE35';
    qual_rec.QUALIFIER_ATTR_VALUE_FROM := 'TOOLS.HARDWARE TOOLS (DISCOUNTABLE).'; -- item category
    qual_rec.COMPARISON_OPERATOR_CODE := '=';
    qual_rec.VALIDATED_FLAG := 'N';
    p_qual_tbl (4) := qual_rec;
    DBMS_OUTPUT.PUT_LINE ('6');
    OE_ORDER_PUB.G_LINE.inventory_item_id := l_item_id;
    DBMS_OUTPUT.PUT_LINE (Fnd_Profile.VALUE ('QP_CUSTOM_SOURCED'));
    --QP_Attr_Mapping_PUB.Build_Contexts
    --( p_request_type_code => 'ONT',
    -- p_line_index => 1,
    -- p_pricing_type_code => 'L'
    QP_Attr_Mapping_PUB.
    Build_Contexts (
    p_request_type_code => 'ONT',
    p_pricing_type => 'L',
    --p_org_id => 89,
    x_price_contexts_result_tbl => x_price_contexts_result_tbl,
    x_qual_contexts_result_tbl => x_qual_contexts_result_tbl);
    I := x_qual_contexts_result_tbl.FIRST;
    IF I IS NOT NULL
    THEN
    LOOP
    DBMS_OUTPUT.
    PUT_LINE (
    'Context: ' || x_qual_contexts_result_tbl (I).context_name);
    DBMS_OUTPUT.
    PUT_LINE (
    'attribute_name: '
    || x_qual_contexts_result_tbl (I).attribute_name);
    DBMS_OUTPUT.
    PUT_LINE (
    'attribute_value: '
    || x_qual_contexts_result_tbl (I).attribute_value);
    EXIT WHEN I = x_qual_contexts_result_tbl.LAST;
    I := x_qual_contexts_result_tbl.NEXT (I);
    END LOOP;
    END IF;
    I := x_price_contexts_result_tbl.FIRST;
    IF I IS NOT NULL
    THEN
    LOOP
    DBMS_OUTPUT.
    PUT_LINE (
    'Context: ' || x_price_contexts_result_tbl (I).context_name);
    DBMS_OUTPUT.
    PUT_LINE (
    'attribute_name: '
    || x_price_contexts_result_tbl (I).attribute_name);
    DBMS_OUTPUT.
    PUT_LINE (
    'attribute_value: '
    || x_price_contexts_result_tbl (I).attribute_value);
    EXIT WHEN I = x_price_contexts_result_tbl.LAST;
    I := x_price_contexts_result_tbl.NEXT (I);
    END LOOP;
    END IF;
    DBMS_OUTPUT.PUT_LINE (' Fnd_Profile.VALUE (QP_CUSTOM_SOURCED): ' || Fnd_Profile.VALUE ('QP_CUSTOM_SOURCED'));
    DBMS_OUTPUT.PUT_LINE ('7');
    l_version := QP_PREQ_GRP.GET_VERSION;
    DBMS_OUTPUT.put_line (OE_ORDER_PUB.G_LINE.price_list_id);
    DBMS_OUTPUT.put_line (OE_ORDER_PUB.G_LINE.inventory_item_id);
    QP_PREQ_PUB.PRICE_REQUEST (p_line_tbl,
    p_qual_tbl,
    p_line_attr_tbl,
    p_line_detail_tbl,
    p_line_detail_qual_tbl,
    p_line_detail_attr_tbl,
    p_related_lines_tbl,
    p_control_rec,
    x_line_tbl,
    x_line_qual,
    x_line_attr_tbl,
    x_line_detail_tbl,
    x_line_detail_qual_tbl,
    x_line_detail_attr_tbl,
    x_related_lines_tbl,
    x_return_status,
    x_return_status_text);
    -- Return Status Information ..
    DBMS_OUTPUT.PUT_LINE ('8');
    DBMS_OUTPUT.PUT_LINE ('Return Status text ' || x_return_status_text);
    DBMS_OUTPUT.PUT_LINE ('Return Status ' || x_return_status);
    DBMS_OUTPUT.
    PUT_LINE (
    '+---------Information Returned to Caller---------------------+ ');
    DBMS_OUTPUT.
    PUT_LINE ('-------------Request Line Information-------------------');
    I := x_line_tbl.FIRST;
    IF I IS NOT NULL
    THEN
    LOOP
    DBMS_OUTPUT.PUT_LINE ('Line Index: ' || x_line_tbl (I).line_index);
    DBMS_OUTPUT.PUT_LINE ('Unit_price: ' || x_line_tbl (I).unit_price);
    DBMS_OUTPUT.
    PUT_LINE ('Percent price: ' || x_line_tbl (I).percent_price);
    DBMS_OUTPUT.
    PUT_LINE (
    'Adjusted Unit Price: ' || x_line_tbl (I).adjusted_unit_price);
    DBMS_OUTPUT.
    PUT_LINE ('Pricing status code: ' || x_line_tbl (I).status_code);
    DBMS_OUTPUT.
    PUT_LINE ('Pricing status text: ' || x_line_tbl (I).status_text);
    EXIT WHEN I = x_line_tbl.LAST;
    I := x_line_tbl.NEXT (I);
    END LOOP;
    END IF;
    DBMS_OUTPUT.
    PUT_LINE ('-----------Pricing Attributes Information-------------');
    I := x_line_detail_attr_tbl.FIRST;
    IF I IS NOT NULL
    THEN
    LOOP
    DBMS_OUTPUT.
    PUT_LINE (
    'Line detail Index '
    || x_line_detail_attr_tbl (I).line_detail_index);
    DBMS_OUTPUT.
    PUT_LINE ('Context ' || x_line_detail_attr_tbl (I).pricing_context);
    DBMS_OUTPUT.
    PUT_LINE (
    'Attribute ' || x_line_detail_attr_tbl (I).pricing_attribute);
    DBMS_OUTPUT.
    PUT_LINE (
    'Value ' || x_line_detail_attr_tbl (I).pricing_attr_value_from);
    DBMS_OUTPUT.
    PUT_LINE ('Status Code ' || x_line_detail_attr_tbl (I).status_code);
    DBMS_OUTPUT.
    PUT_LINE ('---------------------------------------------------');
    EXIT WHEN I = x_line_detail_attr_tbl.LAST;
    I := x_line_detail_attr_tbl.NEXT (I);
    END LOOP;
    END IF;
    DBMS_OUTPUT.
    PUT_LINE ('-----------Qualifier Attributes Information-------------');
    I := x_line_detail_qual_tbl.FIRST;
    IF I IS NOT NULL
    THEN
    LOOP
    DBMS_OUTPUT.
    PUT_LINE (
    'Line Detail Index '
    || x_line_detail_qual_tbl (I).line_detail_index);
    DBMS_OUTPUT.
    PUT_LINE (
    'Context ' || x_line_detail_qual_tbl (I).qualifier_context);
    DBMS_OUTPUT.
    PUT_LINE (
    'Attribute ' || x_line_detail_qual_tbl (I).qualifier_attribute);
    DBMS_OUTPUT.
    PUT_LINE (
    'Value ' || x_line_detail_qual_tbl (I).qualifier_attr_value_from);
    DBMS_OUTPUT.
    PUT_LINE ('Status Code ' || x_line_detail_qual_tbl (I).status_code);
    DBMS_OUTPUT.
    PUT_LINE ('---------------------------------------------------');
    EXIT WHEN I = x_line_detail_qual_tbl.LAST;
    I := x_line_detail_qual_tbl.NEXT (I);
    END LOOP;
    END IF;
    I := x_line_detail_tbl.FIRST;
    DBMS_OUTPUT.
    PUT_LINE ('------------Price List/Discount Information------------');
    IF I IS NOT NULL
    THEN
    LOOP
    L_MOD_NAME := '';
    DBMS_OUTPUT.
    PUT_LINE ('Line Index: ' || x_line_detail_tbl (I).line_index);
    DBMS_OUTPUT.
    PUT_LINE (
    'Line Detail Index: ' || x_line_detail_tbl (I).line_detail_index);
    DBMS_OUTPUT.
    PUT_LINE (
    'Line Detail Type:'
    || x_line_detail_tbl (I).line_detail_type_code);
    DBMS_OUTPUT.
    PUT_LINE (
    'List Header Id: ' || x_line_detail_tbl (I).list_header_id);
    DBMS_OUTPUT.
    PUT_LINE ('List Line Id: ' || x_line_detail_tbl (I).list_line_id);
    DBMS_OUTPUT.
    PUT_LINE (
    'List Line Type Code: '
    || x_line_detail_tbl (I).list_line_type_code);
    DBMS_OUTPUT.
    PUT_LINE (
    'Adjustment Amount : ' || x_line_detail_tbl (I).adjustment_amount);
    DBMS_OUTPUT.
    PUT_LINE ('Line Quantity : ' || x_line_detail_tbl (I).line_quantity);
    DBMS_OUTPUT.
    PUT_LINE (
    'Operand Calculation Code: '
    || x_line_detail_tbl (I).Operand_calculation_code);
    DBMS_OUTPUT.
    PUT_LINE ('Operand value: ' || x_line_detail_tbl (I).operand_value);
    DBMS_OUTPUT.
    PUT_LINE (
    'Automatic Flag: ' || x_line_detail_tbl (I).automatic_flag);
    DBMS_OUTPUT.
    PUT_LINE ('Override Flag: ' || x_line_detail_tbl (I).override_flag);
    DBMS_OUTPUT.
    PUT_LINE ('status_code: ' || x_line_detail_tbl (I).status_code);
    DBMS_OUTPUT.
    PUT_LINE ('status text: ' || x_line_detail_tbl (I).status_text);
    DBMS_OUTPUT.PUT_LINE ('-------------------------------------------');
    EXIT WHEN I = x_line_detail_tbl.LAST;
    BEGIN
    SELECT NAME
    INTO L_MOD_NAME
    FROM QP_LIST_HEADERS_ALL
    WHERE LIST_HEADER_ID = x_line_detail_tbl (I).list_header_id
    AND x_line_detail_tbl (I).list_line_type_code = 'PLL'
    AND x_line_detail_tbl (I).adjustment_amount IS NOT NULL;
    L_MODIFIER := L_MODIFIER || '~' || L_MOD_NAME;
    EXCEPTION
    WHEN OTHERS
    THEN
    NULL;
    END;
    IF x_line_detail_tbl (I).list_line_type_code = 'PLL'
    AND x_line_detail_tbl (I).adjustment_amount IS NOT NULL
    THEN
    L_ADJUSTMENT_AMOUNT :=
    L_ADJUSTMENT_AMOUNT
    || '~'
    || x_line_detail_tbl (I).adjustment_amount;
    END IF;
    I := x_line_detail_tbl.NEXT (I);
    END LOOP;
    END IF;
    SELECT line_unit_price, order_uom_selling_price
    INTO l_unit_price, l_selling_price
    FROM qp_preq_lines_tmp
    WHERE pricing_status_code = Qp_Preq_Pub.g_status_updated
    ORDER BY line_id;
    DBMS_OUTPUT.PUT_LINE ('Unit Price := ' || l_unit_price); --x_line_tbl(1).UNIT_PRICE );
    DBMS_OUTPUT.PUT_LINE ('Selling Price := ' || l_selling_price); ---x_line_tbl(1).LINE_UNIT_PRICE );
    DBMS_OUTPUT.PUT_LINE ('L_MODIFIER: ' || L_MODIFIER);
    DBMS_OUTPUT.PUT_LINE ('L_ADJUSTMENT_AMOUNT: ' || L_ADJUSTMENT_AMOUNT);
    DBMS_OUTPUT.
    PUT_LINE (
    '--------------Related Lines Information for Price Breaks/Service Items---------------');
    I := x_related_lines_tbl.FIRST;
    IF I IS NOT NULL
    THEN
    LOOP
    DBMS_OUTPUT.
    PUT_LINE ('Line Index :' || x_related_lines_tbl (I).line_index);
    DBMS_OUTPUT.
    PUT_LINE (
    'Line Detail Index: '
    || x_related_lines_tbl (I).LINE_DETAIL_INDEX);
    DBMS_OUTPUT.
    PUT_LINE (
    'Relationship Type Code: '
    || x_related_lines_tbl (I).relationship_type_code);
    DBMS_OUTPUT.
    PUT_LINE (
    'Related Line Index: '
    || x_related_lines_tbl (I).RELATED_LINE_INDEX);
    DBMS_OUTPUT.
    PUT_LINE (
    'Related Line Detail Index: '
    || x_related_lines_tbl (I).related_line_detail_index);
    DBMS_OUTPUT.
    PUT_LINE ('Status Code: ' || x_related_lines_tbl (I).STATUS_CODE);
    EXIT WHEN I = x_related_lines_tbl.LAST;
    I := x_related_lines_tbl.NEXT (I);
    END LOOP;
    END IF;
    EXCEPTION
    WHEN OTHERS THEN
    DBMS_OUTPUT.
    PUT_LINE ('SQLERRM' || SQLERRM);
    END;
    Kindly provide sugession if I miss any thing.
    Regards,
    Akil
    Edited by: 1004537 on May 9, 2013 7:20 AM
    Edited by: 1004537 on May 9, 2013 7:20 AM

  • Need API for getting List price and unit price before Order entry

    Hello,
    I have requirement of provide unit & list price before order entry (Oracle Pricing and availability form provide the same).
    Please suggest any API for the same.
    Thanks
    Akil.

    Hi,
    Thanks luko,
    I got API QP_PREQ_PUB.PRICE_REQUEST, and its return output as expected,
    Just have confusion that how many qualifiers we have to send
    Here is my sample code
    OR REPLACE PROCEDURE xx_web_get_price (
    IN     NUMBER,
    IN     NUMBER,
    IN     NUMBER,
    IN     NUMBER,
    IN     VARCHAR2,
    IN     VARCHAR2,
    IN     VARCHAR2,
    IN     NUMBER,
    OUT NUMBER,
    OUT NUMBER,
    OUT VARCHAR2,
    OUT VARCHAR2)
    QP_PREQ_GRP.LINE_TBL_TYPE;
    QP_PREQ_GRP.QUAL_TBL_TYPE;
    QP_PREQ_GRP.LINE_ATTR_TBL_TYPE;
    QP_PREQ_GRP.LINE_DETAIL_TBL_TYPE;
    QP_PREQ_GRP.LINE_DETAIL_QUAL_TBL_TYPE;
    QP_PREQ_GRP.LINE_DETAIL_ATTR_TBL_TYPE;
    QP_PREQ_GRP.RELATED_LINES_TBL_TYPE;
    QP_PREQ_GRP.CONTROL_RECORD_TYPE;
    QP_PREQ_GRP.LINE_TBL_TYPE;
    QP_PREQ_GRP.QUAL_TBL_TYPE;
    QP_PREQ_GRP.LINE_ATTR_TBL_TYPE;
    QP_PREQ_GRP.LINE_DETAIL_TBL_TYPE;
    QP_PREQ_GRP.LINE_DETAIL_QUAL_TBL_TYPE;
    QP_PREQ_GRP.LINE_DETAIL_ATTR_TBL_TYPE;
    QP_PREQ_GRP.RELATED_LINES_TBL_TYPE;
    VARCHAR2 (240);
    VARCHAR2 (240);
    QP_PREQ_GRP.QUAL_REC_TYPE;
    QP_PREQ_GRP.LINE_ATTR_REC_TYPE;
    QP_PREQ_GRP.LINE_REC_TYPE;
    QP_PREQ_GRP.LINE_DETAIL_REC_TYPE;
    QP_PREQ_GRP.LINE_DETAIL_REC_TYPE;
    QP_PREQ_GRP.RELATED_LINES_REC_TYPE;
    QP_Attr_Mapping_PUB.Contexts_Result_Tbl_Type;
    QP_Attr_Mapping_PUB.Contexts_Result_Tbl_Type;
    INTEGER;
    BINARY_INTEGER;
    VARCHAR2 (240);
    VARCHAR2 (60);
    oe_debug_pub.debug_on;
    oe_debug_pub.initialize;
    := OE_DEBUG_PUB.Set_Debug_Mode ('FILE');
    oe_Debug_pub.setdebuglevel (5);
    ('File : ' || l_file_val);
    QP_Attr_Mapping_PUB.
    (p_request_type_code           => 'ONT',
    => 'L',
    => l_pricing_contexts_Tbl,
    => l_qualifier_Contexts_Tbl);
    := 1;
    ---- Control Record
    .pricing_event := 'LINE';                           -- 'LINE';
    .calculate_flag := 'Y';    --QP_PREQ_GRP.G_SEARCH_N_CALCULATE;
    .simulation_flag := 'N';
    .source_order_amount_flag := 'Y';
    .rounding_flag := 'Q';
    .manual_discount_flag := 'Y';
    .request_type_code := 'ONT';
    .TEMP_TABLE_INSERT_FLAG := 'Y';
    ---- Line Records ---------
    .request_type_code := 'ONT';
    .line_id := 2125125; -- Order Line Id. This can be any thing for this script
    .line_Index := '1';                           -- Request Line Index
    .line_type_code := 'LINE';           -- LINE or ORDER(Summary Line)
    .pricing_effective_date := SYSDATE;    -- Pricing as of what date ?
    .active_date_first := SYSDATE;  -- Can be Ordered Date or Ship Date
    .active_date_second := SYSDATE; -- Can be Ordered Date or Ship Date
    .active_date_first_type := 'NO TYPE';                   -- ORD/SHIP
    .active_date_second_type := 'NO TYPE';                  -- ORD/SHIP
    .line_quantity := 1;                            -- Ordered Quantity
    .line_uom_code := p_uom; --'Ea';                         -- Ordered UOM Code
    .currency_code := p_currency_code; -- 'USD';                           -- Currency Code
    .price_flag := 'Y'; -- Price Flag can have 'Y' , 'N'(No pricing) , 'P'(Phase)
    (1) := line_rec;
    ------ Line Attribute Record
    .LINE_INDEX := 1;
    .PRICING_CONTEXT := 'ITEM';                               
    .PRICING_ATTRIBUTE := 'PRICING_ATTRIBUTE3';
    .PRICING_ATTR_VALUE_FROM := 'ALL';
    .VALIDATED_FLAG := 'N';
    (1) := line_attr_rec;
    .LINE_INDEX := 1;
    .PRICING_CONTEXT := 'ITEM';                                 --
    .PRICING_ATTRIBUTE := 'PRICING_ATTRIBUTE1';
    .PRICING_ATTR_VALUE_FROM := p_item_id;
    .VALIDATED_FLAG := 'N';
    (2) := line_attr_rec;
    .LINE_INDEX := 1;
    .PRICING_CONTEXT := 'ITEM';                              
    .PRICING_ATTRIBUTE := 'PRICING_ATTRIBUTE2';
    .PRICING_ATTR_VALUE_FROM := p_category_id;
    .VALIDATED_FLAG := 'N';
    (3) := line_attr_rec;
    ------ Qualifier Attribute Record
    .LINE_INDEX := 1; -- Attributes for the above line. Attributes are attached with the line index
    .QUALIFIER_CONTEXT := 'MODLIST';
    .QUALIFIER_ATTRIBUTE := 'QUALIFIER_ATTRIBUTE4';
    .QUALIFIER_ATTR_VALUE_FROM := p_price_list_id;
    .COMPARISON_OPERATOR_CODE := '=';
    .VALIDATED_FLAG := 'Y';
    (1) := qual_rec;
    .LINE_INDEX := 1;
    .QUALIFIER_CONTEXT := 'CUSTOMER';
    .QUALIFIER_ATTRIBUTE := 'QUALIFIER_ATTRIBUTE2';
    .QUALIFIER_ATTR_VALUE_FROM := p_customer_account_id;
    .COMPARISON_OPERATOR_CODE := '=';
    .VALIDATED_FLAG := 'Y';
    (2) := qual_rec;
    .LINE_INDEX := 1;
    .QUALIFIER_CONTEXT := 'CUSTOMER';
    .QUALIFIER_ATTRIBUTE := 'QUALIFIER_ATTRIBUTE40';
    .QUALIFIER_ATTR_VALUE_FROM := p_customer_category; --'INDUSTRIAL';  
    .COMPARISON_OPERATOR_CODE := '=';
    .VALIDATED_FLAG := 'Y';
    (3) := qual_rec;
    QP_PREQ_PUB.PRICE_REQUEST (p_line_tbl,
    -- Return Status Information ..
    := x_return_status_text;
    := x_return_status;
    := x_line_tbl.FIRST;
    IF I IS NOT NULL
    THEN
    := x_line_tbl (I).unit_price;
    := x_line_tbl (I).adjusted_unit_price;
    END IF;
    xx_web_get_price;                                     
    Regards,
    akil.

  • How to show unit price total to document level UDF

    Hi,
    In sales order document I have to show the total of unit price of all items in document level UDF.
    Is it possible by using FMS? How?
    FMS Query    Select SUM($[$38.14.Number])  is not worked for this issue.

    Hi Swapnil,
    This is the limitation that you cannot bring row level details on document level field.
    If you want so then you have to use SDK or you can use Type-->Subtotal option to check the row total.
    Regards,
    Rahul

  • How to update UDF of sales order line of closed sales order header

    Hello experts,
    We are using SAP 8.81.313  PL 05  and we noticed that through SDK using businessobject SAPbobsCOM.BoObjectTypes.oOrders,  we can't update an user defined field on sales order line for a sales order with header closed.
    calling the method  Update()   it returns 0  but actually the table field  was not changed !
    Also we noticed that It's possible to make an update of UDF of delivery line for a delivery with header closed.
    I don't understand why.
    Is it a bug or the expected behavior ?
    Our customer needs to change some UDF of sales order line even when the order header is CLOSED.
    Please help me.
    Many thanks for your time.
    Best regards
    Andrea

    Hi Elio,
    Yes from UI it's the expected behavior but through DI API  I could update an user defined field of sales order line even if the LineStatus is equal to "C" (Closed) but only if the order header is not closed.
    Regards
    Andrea

  • Update LineNum in Sales Order line Details

    Dear All,
    I have imported a sales order into a database from another database on SAP B1 2005A using DTW. The sales order has only one line item.
    However, after importing, the linenum of the target table RDR1 is 0 while the source has it as 1. All the other fields have been updated with the correct data.
    I am trying to update the same sales order's LineNum to 1 using DTW with the 'update' option ticked and the process runs successfully. However upon checking the database I find out that it has added another line item with the same details. Can a linenum field be changed/updated? The reason behind my need to change the linenum is because after trying to import a sales delivery linking it to that sales order it gives me an error :[DLN1.BaseEntry][Line: 1] 'No matching records found [ODBC:2028]'.
    Kind Regards,
    Asif

    Asif,
    The number of lines in the Sales Order does not neccesarily co-relate to the line number.
    Just a simple example:
    Create a Sales Order....Add a line item..add Sales Order
    Open the same sales order..delete the line item (delete row) and add the same item / another item.  Though the Sales Order seems to have only one item..now if you check RDR1 the linenum would be 1.
    The architecture of SAP B1 is to generate a new linenum each time you add a row.
    Thats probably why you are seeing the difference.
    If you want to match the target linenum. simply delete the row and add the same line item and Update SO.
    DTW will not update the linenum as it is system managed. 
    My recommendation for your situation is - if you do not have the same item more than once on a Sales Order - then it is better to get the BaseLine from the Database you imported the Sales Orders to.
    Let me know if you need any further direction with this.
    Suda

  • Update Unit Price from Catalog

    Hello,
    We have a external catalog wich contain some products with scale prices, so when one of these products are added to a SC, initially its transferred from the catalog with the right price considering the scale price.
    But if the quantity of the item is changed in the SC, than the unit price does not change according to the scale price in the catalog.
    Is there some automatic check in place for this kind of situation ?
    Is there some way to sincronize the prices from the catalog with the prices in SC while changing the SC ?
    Regards,
    Alexandre Padeti

    Thumb Rule - You should not change the quantity and price for items brought via External catalog.
    There is no automatic sync as a catalog item is session based. Once the item is brought back to SRM the hook URL is lost.

  • Global Attribute Usage -- Customization (Order Line level)

    Hi All,
    We have a requirement to capture some additional fields during order creation. We have already exhausted the attribute fields in the oe_order_lines_all table. So we are unable to create DFF using any of attribute fields.
    To achieve the functionality, we are analyzing the usage of global_attribute field. We have few doubts before using it,
    1. What is the significance of global_attribute fields. Can we use in DFF as we use Attribute fields
    2. Does oracle ever use the global_attribute fields for any of its purpose.
    Please provide some insight in using the global_attribute fields for our customization.
    Thanks,
    Rajesh SM.

    Hi Rajesh,
    I hope you would have got the solution for the same by now. I am also facing the same situation what you faced. We have consumed all attributes in OE_ORDER_HEADERS_ALL and would need minimum 4 more attributes for adding a new functionality which is required by business.
    I raised and SR with oracle asking if it is possible to extend the Order header DFF and got following response
    It is NOT possible to extend the available DFF columns since this will mean adding further columns to the base table which is not supported.
    I can give the below suggestions for your requirement.
    It might be easier to revisit your existing DFF fields and make better use of them - e.g.
    - any that are not user enterable or displayed, push to unused fields e.g. global_attributeXX
    - ensure context sensitivity is being used to make best use of available segments.
    - combine any related DFFs into one (often in combination with validation sets)
    - move any DFFs that are at a lower level of detail to the correct level of detail, eg. if it can be on the customer site rather than customer site use level, move it!
    Some updates to DFF fields may be necessary, but much easier than modifications.
    I am still in a fix to find the best possible solution. Can you please suggest how did you resolve the issue?
    Vikz
    Edited by: user13090130 on Sep 13, 2011 10:18 PM

Maybe you are looking for

  • NEWBIE - Help Needed Please!

    Hi - I am new to iMovie and have iMovie '08. I need to create a project as follows. I am trying to recreate some movies that when played will look like a Trade Test Transmission with music. Viz: The movie needs to be a static caption that lasts for a

  • Formating Line thickness for lines in graphs with more than 6 lines.

    I have a line graph with more than 6 lines on it and I'm trying to make them all 1px. I can specify a line thickness for the first 6 lines but after that, the lines go back to the default thickness. Is it possible to change the default line thickness

  • N560-GTX Ti-Hawk Artifacts :(

    Hi, i got this new computer 3 days ago: gigabyte ga-z68ma-d2h-b3 i5 2500k 8gb ram sniper 700w silent pro msi gtx 560 ti hawk I have those annoying artifacts in battlefield 3 and napoleon total war, is my video card broken or something? i have also tr

  • How can you tell if an unopened product is engraved?

    I got an Ipod Touch for Christmas and was wondering if there is a way to tell if it is engraved without opening it. I googled it and couldn't really find a conclusive answer. I am interested in upgrading from an 8gb to a 32gb and read that apple does

  • How do i set up my ipod nano on a new computer?

    I had my Ipod nano set up on a previous computer. I had downloaded songs, built playlists, etc.  The computer crashed.  I have a new computer. When I connect my Ipod and go to Itunes...where can I see my Ipod to acces it and download/sync more music?