40: --
41: IF(p_duplicate_template = TRUE) THEN
42: l_replace := true;
43: ELSE
44: l_template_index := hxc_timecard_block_utils.find_active_timecard_index
45: (p_blocks);
46:
47:
48: open c_template_is_a_timecard
140: IF (p_mode = 'ADD') THEN
141:
142: IF(p_blocks(l_block_index).type = 'RANGE' ) THEN
143: p_blocks(l_block_index).measure:=
144: (hxc_timecard_block_utils.date_value(p_blocks(l_block_index).stop_time)
145: -hxc_timecard_block_utils.date_value(p_blocks(l_block_index).start_time)
146: )*24;
147: p_blocks(l_block_index).unit_of_measure:= 'HOURS';
148: END IF;
141:
142: IF(p_blocks(l_block_index).type = 'RANGE' ) THEN
143: p_blocks(l_block_index).measure:=
144: (hxc_timecard_block_utils.date_value(p_blocks(l_block_index).stop_time)
145: -hxc_timecard_block_utils.date_value(p_blocks(l_block_index).start_time)
146: )*24;
147: p_blocks(l_block_index).unit_of_measure:= 'HOURS';
148: END IF;
149:
185: EXIT WHEN NOT p_blocks.exists(l_index);
186:
187: l_block := p_blocks(l_index);
188:
189: if(hxc_timecard_block_utils.is_new_block(l_block)) then
190:
191: IF g_debug THEN
192: hr_utility.trace('In hxc_block_attribute_update.set_block_process_flags 1');
193: END IF;
197: IF g_debug THEN
198: hr_utility.trace('In hxc_block_attribute_update.g_tc_api_flag ::'|| hxc_block_attribute_update.g_tc_api_flag);
199: END IF;
200:
201: if(hxc_timecard_block_utils.is_active_block(l_block)) then
202: p_blocks(l_index).process := 'Y';
203: else
204: p_blocks(l_index).process := 'N';
205: end if;
205: end if;
206:
207: else
208: begin
209: l_old_block := hxc_timecard_block_utils.build_block
210: (p_time_building_block_id => l_block.time_building_block_id
211: ,p_time_building_block_ovn => l_block.object_version_number
212: );
213:
212: );
213:
214: IF g_debug THEN
215: hr_utility.trace('In hxc_block_attribute_update.set_block_process_flags 2');
216: hr_utility.trace('calling hxc_timecard_block_utils.blocks_are_different proc.');
217: END IF;
218:
219:
220:
217: END IF;
218:
219:
220:
221: if(hxc_timecard_block_utils.blocks_are_different
222: (p_block1 => l_block
223: ,p_block2 => l_old_block
224: )
225: ) then
244: p_blocks(l_index).process := 'N';
245:
246: end;
247:
248: if(hxc_timecard_block_utils.parent_has_changed(p_blocks,p_blocks(l_index).parent_building_block_id)) then
249: p_blocks(l_index).process := 'Y';
250: end if;
251:
252: end if;
463: THEN
464: -- This is for PA validation
465: hr_utility.trace(' Prof In IF ');
466:
467: if(hxc_timecard_block_utils.parent_has_changed(p_blocks,p_blocks(l_block_index).parent_building_block_id)) then
468: p_blocks(l_block_index).changed := hxc_timecard.c_yes;
469: end if;
470: END IF;
471: