DBA Data[Home] [Help]

APPS.AME_POSITION_HANDLER dependencies on AME_ENGINE

Line 122: the package variables that ame_engine.getHandlerRules2 initializes are nonempty.

118: l_error_code number;
119: begin
120: /*
121: The engine only calls a handler if a rule requiring it exists, so we can assume that
122: the package variables that ame_engine.getHandlerRules2 initializes are nonempty.
123: Fetch the rules and sort them in increasing parameter order. (Duplicate parameters
124: are harmless here.)
125: */
126: errorCode := -20242;

Line 127: ame_engine.getHandlerRules2(ruleIdsOut => ruleIds,

123: Fetch the rules and sort them in increasing parameter order. (Duplicate parameters
124: are harmless here.)
125: */
126: errorCode := -20242;
127: ame_engine.getHandlerRules2(ruleIdsOut => ruleIds,
128: approverCategoriesOut => approverCategories,
129: parametersOut => parameters);
130: /* Populate some of the package variables. */
131: parametersCount := parameters.count;

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

135: end loop;
136: /* Set the fields in tempApprover that are constant for the entire handler cycle. */
137: tempApprover.orig_system := ame_util.posOrigSystem;
138: tempApprover.authority := ame_util.authorityApprover;
139: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;
140: tempApprover.item_class := ame_engine.getHandlerItemClassName;
141: tempApprover.item_id := ame_engine.getHandlerItemId;
142: tempApprover.group_or_chain_id := 1;
143: --

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

136: /* Set the fields in tempApprover that are constant for the entire handler cycle. */
137: tempApprover.orig_system := ame_util.posOrigSystem;
138: tempApprover.authority := ame_util.authorityApprover;
139: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;
140: tempApprover.item_class := ame_engine.getHandlerItemClassName;
141: tempApprover.item_id := ame_engine.getHandlerItemId;
142: tempApprover.group_or_chain_id := 1;
143: --
144: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;

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

137: tempApprover.orig_system := ame_util.posOrigSystem;
138: tempApprover.authority := ame_util.authorityApprover;
139: tempApprover.action_type_id := ame_engine.getHandlerActionTypeId;
140: tempApprover.item_class := ame_engine.getHandlerItemClassName;
141: tempApprover.item_id := ame_engine.getHandlerItemId;
142: tempApprover.group_or_chain_id := 1;
143: --
144: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
145: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;

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

140: tempApprover.item_class := ame_engine.getHandlerItemClassName;
141: tempApprover.item_id := ame_engine.getHandlerItemId;
142: tempApprover.group_or_chain_id := 1;
143: --
144: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
145: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
146: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
147: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
148: tempApprover.group_or_chain_order_number := 1;

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

141: tempApprover.item_id := ame_engine.getHandlerItemId;
142: tempApprover.group_or_chain_id := 1;
143: --
144: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
145: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
146: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
147: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
148: tempApprover.group_or_chain_order_number := 1;
149: /* Fetch some of the required attributes. */

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

142: tempApprover.group_or_chain_id := 1;
143: --
144: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
145: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
146: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
147: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
148: tempApprover.group_or_chain_order_number := 1;
149: /* Fetch some of the required attributes. */
150: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);

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

143: --
144: tempApprover.item_class_order_number := ame_engine.getHandlerItemClassOrderNumber;
145: tempApprover.item_order_number := ame_engine.getHandlerItemOrderNumber;
146: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
147: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
148: tempApprover.group_or_chain_order_number := 1;
149: /* Fetch some of the required attributes. */
150: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
151: /* Check for COA Insertions */

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

146: tempApprover.sub_list_order_number := ame_engine.getHandlerSublistOrderNum;
147: tempApprover.action_type_order_number := ame_engine.getHandlerActionTypeOrderNum;
148: tempApprover.group_or_chain_order_number := 1;
149: /* Fetch some of the required attributes. */
150: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
151: /* Check for COA Insertions */
152: ame_engine.getHandlerCOAFirstApprover(itemClassIn => tempApprover.item_class,
153: itemIdIn => tempApprover.item_id,
154: actionTypeIdIn => tempApprover.action_type_id,

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

148: tempApprover.group_or_chain_order_number := 1;
149: /* Fetch some of the required attributes. */
150: votingRegimeType := ame_engine.getActionTypeVotingRegime(actionTypeIdIn => tempApprover.action_type_id);
151: /* Check for COA Insertions */
152: ame_engine.getHandlerCOAFirstApprover(itemClassIn => tempApprover.item_class,
153: itemIdIn => tempApprover.item_id,
154: actionTypeIdIn => tempApprover.action_type_id,
155: groupOrChainIdIn => tempApprover.group_or_chain_id,
156: nameOut => COAInsertee.name,

Line 167: to_number(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.nonDefStartingPointPosAttr));

163: isRequestor := true;
164: if COAInsertee.name is null then
165: /* Fetch some of the required attributes. */
166: startingPointId :=
167: to_number(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.nonDefStartingPointPosAttr));
168: if(startingPointId is null) then
169: requestorId :=
170: to_number(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.transactionReqPositionAttr));
171: if (requestorId is null) then

Line 170: to_number(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.transactionReqPositionAttr));

166: startingPointId :=
167: to_number(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.nonDefStartingPointPosAttr));
168: if(startingPointId is null) then
169: requestorId :=
170: to_number(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.transactionReqPositionAttr));
171: if (requestorId is null) then
172: raise nullFirstIdException;
173: end if;
174: tempApprover.orig_system_id := requestorId;

Line 177: if(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.allowAutoApprovalAttribute)

173: end if;
174: tempApprover.orig_system_id := requestorId;
175: /* Check if requestor can self approve. If so, insert the approver as the
176: only approver, with a status of approved, and return.*/
177: if(ame_engine.getHeaderAttValue2(attributeNameIn => ame_util.allowAutoApprovalAttribute)
178: = ame_util.booleanAttributeTrue)
179: then
180: getCatSourceAndAuthority(positionIdIn => requestorId,
181: categoryOut => tempApprover.approver_category,

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

187: origSystemIn => ame_util.posOrigSystem,
188: origSystemIdIn => requestorId,
189: nameOut => tempApprover.name,
190: displayNameOut => tempApprover.display_name);
191: tempApprover.occurrence := ame_engine.getHandlerOccurrence(
192: nameIn => tempApprover.name,
193: itemClassIn => tempApprover.item_class,
194: itemIdIn => tempApprover.item_id,
195: actionTypeIdIn => tempApprover.action_type_id,

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

195: actionTypeIdIn => tempApprover.action_type_id,
196: groupOrChainIdIn => tempApprover.group_or_chain_id);
197: tempApprover.member_order_number := 1;
198: tempApprover.approval_status := ame_util.approvedStatus;
199: ame_engine.addApprover(approverIn => tempApprover);
200: return;
201: end if;
202: isRequestor := false;
203: end if;

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

235: if firstApproverSource is not null then
236: tempApprover.source := firstApproverSource;
237: firstApproverSource := null;
238: end if;
239: tempApprover.occurrence := ame_engine.getHandlerOccurrence(
240: nameIn => tempApprover.name,
241: itemClassIn => tempApprover.item_class,
242: itemIdIn => tempApprover.item_id,
243: actionTypeIdIn => tempApprover.action_type_id,

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

247: tempApprover.member_order_number := tempMemberOrderNumber;
248: else /* votingRegimeType in (ame_util.consensusVoting, ame_util.firstApproverVoting) */
249: tempApprover.member_order_number := 1;
250: end if;
251: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn => tempApprover);
252: /* The engine will set tempApprover.approver_order_number; leave it null here. */
253: ame_engine.addApprover(approverIn => tempApprover);
254: /* check to see if there is a COA insertion after this approver. If a COA insertion is
255: found, keep checking till no more COA insertions. The check for final authority

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

249: tempApprover.member_order_number := 1;
250: end if;
251: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn => tempApprover);
252: /* The engine will set tempApprover.approver_order_number; leave it null here. */
253: ame_engine.addApprover(approverIn => tempApprover);
254: /* check to see if there is a COA insertion after this approver. If a COA insertion is
255: found, keep checking till no more COA insertions. The check for final authority
256: will need to be done again. */
257: loop

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

257: loop
258: /* Initialize COAInsertee approverRecord2 */
259: COAInsertee := ame_util.emptyApproverRecord2;
260: /* Check if there are any COAInsertions */
261: ame_engine.getHandlerCOAInsertion(nameIn => tempApprover.name,
262: itemClassIn => tempApprover.item_class,
263: itemIdIn => tempApprover.item_id,
264: actionTypeIdIn => tempApprover.action_type_id,
265: groupOrChainIdIn => tempApprover.group_or_chain_id,

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

289: tempApprover.member_order_number := tempMemberOrderNumber;
290: else /* votingRegimeType in (ame_util.consensusVoting, ame_util.firstApproverVoting) */
291: tempApprover.member_order_number := 1;
292: end if;
293: tempApprover.occurrence := ame_engine.getHandlerOccurrence(nameIn => tempApprover.name,
294: itemClassIn => tempApprover.item_class,
295: itemIdIn => tempApprover.item_id,
296: actionTypeIdIn => tempApprover.action_type_id,
297: groupOrChainIdIn => tempApprover.group_or_chain_id);

Line 298: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn =>

294: itemClassIn => tempApprover.item_class,
295: itemIdIn => tempApprover.item_id,
296: actionTypeIdIn => tempApprover.action_type_id,
297: groupOrChainIdIn => tempApprover.group_or_chain_id);
298: tempApprover.approval_status := ame_engine.getHandlerApprovalStatus(approverIn =>
299: tempApprover);
300: /* If approver has a status of ame_util.approve or ame_util.approveAndForwardStatus or
301: ame_util.nullStatus check to see if approver could have final authority */
302: if tempApprover.approval_status in (ame_util.approvedStatus, ame_util.approveAndForwardStatus,

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

306: tempHasFinalAuthorityYN = ame_util.booleanTrue) then
307: finalAuthorityFound := true;
308: end if;
309: end if;
310: ame_engine.addApprover(approverIn => tempApprover);
311: end if;
312: end loop;
313: /* Decide whether to end the chain. */
314: if(tempHasFinalAuthorityYN = ame_util.booleanTrue ) then

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

319: origSystemIdIn => tempApprover.orig_system_id,
320: nameOut => tempApprover.name,
321: displayNameOut => tempApprover.display_name);
322: if firstAuthInsExists then
323: ame_engine.setDeviationReasonDate(ame_approver_deviation_pkg.firstauthHandlerInsReason,null);
324: end if;
325: if coaInsAuthForward then
326: ame_engine.setDeviationReasonDate(ame_approver_deviation_pkg.forwarHandlerAuthInsReason,null);
327: end if;

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

322: if firstAuthInsExists then
323: ame_engine.setDeviationReasonDate(ame_approver_deviation_pkg.firstauthHandlerInsReason,null);
324: end if;
325: if coaInsAuthForward then
326: ame_engine.setDeviationReasonDate(ame_approver_deviation_pkg.forwarHandlerAuthInsReason,null);
327: end if;
328: tempApprover.api_insertion := ame_util.oamGenerated;
329: end loop;
330: exception

Line 351: tokenValueOneIn => ame_engine.getActionTypeName(tempApprover.action_type_id),

347: if l_error_code = -20213 then
348: errorMessage := ame_util.getMessage(applicationShortNameIn =>'PER',
349: messageNameIn => 'AME_400834_INV_HANDLR_APR',
350: tokenNameOneIn => 'ACTION_TYPE_NAME',
351: tokenValueOneIn => ame_engine.getActionTypeName(tempApprover.action_type_id),
352: tokenNameTwoIn => 'ORIG_SYSTEM',
353: tokenValueTwoIn => ame_util.posOrigSystem,
354: tokenNameThreeIn => 'ORIG_SYSEM_ID',
355: tokenValueThreeIn => tempApprover.orig_system_id);