DBA Data[Home] [Help]

PACKAGE BODY: APPS.HXC_INTEGRATION_LAYER_V1_GRP

Source


1 PACKAGE BODY HXC_INTEGRATION_LAYER_V1_GRP AS
2 /* $Header: hxcintegrationv1.pkb 120.1 2005/12/05 14:18:29 arundell noship $ */
3 
4 
5 --
6 -- UTILITY PACKAGE
7 --
8 
9 -- ----------------------------------------------------------------------------
10 -- |-------------------------< int_to_otl_timecard_info>----------------------|
11 -- ----------------------------------------------------------------------------
12 PROCEDURE int_to_otl_timecard_info(
13 		 p_building_blocks_otl  IN OUT NOCOPY HXC_SELF_SERVICE_TIME_DEPOSIT.timecard_info
14 		,p_building_blocks_int 	IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.timecard_info)
15 		IS
16 
17 l_index			NUMBER;
18 
19 BEGIN
20 
21 l_index := p_building_blocks_int.first;
22 
23 LOOP
24   EXIT WHEN (NOT p_building_blocks_int.exists(l_index));
25 
26       p_building_blocks_otl(l_index).time_building_block_id :=
27           p_building_blocks_int(l_index).time_building_block_id;
28       p_building_blocks_otl(l_index).TYPE :=
29       	  p_building_blocks_int(l_index).TYPE;
30       p_building_blocks_otl(l_index).measure :=
31       	  p_building_blocks_int(l_index).measure;
32       p_building_blocks_otl(l_index).unit_of_measure :=
33       	  p_building_blocks_int(l_index).unit_of_measure;
34       p_building_blocks_otl(l_index).start_time :=
35       	  p_building_blocks_int(l_index).start_time;
36       p_building_blocks_otl(l_index).stop_time :=
37       	  p_building_blocks_int(l_index).stop_time;
38       p_building_blocks_otl(l_index).parent_building_block_id :=
39       	  p_building_blocks_int(l_index).parent_building_block_id;
40       p_building_blocks_otl(l_index).parent_is_new :=
41       	  p_building_blocks_int(l_index).parent_is_new;
42       p_building_blocks_otl(l_index).SCOPE :=
43       	  p_building_blocks_int(l_index).SCOPE;
44       p_building_blocks_otl(l_index).object_version_number :=
45       	  p_building_blocks_int(l_index).object_version_number;
46       p_building_blocks_otl(l_index).approval_status :=
47       	  p_building_blocks_int(l_index).approval_status;
48       p_building_blocks_otl(l_index).resource_id :=
49       	  p_building_blocks_int(l_index).resource_id;
50       p_building_blocks_otl(l_index).resource_type :=
51       	  p_building_blocks_int(l_index).resource_type;
52       p_building_blocks_otl(l_index).approval_style_id :=
53       	  p_building_blocks_int(l_index).approval_style_id;
54       p_building_blocks_otl(l_index).date_from :=
55       	  p_building_blocks_int(l_index).date_from;
56       p_building_blocks_otl(l_index).date_to :=
57       	  p_building_blocks_int(l_index).date_to;
58       p_building_blocks_otl(l_index).comment_text :=
59       	  p_building_blocks_int(l_index).comment_text;
60       p_building_blocks_otl(l_index).parent_building_block_ovn :=
61       	  p_building_blocks_int(l_index).parent_building_block_ovn;
62       p_building_blocks_otl(l_index).NEW :=
63       	  p_building_blocks_int(l_index).NEW;
64       p_building_blocks_otl(l_index).changed :=
65       	  p_building_blocks_int(l_index).changed;
66       p_building_blocks_otl(l_index).process :=
67       	  p_building_blocks_int(l_index).process;
68       p_building_blocks_otl(l_index).application_set_id :=
69       	  p_building_blocks_int(l_index).application_set_id;
70 
71    l_index := p_building_blocks_int.next(l_index);
72 
73 END LOOP;
74 -- delete the structure
75 p_building_blocks_int.delete;
76 
77 END int_to_otl_timecard_info;
78 
79 -- ----------------------------------------------------------------------------
80 -- |-------------------------< otl_to_int_timecard_info>----------------------|
81 -- ----------------------------------------------------------------------------
82 PROCEDURE otl_to_int_timecard_info(
83 		 p_building_blocks_otl  IN OUT NOCOPY HXC_SELF_SERVICE_TIME_DEPOSIT.timecard_info
84 		,p_building_blocks_int 	IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.timecard_info)
85 		IS
86 l_index			NUMBER;
87 
88 BEGIN
89 
90 l_index := p_building_blocks_otl.first;
91 
92 LOOP
93   EXIT WHEN (NOT p_building_blocks_otl.exists(l_index));
94 
95       p_building_blocks_int(l_index).time_building_block_id :=
96           p_building_blocks_otl(l_index).time_building_block_id;
97       p_building_blocks_int(l_index).TYPE :=
98       	  p_building_blocks_otl(l_index).TYPE;
99       p_building_blocks_int(l_index).measure :=
100       	  p_building_blocks_otl(l_index).measure;
101       p_building_blocks_int(l_index).unit_of_measure :=
102       	  p_building_blocks_otl(l_index).unit_of_measure;
103       p_building_blocks_int(l_index).start_time :=
104       	  p_building_blocks_otl(l_index).start_time;
105       p_building_blocks_int(l_index).stop_time :=
106       	  p_building_blocks_otl(l_index).stop_time;
107       p_building_blocks_int(l_index).parent_building_block_id :=
108       	  p_building_blocks_otl(l_index).parent_building_block_id;
109       p_building_blocks_int(l_index).parent_is_new :=
110       	  p_building_blocks_otl(l_index).parent_is_new;
111       p_building_blocks_int(l_index).SCOPE :=
112       	  p_building_blocks_otl(l_index).SCOPE;
113       p_building_blocks_int(l_index).object_version_number :=
114       	  p_building_blocks_otl(l_index).object_version_number;
115       p_building_blocks_int(l_index).approval_status :=
116       	  p_building_blocks_otl(l_index).approval_status;
117       p_building_blocks_int(l_index).resource_id :=
118       	  p_building_blocks_otl(l_index).resource_id;
119       p_building_blocks_int(l_index).resource_type :=
120       	  p_building_blocks_otl(l_index).resource_type;
121       p_building_blocks_int(l_index).approval_style_id :=
122       	  p_building_blocks_otl(l_index).approval_style_id;
123       p_building_blocks_int(l_index).date_from :=
124       	  p_building_blocks_otl(l_index).date_from;
125       p_building_blocks_int(l_index).date_to :=
126       	  p_building_blocks_otl(l_index).date_to;
127       p_building_blocks_int(l_index).comment_text :=
128       	  p_building_blocks_otl(l_index).comment_text;
129       p_building_blocks_int(l_index).parent_building_block_ovn :=
130       	  p_building_blocks_otl(l_index).parent_building_block_ovn;
131       p_building_blocks_int(l_index).NEW :=
132       	  p_building_blocks_otl(l_index).NEW;
133       p_building_blocks_int(l_index).changed :=
134       	  p_building_blocks_otl(l_index).changed;
135       p_building_blocks_int(l_index).process :=
136       	  p_building_blocks_otl(l_index).process;
137       p_building_blocks_int(l_index).application_set_id :=
138       	  p_building_blocks_otl(l_index).application_set_id;
139 
140    l_index := p_building_blocks_otl.next(l_index);
141 
142 END LOOP;
143 -- delete the structure
144 p_building_blocks_otl.delete;
145 
146 END otl_to_int_timecard_info;
147 
148 
149 
150 -- ----------------------------------------------------------------------------
151 -- |--------------------< int_to_otl_app_attributes_info>----------------------|
152 -- ----------------------------------------------------------------------------
153 PROCEDURE int_to_otl_app_attributes_info(
154 		 p_app_attributes_otl  IN OUT NOCOPY HXC_SELF_SERVICE_TIME_DEPOSIT.app_attributes_info
155 		,p_app_attributes_int  IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.app_attributes_info)
156 		IS
157 
158 l_index			NUMBER;
159 
160 BEGIN
161 
162 l_index := p_app_attributes_int.first;
163 
164 LOOP
165   EXIT WHEN (NOT p_app_attributes_int.exists(l_index));
166 
167       p_app_attributes_otl(l_index).time_attribute_id :=
168       		p_app_attributes_int(l_index).time_attribute_id;
169       p_app_attributes_otl(l_index).building_block_id :=
170       		p_app_attributes_int(l_index).building_block_id;
171       p_app_attributes_otl(l_index).attribute_name :=
172       		p_app_attributes_int(l_index).attribute_name;
173       p_app_attributes_otl(l_index).attribute_value :=
174       		p_app_attributes_int(l_index).attribute_value;
175       p_app_attributes_otl(l_index).attribute_index :=
176       		p_app_attributes_int(l_index).attribute_index;
177       p_app_attributes_otl(l_index).segment :=
178       		p_app_attributes_int(l_index).segment;
179       p_app_attributes_otl(l_index).bld_blk_info_type :=
180       		p_app_attributes_int(l_index).bld_blk_info_type;
181       p_app_attributes_otl(l_index).CATEGORY :=
182       		p_app_attributes_int(l_index).CATEGORY;
183       p_app_attributes_otl(l_index).updated :=
184       		p_app_attributes_int(l_index).updated;
185       p_app_attributes_otl(l_index).changed :=
186       		p_app_attributes_int(l_index).changed;
187       p_app_attributes_otl(l_index).process :=
188       		p_app_attributes_int(l_index).process;
189 
190    l_index := p_app_attributes_int.next(l_index);
191 
192 END LOOP;
193 -- delete the structure
194 p_app_attributes_int.delete;
195 
196 END int_to_otl_app_attributes_info;
197 
198 -- ----------------------------------------------------------------------------
199 -- |-------------------< otl_to_int_app_attributes_info>----------------------|
200 -- ----------------------------------------------------------------------------
201 PROCEDURE otl_to_int_app_attributes_info(
202 		 p_app_attributes_otl  IN OUT NOCOPY HXC_SELF_SERVICE_TIME_DEPOSIT.app_attributes_info
203 		,p_app_attributes_int  IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.app_attributes_info)
204 		IS
205 
206 l_index			NUMBER;
207 
208 BEGIN
209 
210 l_index := p_app_attributes_otl.first;
211 
212 LOOP
213   EXIT WHEN (NOT p_app_attributes_otl.exists(l_index));
214 
215 
216       p_app_attributes_int(l_index).time_attribute_id :=
217       		p_app_attributes_otl(l_index).time_attribute_id;
218       p_app_attributes_int(l_index).building_block_id :=
219       		p_app_attributes_otl(l_index).building_block_id;
220       p_app_attributes_int(l_index).attribute_name :=
221       		p_app_attributes_otl(l_index).attribute_name;
222       p_app_attributes_int(l_index).attribute_value :=
223       		p_app_attributes_otl(l_index).attribute_value;
224       p_app_attributes_int(l_index).attribute_index :=
225       		p_app_attributes_otl(l_index).attribute_index;
226       p_app_attributes_int(l_index).segment :=
227       		p_app_attributes_otl(l_index).segment;
228       p_app_attributes_int(l_index).bld_blk_info_type :=
229       		p_app_attributes_otl(l_index).bld_blk_info_type;
230       p_app_attributes_int(l_index).CATEGORY :=
231       		p_app_attributes_otl(l_index).CATEGORY;
232       p_app_attributes_int(l_index).updated :=
233       		p_app_attributes_otl(l_index).updated;
234       p_app_attributes_int(l_index).changed :=
235       		p_app_attributes_otl(l_index).changed;
236       p_app_attributes_int(l_index).process :=
237       		p_app_attributes_otl(l_index).process;
238 
239 
240    l_index := p_app_attributes_otl.next(l_index);
241 
242 END LOOP;
243 -- delete the structure
244 p_app_attributes_otl.delete;
245 
246 END otl_to_int_app_attributes_info;
247 
248 
249 
250 -- ----------------------------------------------------------------------------
251 -- |-------------------------< int_to_otl_message_table>----------------------|
252 -- ----------------------------------------------------------------------------
253 PROCEDURE int_to_otl_message_table(
254 		 p_messages_otl  IN OUT NOCOPY HXC_SELF_SERVICE_TIME_DEPOSIT.message_table
255 		,p_messages_int  IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.message_table)
256 		IS
257 
258 l_index			NUMBER;
259 
260 BEGIN
261 
262 l_index := p_messages_int.first;
263 
264 LOOP
265   EXIT WHEN (NOT p_messages_int.exists(l_index));
266 
267       p_messages_otl(l_index).message_name :=
268       		p_messages_int(l_index).message_name;
269       p_messages_otl(l_index).message_level :=
270       		p_messages_int(l_index).message_level;
271       p_messages_otl(l_index).message_field :=
272       		p_messages_int(l_index).message_field;
273       p_messages_otl(l_index).message_tokens :=
274       		p_messages_int(l_index).message_tokens;
275       p_messages_otl(l_index).application_short_name :=
276       		p_messages_int(l_index).application_short_name;
277       p_messages_otl(l_index).time_building_block_id :=
278       		p_messages_int(l_index).time_building_block_id;
279       p_messages_otl(l_index).time_building_block_ovn :=
280       		p_messages_int(l_index).time_building_block_ovn;
281       p_messages_otl(l_index).time_attribute_id :=
282       		p_messages_int(l_index).time_attribute_id;
283       p_messages_otl(l_index).time_attribute_ovn :=
284       		p_messages_int(l_index).time_attribute_ovn;
285       p_messages_otl(l_index).on_oa_msg_stack :=
286       		p_messages_int(l_index).on_oa_msg_stack;
287       p_messages_otl(l_index).message_extent :=
288       		p_messages_int(l_index).message_extent;
289 
290    l_index := p_messages_int.next(l_index);
291 
292 END LOOP;
293 -- delete the structure
294 p_messages_int.delete;
295 
296 END int_to_otl_message_table;
297 
298 
299 -- ----------------------------------------------------------------------------
300 -- |-------------------------< otl_to_int_message_table>----------------------|
301 -- ----------------------------------------------------------------------------
302 PROCEDURE otl_to_int_message_table(
303 		 p_messages_otl  IN OUT NOCOPY HXC_SELF_SERVICE_TIME_DEPOSIT.message_table
304 		,p_messages_int  IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.message_table)
305 		IS
306 
307 l_index			NUMBER;
308 
309 BEGIN
310 
311 l_index := p_messages_otl.first;
312 
313 LOOP
314   EXIT WHEN (NOT p_messages_otl.exists(l_index));
315 
316       p_messages_int(l_index).message_name :=
317       		p_messages_otl(l_index).message_name;
318       p_messages_int(l_index).message_level :=
319       		p_messages_otl(l_index).message_level;
320       p_messages_int(l_index).message_field :=
321       		p_messages_otl(l_index).message_field;
322       p_messages_int(l_index).message_tokens :=
323       		p_messages_otl(l_index).message_tokens;
324       p_messages_int(l_index).application_short_name :=
325       		p_messages_otl(l_index).application_short_name;
326       p_messages_int(l_index).time_building_block_id :=
327       		p_messages_otl(l_index).time_building_block_id;
328       p_messages_int(l_index).time_building_block_ovn :=
329       		p_messages_otl(l_index).time_building_block_ovn;
330       p_messages_int(l_index).time_attribute_id :=
331       		p_messages_otl(l_index).time_attribute_id;
332       p_messages_int(l_index).time_attribute_ovn :=
333       		p_messages_otl(l_index).time_attribute_ovn;
334       p_messages_int(l_index).on_oa_msg_stack :=
335       		p_messages_otl(l_index).on_oa_msg_stack;
336       p_messages_int(l_index).message_extent :=
337       		p_messages_otl(l_index).message_extent;
338 
339    l_index := p_messages_otl.next(l_index);
340 
341 END LOOP;
342 -- delete the structure
343 p_messages_otl.delete;
344 
345 END otl_to_int_message_table;
346 
347 
348 --
349 -- HXC_SELF_SERVICE_TIME_DEPOSIT
350 --
351 -- ----------------------------------------------------------------------------
352 -- |---------------------------< get_app_hook_params    >----------------------|
353 -- ----------------------------------------------------------------------------
354 procedure get_app_hook_params(
355 		 p_building_blocks IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.timecard_info
356 		,p_app_attributes  IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.app_attributes_info
357 		,p_messages        IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.message_table)
358 		IS
359 
360 l_building_blocks_otl	HXC_SELF_SERVICE_TIME_DEPOSIT.timecard_info;
361 l_app_attributes_otl	HXC_SELF_SERVICE_TIME_DEPOSIT.app_attributes_info;
362 l_messages_otl          HXC_SELF_SERVICE_TIME_DEPOSIT.message_table;
363 
364 
365 BEGIN
366 
367 --
368 -- call of the OTL API
369 --
370 HXC_SELF_SERVICE_TIME_DEPOSIT.get_app_hook_params (
371       p_building_blocks   =>  l_building_blocks_otl
372      ,p_app_attributes    =>  l_app_attributes_otl
373      ,p_messages          =>  l_messages_otl
374      );
375 
376 -- transfer the data from otl pl/sql table
377 -- to the integration pl/sql table
378 otl_to_int_timecard_info
379 		(p_building_blocks_otl  => l_building_blocks_otl
380 		,p_building_blocks_int 	=> p_building_blocks);
381 
382 otl_to_int_app_attributes_info
383 		(p_app_attributes_otl  => l_app_attributes_otl
384 		,p_app_attributes_int  => p_app_attributes);
385 
386 otl_to_int_message_table
387 		(p_messages_otl  => l_messages_otl
388 		,p_messages_int  => p_messages);
389 
390 
391 END get_app_hook_params;
392 
393 
394 -- ----------------------------------------------------------------------------
395 -- |---------------------------< set_app_hook_params    >----------------------|
396 -- ----------------------------------------------------------------------------
397 procedure set_app_hook_params(
398                         p_building_blocks IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.timecard_info
399                        ,p_app_attributes  IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.app_attributes_info
400                        ,p_messages        IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.message_table)
401                        IS
402 
403 
404 l_building_blocks_otl	HXC_SELF_SERVICE_TIME_DEPOSIT.timecard_info;
405 l_app_attributes_otl	HXC_SELF_SERVICE_TIME_DEPOSIT.app_attributes_info;
406 l_messages_otl          HXC_SELF_SERVICE_TIME_DEPOSIT.message_table;
407 
408 
409 BEGIN
410 
411 -- transfer the data from the integration pl/sql table
412 -- to the otl pl/sql table
413 int_to_otl_timecard_info
414 		(p_building_blocks_otl  => l_building_blocks_otl
415 		,p_building_blocks_int 	=> p_building_blocks);
416 
417 int_to_otl_app_attributes_info
418 		(p_app_attributes_otl  => l_app_attributes_otl
419 		,p_app_attributes_int  => p_app_attributes);
420 
421 int_to_otl_message_table
422 		(p_messages_otl  => l_messages_otl
423 		,p_messages_int  => p_messages);
424 --
425 -- call of the OTL API
426 --
427 HXC_SELF_SERVICE_TIME_DEPOSIT.set_app_hook_params (
428       p_building_blocks   =>  l_building_blocks_otl
429      ,p_app_attributes    =>  l_app_attributes_otl
430      ,p_messages          =>  l_messages_otl
431      );
432 
433 
434 -- transfer the data from the otl pl/sql table
435 -- to the integration pl/sql table
436 otl_to_int_timecard_info
437 		(p_building_blocks_otl  => l_building_blocks_otl
438 		,p_building_blocks_int 	=> p_building_blocks);
439 
440 otl_to_int_app_attributes_info
441 		(p_app_attributes_otl  => l_app_attributes_otl
442 		,p_app_attributes_int  => p_app_attributes);
443 
444 otl_to_int_message_table
445 		(p_messages_otl  => l_messages_otl
446 		,p_messages_int  => p_messages);
447 
448 
449 
450 END set_app_hook_params;
451 
452 
453 --
454 -- HXC_GENERIC_RETRIEVAL_PKG TRANSFER UTILITY PROCEDURE
455 --
456 -- ----------------------------------------------------------------------------
457 -- |---------------------< otl_to_int_gb_tx_detail_status >-------------------|
458 -- ----------------------------------------------------------------------------
459 PROCEDURE otl_to_int_gb_tx_detail_status IS
460 
461 l_index			NUMBER;
462 
463 BEGIN
464 
465 -- delete the integration global pl/sql first
466 HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_status.delete;
467 
468 l_index := HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_status.first;
469 
470 LOOP
471   EXIT WHEN (NOT HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_status.exists(l_index));
472 
473 	HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_status(l_index) :=
474 	    HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_status(l_index);
475 
476 
477    l_index := HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_status.next(l_index);
478 
479 END LOOP;
480 
481 END otl_to_int_gb_tx_detail_status;
482 -- ----------------------------------------------------------------------------
483 -- |-------------------< otl_to_int_gb_tx_detail_exception >-------------------|
484 -- ----------------------------------------------------------------------------
485 PROCEDURE otl_to_int_gb_tx_detail_except IS
486 
487 l_index			NUMBER;
488 
489 BEGIN
490 
491 -- delete the integration global pl/sql first
492 HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_exception.delete;
493 
494 l_index := HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_exception.first;
495 
496 LOOP
497   EXIT WHEN (NOT HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_exception.exists(l_index));
498 
499 	HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_exception(l_index) :=
500 	    HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_exception(l_index);
501 
502 
503    l_index := HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_exception.next(l_index);
504 
505 END LOOP;
506 
507 END otl_to_int_gb_tx_detail_except;
508 -- ----------------------------------------------------------------------------
509 -- |----------------------< otl_to_int_gb_detail_bld_blks >-------------------|
510 -- ----------------------------------------------------------------------------
511 
512 PROCEDURE otl_to_int_gb_detail_bld_blks	IS
513 
514 l_index			NUMBER;
515 
516 BEGIN
517 
518 -- delete the integration global pl/sql first
519 HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks.delete;
520 
521 l_index := HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks.first;
522 
523 LOOP
524   EXIT WHEN (NOT HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks.exists(l_index));
525 
526 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).bb_id :=
527 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).bb_id;
528 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).type :=
529 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).type;
530 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).measure :=
531 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).measure;
532 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).start_time :=
533 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).start_time;
534 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).stop_time :=
535 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).stop_time;
536 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).parent_bb_id :=
537 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).parent_bb_id;
538 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).scope :=
539 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).scope;
540 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).resource_id :=
541 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).resource_id;
542 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).resource_type :=
543 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).resource_type;
544 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).comment_text :=
545 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).comment_text;
546 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).uom :=
547 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).uom;
548 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).ovn :=
549 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).ovn;
550 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).changed :=
551 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).changed;
552 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).deleted :=
553 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).deleted;
554 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).timecard_bb_id :=
555 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).timecard_bb_id;
556 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_bld_blks(l_index).timecard_ovn :=
557 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks(l_index).timecard_ovn;
558 
559 
560    l_index := HXC_GENERIC_RETRIEVAL_PKG.t_detail_bld_blks.next(l_index);
561 
562 END LOOP;
563 
564 END otl_to_int_gb_detail_bld_blks;
565 -- ----------------------------------------------------------------------------
566 -- |-------------------< otl_to_int_gb_old_detail_bld_blks >-------------------|
567 -- ----------------------------------------------------------------------------
568 
569 PROCEDURE otl_to_int_gb_old_det_bld_blks IS
570 
571 l_index			NUMBER;
572 
573 BEGIN
574 
575 -- delete the integration global pl/sql first
576 HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks.delete;
577 
578 l_index := HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks.first;
579 
580 LOOP
581   EXIT WHEN (NOT HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks.exists(l_index));
582 
583 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).bb_id :=
584 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).bb_id;
585 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).type :=
586 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).type;
587 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).measure :=
588 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).measure;
589 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).start_time :=
590 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).start_time;
591 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).stop_time :=
592 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).stop_time;
593 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).parent_bb_id :=
594 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).parent_bb_id;
595 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).scope :=
596 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).scope;
597 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).resource_id :=
598 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).resource_id;
599 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).resource_type :=
600 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).resource_type;
601 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).comment_text :=
602 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).comment_text;
603 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).uom :=
604 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).uom;
605 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).ovn :=
606 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).ovn;
607 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).changed :=
608 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).changed;
609 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).deleted :=
610 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).deleted;
611 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).timecard_bb_id :=
612 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).timecard_bb_id;
613 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_bld_blks(l_index).timecard_ovn :=
614 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks(l_index).timecard_ovn;
615 
616 
617    l_index := HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_bld_blks.next(l_index);
618 
619 END LOOP;
620 
621 END otl_to_int_gb_old_det_bld_blks;
622 -- ----------------------------------------------------------------------------
623 -- |---------------------< otl_to_int_gb_detail_attributes >-------------------|
624 -- ----------------------------------------------------------------------------
625 
626 PROCEDURE otl_to_int_gb_detail_att IS
627 
628 l_index			NUMBER;
629 
630 BEGIN
631 
632 -- delete the integration global pl/sql first
633 HXC_USER_TYPE_DEFINITION_GRP.t_detail_attributes.delete;
634 
635 l_index := HXC_GENERIC_RETRIEVAL_PKG.t_detail_attributes.first;
636 
637 LOOP
638   EXIT WHEN (NOT HXC_GENERIC_RETRIEVAL_PKG.t_detail_attributes.exists(l_index));
639 
640 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_attributes(l_index).bb_id :=
641 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_attributes(l_index).bb_id;
642 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_attributes(l_index).field_name :=
643 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_attributes(l_index).field_name;
644 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_attributes(l_index).value :=
645 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_attributes(l_index).value;
646 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_attributes(l_index).context :=
647 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_attributes(l_index).context;
648 	HXC_USER_TYPE_DEFINITION_GRP.t_detail_attributes(l_index).category :=
649 	    HXC_GENERIC_RETRIEVAL_PKG.t_detail_attributes(l_index).category;
650 
651 
652    l_index := HXC_GENERIC_RETRIEVAL_PKG.t_detail_attributes.next(l_index);
653 
654 END LOOP;
655 
656 END otl_to_int_gb_detail_att;
657 -- ----------------------------------------------------------------------------
658 -- |-----------------< otl_to_int_gb_old_detail_attributes >-------------------|
659 -- ----------------------------------------------------------------------------
660 PROCEDURE otl_to_int_gb_old_detail_att IS
661 
662 l_index			NUMBER;
663 
664 BEGIN
665 
666 -- delete the integration global pl/sql first
667 HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_attributes.delete;
668 
669 l_index := HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_attributes.first;
670 
671 LOOP
672   EXIT WHEN (NOT HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_attributes.exists(l_index));
673 
674 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_attributes(l_index).bb_id :=
675 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_attributes(l_index).bb_id;
676 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_attributes(l_index).field_name :=
677 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_attributes(l_index).field_name;
678 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_attributes(l_index).value :=
679 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_attributes(l_index).value;
680 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_attributes(l_index).context :=
681 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_attributes(l_index).context;
682 	HXC_USER_TYPE_DEFINITION_GRP.t_old_detail_attributes(l_index).category :=
683 	    HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_attributes(l_index).category;
684 
685 
686    l_index := HXC_GENERIC_RETRIEVAL_PKG.t_old_detail_attributes.next(l_index);
687 
688 END LOOP;
689 
690 END otl_to_int_gb_old_detail_att;
691 -- ----------------------------------------------------------------------------
692 -- |----------------------< otl_to_int_gb_tx_detail_bb_id >-------------------|
693 -- ----------------------------------------------------------------------------
694 PROCEDURE otl_to_int_gb_tx_detail_bb_id	IS
695 
696 l_index			NUMBER;
697 
698 BEGIN
699 
700 -- delete the integration global pl/sql first
701 HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_bb_id.delete;
702 
703 l_index := HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_bb_id.first;
704 
705 LOOP
706   EXIT WHEN (NOT HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_bb_id.exists(l_index));
707 
708 	HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_bb_id(l_index) :=
709 	    HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_bb_id(l_index);
710 
711 
712    l_index := HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_bb_id.next(l_index);
713 
714 END LOOP;
715 
716 END otl_to_int_gb_tx_detail_bb_id;
717 -- ----------------------------------------------------------------------------
718 -- |---------------------< int_to_otl_gb_tx_detail_status >-------------------|
719 -- ----------------------------------------------------------------------------
720 PROCEDURE int_to_otl_gb_tx_detail_status IS
721 l_index			NUMBER;
722 
723 BEGIN
724 
725 l_index := HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_status.first;
726 
727 LOOP
728   EXIT WHEN (NOT HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_status.exists(l_index));
729 
730 	HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_status(l_index) :=
731 	    HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_status(l_index);
732 
733 
734    l_index := HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_status.next(l_index);
735 
736 END LOOP;
737 
738 END int_to_otl_gb_tx_detail_status;
739 
740 -- ----------------------------------------------------------------------------
741 -- |------------------< int_to_otl_gb_tx_detail_exception >-------------------|
742 -- ----------------------------------------------------------------------------
743 PROCEDURE int_to_otl_gb_tx_detail_except IS
744 
745 l_index			NUMBER;
746 
747 BEGIN
748 
749 l_index := HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_exception.first;
750 
751 LOOP
752   EXIT WHEN (NOT HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_exception.exists(l_index));
753 
754 	HXC_GENERIC_RETRIEVAL_PKG.t_tx_detail_exception(l_index) :=
755 	    HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_exception(l_index);
756 
757 
758    l_index := HXC_USER_TYPE_DEFINITION_GRP.t_tx_detail_exception.next(l_index);
759 
760 END LOOP;
761 
762 END int_to_otl_gb_tx_detail_except;
763 
764 
765 -- ----------------------------------------------------------------------------
766 -- |-------------------< otl_to_int_gb_time_bld_blks >-------------------|
767 -- ----------------------------------------------------------------------------
768 PROCEDURE otl_to_int_gb_time_bld_blks IS
769 
770 l_index			NUMBER;
771 
772 BEGIN
773 
774 -- delete the integration global pl/sql first
775 HXC_USER_TYPE_DEFINITION_GRP.t_time_bld_blks.delete;
776 
777 l_index := HXC_GENERIC_RETRIEVAL_PKG.t_time_bld_blks.first;
778 
779 LOOP
780   EXIT WHEN (NOT HXC_GENERIC_RETRIEVAL_PKG.t_time_bld_blks.exists(l_index));
781 
782 	HXC_USER_TYPE_DEFINITION_GRP.t_time_bld_blks(l_index).start_time :=
783 	    HXC_GENERIC_RETRIEVAL_PKG.t_time_bld_blks(l_index).start_time;
784 	HXC_USER_TYPE_DEFINITION_GRP.t_time_bld_blks(l_index).stop_time :=
785 	    HXC_GENERIC_RETRIEVAL_PKG.t_time_bld_blks(l_index).stop_time;
786 	HXC_USER_TYPE_DEFINITION_GRP.t_time_bld_blks(l_index).comment_text :=
787 	    HXC_GENERIC_RETRIEVAL_PKG.t_time_bld_blks(l_index).comment_text;
788 
789 
790    l_index := HXC_GENERIC_RETRIEVAL_PKG.t_time_bld_blks.next(l_index);
791 
792 END LOOP;
793 
794 END otl_to_int_gb_time_bld_blks;
795 
796 
797 --
798 -- HXC_GENERIC_RETRIEVAL_PKG
799 --
800 -- ----------------------------------------------------------------------------
801 -- |---------------------------< execute_retrieval_process >-------------------|
802 -- ----------------------------------------------------------------------------
803 PROCEDURE execute_retrieval_process (
804 	 p_process		in	hxc_retrieval_processes.name%TYPE
805 	,p_transaction_code 	in	VARCHAR2
806 	,p_start_date		in	DATE default null
807 	,p_end_date		in	DATE default null
808 	,p_incremental		in	VARCHAR2 default 'Y'
809 	,p_rerun_flag		in	VARCHAR2 default 'N'
810 	,p_where_clause		in	VARCHAR2
811 	,p_scope		in	VARCHAR2 default 'DAY'
812 	,p_clusive		in	VARCHAR2 default 'EX'
813 	,p_unique_params 	in      VARCHAR2 default null)
814 	IS
815 
816 
817 BEGIN
818 
819 --
820 -- call of the OTL API
821 --
822 HXC_GENERIC_RETRIEVAL_PKG.execute_retrieval_process
823         (p_process		=> p_process
824 	,p_transaction_code 	=> p_transaction_code
825 	,p_start_date		=> p_start_date
826 	,p_end_date		=> p_end_date
827 	,p_incremental		=> p_incremental
828 	,p_rerun_flag		=> p_rerun_flag
829 	,p_where_clause		=> p_where_clause
830 	,p_scope		=> p_scope
831 	,p_clusive		=> p_clusive
832 	,p_unique_params	=> p_unique_params);
833 
834 -- transfer the data from the otl pl/sql table
835 -- to the integration pl/sql table
836 
837 otl_to_int_gb_tx_detail_status;
838 
839 otl_to_int_gb_tx_detail_except;
840 
841 otl_to_int_gb_detail_bld_blks;
842 
843 otl_to_int_gb_old_det_bld_blks;
844 
845 otl_to_int_gb_detail_att;
846 
847 otl_to_int_gb_old_detail_att;
848 
849 otl_to_int_gb_tx_detail_bb_id;
850 
851 otl_to_int_gb_time_bld_blks;
852 
853 END execute_retrieval_process;
854 
855 -- ----------------------------------------------------------------------------
856 -- |---------------------------< Update_Transaction_Status >-------------------|
857 -- ----------------------------------------------------------------------------
858 Procedure Update_Transaction_Status(
859 		 p_process			hxc_retrieval_processes.name%TYPE
860 		,p_status			hxc_transactions.status%TYPE
861 		,p_exception_description   	hxc_transactions.exception_description%TYPE
862 		,p_rollback 			BOOLEAN DEFAULT FALSE)
863 		IS
864 BEGIN
865 
866 -- transfer the data from the integration pl/sql table
867 -- to the otl pl/sql table
868 int_to_otl_gb_tx_detail_status;
869 
870 int_to_otl_gb_tx_detail_except;
871 
872 --
873 -- call of the OTL API
874 --
875 HXC_GENERIC_RETRIEVAL_PKG.Update_Transaction_Status(
876 		 p_process			=> p_process
877 		,p_status			=> p_status
878 		,p_exception_description   	=> p_exception_description
879 		,p_rollback 			=> p_rollback);
880 
881 
882 END Update_Transaction_Status;
883 
884 --
885 -- HXC_GENERIC_RETRIEVAL_UTILS
886 --
887 -- ----------------------------------------------------------------------------
888 -- |---------------------------< set_parent_statuses >------------------------|
889 -- ----------------------------------------------------------------------------
890 PROCEDURE set_parent_statuses IS
891 
892 BEGIN
893 
894 --
895 -- Populate the detail status table
896 -- from the integration table
897 --
898 int_to_otl_gb_tx_detail_status;
899 --
900 -- call of the OTL API
901 --
902 HXC_GENERIC_RETRIEVAL_UTILS.set_parent_statuses;
903 
904 END set_parent_statuses;
905 
906 
907 -- ----------------------------------------------------------------------------
908 -- |---------------------------< time_bld_blk_changed >------------------------|
909 -- ----------------------------------------------------------------------------
910 
911 FUNCTION time_bld_blk_changed (
912 		p_bb_id	 NUMBER
913 	       ,p_bb_ovn NUMBER)
914 	       RETURN BOOLEAN
915 	       IS
916 
917 l_return	BOOLEAN;
918 
919 BEGIN
920 
921 --
922 -- call of the OTL API
923 --
924 l_return :=
925     HXC_GENERIC_RETRIEVAL_UTILS.time_bld_blk_changed (
926 		p_bb_id	 => p_bb_id
927 	       ,p_bb_ovn => p_bb_ovn);
928 
929 return l_return;
930 
931 END time_bld_blk_changed;
932 
933 --
934 -- HXC_TIME_ENTRY_RULES_UTILS_PKG
935 --
936 -- ----------------------------------------------------------------------------
937 -- |---------------------------< add_error_to_table >------------------------|
938 -- ----------------------------------------------------------------------------
939 PROCEDURE add_error_to_table (
940 	 p_message_table		in out nocopy   HXC_USER_TYPE_DEFINITION_GRP.MESSAGE_TABLE
941 	,p_message_name  		in     FND_NEW_MESSAGES.MESSAGE_NAME%TYPE
942 	,p_message_token 		in     VARCHAR2
943 	,p_message_level 		in     VARCHAR2
944         ,p_message_field 		in     VARCHAR2
945 	,p_application_short_name 	IN     VARCHAR2 default 'HXC'
946 	,p_timecard_bb_id     		in     NUMBER
947 	,p_time_attribute_id  		in     NUMBER
948         ,p_timecard_bb_ovn    		in     NUMBER   default null
949         ,p_time_attribute_ovn 		in     NUMBER   default null
950         ,p_message_extent     		in     VARCHAR2 default null)
951         IS
952 
953 l_messages_otl          HXC_SELF_SERVICE_TIME_DEPOSIT.message_table;
954 
955 BEGIN
956 
957 -- transfer the data from the integration pl/sql table
958 -- to the otl pl/sql table
959 int_to_otl_message_table
960 		(p_messages_otl  => l_messages_otl
961 		,p_messages_int  => p_message_table);
962 
963 --
964 -- call of the OTL API
965 --
966 HXC_TIME_ENTRY_RULES_UTILS_PKG.add_error_to_table (
967 	 p_message_table		=> l_messages_otl
968 	,p_message_name  		=> p_message_name
969 	,p_message_token 		=> p_message_token
970 	,p_message_level 		=> p_message_level
971         ,p_message_field 		=> p_message_field
972 	,p_application_short_name 	=> p_application_short_name
973 	,p_timecard_bb_id     		=> p_timecard_bb_id
974 	,p_time_attribute_id  		=> p_time_attribute_id
975         ,p_timecard_bb_ovn    		=> p_timecard_bb_ovn
976         ,p_time_attribute_ovn 		=> p_time_attribute_ovn
977         ,p_message_extent     		=> p_message_extent);
978 
979 
980 -- transfer the data from otl pl/sql table
981 -- to the integration pl/sql table
982 otl_to_int_message_table
983 		(p_messages_otl  => l_messages_otl
984 		,p_messages_int  => p_message_table);
985 
986 
987 END add_error_to_table;
988 
989 --
990 -- HXC_MAPPING_UTILITIES
991 --
992 -- ----------------------------------------------------------------------------
993 -- |---------------------------< get_mappingvalue_sum >------------------------|
994 -- ----------------------------------------------------------------------------
995 FUNCTION get_mappingvalue_sum (
996  		 p_bld_blk_info_type VARCHAR2
997 		,p_field_name1       VARCHAR2
998 		,p_field_name2       VARCHAR2
999 		,p_field_value2      VARCHAR2
1000 		,p_status            VARCHAR2
1001                 ,p_resource_id       VARCHAR2
1002 		) RETURN NUMBER
1003 		IS
1004 
1005 l_return	NUMBER;
1006 
1007 BEGIN
1008 
1009 --
1010 -- call of the OTL API
1011 --
1012 l_return :=
1013 	HXC_MAPPING_UTILITIES.get_mappingvalue_sum (
1014 	         p_bld_blk_info_type => p_bld_blk_info_type
1015 		,p_field_name1       => p_field_name1
1016 		,p_field_name2       => p_field_name2
1017 		,p_field_value2      => p_field_value2
1018 		,p_status            => p_status
1019                 ,p_resource_id       => p_resource_id);
1020 
1021 return l_return;
1022 
1023 END get_mappingvalue_sum;
1024 -- ----------------------------------------------------------------------------
1025 -- |---------------------------< chk_mapping_exists >------------------------|
1026 -- ----------------------------------------------------------------------------
1027 FUNCTION chk_mapping_exists (
1028 		 p_bld_blk_info_type 		VARCHAR2
1029 		,p_field_name  			VARCHAR2
1030 		,p_field_value 			VARCHAR2
1031 		,p_scope       			VARCHAR2
1032                 ,p_retrieval_process_name 	VARCHAR2 DEFAULT 'None'
1033                 ,p_status   			VARCHAR2 DEFAULT 'None'
1034                 ,p_end_date 			DATE DEFAULT null)
1035                 RETURN BOOLEAN
1036                 IS
1037 
1038 l_return	BOOLEAN;
1039 
1040 BEGIN
1041 --
1042 -- call of the OTL API
1043 --
1044 l_return :=
1045 	HXC_MAPPING_UTILITIES.chk_mapping_exists (
1046 		 p_bld_blk_info_type 		=> p_bld_blk_info_type
1047 		,p_field_name  			=> p_field_name
1048 		,p_field_value 			=> p_field_value
1049 		,p_scope       			=> p_scope
1050                 ,p_retrieval_process_name 	=> p_retrieval_process_name
1051                 ,p_status   			=> p_status
1052                 ,p_end_date 			=> p_end_date);
1053 
1054 return l_return;
1055 
1056 
1057 END chk_mapping_exists;
1058 
1059 --
1060 -- HXC_DEPOSIT_WRAPPER_UTILITIES
1061 --
1062 -- ----------------------------------------------------------------------------
1063 -- |---------------------------< messages_to_string >------------------------|
1064 -- ----------------------------------------------------------------------------
1065 FUNCTION messages_to_string
1066            (p_messages IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.message_table)
1067            RETURN VARCHAR2
1068            IS
1069 
1070 l_return	VARCHAR2(32767);
1071 l_messages_otl  HXC_SELF_SERVICE_TIME_DEPOSIT.message_table;
1072 
1073 BEGIN
1074 
1075 -- transfer the data from the integration pl/sql table
1076 -- to the otl pl/sql table
1077 int_to_otl_message_table
1078 		(p_messages_otl  => l_messages_otl
1079 		,p_messages_int  => p_messages);
1080 
1081 --
1082 -- call of the OTL API
1083 --
1084 l_return :=
1085 	HXC_DEPOSIT_WRAPPER_UTILITIES.messages_to_string
1086            (p_messages => l_messages_otl);
1087 
1088 
1089 -- transfer the data from the olt pl/sql table
1090 -- to the integration pl/sql table
1091 otl_to_int_message_table
1092 		(p_messages_otl  => l_messages_otl
1093 		,p_messages_int  => p_messages);
1094 
1095 
1096 return l_return;
1097 
1098 END messages_to_string;
1099 -- ----------------------------------------------------------------------------
1100 -- |---------------------------< attributes_to_string >------------------------|
1101 -- ----------------------------------------------------------------------------
1102 FUNCTION attributes_to_string(
1103   	p_attributes IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.app_attributes_info)
1104   	RETURN VARCHAR2
1105   	IS
1106 
1107 l_return		VARCHAR2(32767);
1108 l_app_attributes_otl	HXC_SELF_SERVICE_TIME_DEPOSIT.app_attributes_info;
1109 
1110 
1111 BEGIN
1112 
1113 -- transfer the data from the integration pl/sql table
1114 -- to the otl pl/sql table
1115 int_to_otl_app_attributes_info
1116 		(p_app_attributes_otl  => l_app_attributes_otl
1117 		,p_app_attributes_int  => p_attributes);
1118 
1119 --
1120 -- call of the OTL API
1121 --
1122 l_return :=
1123 	HXC_DEPOSIT_WRAPPER_UTILITIES.attributes_to_string
1124            (p_attributes => l_app_attributes_otl);
1125 
1126 
1127 -- transfer the data from the olt pl/sql table
1128 -- to the integration pl/sql table
1129 otl_to_int_app_attributes_info
1130 		(p_app_attributes_otl  => l_app_attributes_otl
1131 		,p_app_attributes_int  => p_attributes);
1132 
1133 return l_return;
1134 
1135 END attributes_to_string;
1136 -- ----------------------------------------------------------------------------
1137 -- |---------------------------< blocks_to_string >------------------------|
1138 -- ----------------------------------------------------------------------------
1139 FUNCTION blocks_to_string
1140            (p_blocks IN OUT NOCOPY HXC_USER_TYPE_DEFINITION_GRP.timecard_info)
1141            RETURN VARCHAR2
1142            IS
1143 
1144 l_return		VARCHAR2(32767);
1145 l_building_blocks_otl	HXC_SELF_SERVICE_TIME_DEPOSIT.timecard_info;
1146 
1147 BEGIN
1148 -- transfer the data from integration pl/sql table
1149 -- to otl pl/sql table
1150 int_to_otl_timecard_info
1151 		(p_building_blocks_otl  => l_building_blocks_otl
1152 		,p_building_blocks_int 	=> p_blocks);
1153 
1154 --
1155 -- call of the OTL API
1156 --
1157 
1158 l_return :=
1159 	HXC_DEPOSIT_WRAPPER_UTILITIES.blocks_to_string
1160            (p_blocks => l_building_blocks_otl);
1161 
1162 
1163 -- transfer the data from the olt pl/sql table
1164 -- to the integration pl/sql table
1165 otl_to_int_timecard_info
1166 		(p_building_blocks_otl  => l_building_blocks_otl
1167 		,p_building_blocks_int 	=> p_blocks);
1168 
1169 
1170 return l_return;
1171 
1172 END blocks_to_string;
1173 --
1174 -- HXC_PERIOD_EVALUATION
1175 --
1176 -- ----------------------------------------------------------------------------
1177 -- |---------------------------< period_start_stop >------------------------|
1178 -- ----------------------------------------------------------------------------
1179 procedure period_start_stop(p_current_date 		date,
1180                             p_rec_period_start_date 	date,
1181                             l_period_start 		in out nocopy date,
1182                             l_period_end 		in out nocopy date,
1183                             l_base_period_type 		varchar2)
1184                             IS
1185 BEGIN
1186 --
1187 -- call of the OTL API
1188 --
1189 HXC_PERIOD_EVALUATION.period_start_stop(
1190 			 p_current_date 	 => p_current_date
1191                         ,p_rec_period_start_date => p_rec_period_start_date
1192                         ,l_period_start 	 => l_period_start
1193                         ,l_period_end 		 => l_period_end
1194                         ,l_base_period_type 	 => l_base_period_type);
1195 
1196 
1197 END period_start_stop;
1198 
1199 
1200 
1201 --
1202 -- HXC_APPROVAL_WF_PKG
1203 --
1204 -- ----------------------------------------------------------------------------
1205 -- |-----------------< get_wf_G_Time_Building_Blocks >------------------------|
1206 -- ----------------------------------------------------------------------------
1207 FUNCTION get_wf_g_time_building_blocks
1208            RETURN HXC_USER_TYPE_DEFINITION_GRP.timecard_info
1209            IS
1210 
1211 
1212 l_building_blocks_otl	HXC_SELF_SERVICE_TIME_DEPOSIT.timecard_info;
1213 l_building_blocks_int	HXC_USER_TYPE_DEFINITION_GRP.timecard_info;
1214 
1215 BEGIN
1216 
1217 l_building_blocks_int.delete;
1218 l_building_blocks_otl.delete;
1219 
1220 --
1221 -- call of the OTL API
1222 --
1223 l_building_blocks_otl := HXC_APPROVAL_WF_PKG.g_time_building_blocks;
1224 
1225 -- transfer the data from the integration pl/sql table
1226 -- to the otl pl/sql table
1227 otl_to_int_timecard_info
1228 		(p_building_blocks_otl  => l_building_blocks_otl
1229 		,p_building_blocks_int 	=> l_building_blocks_int);
1230 
1231 return l_building_blocks_int;
1232 
1233 END get_wf_g_time_building_blocks;
1234 
1235 -- ----------------------------------------------------------------------------
1236 -- |-----------------< get_wf_G_Time_App_Attributes >------------------------|
1237 -- ----------------------------------------------------------------------------
1238 FUNCTION get_wf_g_time_app_attributes
1239            RETURN HXC_USER_TYPE_DEFINITION_GRP.app_attributes_info
1240            IS
1241 
1242 l_app_attributes_otl  HXC_SELF_SERVICE_TIME_DEPOSIT.app_attributes_info;
1243 l_app_attributes_int  HXC_USER_TYPE_DEFINITION_GRP.app_attributes_info;
1244 
1245 BEGIN
1246 
1247 l_app_attributes_int.delete;
1248 l_app_attributes_otl.delete;
1249 
1250 --
1251 -- call of the OTL API
1252 --
1253 l_app_attributes_otl := HXC_APPROVAL_WF_PKG.g_time_app_attributes;
1254 
1255 
1256 otl_to_int_app_attributes_info(
1257 		 p_app_attributes_otl  => l_app_attributes_otl
1258 		,p_app_attributes_int  => l_app_attributes_int);
1259 
1260 return l_app_attributes_int;
1261 
1262 END get_wf_g_time_app_attributes;
1263 
1264 
1265 --
1266 --  HXC_TIMECARD_INFO
1267 --
1268 -- ----------------------------------------------------------------------------
1269 -- |-----------------< get_timecard_approval_status >------------------------|
1270 -- ----------------------------------------------------------------------------
1271 FUNCTION get_timecard_approval_status
1272 	(p_timecard_id in hxc_timecard_summary.timecard_id%type)
1273 	    RETURN hxc_timecard_summary.approval_status%type
1274 	    IS
1275 
1276 l_return  hxc_timecard_summary.approval_status%type;
1277 
1278 BEGIN
1279 
1280 l_return :=
1281 	HXC_TIME_APPROVAL_INFO.get_timecard_approval_status
1282 		(p_timecard_id => p_timecard_id);
1283 
1284 return l_return;
1285 
1286 END get_timecard_approval_status;
1287 
1288 -- ----------------------------------------------------------------------------
1289 -- |-----------------< get_timecard_approval_status 2>------------------------|
1290 -- ----------------------------------------------------------------------------
1291 FUNCTION get_timecard_approval_status
1292 	(p_resource_id in hxc_timecard_summary.resource_id%type
1293  	,p_start_time in hxc_timecard_summary.start_time%type
1294  	,p_stop_time in hxc_timecard_summary.stop_time%type)
1295 	    RETURN hxc_timecard_summary.approval_status%type
1296 	    IS
1297 
1298 l_return  hxc_timecard_summary.approval_status%type;
1299 
1300 BEGIN
1301 
1302 l_return :=
1303 	HXC_TIME_APPROVAL_INFO.get_timecard_approval_status
1304 		(p_resource_id => p_resource_id
1305 	 	,p_start_time  => p_start_time
1306 	 	,p_stop_time   => p_stop_time);
1307 
1308 return l_return;
1309 
1310 END get_timecard_approval_status;
1311 
1312 -- ----------------------------------------------------------------------------
1313 -- |-----------------< get_timecard_submission_date >------------------------|
1314 -- ----------------------------------------------------------------------------
1315 FUNCTION get_timecard_submission_date
1316 	(p_timecard_id in hxc_timecard_summary.timecard_id%type)
1317 	   RETURN hxc_timecard_summary.submission_date%type
1318 	   IS
1319 
1320 l_return  hxc_timecard_summary.submission_date%type;
1321 
1322 BEGIN
1323 
1324 l_return :=
1325  	HXC_TIME_APPROVAL_INFO.get_timecard_submission_date
1326 		(p_timecard_id => p_timecard_id);
1327 
1328 return l_return;
1329 
1330 END get_timecard_submission_date;
1331 
1332 -- ----------------------------------------------------------------------------
1333 -- |-----------------< get_timecard_submission_date 2>------------------------|
1334 -- ----------------------------------------------------------------------------
1335 FUNCTION get_timecard_submission_date
1336 	(p_resource_id in hxc_timecard_summary.resource_id%type
1337  	,p_start_time in hxc_timecard_summary.start_time%type
1338  	,p_stop_time in hxc_timecard_summary.stop_time%type)
1339 	  RETURN hxc_timecard_summary.submission_date%type
1340 	  IS
1341 
1342 l_return  hxc_timecard_summary.submission_date%type;
1343 
1344 BEGIN
1345 
1346 l_return :=
1347  	HXC_TIME_APPROVAL_INFO.get_timecard_submission_date
1348 		(p_resource_id => p_resource_id
1349 	 	,p_start_time  => p_start_time
1350 	 	,p_stop_time   => p_stop_time);
1351 
1352 return l_return;
1353 
1354 END get_timecard_submission_date;
1355 
1356 
1357 -- ----------------------------------------------------------------------------
1358 -- |-----------------< get_timecard_approval_date    >------------------------|
1359 -- ----------------------------------------------------------------------------
1360 FUNCTION get_timecard_approval_date
1361 	(p_timecard_id in hxc_timecard_summary.timecard_id%type)
1362 	  RETURN hxc_timecard_summary.submission_date%type
1363 	  IS
1364 
1365 l_return  hxc_timecard_summary.submission_date%type;
1366 
1367 BEGIN
1368 
1369 l_return :=
1370 	HXC_TIME_APPROVAL_INFO.get_timecard_approval_date
1371 		(p_timecard_id => p_timecard_id);
1372 
1373 return l_return;
1374 
1375 END get_timecard_approval_date;
1376 
1377 -- ----------------------------------------------------------------------------
1378 -- |-----------------< get_timecard_approval_date 2  >------------------------|
1379 -- ----------------------------------------------------------------------------
1380 
1381 FUNCTION get_timecard_approval_date
1382 	(p_resource_id in hxc_timecard_summary.resource_id%type
1383  	,p_start_time in hxc_timecard_summary.start_time%type
1384  	,p_stop_time in hxc_timecard_summary.stop_time%type)
1385 	  RETURN hxc_timecard_summary.submission_date%type
1386 	  IS
1387 
1388 l_return  hxc_timecard_summary.submission_date%type;
1389 
1390 BEGIN
1391 
1392 l_return :=
1393 	HXC_TIME_APPROVAL_INFO.get_timecard_approval_date
1394 		(p_resource_id => p_resource_id
1395 	 	,p_start_time  => p_start_time
1396 	 	,p_stop_time   => p_stop_time);
1397 
1398 return l_return;
1399 
1400 END get_timecard_approval_date;
1401 
1402 
1403 
1404 --
1405 --  Straight Interface
1406 --
1407 -- ----------------------------------------------------------------------------
1408 -- |-----------------------------------< build_block >------------------------|
1409 -- ----------------------------------------------------------------------------
1410 FUNCTION build_block
1411           (p_time_building_block_id  IN HXC_TIME_BUILDING_BLOCKS.TIME_BUILDING_BLOCK_ID%TYPE
1412           ,p_time_building_block_ovn IN HXC_TIME_BUILDING_BLOCKS.OBJECT_VERSION_NUMBER%TYPE
1413           ) RETURN HXC_USER_TYPE_DEFINITION_GRP.building_block_info IS
1414 
1415 cursor c_block
1416         (p_time_building_block_id in HXC_TIME_BUILDING_BLOCKS.TIME_BUILDING_BLOCK_ID%TYPE
1417         ,p_time_building_block_ovn in HXC_TIME_BUILDING_BLOCKS.OBJECT_VERSION_NUMBER%TYPE
1418         ) is
1419 select *
1420   from hxc_time_building_blocks
1421  where time_building_block_id = p_time_building_block_id
1422    and object_version_number  = p_time_building_block_ovn;
1423 
1424 
1425 l_block     		c_block%ROWTYPE;
1426 l_new_block 		HXC_USER_TYPE_DEFINITION_GRP.building_block_info;
1427 e_no_existing_block 	exception;
1428 
1429 BEGIN
1430 
1431 open c_block(p_time_building_block_id,p_time_building_block_ovn);
1432 fetch c_block into l_block;
1433 
1434 if(c_block%FOUND) then
1435 
1436   close c_block;
1437 
1438       l_new_block.time_building_block_id := l_block.time_building_block_id;
1439       l_new_block.TYPE 			 := l_block.TYPE;
1440       l_new_block.measure 		 := l_block.measure;
1441       l_new_block.unit_of_measure 	 := l_block.unit_of_measure;
1442       l_new_block.start_time 		 := l_block.start_time;
1443       l_new_block.stop_time 		 := l_block.stop_time;
1444       l_new_block.parent_building_block_id := l_block.parent_building_block_id;
1445       l_new_block.parent_is_new  	 := 'N';
1446       l_new_block.SCOPE 		 := l_block.SCOPE;
1447       l_new_block.object_version_number  := l_block.object_version_number;
1448       l_new_block.approval_status 	 := l_block.approval_status;
1449       l_new_block.resource_id  	 	 := l_block.resource_id;
1450       l_new_block.resource_type 	 := l_block.resource_type;
1451       l_new_block.approval_style_id 	 := l_block.approval_style_id;
1452       l_new_block.date_from 		 := l_block.date_from;
1453       l_new_block.date_to 		 := l_block.date_to;
1454       l_new_block.comment_text 		 := l_block.comment_text;
1455       l_new_block.parent_building_block_ovn := l_block.parent_building_block_ovn;
1456       l_new_block.NEW			 := 'N';
1457       l_new_block.changed 		 := 'N';
1458       l_new_block.application_set_id 	 := l_block.application_set_id;
1459 
1460 else
1461   --
1462   -- No block with this id and ovn
1463   --
1464   close c_block;
1465   raise e_no_existing_block;
1466 
1467 end if;
1468 
1469 return l_new_block;
1470 
1471 END build_block;
1472 
1473 
1474 -- ----------------------------------------------------------------------------
1475 -- |-------------------------------< build_attribute >------------------------|
1476 -- ----------------------------------------------------------------------------
1477 FUNCTION build_attribute
1478           (p_time_building_block_id  in HXC_TIME_BUILDING_BLOCKS.TIME_BUILDING_BLOCK_ID%TYPE
1479           ,p_time_building_block_ovn in hxc_time_building_blocks.object_version_number%type
1480           ,p_attribute_category	     in hxc_time_attributes.attribute_category%type
1481           ) return HXC_USER_TYPE_DEFINITION_GRP.building_block_attribute_info is
1482 
1483 cursor c_attribute is
1484   select a.*
1485     from hxc_time_attributes a,
1486          hxc_time_attribute_usages b
1487    where a.time_attribute_id 	   = b.time_attribute_id
1488      and b.time_building_block_id  = p_time_building_block_id
1489      and b.time_building_block_ovn = P_time_building_block_ovn
1490      and a.attribute_category      = nvl(p_attribute_category,a.attribute_category);
1491 
1492 
1493 l_new_attribute 	HXC_USER_TYPE_DEFINITION_GRP.building_block_attribute_info;
1494 l_attribute_row 	c_attribute%ROWTYPE;
1495 l_index_att		NUMBER := 1;
1496 
1497 Begin
1498 
1499 FOR l_attribute_row in c_attribute LOOP
1500 
1501   l_new_attribute(l_index_att).TIME_ATTRIBUTE_ID  	:= l_attribute_row.TIME_ATTRIBUTE_ID;
1502   l_new_attribute(l_index_att).building_block_id  	:= p_time_building_block_id;
1503   l_new_attribute(l_index_att).ATTRIBUTE_CATEGORY 	:= l_attribute_row.ATTRIBUTE_CATEGORY;
1504   l_new_attribute(l_index_att).ATTRIBUTE1   	:= l_attribute_row.ATTRIBUTE1;
1505   l_new_attribute(l_index_att).ATTRIBUTE2   	:= l_attribute_row.ATTRIBUTE2;
1506   l_new_attribute(l_index_att).ATTRIBUTE3   	:= l_attribute_row.ATTRIBUTE3;
1507   l_new_attribute(l_index_att).ATTRIBUTE4   	:= l_attribute_row.ATTRIBUTE4;
1508   l_new_attribute(l_index_att).ATTRIBUTE5   	:= l_attribute_row.ATTRIBUTE5;
1509   l_new_attribute(l_index_att).ATTRIBUTE6   	:= l_attribute_row.ATTRIBUTE6;
1510   l_new_attribute(l_index_att).ATTRIBUTE7   	:= l_attribute_row.ATTRIBUTE7;
1511   l_new_attribute(l_index_att).ATTRIBUTE8   	:= l_attribute_row.ATTRIBUTE8;
1512   l_new_attribute(l_index_att).ATTRIBUTE9   	:= l_attribute_row.ATTRIBUTE9;
1513   l_new_attribute(l_index_att).ATTRIBUTE10   	:= l_attribute_row.ATTRIBUTE10;
1514   l_new_attribute(l_index_att).ATTRIBUTE11   	:= l_attribute_row.ATTRIBUTE11;
1515   l_new_attribute(l_index_att).ATTRIBUTE12   	:= l_attribute_row.ATTRIBUTE12;
1516   l_new_attribute(l_index_att).ATTRIBUTE13   	:= l_attribute_row.ATTRIBUTE13;
1517   l_new_attribute(l_index_att).ATTRIBUTE14   	:= l_attribute_row.ATTRIBUTE14;
1518   l_new_attribute(l_index_att).ATTRIBUTE15   	:= l_attribute_row.ATTRIBUTE15;
1519   l_new_attribute(l_index_att).ATTRIBUTE16   	:= l_attribute_row.ATTRIBUTE16;
1520   l_new_attribute(l_index_att).ATTRIBUTE17   	:= l_attribute_row.ATTRIBUTE17;
1521   l_new_attribute(l_index_att).ATTRIBUTE18   	:= l_attribute_row.ATTRIBUTE18;
1522   l_new_attribute(l_index_att).ATTRIBUTE19   	:= l_attribute_row.ATTRIBUTE19;
1523   l_new_attribute(l_index_att).ATTRIBUTE20   	:= l_attribute_row.ATTRIBUTE20;
1524   l_new_attribute(l_index_att).ATTRIBUTE21   	:= l_attribute_row.ATTRIBUTE21;
1525   l_new_attribute(l_index_att).ATTRIBUTE22   	:= l_attribute_row.ATTRIBUTE22;
1526   l_new_attribute(l_index_att).ATTRIBUTE23   	:= l_attribute_row.ATTRIBUTE23;
1527   l_new_attribute(l_index_att).ATTRIBUTE24   	:= l_attribute_row.ATTRIBUTE24;
1528   l_new_attribute(l_index_att).ATTRIBUTE25   	:= l_attribute_row.ATTRIBUTE25;
1529   l_new_attribute(l_index_att).ATTRIBUTE26   	:= l_attribute_row.ATTRIBUTE26;
1530   l_new_attribute(l_index_att).ATTRIBUTE27   	:= l_attribute_row.ATTRIBUTE27;
1531   l_new_attribute(l_index_att).ATTRIBUTE28   	:= l_attribute_row.ATTRIBUTE28;
1532   l_new_attribute(l_index_att).ATTRIBUTE29   	:= l_attribute_row.ATTRIBUTE29;
1533   l_new_attribute(l_index_att).ATTRIBUTE30   	:= l_attribute_row.ATTRIBUTE30;
1534   l_new_attribute(l_index_att).BLD_BLK_INFO_TYPE_ID  := l_attribute_row.BLD_BLK_INFO_TYPE_ID;
1535   l_new_attribute(l_index_att).OBJECT_VERSION_NUMBER := l_attribute_row.OBJECT_VERSION_NUMBER;
1536   l_new_attribute(l_index_att).NEW   		:= 'N';
1537   l_new_attribute(l_index_att).CHANGED   	:= 'N';
1538 
1539   l_index_att := l_index_att + 1;
1540 
1541   -- not set
1542   --l_new_attribute.BLD_BLK_INFO_TYPE   ,get_bld_blk_info_type(l_attribute_row.BLD_BLK_INFO_TYPE_ID)
1543 
1544 END LOOP;
1545 
1546 
1547 return l_new_attribute;
1548 
1549 End Build_Attribute;
1550 
1551 
1552 END HXC_INTEGRATION_LAYER_V1_GRP;