150: END IF;
151:
152:
153: -- get AME related WF attribute values
154: if hr_workflow_utility.item_attribute_exists
155: (p_item_type => p_item_type
156: ,p_item_key => p_item_key
157: ,p_name => 'HR_AME_APP_ID_ATTR') then
158: -- get the attribute value
155: (p_item_type => p_item_type
156: ,p_item_key => p_item_key
157: ,p_name => 'HR_AME_APP_ID_ATTR') then
158: -- get the attribute value
159: hr_utility.trace('In : (if hr_workflow_utility.item_attribute_exists) '|| l_proc);
160: c_application_id :=wf_engine.GetItemAttrNumber(itemtype => p_item_type ,
161: itemkey => p_item_key,
162: aname => 'HR_AME_APP_ID_ATTR');
163:
161: itemkey => p_item_key,
162: aname => 'HR_AME_APP_ID_ATTR');
163:
164: else
165: hr_utility.trace('In : else of (if hr_workflow_utility.item_attribute_exists) '|| l_proc);
166: c_application_id := null;
167: end if;
168:
169: c_application_id := nvl(c_application_id,800);
167: end if;
168:
169: c_application_id := nvl(c_application_id,800);
170:
171: if hr_workflow_utility.item_attribute_exists
172: (p_item_type => p_item_type
173: ,p_item_key => p_item_key
174: ,p_name => 'TRANSACTION_ID') then
175: -- get the attribute value
172: (p_item_type => p_item_type
173: ,p_item_key => p_item_key
174: ,p_name => 'TRANSACTION_ID') then
175: -- get the attribute value
176: hr_utility.trace('In : (if hr_workflow_utility.item_attribute_exists) '|| l_proc);
177: c_transaction_id := wf_engine.GetItemAttrNumber(itemtype => p_item_type ,
178: itemkey => p_item_key,
179: aname => 'TRANSACTION_ID');
180: else
177: c_transaction_id := wf_engine.GetItemAttrNumber(itemtype => p_item_type ,
178: itemkey => p_item_key,
179: aname => 'TRANSACTION_ID');
180: else
181: hr_utility.trace('In : else of (if hr_workflow_utility.item_attribute_exists) '|| l_proc);
182: c_transaction_id := null;
183: end if;
184:
185:
182: c_transaction_id := null;
183: end if;
184:
185:
186: if hr_workflow_utility.item_attribute_exists
187: (p_item_type => p_item_type
188: ,p_item_key => p_item_key
189: ,p_name => 'HR_AME_TRAN_TYPE_ATTR') then
190: -- get the attribute value
187: (p_item_type => p_item_type
188: ,p_item_key => p_item_key
189: ,p_name => 'HR_AME_TRAN_TYPE_ATTR') then
190: -- get the attribute value
191: hr_utility.trace('In : (if hr_workflow_utility.item_attribute_exists) '|| l_proc);
192: c_transaction_type := wf_engine.GetItemAttrText(itemtype => p_item_type ,
193: itemkey => p_item_key,
194: aname => 'HR_AME_TRAN_TYPE_ATTR');
195: else
192: c_transaction_type := wf_engine.GetItemAttrText(itemtype => p_item_type ,
193: itemkey => p_item_key,
194: aname => 'HR_AME_TRAN_TYPE_ATTR');
195: else
196: hr_utility.trace('In : else of (if hr_workflow_utility.item_attribute_exists) '|| l_proc);
197: c_transaction_type := null;
198:
199: end if;
200:
307:
308: -- need to reset all the Workflow item attributes used in the approval process
309:
310: -- FORWARD_FROM_DISPLAY_NAME
311: if hr_workflow_utility.item_attribute_exists
312: (p_item_type => p_item_type
313: ,p_item_key => p_item_key
314: ,p_name => 'FORWARD_FROM_DISPLAY_NAME') then
315: -- set the attribute value to null
318: aname => 'FORWARD_FROM_DISPLAY_NAME',
319: avalue=>null);
320: end if;
321: -- FORWARD_FROM_USERNAME
322: if hr_workflow_utility.item_attribute_exists
323: (p_item_type => p_item_type
324: ,p_item_key => p_item_key
325: ,p_name => 'FORWARD_FROM_USERNAME') then
326: -- set the attribute value to null
329: aname => 'FORWARD_FROM_USERNAME',
330: avalue=>null);
331: end if;
332: -- FORWARD_FROM_PERSON_ID
333: if hr_workflow_utility.item_attribute_exists
334: (p_item_type => p_item_type
335: ,p_item_key => p_item_key
336: ,p_name => 'FORWARD_FROM_PERSON_ID') then
337: -- set the attribute value to null
340: aname => 'FORWARD_FROM_PERSON_ID',
341: avalue=>null);
342: end if;
343: -- FORWARD_TO_DISPLAY_NAME
344: if hr_workflow_utility.item_attribute_exists
345: (p_item_type => p_item_type
346: ,p_item_key => p_item_key
347: ,p_name => 'FORWARD_TO_DISPLAY_NAME') then
348: -- set the attribute value to null
351: aname => 'FORWARD_TO_DISPLAY_NAME',
352: avalue=>null);
353: end if;
354: -- FORWARD_TO_USERNAME
355: if hr_workflow_utility.item_attribute_exists
356: (p_item_type => p_item_type
357: ,p_item_key => p_item_key
358: ,p_name => 'FORWARD_TO_USERNAME') then
359: -- set the attribute value to null
362: aname => 'FORWARD_TO_USERNAME',
363: avalue=>null);
364: end if;
365: -- FORWARD_TO_PERSON_ID
366: if hr_workflow_utility.item_attribute_exists
367: (p_item_type => p_item_type
368: ,p_item_key => p_item_key
369: ,p_name => 'FORWARD_TO_PERSON_ID') then
370: -- set the attribute value to null
398: aname => 'HR_AME_TRAN_TYPE_ATTR') IS NOT NULL) THEN
399: -- CURRENT_APPROVER_INDEX
400: hr_utility.trace('In ( IF ( NVL(l_approvalProcessversion,X) <> V5 OR
401: wf_engine.GetItemAttrText(..,..,..,)IS NOT NULL '|| l_proc);
402: if hr_workflow_utility.item_attribute_exists
403: (p_item_type => p_item_type
404: ,p_item_key => p_item_key
405: ,p_name => 'CURRENT_APPROVER_INDEX') then
406: -- set the attribute value to null
410: avalue=>null);
411: end if;
412:
413: -- 'LAST_DEFAULT_APPROVER'
414: if hr_workflow_utility.item_attribute_exists
415: (p_item_type => p_item_type
416: ,p_item_key => p_item_key
417: ,p_name => 'LAST_DEFAULT_APPROVER') then
418: -- set the attribute value to null
423: end if;
424: END IF;
425:
426: -- CURRENT_DEF_APPR_INDEX
427: if hr_workflow_utility.item_attribute_exists
428: (p_item_type => p_item_type
429: ,p_item_key => p_item_key
430: ,p_name => 'CURRENT_DEF_APPR_INDEX') then
431: -- set the attribute value to null
938: if funmode = 'RUN' then
939: hr_utility.trace('In (if funmode = RUN) '|| l_proc);
940: savepoint start_transaction;
941: -- check to see if the TRANSACTION_ID attribute has been created
942: if hr_workflow_utility.item_attribute_exists
943: (p_item_type => itemtype
944: ,p_item_key => itemkey
945: ,p_name => 'TRANSACTION_ID') then
946: hr_utility.trace('In (if hr_workflow_utility.item_attribute_exists) '|| l_proc);
942: if hr_workflow_utility.item_attribute_exists
943: (p_item_type => itemtype
944: ,p_item_key => itemkey
945: ,p_name => 'TRANSACTION_ID') then
946: hr_utility.trace('In (if hr_workflow_utility.item_attribute_exists) '|| l_proc);
947: -- the TRANSACTION_ID exists so ensure that it is null
948: if get_transaction_id
949: (p_item_type => itemtype
950: ,p_item_key => itemkey) is not null then
955: hr_utility.set_location('Leaving: '|| l_proc,25);
956: return;
957: end if;
958: else
959: hr_utility.trace('In else of (if hr_workflow_utility.item_attribute_exists) '|| l_proc);
960: -- the TRANSACTION_ID does not exist so create it
961: wf_engine.additemattr
962: (itemtype => itemtype
963: ,itemkey => itemkey
963: ,itemkey => itemkey
964: ,aname => 'TRANSACTION_ID');
965: end if;
966: -- check to see if the TRANSACTION_PRIVILEGE attribute has been created
967: if not hr_workflow_utility.item_attribute_exists
968: (p_item_type => itemtype
969: ,p_item_key => itemkey
970: ,p_name => 'TRANSACTION_PRIVILEGE') then
971: -- the TRANSACTION_PRIVILEGE does not exist so create it
1807: (p_item_type => p_item_type
1808: ,p_item_key => p_item_key
1809: ,p_ignore_warnings => 'Y');
1810: -- Complete the activity with SUCCESS
1811: hr_workflow_utility.workflow_transition
1812: (p_item_type => p_item_type
1813: ,p_item_key => p_item_key
1814: ,p_actid => p_actid
1815: ,p_result => 'SUCCESS');