DBA Data[Home] [Help]

APPS.PO_AME_WF_PVT dependencies on AME_UTIL

Line 6: g_next_approvers ame_util.approversTable2;

2: -- $Header: PO_AME_WF_PVT.plb 120.4.12020000.1 2013/02/10 12:21:20 vegajula noship $
3:
4: -- Read the profile option that enables/disables the debug log
5: g_po_wf_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('PO_SET_DEBUG_WORKFLOW_ON'),'N');
6: g_next_approvers ame_util.approversTable2;
7: g_production_Indexes ame_util.idList;
8: g_variable_Names ame_util.stringList;
9: g_variable_Values ame_util.stringList;
10: g_debug_stmt CONSTANT BOOLEAN := PO_DEBUG.is_debug_stmt_on;

Line 7: g_production_Indexes ame_util.idList;

3:
4: -- Read the profile option that enables/disables the debug log
5: g_po_wf_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('PO_SET_DEBUG_WORKFLOW_ON'),'N');
6: g_next_approvers ame_util.approversTable2;
7: g_production_Indexes ame_util.idList;
8: g_variable_Names ame_util.stringList;
9: g_variable_Values ame_util.stringList;
10: g_debug_stmt CONSTANT BOOLEAN := PO_DEBUG.is_debug_stmt_on;
11: g_pkg_name CONSTANT VARCHAR2(20) := 'PO_AME_WF_PVT';

Line 8: g_variable_Names ame_util.stringList;

4: -- Read the profile option that enables/disables the debug log
5: g_po_wf_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('PO_SET_DEBUG_WORKFLOW_ON'),'N');
6: g_next_approvers ame_util.approversTable2;
7: g_production_Indexes ame_util.idList;
8: g_variable_Names ame_util.stringList;
9: g_variable_Values ame_util.stringList;
10: g_debug_stmt CONSTANT BOOLEAN := PO_DEBUG.is_debug_stmt_on;
11: g_pkg_name CONSTANT VARCHAR2(20) := 'PO_AME_WF_PVT';
12: g_module_prefix CONSTANT VARCHAR2(30) := 'po.plsql.' || g_pkg_name||'.';

Line 9: g_variable_Values ame_util.stringList;

5: g_po_wf_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('PO_SET_DEBUG_WORKFLOW_ON'),'N');
6: g_next_approvers ame_util.approversTable2;
7: g_production_Indexes ame_util.idList;
8: g_variable_Names ame_util.stringList;
9: g_variable_Values ame_util.stringList;
10: g_debug_stmt CONSTANT BOOLEAN := PO_DEBUG.is_debug_stmt_on;
11: g_pkg_name CONSTANT VARCHAR2(20) := 'PO_AME_WF_PVT';
12: g_module_prefix CONSTANT VARCHAR2(30) := 'po.plsql.' || g_pkg_name||'.';
13:

Line 22: approverRecord IN ame_util.approverRecord2 )

18:
19: FUNCTION is_last_approver_record(
20: documentId NUMBER,
21: documentType VARCHAR2,
22: approverRecord IN ame_util.approverRecord2 )
23: RETURN VARCHAR2;
24:
25: FUNCTION check_set_esigners(
26: itemtype IN VARCHAR2,

Line 234: l_orig_system WF_USERS.ORIG_SYSTEM%TYPE := ame_util.perOrigSystem;

230: l_document_subtype PO_DOCUMENT_TYPES.DOCUMENT_SUBTYPE%TYPE;
231: l_next_approver_id NUMBER;
232: l_next_approver_user_name FND_USER.USER_NAME%TYPE;
233: l_next_approver_disp_name WF_USERS.DISPLAY_NAME%TYPE;
234: l_orig_system WF_USERS.ORIG_SYSTEM%TYPE := ame_util.perOrigSystem;
235: l_sequence_num NUMBER;
236: l_approver_type VARCHAR2(30);
237: l_doc_string VARCHAR2(200);
238: l_preparer_user_name FND_USER.USER_NAME%TYPE;

Line 246: l_ame_exception ame_util.longestStringType;

242: l_transaction_type PO_DOCUMENT_TYPES.AME_TRANSACTION_TYPE%TYPE;
243: l_completeYNO VARCHAR2(1);
244: l_position_has_valid_approvers VARCHAR2(10);
245: l_need_to_get_next_approver BOOLEAN;
246: l_ame_exception ame_util.longestStringType;
247: l_transaction_id NUMBER;
248: l_next_approver ame_util.approverRecord;
249: xitemIndexesOut ame_util.idList;
250: xitemClassesOut ame_util.stringList;

Line 248: l_next_approver ame_util.approverRecord;

244: l_position_has_valid_approvers VARCHAR2(10);
245: l_need_to_get_next_approver BOOLEAN;
246: l_ame_exception ame_util.longestStringType;
247: l_transaction_id NUMBER;
248: l_next_approver ame_util.approverRecord;
249: xitemIndexesOut ame_util.idList;
250: xitemClassesOut ame_util.stringList;
251: xitemIdsOut ame_util.stringList;
252: xitemSourcesOut ame_util.longStringList;

Line 249: xitemIndexesOut ame_util.idList;

245: l_need_to_get_next_approver BOOLEAN;
246: l_ame_exception ame_util.longestStringType;
247: l_transaction_id NUMBER;
248: l_next_approver ame_util.approverRecord;
249: xitemIndexesOut ame_util.idList;
250: xitemClassesOut ame_util.stringList;
251: xitemIdsOut ame_util.stringList;
252: xitemSourcesOut ame_util.longStringList;
253: xtransVariableNamesOut ame_util.stringList;

Line 250: xitemClassesOut ame_util.stringList;

246: l_ame_exception ame_util.longestStringType;
247: l_transaction_id NUMBER;
248: l_next_approver ame_util.approverRecord;
249: xitemIndexesOut ame_util.idList;
250: xitemClassesOut ame_util.stringList;
251: xitemIdsOut ame_util.stringList;
252: xitemSourcesOut ame_util.longStringList;
253: xtransVariableNamesOut ame_util.stringList;
254: xtransVariableValuesOut ame_util.stringList;

Line 251: xitemIdsOut ame_util.stringList;

247: l_transaction_id NUMBER;
248: l_next_approver ame_util.approverRecord;
249: xitemIndexesOut ame_util.idList;
250: xitemClassesOut ame_util.stringList;
251: xitemIdsOut ame_util.stringList;
252: xitemSourcesOut ame_util.longStringList;
253: xtransVariableNamesOut ame_util.stringList;
254: xtransVariableValuesOut ame_util.stringList;
255: AME_GET_NEXT_APPRVR_EXCEPTION EXCEPTION;

Line 252: xitemSourcesOut ame_util.longStringList;

248: l_next_approver ame_util.approverRecord;
249: xitemIndexesOut ame_util.idList;
250: xitemClassesOut ame_util.stringList;
251: xitemIdsOut ame_util.stringList;
252: xitemSourcesOut ame_util.longStringList;
253: xtransVariableNamesOut ame_util.stringList;
254: xtransVariableValuesOut ame_util.stringList;
255: AME_GET_NEXT_APPRVR_EXCEPTION EXCEPTION;
256: l_progress VARCHAR2(3) := '000';

Line 253: xtransVariableNamesOut ame_util.stringList;

249: xitemIndexesOut ame_util.idList;
250: xitemClassesOut ame_util.stringList;
251: xitemIdsOut ame_util.stringList;
252: xitemSourcesOut ame_util.longStringList;
253: xtransVariableNamesOut ame_util.stringList;
254: xtransVariableValuesOut ame_util.stringList;
255: AME_GET_NEXT_APPRVR_EXCEPTION EXCEPTION;
256: l_progress VARCHAR2(3) := '000';
257: l_api_name VARCHAR2(500) := 'get_next_approvers';

Line 254: xtransVariableValuesOut ame_util.stringList;

250: xitemClassesOut ame_util.stringList;
251: xitemIdsOut ame_util.stringList;
252: xitemSourcesOut ame_util.longStringList;
253: xtransVariableNamesOut ame_util.stringList;
254: xtransVariableValuesOut ame_util.stringList;
255: AME_GET_NEXT_APPRVR_EXCEPTION EXCEPTION;
256: l_progress VARCHAR2(3) := '000';
257: l_api_name VARCHAR2(500) := 'get_next_approvers';
258: l_log_head VARCHAR2(500) := g_module_prefix||l_api_name;

Line 313: ame_util2.detailedApprovalStatusFlagYN := ame_util.booleanTrue;

309: IF (g_po_wf_debug = 'Y') THEN
310: PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey, l_log_head||':'||l_progress||' Calling AME API with transaction id ' || l_transaction_id);
311: END IF;
312:
313: ame_util2.detailedApprovalStatusFlagYN := ame_util.booleanTrue;
314: AME_API2.getNextApprovers3 (
315: applicationIdIn => applicationId,
316: transactionTypeIn => l_transaction_type,
317: transactionIdIn => l_transaction_id,

Line 318: flagApproversAsNotifiedIn => ame_util.booleanTrue,

314: AME_API2.getNextApprovers3 (
315: applicationIdIn => applicationId,
316: transactionTypeIn => l_transaction_type,
317: transactionIdIn => l_transaction_id,
318: flagApproversAsNotifiedIn => ame_util.booleanTrue,
319: approvalProcessCompleteYNOut => l_completeYNO,
320: nextApproversOut => g_next_approvers,
321: itemIndexesOut => xitemIndexesOut,
322: itemClassesOut => xitemClassesOut,

Line 446: l_ame_exception ame_util.longestStringType;

442: actid IN NUMBER,
443: funcmode IN VARCHAR2,
444: resultout OUT NOCOPY VARCHAR2)
445: IS
446: l_ame_exception ame_util.longestStringType;
447: l_progress VARCHAR2(3) := '000';
448: l_doc_string VARCHAR2(200);
449: l_api_name VARCHAR2(500) := 'is_ame_exception';
450: l_log_head VARCHAR2(500) := g_module_prefix||l_api_name;

Line 523: IF (g_next_approvers(l_approver_index).orig_system = ame_util.posOrigSystem) THEN

519:
520: WHILE ( l_approver_index IS NOT NULL ) LOOP
521:
522: l_position_has_valid_approvers := 'Y';
523: IF (g_next_approvers(l_approver_index).orig_system = ame_util.posOrigSystem) THEN
524:
525: BEGIN
526: -----------------------------------------------------------------------
527: -- SQL What: Get the person assigned to position returned by AME.

Line 539: AND wu.orig_system = ame_util.perorigsystem

535: FROM per_all_people_f person,
536: per_all_assignments_f asg,
537: wf_users wu
538: WHERE asg.position_id = g_next_approvers(l_approver_index).orig_system_id
539: AND wu.orig_system = ame_util.perorigsystem
540: AND wu.orig_system_id = person.person_id
541: AND TRUNC(SYSDATE) BETWEEN person.effective_start_date AND NVL(person.effective_end_date, TRUNC( SYSDATE))
542: AND person.person_id = asg.person_id
543: AND asg.primary_flag = 'Y'

Line 574: END IF; --g_next_approvers(l_approver_index).orig_system = ame_util.posOrigSystem

570: g_next_approvers.delete(l_approver_index);
571: l_position_has_valid_approvers := 'NO_USERS';
572: END IF; -- is_last_approver_record IF
573: END;
574: END IF; --g_next_approvers(l_approver_index).orig_system = ame_util.posOrigSystem
575:
576: l_approver_index := g_next_approvers.next(l_approver_index);
577: END LOOP; -- l_approver_index NOT NULL LOOP
578:

Line 614: approverRecord IN ame_util.approverRecord2 )

610: -------------------------------------------------------------------------------
611: FUNCTION is_last_approver_record(
612: documentId NUMBER,
613: documentType VARCHAR2,
614: approverRecord IN ame_util.approverRecord2 )
615: RETURN VARCHAR2
616: IS
617: l_is_last_approver_record VARCHAR2(1);
618: l_total_approver_count NUMBER;

Line 620: tmpApproverList ame_util.approversTable2;

616: IS
617: l_is_last_approver_record VARCHAR2(1);
618: l_total_approver_count NUMBER;
619: l_current_approver_index NUMBER;
620: tmpApproverList ame_util.approversTable2;
621: l_process_out VARCHAR2(10);
622:
623: BEGIN
624: ame_api2.getAllApprovers7 ( applicationIdIn => applicationId,

Line 844: IF (g_next_approvers (l_approver_index).orig_system = ame_util.perorigsystem) THEN

840: --Fetch next approver_id from the global list.
841: -- If the approver is a PER role then use the same person id.
842: -- If the approver is POS role, then find out the first user corresponding to that person.
843: -- If it is an FND USER pick the employee_id corresponding to that FND USER
844: IF (g_next_approvers (l_approver_index).orig_system = ame_util.perorigsystem) THEN
845:
846: l_next_approver_id := g_next_approvers (l_approver_index).orig_system_id;
847:
848: ELSIF (g_next_approvers (l_approver_index).orig_system = ame_util.posorigsystem) THEN

Line 848: ELSIF (g_next_approvers (l_approver_index).orig_system = ame_util.posorigsystem) THEN

844: IF (g_next_approvers (l_approver_index).orig_system = ame_util.perorigsystem) THEN
845:
846: l_next_approver_id := g_next_approvers (l_approver_index).orig_system_id;
847:
848: ELSIF (g_next_approvers (l_approver_index).orig_system = ame_util.posorigsystem) THEN
849:
850: BEGIN
851: -----------------------------------------------------------------------
852: -- SQL What: Get the person assigned to position returned by AME.

Line 864: AND wu.orig_system = ame_util.perorigsystem

860: FROM per_all_people_f person ,
861: per_all_assignments_f asg,
862: wf_users wu
863: WHERE asg.position_id = g_next_approvers (l_approver_index).orig_system_id
864: AND wu.orig_system = ame_util.perorigsystem
865: AND wu.orig_system_id = person.person_id
866: AND TRUNC (sysdate) BETWEEN person.effective_start_date AND NVL (person.effective_end_date ,TRUNC (sysdate))
867: AND person.person_id = asg.person_id
868: AND asg.primary_flag = 'Y'

Line 884: ELSIF (g_next_approvers (l_approver_index).orig_system = ame_util.fnduserorigsystem) THEN

880: WHEN no_data_found THEN
881: RAISE;
882: END;
883:
884: ELSIF (g_next_approvers (l_approver_index).orig_system = ame_util.fnduserorigsystem) THEN
885:
886: SELECT employee_id
887: INTO l_next_approver_id
888: FROM fnd_user

Line 899: wf_directory.getusername (ame_util.perorigsystem, l_next_approver_id, l_next_approver_user_name, l_next_approver_disp_name);

895:
896: t_po_varname (16) := 'AME_APPROVER_TYPE';
897: t_po_varval (16) := g_next_approvers (l_approver_index).orig_system;
898:
899: wf_directory.getusername (ame_util.perorigsystem, l_next_approver_id, l_next_approver_user_name, l_next_approver_disp_name);
900:
901: l_progress := '050';
902:
903: IF (g_po_wf_debug = 'Y') THEN

Line 907: IF (g_next_approvers (l_approver_index).orig_system = ame_util.perorigsystem) THEN

903: IF (g_po_wf_debug = 'Y') THEN
904: PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey, l_log_head||':'||l_progress||' l_next_approver_user_name:'||l_next_approver_user_name);
905: END IF;
906:
907: IF (g_next_approvers (l_approver_index).orig_system = ame_util.perorigsystem) THEN
908: t_po_varname (17) := 'APPROVER_USER_NAME';
909: t_po_varval (17) := g_next_approvers (l_approver_index).name;
910: t_po_varname (18) := 'APPROVER_DISPLAY_NAME';
911: t_po_varval (18) := g_next_approvers (l_approver_index).display_name;

Line 923: IF (g_next_approvers (l_approver_index).approver_category = ame_util.fyiapprovercategory) THEN

919: -- set owner username
920: l_owner_user_name := t_po_varval (17);
921:
922: t_po_varname (19) := 'IS_FYI_APPROVER';
923: IF (g_next_approvers (l_approver_index).approver_category = ame_util.fyiapprovercategory) THEN
924: t_po_varval (19) := 'Y';
925: l_has_fyi_app := 'Y';
926: l_start_block_activity := 'N';
927: ELSE

Line 1179: l_current_approver ame_util.approverRecord2;

1175: IS
1176: l_progress VARCHAR2(3) := '000';
1177: l_document_id NUMBER;
1178: l_transaction_type po_document_types.ame_transaction_type%TYPE;
1179: l_current_approver ame_util.approverRecord2;
1180: l_forwardee ame_util.approverRecord2;
1181: l_approver_posoition_id NUMBER;
1182: l_approver_type VARCHAR2(10);
1183: l_parent_item_type wf_items.parent_item_type%TYPE;

Line 1180: l_forwardee ame_util.approverRecord2;

1176: l_progress VARCHAR2(3) := '000';
1177: l_document_id NUMBER;
1178: l_transaction_type po_document_types.ame_transaction_type%TYPE;
1179: l_current_approver ame_util.approverRecord2;
1180: l_forwardee ame_util.approverRecord2;
1181: l_approver_posoition_id NUMBER;
1182: l_approver_type VARCHAR2(10);
1183: l_parent_item_type wf_items.parent_item_type%TYPE;
1184: l_parent_item_key wf_items.parent_item_key%TYPE;

Line 1187: l_error_message ame_util.longestStringType;

1183: l_parent_item_type wf_items.parent_item_type%TYPE;
1184: l_parent_item_key wf_items.parent_item_key%TYPE;
1185: l_document_type po_document_types.document_type_code%TYPE;
1186: l_ame_transaction_id NUMBER;
1187: l_error_message ame_util.longestStringType;
1188: wf_role_not_found EXCEPTION;
1189: l_api_name VARCHAR2(500) := 'process_response_internal';
1190: l_log_head VARCHAR2(500) := g_module_prefix||l_api_name;
1191: BEGIN

Line 1218: IF (l_approver_type = ame_util.posOrigSystem) THEN

1214: l_transaction_type := po_wf_util_pkg.GetItemAttrText( aname => 'AME_TRANSACTION_TYPE');
1215: l_approver_type := po_wf_util_pkg.GetItemAttrText( aname => 'AME_APPROVER_TYPE');
1216:
1217: --Populate l_forwardee approverRecord on the basis of current approver_type
1218: IF (l_approver_type = ame_util.posOrigSystem) THEN
1219: l_current_approver.orig_system := ame_util.posOrigSystem;
1220: ELSIF (l_approver_type = ame_util.fndUserOrigSystem) THEN
1221: l_current_approver.orig_system := ame_util.fndUserOrigSystem;
1222: ELSE

Line 1219: l_current_approver.orig_system := ame_util.posOrigSystem;

1215: l_approver_type := po_wf_util_pkg.GetItemAttrText( aname => 'AME_APPROVER_TYPE');
1216:
1217: --Populate l_forwardee approverRecord on the basis of current approver_type
1218: IF (l_approver_type = ame_util.posOrigSystem) THEN
1219: l_current_approver.orig_system := ame_util.posOrigSystem;
1220: ELSIF (l_approver_type = ame_util.fndUserOrigSystem) THEN
1221: l_current_approver.orig_system := ame_util.fndUserOrigSystem;
1222: ELSE
1223: l_current_approver.orig_system := ame_util.perOrigSystem;

Line 1220: ELSIF (l_approver_type = ame_util.fndUserOrigSystem) THEN

1216:
1217: --Populate l_forwardee approverRecord on the basis of current approver_type
1218: IF (l_approver_type = ame_util.posOrigSystem) THEN
1219: l_current_approver.orig_system := ame_util.posOrigSystem;
1220: ELSIF (l_approver_type = ame_util.fndUserOrigSystem) THEN
1221: l_current_approver.orig_system := ame_util.fndUserOrigSystem;
1222: ELSE
1223: l_current_approver.orig_system := ame_util.perOrigSystem;
1224: l_current_approver.name := po_wf_util_pkg.GetItemAttrText( aname => 'APPROVER_USER_NAME');

Line 1221: l_current_approver.orig_system := ame_util.fndUserOrigSystem;

1217: --Populate l_forwardee approverRecord on the basis of current approver_type
1218: IF (l_approver_type = ame_util.posOrigSystem) THEN
1219: l_current_approver.orig_system := ame_util.posOrigSystem;
1220: ELSIF (l_approver_type = ame_util.fndUserOrigSystem) THEN
1221: l_current_approver.orig_system := ame_util.fndUserOrigSystem;
1222: ELSE
1223: l_current_approver.orig_system := ame_util.perOrigSystem;
1224: l_current_approver.name := po_wf_util_pkg.GetItemAttrText( aname => 'APPROVER_USER_NAME');
1225: END IF;

Line 1223: l_current_approver.orig_system := ame_util.perOrigSystem;

1219: l_current_approver.orig_system := ame_util.posOrigSystem;
1220: ELSIF (l_approver_type = ame_util.fndUserOrigSystem) THEN
1221: l_current_approver.orig_system := ame_util.fndUserOrigSystem;
1222: ELSE
1223: l_current_approver.orig_system := ame_util.perOrigSystem;
1224: l_current_approver.name := po_wf_util_pkg.GetItemAttrText( aname => 'APPROVER_USER_NAME');
1225: END IF;
1226:
1227: l_current_approver.orig_system_id := po_wf_util_pkg.GetItemAttrNumber( aname => 'AME_APPROVER_ID');

Line 1228: l_forwardee.orig_system := ame_util.perOrigSystem;

1224: l_current_approver.name := po_wf_util_pkg.GetItemAttrText( aname => 'APPROVER_USER_NAME');
1225: END IF;
1226:
1227: l_current_approver.orig_system_id := po_wf_util_pkg.GetItemAttrNumber( aname => 'AME_APPROVER_ID');
1228: l_forwardee.orig_system := ame_util.perOrigSystem;
1229: l_forwardee.name := po_wf_util_pkg.GetItemAttrText( aname => 'FORWARD_TO_USERNAME_RESPONSE');
1230:
1231: BEGIN
1232:

Line 1249: l_current_approver.approval_status := ame_util.approvedStatus;

1245:
1246: --Update current approval record attribute approval_status with proper status
1247: --so that same can be communicated to AME.
1248: IF( p_response = 'APPROVE') THEN
1249: l_current_approver.approval_status := ame_util.approvedStatus;
1250: ELSIF( p_response = 'REJECT') THEN
1251: l_current_approver.approval_status := ame_util.rejectStatus;
1252: ELSIF( p_response = 'TIMEOUT') THEN
1253: l_current_approver.approval_status := ame_util.noResponseStatus;

Line 1251: l_current_approver.approval_status := ame_util.rejectStatus;

1247: --so that same can be communicated to AME.
1248: IF( p_response = 'APPROVE') THEN
1249: l_current_approver.approval_status := ame_util.approvedStatus;
1250: ELSIF( p_response = 'REJECT') THEN
1251: l_current_approver.approval_status := ame_util.rejectStatus;
1252: ELSIF( p_response = 'TIMEOUT') THEN
1253: l_current_approver.approval_status := ame_util.noResponseStatus;
1254: ELSIF( p_response = 'FORWARD') THEN
1255: l_current_approver.approval_status := ame_util.forwardStatus;

Line 1253: l_current_approver.approval_status := ame_util.noResponseStatus;

1249: l_current_approver.approval_status := ame_util.approvedStatus;
1250: ELSIF( p_response = 'REJECT') THEN
1251: l_current_approver.approval_status := ame_util.rejectStatus;
1252: ELSIF( p_response = 'TIMEOUT') THEN
1253: l_current_approver.approval_status := ame_util.noResponseStatus;
1254: ELSIF( p_response = 'FORWARD') THEN
1255: l_current_approver.approval_status := ame_util.forwardStatus;
1256: ELSIF( p_response = 'APPROVE AND FORWARD') THEN
1257: l_current_approver.approval_status := ame_util.approveAndForwardStatus;

Line 1255: l_current_approver.approval_status := ame_util.forwardStatus;

1251: l_current_approver.approval_status := ame_util.rejectStatus;
1252: ELSIF( p_response = 'TIMEOUT') THEN
1253: l_current_approver.approval_status := ame_util.noResponseStatus;
1254: ELSIF( p_response = 'FORWARD') THEN
1255: l_current_approver.approval_status := ame_util.forwardStatus;
1256: ELSIF( p_response = 'APPROVE AND FORWARD') THEN
1257: l_current_approver.approval_status := ame_util.approveAndForwardStatus;
1258: ELSIF( p_response = 'EXCEPTION') THEN
1259: l_current_approver.approval_status := ame_util.exceptionStatus;

Line 1257: l_current_approver.approval_status := ame_util.approveAndForwardStatus;

1253: l_current_approver.approval_status := ame_util.noResponseStatus;
1254: ELSIF( p_response = 'FORWARD') THEN
1255: l_current_approver.approval_status := ame_util.forwardStatus;
1256: ELSIF( p_response = 'APPROVE AND FORWARD') THEN
1257: l_current_approver.approval_status := ame_util.approveAndForwardStatus;
1258: ELSIF( p_response = 'EXCEPTION') THEN
1259: l_current_approver.approval_status := ame_util.exceptionStatus;
1260: END IF;
1261:

Line 1259: l_current_approver.approval_status := ame_util.exceptionStatus;

1255: l_current_approver.approval_status := ame_util.forwardStatus;
1256: ELSIF( p_response = 'APPROVE AND FORWARD') THEN
1257: l_current_approver.approval_status := ame_util.approveAndForwardStatus;
1258: ELSIF( p_response = 'EXCEPTION') THEN
1259: l_current_approver.approval_status := ame_util.exceptionStatus;
1260: END IF;
1261:
1262: l_progress := '030';
1263: IF (g_po_wf_debug = 'Y') THEN

Line 3707: l_approver_list ame_util.approversTable2;

3703: l_child_approver_groupid NUMBER;
3704: l_approver_group_id NUMBER;
3705: l_po_header_id NUMBER;
3706: l_process_out VARCHAR2(10);
3707: l_approver_list ame_util.approversTable2;
3708: ameTransactionType po_document_types.ame_transaction_type%TYPE;
3709: l_response_action VARCHAR2(20);
3710: l_note VARCHAR2(4000);
3711: l_person_id NUMBER;

Line 3716: l_ame_exception ame_util.longestStringType;

3712: l_orig_system VARCHAR2(3);
3713: l_orig_system_id NUMBER;
3714: l_preparer_user_name fnd_user.user_name%TYPE;
3715: l_doc_string VARCHAR2(200);
3716: l_ame_exception ame_util.longestStringType;
3717: l_approver_response VARCHAR2(20);
3718: l_transaction_type po_document_types.ame_transaction_type%TYPE;
3719: l_ame_transaction_id NUMBER;
3720: l_document_type po_document_types.document_type_code%TYPE;

Line 3830: ||' beatByFirstResponderStatus:'||ame_util.beatByFirstResponderStatus);

3826: ||' api_insertion:'|| l_approver_list(i).api_insertion);
3827: PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey, l_log_head||':'||l_progress
3828: ||' group_or_chain_id:'|| l_approver_list(i).group_or_chain_id);
3829: PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey, l_log_head||':'||l_progress
3830: ||' beatByFirstResponderStatus:'||ame_util.beatByFirstResponderStatus);
3831: PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey, l_log_head||':'||l_progress
3832: ||' oamGenerated:'||ame_util.oamGenerated);
3833: PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey, l_log_head||':'||l_progress
3834: ||' l_approver_group_id:'||l_approver_group_id);

Line 3832: ||' oamGenerated:'||ame_util.oamGenerated);

3828: ||' group_or_chain_id:'|| l_approver_list(i).group_or_chain_id);
3829: PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey, l_log_head||':'||l_progress
3830: ||' beatByFirstResponderStatus:'||ame_util.beatByFirstResponderStatus);
3831: PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey, l_log_head||':'||l_progress
3832: ||' oamGenerated:'||ame_util.oamGenerated);
3833: PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey, l_log_head||':'||l_progress
3834: ||' l_approver_group_id:'||l_approver_group_id);
3835: END IF;
3836:

Line 3838: IF ( l_approver_list(i).approval_status = ame_util.beatByFirstResponderStatus

3834: ||' l_approver_group_id:'||l_approver_group_id);
3835: END IF;
3836:
3837: l_progress := '040';
3838: IF ( l_approver_list(i).approval_status = ame_util.beatByFirstResponderStatus
3839: AND l_approver_list(i).api_insertion = ame_util.oamGenerated
3840: AND l_approver_list(i).group_or_chain_id = l_approver_group_id) THEN
3841:
3842: l_orig_system := l_approver_list(i).orig_system;

Line 3839: AND l_approver_list(i).api_insertion = ame_util.oamGenerated

3835: END IF;
3836:
3837: l_progress := '040';
3838: IF ( l_approver_list(i).approval_status = ame_util.beatByFirstResponderStatus
3839: AND l_approver_list(i).api_insertion = ame_util.oamGenerated
3840: AND l_approver_list(i).group_or_chain_id = l_approver_group_id) THEN
3841:
3842: l_orig_system := l_approver_list(i).orig_system;
3843: l_orig_system_id := l_approver_list(i).orig_system_id;

Line 3845: IF ( l_orig_system = ame_util.perOrigSystem) THEN

3841:
3842: l_orig_system := l_approver_list(i).orig_system;
3843: l_orig_system_id := l_approver_list(i).orig_system_id;
3844:
3845: IF ( l_orig_system = ame_util.perOrigSystem) THEN
3846: -- Employee Supervisor Record.
3847: l_person_id := l_orig_system_id;
3848:
3849: ELSIF ( l_orig_system = ame_util.posOrigSystem) THEN

Line 3849: ELSIF ( l_orig_system = ame_util.posOrigSystem) THEN

3845: IF ( l_orig_system = ame_util.perOrigSystem) THEN
3846: -- Employee Supervisor Record.
3847: l_person_id := l_orig_system_id;
3848:
3849: ELSIF ( l_orig_system = ame_util.posOrigSystem) THEN
3850: -- Position Hierarchy Record.
3851: BEGIN
3852: -----------------------------------------------------------------------
3853: -- SQL What: Get the person assigned to position returned by AME.

Line 3865: AND wu.orig_system = ame_util.perorigsystem

3861: FROM per_all_people_f person,
3862: per_all_assignments_f asg,
3863: wf_users wu
3864: WHERE asg.position_id = l_orig_system_id
3865: AND wu.orig_system = ame_util.perorigsystem
3866: AND wu.orig_system_id = person.person_id
3867: AND TRUNC(SYSDATE) BETWEEN person.effective_start_date AND NVL(person.effective_end_date, TRUNC( SYSDATE) )
3868: AND person.person_id = asg.person_id
3869: AND asg.primary_flag = 'Y'

Line 3884: ELSIF (l_orig_system = ame_util.fndUserOrigSystem) THEN

3880: WHEN NO_DATA_FOUND THEN
3881: l_person_id := -1;
3882: END;
3883:
3884: ELSIF (l_orig_system = ame_util.fndUserOrigSystem) THEN
3885: --FND User Record.
3886: SELECT employee_id
3887: INTO l_person_id
3888: FROM fnd_user

Line 3945: END IF; -- l_approver_list(i).approval_status = ame_util.beatByFirstResponderStatus

3941: p_action => 'NO ACTION',
3942: p_note => l_note,
3943: p_current_approver => l_person_id);
3944:
3945: END IF; -- l_approver_list(i).approval_status = ame_util.beatByFirstResponderStatus
3946: END LOOP; -- l_approver_list.count
3947:
3948: ELSIF (l_approver_response = 'REJECTED') THEN
3949:

Line 5133: g_next_approvers(l_approver_index).approval_status := ame_util.nullStatus;

5129: e_signer_flag :='Y';
5130: END IF;
5131:
5132: IF(e_signer_flag = 'Y') THEN
5133: g_next_approvers(l_approver_index).approval_status := ame_util.nullStatus;
5134: ame_api2.updateApprovalStatus ( applicationIdIn => applicationId,
5135: transactionIdIn => l_ame_transaction_id,
5136: transactionTypeIn => l_transaction_type,
5137: approverIn => g_next_approvers(l_approver_index),

Line 5236: ApproverList ame_util.approversTable2;

5232:
5233: l_is_last_approver_record VARCHAR2(1);
5234: l_total_approver_count NUMBER;
5235: l_current_approver_index NUMBER;
5236: ApproverList ame_util.approversTable2;
5237: xprocess_out VARCHAR2(10);
5238: xitemIndexesOut ame_util.idList;
5239: xitemClassesOut ame_util.stringList;
5240: xitemIdsOut ame_util.stringList;

Line 5238: xitemIndexesOut ame_util.idList;

5234: l_total_approver_count NUMBER;
5235: l_current_approver_index NUMBER;
5236: ApproverList ame_util.approversTable2;
5237: xprocess_out VARCHAR2(10);
5238: xitemIndexesOut ame_util.idList;
5239: xitemClassesOut ame_util.stringList;
5240: xitemIdsOut ame_util.stringList;
5241: xitemSourcesOut ame_util.longStringList;
5242: xtransVariableNamesOut ame_util.stringList;

Line 5239: xitemClassesOut ame_util.stringList;

5235: l_current_approver_index NUMBER;
5236: ApproverList ame_util.approversTable2;
5237: xprocess_out VARCHAR2(10);
5238: xitemIndexesOut ame_util.idList;
5239: xitemClassesOut ame_util.stringList;
5240: xitemIdsOut ame_util.stringList;
5241: xitemSourcesOut ame_util.longStringList;
5242: xtransVariableNamesOut ame_util.stringList;
5243: xtransVariableValuesOut ame_util.stringList;

Line 5240: xitemIdsOut ame_util.stringList;

5236: ApproverList ame_util.approversTable2;
5237: xprocess_out VARCHAR2(10);
5238: xitemIndexesOut ame_util.idList;
5239: xitemClassesOut ame_util.stringList;
5240: xitemIdsOut ame_util.stringList;
5241: xitemSourcesOut ame_util.longStringList;
5242: xtransVariableNamesOut ame_util.stringList;
5243: xtransVariableValuesOut ame_util.stringList;
5244: xproduction_Indexes ame_util.idList;

Line 5241: xitemSourcesOut ame_util.longStringList;

5237: xprocess_out VARCHAR2(10);
5238: xitemIndexesOut ame_util.idList;
5239: xitemClassesOut ame_util.stringList;
5240: xitemIdsOut ame_util.stringList;
5241: xitemSourcesOut ame_util.longStringList;
5242: xtransVariableNamesOut ame_util.stringList;
5243: xtransVariableValuesOut ame_util.stringList;
5244: xproduction_Indexes ame_util.idList;
5245: xvariable_Names ame_util.stringList;

Line 5242: xtransVariableNamesOut ame_util.stringList;

5238: xitemIndexesOut ame_util.idList;
5239: xitemClassesOut ame_util.stringList;
5240: xitemIdsOut ame_util.stringList;
5241: xitemSourcesOut ame_util.longStringList;
5242: xtransVariableNamesOut ame_util.stringList;
5243: xtransVariableValuesOut ame_util.stringList;
5244: xproduction_Indexes ame_util.idList;
5245: xvariable_Names ame_util.stringList;
5246: xvariable_Values ame_util.stringList;

Line 5243: xtransVariableValuesOut ame_util.stringList;

5239: xitemClassesOut ame_util.stringList;
5240: xitemIdsOut ame_util.stringList;
5241: xitemSourcesOut ame_util.longStringList;
5242: xtransVariableNamesOut ame_util.stringList;
5243: xtransVariableValuesOut ame_util.stringList;
5244: xproduction_Indexes ame_util.idList;
5245: xvariable_Names ame_util.stringList;
5246: xvariable_Values ame_util.stringList;
5247: l_next_approver_id NUMBER;

Line 5244: xproduction_Indexes ame_util.idList;

5240: xitemIdsOut ame_util.stringList;
5241: xitemSourcesOut ame_util.longStringList;
5242: xtransVariableNamesOut ame_util.stringList;
5243: xtransVariableValuesOut ame_util.stringList;
5244: xproduction_Indexes ame_util.idList;
5245: xvariable_Names ame_util.stringList;
5246: xvariable_Values ame_util.stringList;
5247: l_next_approver_id NUMBER;
5248: l_next_approver_name per_employees_current_x.full_name%TYPE;

Line 5245: xvariable_Names ame_util.stringList;

5241: xitemSourcesOut ame_util.longStringList;
5242: xtransVariableNamesOut ame_util.stringList;
5243: xtransVariableValuesOut ame_util.stringList;
5244: xproduction_Indexes ame_util.idList;
5245: xvariable_Names ame_util.stringList;
5246: xvariable_Values ame_util.stringList;
5247: l_next_approver_id NUMBER;
5248: l_next_approver_name per_employees_current_x.full_name%TYPE;
5249: l_next_approver_user_name VARCHAR2(100);

Line 5246: xvariable_Values ame_util.stringList;

5242: xtransVariableNamesOut ame_util.stringList;
5243: xtransVariableValuesOut ame_util.stringList;
5244: xproduction_Indexes ame_util.idList;
5245: xvariable_Names ame_util.stringList;
5246: xvariable_Values ame_util.stringList;
5247: l_next_approver_id NUMBER;
5248: l_next_approver_name per_employees_current_x.full_name%TYPE;
5249: l_next_approver_user_name VARCHAR2(100);
5250: l_next_approver_disp_name VARCHAR2(240);

Line 5312: OR ApproverList(l_approver_index).approval_status IN (ame_util.notifiedStatus,

5308:
5309: l_progress := '003';
5310:
5311: IF ( ApproverList(l_approver_index).approval_status IS NULL
5312: OR ApproverList(l_approver_index).approval_status IN (ame_util.notifiedStatus,
5313: ame_util.notifiedByRepeatedStatus))
5314: THEN
5315:
5316: l_progress := '004';

Line 5313: ame_util.notifiedByRepeatedStatus))

5309: l_progress := '003';
5310:
5311: IF ( ApproverList(l_approver_index).approval_status IS NULL
5312: OR ApproverList(l_approver_index).approval_status IN (ame_util.notifiedStatus,
5313: ame_util.notifiedByRepeatedStatus))
5314: THEN
5315:
5316: l_progress := '004';
5317:

Line 5323: IF (ApproverList(l_approver_index).orig_system = ame_util.perorigsystem) THEN

5319: l_approver_order_number := ApproverList(l_approver_index).approver_order_number;
5320:
5321: l_progress := '005';
5322: -- Get the Approver Name
5323: IF (ApproverList(l_approver_index).orig_system = ame_util.perorigsystem) THEN
5324:
5325: l_next_approver_id := ApproverList(l_approver_index).orig_system_id;
5326:
5327: ELSIF (ApproverList(l_approver_index).orig_system = ame_util.posorigsystem) THEN

Line 5327: ELSIF (ApproverList(l_approver_index).orig_system = ame_util.posorigsystem) THEN

5323: IF (ApproverList(l_approver_index).orig_system = ame_util.perorigsystem) THEN
5324:
5325: l_next_approver_id := ApproverList(l_approver_index).orig_system_id;
5326:
5327: ELSIF (ApproverList(l_approver_index).orig_system = ame_util.posorigsystem) THEN
5328:
5329: -----------------------------------------------------------------------
5330: -- SQL What: Get the person assigned to position returned by AME.
5331: -- SQL Why : When AME returns position id, then using this sql we find

Line 5342: AND wu.orig_system = ame_util.perorigsystem

5338: FROM per_all_people_f person ,
5339: per_all_assignments_f asg ,
5340: wf_users wu
5341: WHERE asg.position_id = ApproverList(l_approver_index).orig_system_id
5342: AND wu.orig_system = ame_util.perorigsystem
5343: AND wu.orig_system_id = person.person_id
5344: AND TRUNC (sysdate) BETWEEN person.effective_start_date AND NVL (person.effective_end_date ,TRUNC (sysdate))
5345: AND person.person_id = asg.person_id
5346: AND asg.primary_flag = 'Y'

Line 5358: ELSIF (ApproverList(l_approver_index).orig_system = ame_util.fnduserorigsystem) THEN

5354: AND TRUNC (sysdate) BETWEEN asg.effective_start_date AND asg.effective_end_date
5355: ORDER BY person.last_name )
5356: WHERE ROWNUM = 1;
5357:
5358: ELSIF (ApproverList(l_approver_index).orig_system = ame_util.fnduserorigsystem) THEN
5359: SELECT employee_id
5360: INTO l_next_approver_id
5361: FROM fnd_user
5362: WHERE user_id = ApproverList(l_approver_index).orig_system_id

Line 5366: wf_directory.getusername (ame_util.perorigsystem, l_next_approver_id, l_next_approver_user_name, l_next_approver_disp_name);

5362: WHERE user_id = ApproverList(l_approver_index).orig_system_id
5363: AND TRUNC (sysdate) BETWEEN start_date AND NVL (end_date ,sysdate + 1);
5364: END IF;
5365:
5366: wf_directory.getusername (ame_util.perorigsystem, l_next_approver_id, l_next_approver_user_name, l_next_approver_disp_name);
5367:
5368: IF (ApproverList(l_approver_index).orig_system = ame_util.perorigsystem) THEN
5369: l_next_approver_disp_name := ApproverList(l_approver_index).display_name;
5370: END IF;

Line 5368: IF (ApproverList(l_approver_index).orig_system = ame_util.perorigsystem) THEN

5364: END IF;
5365:
5366: wf_directory.getusername (ame_util.perorigsystem, l_next_approver_id, l_next_approver_user_name, l_next_approver_disp_name);
5367:
5368: IF (ApproverList(l_approver_index).orig_system = ame_util.perorigsystem) THEN
5369: l_next_approver_disp_name := ApproverList(l_approver_index).display_name;
5370: END IF;
5371:
5372: l_progress := '006';

Line 5375: IF ApproverList(l_approver_index).approver_category = ame_util.fyiapprovercategory then

5371:
5372: l_progress := '006';
5373: -- Get the Approver category
5374: l_approver_category := null;
5375: IF ApproverList(l_approver_index).approver_category = ame_util.fyiapprovercategory then
5376: l_approver_category := 'FYI_APPROVER';
5377:
5378: ELSE
5379:

Line 5413: IF(ApproverList(l_approver_index).approval_status = ame_util.notifiedStatus

5409: END;
5410:
5411: l_progress := '007';
5412: -- Identify if it is current approver
5413: IF(ApproverList(l_approver_index).approval_status = ame_util.notifiedStatus
5414: AND ApproverList(l_approver_index).approver_category <> ame_util.fyiapprovercategory)THEN
5415: l_is_current_approver := 'Y';
5416: ELSE
5417: l_is_current_approver := 'N';

Line 5414: AND ApproverList(l_approver_index).approver_category <> ame_util.fyiapprovercategory)THEN

5410:
5411: l_progress := '007';
5412: -- Identify if it is current approver
5413: IF(ApproverList(l_approver_index).approval_status = ame_util.notifiedStatus
5414: AND ApproverList(l_approver_index).approver_category <> ame_util.fyiapprovercategory)THEN
5415: l_is_current_approver := 'Y';
5416: ELSE
5417: l_is_current_approver := 'N';
5418: END IF;

Line 5422: IF NOT(ApproverList(l_approver_index).approver_category = ame_util.fyiapprovercategory

5418: END IF;
5419:
5420: l_progress := '008';
5421:
5422: IF NOT(ApproverList(l_approver_index).approver_category = ame_util.fyiapprovercategory
5423: AND Nvl(ApproverList(l_approver_index).approval_status,-1) IN
5424: (ame_util.notifiedStatus,ame_util.notifiedByRepeatedStatus)) THEN
5425:
5426: -- Insert record in x_approver_tab

Line 5424: (ame_util.notifiedStatus,ame_util.notifiedByRepeatedStatus)) THEN

5420: l_progress := '008';
5421:
5422: IF NOT(ApproverList(l_approver_index).approver_category = ame_util.fyiapprovercategory
5423: AND Nvl(ApproverList(l_approver_index).approval_status,-1) IN
5424: (ame_util.notifiedStatus,ame_util.notifiedByRepeatedStatus)) THEN
5425:
5426: -- Insert record in x_approver_tab
5427: x_approver_tab.extend;
5428: x_approver_tab (x_approver_tab.last) := PO_AME_APPROVER_REC(l_approver_order_number,

Line 6340: l_approver_list ame_util.approversTable2;

6336: itemkey IN VARCHAR2)
6337: IS
6338: l_api_name VARCHAR2(500) := 'supress_existing_approvers';
6339: l_log_head VARCHAR2(500) := g_module_prefix||l_api_name;
6340: l_approver_list ame_util.approversTable2;
6341: xprocess_out VARCHAR2(1);
6342: l_transaction_type PO_DOCUMENT_TYPES.AME_TRANSACTION_TYPE%TYPE;
6343: l_transaction_id NUMBER;
6344: l_approver_index NUMBER;

Line 6380: l_approver_list(l_approver_index).approval_status IN (ame_util.notifiedStatus, ame_util.notifiedByRepeatedStatus) THEN

6376: PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey, l_log_head || ' supressing approver name ' || l_approver_list(l_approver_index).name);
6377: END IF;
6378:
6379: IF l_approver_list(l_approver_index).approval_status IS NULL OR
6380: l_approver_list(l_approver_index).approval_status IN (ame_util.notifiedStatus, ame_util.notifiedByRepeatedStatus) THEN
6381: fnd_profile.put('PO_SYS_GENERATED_APPROVERS_SUPPRESS', 'Y');
6382: ame_api3.suppressApprover( applicationIdIn => applicationId,
6383: transactionIdIn => l_transaction_id,
6384: transactionTypeIn => l_transaction_type,