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 anticipiationI 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,
ZhxianglR 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,
SharathYou 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?
ThanksI 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
FabriceHi 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,
JanStandard 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
reddyPut 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 PMHello,
"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,
AbhimanuThe 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 -
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 AMI 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
-
I am trying to copy 3 photos from an album in iPhoto to my iPhone. I have tried to move them to PhotoStream. I "select" the photos in the Album and then click on PhotoStream in the "Share" menu at the bottom of the screen. Nothing happens. I have al
-
Can not use Silverfast scanning technology or my Epson 2100 Colour Stylus printer since upgrading to Mac OS X Lion. I had been assured that Silverfast would work and had no idea the printer would become redundent! Not Good information from Apple!! An
-
Youtube Widget not working when publishing to folder.
I am having trouble adding youtube videos into my site. I am publishing to a folder than uploading, and all goes fine except the youtube widget doesn't activate when uploaded. Any thoughts on why this is happening? I did a quick work around using htm
-
Any solutions yet with noise issu
Has anyone found a solution yet with the audigy?2 platinum crackling, static and popping issue? I find this is obviously not a top priority with creative, as they continue to release new products with the same problem. I've been searching everywhere
-
Lync 2013 Client Product Activation
I have read the other posts regarding Product Activation Failed and this does not work for me. Basically we have Lync hosted via a MSP. I have Office2013 Professional. The MSP provided the install files; It works for two users that we are testing; ho