1: PACKAGE body hxc_timecard_deposit_common AS
2: /* $Header: hxctcdpcommon.pkb 120.0.12010000.4 2009/10/05 12:10:22 amakrish ship $ */
3:
4: g_package varchar2(50) := 'hxc_timecard_deposit_common';
5:
1: PACKAGE body hxc_timecard_deposit_common AS
2: /* $Header: hxctcdpcommon.pkb 120.0.12010000.4 2009/10/05 12:10:22 amakrish ship $ */
3:
4: g_package varchar2(50) := 'hxc_timecard_deposit_common';
5:
6: /**************************************************************************
7: Alias Translator Procedure
8: This procedure....
19: l_proc varchar2(80) := g_package||'.alias_translation';
20:
21: Begin
22:
23: hxc_timecard_attribute_utils.set_bld_blk_info_type_id(p_attributes);
24:
25: HXC_ALIAS_TRANSLATOR.DO_DEPOSIT_TRANSLATION
26: (p_attributes => p_attributes
27: ,p_messages => p_messages
57: open c_deposit_process;
58: fetch c_deposit_process into l_deposit_process_id;
59: if(c_deposit_process%notfound) then
60: close c_deposit_process;
61: hxc_timecard_message_helper.addErrorToCollection
62: (p_messages
63: ,'HXC_NO_OTL_DEPOSIT_PROC'
64: ,hxc_timecard.c_error
65: ,null
60: close c_deposit_process;
61: hxc_timecard_message_helper.addErrorToCollection
62: (p_messages
63: ,'HXC_NO_OTL_DEPOSIT_PROC'
64: ,hxc_timecard.c_error
65: ,null
66: ,null
67: ,hxc_timecard.c_hxc
68: ,null
63: ,'HXC_NO_OTL_DEPOSIT_PROC'
64: ,hxc_timecard.c_error
65: ,null
66: ,null
67: ,hxc_timecard.c_hxc
68: ,null
69: ,null
70: ,null
71: ,null
81: ,p_retrieval_process_id => null
82: ,p_deposit_process_id => l_deposit_process_id
83: );
84:
85: l_old_blocks := hxc_timecard_block_utils.convert_to_dpwr_blocks
86: (p_blocks => p_blocks);
87:
88: l_old_attributes := hxc_timecard_attribute_utils.convert_to_dpwr_attributes
89: (p_attributes => p_attributes);
84:
85: l_old_blocks := hxc_timecard_block_utils.convert_to_dpwr_blocks
86: (p_blocks => p_blocks);
87:
88: l_old_attributes := hxc_timecard_attribute_utils.convert_to_dpwr_attributes
89: (p_attributes => p_attributes);
90:
91: hxc_timecard_message_utils.append_old_messages
92: (p_messages => p_messages
87:
88: l_old_attributes := hxc_timecard_attribute_utils.convert_to_dpwr_attributes
89: (p_attributes => p_attributes);
90:
91: hxc_timecard_message_utils.append_old_messages
92: (p_messages => p_messages
93: ,p_old_messages => l_old_messages
94: ,p_retrieval_process_id => null
95: );
126: Begin
127:
128: for block_rec in c_blocks(p_timecard_id) loop
129: l_blocks.extend;
130: l_blocks(l_block_count) := hxc_timecard_block_utils.build_block
131: (block_rec.time_building_block_id
132: ,block_rec.object_version_number);
133: --
134: -- Date effectively end date the block
171: loop
172: exit when not p_blocks.exists(l_block_index);
173: for attribute_rec in c_attributes(p_blocks(l_block_index).time_building_block_id,p_blocks(l_block_index).object_version_number) loop
174: l_attributes.extend;
175: l_attributes(l_attribute_index) := hxc_timecard_attribute_utils.build_attribute
176: (attribute_rec.time_attribute_id
177: ,1
178: ,p_blocks(l_block_index).time_building_block_id
179: ,p_blocks(l_block_index).object_version_number
207: l_blocks hxc_block_table_type := hxc_block_table_type();
208: l_attributes hxc_attribute_table_type := hxc_attribute_table_type();
209: l_messages hxc_message_table_type := hxc_message_table_type();
210:
211: l_timecard_blocks hxc_timecard.block_list;
212: l_day_blocks hxc_timecard.block_list;
213: l_detail_blocks hxc_timecard.block_list;
214:
215: l_transaction_info hxc_timecard.transaction_info;
208: l_attributes hxc_attribute_table_type := hxc_attribute_table_type();
209: l_messages hxc_message_table_type := hxc_message_table_type();
210:
211: l_timecard_blocks hxc_timecard.block_list;
212: l_day_blocks hxc_timecard.block_list;
213: l_detail_blocks hxc_timecard.block_list;
214:
215: l_transaction_info hxc_timecard.transaction_info;
216: l_timecard_props hxc_timecard_prop_table_type;
209: l_messages hxc_message_table_type := hxc_message_table_type();
210:
211: l_timecard_blocks hxc_timecard.block_list;
212: l_day_blocks hxc_timecard.block_list;
213: l_detail_blocks hxc_timecard.block_list;
214:
215: l_transaction_info hxc_timecard.transaction_info;
216: l_timecard_props hxc_timecard_prop_table_type;
217:
211: l_timecard_blocks hxc_timecard.block_list;
212: l_day_blocks hxc_timecard.block_list;
213: l_detail_blocks hxc_timecard.block_list;
214:
215: l_transaction_info hxc_timecard.transaction_info;
216: l_timecard_props hxc_timecard_prop_table_type;
217:
218: l_dummy boolean := true;
219:
212: l_day_blocks hxc_timecard.block_list;
213: l_detail_blocks hxc_timecard.block_list;
214:
215: l_transaction_info hxc_timecard.transaction_info;
216: l_timecard_props hxc_timecard_prop_table_type;
217:
218: l_dummy boolean := true;
219:
220: l_timecard_ovn hxc_time_building_blocks.object_version_number%type;
244: -- Initialize the message stack
245: --
246:
247: fnd_msg_pub.initialize;
248: hxc_timecard_message_helper.initializeErrors;
249: --
250: -- Get the timecard or timecard template blocks and attributes
251: --
252:
256: --
257: -- Main delete processing
258: --
259:
260: l_timecard_index := hxc_timecard_block_utils.find_active_timecard_index(l_blocks);
261:
262: hxc_timecard_properties.get_preference_properties
263: (p_validate => hxc_timecard.c_yes
264: ,p_resource_id => l_blocks(l_timecard_index).resource_id
258: --
259:
260: l_timecard_index := hxc_timecard_block_utils.find_active_timecard_index(l_blocks);
261:
262: hxc_timecard_properties.get_preference_properties
263: (p_validate => hxc_timecard.c_yes
264: ,p_resource_id => l_blocks(l_timecard_index).resource_id
265: ,p_timecard_start_time => fnd_date.canonical_to_date(l_blocks(l_timecard_index).start_time)
266: ,p_timecard_stop_time => fnd_date.canonical_to_date(l_blocks(l_timecard_index).stop_time)
259:
260: l_timecard_index := hxc_timecard_block_utils.find_active_timecard_index(l_blocks);
261:
262: hxc_timecard_properties.get_preference_properties
263: (p_validate => hxc_timecard.c_yes
264: ,p_resource_id => l_blocks(l_timecard_index).resource_id
265: ,p_timecard_start_time => fnd_date.canonical_to_date(l_blocks(l_timecard_index).start_time)
266: ,p_timecard_stop_time => fnd_date.canonical_to_date(l_blocks(l_timecard_index).stop_time)
267: ,p_for_timecard => false
268: ,p_messages => l_messages
269: ,p_property_table => l_timecard_props
270: );
271:
272: hxc_timecard_message_helper.processerrors
273: (p_messages => l_messages);
274:
275: l_messages.delete;
276:
273: (p_messages => l_messages);
274:
275: l_messages.delete;
276:
277: hxc_timecard_block_utils.sort_blocks
278: (p_blocks => l_blocks
279: ,p_timecard_blocks => l_timecard_blocks
280: ,p_day_blocks => l_day_blocks
281: ,p_detail_blocks => l_detail_blocks
285: (p_blocks => l_blocks
286: ,p_attributes => l_attributes
287: );
288:
289: hxc_timecard_validation.deposit_validation
290: (p_blocks => l_blocks
291: ,p_attributes => l_attributes
292: ,p_messages => l_messages
293: ,p_props => l_timecard_props
290: (p_blocks => l_blocks
291: ,p_attributes => l_attributes
292: ,p_messages => l_messages
293: ,p_props => l_timecard_props
294: ,p_deposit_mode => hxc_timecard.c_submit
295: ,p_template => p_template
296: ,p_resubmit => c_delete
297: ,p_can_deposit => l_dummy
298: );
296: ,p_resubmit => c_delete
297: ,p_can_deposit => l_dummy
298: );
299:
300: hxc_timecard_message_helper.processerrors
301: (p_messages => l_messages);
302:
303: hxc_timecard_deposit.execute
304: (p_blocks => l_blocks
299:
300: hxc_timecard_message_helper.processerrors
301: (p_messages => l_messages);
302:
303: hxc_timecard_deposit.execute
304: (p_blocks => l_blocks
305: ,p_attributes => l_attributes
306: ,p_timecard_blocks => l_timecard_blocks
307: ,p_day_blocks => l_day_blocks
308: ,p_detail_blocks => l_detail_blocks
309: ,p_messages => l_messages
310: ,p_transaction_info => l_transaction_info
311: );
312: hxc_timecard_message_helper.processerrors
313: (p_messages => l_messages);
314:
315: hxc_timecard_summary_api.delete_timecard
316: (p_blocks => l_blocks
311: );
312: hxc_timecard_message_helper.processerrors
313: (p_messages => l_messages);
314:
315: hxc_timecard_summary_api.delete_timecard
316: (p_blocks => l_blocks
317: ,p_timecard_id => p_timecard_id
318: );
319:
316: (p_blocks => l_blocks
317: ,p_timecard_id => p_timecard_id
318: );
319:
320: hxc_timecard_audit.audit_deposit
321: (p_transaction_info => l_transaction_info
322: ,p_messages => l_messages
323: );
324: hxc_timecard_message_helper.processerrors
320: hxc_timecard_audit.audit_deposit
321: (p_transaction_info => l_transaction_info
322: ,p_messages => l_messages
323: );
324: hxc_timecard_message_helper.processerrors
325: (p_messages => l_messages);
326:
327: hxc_timecard_message_helper.prepareErrors;
328:
323: );
324: hxc_timecard_message_helper.processerrors
325: (p_messages => l_messages);
326:
327: hxc_timecard_message_helper.prepareErrors;
328:
329: -- OTL-Absences Integration (Bug 8779478)
330: IF (nvl(fnd_profile.value('HR_ABS_OTL_INTEGRATION'), 'N') = 'Y') THEN
331: IF (p_timecard_id > 0 and hxc_timecard_message_helper.noerrors) THEN
327: hxc_timecard_message_helper.prepareErrors;
328:
329: -- OTL-Absences Integration (Bug 8779478)
330: IF (nvl(fnd_profile.value('HR_ABS_OTL_INTEGRATION'), 'N') = 'Y') THEN
331: IF (p_timecard_id > 0 and hxc_timecard_message_helper.noerrors) THEN
332:
333: hr_utility.trace('Initiated Online Retrieval from HXC_TIMECARD_DEPOSIT_COMMON.DELETE_TIMECARD');
334:
335: l_resource_id := l_blocks(l_timecard_index).resource_id;
329: -- OTL-Absences Integration (Bug 8779478)
330: IF (nvl(fnd_profile.value('HR_ABS_OTL_INTEGRATION'), 'N') = 'Y') THEN
331: IF (p_timecard_id > 0 and hxc_timecard_message_helper.noerrors) THEN
332:
333: hr_utility.trace('Initiated Online Retrieval from HXC_TIMECARD_DEPOSIT_COMMON.DELETE_TIMECARD');
334:
335: l_resource_id := l_blocks(l_timecard_index).resource_id;
336: l_tc_start := fnd_date.canonical_to_date(l_blocks(l_timecard_index).start_time);
337: l_tc_stop := fnd_date.canonical_to_date(l_blocks(l_timecard_index).stop_time);
341: l_tc_stop,
342: 'DELETED',
343: l_messages);
344:
345: hxc_timecard_message_helper.processerrors
346: (p_messages => l_messages);
347:
348: hxc_timecard_message_helper.prepareErrors;
349:
344:
345: hxc_timecard_message_helper.processerrors
346: (p_messages => l_messages);
347:
348: hxc_timecard_message_helper.prepareErrors;
349:
350: END IF;
351: END IF;
352:
351: END IF;
352:
353: End delete_timecard;
354:
355: END hxc_timecard_deposit_common;