DBA Data[Home] [Help]

APPS.AME_AG_CHAIN_HANDLER dependencies on AME_ENGINE

Line 81: the package variables that ame_engine.getHandlerRules initializes are nonempty.

77: emptyGroupException exception;
78: begin
79: /*
80: The engine only calls a handler if a rule requiring it exists, so we can assume that
81: the package variables that ame_engine.getHandlerRules initializes are nonempty.
82: Fetch the rules and sort them in increasing parameter order. (Duplicate parameters
83: are harmless here.)
84: */
85: ame_engine.getHandlerRules(ruleIdsOut => ruleIds,

Line 85: ame_engine.getHandlerRules(ruleIdsOut => ruleIds,

81: the package variables that ame_engine.getHandlerRules initializes are nonempty.
82: Fetch the rules and sort them in increasing parameter order. (Duplicate parameters
83: are harmless here.)
84: */
85: ame_engine.getHandlerRules(ruleIdsOut => ruleIds,
86: approverCategoriesOut => approverCategories,
87: parametersOut => parameters,
88: parameterTwosOut => parameterTwos);
89: /* Initialize the source list. */

Line 101: ame_engine.getApprovalGroupConfigs(groupIdsInOut => groupIds,

97: ame_util.stringListToIdList(stringListIn => parameters,
98: idListOut => groupIds);
99: /* Bug:4491715 when get configs we sort group ids so corresponding sources and categories
100: must also be sorted */
101: ame_engine.getApprovalGroupConfigs(groupIdsInOut => groupIds,
102: sourcesInOut => sources,
103: approverCategoriesInOut => approverCategories,
104: orderNumbersOut => groupOrderNumbers,
105: votingRegimesOut => votingRegimes);

Line 110: ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.allowEmptyGroupAttribute)

106: /* Eliminate duplicate group-ID entries, possibly leaving the package-variable lists sparse. */
107: eliminateDuplicates;
108: /* Find the transaction allows empty approval groups or not */
109: allowEmptyGroups :=
110: ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.allowEmptyGroupAttribute)
111: = ame_util.booleanAttributeTrue;
112: /* Set the fields in tempApprover that are constant for the entire handler cycle. */
113: tempApprover.orig_system := ame_util.perOrigSystem;
114: tempApprover.authority := ame_util.authorityApprover;

Line 115: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;

111: = ame_util.booleanAttributeTrue;
112: /* Set the fields in tempApprover that are constant for the entire handler cycle. */
113: tempApprover.orig_system := ame_util.perOrigSystem;
114: tempApprover.authority := ame_util.authorityApprover;
115: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;
116: tempApprover.group_or_chain_id := groupIds(groupIds.first);
117: tempApprover.api_insertion := ame_util.oamGenerated;
118: tempApprover.item_class := ame_engine.getHandlerItemClassName;
119: tempApprover.item_id := ame_engine.getHandlerItemId;

Line 118: tempApprover.item_class := ame_engine.getHandlerItemClassName;

114: tempApprover.authority := ame_util.authorityApprover;
115: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;
116: tempApprover.group_or_chain_id := groupIds(groupIds.first);
117: tempApprover.api_insertion := ame_util.oamGenerated;
118: tempApprover.item_class := ame_engine.getHandlerItemClassName;
119: tempApprover.item_id := ame_engine.getHandlerItemId;
120: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
121: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
122: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;

Line 119: tempApprover.item_id := ame_engine.getHandlerItemId;

115: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;
116: tempApprover.group_or_chain_id := groupIds(groupIds.first);
117: tempApprover.api_insertion := ame_util.oamGenerated;
118: tempApprover.item_class := ame_engine.getHandlerItemClassName;
119: tempApprover.item_id := ame_engine.getHandlerItemId;
120: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
121: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
122: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
123: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;

Line 120: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;

116: tempApprover.group_or_chain_id := groupIds(groupIds.first);
117: tempApprover.api_insertion := ame_util.oamGenerated;
118: tempApprover.item_class := ame_engine.getHandlerItemClassName;
119: tempApprover.item_id := ame_engine.getHandlerItemId;
120: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
121: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
122: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
123: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
124: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);

Line 121: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;

117: tempApprover.api_insertion := ame_util.oamGenerated;
118: tempApprover.item_class := ame_engine.getHandlerItemClassName;
119: tempApprover.item_id := ame_engine.getHandlerItemId;
120: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
121: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
122: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
123: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
124: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
125: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);

Line 122: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;

118: tempApprover.item_class := ame_engine.getHandlerItemClassName;
119: tempApprover.item_id := ame_engine.getHandlerItemId;
120: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
121: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
122: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
123: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
124: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
125: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);
126: /* Check for COA First Authority Insertion */

Line 123: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;

119: tempApprover.item_id := ame_engine.getHandlerItemId;
120: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
121: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
122: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
123: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
124: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
125: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);
126: /* Check for COA First Authority Insertion */
127: ame_engine.getHandlerCOAFirstApprover(itemClassIn => tempApprover.item_class,

Line 124: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);

120: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
121: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
122: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
123: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
124: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
125: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);
126: /* Check for COA First Authority Insertion */
127: ame_engine.getHandlerCOAFirstApprover(itemClassIn => tempApprover.item_class,
128: itemIdIn => tempApprover.item_id,

Line 125: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);

121: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
122: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
123: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
124: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
125: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);
126: /* Check for COA First Authority Insertion */
127: ame_engine.getHandlerCOAFirstApprover(itemClassIn => tempApprover.item_class,
128: itemIdIn => tempApprover.item_id,
129: actionTypeIdIn => tempApprover.action_type_id,

Line 127: ame_engine.getHandlerCOAFirstApprover(itemClassIn => tempApprover.item_class,

123: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
124: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
125: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);
126: /* Check for COA First Authority Insertion */
127: ame_engine.getHandlerCOAFirstApprover(itemClassIn => tempApprover.item_class,
128: itemIdIn => tempApprover.item_id,
129: actionTypeIdIn => tempApprover.action_type_id,
130: groupOrChainIdIn => tempApprover.group_or_chain_id,
131: nameOut => COAInsertee.name,

Line 152: tempApprover.occurrence := ame_engine.getHandlerOccurrence(nameIn=>tempApprover.name,

148: tempApprover.source := COAInsertee.source;
149: tempApprover.api_insertion := ame_util.apiAuthorityInsertion;
150: tempApprover.approver_category := ame_util.approvalApproverCategory;
151: tempApprover.group_or_chain_id := groupIds(groupIds.first);
152: tempApprover.occurrence := ame_engine.getHandlerOccurrence(nameIn=>tempApprover.name,
153: itemClassIn => tempApprover.item_class,
154: itemIdIn => tempApprover.item_id,
155: actionTypeIdIn => tempApprover.action_type_id,
156: groupOrChainIdIn => tempApprover.group_or_chain_id);

Line 159: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn=>tempApprover);

155: actionTypeIdIn => tempApprover.action_type_id,
156: groupOrChainIdIn => tempApprover.group_or_chain_id);
157: tempApprover.group_or_chain_order_number := 1;
158: tempApprover.member_order_number := 1;
159: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn=>tempApprover);
160: /*
161: The engine will set tempApprover.approver_order_number; leave them null here.
162: */
163: ame_engine.addApprover(approverIn => tempApprover);

Line 163: ame_engine.addApprover(approverIn => tempApprover);

159: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn=>tempApprover);
160: /*
161: The engine will set tempApprover.approver_order_number; leave them null here.
162: */
163: ame_engine.addApprover(approverIn => tempApprover);
164: end if;
165: /*
166: Now iterate through the sorted groups, adding their membership to the engine's
167: approver list in the group-member order dictated by the group's voting regime

Line 179: ame_engine.getRuntimeGroupMembers(groupIdIn => groupIds(tempIndex),

175: tempApproverDisplayNames.delete;
176: tempOrigSystemIds.delete;
177: tempOrigSystems.delete;
178: /* Fetch the group's membership. */
179: ame_engine.getRuntimeGroupMembers(groupIdIn => groupIds(tempIndex),
180: approverNamesOut => tempApproverNames,
181: approverOrderNumbersOut => tempApproverOrderNumbers,
182: approverDisplayNamesOut => tempApproverDisplayNames,
183: origSystemIdsOut => tempOrigSystemIds,

Line 201: tempApprover.occurrence := ame_engine.getHandlerOccurrence(nameIn => tempApprover.name,

197: tempApprover.display_name := tempApproverDisplayNames(j);
198: tempApprover.approver_category := approverCategories(tempIndex);
199: tempApprover.api_insertion := ame_util.oamGenerated;
200: tempApprover.group_or_chain_id := groupIds(tempIndex);
201: tempApprover.occurrence := ame_engine.getHandlerOccurrence(nameIn => tempApprover.name,
202: itemClassIn => tempApprover.item_class,
203: itemIdIn => tempApprover.item_id,
204: actionTypeIdIn => tempApprover.action_type_id,
205: groupOrChainIdIn => tempApprover.group_or_chain_id);

Line 219: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn => tempApprover);

215: tempApprover.member_order_number := tempMemberOrderNumber;
216: else /* votingRegimeType in (ame_util.consensusVoting, ame_util.firstApproverVoting) */
217: tempApprover.member_order_number := 1;
218: end if;
219: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn => tempApprover);
220: /*
221: The engine will set tempApprover.approver_order_number; leave them null here.
222: */
223: ame_engine.addApprover(approverIn => tempApprover);

Line 223: ame_engine.addApprover(approverIn => tempApprover);

219: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn => tempApprover);
220: /*
221: The engine will set tempApprover.approver_order_number; leave them null here.
222: */
223: ame_engine.addApprover(approverIn => tempApprover);
224: /* Check if there is any COA Insertion after this approver. If a COA Insertee is
225: found keep checking till there are no more COA Insertee's */
226: loop
227: /* Initialize COAInsertee approver record 2 */

Line 230: ame_engine.getHandlerCOAInsertion(nameIn => tempApprover.name,

226: loop
227: /* Initialize COAInsertee approver record 2 */
228: COAInsertee := ame_util.emptyApproverRecord2;
229: /* Check if there are any chain of authority insertions */
230: ame_engine.getHandlerCOAInsertion(nameIn => tempApprover.name,
231: itemClassIn => tempApprover.item_class,
232: itemIdIn => tempApprover.item_id,
233: actionTypeIdIn => tempApprover.action_type_id,
234: groupOrChainIdIn => tempApprover.group_or_chain_id,

Line 253: tempApprover.occurrence := ame_engine.getHandlerOccurrence(

249: tempApprover.source := COAInsertee.source;
250: tempApprover.approver_category := ame_util.approvalApproverCategory;
251: tempApprover.api_insertion := ame_util.apiAuthorityInsertion;
252: tempApprover.group_or_chain_id := groupIds(tempIndex);
253: tempApprover.occurrence := ame_engine.getHandlerOccurrence(
254: nameIn => tempApprover.name,
255: itemClassIn => tempApprover.item_class,
256: itemIdIn => tempApprover.item_id,
257: actionTypeIdIn => tempApprover.action_type_id,

Line 272: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn => tempApprover);

268: tempApprover.member_order_number := tempMemberOrderNumber;
269: else /* votingRegimeType in (ame_util.consensusVoting, ame_util.firstApproverVoting) */
270: tempApprover.member_order_number := 1;
271: end if;
272: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn => tempApprover);
273: /*
274: The engine will set tempApprover.approver_order_number; leave them null here.
275: */
276: ame_engine.addApprover(approverIn => tempApprover);

Line 276: ame_engine.addApprover(approverIn => tempApprover);

272: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn => tempApprover);
273: /*
274: The engine will set tempApprover.approver_order_number; leave them null here.
275: */
276: ame_engine.addApprover(approverIn => tempApprover);
277: end if;
278: end loop;
279: if(votingRegimeType = ame_util.serializedVoting) then
280: tempMemberOrderNumber := tempMemberOrderNumber+1;