1: package body hxc_timecard_summary_pkg as
2: /* $Header: hxctcsum.pkb 120.12.12020000.4 2013/02/11 12:35:11 asrajago ship $ */
3:
4: g_debug boolean := hr_utility.debug_enabled;
5: g_check_for_reasons varchar2(1) := null;
6:
7: function get_migration_apr_status
8: (p_timecard_id in hxc_time_building_blocks.time_building_block_id%type
354: IF (NVL(fnd_profile.value('HR_ABS_OTL_INTEGRATION'), 'N') = 'Y')
355: THEN
356:
357: IF g_debug THEN
358: hr_utility.trace('ABS> In hxc_timecard_summary_pkg.insert_summary_row');
359: hr_utility.trace('ABS> initial value of recorded hours ::'||l_recorded_hours);
360: END IF;
361:
362: BEGIN
355: THEN
356:
357: IF g_debug THEN
358: hr_utility.trace('ABS> In hxc_timecard_summary_pkg.insert_summary_row');
359: hr_utility.trace('ABS> initial value of recorded hours ::'||l_recorded_hours);
360: END IF;
361:
362: BEGIN
363: IF g_debug THEN
360: END IF;
361:
362: BEGIN
363: IF g_debug THEN
364: hr_utility.trace('ABS> initial value of l_abs_days ::'||l_abs_days);
365: hr_utility.trace('ABS> initial value of l_abs_hours ::'||l_abs_hours);
366: END IF;
367:
368: SELECT nvl(absence_days,0),
361:
362: BEGIN
363: IF g_debug THEN
364: hr_utility.trace('ABS> initial value of l_abs_days ::'||l_abs_days);
365: hr_utility.trace('ABS> initial value of l_abs_hours ::'||l_abs_hours);
366: END IF;
367:
368: SELECT nvl(absence_days,0),
369: nvl(absence_hours,0)
380: l_abs_hours := 0;
381: END;
382:
383: IF g_debug THEN
384: hr_utility.trace('ABS> Before calculation of recorded hours');
385: hr_utility.trace('ABS> initial value of recorded hours ::'||l_recorded_hours);
386: hr_utility.trace('ABS> initial value of l_abs_days ::'||l_abs_days);
387: hr_utility.trace('ABS> initial value of l_abs_hours ::'||l_abs_hours);
388: END IF;
381: END;
382:
383: IF g_debug THEN
384: hr_utility.trace('ABS> Before calculation of recorded hours');
385: hr_utility.trace('ABS> initial value of recorded hours ::'||l_recorded_hours);
386: hr_utility.trace('ABS> initial value of l_abs_days ::'||l_abs_days);
387: hr_utility.trace('ABS> initial value of l_abs_hours ::'||l_abs_hours);
388: END IF;
389:
382:
383: IF g_debug THEN
384: hr_utility.trace('ABS> Before calculation of recorded hours');
385: hr_utility.trace('ABS> initial value of recorded hours ::'||l_recorded_hours);
386: hr_utility.trace('ABS> initial value of l_abs_days ::'||l_abs_days);
387: hr_utility.trace('ABS> initial value of l_abs_hours ::'||l_abs_hours);
388: END IF;
389:
390: l_recorded_hours := l_recorded_hours - (l_abs_days+l_abs_hours);
383: IF g_debug THEN
384: hr_utility.trace('ABS> Before calculation of recorded hours');
385: hr_utility.trace('ABS> initial value of recorded hours ::'||l_recorded_hours);
386: hr_utility.trace('ABS> initial value of l_abs_days ::'||l_abs_days);
387: hr_utility.trace('ABS> initial value of l_abs_hours ::'||l_abs_hours);
388: END IF;
389:
390: l_recorded_hours := l_recorded_hours - (l_abs_days+l_abs_hours);
391:
389:
390: l_recorded_hours := l_recorded_hours - (l_abs_days+l_abs_hours);
391:
392: IF g_debug THEN
393: hr_utility.trace('ABS> final values before insert into timecard summary');
394: hr_utility.trace('ABS> l_abs_days ::'||l_abs_days);
395: hr_utility.trace('ABS> l_abs_hours ::'||l_abs_hours);
396: hr_utility.trace('ABS> l_recorded_hours ::'||l_recorded_hours);
397: END IF;
390: l_recorded_hours := l_recorded_hours - (l_abs_days+l_abs_hours);
391:
392: IF g_debug THEN
393: hr_utility.trace('ABS> final values before insert into timecard summary');
394: hr_utility.trace('ABS> l_abs_days ::'||l_abs_days);
395: hr_utility.trace('ABS> l_abs_hours ::'||l_abs_hours);
396: hr_utility.trace('ABS> l_recorded_hours ::'||l_recorded_hours);
397: END IF;
398:
391:
392: IF g_debug THEN
393: hr_utility.trace('ABS> final values before insert into timecard summary');
394: hr_utility.trace('ABS> l_abs_days ::'||l_abs_days);
395: hr_utility.trace('ABS> l_abs_hours ::'||l_abs_hours);
396: hr_utility.trace('ABS> l_recorded_hours ::'||l_recorded_hours);
397: END IF;
398:
399: -- clear absence summary rows
392: IF g_debug THEN
393: hr_utility.trace('ABS> final values before insert into timecard summary');
394: hr_utility.trace('ABS> l_abs_days ::'||l_abs_days);
395: hr_utility.trace('ABS> l_abs_hours ::'||l_abs_hours);
396: hr_utility.trace('ABS> l_recorded_hours ::'||l_recorded_hours);
397: END IF;
398:
399: -- clear absence summary rows
400: IF g_debug THEN
397: END IF;
398:
399: -- clear absence summary rows
400: IF g_debug THEN
401: hr_utility.trace('ABS> In hxc_timecard_summary_pkg.insert_summary_row');
402: hr_utility.trace('ABS> clear absence summary rows');
403: END IF;
404:
405: hxc_retrieve_absences.clear_absence_summary_rows;
398:
399: -- clear absence summary rows
400: IF g_debug THEN
401: hr_utility.trace('ABS> In hxc_timecard_summary_pkg.insert_summary_row');
402: hr_utility.trace('ABS> clear absence summary rows');
403: END IF;
404:
405: hxc_retrieve_absences.clear_absence_summary_rows;
406:
622:
623: -- OTL-Absences Integration (Bug 8779478)
624: IF (nvl(fnd_profile.value('HR_ABS_OTL_INTEGRATION'), 'N') = 'Y') THEN
625: IF g_debug THEN
626: hr_utility.trace('Initiated Online Retrieval from HXC_TIMECARD_SUMMARY_PKG.APPROVE_TIMECARD');
627: END IF;
628:
629: OPEN c_timecard_details(p_timecard_id);
630: FETCH c_timecard_details INTO l_resource_id,
639: l_approval_status,
640: l_messages);
641:
642: IF g_debug THEN
643: hr_utility.trace('Completed Online Retrieval from HXC_TIMECARD_SUMMARY_PKG.APPROVE_TIMECARD');
644: END IF;
645:
646: IF (l_messages.COUNT > 0) THEN
647: IF g_debug THEN
644: END IF;
645:
646: IF (l_messages.COUNT > 0) THEN
647: IF g_debug THEN
648: hr_utility.trace('ABS:EXCEPTION - retrieval_error during approval');
649: END IF;
650: hr_utility.set_message(809, l_messages(l_messages.FIRST).message_name);
651: hr_utility.raise_error;
652: END IF;
646: IF (l_messages.COUNT > 0) THEN
647: IF g_debug THEN
648: hr_utility.trace('ABS:EXCEPTION - retrieval_error during approval');
649: END IF;
650: hr_utility.set_message(809, l_messages(l_messages.FIRST).message_name);
651: hr_utility.raise_error;
652: END IF;
653:
654: END IF;
647: IF g_debug THEN
648: hr_utility.trace('ABS:EXCEPTION - retrieval_error during approval');
649: END IF;
650: hr_utility.set_message(809, l_messages(l_messages.FIRST).message_name);
651: hr_utility.raise_error;
652: END IF;
653:
654: END IF;
655:
730: BEGIN
731:
732: IF g_debug
733: THEN
734: hr_utility.trace('p_timecard_id = '||p_timecard_id);
735: hr_utility.trace('p_timecard_ovn = '||p_timecard_ovn);
736: hr_utility.trace('p_process_id = '||p_process_id);
737: END IF;
738:
731:
732: IF g_debug
733: THEN
734: hr_utility.trace('p_timecard_id = '||p_timecard_id);
735: hr_utility.trace('p_timecard_ovn = '||p_timecard_ovn);
736: hr_utility.trace('p_process_id = '||p_process_id);
737: END IF;
738:
739: -- Pick up the recipient name.
732: IF g_debug
733: THEN
734: hr_utility.trace('p_timecard_id = '||p_timecard_id);
735: hr_utility.trace('p_timecard_ovn = '||p_timecard_ovn);
736: hr_utility.trace('p_process_id = '||p_process_id);
737: END IF;
738:
739: -- Pick up the recipient name.
740: -- If exists in cache, use it, else select with a cursor.
764: CLOSE get_details;
765:
766: IF g_debug
767: THEN
768: hr_utility.trace('l_exists = '||l_exists);
769: END IF;
770:
771: -- If any such detail exists.
772: IF l_exists = 0
773: THEN
774:
775: IF g_debug
776: THEN
777: hr_utility.trace('Updating Transferred To ');
778: END IF;
779:
780: -- Update the transferred to column.
781: -- Do an LTRIM and RTRIM to avoid leading and trailing zeros.
794: FROM hxc_timecard_summary
795: WHERE timecard_id = p_timecard_id
796: AND timecard_ovn = p_timecard_ovn;
797:
798: hr_utility.trace('New value is '||l_recipient_name);
799: END IF;
800:
801: END IF;
802:
802:
803: EXCEPTION
804: WHEN NO_DATA_FOUND
805: THEN
806: hr_utility.trace('There is a no data found ');
807: hr_utility.trace(dbms_utility.format_error_backtrace);
808:
809: END update_transferred_to;
810:
803: EXCEPTION
804: WHEN NO_DATA_FOUND
805: THEN
806: hr_utility.trace('There is a no data found ');
807: hr_utility.trace(dbms_utility.format_error_backtrace);
808:
809: END update_transferred_to;
810:
811: end hxc_timecard_summary_pkg;