google.com, pub-9147708292038568, DIRECT, f08c47fec0942fa0
Wednesday, March 18, 2020
Wednesday, February 6, 2019
Script to Get Application user password from backend
--Package Specification
CREATE OR REPLACE PACKAGE get_pwd
AS
FUNCTION decrypt (KEY IN VARCHAR2, VALUE IN VARCHAR2)
RETURN VARCHAR2;
END get_pwd;
/
--Package Body
CREATE OR REPLACE PACKAGE BODY get_pwd
AS
FUNCTION decrypt (KEY IN VARCHAR2, VALUE IN VARCHAR2)
RETURN VARCHAR2
AS
LANGUAGE JAVA
NAME 'oracle.apps.fnd.security.WebSessionManagerProc.decrypt(java.lang.String,java.lang.String) return java.lang.String';
END get_pwd;
/
--Query to execute
SELECT usr.user_name,
get_pwd.decrypt
((SELECT (SELECT get_pwd.decrypt
(fnd_web_sec.get_guest_username_pwd,
usertable.encrypted_foundation_password
)
FROM DUAL) AS apps_password
FROM fnd_user usertable
WHERE usertable.user_name =
(SELECT SUBSTR
(fnd_web_sec.get_guest_username_pwd,
1,
INSTR
(fnd_web_sec.get_guest_username_pwd,
'/'
)
- 1
)
FROM DUAL)),
usr.encrypted_user_password
) PASSWORD
FROM fnd_user usr
WHERE usr.user_name = :p_user_name;
CREATE OR REPLACE PACKAGE get_pwd
AS
FUNCTION decrypt (KEY IN VARCHAR2, VALUE IN VARCHAR2)
RETURN VARCHAR2;
END get_pwd;
/
--Package Body
CREATE OR REPLACE PACKAGE BODY get_pwd
AS
FUNCTION decrypt (KEY IN VARCHAR2, VALUE IN VARCHAR2)
RETURN VARCHAR2
AS
LANGUAGE JAVA
NAME 'oracle.apps.fnd.security.WebSessionManagerProc.decrypt(java.lang.String,java.lang.String) return java.lang.String';
END get_pwd;
/
--Query to execute
SELECT usr.user_name,
get_pwd.decrypt
((SELECT (SELECT get_pwd.decrypt
(fnd_web_sec.get_guest_username_pwd,
usertable.encrypted_foundation_password
)
FROM DUAL) AS apps_password
FROM fnd_user usertable
WHERE usertable.user_name =
(SELECT SUBSTR
(fnd_web_sec.get_guest_username_pwd,
1,
INSTR
(fnd_web_sec.get_guest_username_pwd,
'/'
)
- 1
)
FROM DUAL)),
usr.encrypted_user_password
) PASSWORD
FROM fnd_user usr
WHERE usr.user_name = :p_user_name;
Wednesday, May 9, 2018
How to Use an API to Delete An Order Level Modifier From a Sales Order
How to Use an API to Delete An Order Level Modifier From a Sales Order (Doc ID 2191611.1)
SET SERVEROUTPUT ON;
DECLARE
/* Initialize the proper Context */
l_org_id NUMBER := 204; --ENTER VALUE
l_application_id NUMBER := 660;
l_responsibility_id NUMBER := 21623; --ENTER VALUE
l_user_id NUMBER := 1013419; --ENTER VALUE
/* Initialize the record to G_MISS to enable defaulting */
l_header_rec oe_order_pub.header_rec_type := oe_order_pub.g_miss_header_rec;
l_old_header_rec oe_order_pub.header_rec_type;
l_header_adj_tbl oe_order_pub.header_adj_tbl_type;
l_line_tbl oe_order_pub.line_tbl_type;
l_old_line_tbl oe_order_pub.line_tbl_type;
l_action_request_tbl oe_order_pub.request_tbl_type;
x_header_rec oe_order_pub.header_rec_type;
x_header_val_rec oe_order_pub.header_val_rec_type;
x_header_adj_tbl oe_order_pub.header_adj_tbl_type;
x_header_adj_val_tbl oe_order_pub.header_adj_val_tbl_type;
x_header_price_att_tbl oe_order_pub.header_price_att_tbl_type;
x_header_adj_att_tbl oe_order_pub.header_adj_att_tbl_type;
x_header_adj_assoc_tbl oe_order_pub.header_adj_assoc_tbl_type;
x_header_scredit_tbl oe_order_pub.header_scredit_tbl_type;
x_header_scredit_val_tbl oe_order_pub.header_scredit_val_tbl_type;
x_line_tbl oe_order_pub.line_tbl_type;
x_line_val_tbl oe_order_pub.line_val_tbl_type;
x_line_adj_tbl oe_order_pub.line_adj_tbl_type;
x_line_adj_val_tbl oe_order_pub.line_adj_val_tbl_type;
x_line_price_att_tbl oe_order_pub.line_price_att_tbl_type;
x_line_adj_att_tbl oe_order_pub.line_adj_att_tbl_type;
x_line_adj_assoc_tbl oe_order_pub.line_adj_assoc_tbl_type;
x_line_scredit_tbl oe_order_pub.line_scredit_tbl_type;
x_line_scredit_val_tbl oe_order_pub.line_scredit_val_tbl_type;
x_lot_serial_tbl oe_order_pub.lot_serial_tbl_type;
x_lot_serial_val_tbl oe_order_pub.lot_serial_val_tbl_type;
x_action_request_tbl oe_order_pub.request_tbl_type;
l_return_status VARCHAR2(2000);
l_msg_count NUMBER;
l_msg_data VARCHAR2(2000);
l_line_cnt NUMBER := 0;
l_top_model_line_index NUMBER;
l_link_to_line_index NUMBER;
x_debug_file VARCHAR2(100);
BEGIN
/* Turn on DBMS Output */
DBMS_OUTPUT.enable(1000000);
DBMS_OUTPUT.put_line('Executing Process Order API for R12');
mo_global.init('ONT');
mo_global.set_policy_context('S'
, l_org_id);
fnd_global.apps_initialize(l_user_id
, l_responsibility_id
, l_application_id
, NULL);
oe_msg_pub.initialize;
oe_debug_pub.initialize;
oe_debug_pub.setdebuglevel(5);
x_debug_file := oe_debug_pub.set_debug_mode('FILE');
DBMS_OUTPUT.put_line('START OF NEW DEBUG');
l_header_rec := oe_order_pub.g_miss_header_rec;
l_header_rec.header_id := 431776; --ENTER VALUE
l_header_rec.operation := oe_globals.g_opr_update;
l_header_adj_tbl(1) := oe_order_pub.g_miss_header_adj_rec;
l_header_adj_tbl(1).operation := oe_globals.g_opr_delete;
l_header_adj_tbl(1).header_id := 431776; --ENTER VALUE
l_header_adj_tbl(1).price_adjustment_id := 3994447; --ENTER VALUE
/* Call the Process Order API with Header Rec and Line Tbl */
oe_order_pub.process_order(p_api_version_number => 1
, p_org_id => l_org_id
, -- For R12
p_init_msg_list => fnd_api.g_true
, p_return_values => fnd_api.g_true
, p_action_commit => fnd_api.g_true
, x_return_status => l_return_status
, x_msg_count => l_msg_count
, x_msg_data => l_msg_data
, p_action_request_tbl => l_action_request_tbl
, p_header_rec => l_header_rec
, p_old_header_rec => l_old_header_rec
, p_header_adj_tbl => l_header_adj_tbl
, p_line_tbl => l_line_tbl
, p_old_line_tbl => l_old_line_tbl
, x_header_rec => x_header_rec
, x_header_val_rec => x_header_val_rec
, x_header_adj_tbl => x_header_adj_tbl
, x_header_adj_val_tbl => x_header_adj_val_tbl
, x_header_price_att_tbl => x_header_price_att_tbl
, x_header_adj_att_tbl => x_header_adj_att_tbl
, x_header_adj_assoc_tbl => x_header_adj_assoc_tbl
, x_header_scredit_tbl => x_header_scredit_tbl
, x_header_scredit_val_tbl => x_header_scredit_val_tbl
, x_line_tbl => x_line_tbl
, x_line_val_tbl => x_line_val_tbl
, x_line_adj_tbl => x_line_adj_tbl
, x_line_adj_val_tbl => x_line_adj_val_tbl
, x_line_price_att_tbl => x_line_price_att_tbl
, x_line_adj_att_tbl => x_line_adj_att_tbl
, x_line_adj_assoc_tbl => x_line_adj_assoc_tbl
, x_line_scredit_tbl => x_line_scredit_tbl
, x_line_scredit_val_tbl => x_line_scredit_val_tbl
, x_lot_serial_tbl => x_lot_serial_tbl
, x_lot_serial_val_tbl => x_lot_serial_val_tbl
, x_action_request_tbl => x_action_request_tbl);
DBMS_OUTPUT.put_line( 'OM Debug file:'
|| oe_debug_pub.g_dir
|| '/'
|| oe_debug_pub.g_file);
IF l_return_status = 'S'
THEN
DBMS_OUTPUT.put_line('CONGRATULATIONS! !');
DBMS_OUTPUT.put_line('Commit Issued ... !');
COMMIT;
ELSE
DBMS_OUTPUT.put_line('Hard Luck! Error(s) while attempting to delete Order Level Modifier');
END IF;
FOR i IN 1 .. oe_msg_pub.g_msg_tbl.COUNT
LOOP
DBMS_OUTPUT.put_line(apps.oe_msg_pub.get(i
, 'F'));
END LOOP;
oe_msg_pub.g_msg_tbl.delete;
/* Turn off OM Debug */
oe_debug_pub.debug_off;
END;
/
How Can One Create a Price Adjustment for More than One Line on a Return Order Using Process Order API
Metalink Ref: How Can One Create a Price Adjustment for More than One Line on a Return Order Using Process Order API? (Doc ID 2113054.1)
SET SERVEROUTPUT ON
DECLARE
l_header_rec oe_order_pub.header_rec_type;
l_line_tbl oe_order_pub.line_tbl_type;
l_action_request_tbl oe_order_pub.request_tbl_type;
l_header_adj_tbl oe_order_pub.header_adj_tbl_type;
l_line_adj_tbl oe_order_pub.line_adj_tbl_type;
l_header_scr_tbl oe_order_pub.header_scredit_tbl_type;
l_line_scredit_tbl oe_order_pub.line_scredit_tbl_type;
l_request_rec oe_order_pub.request_rec_type;
l_return_status VARCHAR2(1000);
l_msg_count NUMBER;
l_msg_data VARCHAR2(1000);
p_api_version_number NUMBER := 1.0;
p_init_msg_list VARCHAR2(10) := fnd_api.g_false;
p_return_values VARCHAR2(10) := fnd_api.g_false;
p_action_commit VARCHAR2(10) := fnd_api.g_false;
x_return_status VARCHAR2(1);
x_msg_count NUMBER;
x_msg_data VARCHAR2(100);
p_header_rec oe_order_pub.header_rec_type := oe_order_pub.g_miss_header_rec;
p_old_header_rec oe_order_pub.header_rec_type := oe_order_pub.g_miss_header_rec;
p_header_val_rec oe_order_pub.header_val_rec_type := oe_order_pub.g_miss_header_val_rec;
p_old_header_val_rec oe_order_pub.header_val_rec_type := oe_order_pub.g_miss_header_val_rec;
p_header_adj_tbl oe_order_pub.header_adj_tbl_type := oe_order_pub.g_miss_header_adj_tbl;
p_old_header_adj_tbl oe_order_pub.header_adj_tbl_type := oe_order_pub.g_miss_header_adj_tbl;
p_header_adj_val_tbl oe_order_pub.header_adj_val_tbl_type := oe_order_pub.g_miss_header_adj_val_tbl;
p_old_header_adj_val_tbl oe_order_pub.header_adj_val_tbl_type := oe_order_pub.g_miss_header_adj_val_tbl;
p_header_price_att_tbl oe_order_pub.header_price_att_tbl_type := oe_order_pub.g_miss_header_price_att_tbl;
p_old_header_price_att_tbl oe_order_pub.header_price_att_tbl_type := oe_order_pub.g_miss_header_price_att_tbl;
p_header_adj_att_tbl oe_order_pub.header_adj_att_tbl_type := oe_order_pub.g_miss_header_adj_att_tbl;
p_old_header_adj_att_tbl oe_order_pub.header_adj_att_tbl_type := oe_order_pub.g_miss_header_adj_att_tbl;
p_header_adj_assoc_tbl oe_order_pub.header_adj_assoc_tbl_type := oe_order_pub.g_miss_header_adj_assoc_tbl;
p_old_header_adj_assoc_tbl oe_order_pub.header_adj_assoc_tbl_type := oe_order_pub.g_miss_header_adj_assoc_tbl;
p_header_scredit_tbl oe_order_pub.header_scredit_tbl_type := oe_order_pub.g_miss_header_scredit_tbl;
p_old_header_scredit_tbl oe_order_pub.header_scredit_tbl_type := oe_order_pub.g_miss_header_scredit_tbl;
p_header_scredit_val_tbl oe_order_pub.header_scredit_val_tbl_type := oe_order_pub.g_miss_header_scredit_val_tbl;
p_old_header_scredit_val_tbl oe_order_pub.header_scredit_val_tbl_type := oe_order_pub.g_miss_header_scredit_val_tbl;
p_line_tbl oe_order_pub.line_tbl_type := oe_order_pub.g_miss_line_tbl;
p_old_line_tbl oe_order_pub.line_tbl_type := oe_order_pub.g_miss_line_tbl;
p_line_val_tbl oe_order_pub.line_val_tbl_type := oe_order_pub.g_miss_line_val_tbl;
p_old_line_val_tbl oe_order_pub.line_val_tbl_type := oe_order_pub.g_miss_line_val_tbl;
p_line_adj_tbl oe_order_pub.line_adj_tbl_type := oe_order_pub.g_miss_line_adj_tbl;
p_old_line_adj_tbl oe_order_pub.line_adj_tbl_type := oe_order_pub.g_miss_line_adj_tbl;
p_line_adj_val_tbl oe_order_pub.line_adj_val_tbl_type := oe_order_pub.g_miss_line_adj_val_tbl;
p_old_line_adj_val_tbl oe_order_pub.line_adj_val_tbl_type := oe_order_pub.g_miss_line_adj_val_tbl;
p_line_price_att_tbl oe_order_pub.line_price_att_tbl_type := oe_order_pub.g_miss_line_price_att_tbl;
p_old_line_price_att_tbl oe_order_pub.line_price_att_tbl_type := oe_order_pub.g_miss_line_price_att_tbl;
p_line_adj_att_tbl oe_order_pub.line_adj_att_tbl_type := oe_order_pub.g_miss_line_adj_att_tbl;
p_old_line_adj_att_tbl oe_order_pub.line_adj_att_tbl_type := oe_order_pub.g_miss_line_adj_att_tbl;
p_line_adj_assoc_tbl oe_order_pub.line_adj_assoc_tbl_type := oe_order_pub.g_miss_line_adj_assoc_tbl;
p_old_line_adj_assoc_tbl oe_order_pub.line_adj_assoc_tbl_type := oe_order_pub.g_miss_line_adj_assoc_tbl;
p_line_scredit_tbl oe_order_pub.line_scredit_tbl_type := oe_order_pub.g_miss_line_scredit_tbl;
p_old_line_scredit_tbl oe_order_pub.line_scredit_tbl_type := oe_order_pub.g_miss_line_scredit_tbl;
p_line_scredit_val_tbl oe_order_pub.line_scredit_val_tbl_type := oe_order_pub.g_miss_line_scredit_val_tbl;
p_old_line_scredit_val_tbl oe_order_pub.line_scredit_val_tbl_type := oe_order_pub.g_miss_line_scredit_val_tbl;
p_lot_serial_tbl oe_order_pub.lot_serial_tbl_type := oe_order_pub.g_miss_lot_serial_tbl;
p_old_lot_serial_tbl oe_order_pub.lot_serial_tbl_type := oe_order_pub.g_miss_lot_serial_tbl;
p_lot_serial_val_tbl oe_order_pub.lot_serial_val_tbl_type := oe_order_pub.g_miss_lot_serial_val_tbl;
p_old_lot_serial_val_tbl oe_order_pub.lot_serial_val_tbl_type := oe_order_pub.g_miss_lot_serial_val_tbl;
p_action_request_tbl oe_order_pub.request_tbl_type := oe_order_pub.g_miss_request_tbl;
x_header_val_rec oe_order_pub.header_val_rec_type;
x_header_adj_tbl oe_order_pub.header_adj_tbl_type;
x_header_adj_val_tbl oe_order_pub.header_adj_val_tbl_type;
x_header_price_att_tbl oe_order_pub.header_price_att_tbl_type;
x_header_adj_att_tbl oe_order_pub.header_adj_att_tbl_type;
x_header_adj_assoc_tbl oe_order_pub.header_adj_assoc_tbl_type;
x_header_scredit_tbl oe_order_pub.header_scredit_tbl_type;
x_header_scredit_val_tbl oe_order_pub.header_scredit_val_tbl_type;
x_line_val_tbl oe_order_pub.line_val_tbl_type;
x_line_adj_tbl oe_order_pub.line_adj_tbl_type;
x_line_adj_val_tbl oe_order_pub.line_adj_val_tbl_type;
x_line_price_att_tbl oe_order_pub.line_price_att_tbl_type;
x_line_adj_att_tbl oe_order_pub.line_adj_att_tbl_type;
x_line_adj_assoc_tbl oe_order_pub.line_adj_assoc_tbl_type;
x_line_scredit_tbl oe_order_pub.line_scredit_tbl_type;
x_line_scredit_val_tbl oe_order_pub.line_scredit_val_tbl_type;
x_lot_serial_tbl oe_order_pub.lot_serial_tbl_type;
x_lot_serial_val_tbl oe_order_pub.lot_serial_val_tbl_type;
x_action_request_tbl oe_order_pub.request_tbl_type;
x_debug_file VARCHAR2(500);
l_line_tbl_index NUMBER;
l_msg_index_out NUMBER(10);
BEGIN
DBMS_OUTPUT.enable(1000000);
fnd_global.apps_initialize(1013419
, 21623
, 660); -- user_id , resp_id,resp_appl_id
mo_global.init('ONT'); --Muti-org context setting
mo_global.set_policy_context('S'
, 204); -- org_id
--
oe_debug_pub.g_file := '';
oe_debug_pub.debug_on;
oe_debug_pub.initialize;
x_debug_file := oe_debug_pub.set_debug_mode('FILE');
oe_debug_pub.setdebuglevel(5); -- Use 5 for the most debugging output
oe_debug_pub.add('START OF NEW DEBUG');
--
--This is to UPDATE order line
l_line_tbl_index := 1;
--
-- Changed attributes Header
l_header_rec := oe_order_pub.g_miss_header_rec;
l_header_rec.header_id := 398596; -- pass header_id of the Sales Order
l_header_rec.operation := oe_globals.g_opr_update;
--
-- Changed attributes Lines
l_line_tbl(l_line_tbl_index) := oe_order_pub.g_miss_line_rec;
l_line_tbl(l_line_tbl_index).operation := oe_globals.g_opr_update;
l_line_tbl(l_line_tbl_index).header_id := 398596; -- pass header id of sales order
l_line_tbl(l_line_tbl_index).line_id := 694738; -- pass line_id of the Sales Order Line
--
-- Adjustments attributes for Line
l_line_adj_tbl(1) := oe_order_pub.g_miss_line_adj_rec;
l_line_adj_tbl(1).header_id := 398596; -- header_id of the Sales Order
l_line_adj_tbl(1).line_id := 694738; -- line_id of the Sales Order Line
l_line_adj_tbl(1).list_header_id := 238373; -- list_header_id of adjustment
l_line_adj_tbl(1).list_line_id := 304906; -- list_line_id of adjustment
l_line_adj_tbl(1).automatic_flag := 'N';
l_line_adj_tbl(1).list_line_type_code := 'DIS';
l_line_adj_tbl(1).arithmetic_operator := 'NEWPRICE';
l_line_adj_tbl(1).operand := -50.00;
l_line_adj_tbl(1).applied_flag := 'Y';
l_line_adj_tbl(1).updated_flag := 'Y';
l_line_adj_tbl(1).line_index := 1;
--l_line_adj_tbl(1).charge_type_code := <>;
l_line_adj_tbl(1).modifier_level_code := 'LINE';
l_line_adj_tbl(1).operation := oe_globals.g_opr_create;
--
l_line_tbl_index := 2;
--
-- Changed attributes Header
l_header_rec := oe_order_pub.g_miss_header_rec;
l_header_rec.header_id := 398596; -- pass header_id of the Sales Order
l_header_rec.operation := oe_globals.g_opr_update;
--
-- Changed attributes Lines
l_line_tbl(l_line_tbl_index) := oe_order_pub.g_miss_line_rec;
l_line_tbl(l_line_tbl_index).operation := oe_globals.g_opr_update;
l_line_tbl(l_line_tbl_index).header_id := 398596; -- pass header_id of sales order
l_line_tbl(l_line_tbl_index).line_id := 694739; -- pass line_id of the Sales Order Line
--
-- Adjustments attributes for Line
l_line_adj_tbl(2) := oe_order_pub.g_miss_line_adj_rec;
l_line_adj_tbl(2).header_id := 398596; -- header_id of the Sales Order
l_line_adj_tbl(2).line_id := 694739; -- line_id of the Sales Order Line
l_line_adj_tbl(2).list_header_id := 238373; -- list_header_id of adjustment
l_line_adj_tbl(2).list_line_id := 304906; -- list_line_id of adjustment
l_line_adj_tbl(2).automatic_flag := 'N';
l_line_adj_tbl(2).list_line_type_code := 'DIS';
l_line_adj_tbl(2).arithmetic_operator := 'NEWPRICE';
l_line_adj_tbl(2).operand := 50.00;
l_line_adj_tbl(2).applied_flag := 'Y';
l_line_adj_tbl(2).updated_flag := 'Y';
l_line_adj_tbl(2).line_index := 1;
--l_line_adj_tbl(2).charge_type_code := <>;
l_line_adj_tbl(2).modifier_level_code := 'LINE';
l_line_adj_tbl(2).operation := oe_globals.g_opr_create;
--
--
-- CALL TO PROCESS ORDER
--
oe_order_pub.process_order(p_api_version_number => 1.0
, p_init_msg_list => fnd_api.g_true
, p_return_values => fnd_api.g_true
, p_action_commit => fnd_api.g_false
, x_return_status => l_return_status
, x_msg_count => l_msg_count
, x_msg_data => l_msg_data
, p_header_rec => l_header_rec
, p_line_tbl => l_line_tbl
, p_line_adj_tbl => l_line_adj_tbl
, p_action_request_tbl => l_action_request_tbl
-- OUT PARAMETERS
, x_header_rec => p_header_rec
, x_header_val_rec => x_header_val_rec
, x_header_adj_tbl => x_header_adj_tbl
, x_header_adj_val_tbl => x_header_adj_val_tbl
, x_header_price_att_tbl => x_header_price_att_tbl
, x_header_adj_att_tbl => x_header_adj_att_tbl
, x_header_adj_assoc_tbl => x_header_adj_assoc_tbl
, x_header_scredit_tbl => x_header_scredit_tbl
, x_header_scredit_val_tbl => x_header_scredit_val_tbl
, x_line_tbl => p_line_tbl
, x_line_val_tbl => x_line_val_tbl
, x_line_adj_tbl => x_line_adj_tbl
, x_line_adj_val_tbl => x_line_adj_val_tbl
, x_line_price_att_tbl => x_line_price_att_tbl
, x_line_adj_att_tbl => x_line_adj_att_tbl
, x_line_adj_assoc_tbl => x_line_adj_assoc_tbl
, x_line_scredit_tbl => x_line_scredit_tbl
, x_line_scredit_val_tbl => x_line_scredit_val_tbl
, x_lot_serial_tbl => x_lot_serial_tbl
, x_lot_serial_val_tbl => x_lot_serial_val_tbl
, x_action_request_tbl => p_action_request_tbl);
DBMS_OUTPUT.put_line( 'OM Debug file: '
|| oe_debug_pub.g_dir
|| '/'
|| oe_debug_pub.g_file);
-- Retrieve messages
FOR i IN 1 .. l_msg_count
LOOP
oe_msg_pub.get(p_msg_index => i
, p_encoded => fnd_api.g_false
, p_data => l_msg_data
, p_msg_index_out => l_msg_index_out);
DBMS_OUTPUT.put_line( 'message is: '
|| l_msg_data);
DBMS_OUTPUT.put_line( 'message index is: '
|| l_msg_index_out);
END LOOP;
-- Check the return status
IF l_return_status = fnd_api.g_ret_sts_success
THEN
DBMS_OUTPUT.put_line('Unit Selling Price Update Successful');
ELSE
DBMS_OUTPUT.put_line('Unit Selling Price Failed');
END IF;
END;
/
SET SERVEROUTPUT ON
DECLARE
l_header_rec oe_order_pub.header_rec_type;
l_line_tbl oe_order_pub.line_tbl_type;
l_action_request_tbl oe_order_pub.request_tbl_type;
l_header_adj_tbl oe_order_pub.header_adj_tbl_type;
l_line_adj_tbl oe_order_pub.line_adj_tbl_type;
l_header_scr_tbl oe_order_pub.header_scredit_tbl_type;
l_line_scredit_tbl oe_order_pub.line_scredit_tbl_type;
l_request_rec oe_order_pub.request_rec_type;
l_return_status VARCHAR2(1000);
l_msg_count NUMBER;
l_msg_data VARCHAR2(1000);
p_api_version_number NUMBER := 1.0;
p_init_msg_list VARCHAR2(10) := fnd_api.g_false;
p_return_values VARCHAR2(10) := fnd_api.g_false;
p_action_commit VARCHAR2(10) := fnd_api.g_false;
x_return_status VARCHAR2(1);
x_msg_count NUMBER;
x_msg_data VARCHAR2(100);
p_header_rec oe_order_pub.header_rec_type := oe_order_pub.g_miss_header_rec;
p_old_header_rec oe_order_pub.header_rec_type := oe_order_pub.g_miss_header_rec;
p_header_val_rec oe_order_pub.header_val_rec_type := oe_order_pub.g_miss_header_val_rec;
p_old_header_val_rec oe_order_pub.header_val_rec_type := oe_order_pub.g_miss_header_val_rec;
p_header_adj_tbl oe_order_pub.header_adj_tbl_type := oe_order_pub.g_miss_header_adj_tbl;
p_old_header_adj_tbl oe_order_pub.header_adj_tbl_type := oe_order_pub.g_miss_header_adj_tbl;
p_header_adj_val_tbl oe_order_pub.header_adj_val_tbl_type := oe_order_pub.g_miss_header_adj_val_tbl;
p_old_header_adj_val_tbl oe_order_pub.header_adj_val_tbl_type := oe_order_pub.g_miss_header_adj_val_tbl;
p_header_price_att_tbl oe_order_pub.header_price_att_tbl_type := oe_order_pub.g_miss_header_price_att_tbl;
p_old_header_price_att_tbl oe_order_pub.header_price_att_tbl_type := oe_order_pub.g_miss_header_price_att_tbl;
p_header_adj_att_tbl oe_order_pub.header_adj_att_tbl_type := oe_order_pub.g_miss_header_adj_att_tbl;
p_old_header_adj_att_tbl oe_order_pub.header_adj_att_tbl_type := oe_order_pub.g_miss_header_adj_att_tbl;
p_header_adj_assoc_tbl oe_order_pub.header_adj_assoc_tbl_type := oe_order_pub.g_miss_header_adj_assoc_tbl;
p_old_header_adj_assoc_tbl oe_order_pub.header_adj_assoc_tbl_type := oe_order_pub.g_miss_header_adj_assoc_tbl;
p_header_scredit_tbl oe_order_pub.header_scredit_tbl_type := oe_order_pub.g_miss_header_scredit_tbl;
p_old_header_scredit_tbl oe_order_pub.header_scredit_tbl_type := oe_order_pub.g_miss_header_scredit_tbl;
p_header_scredit_val_tbl oe_order_pub.header_scredit_val_tbl_type := oe_order_pub.g_miss_header_scredit_val_tbl;
p_old_header_scredit_val_tbl oe_order_pub.header_scredit_val_tbl_type := oe_order_pub.g_miss_header_scredit_val_tbl;
p_line_tbl oe_order_pub.line_tbl_type := oe_order_pub.g_miss_line_tbl;
p_old_line_tbl oe_order_pub.line_tbl_type := oe_order_pub.g_miss_line_tbl;
p_line_val_tbl oe_order_pub.line_val_tbl_type := oe_order_pub.g_miss_line_val_tbl;
p_old_line_val_tbl oe_order_pub.line_val_tbl_type := oe_order_pub.g_miss_line_val_tbl;
p_line_adj_tbl oe_order_pub.line_adj_tbl_type := oe_order_pub.g_miss_line_adj_tbl;
p_old_line_adj_tbl oe_order_pub.line_adj_tbl_type := oe_order_pub.g_miss_line_adj_tbl;
p_line_adj_val_tbl oe_order_pub.line_adj_val_tbl_type := oe_order_pub.g_miss_line_adj_val_tbl;
p_old_line_adj_val_tbl oe_order_pub.line_adj_val_tbl_type := oe_order_pub.g_miss_line_adj_val_tbl;
p_line_price_att_tbl oe_order_pub.line_price_att_tbl_type := oe_order_pub.g_miss_line_price_att_tbl;
p_old_line_price_att_tbl oe_order_pub.line_price_att_tbl_type := oe_order_pub.g_miss_line_price_att_tbl;
p_line_adj_att_tbl oe_order_pub.line_adj_att_tbl_type := oe_order_pub.g_miss_line_adj_att_tbl;
p_old_line_adj_att_tbl oe_order_pub.line_adj_att_tbl_type := oe_order_pub.g_miss_line_adj_att_tbl;
p_line_adj_assoc_tbl oe_order_pub.line_adj_assoc_tbl_type := oe_order_pub.g_miss_line_adj_assoc_tbl;
p_old_line_adj_assoc_tbl oe_order_pub.line_adj_assoc_tbl_type := oe_order_pub.g_miss_line_adj_assoc_tbl;
p_line_scredit_tbl oe_order_pub.line_scredit_tbl_type := oe_order_pub.g_miss_line_scredit_tbl;
p_old_line_scredit_tbl oe_order_pub.line_scredit_tbl_type := oe_order_pub.g_miss_line_scredit_tbl;
p_line_scredit_val_tbl oe_order_pub.line_scredit_val_tbl_type := oe_order_pub.g_miss_line_scredit_val_tbl;
p_old_line_scredit_val_tbl oe_order_pub.line_scredit_val_tbl_type := oe_order_pub.g_miss_line_scredit_val_tbl;
p_lot_serial_tbl oe_order_pub.lot_serial_tbl_type := oe_order_pub.g_miss_lot_serial_tbl;
p_old_lot_serial_tbl oe_order_pub.lot_serial_tbl_type := oe_order_pub.g_miss_lot_serial_tbl;
p_lot_serial_val_tbl oe_order_pub.lot_serial_val_tbl_type := oe_order_pub.g_miss_lot_serial_val_tbl;
p_old_lot_serial_val_tbl oe_order_pub.lot_serial_val_tbl_type := oe_order_pub.g_miss_lot_serial_val_tbl;
p_action_request_tbl oe_order_pub.request_tbl_type := oe_order_pub.g_miss_request_tbl;
x_header_val_rec oe_order_pub.header_val_rec_type;
x_header_adj_tbl oe_order_pub.header_adj_tbl_type;
x_header_adj_val_tbl oe_order_pub.header_adj_val_tbl_type;
x_header_price_att_tbl oe_order_pub.header_price_att_tbl_type;
x_header_adj_att_tbl oe_order_pub.header_adj_att_tbl_type;
x_header_adj_assoc_tbl oe_order_pub.header_adj_assoc_tbl_type;
x_header_scredit_tbl oe_order_pub.header_scredit_tbl_type;
x_header_scredit_val_tbl oe_order_pub.header_scredit_val_tbl_type;
x_line_val_tbl oe_order_pub.line_val_tbl_type;
x_line_adj_tbl oe_order_pub.line_adj_tbl_type;
x_line_adj_val_tbl oe_order_pub.line_adj_val_tbl_type;
x_line_price_att_tbl oe_order_pub.line_price_att_tbl_type;
x_line_adj_att_tbl oe_order_pub.line_adj_att_tbl_type;
x_line_adj_assoc_tbl oe_order_pub.line_adj_assoc_tbl_type;
x_line_scredit_tbl oe_order_pub.line_scredit_tbl_type;
x_line_scredit_val_tbl oe_order_pub.line_scredit_val_tbl_type;
x_lot_serial_tbl oe_order_pub.lot_serial_tbl_type;
x_lot_serial_val_tbl oe_order_pub.lot_serial_val_tbl_type;
x_action_request_tbl oe_order_pub.request_tbl_type;
x_debug_file VARCHAR2(500);
l_line_tbl_index NUMBER;
l_msg_index_out NUMBER(10);
BEGIN
DBMS_OUTPUT.enable(1000000);
fnd_global.apps_initialize(1013419
, 21623
, 660); -- user_id , resp_id,resp_appl_id
mo_global.init('ONT'); --Muti-org context setting
mo_global.set_policy_context('S'
, 204); -- org_id
--
oe_debug_pub.g_file := '';
oe_debug_pub.debug_on;
oe_debug_pub.initialize;
x_debug_file := oe_debug_pub.set_debug_mode('FILE');
oe_debug_pub.setdebuglevel(5); -- Use 5 for the most debugging output
oe_debug_pub.add('START OF NEW DEBUG');
--
--This is to UPDATE order line
l_line_tbl_index := 1;
--
-- Changed attributes Header
l_header_rec := oe_order_pub.g_miss_header_rec;
l_header_rec.header_id := 398596; -- pass header_id of the Sales Order
l_header_rec.operation := oe_globals.g_opr_update;
--
-- Changed attributes Lines
l_line_tbl(l_line_tbl_index) := oe_order_pub.g_miss_line_rec;
l_line_tbl(l_line_tbl_index).operation := oe_globals.g_opr_update;
l_line_tbl(l_line_tbl_index).header_id := 398596; -- pass header id of sales order
l_line_tbl(l_line_tbl_index).line_id := 694738; -- pass line_id of the Sales Order Line
--
-- Adjustments attributes for Line
l_line_adj_tbl(1) := oe_order_pub.g_miss_line_adj_rec;
l_line_adj_tbl(1).header_id := 398596; -- header_id of the Sales Order
l_line_adj_tbl(1).line_id := 694738; -- line_id of the Sales Order Line
l_line_adj_tbl(1).list_header_id := 238373; -- list_header_id of adjustment
l_line_adj_tbl(1).list_line_id := 304906; -- list_line_id of adjustment
l_line_adj_tbl(1).automatic_flag := 'N';
l_line_adj_tbl(1).list_line_type_code := 'DIS';
l_line_adj_tbl(1).arithmetic_operator := 'NEWPRICE';
l_line_adj_tbl(1).operand := -50.00;
l_line_adj_tbl(1).applied_flag := 'Y';
l_line_adj_tbl(1).updated_flag := 'Y';
l_line_adj_tbl(1).line_index := 1;
--l_line_adj_tbl(1).charge_type_code := <>;
l_line_adj_tbl(1).modifier_level_code := 'LINE';
l_line_adj_tbl(1).operation := oe_globals.g_opr_create;
--
l_line_tbl_index := 2;
--
-- Changed attributes Header
l_header_rec := oe_order_pub.g_miss_header_rec;
l_header_rec.header_id := 398596; -- pass header_id of the Sales Order
l_header_rec.operation := oe_globals.g_opr_update;
--
-- Changed attributes Lines
l_line_tbl(l_line_tbl_index) := oe_order_pub.g_miss_line_rec;
l_line_tbl(l_line_tbl_index).operation := oe_globals.g_opr_update;
l_line_tbl(l_line_tbl_index).header_id := 398596; -- pass header_id of sales order
l_line_tbl(l_line_tbl_index).line_id := 694739; -- pass line_id of the Sales Order Line
--
-- Adjustments attributes for Line
l_line_adj_tbl(2) := oe_order_pub.g_miss_line_adj_rec;
l_line_adj_tbl(2).header_id := 398596; -- header_id of the Sales Order
l_line_adj_tbl(2).line_id := 694739; -- line_id of the Sales Order Line
l_line_adj_tbl(2).list_header_id := 238373; -- list_header_id of adjustment
l_line_adj_tbl(2).list_line_id := 304906; -- list_line_id of adjustment
l_line_adj_tbl(2).automatic_flag := 'N';
l_line_adj_tbl(2).list_line_type_code := 'DIS';
l_line_adj_tbl(2).arithmetic_operator := 'NEWPRICE';
l_line_adj_tbl(2).operand := 50.00;
l_line_adj_tbl(2).applied_flag := 'Y';
l_line_adj_tbl(2).updated_flag := 'Y';
l_line_adj_tbl(2).line_index := 1;
--l_line_adj_tbl(2).charge_type_code := <>;
l_line_adj_tbl(2).modifier_level_code := 'LINE';
l_line_adj_tbl(2).operation := oe_globals.g_opr_create;
--
--
-- CALL TO PROCESS ORDER
--
oe_order_pub.process_order(p_api_version_number => 1.0
, p_init_msg_list => fnd_api.g_true
, p_return_values => fnd_api.g_true
, p_action_commit => fnd_api.g_false
, x_return_status => l_return_status
, x_msg_count => l_msg_count
, x_msg_data => l_msg_data
, p_header_rec => l_header_rec
, p_line_tbl => l_line_tbl
, p_line_adj_tbl => l_line_adj_tbl
, p_action_request_tbl => l_action_request_tbl
-- OUT PARAMETERS
, x_header_rec => p_header_rec
, x_header_val_rec => x_header_val_rec
, x_header_adj_tbl => x_header_adj_tbl
, x_header_adj_val_tbl => x_header_adj_val_tbl
, x_header_price_att_tbl => x_header_price_att_tbl
, x_header_adj_att_tbl => x_header_adj_att_tbl
, x_header_adj_assoc_tbl => x_header_adj_assoc_tbl
, x_header_scredit_tbl => x_header_scredit_tbl
, x_header_scredit_val_tbl => x_header_scredit_val_tbl
, x_line_tbl => p_line_tbl
, x_line_val_tbl => x_line_val_tbl
, x_line_adj_tbl => x_line_adj_tbl
, x_line_adj_val_tbl => x_line_adj_val_tbl
, x_line_price_att_tbl => x_line_price_att_tbl
, x_line_adj_att_tbl => x_line_adj_att_tbl
, x_line_adj_assoc_tbl => x_line_adj_assoc_tbl
, x_line_scredit_tbl => x_line_scredit_tbl
, x_line_scredit_val_tbl => x_line_scredit_val_tbl
, x_lot_serial_tbl => x_lot_serial_tbl
, x_lot_serial_val_tbl => x_lot_serial_val_tbl
, x_action_request_tbl => p_action_request_tbl);
DBMS_OUTPUT.put_line( 'OM Debug file: '
|| oe_debug_pub.g_dir
|| '/'
|| oe_debug_pub.g_file);
-- Retrieve messages
FOR i IN 1 .. l_msg_count
LOOP
oe_msg_pub.get(p_msg_index => i
, p_encoded => fnd_api.g_false
, p_data => l_msg_data
, p_msg_index_out => l_msg_index_out);
DBMS_OUTPUT.put_line( 'message is: '
|| l_msg_data);
DBMS_OUTPUT.put_line( 'message index is: '
|| l_msg_index_out);
END LOOP;
-- Check the return status
IF l_return_status = fnd_api.g_ret_sts_success
THEN
DBMS_OUTPUT.put_line('Unit Selling Price Update Successful');
ELSE
DBMS_OUTPUT.put_line('Unit Selling Price Failed');
END IF;
END;
/
How to Re-Price an Existing Order Using Process Order API
Ref: How to Re-Price an Existing Order Using Process Order API (Doc ID 2212209.1)
SET SERVEROUTPUT ON
DECLARE
/* Initialize the proper Context */
l_org_id NUMBER := 204;
l_application_id NUMBER := 660;
l_responsibility_id NUMBER := 21623;
l_user_id NUMBER := 1013618;
/* Initialize the record to G_MISS to enable defaulting */
l_header_rec oe_order_pub.header_rec_type := oe_order_pub.g_miss_header_rec;
l_old_header_rec oe_order_pub.header_rec_type;
l_line_tbl oe_order_pub.line_tbl_type;
l_old_line_tbl oe_order_pub.line_tbl_type;
l_action_request_tbl oe_order_pub.request_tbl_type;
x_header_rec oe_order_pub.header_rec_type;
x_header_val_rec oe_order_pub.header_val_rec_type;
x_header_adj_tbl oe_order_pub.header_adj_tbl_type;
x_header_adj_val_tbl oe_order_pub.header_adj_val_tbl_type;
x_header_price_att_tbl oe_order_pub.header_price_att_tbl_type;
x_header_adj_att_tbl oe_order_pub.header_adj_att_tbl_type;
x_header_adj_assoc_tbl oe_order_pub.header_adj_assoc_tbl_type;
x_header_scredit_tbl oe_order_pub.header_scredit_tbl_type;
x_header_scredit_val_tbl oe_order_pub.header_scredit_val_tbl_type;
x_line_tbl oe_order_pub.line_tbl_type;
x_line_val_tbl oe_order_pub.line_val_tbl_type;
x_line_adj_tbl oe_order_pub.line_adj_tbl_type;
x_line_adj_val_tbl oe_order_pub.line_adj_val_tbl_type;
x_line_price_att_tbl oe_order_pub.line_price_att_tbl_type;
x_line_adj_att_tbl oe_order_pub.line_adj_att_tbl_type;
x_line_adj_assoc_tbl oe_order_pub.line_adj_assoc_tbl_type;
x_line_scredit_tbl oe_order_pub.line_scredit_tbl_type;
x_line_scredit_val_tbl oe_order_pub.line_scredit_val_tbl_type;
x_lot_serial_tbl oe_order_pub.lot_serial_tbl_type;
x_lot_serial_val_tbl oe_order_pub.lot_serial_val_tbl_type;
x_action_request_tbl oe_order_pub.request_tbl_type;
l_return_status VARCHAR2(2000);
l_msg_count NUMBER;
l_msg_data VARCHAR2(2000);
l_file_val VARCHAR2(1000);
l_msg_index_out NUMBER(10); --Added --this statement
l_line_cnt NUMBER := 0;
l_top_model_line_index NUMBER;
l_link_to_line_index NUMBER;
BEGIN
/* Set the appropriate context */
fnd_global.apps_initialize(l_user_id
, l_responsibility_id
, l_application_id
, NULL);
mo_global.init('ONT'); --Muti-org context setting
mo_global.set_policy_context('S'
, 204); -- org_id
/* Turn on OM Debug */
oe_debug_pub.debug_on;
oe_debug_pub.initialize;
oe_debug_pub.setdebuglevel(5);
l_file_val := oe_debug_pub.set_debug_mode('FILE');
DBMS_OUTPUT.put_line( 'Debug log is stored at: '
|| l_file_val);
oe_debug_pub.add('START OF NEW DEBUG'); --Added this statement
/* Populate the required Header Fields */
l_header_rec.operation := oe_globals.g_opr_update;
l_header_rec.header_id:= 262917; -- header_id of order to reprice
/* Populate the Actions Table for Header */
l_action_request_tbl(1).request_type := oe_globals.g_price_order;
l_action_request_tbl(1).entity_code:= oe_globals.g_entity_header;
l_action_request_tbl(1).entity_id:= l_header_rec.header_id;
/* Call the Process Order API with Header Rec and Line Tbl */
oe_order_pub.process_order(
p_api_version_number => 1.0
, p_org_id => l_org_id -- For R12
, p_init_msg_list => fnd_api.g_true
, p_return_values => fnd_api.g_true
, p_action_commit => fnd_api.g_true
, x_return_status => l_return_status
, x_msg_count => l_msg_count
, x_msg_data => l_msg_data
, p_action_request_tbl => l_action_request_tbl
, p_header_rec => l_header_rec
, p_old_header_rec => l_old_header_rec
, p_line_tbl => l_line_tbl
, p_old_line_tbl => l_old_line_tbl
, x_header_rec => x_header_rec
, x_header_val_rec => x_header_val_rec
, x_header_adj_tbl => x_header_adj_tbl
, x_header_adj_val_tbl => x_header_adj_val_tbl
, x_header_price_att_tbl => x_header_price_att_tbl
, x_header_adj_att_tbl => x_header_adj_att_tbl
, x_header_adj_assoc_tbl => x_header_adj_assoc_tbl
, x_header_scredit_tbl => x_header_scredit_tbl
, x_header_scredit_val_tbl => x_header_scredit_val_tbl
, x_line_tbl => x_line_tbl
, x_line_val_tbl => x_line_val_tbl
, x_line_adj_tbl => x_line_adj_tbl
, x_line_adj_val_tbl => x_line_adj_val_tbl
, x_line_price_att_tbl => x_line_price_att_tbl
, x_line_adj_att_tbl => x_line_adj_att_tbl
, x_line_adj_assoc_tbl => x_line_adj_assoc_tbl
, x_line_scredit_tbl => x_line_scredit_tbl
, x_line_scredit_val_tbl => x_line_scredit_val_tbl
, x_lot_serial_tbl => x_lot_serial_tbl
, x_lot_serial_val_tbl => x_lot_serial_val_tbl
, x_action_request_tbl => x_action_request_tbl);
-- Retrieve messages
FOR i IN 1 .. l_msg_count
LOOP
oe_msg_pub.get(
p_msg_index => i
, p_encoded => fnd_api.g_false
, p_data => l_msg_data
, p_msg_index_out => l_msg_index_out);
DBMS_OUTPUT.put_line( 'message is: '
|| l_msg_data);
DBMS_OUTPUT.put_line( 'message index is: '
|| l_msg_index_out);
END LOOP;
-- Check the return status
/*added statements above */
/* Display the status and Order Number if successfully created */
IF l_return_status = 'S'
THEN
DBMS_OUTPUT.put_line( 'Order Number : '
|| x_header_rec.order_number
|| '; Header Id : '
|| x_header_rec.header_id);
ELSE
DBMS_OUTPUT.put_line('Error(s) while repricing Order.');
DBMS_OUTPUT.put_line( l_msg_count
|| ';'
|| l_msg_data);
END IF;
/* Display the messages in the message stack */
FOR i IN 1 .. oe_msg_pub.g_msg_tbl.COUNT
LOOP
DBMS_OUTPUT.put_line(apps.oe_msg_pub.get(i
, 'F'));
END LOOP;
/* Turn off OM Debug */
oe_debug_pub.debug_off;
oe_msg_pub.g_msg_tbl.delete;
END;
/
SET SERVEROUTPUT ON
DECLARE
/* Initialize the proper Context */
l_org_id NUMBER := 204;
l_application_id NUMBER := 660;
l_responsibility_id NUMBER := 21623;
l_user_id NUMBER := 1013618;
/* Initialize the record to G_MISS to enable defaulting */
l_header_rec oe_order_pub.header_rec_type := oe_order_pub.g_miss_header_rec;
l_old_header_rec oe_order_pub.header_rec_type;
l_line_tbl oe_order_pub.line_tbl_type;
l_old_line_tbl oe_order_pub.line_tbl_type;
l_action_request_tbl oe_order_pub.request_tbl_type;
x_header_rec oe_order_pub.header_rec_type;
x_header_val_rec oe_order_pub.header_val_rec_type;
x_header_adj_tbl oe_order_pub.header_adj_tbl_type;
x_header_adj_val_tbl oe_order_pub.header_adj_val_tbl_type;
x_header_price_att_tbl oe_order_pub.header_price_att_tbl_type;
x_header_adj_att_tbl oe_order_pub.header_adj_att_tbl_type;
x_header_adj_assoc_tbl oe_order_pub.header_adj_assoc_tbl_type;
x_header_scredit_tbl oe_order_pub.header_scredit_tbl_type;
x_header_scredit_val_tbl oe_order_pub.header_scredit_val_tbl_type;
x_line_tbl oe_order_pub.line_tbl_type;
x_line_val_tbl oe_order_pub.line_val_tbl_type;
x_line_adj_tbl oe_order_pub.line_adj_tbl_type;
x_line_adj_val_tbl oe_order_pub.line_adj_val_tbl_type;
x_line_price_att_tbl oe_order_pub.line_price_att_tbl_type;
x_line_adj_att_tbl oe_order_pub.line_adj_att_tbl_type;
x_line_adj_assoc_tbl oe_order_pub.line_adj_assoc_tbl_type;
x_line_scredit_tbl oe_order_pub.line_scredit_tbl_type;
x_line_scredit_val_tbl oe_order_pub.line_scredit_val_tbl_type;
x_lot_serial_tbl oe_order_pub.lot_serial_tbl_type;
x_lot_serial_val_tbl oe_order_pub.lot_serial_val_tbl_type;
x_action_request_tbl oe_order_pub.request_tbl_type;
l_return_status VARCHAR2(2000);
l_msg_count NUMBER;
l_msg_data VARCHAR2(2000);
l_file_val VARCHAR2(1000);
l_msg_index_out NUMBER(10); --Added --this statement
l_line_cnt NUMBER := 0;
l_top_model_line_index NUMBER;
l_link_to_line_index NUMBER;
BEGIN
/* Set the appropriate context */
fnd_global.apps_initialize(l_user_id
, l_responsibility_id
, l_application_id
, NULL);
mo_global.init('ONT'); --Muti-org context setting
mo_global.set_policy_context('S'
, 204); -- org_id
/* Turn on OM Debug */
oe_debug_pub.debug_on;
oe_debug_pub.initialize;
oe_debug_pub.setdebuglevel(5);
l_file_val := oe_debug_pub.set_debug_mode('FILE');
DBMS_OUTPUT.put_line( 'Debug log is stored at: '
|| l_file_val);
oe_debug_pub.add('START OF NEW DEBUG'); --Added this statement
/* Populate the required Header Fields */
l_header_rec.operation := oe_globals.g_opr_update;
l_header_rec.header_id:= 262917; -- header_id of order to reprice
/* Populate the Actions Table for Header */
l_action_request_tbl(1).request_type := oe_globals.g_price_order;
l_action_request_tbl(1).entity_code:= oe_globals.g_entity_header;
l_action_request_tbl(1).entity_id:= l_header_rec.header_id;
/* Call the Process Order API with Header Rec and Line Tbl */
oe_order_pub.process_order(
p_api_version_number => 1.0
, p_org_id => l_org_id -- For R12
, p_init_msg_list => fnd_api.g_true
, p_return_values => fnd_api.g_true
, p_action_commit => fnd_api.g_true
, x_return_status => l_return_status
, x_msg_count => l_msg_count
, x_msg_data => l_msg_data
, p_action_request_tbl => l_action_request_tbl
, p_header_rec => l_header_rec
, p_old_header_rec => l_old_header_rec
, p_line_tbl => l_line_tbl
, p_old_line_tbl => l_old_line_tbl
, x_header_rec => x_header_rec
, x_header_val_rec => x_header_val_rec
, x_header_adj_tbl => x_header_adj_tbl
, x_header_adj_val_tbl => x_header_adj_val_tbl
, x_header_price_att_tbl => x_header_price_att_tbl
, x_header_adj_att_tbl => x_header_adj_att_tbl
, x_header_adj_assoc_tbl => x_header_adj_assoc_tbl
, x_header_scredit_tbl => x_header_scredit_tbl
, x_header_scredit_val_tbl => x_header_scredit_val_tbl
, x_line_tbl => x_line_tbl
, x_line_val_tbl => x_line_val_tbl
, x_line_adj_tbl => x_line_adj_tbl
, x_line_adj_val_tbl => x_line_adj_val_tbl
, x_line_price_att_tbl => x_line_price_att_tbl
, x_line_adj_att_tbl => x_line_adj_att_tbl
, x_line_adj_assoc_tbl => x_line_adj_assoc_tbl
, x_line_scredit_tbl => x_line_scredit_tbl
, x_line_scredit_val_tbl => x_line_scredit_val_tbl
, x_lot_serial_tbl => x_lot_serial_tbl
, x_lot_serial_val_tbl => x_lot_serial_val_tbl
, x_action_request_tbl => x_action_request_tbl);
-- Retrieve messages
FOR i IN 1 .. l_msg_count
LOOP
oe_msg_pub.get(
p_msg_index => i
, p_encoded => fnd_api.g_false
, p_data => l_msg_data
, p_msg_index_out => l_msg_index_out);
DBMS_OUTPUT.put_line( 'message is: '
|| l_msg_data);
DBMS_OUTPUT.put_line( 'message index is: '
|| l_msg_index_out);
END LOOP;
-- Check the return status
/*added statements above */
/* Display the status and Order Number if successfully created */
IF l_return_status = 'S'
THEN
DBMS_OUTPUT.put_line( 'Order Number : '
|| x_header_rec.order_number
|| '; Header Id : '
|| x_header_rec.header_id);
ELSE
DBMS_OUTPUT.put_line('Error(s) while repricing Order.');
DBMS_OUTPUT.put_line( l_msg_count
|| ';'
|| l_msg_data);
END IF;
/* Display the messages in the message stack */
FOR i IN 1 .. oe_msg_pub.g_msg_tbl.COUNT
LOOP
DBMS_OUTPUT.put_line(apps.oe_msg_pub.get(i
, 'F'));
END LOOP;
/* Turn off OM Debug */
oe_debug_pub.debug_off;
oe_msg_pub.g_msg_tbl.delete;
END;
/
Subscribe to:
Posts (Atom)