DBA Data[Home] [Help]

APPS.AME_DUAL_CHAINS_HANDLER dependencies on AME_ENGINE

Line 202: ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.includeAllApproversAttribute) =

198: firstAuthInsExists boolean := false;
199: coaInsAuthForward boolean := false;
200: begin
201: includeAllJobLevelApprovers :=
202: ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.includeAllApproversAttribute) =
203: ame_util.booleanAttributeTrue;
204: /* Populate some of the package variables. */
205: topDogPersonId := to_number(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.topSupPersonIdAttribute));
206: /* Set the fields in tempApprover that are constant for the entire handler cycle. */

Line 205: topDogPersonId := to_number(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.topSupPersonIdAttribute));

201: includeAllJobLevelApprovers :=
202: ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.includeAllApproversAttribute) =
203: ame_util.booleanAttributeTrue;
204: /* Populate some of the package variables. */
205: topDogPersonId := to_number(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.topSupPersonIdAttribute));
206: /* Set the fields in tempApprover that are constant for the entire handler cycle. */
207: tempApprover.orig_system := ame_util.perOrigSystem;
208: tempApprover.authority := ame_util.authorityApprover;
209: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;

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

205: topDogPersonId := to_number(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.topSupPersonIdAttribute));
206: /* Set the fields in tempApprover that are constant for the entire handler cycle. */
207: tempApprover.orig_system := ame_util.perOrigSystem;
208: tempApprover.authority := ame_util.authorityApprover;
209: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;
210: tempApprover.item_class := ame_engine.getHandlerItemClassName;
211: tempApprover.item_id := ame_engine.getHandlerItemId;
212: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
213: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;

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

206: /* Set the fields in tempApprover that are constant for the entire handler cycle. */
207: tempApprover.orig_system := ame_util.perOrigSystem;
208: tempApprover.authority := ame_util.authorityApprover;
209: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;
210: tempApprover.item_class := ame_engine.getHandlerItemClassName;
211: tempApprover.item_id := ame_engine.getHandlerItemId;
212: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
213: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
214: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;

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

207: tempApprover.orig_system := ame_util.perOrigSystem;
208: tempApprover.authority := ame_util.authorityApprover;
209: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;
210: tempApprover.item_class := ame_engine.getHandlerItemClassName;
211: tempApprover.item_id := ame_engine.getHandlerItemId;
212: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
213: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
214: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
215: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;

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

208: tempApprover.authority := ame_util.authorityApprover;
209: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;
210: tempApprover.item_class := ame_engine.getHandlerItemClassName;
211: tempApprover.item_id := ame_engine.getHandlerItemId;
212: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
213: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
214: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
215: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
216: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);

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

209: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;
210: tempApprover.item_class := ame_engine.getHandlerItemClassName;
211: tempApprover.item_id := ame_engine.getHandlerItemId;
212: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
213: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
214: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
215: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
216: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
217: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);

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

210: tempApprover.item_class := ame_engine.getHandlerItemClassName;
211: tempApprover.item_id := ame_engine.getHandlerItemId;
212: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
213: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
214: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
215: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
216: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
217: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);
218: /*

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

211: tempApprover.item_id := ame_engine.getHandlerItemId;
212: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
213: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
214: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
215: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
216: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
217: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);
218: /*
219: The engine only calls a handler if a rule requiring it exists, so we can assume that

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

212: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
213: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
214: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
215: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
216: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
217: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);
218: /*
219: The engine only calls a handler if a rule requiring it exists, so we can assume that
220: the package variables that ame_engine.getHandlerRules initializes are nonempty.

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

213: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
214: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
215: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
216: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
217: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);
218: /*
219: The engine only calls a handler if a rule requiring it exists, so we can assume that
220: the package variables that ame_engine.getHandlerRules initializes are nonempty.
221: Fetch the rules and sort them in increasing parameter order. (Duplicate parameters

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

216: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
217: chainOrderMode := ame_engine.getActionTypeChainOrderMode(actionTypeIdIn => tempApprover.action_type_id);
218: /*
219: The engine only calls a handler if a rule requiring it exists, so we can assume that
220: the package variables that ame_engine.getHandlerRules initializes are nonempty.
221: Fetch the rules and sort them in increasing parameter order. (Duplicate parameters
222: are harmless here.)
223: */
224: ame_engine.getHandlerRules2(ruleIdsOut => ruleIdsDual,

Line 224: ame_engine.getHandlerRules2(ruleIdsOut => ruleIdsDual,

220: the package variables that ame_engine.getHandlerRules initializes are nonempty.
221: Fetch the rules and sort them in increasing parameter order. (Duplicate parameters
222: are harmless here.)
223: */
224: ame_engine.getHandlerRules2(ruleIdsOut => ruleIdsDual,
225: approverCategoriesOut => approverCategoriesDual,
226: parametersOut => parameters);
227: parametersCount := parameters.count;
228: for chainCounter in 1..2 loop

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

230: coaInsAuthForward := false;
231: finalAuthorityApproverCategory := null;
232: finalAuthoritySource := null;
233: /* Check for COA 'firstAuthority' insertions */
234: ame_engine.getHandlerCOAFirstApprover(itemClassIn => tempApprover.item_class,
235: itemIdIn => tempApprover.item_id,
236: actionTypeIdIn =>tempApprover.action_type_id,
237: groupOrChainIdIn => chainCounter,
238: nameOut => COAInsertee.name,

Line 247: to_number(ame_engine.getHeaderAttValue2(attributeNameIn =>

243: if COAInsertee.name is null then
244: if chainCounter = 1 then
245: /* Fetch the required attributes. */
246: firstStartingPointId :=
247: to_number(ame_engine.getHeaderAttValue2(attributeNameIn =>
248: ame_util.firstStartingPointAttribute));
249: if(firstStartingPointId is null ) then
250: raise nullFirstIdException;
251: end if;

Line 256: to_number(ame_engine.getHeaderAttValue2(attributeNameIn =>

252: tempApprover.orig_system_id := firstStartingPointId;
253: else /* Chain is 2*/
254: /* Fetch the required attributes. */
255: secondStartingPointId :=
256: to_number(ame_engine.getHeaderAttValue2(attributeNameIn =>
257: ame_util.secondStartingPointAttribute));
258: if( secondStartingPointId is null) then
259: raise nullSecondIdException;
260: end if;

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

322: finalAuthoritySource is not null ) then
323: tempApprover.approver_category := finalAuthorityApproverCategory;
324: tempApprover.source := finalAuthoritySource;
325: end if;
326: tempApprover.occurrence := ame_engine.getHandlerOccurrence(nameIn=>tempApprover.name,
327: itemClassIn => tempApprover.item_class,
328: itemIdIn => tempApprover.item_id,
329: actionTypeIdIn => tempApprover.action_type_id,
330: groupOrChainIdIn => tempApprover.group_or_chain_id);

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

334: tempApprover.member_order_number := tempMemberOrderNumber;
335: else /* votingRegimeType in (ame_util.consensusVoting, ame_util.firstApproverVoting) */
336: tempApprover.member_order_number := 1;
337: end if;
338: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn => tempApprover);
339: /* The engine will set tempApprover.approver_order_number; leave it null here. */
340: ame_engine.addApprover(approverIn => tempApprover);
341: /* check to see if there is a COA insertion after this approver. If a COA
342: insertion is found, keep checking till no more COA insertions. The check

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

336: tempApprover.member_order_number := 1;
337: end if;
338: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn => tempApprover);
339: /* The engine will set tempApprover.approver_order_number; leave it null here. */
340: ame_engine.addApprover(approverIn => tempApprover);
341: /* check to see if there is a COA insertion after this approver. If a COA
342: insertion is found, keep checking till no more COA insertions. The check
343: for final authority will need to be done again. */
344: loop

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

344: loop
345: /* Initialize COAInsertee approverRecord2 */
346: COAInsertee := ame_util.emptyApproverRecord2;
347: /* Check if there are any COAInsertions */
348: ame_engine.getHandlerCOAInsertion(nameIn => tempApprover.name,
349: itemClassIn => tempApprover.item_class,
350: itemIdIn => tempApprover.item_id,
351: actionTypeIdIn => tempApprover.action_type_id,
352: groupOrChainIdIn => tempApprover.group_or_chain_id,

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

384: tempApprover.member_order_number := tempMemberOrderNumber;
385: else /* votingRegimeType in (ame_util.consensusVoting, ame_util.firstApproverVoting) */
386: tempApprover.member_order_number := 1;
387: end if;
388: tempApprover.occurrence := ame_engine.getHandlerOccurrence(nameIn => tempApprover.name,
389: itemClassIn => tempApprover.item_class,
390: itemIdIn => tempApprover.item_id,
391: actionTypeIdIn => tempApprover.action_type_id,
392: groupOrChainIdIn => tempApprover.group_or_chain_id);

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

389: itemClassIn => tempApprover.item_class,
390: itemIdIn => tempApprover.item_id,
391: actionTypeIdIn => tempApprover.action_type_id,
392: groupOrChainIdIn => tempApprover.group_or_chain_id);
393: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn => tempApprover);
394: /* If approver has a status of ame_util.approve or ame_util.approveAndForwardStatus or
395: ame_util.nullStatus check to see if approver could have final authority */
396: if ((tempApprover.approval_status is null) or
397: (tempApprover.approval_status in

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

405: tempHasFinalAuthorityYN = ame_util.booleanTrue) then
406: finalAuthorityFound := true;
407: end if;
408: end if;
409: ame_engine.addApprover(approverIn => tempApprover);
410: coaInsAuthForward := true;
411: end if;
412: end loop;
413: /* Decide whether to end the chain. */

Line 449: ame_engine.setDeviationReasonDate(ame_approver_deviation_pkg.firstauthHandlerInsReason,null);

445: origSystemIdIn => tempApprover.orig_system_id,
446: nameOut => tempApprover.name,
447: displayNameOut => tempApprover.display_name);
448: if firstAuthInsExists then
449: ame_engine.setDeviationReasonDate(ame_approver_deviation_pkg.firstauthHandlerInsReason,null);
450: end if;
451: if coaInsAuthForward then
452: ame_engine.setDeviationReasonDate(ame_approver_deviation_pkg.forwarHandlerAuthInsReason,null);
453: end if;

Line 452: ame_engine.setDeviationReasonDate(ame_approver_deviation_pkg.forwarHandlerAuthInsReason,null);

448: if firstAuthInsExists then
449: ame_engine.setDeviationReasonDate(ame_approver_deviation_pkg.firstauthHandlerInsReason,null);
450: end if;
451: if coaInsAuthForward then
452: ame_engine.setDeviationReasonDate(ame_approver_deviation_pkg.forwarHandlerAuthInsReason,null);
453: end if;
454: end loop;
455: end loop;
456: exception