43: --
44: -- {End Of Comments}
45: --
46: procedure copyAttributesToBlock
47: (p_from_block_id hxc_time_building_blocks.time_building_block_id%type,
48: p_from_block_ovn hxc_time_building_blocks.object_version_number%type,
49: p_to_block_id hxc_time_building_blocks.time_building_block_id%type,
50: p_to_block_ovn hxc_time_building_blocks.object_version_number%type
51: ) is
44: -- {End Of Comments}
45: --
46: procedure copyAttributesToBlock
47: (p_from_block_id hxc_time_building_blocks.time_building_block_id%type,
48: p_from_block_ovn hxc_time_building_blocks.object_version_number%type,
49: p_to_block_id hxc_time_building_blocks.time_building_block_id%type,
50: p_to_block_ovn hxc_time_building_blocks.object_version_number%type
51: ) is
52:
45: --
46: procedure copyAttributesToBlock
47: (p_from_block_id hxc_time_building_blocks.time_building_block_id%type,
48: p_from_block_ovn hxc_time_building_blocks.object_version_number%type,
49: p_to_block_id hxc_time_building_blocks.time_building_block_id%type,
50: p_to_block_ovn hxc_time_building_blocks.object_version_number%type
51: ) is
52:
53: cursor c_attributes
46: procedure copyAttributesToBlock
47: (p_from_block_id hxc_time_building_blocks.time_building_block_id%type,
48: p_from_block_ovn hxc_time_building_blocks.object_version_number%type,
49: p_to_block_id hxc_time_building_blocks.time_building_block_id%type,
50: p_to_block_ovn hxc_time_building_blocks.object_version_number%type
51: ) is
52:
53: cursor c_attributes
54: (p_block_id hxc_time_building_blocks.time_building_block_id%type,
50: p_to_block_ovn hxc_time_building_blocks.object_version_number%type
51: ) is
52:
53: cursor c_attributes
54: (p_block_id hxc_time_building_blocks.time_building_block_id%type,
55: p_block_ovn hxc_time_building_blocks.object_version_number%type) is
56: select tau.time_attribute_id,
57: tbb.data_set_id
58: from hxc_time_attribute_usages tau,
51: ) is
52:
53: cursor c_attributes
54: (p_block_id hxc_time_building_blocks.time_building_block_id%type,
55: p_block_ovn hxc_time_building_blocks.object_version_number%type) is
56: select tau.time_attribute_id,
57: tbb.data_set_id
58: from hxc_time_attribute_usages tau,
59: hxc_time_attributes ta,
56: select tau.time_attribute_id,
57: tbb.data_set_id
58: from hxc_time_attribute_usages tau,
59: hxc_time_attributes ta,
60: hxc_time_building_blocks tbb
61: where tau.time_building_block_id = p_block_id
62: and tau.time_building_block_ovn = p_block_ovn
63: and tau.time_building_block_id = tbb.time_building_block_id
64: and tau.time_building_block_ovn = tbb.object_version_number
123: ) is
124:
125: cursor c_latest_version is
126: select max(object_version_number)
127: from hxc_time_building_blocks
128: where time_building_block_id = p_time_building_block_id
129: group by time_building_block_id;
130:
131: cursor c_get_tc_data_set_id (p_time_building_block_id number) is
129: group by time_building_block_id;
130:
131: cursor c_get_tc_data_set_id (p_time_building_block_id number) is
132: select data_set_id
133: from hxc_time_building_blocks
134: where time_building_block_id = p_time_building_block_id
135: and date_to = hr_general.end_of_time;
136:
137: cursor c_get_tc_range_data_set_id (p_stop_time date) is
143: cursor c_day_det_range_data_set_id (p_parent_building_block_id number
144: ,p_parent_building_block_ovn number
145: ) is
146: select tbb.data_set_id
147: from hxc_time_building_blocks tbb
148: where tbb.time_building_block_id = p_parent_building_block_id
149: and tbb.object_version_number = p_parent_building_block_ovn;
150:
151:
149: and tbb.object_version_number = p_parent_building_block_ovn;
150:
151:
152:
153: l_data_set_id hxc_time_building_blocks.data_set_id%type;
154: l_proc varchar2(72);
155: l_object_version_number hxc_time_building_blocks.object_version_number%type;
156: l_time_building_block_id hxc_time_building_blocks.time_building_block_id%type;
157: l_max_ovn hxc_time_building_blocks.object_version_number%type;
151:
152:
153: l_data_set_id hxc_time_building_blocks.data_set_id%type;
154: l_proc varchar2(72);
155: l_object_version_number hxc_time_building_blocks.object_version_number%type;
156: l_time_building_block_id hxc_time_building_blocks.time_building_block_id%type;
157: l_max_ovn hxc_time_building_blocks.object_version_number%type;
158:
159: e_no_ovn exception;
152:
153: l_data_set_id hxc_time_building_blocks.data_set_id%type;
154: l_proc varchar2(72);
155: l_object_version_number hxc_time_building_blocks.object_version_number%type;
156: l_time_building_block_id hxc_time_building_blocks.time_building_block_id%type;
157: l_max_ovn hxc_time_building_blocks.object_version_number%type;
158:
159: e_no_ovn exception;
160:
153: l_data_set_id hxc_time_building_blocks.data_set_id%type;
154: l_proc varchar2(72);
155: l_object_version_number hxc_time_building_blocks.object_version_number%type;
156: l_time_building_block_id hxc_time_building_blocks.time_building_block_id%type;
157: l_max_ovn hxc_time_building_blocks.object_version_number%type;
158:
159: e_no_ovn exception;
160:
161: begin
217: open c_get_tc_data_set_id(p_time_building_block_id);
218: fetch c_get_tc_data_set_id into l_data_set_id;
219: close c_get_tc_data_set_id;
220:
221: update hxc_time_building_blocks
222: set date_to = decode(trunc(date_from)
223: ,trunc(p_effective_date)
224: ,p_effective_date
225: ,p_effective_date - 1)
256: if c_latest_version%found then
257:
258: -- set the true object_version_number and time_building_block_id
259: -- for the row we just inserted
260: update hxc_time_building_blocks
261: set object_version_number = l_max_ovn + 1,
262: time_building_block_id = p_time_building_block_id
263: where time_building_block_id = l_time_building_block_id
264: and date_from = p_effective_date
277:
278: /*
279: We shouldn't be doing this!!
280:
281: update hxc_time_building_blocks
282: set parent_building_block_ovn = l_object_version_number
283: where parent_building_block_id = p_time_building_block_id;
284:
285: */
422: ) is
423:
424: cursor c_latest_version is
425: select max(object_version_number)
426: from hxc_time_building_blocks
427: where time_building_block_id = p_time_building_block_id
428: group by time_building_block_id;
429:
430: cursor c_get_parent_data_set_id (p_parent_building_block_id number
430: cursor c_get_parent_data_set_id (p_parent_building_block_id number
431: ,p_parent_building_block_ovn number
432: ) is
433: select tbb.data_set_id
434: from hxc_time_building_blocks tbb
435: where tbb.time_building_block_id = p_parent_building_block_id
436: and tbb.object_version_number = p_parent_building_block_ovn;
437:
438:
436: and tbb.object_version_number = p_parent_building_block_ovn;
437:
438:
439:
440: l_data_set_id hxc_time_building_blocks.data_set_id%type;
441:
442: l_proc varchar2(72);
443: l_object_version_number hxc_time_building_blocks.object_version_number%type;
444: l_time_building_block_id hxc_time_building_blocks.time_building_block_id%type;
439:
440: l_data_set_id hxc_time_building_blocks.data_set_id%type;
441:
442: l_proc varchar2(72);
443: l_object_version_number hxc_time_building_blocks.object_version_number%type;
444: l_time_building_block_id hxc_time_building_blocks.time_building_block_id%type;
445: l_max_ovn hxc_time_building_blocks.object_version_number%type;
446:
447: e_no_ovn exception;
440: l_data_set_id hxc_time_building_blocks.data_set_id%type;
441:
442: l_proc varchar2(72);
443: l_object_version_number hxc_time_building_blocks.object_version_number%type;
444: l_time_building_block_id hxc_time_building_blocks.time_building_block_id%type;
445: l_max_ovn hxc_time_building_blocks.object_version_number%type;
446:
447: e_no_ovn exception;
448:
441:
442: l_proc varchar2(72);
443: l_object_version_number hxc_time_building_blocks.object_version_number%type;
444: l_time_building_block_id hxc_time_building_blocks.time_building_block_id%type;
445: l_max_ovn hxc_time_building_blocks.object_version_number%type;
446:
447: e_no_ovn exception;
448:
449: begin
608: ,p_object_version_number in out nocopy number
609: ) is
610:
611: l_proc varchar2(72);
612: l_object_version_number hxc_time_building_blocks.object_version_number%type;
613:
614: cursor c_get_data_set_id(p_tbb_id number,p_tbb_ovn number)
615: is
616: select tbb.data_set_id
613:
614: cursor c_get_data_set_id(p_tbb_id number,p_tbb_ovn number)
615: is
616: select tbb.data_set_id
617: from hxc_time_building_blocks tbb
618: where tbb.time_building_block_id = p_tbb_id
619: and tbb.object_version_number = p_tbb_ovn;
620:
621: l_data_set_id hxc_data_sets.data_set_id%TYPE;
691: ) is
692:
693: cursor c_old_rec is
694: select *
695: from hxc_time_building_blocks
696: where time_building_block_id = p_time_building_block_id
697: and date_to = hr_general.end_of_time;
698:
699: cursor c_latest_bb_version is
697: and date_to = hr_general.end_of_time;
698:
699: cursor c_latest_bb_version is
700: select max(object_version_number)
701: from hxc_time_building_blocks
702: where time_building_block_id = p_time_building_block_id
703: group by time_building_block_id;
704:
705: cursor c_time_attribute_usage(p_ovn number, p_building_block_id number) is
711: AND hta.time_attribute_id = htau.time_attribute_id
712: AND hta.ATTRIBUTE_CATEGORY <> 'REASON';
713:
714: l_proc varchar2(72);
715: l_object_version_number hxc_time_building_blocks.object_version_number%type;
716: l_time_building_block_id number;
717: l_time_record hxc_time_building_blocks%rowtype;
718: l_max_ovn number;
719: l_time_attribute_usage_id number;
713:
714: l_proc varchar2(72);
715: l_object_version_number hxc_time_building_blocks.object_version_number%type;
716: l_time_building_block_id number;
717: l_time_record hxc_time_building_blocks%rowtype;
718: l_max_ovn number;
719: l_time_attribute_usage_id number;
720: l_time_attribute_id number;
721: l_status hxc_time_building_blocks.approval_status%TYPE;
717: l_time_record hxc_time_building_blocks%rowtype;
718: l_max_ovn number;
719: l_time_attribute_usage_id number;
720: l_time_attribute_id number;
721: l_status hxc_time_building_blocks.approval_status%TYPE;
722:
723: begin
724:
725: g_debug := hr_utility.debug_enabled;
749: open c_old_rec;
750: fetch c_old_rec into l_time_record;
751: if c_old_rec%found then
752: close c_old_rec;
753: update hxc_time_building_blocks
754: set date_to = p_effective_date
755: where time_building_block_id = p_time_building_block_id
756: and date_to = hr_general.end_of_time;
757:
792: close c_latest_bb_version;
793:
794: -- set the true object_version_number, time_building_block_id
795: -- and date_to for the row we just inserted
796: update hxc_time_building_blocks
797: set object_version_number = l_max_ovn + 1,
798: time_building_block_id = p_time_building_block_id,
799: date_to = p_effective_date
800: where time_building_block_id = l_time_building_block_id