Dynamic Approvel List for AME

Introduction

 This Post illustrates steps required to Oracle has provided an API to get the dynamic list of approvers for AME.

We need to pass the transaction type id and transaction number. Transaction Id is available in HR_API_TRANSACTION_TABLE, and transaction_type_id is available in AME_CALLING_APPS table.

Script

CREATE OR REPLACE PROCEDURE get_ame_transaction_approvers (
p_ame_transaction_id IN NUMBER,
p_transaction_type_id IN VARCHAR2 DEFAULT ‘LSGEXLR’,
p_ame_approvers_list OUT ame_approver_record2_table_ss
)
IS
p_apprs_view_type VARCHAR2 (100) := ‘Active’;
p_coa_insertions_flag VARCHAR2 (100) := ‘N’;
v_ame_approvers_list ame_approver_record2_table_ss;
v_ame_order_type_list ame_insertion_record2_table_ss
:= ame_insertion_record2_table_ss
();
v_all_approvers_count VARCHAR2 (100);
v_warning_msg_name VARCHAR2 (100);
v_error_msg_text VARCHAR2 (100);
BEGIN
—Reference to get the Transaction Type ID, Note that LSG is my custom Application Name
—select * from ame_calling_apps
—where fnd_application_id = 800
—and application_name = ‘LSG External Learning Request’
v_ame_approvers_list := ame_approver_record2_table_ss ();
ame_dynamic_approval_pkg.get_ame_apprs_and_ins_list
(p_application_id => 800,
p_transaction_type => p_transaction_type_id,
p_transaction_id => p_ame_transaction_id,
p_ame_approvers_list => v_ame_approvers_list,
p_ame_order_type_list => v_ame_order_type_list,
p_all_approvers_count => v_all_approvers_count,
p_warning_msg_name => v_warning_msg_name,
p_error_msg_text => v_error_msg_text
);
p_ame_approvers_list := v_ame_approvers_list;
EXCEPTION
WHEN OTHERS
THEN
DBMS_OUTPUT.put_line (‘exception’, SQLERRM);
END;
–Sample procedure given below:
DECLARE
v_ame_transaction_id NUMBER := 21610630;
v_transaction_type_id VARCHAR2 (20) := ‘LSGEXLR’;
v_ame_approvers_list ame_approver_record2_table_ss;
BEGIN
get_ame_transaction_approvers
(p_ame_transaction_id => v_ame_transaction_id,
p_ame_approvers_list => v_ame_approvers_list
);

IF (v_ame_approvers_list.COUNT (1)) > 0
THEN
FOR i IN 1 .. v_ame_approvers_list.COUNT (i)
LOOP
DBMS_OUTPUT.put_line (‘ approver_order_number =>’,
v_ame_approvers_list (i).approver_order_number
);
DBMS_OUTPUT.put_line (‘ **** display_name =>’,
v_ame_approvers_list (i).display_name
);
DBMS_OUTPUT.put_line (‘ **** Approver Category =>’,
v_ame_approvers_list (i).approver_category
);
DBMS_OUTPUT.put_line (‘ **** approval_status =>’,
v_ame_approvers_list (i).approval_status
);
DBMS_OUTPUT.put_line (‘ **** source =>’,
v_ame_approvers_list (i).SOURCE
);
END LOOP;
ELSE
DBMS_OUTPUT.put_line (‘ No Approver Found’);
END IF;
END;

Summary

This Post described the script Dynamic Approver List for AME in Oracle EBS R12.

Got any queries?

Do drop a note by writing us at doyen.ebiz@gmail.com or use the comment section below to ask your questions.

Recent Posts