DBA Data[Home] [Help]

PACKAGE: APPS.HXC_TIMESTORE_DEPOSIT

Source


1 PACKAGE hxc_timestore_deposit AS
2 /* $Header: hxctsdp.pkh 120.8 2006/10/25 06:38:49 gsirigin noship $ */
3 /*#
4  * This package contains procedures that can be used to manage timecards and
5  * save them into the OTL TimeStore.
6  * @rep:scope public
7  * @rep:product HXT
8  * @rep:displayname TimeStore Deposit
9 */
10    g_otl_deposit_process       CONSTANT hxc_deposit_processes.NAME%TYPE
11                                                      := 'OTL Deposit Process';
12 
13    SUBTYPE mode_varchar2 IS VARCHAR2 (15);
14 
15    c_hours_uom                 CONSTANT hxc_time_building_blocks.unit_of_measure%TYPE
16                                                                    := 'HOURS';
17    c_migration                 CONSTANT mode_varchar2          := 'MIGRATION';
18    c_tk_save                   CONSTANT mode_varchar2         := 'FORCE_SAVE';
19    c_tk_submit                 CONSTANT mode_varchar2       := 'FORCE_SUBMIT';
20    c_auto_approve_name         CONSTANT hxc_approval_styles.NAME%TYPE
21                                                         := 'OTL Auto Approve';
22    c_approval_on_submit_name   CONSTANT hxc_approval_styles.NAME%TYPE
23                                                       := 'Approval on Submit';
24 
25 --
26 -- ----------------------------------------------------------------------------
27 -- |---------------------------< get_timecard_tables >------------------------|
28 -- ----------------------------------------------------------------------------
29 --
30 -- {Start Of Comments}
31 /*#
32  * Procedure used to retrieve the Timecard from the TimeStore and place the
33  * Time Building Blocks in a SQL Type Nested Table and the attributes in a
34  * PL/SQL Type Nested Table.
35  *
36  * Use this procedure to retrieve the currently active Timecard and its
37  * Attributes from the Database into their respective PL/SQL Collections.
38  *
39  * <p><b>Licensing</b><br>
40  * This API version is licensed for use with Time and Labor.
41  *
42  * <p><b>Prerequisites</b><br>
43  * Timecard should be present in the TimeStore.
44  *
45  * <p><b>Post Success</b><br>
46  * SQL and PL/SQL Type Nested Tables will contain Timecard and Timecard
47  * Attributes.
48  *
49  * <p><b>Post Failure</b><br>
50  * SQL and PL/SQL Type Nested Tables will be empty.
51  *
52  * @param p_building_block_id Time Building Block of the Timecard to retrieve.
53  * @param p_deposit_process Deposit process indicates which attribute to
54  * application mapping should be used to retrieve the Timecard attributes.
55  * @param p_clear_mapping_cache can be used to clear the mapping cache
56  * @param p_app_blocks SQL Type Nested Table that will hold the Time Building
57  * Blocks of the Timecard.
58  * @param p_app_attributes PL/SQL Type Nested Table that will hold the Time
59  * Attributes of the Timecard.
60  * @rep:displayname Get Timecard
61  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
62  * @rep:lifecycle active
63  * @rep:primaryinstance
64  * @rep:scope public
65  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
66 */
67 --
68 -- {End Of Comments}
69 --
70    PROCEDURE get_timecard_tables (
71       p_building_block_id     IN              hxc_time_building_blocks.time_building_block_id%TYPE,
72       -- p_time_recipient_id   IN       NUMBER,
73       p_deposit_process       IN              hxc_deposit_processes.NAME%TYPE
74             DEFAULT g_otl_deposit_process,
75       p_clear_mapping_cache   IN              BOOLEAN DEFAULT FALSE,
76       p_app_blocks            OUT NOCOPY      hxc_block_table_type,
77       p_app_attributes        OUT NOCOPY      hxc_self_service_time_deposit.app_attributes_info
78    );
79 
80 --
81 -- ----------------------------------------------------------------------------
82 -- |---------------------------< get_timecard_tables >------------------------|
83 -- ----------------------------------------------------------------------------
84 --
85 -- {Start Of Comments}
86 /*#
87  * Procedure used to retrieve the Timecard from the TimeStore and place the
88  * Time Building Blocks and the attributes in a PL/SQL Type Nested Table.
89  *
90  * Use this procedure to retrieve the currently active Timecard and its
91  * Attributes from the Database into their respective PL/SQL Collections.
92  *
93  * <p><b>Licensing</b><br>
94  * This API version is licensed for use with Time and Labor.
95  *
96  * <p><b>Prerequisites</b><br>
97  * Timecard should be present in the TimeStore.
98  *
99  * <p><b>Post Success</b><br>
100  * PL/SQL Type Nested Tables will contain Timecard and Timecard Attributes.
101  *
102  * <p><b>Post Failure</b><br>
103  * PL/SQL Type Nested Tables will be empty.
104  *
105  * @param p_building_block_id Building Block of the Timecard to retrieve.
106  * @param p_deposit_process Deposit process indicates which attribute to
107  * application mapping should be used to retrieve the Timecard attributes.
108  * @param p_clear_mapping_cache can be used to clear the mapping cache
109  * @param p_app_blocks PL/SQL Table that will hold the time portion of the
110  * Timecard object.
111  * @param p_app_attributes PL/SQL Table that will hold the attributes related
112  * to the Time Building Blocks held in p_app_blocks.
113  * @rep:displayname Get Timecard
114  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
115  * @rep:lifecycle active
116  * @rep:scope public
117  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
118 */
119 --
120 -- {End Of Comments}
121 --
122    PROCEDURE get_timecard_tables (
123       p_building_block_id     IN              hxc_time_building_blocks.time_building_block_id%TYPE,
124       -- p_time_recipient_id   IN       NUMBER,
125       p_deposit_process       IN              hxc_deposit_processes.NAME%TYPE
126             DEFAULT g_otl_deposit_process,
127       p_clear_mapping_cache   IN              BOOLEAN DEFAULT FALSE,
128       p_app_blocks            OUT NOCOPY      hxc_self_service_time_deposit.timecard_info,
129       p_app_attributes        OUT NOCOPY      hxc_self_service_time_deposit.app_attributes_info
130    );
131 
132 --
133 -- ----------------------------------------------------------------------------
134 -- |--------------------------------< create_bb >-----------------------------|
135 -- ----------------------------------------------------------------------------
136 --
137 -- {Start Of Comments}
138 /*#
139  * Procedure to add one Time Building Block to the Time Building Block SQL Type
140  * Nested Table.
141  *
142  * Note that this procedure does not manipulate any of the database table
143  * contents. Only the PL/SQL nested table parameters passed into this procedure
144  * will be modified. The execute_deposit_process API will need to be used to
145  * actually update the database.
146  *
147  * <p><b>Licensing</b><br>
148  * This API version is licensed for use with Time and Labor.
149  *
150  * <p><b>Prerequisites</b><br>
151  * The resource must exist.
152  *
153  * <p><b>Post Success</b><br>
154  * Time Building Block will have been added to the Time Building Block SQL Type
155  * Nested Table.
156  *
157  * <p><b>Post Failure</b><br>
158  * Time Building Block will not be added to the Time Building Block SQL Type
159  * Nested Table.
160  *
161  * @param p_time_building_block_id Surrogate Time Building Block for the Time
162  * Building Block, this is needed to link potential child Time Building Blocks
163  * to this Time Building Block.
164  * @param p_type Type of the Time Building Block: 'MEASURE' or 'RANGE'.
165  * @param p_measure The actual time recorded, only provide when type is
166  * 'MEASURE'.
167  * @param p_unit_of_measure Units of measure for p_measure, the default value
168  * is recommended for most scenarios.
169  * @param p_start_time The IN time: only provide when type is 'RANGE'.
170  * @param p_stop_time The OUT time: only provide when type is 'RANGE'.
171  * @param p_parent_building_block_id Identifies the Time Building Block to
172  * which this Time Building Block needs to be attached.
173  * @param p_parent_is_new Set to 'Y', if the parent Time Building Block does
174  * not exist in the database, else set to 'N'.
175  * @param p_scope Use one of the following values: 'TIMECARD', 'DAY' or
176  * 'DETAIL'.
177  * @param p_object_version_number Object version number of the Time Building
178  * Block being created, the default value is recommended for most scenarios.
179  * @param p_approval_status Use one of the following values: 'WORKING' or
180  * 'SUBMITTED'.
181  * @param p_resource_id Resource identifier to which the Time Building Block
182  * belongs.
183  * @param p_resource_type Type of resource, currently must be set to 'PERSON'.
184  * @param p_approval_style_id The identifier of the approval style, used to
185  * approve the Time Building Block.
186  * @param p_date_from Date from which the Time Building Block is valid, the
187  * default value is recommended for most scenarios.
188  * @param p_date_to The latest date this Time Building Block is valid, the
189  * default value is recommended for most scenarios.
190  * @param p_comment_text Comment to be stored with the Time Building Block.
191  * @param p_parent_building_block_ovn Object Version Number of the parent Time
192  * Building Block.
193  * @param p_new For new Time Building Blocks this needs to be 'Y', the default
194  * value is recommended for most scenarios.
195  * @param p_changed For new Time Building Blocks this needs to be 'N', the
196  * default value is recommended for most scenarios.
197  * @param p_app_blocks Pass in the Time Building Block SQL Type Nested Table to
198  * attach the Time Building Block to. On success, the Time Building Block
199  * created will be added to this SQL Type Nested Table.
200  * @rep:displayname Create Time Building Block
201  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
202  * @rep:lifecycle active
203  * @rep:primaryinstance
204  * @rep:scope public
205  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
206 */
207 --
208 -- {End Of Comments}
209 --
210    PROCEDURE create_bb (
211       p_time_building_block_id      IN              hxc_time_building_blocks.time_building_block_id%TYPE,
212       p_type                        IN              hxc_time_building_blocks.TYPE%TYPE,
213       p_measure                     IN              hxc_time_building_blocks.measure%TYPE
214             DEFAULT NULL,
215       p_unit_of_measure             IN              hxc_time_building_blocks.unit_of_measure%TYPE
216             DEFAULT c_hours_uom,
217       p_start_time                  IN              hxc_time_building_blocks.start_time%TYPE
218             DEFAULT NULL,
219       p_stop_time                   IN              hxc_time_building_blocks.stop_time%TYPE
220             DEFAULT NULL,
221       p_parent_building_block_id    IN              hxc_time_building_blocks.parent_building_block_id%TYPE
222             DEFAULT NULL,
223       p_parent_is_new               IN              VARCHAR2,
224       p_scope                       IN              hxc_time_building_blocks.SCOPE%TYPE,
225       p_object_version_number       IN              hxc_time_building_blocks.object_version_number%TYPE
226             DEFAULT 1,
227       p_approval_status             IN              hxc_time_building_blocks.approval_status%TYPE
228             DEFAULT NULL,
229       p_resource_id                 IN              hxc_time_building_blocks.resource_id%TYPE,
230       p_resource_type               IN              hxc_time_building_blocks.resource_type%TYPE,
231       p_approval_style_id           IN              hxc_time_building_blocks.approval_style_id%TYPE,
232       p_date_from                   IN              hxc_time_building_blocks.date_from%TYPE
233             DEFAULT SYSDATE,
234       p_date_to                     IN              hxc_time_building_blocks.date_to%TYPE
235             DEFAULT hr_general.end_of_time,
236       p_comment_text                IN              hxc_time_building_blocks.comment_text%TYPE
237             DEFAULT NULL,
238       p_parent_building_block_ovn   IN              hxc_time_building_blocks.parent_building_block_ovn%TYPE
239             DEFAULT NULL,
240       p_new                         IN              VARCHAR2 DEFAULT 'Y',
241       p_changed                     IN              VARCHAR2 DEFAULT '',
242       p_app_blocks                  IN OUT NOCOPY   hxc_block_table_type
243    );
244 
245 --
246 -- ----------------------------------------------------------------------------
247 -- |--------------------------------< create_bb >-----------------------------|
248 -- ----------------------------------------------------------------------------
249 --
250 -- {Start Of Comments}
251 /*#
252  * Procedure to add one Time Building Block to the Time Building Block PL/SQL
253  * Type Nested Table.
254  *
255  * Note that this procedure does not manipulate any of the database table
256  * contents. Only the PL/SQL nested table parameters passed into this procedure
257  * will be modified. The execute_deposit_process API will need to be used to
258  * actually update the database.
259  *
260  * <p><b>Licensing</b><br>
261  * This API version is licensed for use with Time and Labor.
262  *
263  * <p><b>Prerequisites</b><br>
264  * The resource must exist.
265  *
266  * <p><b>Post Success</b><br>
267  * Time Building Block will have been added to the Time Building Block PL/SQL
268  * Type Nested Table.
269  *
270  * <p><b>Post Failure</b><br>
271  * Time Building Block will not be added to the Time Building Block PL/SQL Type
272  * Nested Table.
273  *
274  * @param p_time_building_block_id Surrogate Time Building Block identifierfor
275  * the Time Building Block. This is needed to link potential child Time
276  * Building Blocks to this Time Building Block.
277  * @param p_type Type of the Time Building Block: 'MEASURE' or 'RANGE'.
278  * @param p_measure The actual time recorded, only provide when type is
279  * 'MEASURE'.
280  * @param p_unit_of_measure Units of measure for p_measure, the default value
281  * is recommended for most scenarios.
282  * @param p_start_time The IN time: only provide when type is 'RANGE'.
283  * @param p_stop_time The OUT time: only provide when type is 'RANGE'.
284  * @param p_parent_building_block_id Identifies of the Time Building Block to
285  * which this Time Building Block needs to be attached.
286  * @param p_parent_is_new Set to 'Y', if the parent Time Building Block does
287  * not exist in the database, else set to 'N'.
288  * @param p_scope Use one of the following values: 'TIMECARD', 'DAY' or
289  * 'DETAIL'.
290  * @param p_object_version_number Object version number of the Time Building
291  * Block being created, the default value is recommended for most scenarios.
292  * @param p_approval_status Use one of the following values: 'WORKING' or
293  * 'SUBMITTED'.
294  * @param p_resource_id Resource Identifier to which the Time Building Block
295  * belongs.
296  * @param p_resource_type Type of resource, currently must be set to 'PERSON'.
297  * @param p_approval_style_id The identifier of the approval style used to
298  * approve the Time Building Block.
299  * @param p_date_from Date from which the Time Building Block is valid, the
300  * default value is recommended for most scenarios.
301  * @param p_date_to The latest date this Time Building Block is valid, the
302  * default value is recommended for most scenarios.
303  * @param p_comment_text Comment to be stored with the Time Building Block.
304  * @param p_parent_building_block_ovn Object Version Number of the parent Time
305  * Building Block.
306  * @param p_new For new Time Building Blocks this needs to be 'Y', the default
307  * value is recommended for most scenarios.
308  * @param p_changed For new Time Building Blocks this needs to be 'N', the
309  * default value is recommended for most scenarios.
310  * @param p_app_blocks Pass in the Time Building Block PL/SQL Type Nested Table
311  * to attach the Time Building Block to. On success, the Time Building Block
312  * created will be added to this PL/SQL Type Nested Table.
313  * @rep:displayname Create Time Building Block
314  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
315  * @rep:lifecycle active
316  * @rep:scope public
317  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
318 */
319 --
320 -- {End Of Comments}
321 --
322    PROCEDURE create_bb (
323       p_time_building_block_id      IN              hxc_time_building_blocks.time_building_block_id%TYPE,
324       p_type                        IN              hxc_time_building_blocks.TYPE%TYPE,
325       p_measure                     IN              hxc_time_building_blocks.measure%TYPE
326             DEFAULT NULL,
327       p_unit_of_measure             IN              hxc_time_building_blocks.unit_of_measure%TYPE
328             DEFAULT c_hours_uom,
329       p_start_time                  IN              hxc_time_building_blocks.start_time%TYPE
330             DEFAULT NULL,
331       p_stop_time                   IN              hxc_time_building_blocks.stop_time%TYPE
332             DEFAULT NULL,
333       p_parent_building_block_id    IN              hxc_time_building_blocks.parent_building_block_id%TYPE
334             DEFAULT NULL,
335       p_parent_is_new               IN              VARCHAR2,
336       p_scope                       IN              hxc_time_building_blocks.SCOPE%TYPE,
337       p_object_version_number       IN              hxc_time_building_blocks.object_version_number%TYPE
338             DEFAULT 1,
339       p_approval_status             IN              hxc_time_building_blocks.approval_status%TYPE
340             DEFAULT NULL,
341       p_resource_id                 IN              hxc_time_building_blocks.resource_id%TYPE,
342       p_resource_type               IN              hxc_time_building_blocks.resource_type%TYPE,
343       p_approval_style_id           IN              hxc_time_building_blocks.approval_style_id%TYPE,
344       p_date_from                   IN              hxc_time_building_blocks.date_from%TYPE
345             DEFAULT SYSDATE,
346       p_date_to                     IN              hxc_time_building_blocks.date_to%TYPE
347             DEFAULT hr_general.end_of_time,
348       p_comment_text                IN              hxc_time_building_blocks.comment_text%TYPE
349             DEFAULT NULL,
350       p_parent_building_block_ovn   IN              hxc_time_building_blocks.parent_building_block_ovn%TYPE
351             DEFAULT NULL,
352       p_new                         IN              VARCHAR2 DEFAULT 'Y',
353       p_changed                     IN              VARCHAR2 DEFAULT '',
354       p_app_blocks                  IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info
355    );
356 
357 --
358 -- ----------------------------------------------------------------------------
359 -- |----------------------------< create_timecard_bb >------------------------|
360 -- ----------------------------------------------------------------------------
361 --
362 -- {Start Of Comments}
363 /*#
364  * Procedure that creates Time Building Blocks of type TIMECARD and adds them
365  * to the Time Building Block SQL Type Nested Table.
366  *
367  * Note that this procedure does not manipulate any of the database table
368  * contents. Only the PL/SQL nested table parameters passed into this procedure
369  * will be modified. The execute_deposit_process API will need to be used to
370  * actually update the database.
371  *
372  * <p><b>Licensing</b><br>
373  * This API version is licensed for use with Time and Labor.
374  *
375  * <p><b>Prerequisites</b><br>
376  * The resource must exist.
377  *
378  * <p><b>Post Success</b><br>
379  * Time Building Block of type TIMECARD will have been added to the Time
380  * Building Block SQL Type Nested Table.
381  *
382  * <p><b>Post Failure</b><br>
383  * Time Building Block of type TIMECARD will not get added to the Time Building
384  * Block SQL Type Nested Table.
385  *
386  * @param p_start_time The first day of the TIMECARD.
387  * @param p_stop_time The last day of the TIMECARD.
388  * @param p_resource_id Resource to which the Time Building Block belongs.
389  * @param p_resource_type Type of resource, currently must be set to 'PERSON'.
390  * @param p_approval_style_id WORKING' or 'SUBMITTED'. When this parameter is
391  * set to null, the real value will be derived from the mode used during
392  * deposit.
393  * @param p_comment_text Comment to be stored with the TIMECARD Time Building
394  * Block.
395  * @param p_app_blocks Pass in the Time Building Block SQL Type Nested Table to
396  * attach the TIMECARD Time Building Block to. On success, the Time Building
397  * Block created will be added to this SQL Type Nested Table.
398  * @param p_time_building_block_id Uniquely identifies the Time Building Block
399  * created.
400  * @rep:displayname Create Timecard Time Building Block
401  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
402  * @rep:lifecycle active
403  * @rep:primaryinstance
404  * @rep:scope public
405  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
406 */
407 --
408 -- {End Of Comments}
409 --
410    PROCEDURE create_timecard_bb (
411       p_start_time               IN              hxc_time_building_blocks.start_time%TYPE,
412       p_stop_time                IN              hxc_time_building_blocks.stop_time%TYPE,
413       -- p_approval_status            IN       hxc_time_building_blocks.approval_status%TYPE,
414       p_resource_id              IN              hxc_time_building_blocks.resource_id%TYPE,
415       -- default to person because there is no other resource type at the moment.
416       p_resource_type            IN              hxc_time_building_blocks.resource_type%TYPE
417             DEFAULT hxc_timecard.c_person_resource,
418       -- We cannot use approval_style_name because that is not unique.
419       p_approval_style_id        IN              hxc_time_building_blocks.approval_style_id%TYPE
420             DEFAULT NULL,
421       p_comment_text             IN              hxc_time_building_blocks.comment_text%TYPE
422             DEFAULT NULL,
423       p_app_blocks               IN OUT NOCOPY   hxc_block_table_type,
424       p_time_building_block_id   OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
425    );
426 
427 --
428 -- ----------------------------------------------------------------------------
429 -- |----------------------------< create_timecard_bb >------------------------|
430 -- ----------------------------------------------------------------------------
431 --
432 -- {Start Of Comments}
433 /*#
434  * Procedure that creates Time Building Blocks of type TIMECARD and adds them
435  * to the Time Building Block PL/SQL Type Nested Table.
436  *
437  * Note that this procedure does not manipulate any of the database table
438  * contents. Only the PL/SQL nested table parameters passed into this procedure
439  * will be modified. The execute_deposit_process API will need to be used to
440  * actually update the database.
441  *
442  * <p><b>Licensing</b><br>
443  * This API version is licensed for use with Time and Labor.
444  *
445  * <p><b>Prerequisites</b><br>
446  * The resource must exist.
447  *
448  * <p><b>Post Success</b><br>
449  * Time Building Block of type Timecard will have been added to the Time
450  * Building Block PL/SQL Type Nested Table.
451  *
452  * <p><b>Post Failure</b><br>
453  * Time Building Block of type Timecard will not get added to the Time Building
454  * Block PL/SQL Type Nested Table.
455  *
456  * @param p_start_time The first day of the TIMECARD.
457  * @param p_stop_time The last day of the TIMECARD.
458  * @param p_resource_id Resource to which the Time Building Block belongs.
459  * @param p_resource_type Type of resource, currently must be set to 'PERSON'.
460  * @param p_approval_style_id WORKING' or 'SUBMITTED'. When this parameter is
461  * set to null, the real value will be derived from the mode used during
462  * deposit.
463  * @param p_comment_text Comment to be stored with the TIMECARD Time Building
464  * Block.
465  * @param p_app_blocks Pass in the Timecard PL/SQL Table to attach the TIMECARD
466  * Time Building Block to. On success, the Time Building Block created will be
467  * added to this PL/SQL Table.
468  * @param p_time_building_block_id Uniquely identifies the Time Building Block
469  * created.
470  * @rep:displayname Create Timecard Time Building Block
471  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
472  * @rep:lifecycle active
473  * @rep:scope public
474  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
475 */
476 --
477 -- {End Of Comments}
478 --
479    PROCEDURE create_timecard_bb (
480       p_start_time               IN              hxc_time_building_blocks.start_time%TYPE,
481       p_stop_time                IN              hxc_time_building_blocks.stop_time%TYPE,
482       -- p_approval_status            IN       hxc_time_building_blocks.approval_status%TYPE,
483       p_resource_id              IN              hxc_time_building_blocks.resource_id%TYPE,
484       -- default to person because there is no other resource type at the moment.
485       p_resource_type            IN              hxc_time_building_blocks.resource_type%TYPE
486             DEFAULT hxc_timecard.c_person_resource,
487       -- We cannot use approval_style_name because that is not unique.
488       p_approval_style_id        IN              hxc_time_building_blocks.approval_style_id%TYPE
489             DEFAULT NULL,
490       p_comment_text             IN              hxc_time_building_blocks.comment_text%TYPE
491             DEFAULT NULL,
492       p_app_blocks               IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info,
493       p_time_building_block_id   OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
494    );
495 
496 --
497 -- ----------------------------------------------------------------------------
498 -- |------------------------------< create_day_bb >---------------------------|
499 -- ----------------------------------------------------------------------------
500 --
501 -- {Start Of Comments}
502 /*#
503  * Procedure that creates Time Building Blocks of type DAY and adds them to the
504  * Time Building Block SQL Type Nested Table.
505  *
506  * Note that this procedure does not manipulate any of the database table
507  * contents. Only the PL/SQL nested table parameters passed into this procedure
508  * will be modified. The execute_deposit_process API will need to be used to
509  * actually update the database.
510  *
511  * <p><b>Licensing</b><br>
512  * This API version is licensed for use with Time and Labor.
513  *
514  * <p><b>Prerequisites</b><br>
515  * A Time Building Block of type TIMECARD should have been already added to the
516  * SQL Type Nested Table.
517  *
518  * <p><b>Post Success</b><br>
519  * Time Building Block of type DAY will have been added to the Time Building
520  * Block SQL Type Nested Table.
521  *
522  * <p><b>Post Failure</b><br>
523  * Time Building Block of type DAY will not be added to the Time Building Block
524  * SQL Type Nested Table.
525  *
526  * @param p_day Day to create the DAY Time Building Block.
527  * @param p_resource_id Resource to which the Time Building Block belongs.
528  * @param p_resource_type Type of resource, currently must be set to 'PERSON'.
529  * @param p_comment_text Comment to be stored with the DAY Time Building Block.
530  * @param p_deposit_process Deposit process indicates which attribute to
531  * application mapping should be used to retrieve the Timecard attributes.
532  * @param p_app_blocks Pass in the Time Building Block SQL Type Nested Table to
533  * attach the DAY Time Building Block to. On success, the Time Building Block
534  * created will be added to this SQL Type Nested Table.
535  * @param p_time_building_block_id Uniquely identifies the Time Building Block
536  * created.
537  * @rep:displayname Create Day Time Building Block
538  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
539  * @rep:lifecycle active
540  * @rep:primaryinstance
541  * @rep:scope public
542  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
543 */
544 --
545 -- {End Of Comments}
546 --
547    PROCEDURE create_day_bb (
548       p_day                      IN              hxc_time_building_blocks.start_time%TYPE,
549       p_resource_id              IN              hxc_time_building_blocks.resource_id%TYPE,
550       p_resource_type            IN              hxc_time_building_blocks.resource_type%TYPE
551             DEFAULT hxc_timecard.c_person_resource,
552       p_comment_text             IN              hxc_time_building_blocks.comment_text%TYPE
553             DEFAULT NULL,
554       -- p_parent_building_block_ovn            hxc_time_building_blocks.parent_building_block_ovn%TYPE
555       -- DEFAULT 1,
556       p_deposit_process          IN              hxc_deposit_processes.NAME%TYPE
557             DEFAULT g_otl_deposit_process,
558       p_app_blocks               IN OUT NOCOPY   hxc_block_table_type,
559       p_time_building_block_id   OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
560    );
561 
562 --
563 -- ----------------------------------------------------------------------------
564 -- |------------------------------< create_day_bb >---------------------------|
565 -- ----------------------------------------------------------------------------
566 --
567 -- {Start Of Comments}
568 /*#
569  * Procedure that creates Time Building Blocks of type DAY and adds them to the
570  * Time Building Block PL/SQL Type Nested Table.
571  *
572  * Note that this procedure does not manipulate any of the database table
573  * contents. Only the PL/SQL nested table parameters passed into this procedure
574  * will be modified. The execute_deposit_process API will need to be used to
575  * actually update the database.
576  *
577  * <p><b>Licensing</b><br>
578  * This API version is licensed for use with Time and Labor.
579  *
580  * <p><b>Prerequisites</b><br>
581  * A Time Building Block of type TIMECARD should have been added already to the
582  * PL/SQL Type Nested Table.
583  *
584  * <p><b>Post Success</b><br>
585  * Time Building Block of type DAY will have been added to the Time Building
586  * Block PL/SQL Type Nested Table.
587  *
588  * <p><b>Post Failure</b><br>
589  * Time Building Block of type DAY will not get added to the Time Building
590  * Block PL/SQL Type Nested Table.
591  *
592  * @param p_day Day to create the DAY Time Building Block.
593  * @param p_resource_id Resource to which the Time Building Block belongs.
594  * @param p_resource_type Type of resource, currently must be set to 'PERSON'.
595  * @param p_comment_text Comment to be stored with the DAY Time Building Block.
596  * @param p_deposit_process Deposit process indicates which attribute to
597  * application mapping should be used to retrieve the Timecard attributes.
598  * @param p_app_blocks Pass in the Time Building Block PL/SQL Type Nested Table
599  * to attach the DAY Time Building Block to. On success, the Time Building
600  * Block created will be added to this PL/SQL Type Nested Table.
601  * @param p_time_building_block_id Uniquely identifies the Time Building Block
602  * created.
603  * @rep:displayname Create Day Time Building Block
604  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
605  * @rep:lifecycle active
606  * @rep:scope public
607  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
608 */
609 --
610 -- {End Of Comments}
611 --
612    PROCEDURE create_day_bb (
613       p_day                      IN              hxc_time_building_blocks.start_time%TYPE,
614       p_resource_id              IN              hxc_time_building_blocks.resource_id%TYPE,
615       p_resource_type            IN              hxc_time_building_blocks.resource_type%TYPE
616             DEFAULT hxc_timecard.c_person_resource,
617       p_comment_text             IN              hxc_time_building_blocks.comment_text%TYPE
618             DEFAULT NULL,
619       -- p_parent_building_block_ovn            hxc_time_building_blocks.parent_building_block_ovn%TYPE
620       -- DEFAULT 1,
621       p_deposit_process          IN              hxc_deposit_processes.NAME%TYPE
622             DEFAULT g_otl_deposit_process,
623       p_app_blocks               IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info,
624       p_time_building_block_id   OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
625    );
626 
627 --
628 -- ----------------------------------------------------------------------------
629 -- |------------------------------< create_day_bb >---------------------------|
630 -- ----------------------------------------------------------------------------
631 --
632 -- {Start Of Comments}
633 /*#
634  * Procedure that creates Time Building Blocks of type DAY and adds them to the
635  * Time Building Block SQL Type Nested Table.
636  *
637  * Note that this procedure does not manipulate any of the database table
638  * contents. Only the PL/SQL nested table parameters passed into this procedure
639  * will be modified. The execute_deposit_process API will need to be used to
640  * actually update the database.
641  *
642  * <p><b>Licensing</b><br>
643  * This API version is licensed for use with Time and Labor.
644  *
645  * <p><b>Prerequisites</b><br>
646  * A Time Building Block of type TIMECARD should have been added already to the
647  * SQL Type Nested Table.
648  *
649  * <p><b>Post Success</b><br>
650  * Time Building Block of type DAY will have been added to the Time Building
651  * Block SQL Type Nested Table.
652  *
653  * <p><b>Post Failure</b><br>
654  * Time Building Block of type DAY will not get added to the Time Building
655  * Block SQL Type Nested Table.
656  *
657  * @param p_day Day to create the DAY Time Building Block.
658  * @param p_parent_building_block_id Identifies the parent (Timecard) Time
659  * Building Block.
660  * @param p_comment_text Comment to be stored with the DAY Time Building Block.
661  * @param p_parent_building_block_ovn Object Version Number of the parent Time
662  * Building Block.
663  * @param p_deposit_process Deposit process indicates which attribute to
664  * application mapping should be used to retrieve the Timecard attributes.
665  * @param p_app_blocks Pass in the Time Building Block SQL Type Nested Table to
666  * attach the DAY Time Building Block to. On success, the Time Building Block
667  * created will be added to this SQL Type Nested Table.
668  * @param p_time_building_block_id Uniquely identifies the Time Building Block
669  * created.
670  * @rep:displayname Create Day Time Building Block
671  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
672  * @rep:lifecycle active
673  * @rep:scope public
674  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
675 */
676 --
677 -- {End Of Comments}
678 --
679    PROCEDURE create_day_bb (
680       p_day                         IN              hxc_time_building_blocks.start_time%TYPE,
681       p_parent_building_block_id    IN              hxc_time_building_blocks.parent_building_block_id%TYPE
682             DEFAULT NULL,
683       p_comment_text                IN              hxc_time_building_blocks.comment_text%TYPE
684             DEFAULT NULL,
685       p_parent_building_block_ovn   IN              hxc_time_building_blocks.parent_building_block_ovn%TYPE
686             DEFAULT 1,
687       p_deposit_process             IN              hxc_deposit_processes.NAME%TYPE
688             DEFAULT g_otl_deposit_process,
689       p_app_blocks                  IN OUT NOCOPY   hxc_block_table_type,
690       p_time_building_block_id      OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
691    );
692 
693 --
694 -- ----------------------------------------------------------------------------
695 -- |------------------------------< create_day_bb >---------------------------|
696 -- ----------------------------------------------------------------------------
697 --
698 -- {Start Of Comments}
699 /*#
700  * Procedure that creates Time Building Blocks of type DAY and adds them to the
701  * Time Building Block PL/SQL Type Nested Table.
702  *
703  * Note that this procedure does not manipulate any of the database table
704  * contents. Only the PL/SQL nested table parameters passed into this procedure
705  * will be modified. The execute_deposit_process API will need to be used to
706  * actually update the database.
707  *
708  * <p><b>Licensing</b><br>
709  * This API version is licensed for use with Time and Labor.
710  *
711  * <p><b>Prerequisites</b><br>
712  * A Time Building Block of type TIMECARD should have been added already to the
713  * PL/SQL Type Nested Table.
714  *
715  * <p><b>Post Success</b><br>
716  * Time Building Block of type DAY will have been added to the Time Building
717  * Block PL/SQL Type Nested Table.
718  *
719  * <p><b>Post Failure</b><br>
720  * Time Building Block of type DAY will not get added to the Time Building
721  * Block PL/SQL Type Nested Table.
722  *
723  * @param p_day Day to create the DAY Time Building Block.
724  * @param p_parent_building_block_id Identifies the parent Timecard Time
725  * Building Block.
726  * @param p_comment_text Comment to be stored with the DAY Time Building Block.
727  * @param p_parent_building_block_ovn Object Version Number of the parent Time
728  * Building Block.
729  * @param p_deposit_process Deposit process indicates which attribute to
730  * application mapping should be used to retrieve the Timecard attributes.
731  * @param p_app_blocks Pass in the Time Building Block PL/SQL Type Nested Table
732  * to attach the DAY Time Building Block to. On success, the Time Building
733  * Block created will be added to this PL/SQL Type Nested Table.
734  * @param p_time_building_block_id Uniquely identifies the Time Building Block
735  * created.
736  * @rep:displayname Create Day Time Building Block
737  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
738  * @rep:lifecycle active
739  * @rep:scope public
740  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
741 */
742 --
743 -- {End Of Comments}
744 --
745    PROCEDURE create_day_bb (
746       p_day                         IN              hxc_time_building_blocks.start_time%TYPE,
747       p_parent_building_block_id    IN              hxc_time_building_blocks.parent_building_block_id%TYPE
748             DEFAULT NULL,
749       p_comment_text                IN              hxc_time_building_blocks.comment_text%TYPE
750             DEFAULT NULL,
751       p_parent_building_block_ovn   IN              hxc_time_building_blocks.parent_building_block_ovn%TYPE
752             DEFAULT 1,
753       p_deposit_process             IN              hxc_deposit_processes.NAME%TYPE
754             DEFAULT g_otl_deposit_process,
755       p_app_blocks                  IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info,
756       p_time_building_block_id      OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
757    );
758 
759  /*  PROCEDURE auto_create_timecard (
760       p_resource_id              IN              hxc_time_building_blocks.resource_id%TYPE,
761       p_resource_type            IN              hxc_time_building_blocks.resource_type%TYPE,
762       p_day                      IN              hxc_time_building_blocks.start_time%TYPE,
763       p_deposit_process          IN              hxc_deposit_processes.NAME%TYPE
764             DEFAULT g_otl_deposit_process,
765       p_app_blocks               IN OUT NOCOPY   hxc_block_table_type,
766       p_app_attributes           IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info,
767       p_time_building_block_id   OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
768    );
769 
770    PROCEDURE auto_create_timecard (
771       p_resource_id              IN              hxc_time_building_blocks.resource_id%TYPE,
772       p_resource_type            IN              hxc_time_building_blocks.resource_type%TYPE,
773       p_day                      IN              hxc_time_building_blocks.start_time%TYPE,
774       p_deposit_process          IN              hxc_deposit_processes.NAME%TYPE
775             DEFAULT g_otl_deposit_process,
776       p_app_blocks               IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info,
777       p_app_attributes           IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info,
778       p_time_building_block_id   OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
779    ); */
780 
781 
782 --
783 -- ----------------------------------------------------------------------------
784 -- |-----------------------------< create_detail_bb >-------------------------|
785 -- ----------------------------------------------------------------------------
786 --
787 -- {Start Of Comments}
788 /*#
789  * Procedure that creates Time Building Blocks of type DETAIL and adds them to
790  * the Time Building Block SQL Type Nested Table.
791  *
792  * Note that this procedure does not manipulate any of the database table
793  * contents. Only the PL/SQL nested table parameters passed into this procedure
794  * will be modified. The execute_deposit_process API will need to be used to
795  * actually update the database.
796  *
797  * <p><b>Licensing</b><br>
798  * This API version is licensed for use with Time and Labor.
799  *
800  * <p><b>Prerequisites</b><br>
801  * A Time Building Block of type DAY should have been added already to the SQL
802  * Type Nested Table.
803  *
804  * <p><b>Post Success</b><br>
805  * Time Building Block of type DETAIL will have been added to the Time Building
806  * Block SQL Type Nested Table.
807  *
808  * <p><b>Post Failure</b><br>
809  * Time Building Block of type DETAIL will not get added to the Time Building
810  * Block SQL Type Nested Table.
811  *
812  * @param p_type Type of the Time Building Block: 'MEASURE' or 'RANGE'.
813  * @param p_measure The actual time recorded, only provide when type is
814  * 'MEASURE'.
815  * @param p_start_time The IN time: only provide when type is 'RANGE'.
816  * @param p_stop_time The OUT time: only provide when type is 'RANGE'.
817  * @param p_parent_building_block_id Identifies the parent (Detail) Time
818  * Building Block
819  * @param p_comment_text Comment to be stored with the DETAIL Time Building
820  * Block
821  * @param p_parent_building_block_ovn Object Version Number of the parent Time
822  * Building Block.
823  * @param p_deposit_process Deposit process indicates which attribute to
824  * application mapping should be used to retrieve the Timecard attributes.
825  * @param p_unit_of_measure Units of measure for p_measure, the default value
826  * is recommended for most scenarios.
827  * @param p_app_blocks Pass in the Time Building Block SQL Type Nested Table to
828  * attach the DETAIL Time Building Block to. On success, the Time Building
829  * Block created will be added to this SQL Type Nested Table.
830  * @param p_app_attributes Pass in the Time Attribute PL/SQL Type Nested Table
831  * containing the Time Building Blocks attributes which have already been
832  * created. This procedure will not modify the table contents.
833  * @param p_time_building_block_id Uniquely identifies the Time Building Block
834  * created.
835  * @rep:displayname Create Detail Time Building Block
836  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
837  * @rep:lifecycle active
838  * @rep:primaryinstance
839  * @rep:scope public
840  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
841 */
842 --
843 -- {End Of Comments}
844 --
845    PROCEDURE create_detail_bb (
846       p_type                        IN              hxc_time_building_blocks.TYPE%TYPE,
847       p_measure                     IN              hxc_time_building_blocks.measure%TYPE
848             DEFAULT NULL,
849       p_start_time                  IN              hxc_time_building_blocks.start_time%TYPE
850             DEFAULT NULL,
851       p_stop_time                   IN              hxc_time_building_blocks.stop_time%TYPE
852             DEFAULT NULL,
853       p_parent_building_block_id    IN              hxc_time_building_blocks.parent_building_block_id%TYPE,
854       -- For now, these need to be the same as the parent BB (the TIMECARD BB).  We set this in the code,
855       -- the user cannot manipulate this.
856       -- p_approval_status            IN       hxc_time_building_blocks.approval_status%TYPE,
857       -- p_resource_id                IN       hxc_time_building_blocks.resource_id%TYPE,
858       -- p_resource_type              IN       hxc_time_building_blocks.resource_type%TYPE,
859       -- p_approval_style_id          IN       hxc_time_building_blocks.approval_style_id%TYPE,
860       p_comment_text                IN              hxc_time_building_blocks.comment_text%TYPE
861             DEFAULT NULL,
862       p_parent_building_block_ovn   IN              hxc_time_building_blocks.parent_building_block_ovn%TYPE
863             DEFAULT 1,
864       p_deposit_process             IN              hxc_deposit_processes.NAME%TYPE
865             DEFAULT g_otl_deposit_process,
866       p_unit_of_measure             IN              hxc_time_building_blocks.unit_of_measure%TYPE
867             DEFAULT NULL,
868       p_app_blocks                  IN OUT NOCOPY   hxc_block_table_type,
869       p_app_attributes              IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info,
870       p_time_building_block_id      OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
871    );
872 
873 --
874 -- ----------------------------------------------------------------------------
875 -- |-----------------------------< create_detail_bb >-------------------------|
876 -- ----------------------------------------------------------------------------
877 --
878 -- {Start Of Comments}
879 /*#
880  * Procedure that creates Time Building Blocks of type DETAIL and adds them to
881  * the Time Building Block PL/SQL Type Nested Table.
882  *
883  * Note that this procedure does not manipulate any of the database table
884  * contents. Only the PL/SQL nested table parameters passed into this procedure
885  * will be modified. The execute_deposit_process API will need to be used to
886  * actually update the database.
887  *
888  * <p><b>Licensing</b><br>
889  * This API version is licensed for use with Time and Labor.
890  *
891  * <p><b>Prerequisites</b><br>
892  * A Time Building Block of type DAY should have been added already to the
893  * PL/SQL Type Nested Table.
894  *
895  * <p><b>Post Success</b><br>
896  * Time Building Block of type DETAIL will have been added to the Time Building
897  * Block PL/SQL Type Nested Table.
898  *
899  * <p><b>Post Failure</b><br>
900  * Time Building Block of type DETAIL will not get added to the Time Building
901  * Block PL/SQL Type Nested Table.
902  *
903  * @param p_type Type of the Time Building Block: 'MEASURE' or 'RANGE'.
904  * @param p_measure The actual time recorded, only provide when type is
905  * 'MEASURE'.
906  * @param p_start_time The IN time: only provide when type is 'RANGE'.
907  * @param p_stop_time The OUT time: only provide when type is 'RANGE'.
908  * @param p_parent_building_block_id Identifies the parent (Detail) Time
909  * Building Block.
910  * @param p_comment_text Comment to be stored with the DETAIL Time Building
911  * Block.
912  * @param p_parent_building_block_ovn Object Version Number of the parent Time
913  * Building Block.
914  * @param p_deposit_process Deposit process indicates which attribute to
915  * application mapping should be used to retrieve the Timecard attributes.
916  * @param p_unit_of_measure Units of measure for p_measure, the default value
917  * is recommended for most scenarios.
918  * @param p_app_blocks Pass in the Time Building Block PL/SQL Type Nested Table
919  * to attach the DETAIL Time Building Block to. On success, the Time Building
920  * Block created will be added to this PL/SQL Type Nested Table.
921  * @param p_app_attributes Pass in the Time Attribute PL/SQL Type Nested Table
922  * containing the Time Building Blocks attributes which have already been
923  * created. This procedure will not modify the table contents.
924  * @param p_time_building_block_id Uniquely identifies the Time Building Block
925  * created.
926  * @rep:displayname Create Detail Time Building Block
927  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
928  * @rep:lifecycle active
929  * @rep:scope public
930  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
931 */
932 --
933 -- {End Of Comments}
934 --
935    PROCEDURE create_detail_bb (
936       p_type                        IN              hxc_time_building_blocks.TYPE%TYPE,
937       p_measure                     IN              hxc_time_building_blocks.measure%TYPE
938             DEFAULT NULL,
939       p_start_time                  IN              hxc_time_building_blocks.start_time%TYPE
940             DEFAULT NULL,
941       p_stop_time                   IN              hxc_time_building_blocks.stop_time%TYPE
942             DEFAULT NULL,
943       p_parent_building_block_id    IN              hxc_time_building_blocks.parent_building_block_id%TYPE,
944       -- For now, these need to be the same as the parent BB (the TIMECARD BB).  We set this in the code,
945       -- the user cannot manipulate this.
946       -- p_approval_status            IN       hxc_time_building_blocks.approval_status%TYPE,
947       -- p_resource_id                IN       hxc_time_building_blocks.resource_id%TYPE,
948       -- p_resource_type              IN       hxc_time_building_blocks.resource_type%TYPE,
949       -- p_approval_style_id          IN       hxc_time_building_blocks.approval_style_id%TYPE,
950       p_comment_text                IN              hxc_time_building_blocks.comment_text%TYPE
951             DEFAULT NULL,
952       p_parent_building_block_ovn   IN              hxc_time_building_blocks.parent_building_block_ovn%TYPE
953             DEFAULT 1,
954       p_deposit_process             IN              hxc_deposit_processes.NAME%TYPE
955             DEFAULT g_otl_deposit_process,
956       p_unit_of_measure             IN              hxc_time_building_blocks.unit_of_measure%TYPE
957             DEFAULT NULL,
958       p_app_blocks                  IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info,
959       p_app_attributes              IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info,
960       p_time_building_block_id      OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
961    );
962 
963 --
964 -- ----------------------------------------------------------------------------
965 -- |----------------------------< create_time_entry >-------------------------|
966 -- ----------------------------------------------------------------------------
967 --
968 -- {Start Of Comments}
969 /*#
970  * Allows a "measure" Time Entry to be created, using the Timecard
971  * SQL Type Nested Table.
972  *
973  * This is a specialised procedure that allows creation of a Time Entry.This
974  * procedure will take care of creating the corresponding Timecard if it
975  * doesn't exist yet. Note that this procedure does not manipulate any of the
976  * database table contents. Only the PL/SQL nested table parameters passed into
977  * this procedure will be modified.The execute_deposit_process API will need to
978  * be used to actually update the database.
979  *
980  * <p><b>Licensing</b><br>
981  * This API version is licensed for use with Time and Labor.
982  *
983  * <p><b>Prerequisites</b><br>
984  * The resource must exist.
985  *
986  * <p><b>Post Success</b><br>
987  * Time Entry (i.e. Time Building Block of type DETAIL) will have been added to
988  * the Time Building Block SQL Type Nested Table.
989  *
990  * <p><b>Post Failure</b><br>
991  * Time Entry (i.e. Time Building Block of type DETAIL) will not get added to
992  * the Time Building Block SQL Type Nested Table and an error will be raised.
993  *
994  * @param p_measure The actual time recorded in hours.
995  * @param p_day Day to create the Time Entry.
996  * @param p_resource_id Resource to which the Time Building Block belongs.
997  * @param p_resource_type Type of resource, currently we only support 'PERSON'.
998  * @param p_comment_text Comment to be stored with the Time Entry.
999  * @param p_deposit_process Deposit process indicates which attribute to
1000  * application mapping should be used to retrieve the Timecard attributes.
1001  * @param p_app_blocks Pass in the Time Building Block SQL Type Nested Table to
1002  * attach the Time Entry to. On success, the Time Building Block created will
1003  * be added to this SQL Type Nested Table.
1004  * @param p_app_attributes Pass in the Time Attribute PL/SQL Type Nested Table
1005  * containing the Time Building Blocks attributes which have already been
1006  * created. This procedure will not modify the table contents.
1007  * @param p_time_building_block_id Uniquely identifies the Time Building Block
1008  * created.
1009  * @rep:displayname Create Measure Time Entry
1010  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1011  * @rep:lifecycle active
1012  * @rep:primaryinstance
1013  * @rep:scope public
1014  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1015 */
1016 --
1017 -- {End Of Comments}
1018 --
1019    PROCEDURE create_time_entry (
1020       p_measure                  IN              hxc_time_building_blocks.measure%TYPE,
1021       p_day                      IN              hxc_time_building_blocks.start_time%TYPE,
1022       p_resource_id              IN              hxc_time_building_blocks.resource_id%TYPE,
1023       p_resource_type            IN              hxc_time_building_blocks.resource_type%TYPE
1024             DEFAULT hxc_timecard.c_person_resource,
1025       p_comment_text             IN              hxc_time_building_blocks.comment_text%TYPE
1026             DEFAULT NULL,
1027       p_deposit_process          IN              hxc_deposit_processes.NAME%TYPE
1028             DEFAULT g_otl_deposit_process,
1029       p_app_blocks               IN OUT NOCOPY   hxc_block_table_type,
1030       p_app_attributes           IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info,
1031       p_time_building_block_id   OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
1032    );
1033 
1034 --
1035 -- ----------------------------------------------------------------------------
1036 -- |----------------------------< create_time_entry >-------------------------|
1037 -- ----------------------------------------------------------------------------
1038 --
1039 -- {Start Of Comments}
1040 /*#
1041  * Allows creation of a "measure" Time Entry, using the Timecard
1042  * PL/SQL Type Nested Table.
1043  *
1044  * This procedure will take care of creating the corresponding Timecard
1045  * Structure if it doesn't exist yet. Note that this procedure does not
1046  * manipulate any of the database table contents. Only the PL/SQL nested table
1047  * parameters passed into this procedure will be modified. The
1048  * execute_deposit_process API will need to be used to actually update the
1049  * database.
1050  *
1051  * <p><b>Licensing</b><br>
1052  * This API version is licensed for use with Time and Labor.
1053  *
1054  * <p><b>Prerequisites</b><br>
1055  * The resource must exist.
1056  *
1057  * <p><b>Post Success</b><br>
1058  * Time Entry (i.e. Time Building Block of type DETAIL) will have been added to
1059  * the Time Building Block PL/SQL Type Nested Table.
1060  *
1061  * <p><b>Post Failure</b><br>
1062  * Time Entry (i.e. Time Building Block of type DETAIL) will not get added to
1063  * the Time Building Block PL/SQL Type Nested Table and an error will be
1064  * raised.
1065  *
1066  * @param p_measure The actual time recorded in hours.
1067  * @param p_day Day to create the Time Entry.
1068  * @param p_resource_id Resource to which the Time Building Block belongs.
1069  * @param p_resource_type Type of resource, currently we only support 'PERSON'.
1070  * @param p_comment_text Comment to be stored with the Time Entry.
1071  * @param p_deposit_process Deposit process indicates which attribute to
1072  * application mapping should be used to retrieve the Timecard attributes.
1073  * @param p_app_blocks Pass in the Time Building Block PL/SQL Type Nested Table
1074  * to attach the Time Entry to. On success, the Time Building Block created
1075  * will be added to this SQL Type Nested Table.
1076  * @param p_app_attributes Pass in the Time Attribute PL/SQL Type Nested Table
1077  * containing the Time Building Blocks attributes which have already been
1078  * created. This procedure will not modify the table contents.
1079  * @param p_time_building_block_id Uniquely identifies the Time Building Block
1080  * created.
1081  * @rep:displayname Create Measure Time Entry
1082  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1083  * @rep:lifecycle active
1084  * @rep:scope public
1085  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1086 */
1087 --
1088 -- {End Of Comments}
1089 --
1090    PROCEDURE create_time_entry (
1091       p_measure                  IN              hxc_time_building_blocks.measure%TYPE,
1092       p_day                      IN              hxc_time_building_blocks.start_time%TYPE,
1093       p_resource_id              IN              hxc_time_building_blocks.resource_id%TYPE,
1094       p_resource_type            IN              hxc_time_building_blocks.resource_type%TYPE
1095             DEFAULT hxc_timecard.c_person_resource,
1096       p_comment_text             IN              hxc_time_building_blocks.comment_text%TYPE
1097             DEFAULT NULL,
1098       p_deposit_process          IN              hxc_deposit_processes.NAME%TYPE
1099             DEFAULT g_otl_deposit_process,
1100       p_app_blocks               IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info,
1101       p_app_attributes           IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info,
1102       p_time_building_block_id   OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
1103    );
1104 
1105 --
1106 -- ----------------------------------------------------------------------------
1107 -- |----------------------------< create_time_entry >-------------------------|
1108 -- ----------------------------------------------------------------------------
1109 --
1110 -- {Start Of Comments}
1111 /*#
1112  * Allows creation of a "range" Time Entry, using the Timecard SQL
1113  * Type Nested Table.
1114  *
1115  * This is a specialised procedure that allows creation of a Time Entry. This
1116  * procedure will take care of creating the corresponding Timecard Structure if
1117  * it doesn't exist yet. Note that this procedure does not manipulate any of
1118  * the database table contents. Only the PL/SQL nested table parameters passed
1119  * into this procedure will be modified.The execute_deposit_process API will
1120  * need to be used to actually update the database.
1121  *
1122  * <p><b>Licensing</b><br>
1123  * This API version is licensed for use with Time and Labor.
1124  *
1125  * <p><b>Prerequisites</b><br>
1126  * The resource must exist.
1127  *
1128  * <p><b>Post Success</b><br>
1129  * Time Entry (i.e. Time Building Block of type DETAIL) will have been added to
1130  * the Time Building Block SQL Type Nested Table.
1131  *
1132  * <p><b>Post Failure</b><br>
1133  * Time Entry (i.e. Time Building Block of type DETAIL) will not get added to
1134  * the Time Building Block SQL Type Nested Table and an error will be raised.
1135  *
1136  * @param p_start_time The IN time.
1137  * @param p_stop_time The OUT time.
1138  * @param p_resource_id Resource to which the Time Building Block belongs.
1139  * @param p_resource_type Type of resource, currently we only support 'PERSON'.
1140  * @param p_comment_text Comment to be stored with the Time Entry.
1141  * @param p_deposit_process Deposit process indicates which attribute to
1142  * application mapping should be used to retrieve the Timecard attributes.
1143  * @param p_app_blocks Pass in the Time Building Block PL/SQL Type Nested Table
1144  * to attach the Time Entry to. On success, the Time Building Block created
1145  * will be added to this SQL Type Nested Table.
1146  * @param p_app_attributes Pass in the Time Attribute PL/SQL Type Nested Table
1147  * containing the Time Building Blocks attributes which have already been
1148  * created. This procedure will not modify the table contents.
1149  * @param p_time_building_block_id Uniquely identifies the Time Building Block
1150  * created.
1151  * @rep:displayname Create Range Time Entry
1152  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1153  * @rep:lifecycle active
1154  * @rep:scope public
1155  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1156 */
1157 --
1158 -- {End Of Comments}
1159 --
1160    PROCEDURE create_time_entry (
1161       p_start_time               IN              hxc_time_building_blocks.start_time%TYPE,
1162       p_stop_time                IN              hxc_time_building_blocks.start_time%TYPE,
1163       p_resource_id              IN              hxc_time_building_blocks.resource_id%TYPE,
1164       p_resource_type            IN              hxc_time_building_blocks.resource_type%TYPE
1165             DEFAULT hxc_timecard.c_person_resource,
1166       p_comment_text             IN              hxc_time_building_blocks.comment_text%TYPE
1167             DEFAULT NULL,
1168       p_deposit_process          IN              hxc_deposit_processes.NAME%TYPE
1169             DEFAULT g_otl_deposit_process,
1170       p_app_blocks               IN OUT NOCOPY   hxc_block_table_type,
1171       p_app_attributes           IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info,
1172       p_time_building_block_id   OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
1173    );
1174 
1175 --
1176 -- ----------------------------------------------------------------------------
1177 -- |----------------------------< create_time_entry >-------------------------|
1178 -- ----------------------------------------------------------------------------
1179 --
1180 -- {Start Of Comments}
1181 /*#
1182  * Allows creation of a "range" Time Entry, using the Timecard PL/SQL
1183  * Type Nested Table.
1184  *
1185  * Allows creations of a Time Entry. This procedure will take care of creating
1186  * the corresponding Timecard Structure if it doesn't exist yet. Note that this
1187  * procedure does not manipulate any of the database table contents. Only the
1188  * PL/SQL nested table parameters passed into this procedure will be modified.
1189  * The execute_deposit_process API will need to be used to actually update the
1190  * database.
1191  *
1192  * <p><b>Licensing</b><br>
1193  * This API version is licensed for use with Time and Labor.
1194  *
1195  * <p><b>Prerequisites</b><br>
1196  * The resource must exist.
1197  *
1198  * <p><b>Post Success</b><br>
1199  * Time Entry (i.e. Time Building Block of type DETAIL) will have been added to
1200  * the Time Building Block PL/SQL Type Nested Table.
1201  *
1202  * <p><b>Post Failure</b><br>
1203  * Time Entry (i.e. Time Building Block of type DETAIL) will not get added to
1204  * the Time Building Block PL/SQL Type Nested Table and an error will be
1205  * raised.
1206  *
1207  * @param p_start_time The IN time.
1208  * @param p_stop_time The OUT time.
1209  * @param p_resource_id Resource to which the Time Building Block belongs.
1210  * @param p_resource_type Type of resource, currently we only support 'PERSON'.
1211  * @param p_comment_text Comment to be stored with the Time Entry.
1212  * @param p_deposit_process Deposit process indicates which attribute to
1213  * application mapping should be used to retrieve the Timecard attributes.
1214  * @param p_app_blocks Pass in the Time Building Block PL/SQL Type Nested Table
1215  * to attach the Time Entry to. On success, the Time Building Block created
1216  * will be added to this SQL Type Nested Table.
1217  * @param p_app_attributes Pass in the Time Attribute PL/SQL Type Nested Table
1218  * containing the Time Building Blocks attributes which have already been
1219  * created. This procedure will not modify the table contents.
1220  * @param p_time_building_block_id Uniquely identifies the Time Building Block
1221  * created.
1222  * @rep:displayname Create Range Time Entry
1223  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1224  * @rep:lifecycle active
1225  * @rep:scope public
1226  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1227 */
1228 --
1229 -- {End Of Comments}
1230 --
1231    PROCEDURE create_time_entry (
1232       p_start_time               IN              hxc_time_building_blocks.start_time%TYPE,
1233       p_stop_time                IN              hxc_time_building_blocks.start_time%TYPE,
1234       p_resource_id              IN              hxc_time_building_blocks.resource_id%TYPE,
1235       p_resource_type            IN              hxc_time_building_blocks.resource_type%TYPE
1236             DEFAULT hxc_timecard.c_person_resource,
1237       p_comment_text             IN              hxc_time_building_blocks.comment_text%TYPE
1238             DEFAULT NULL,
1239       p_deposit_process          IN              hxc_deposit_processes.NAME%TYPE
1240             DEFAULT g_otl_deposit_process,
1241       p_app_blocks               IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info,
1242       p_app_attributes           IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info,
1243       p_time_building_block_id   OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE
1244    );
1245 
1246 --
1247 -- ----------------------------------------------------------------------------
1248 -- |-----------------------------< create_attribute >-------------------------|
1249 -- ----------------------------------------------------------------------------
1250 --
1251 -- {Start Of Comments}
1252 /*#
1253  * Allows a Time Attribute to be created, using the Time Attribute PL/SQL Type
1254  * Nested Table. Note that this procedure does not manipulate any of the
1255  * database table contents. Only the PL/SQL nested table parameters passed into
1256  * this procedure will be modified. The execute_deposit_process API will need
1257  * to be used to actually update the database.
1258  *
1259  *
1260  * <p><b>Licensing</b><br>
1261  * This API is licensed for use with Time and Labor.
1262  *
1263  * <p><b>Prerequisites</b><br>
1264  * The Time Building Block should already be present in the Timecard PL/SQL
1265  * Table.
1266  *
1267  * <p><b>Post Success</b><br>
1268  * Time Attribute will have been added to the Time Attribute PL/SQL Type Nested
1269  * Table.
1270  *
1271  * <p><b>Post Failure</b><br>
1272  * Time Attribute will not get added to the Time Attribute PL/SQL Type Nested
1273  * Table.
1274  *
1275  * @param p_building_block_id Identifies the Time Building Block to attach the
1276  * Time Attribute too.
1277  * @param p_attribute_name Name of the attribute to be created.
1278  * @param p_attribute_value Value of the attribute to be created.
1279  * @param p_deposit_process Deposit process indicates which attribute to
1280  * application mapping should be used to retrieve the Timecard attributes.
1281  * @param p_attribute_id Uniquely identifies the Time Attribute created.
1282  * @param p_app_attributes Pass in the Time Attribute PL/SQL Type Nested Table
1283  * to attach the Time Attribute to. On success, the Time Attribute created will
1284  * be added to this PL/SQL Type Nested Table.
1285  * @rep:displayname Create Time Attribute
1286  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1287  * @rep:lifecycle active
1288  * @rep:scope public
1289  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1290 */
1291 --
1292 -- {End Of Comments}
1293 --
1294    PROCEDURE create_attribute (
1295       p_building_block_id   IN              hxc_time_building_blocks.time_building_block_id%TYPE,
1296       p_attribute_name      IN              hxc_mapping_components.field_name%TYPE,
1297       p_attribute_value     IN              hxc_time_attributes.attribute1%TYPE,
1298       -- p_category            IN       hxc_bld_blk_info_type_usages.building_block_category%TYPE,
1299       p_deposit_process     IN              hxc_deposit_processes.NAME%TYPE
1300             DEFAULT g_otl_deposit_process,
1301       p_attribute_id        IN              hxc_time_attributes.time_attribute_id%TYPE
1302             DEFAULT NULL,
1303       p_app_attributes      IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info
1304    );
1305 
1306 --
1307 -- ----------------------------------------------------------------------------
1308 -- |--------------------------< update_building_block >-----------------------|
1309 -- ----------------------------------------------------------------------------
1310 --
1311 -- {Start Of Comments}
1312 /*#
1313  * Allows a Time Building Block to be updated, using the Time Building Block
1314  * SQL Type Nested Table.
1315  *
1316  * Note that this procedure does not manipulate any of the database table
1317  * contents. Only the PL/SQL nested table parameters passed into this procedure
1318  * will be modified. The execute_deposit_process API will need to be used to
1319  * actually update the database.
1320  *
1321  * <p><b>Licensing</b><br>
1322  * This API version is licensed for use with Time and Labor.
1323  *
1324  * <p><b>Prerequisites</b><br>
1325  * The Time Building Block to be updated should exist.
1326  *
1327  * <p><b>Post Success</b><br>
1328  * Time Building Block is updated.
1329  *
1330  * <p><b>Post Failure</b><br>
1331  * Time Building Block is not updated.
1332  *
1333  * @param p_building_block_id Identifies the Time Building Block to modify.
1334  * @param p_measure The actual time recorded, only provide when the Time
1335  * Building Block type is 'MEASURE'.
1336  * @param p_unit_of_measure Units of measure for p_measure.
1337  * @param p_start_time The IN time, only required when the Time Building Block
1338  * type is 'RANGE'.
1339  * @param p_stop_time The OUT time, only required when the Time Building Block
1340  * type is 'RANGE'.
1341  * @param p_comment_text Comment to be stored with the Time Building Block.
1342  * @param p_deposit_process Deposit process indicates which attribute to
1343  * application mapping should be used to retrieve the Timecard attributes.
1344  * @param p_app_blocks Pass in the Time Building Block SQL Type Nested Table to
1345  * attach the Time Entry to. On success, the Time Building Block updated will
1346  * be updated in this SQL Type Nested Table.
1347  * @param p_app_attributes Pass in the Time Attribute PL/SQL Type Nested Table
1348  * containing the Time Building Blocks attributes which have already been
1349  * created. This procedure will not modify the table contents.
1350  * @rep:displayname Update Time Building Block
1351  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1352  * @rep:lifecycle active
1353  * @rep:primaryinstance
1354  * @rep:scope public
1355  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1356 */
1357 --
1358 -- {End Of Comments}
1359 --
1360    PROCEDURE update_building_block (
1361       p_building_block_id   IN              hxc_time_building_blocks.time_building_block_id%TYPE,
1362       p_measure             IN              hxc_time_building_blocks.measure%TYPE
1363             DEFAULT hr_api.g_number,
1364       p_unit_of_measure     IN              hxc_time_building_blocks.unit_of_measure%TYPE
1365             DEFAULT hr_api.g_varchar2,
1366       p_start_time          IN              hxc_time_building_blocks.start_time%TYPE
1367             DEFAULT hr_api.g_date,
1368       p_stop_time           IN              hxc_time_building_blocks.stop_time%TYPE
1369             DEFAULT hr_api.g_date,
1370       p_comment_text        IN              hxc_time_building_blocks.comment_text%TYPE
1371             DEFAULT hr_api.g_varchar2,
1372       -- p_time_recipient_id   IN       NUMBER,
1373       p_deposit_process     IN              hxc_deposit_processes.NAME%TYPE
1374             DEFAULT g_otl_deposit_process,
1375       p_app_blocks          IN OUT NOCOPY   hxc_block_table_type,
1376       p_app_attributes      IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info
1377    );
1378 
1379 --
1380 -- ----------------------------------------------------------------------------
1381 -- |--------------------------< update_building_block >-----------------------|
1382 -- ----------------------------------------------------------------------------
1383 --
1384 -- {Start Of Comments}
1385 /*#
1386  * Allows update of a Time Building Block, using the Time Building Block PL/SQL
1387  * Type Nested Table.
1388  *
1389  * Note that this procedure does not manipulate any of the database table
1390  * contents. Only the PL/SQL nested table parameters passed into this procedure
1391  * will be modified. The execute_deposit_process API will need to be used to
1392  * actually update the database.
1393  *
1394  * <p><b>Licensing</b><br>
1395  * This API version is licensed for use with Time and Labor.
1396  *
1397  * <p><b>Prerequisites</b><br>
1398  * The Time Building Block being updated should exist.
1399  *
1400  * <p><b>Post Success</b><br>
1401  * Time Building Block gets updated
1402  *
1403  * <p><b>Post Failure</b><br>
1404  * Time Building Block does not get updated
1405  *
1406  * @param p_building_block_id Identifies the Time Building Block to modify.
1407  * @param p_measure The actual time recorded, only provide when type is
1408  * 'MEASURE'.
1409  * @param p_unit_of_measure Units of measure for p_measure, the default value
1410  * is recommended for most scenarios.
1411  * @param p_start_time The IN time: only provide when type is 'RANGE'.
1412  * @param p_stop_time The OUT time: only provide when type is 'RANGE'.
1413  * @param p_comment_text Comment to be stored with the Time Building Block.
1414  * @param p_deposit_process Deposit process indicates which attribute to
1415  * application mapping should be used to retrieve the Timecard attributes.
1416  * @param p_app_blocks Pass in the Time Building Block PL/SQL Type Nested Table
1417  * to attach the Time Entry to. On success, the Time Building Block updated
1418  * will be in this PL/SQL Type Nested Table.
1419  * @param p_app_attributes Pass in the Time Attribute PL/SQL Type Nested Table
1420  * containing the Time Building Blocks attributes which have already been
1421  * created. This procedure will not modify the table contents.
1422  * @rep:displayname Update Time Building Block
1423  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1424  * @rep:lifecycle active
1425  * @rep:scope public
1426  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1427 */
1428 --
1429 -- {End Of Comments}
1430 --
1431    PROCEDURE update_building_block (
1432       p_building_block_id   IN              hxc_time_building_blocks.time_building_block_id%TYPE,
1433       p_measure             IN              hxc_time_building_blocks.measure%TYPE
1434             DEFAULT hr_api.g_number,
1435       p_unit_of_measure     IN              hxc_time_building_blocks.unit_of_measure%TYPE
1436             DEFAULT hr_api.g_varchar2,
1437       p_start_time          IN              hxc_time_building_blocks.start_time%TYPE
1438             DEFAULT hr_api.g_date,
1439       p_stop_time           IN              hxc_time_building_blocks.stop_time%TYPE
1440             DEFAULT hr_api.g_date,
1441       p_comment_text        IN              hxc_time_building_blocks.comment_text%TYPE
1442             DEFAULT hr_api.g_varchar2,
1443       --  p_time_recipient_id   IN       NUMBER,
1444       p_deposit_process     IN              hxc_deposit_processes.NAME%TYPE
1445             DEFAULT g_otl_deposit_process,
1446       p_app_blocks          IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info,
1447       p_app_attributes      IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info
1448    );
1449 
1450 --
1451 -- ----------------------------------------------------------------------------
1452 -- |-----------------------------< update_attribute >-------------------------|
1453 -- ----------------------------------------------------------------------------
1454 --
1455 -- {Start Of Comments}
1456 /*#
1457  * Allows a Time Attribute to be updated, using the Time Attribute SQL Type
1458  * Nested Table.
1459  *
1460  * Note that this procedure does not manipulate any of the database table
1461  * contents. Only the PL/SQL nested table parameters passed into this procedure
1462  * will be modified. The execute_deposit_process API will need to be used to
1463  * actually update the database.
1464  *
1465  * <p><b>Licensing</b><br>
1466  * This API version is licensed for use with Time and Labor.
1467  *
1468  * <p><b>Prerequisites</b><br>
1469  * The Time Attribute being updated should already exist.
1470  *
1471  * <p><b>Post Success</b><br>
1472  * Time Attribute is updated.
1473  *
1474  * <p><b>Post Failure</b><br>
1475  * Time Attribute is not updated.
1476  *
1477  * @param p_time_attribute_id Identifies the Time Attribute to modify.
1478  * @param p_attribute_name Name of the attribute.
1479  * @param p_attribute_value Value of the attribute.
1480  * @param p_deposit_process Deposit process indicates which attribute to
1481  * application mapping should be used to retrieve the Timecard attributes.
1482  * @param p_app_blocks Pass in the Time Building Block SQL Type Nested Table.
1483  * This procedure does not update the table.
1484  * @param p_app_attributes Pass in the Attribute PL/SQL Nested Table containing
1485  * the attribute to be updated. On success, the Time Attribute updated will be
1486  * updated in this PL/SQL Nested Table.
1487  * @rep:displayname Update Time Attribute
1488  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1489  * @rep:lifecycle active
1490  * @rep:primaryinstance
1491  * @rep:scope public
1492  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1493 */
1494 --
1495 -- {End Of Comments}
1496 --
1497    PROCEDURE update_attribute (
1498       p_time_attribute_id   IN              hxc_time_attributes.time_attribute_id%TYPE,
1499       p_attribute_name      IN              hxc_mapping_components.field_name%TYPE,
1500       p_attribute_value     IN              hxc_time_attributes.attribute1%TYPE
1501             DEFAULT hr_api.g_varchar2,
1502       -- p_category            IN       hxc_bld_blk_info_type_usages.building_block_category%TYPE,
1503       -- p_time_recipient_id   IN       NUMBER,
1504       p_deposit_process     IN              hxc_deposit_processes.NAME%TYPE
1505             DEFAULT g_otl_deposit_process,
1506       p_app_blocks          IN OUT NOCOPY   hxc_block_table_type,
1507       p_app_attributes      IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info
1508    );
1509 
1510 --
1511 -- ----------------------------------------------------------------------------
1512 -- |-----------------------------< update_attribute >-------------------------|
1513 -- ----------------------------------------------------------------------------
1514 --
1515 -- {Start Of Comments}
1516 /*#
1517  * Allows a Time Attribute to be updated, using the Time Attribute PL/SQL Type
1518  * Nested Table.
1519  *
1520  * Note that this procedure does not manipulate any of the database table
1521  * contents. Only the PL/SQL nested table parameters passed into this procedure
1522  * will be modified. The execute_deposit_process API will need to be used to
1523  * actually update the database.
1524  *
1525  * <p><b>Licensing</b><br>
1526  * This API version is licensed for use with Time and Labor.
1527  *
1528  * <p><b>Prerequisites</b><br>
1529  * The Time Attribute being updated should already exist.
1530  *
1531  * <p><b>Post Success</b><br>
1532  * Time Attribute is updated.
1533  *
1534  * <p><b>Post Failure</b><br>
1535  * Time Attribute is not updated.
1536  *
1537  * @param p_time_attribute_id Identifies the Time Attribute to modify.
1538  * @param p_attribute_name Name of the attribute.
1539  * @param p_attribute_value Value of the attribute.
1540  * @param p_deposit_process Deposit process indicates which attribute to
1541  * application mapping should be used to retrieve the Timecard attributes.
1542  * @param p_app_blocks Pass in the Time Building Block PL/SQL Type Nested
1543  * Table. This procedure will not update the table.
1544  * @param p_app_attributes Pass in the Attribute PL/SQL Nested Table containing
1545  * the attribute to update. On success, the Time Attribute updated will be in
1546  * this PL/SQL Nested Table.
1547  * @rep:displayname Update Time Attribute
1548  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1549  * @rep:lifecycle active
1550  * @rep:scope public
1551  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1552 */
1553 --
1554 -- {End Of Comments}
1555 --
1556    PROCEDURE update_attribute (
1557       p_time_attribute_id   IN              hxc_time_attributes.time_attribute_id%TYPE,
1558       p_attribute_name      IN              hxc_mapping_components.field_name%TYPE,
1559       p_attribute_value     IN              hxc_time_attributes.attribute1%TYPE
1560             DEFAULT hr_api.g_varchar2,
1561       -- p_category            IN       hxc_bld_blk_info_type_usages.building_block_category%TYPE,
1562       -- p_time_recipient_id   IN       NUMBER,
1563       p_deposit_process     IN              hxc_deposit_processes.NAME%TYPE
1564             DEFAULT g_otl_deposit_process,
1565       p_app_blocks          IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info,
1566       p_app_attributes      IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info
1567    );
1568 
1569 --
1570 -- ----------------------------------------------------------------------------
1571 -- |-----------------------------< delete_detail_bb >-------------------------|
1572 -- ----------------------------------------------------------------------------
1573 --
1574 -- {Start Of Comments}
1575 /*#
1576  * Allows a Detail Time Building Block to be deleted, using the Time Building
1577  * Block SQL Type Nested Table.
1578  *
1579  * Note that this procedure does not manipulate any of the database table
1580  * contents. Only the PL/SQL nested table parameters passed into this procedure
1581  * will be modified. The execute_deposit_process API will need to be used to
1582  * actually update the database.
1583  *
1584  * <p><b>Licensing</b><br>
1585  * This API version is licensed for use with Time and Labor.
1586  *
1587  * <p><b>Prerequisites</b><br>
1588  * None
1589  *
1590  * <p><b>Post Success</b><br>
1591  * The Time Building Block is deleted from the Timecard.
1592  *
1593  * <p><b>Post Failure</b><br>
1594  * The Time Building Block is not deleted from the Timecard.
1595  *
1596  * @param p_building_block_id Identifies the Time Building Block to delete.
1597  * @param p_deposit_process Deposit process indicates which attribute to
1598  * application mapping should be used to retrieve the Timecard attributes.
1599  * @param p_effective_date Date at which the delete becomes effective, the
1600  * default value is recommended for most scenarios.
1601  * @param p_app_blocks Pass in the Time Building Block SQL Type Nested Table to
1602  * attach the Time Entry to. On success, the Time Building Block deleted will
1603  * be removed from this SQL Type Nested Table.
1604  * @param p_app_attributes Pass in the Time Attribute PL/SQL Type Nested Table
1605  * containing the Time Building Blocks attributes which have already been
1606  * created. This procedure will not modify the table contents.
1607  * @rep:displayname Delete Detail Time Building Block
1608  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1609  * @rep:lifecycle active
1610  * @rep:primaryinstance
1611  * @rep:scope public
1612  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1613 */
1614 --
1615 -- {End Of Comments}
1616 --
1617    PROCEDURE delete_detail_bb (
1618       p_building_block_id   IN              hxc_time_building_blocks.time_building_block_id%TYPE,
1619       -- p_time_recipient_id   IN       NUMBER,
1620       p_deposit_process     IN              hxc_deposit_processes.NAME%TYPE
1621             DEFAULT g_otl_deposit_process,
1622       p_effective_date      IN              hxc_time_building_blocks.stop_time%TYPE
1623             DEFAULT SYSDATE,
1624       p_app_blocks          IN OUT NOCOPY   hxc_block_table_type,
1625       p_app_attributes      IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info
1626    );
1627 
1628 --
1629 -- ----------------------------------------------------------------------------
1630 -- |-----------------------------< delete_detail_bb >-------------------------|
1631 -- ----------------------------------------------------------------------------
1632 --
1633 -- {Start Of Comments}
1634 /*#
1635  * Allows a Detail Time Building Block to be deleted, using the Time Building
1636  * Block PL/SQL Type Nested Table.
1637  *
1638  * Note that this procedure does not manipulate any of the database table
1639  * contents. Only the PL/SQL nested table parameters passed into this procedure
1640  * will be modified. The execute_deposit_process API will need to be used to
1641  * actually update the database.
1642  *
1643  * <p><b>Licensing</b><br>
1644  * This API version is licensed for use with Time and Labor.
1645  *
1646  * <p><b>Prerequisites</b><br>
1647  * None
1648  *
1649  * <p><b>Post Success</b><br>
1650  * The Time Building Block is deleted from the Timecard.
1651  *
1652  * <p><b>Post Failure</b><br>
1653  * The Time Building Block is not deleted from the Timecard.
1654  *
1655  * @param p_building_block_id Identifies the Time Building Block to delete.
1656  * @param p_deposit_process Deposit process indicates which attribute to
1657  * application mapping should be used to retrieve the Timecard attributes.
1658  * @param p_effective_date Date at which the delete becomes effective, the
1659  * default value is recommended for most scenarios.
1660  * @param p_app_blocks Pass in the Time Building Block PL/SQL Type Nested Table
1661  * to attach the Time Entry to. On success, the Time Building Block deleted
1662  * will be removed from this PL/SQL Type Nested Table.
1663  * @param p_app_attributes Pass in the Time Attribute PL/SQL Type Nested Table
1664  * containing the Time Building Blocks attributes which have already been
1665  * created. This procedure will not modify the table contents.
1666  * @rep:displayname Delete Detail Time Building Block
1667  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1668  * @rep:lifecycle active
1669  * @rep:scope public
1670  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1671 */
1672 --
1673 -- {End Of Comments}
1674 --
1675    PROCEDURE delete_detail_bb (
1676       p_building_block_id   IN              hxc_time_building_blocks.time_building_block_id%TYPE,
1677       -- p_time_recipient_id   IN       NUMBER,
1678       p_deposit_process     IN              hxc_deposit_processes.NAME%TYPE
1679             DEFAULT g_otl_deposit_process,
1680       p_effective_date      IN              hxc_time_building_blocks.stop_time%TYPE
1681             DEFAULT SYSDATE,
1682       p_app_blocks          IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info,
1683       p_app_attributes      IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info
1684    );
1685 
1686 --
1687 -- ----------------------------------------------------------------------------
1688 -- |-----------------------------< delete_timecard >--------------------------|
1689 -- ----------------------------------------------------------------------------
1690 --
1691 -- {Start Of Comments}
1692 /*#
1693  * Deletes the entire Timecard.
1694  *
1695  *
1696  * <p><b>Licensing</b><br>
1697  * This API is licensed for use with Time and Labor.
1698  *
1699  * <p><b>Prerequisites</b><br>
1700  * None
1701  *
1702  * <p><b>Post Success</b><br>
1703  * Timecard is deleted.
1704  *
1705  * <p><b>Post Failure</b><br>
1706  * Timecard is not deleted.
1707  *
1708  * @param p_building_block_id Identifies the Timecard to deleted.
1709  * @param p_mode Delete mode, the default value is recommended for most
1710  * scenarios.
1711  * @param p_deposit_process Obsolete parameter, do not use.
1712  * @param p_retrieval_process Obsolete parameter, do not use.
1713  * @param p_effective_date Date at which the delete becomes effective, the
1714  * default value is recommended for most scenarios.
1715  * @param p_template Set to 'Y' if deleting a template, else use 'N'
1716  * (=Default).
1717  * @rep:displayname Delete Timecard
1718  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1719  * @rep:lifecycle active
1720  * @rep:scope public
1721  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1722 */
1723 --
1724 -- {End Of Comments}
1725 --
1726    PROCEDURE delete_timecard (
1727       p_building_block_id   IN   hxc_time_building_blocks.time_building_block_id%TYPE,
1728       p_mode                IN   VARCHAR2 DEFAULT hxc_timecard.c_delete,
1729       p_deposit_process     IN   hxc_deposit_processes.NAME%TYPE
1730             DEFAULT g_otl_deposit_process,
1731       p_retrieval_process   IN   VARCHAR2 DEFAULT NULL,
1732       p_effective_date      IN   hxc_time_building_blocks.stop_time%TYPE
1733             DEFAULT SYSDATE,
1734       p_template            IN   VARCHAR2 DEFAULT hxc_timecard.c_no
1735    );
1736 
1737 --
1738 -- ----------------------------------------------------------------------------
1739 -- |-------------------------< execute_deposit_process >----------------------|
1740 -- ----------------------------------------------------------------------------
1741 --
1742 -- {Start Of Comments}
1743 /*#
1744  * Deposits the Timecard in the TimeStore, using the Timecard SQL Type Nested
1745  * Table.
1746  *
1747  *
1748  * <p><b>Licensing</b><br>
1749  * This API version is licensed for use with Time and Labor.
1750  *
1751  * <p><b>Prerequisites</b><br>
1752  * None
1753  *
1754  * <p><b>Post Success</b><br>
1755  * The Timecard will be deposited into the TimeStore.
1756  *
1757  * <p><b>Post Failure</b><br>
1758  * The Timecard will not be deposited in the TimeStore, error messages will be
1759  * logged in the message table out parameter.
1760  *
1761  * @param p_validate If true, then validation alone will be performed and the
1762  * database will remain unchanged. If false and all validation checks pass,
1763  * then the database will be modified.
1764  * @param p_mode Mode must be set to 'SUBMIT', 'SAVE', 'MIGRATION',
1765  * 'FORCE_SAVE' or 'FORCE_SUBMIT'.
1766  * @param p_deposit_process Process to be used for deposit.
1767  * @param p_retrieval_process Process to be used for retrieval, only use if
1768  * mode = 'MIGRATION'.
1769  * @param p_app_attributes Attributes to deposit.
1770  * @param p_app_blocks Time Building Blocks to deposit.
1771  * @param p_messages Contains all the messages raised during the execution of
1772  * this procedure.
1773  * @param p_timecard_id Uniquely identifies the created Timecard.
1774  * @param p_timecard_ovn Set to the object version number of the created
1775  * Timecard.
1776  * @param p_template Set to 'Y' if creating a template, else set to 'N'
1777  * (default).
1778  * @param p_item_type Workflow item type which contains the timecard approval
1779  * process, the default value is recommended for most scenarios.
1780  * @param p_approval_prc Workflow process name that corresponds to the timecard
1781  * approval process, the default value is recommended for most scenarios.
1782  * @param p_process_terminated_employees Flag that can be used to indicate
1783  * whether you are also trying to upload timecard for terminated employees.
1784  * @param p_approve_term_emps_on_submit Flag that can be used to indicate
1785  * whether you want to approve the timecards of terminated employees when
1786  * submitting.  This parameter is ignored when p_process_terminated_employees is
1787  * FALSE.
1788  * @rep:displayname Execute Deposit Process
1789  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1790  * @rep:lifecycle active
1791  * @rep:primaryinstance
1792  * @rep:scope public
1793  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1794 */
1795 --
1796 -- {End Of Comments}
1797 --
1798    PROCEDURE execute_deposit_process (
1799       p_validate                       IN              BOOLEAN DEFAULT FALSE,
1800       p_mode                           IN              VARCHAR2,
1801       p_deposit_process                IN              VARCHAR2,
1802       p_retrieval_process              IN              VARCHAR2 DEFAULT NULL,
1803       -- p_add_security        IN              BOOLEAN DEFAULT TRUE,
1804       p_app_attributes                 IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info,
1805       p_app_blocks                     IN OUT NOCOPY   hxc_block_table_type,
1806       -- hxc_self_service_time_deposit.timecard_info,
1807       p_messages                       OUT NOCOPY      hxc_message_table_type,
1808       -- hxc_self_service_time_deposit.message_table,
1809       p_timecard_id                    OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE,
1810       p_timecard_ovn                   OUT NOCOPY      hxc_time_building_blocks.object_version_number%TYPE,
1811       p_template                       IN              VARCHAR2
1812             DEFAULT hxc_timecard.c_no,
1813       p_item_type                      IN              wf_items.item_type%TYPE
1814             DEFAULT 'HXCEMP',
1815       p_approval_prc                   IN              wf_process_activities.process_name%TYPE
1816             DEFAULT 'HXC_APPROVAL',
1817       p_process_terminated_employees   IN              BOOLEAN DEFAULT FALSE,
1818       p_approve_term_emps_on_submit    IN              BOOLEAN DEFAULT FALSE
1819    );
1820 
1821 --
1822 -- ----------------------------------------------------------------------------
1823 -- |-------------------------< execute_deposit_process >----------------------|
1824 -- ----------------------------------------------------------------------------
1825 --
1826 -- {Start Of Comments}
1827 /*#
1828  * Allow a Timecard to be deposited in the TimeStore, using the Timecard PL/SQL
1829  * Type Nested Table.
1830  *
1831  *
1832  * <p><b>Licensing</b><br>
1833  * This API version is licensed for use with Time and Labor.
1834  *
1835  * <p><b>Prerequisites</b><br>
1836  * None
1837  *
1838  * <p><b>Post Success</b><br>
1839  * The Timecard will be deposited into the TimeStore.
1840  *
1841  * <p><b>Post Failure</b><br>
1842  * The Timecard will not be deposited into the TimeStore, error messages will
1843  * be logged in the message table out parameter.
1844  *
1845  * @param p_validate If true, then validation alone will be performed and the
1846  * database will remain unchanged. If false and all validation checks pass,
1847  * then the database will be modified.
1848  * @param p_mode Mode must be set to 'SUBMIT', 'SAVE', 'MIGRATION',
1849  * 'FORCE_SAVE' or 'FORCE_SUBMIT'.
1850  * @param p_deposit_process Process to be used for deposit.
1851  * @param p_retrieval_process Process to be used for retrieval, only use if
1852  * mode = 'MIGRATION'.
1853  * @param p_app_attributes Attributes to deposit.
1854  * @param p_app_blocks Time Building Blocks to deposit.
1855  * @param p_messages Contains all the messages raised during the execution of
1856  * this procedure.
1857  * @param p_timecard_id Uniquely identifies the created Timecard.
1858  * @param p_timecard_ovn Set to the object version number of the created
1859  * Timecard.
1860  * @param p_template Set to 'Y' if creating a template, else set to 'N'
1861  * (default).
1862  * @param p_item_type Workflow item type which contains the timecard approval
1863  * process, the default value is recommended for most scenarios.
1864  * @param p_approval_prc Workflow process name that corresponds to the timecard
1865  * approval process, the default value is recommended for most scenarios.
1866  * @param p_process_terminated_employees Flag that can be used to indicate
1867  * whether you are also trying to upload timecard for terminated employees.
1868  * @param p_approve_term_emps_on_submit Flag that can be used to indicate
1869  * whether you want to approve the timecards of terminated employees when
1870  * submitting.  This parameter is ignored when p_process_terminated_employees is
1871  * FALSE.
1872  * @rep:displayname Execute Deposit Process
1873  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1874  * @rep:lifecycle active
1875  * @rep:scope public
1876  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1877 */
1878 --
1879 -- {End Of Comments}
1880 --
1881    PROCEDURE execute_deposit_process (
1882       p_validate                       IN              BOOLEAN DEFAULT FALSE,
1883       p_mode                           IN              VARCHAR2,
1884       p_deposit_process                IN              VARCHAR2,
1885       p_retrieval_process              IN              VARCHAR2 DEFAULT NULL,
1886       -- p_add_security        IN              BOOLEAN DEFAULT TRUE,
1887       p_app_attributes                 IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info,
1888       p_app_blocks                     IN OUT NOCOPY   hxc_self_service_time_deposit.timecard_info,
1889       p_messages                       OUT NOCOPY      hxc_self_service_time_deposit.message_table,
1890       p_timecard_id                    OUT NOCOPY      hxc_time_building_blocks.time_building_block_id%TYPE,
1891       p_timecard_ovn                   OUT NOCOPY      hxc_time_building_blocks.object_version_number%TYPE,
1892       p_template                       IN              VARCHAR2
1893             DEFAULT hxc_timecard.c_no,
1894       p_item_type                      IN              wf_items.item_type%TYPE
1895             DEFAULT 'HXCEMP',
1896       p_approval_prc                   IN              wf_process_activities.process_name%TYPE
1897             DEFAULT 'HXC_APPROVAL',
1898       p_process_terminated_employees   IN              BOOLEAN DEFAULT FALSE,
1899       p_approve_term_emps_on_submit    IN              BOOLEAN DEFAULT FALSE
1900    );
1901 
1902 --
1903 -- ----------------------------------------------------------------------------
1904 -- |------------------------< clear_building_block_table >--------------------|
1905 -- ----------------------------------------------------------------------------
1906 --
1907 -- {Start Of Comments}
1908 /*#
1909  * Clears the Time Building Block SQL Type Nested Table.
1910  *
1911  * Note that this procedure does not manipulate any of the database table
1912  * contents. Only the PL/SQL nested table parameters passed into this procedure
1913  * will be cleared.
1914  *
1915  * <p><b>Licensing</b><br>
1916  * This API is licensed for use with Time and Labor.
1917  *
1918  * <p><b>Prerequisites</b><br>
1919  * None
1920  *
1921  * <p><b>Post Success</b><br>
1922  * The Nested Table is cleared.
1923  *
1924  * <p><b>Post Failure</b><br>
1925  * The Nested Table is not cleared.
1926  *
1927  * @param p_app_blocks Timecard SQL Type Nested Table to be cleared.
1928  * @rep:displayname Clear Time Building Block Table
1929  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1930  * @rep:lifecycle active
1931  * @rep:scope public
1932  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1933 */
1934 --
1935 -- {End Of Comments}
1936 --
1937    PROCEDURE clear_building_block_table (
1938       p_app_blocks   IN OUT NOCOPY   hxc_block_table_type
1939    );
1940 
1941 --
1942 -- ----------------------------------------------------------------------------
1943 -- |--------------------------< clear_attribute_table >-----------------------|
1944 -- ----------------------------------------------------------------------------
1945 --
1946 -- {Start Of Comments}
1947 /*#
1948  * Clears a Time Attribute PL/SQL Type Nested Table.
1949  *
1950  * Note that this procedure does not manipulate any of the database table
1951  * contents. Only the PL/SQL nested table parameters passed into this procedure
1952  * will be cleared.
1953  *
1954  * <p><b>Licensing</b><br>
1955  * This API is licensed for use with Time and Labor.
1956  *
1957  * <p><b>Prerequisites</b><br>
1958  * None
1959  *
1960  * <p><b>Post Success</b><br>
1961  * The Nested Table is cleared.
1962  *
1963  * <p><b>Post Failure</b><br>
1964  * The Nested Table is not cleared.
1965  *
1966  * @param p_app_attributes Time Atrribute PL/SQL Table to be cleared.
1967  * @rep:displayname Clear Time Attribute Table
1968  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
1969  * @rep:lifecycle active
1970  * @rep:scope public
1971  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
1972 */
1973 --
1974 -- {End Of Comments}
1975 --
1976    PROCEDURE clear_attribute_table (
1977       p_app_attributes   IN OUT NOCOPY   hxc_self_service_time_deposit.app_attributes_info
1978    );
1979 
1980 --
1981 -- ----------------------------------------------------------------------------
1982 -- |---------------------------< clear_message_table >------------------------|
1983 -- ----------------------------------------------------------------------------
1984 --
1985 -- {Start Of Comments}
1986 /*#
1987  * Clears a Message PL/SQL Type Nested Table.
1988  *
1989  * Note that this procedure does not manipulate any of the database table
1990  * contents. Only the PL/SQL nested table parameters passed into this procedure
1991  * will be cleared.
1992  *
1993  * <p><b>Licensing</b><br>
1994  * This API is licensed for use with Time and Labor.
1995  *
1996  * <p><b>Prerequisites</b><br>
1997  * None
1998  *
1999  * <p><b>Post Success</b><br>
2000  * The Nested Table is cleared.
2001  *
2002  * <p><b>Post Failure</b><br>
2003  * The Nested Table is not cleared.
2004  *
2005  * @param p_messages Message PL/SQL Table to be cleared.
2006  * @rep:displayname Clear Message Table
2007  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
2008  * @rep:lifecycle active
2009  * @rep:scope public
2010  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
2011 */
2012 --
2013 -- {End Of Comments}
2014 --
2015    PROCEDURE clear_message_table (
2016       p_messages   IN OUT NOCOPY   hxc_message_table_type
2017    );
2018 
2019 --
2020 -- ----------------------------------------------------------------------------
2021 -- |-------------------------------< log_timecard >---------------------------|
2022 -- ----------------------------------------------------------------------------
2023 --
2024 -- {Start Of Comments}
2025 /*#
2026  * A debug helper procedure for logging a Timecard SQL Type Nested Table.
2027  *
2028  * Use this procedure when you need to verify the content of the Timecard SQL
2029  * Type Nested Table and the corresponding Timecard Attributes.When you use
2030  * this procedure it will write the content of the passed in Timecard and
2031  * Attributes into the fnd_log_messages table.
2032  *
2033  * <p><b>Licensing</b><br>
2034  * This API version is licensed for use with Time and Labor.
2035  *
2036  * <p><b>Prerequisites</b><br>
2037  * None
2038  *
2039  * <p><b>Post Success</b><br>
2040  * The Timecard will be logged.
2041  *
2042  * <p><b>Post Failure</b><br>
2043  * The Timecard will not be logged.
2044  *
2045  * @param p_app_blocks Timecard SQL Type Nested Table to log.
2046  * @param p_app_attributes Corresponding Time Attributes to log.
2047  * @rep:displayname Log Timecard
2048  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
2049  * @rep:lifecycle active
2050  * @rep:primaryinstance
2051  * @rep:scope public
2052  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
2053 */
2054 --
2055 -- {End Of Comments}
2056 --
2057    PROCEDURE log_timecard (
2058       p_app_blocks       IN   hxc_block_table_type,
2059       p_app_attributes   IN   hxc_self_service_time_deposit.app_attributes_info
2060    );
2061 
2062 --
2063 -- ----------------------------------------------------------------------------
2064 -- |-------------------------------< log_timecard >---------------------------|
2065 -- ----------------------------------------------------------------------------
2066 --
2067 -- {Start Of Comments}
2068 /*#
2069  * A debug helper procedure for logging a Timecard PL/SQL Type Nested Table.
2070  *
2071  * Use this procedure when you need to verify the content of the Timecard
2072  * PL/SQL Type Nested Table and the corresponding Timecard Attributes.When you
2073  * use this procedure it will write the content of the passed in Timecard and
2074  * Attributes into the fnd_log_messages table.
2075  *
2076  * <p><b>Licensing</b><br>
2077  * This API version is licensed for use with Time and Labor.
2078  *
2079  * <p><b>Prerequisites</b><br>
2080  * None
2081  *
2082  * <p><b>Post Success</b><br>
2083  * The Timecard will be logged.
2084  *
2085  * <p><b>Post Failure</b><br>
2086  * The Timecard will not be logged.
2087  *
2088  * @param p_app_blocks Timecard PL/SQL Type Nested Table to log.
2089  * @param p_app_attributes Corresponding Time Attributes to log.
2090  * @rep:displayname Log Timecard
2091  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
2092  * @rep:lifecycle active
2093  * @rep:scope public
2094  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
2095 */
2096 --
2097 -- {End Of Comments}
2098 --
2099    PROCEDURE log_timecard (
2100       p_app_blocks       IN   hxc_self_service_time_deposit.timecard_info,
2101       p_app_attributes   IN   hxc_self_service_time_deposit.app_attributes_info
2102    );
2103 
2104 --
2105 -- ----------------------------------------------------------------------------
2106 -- |-------------------------------< log_messages >---------------------------|
2107 -- ----------------------------------------------------------------------------
2108 --
2109 -- {Start Of Comments}
2110 /*#
2111  * A debug helper procedure for logging a Message SQL Type Nested Table.
2112  *
2113  * Use this procedure when you need to verify the content of the Message SQL
2114  * Type Nested Table. When you use this procedure it will write the content of
2115  * the passed in Message SQL Type Nested Table into the fnd_log_messages table.
2116  *
2117  * <p><b>Licensing</b><br>
2118  * This API version is licensed for use with Time and Labor.
2119  *
2120  * <p><b>Prerequisites</b><br>
2121  * None
2122  *
2123  * <p><b>Post Success</b><br>
2124  * The Messages will be logged.
2125  *
2126  * <p><b>Post Failure</b><br>
2127  * The Messages will not be logged.
2128  *
2129  * @param p_messages Message SQL Type Nested Table to log.
2130  * @rep:displayname Log Messages
2131  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
2132  * @rep:lifecycle active
2133  * @rep:primaryinstance
2134  * @rep:scope public
2135  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
2136 */
2137 --
2138 -- {End Of Comments}
2139 --
2140    PROCEDURE log_messages (p_messages IN hxc_message_table_type);
2141 
2142 --
2143 -- ----------------------------------------------------------------------------
2144 -- |-------------------------------< log_messages >---------------------------|
2145 -- ----------------------------------------------------------------------------
2146 --
2147 -- {Start Of Comments}
2148 /*#
2149  * A debug helper procedure for logging a Message PL/SQL Type Nested Table.
2150  *
2151  * Use this procedure when you need to verify the content of the Message PL/SQL
2152  * Type Nested Table. When you use this procedure it will write the content of
2153  * the passed in Message PL/SQL Type Nested Table into the fnd_log_messages
2154  * table.
2155  *
2156  * <p><b>Licensing</b><br>
2157  * This API version is licensed for use with Time and Labor.
2158  *
2159  * <p><b>Prerequisites</b><br>
2160  * None
2161  *
2162  * <p><b>Post Success</b><br>
2163  * The Messages will be logged.
2164  *
2165  * <p><b>Post Failure</b><br>
2166  * The Messages will not be logged.
2167  *
2168  * @param p_messages Message PL/SQL Type Nested Table to log.
2169  * @rep:displayname Log Messages
2170  * @rep:category BUSINESS_ENTITY HXC_TIMECARD
2171  * @rep:lifecycle active
2172  * @rep:scope public
2173  * @rep:metalink 223987.1 OTL HXC TimeStore Deposit
2174 */
2175 --
2176 -- {End Of Comments}
2177 --
2178    PROCEDURE log_messages (
2179       p_messages   IN   hxc_self_service_time_deposit.message_table
2180    );
2181 END hxc_timestore_deposit;