OM: Multi-select order lines to apply hold

We are using Standard Oracle Multi-Select order lines (Ctrl or Shift keys) to apply hold and would like to pop-up an alert when any of the selected lines is having an open delivery. Appreciate any suggestions to handle this requirement. Thanks !

These are good links for the Apply Hold functionalities.
What we are looking for is to alert users that any of the multi-selected lines is having an open delivery/shipper.
Need to identify the internal Line_id multi-selected by users for validating if there is an open delivery/shipper.
Appreciate any advise.

Similar Messages

  • Place back ordered lines on automatic hold

    Hi Folks,
    Is there a standard method to automatically place back ordered lines on hold? We are currnetly implementing EBS OM 12.1.3
    Looking at the workflow activities available in the holds form for OM Order Line, there is no back order activity.
    Has anyone come across this problem and come up with a solution?
    Thanks in anticipiation

    I am not sure what this question relates to - it might be an
    Oracle Order Management question.
    Hi All,
    I couldnt find much information about this report Lines On
    credit hold.I was having question ,is it possible to place
    cerdit hold on lines? Because as per my knowlage credit hold is
    order level hold not line level and looks like this report picks
    up lines on credit hold ,hows is possible.I was confuse.If any
    one has idea about it,pls let me know.
    regads

  • OM: Apply Hold after new a order line on line level..

    Hi All,
    There is an issue that we have to apply hold on line level when order is changed.(include update line or new line)
    And we try to use trigger(with PRAGMA AUTONOMOUS_TRANSACTION) to call Apply Hold API.
    It work when existed order lines are changed.
    But it not work when new a order line, at the after-insert moment, it CAN NOT apply Hold on this immature order line.
    How can we fulfill this requirement?
    Or the requirement is nonsense...
    Any suggestion will be appreciated.
    Best regards,
    Zhxiangl

    R U going to use any bapi  to split the line items???

  • Apply hold on sales order lines programmatically

    Hi all,
      I am new to SCM and we have a requirement where Holds should be applied on Sales Order Lines based on some complex criteria that can not be met by the declarative "Apply Hold Criteria" option from Sales Orders window. So I want to know where can this custom code be hooked to put the Holds on the Lines when the criteria is met. Which of the following options are possible ?
    1. Custom Extension (or Hook) of Order Lines.
    2. Workflow Customisation
    If none of the above are possible, I guess then the only option will be scheduling a Custom Concurrent Program to apply holds.
    Please advise.
    Thanks,
    Sharath

    You should be able to add this as a workflow customization, but you'd need to call a procedure with PRAGMA AUTONOMOUS TRANSATION since commits in the workflow code  itself could cause problems.

  • Applying an AR commitment to an order line

    How do I apply an AR commitment to an order line? I have created a deposit in AR. I want to apply this to an order line. Please help me with the following:
    1. DO I have to choose a specific type of Order header or order line to be able to apply a commitment?
    2. Where is the LOv from which I can choose the commitment I create in AR, to apply it to an order line?
    Thanks

    I found the answer to this. To anyone trying to find a solution to this problem, select an order line --> Go to Actions, Payments. In the Payments window, choose a commitment.

  • Selecting multiple lines in a sales order

    Hello documentation says we should be able to select multiple lines in a sales order (for example to cancel them or remove them). Yet we cannot select more than one. Shift and Ctrl do not seem to work.
    Any idea why this does not work ? We are running B1 2007A, patch 37.
    Thanks a lot
    Fabrice

    Hi Fabrice,
    if you have a sales order with hundreds of rows, use the 'Draw Document Wizard -> Customise' option to draw the required rows into the target document. Once all row data has been copied to the target, the row is greyed out in the sales order & can no longer be drawn. As long as the BP accepts partial deliveries, you may copy as much partial data to multiple target documents as necessary. Once you are finished with the sales order & there are rows still open, you may go to Data -> Close & hence close the entire document. There will be no need to delete the remaining rows.
    All the best,
    Kerstin

  • Hold on order line is visible as an order header hold in order organizer

    Hi,
    When we create a hold on a sales order line, then we can see in the order organizer at order header level that the order is on hold (with the check box).
    We don't want this because then it looks like the complete order is on hold.
    We only want to see at the line level that the line is on hold for the specific lines that have a hold.
    Is there any way that we can avoid that an order line hold is visible as an hold in the order organizer at order header level ?
    Regards,
    Jan

    Standard functionality, I'm afraid. What that tick box is currently telling you is 'This order is on hold at header level OR one or more lines within the order are on hold'. What you're looking for is two hold statuses: 1) order header is on hold 2) one or more lines are on hold ... which you won't get without customizing the form.
    If it's really important to access more granular hold info without opening the order (though unfortunately not 'at a glance' and at the cost of a couple of extra clicks), you could always add a personalization message displayable for each row on the Organizer via the Actions menu and where the only limitation on content is your creative skills ;-)

  • How to Enter Multipe Orders & Lines on a Selection Screen?

    Hi,
    I have a situation where the user wants a report on sales order items.
    However to choose the specific order lines via the selection screen and run the report for that selection of orders and lines e.g.
    On the selection screen the following are entered:
    Order 1 and Line 3
    Order 1 and Line 4
    Order 2 and Line 3
    Order 3 and Line 4
    etc.
    And the report then shows only these order items.
    I though of coding something like this for the selection screen:
    SELECT-OPTIONS: s_vbeln FOR vbak-vbeln,
                    s_posnr FOR vbap-posnr.
    And unfortunately it doesn't work...
    Using normal select-option and parameters, I don't think you can do this as there is no way for the program of knowing which order is linked to which line item.
    Does anyone have any iodeas on how to do this?
    Many thanks!

    Hi,
    Actually I think the only way to do this is if the user uploads a text file, via the selection screen, with all their order and line details in there.
    Would you all agree that this would be the best way forward?
    Many thanks!

  • Sales Order Line Hold Release from API

    Hi Expecrts,
    I need one help, by using pl/sql program i want to hold release sales order line, I can see the oe_hold_pub api. but it contain three release_hold procedures. Which one i can use? what parameter i need to pass for line level only. line level release_hold should not impact to header level holds.
    if possible, please can you provide the api and its parameters.
    Thanks
    reddy

    Put an audit trail on the ordered_quantity field and use oe_order_lines_all_ac1 view.
    It will give you what you need.
    Hope this helps,
    Sandeep Gandhi

  • Selecting sales order lines by code

    Hi ABAP experts,
    We run into large sales order lines that has different item categories.  There are billing plan lines included in the sales order.
    Say we have 2000 lines in sales order- 30th.210,520,..will be billing plan items. The busines needs an ability for SAP to select the billing plan lines on push of a button.
    If we are able to select the records based out of xvbap-pstyv (itemcategory) , how can we code to select those sales order lines? I am trying to achieve the select sales order line through a coding effort
    Alternatively any other plan?
    Thank you for your time
    Kris
    Edited by: chidam33 on Oct 17, 2011 9:32 PM
    Edited by: chidam33 on Oct 17, 2011 9:32 PM

    Hello,
    "The busines needs an ability for SAP to select the billing plan lines on push of a button." - are you using any report?
    Please check VBKD table where items are listed with billing plan number (FPLNR), you can then check FPLA table
    Thanks

  • Restrict purchase order line item selection in MEMASSPO

    How to restrict in authorizations of role which purchase order line item can be selected by user in the memasspo.
    I have a scenario where Business wants that no user should be allowed to select all the Purchase Order line items rather should be displayed sub set of the entire purchase Order line items while attempting to do mass change in the PO created.
    Thanks & Regards,
    Abhimanu

    The mass transaction is meant to change many POs and their items at one time.
    The user can not change anything with mass which he cannot do in ME22N.
    if he can do it in ME22N, why should he not be able to do it in MEMASSPO?
    Based on what criteria should a item be restricted from a change in your special case, how do you define your subset?

  • Select aentries from table Z-Table for all sales order line items

    Hi friends,
    can anyone please explain me about the "Select entries from table Z-Table for all sales order line items".
    Thanks.

    Moderator message - Welcome to SCN.
    But
    Moderator message - Please search before asking. Press F1 on SELECT and look at the FOR ALL ENTRIES addition. - post locked             
    Rob

  • Using Multi Select List in SQL Query

    Hi all,
    I am trying to using a Multi Select list for filtering of a report. I have :P2_RISK_SEVERITY which has has the possibility of values Very Low:Low:Medium:High:Very High. How do I use this Multi Select in the where section of a SQL query?
    I need to say something along the lines of:
    Select RISK_SEVERITY from TBL_RMD_RISKS where RISK_SEVERITY = (one of the options selected in the multi select)
    Thanks for the help.

    Hi there,
    The above suggestion will work perfectly as long as the table you're querying is relatively small, but keep in mind that applying the INSTR to the left side of the WHERE clause will always result in a full table scan. This means that if your table is large and RISK_SEVERITY is indexed, the index will never be used. Here is another approach (credit to AskTom) that converts your colon-delimited string of selected values to a list that can be used in an "IN(...)" clause, which will use an index on RISK_SEVERITY as long as the optimizer otherwise deems it appropriate:
    -- creates a type to hold a list of varchars
    CREATE OR REPLACE TYPE vc2_list_type as table of varchar2(4000);
    -- converts a colon-delimited string of values to a list of varchars
    CREATE OR REPLACE FUNCTION vc2_list(p_string in varchar2)
       return vc2_list_type is
       l_string       long default p_string || ':';
       l_data         vc2_list_type := vc2_list_type();
       n              pls_integer;
    begin
       loop
          exit when l_string is null;
          n := instr(l_string, ':');
          l_data.extend;
          l_data(l_data.count) := ltrim(rtrim(substr(l_string, 1, n - 1)));
          l_string := substr(l_string, n + 1);
       end loop;
       return l_data;
    end vc2_list;
    -- your WHERE clause
    where risk_severity in(
             select *
               from the(select cast(vc2_list(:P2_RISK_SEVERITY) as vc2_list_type)
                          from dual))
    ...Hope this helps,
    John

  • 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

  • Multi Select Listbox - Horiz Scroll Bar available?

    I'm using the Standard - Multi Select Listbox and would like to see a horizontal scroll bar on it down at the bottom when the contents are too long to display in their entirety (and many of my items in the list start off the same with the distinguishing text at the end of the line).
    What's puzzling is that in the JSC IDE Design Tab, when I set some of the Default items to a long string, the control is shown on the Design Tab WITH a bottom, horizonal scroll bar! I was so hopeful! But when deployed the vertical scroll bar is there, but the Horiz scroll bar is gone :-(
    Has anyone gotten a horizontal scroll on a Multi Select Listbox to work in Creator??
    Suggestion to Creator Team: Please add a horizontal scroll bar OR at least allow a cursor on items in the list so that the user can manually move thru the line to see what it says.
    Thanks!

    Please help -
    These work arounds don't work for me. I'm using the latest Creator2 with all updates applied. Any chance of seeing a property for this soon?
    Work around 1:
    ===========================
    <div style="height: 72px; left: 144px; top: 192px; position: absolute; width: 288px; overflow: auto;">
    <ui:listbox binding="#{weblinkpl_page1.listbox1}" id="listbox1" items="#{SessionBean1.listOptions}"
    onChange="common_timeoutSubmitForm(this.form, 'tabSet1:weblink_tab2:layoutPanel2:listbox1');"/>
    </div>
    => Gives me listbox with no width at top left corner of page. Populating with very long file, changes the width of the box rather than creating a scroll bar.
    Work around 2:
    ======================
    <div style="overflow: auto;">
    <ui:listbox binding="#{weblinkpl_page1.listbox1}" id="listbox1" items="#{SessionBean1.listOptions}"
    onChange="common_timeoutSubmitForm(this.form, 'tabSet1:weblink_tab2:layoutPanel2:listbox1'); style="height: 72px; left: 144px; top: 192px; position: absolute; width: 288px; "/>
    </div>
    => Gives me good looking listbox but long filenames get truncated in display. No horizontal scroll bar.

Maybe you are looking for