DBA Data[Home] [Help]

PACKAGE: APPS.PQP_UTILITIES

Source


1 PACKAGE pqp_utilities AS
2 /* $Header: pqputifn.pkh 120.10.12000000.1 2007/01/16 04:29:24 appldev noship $ */
3 
4 
5   hr_application_error          EXCEPTION;
6   PRAGMA EXCEPTION_INIT(hr_application_error, -20001);
7 
8 
9   g_nested_level                NUMBER(5) := 0;
10   g_debug_timestamps            BOOLEAN := FALSE;
11   g_debug_entry_exits_only      BOOLEAN := FALSE;
12   g_debug                       BOOLEAN := hr_utility.debug_enabled;
13 
14 
15 
16 
17 
18 TYPE t_tbls IS RECORD(
19     table_name                    pay_user_tables.user_table_name%TYPE
20    ,column_name                  pay_user_columns.user_column_name%TYPE
21   );
22 
23  TYPE t_cached_tbls IS TABLE OF t_tbls
24     INDEX BY BINARY_INTEGER;
25 
26   g_cached_tbls                     t_cached_tbls;
27 
28 
29 
30   TYPE t_cached_udt IS TABLE OF pay_user_tables.user_table_name%TYPE
31     INDEX BY BINARY_INTEGER;
32 
33   g_cached_udts                 t_cached_udt;
34 
35   TYPE t_udt_rec IS RECORD(
36     table_name                    pay_user_tables.user_table_name%TYPE
37    , -- Comment
38      column_name                  pay_user_columns.user_column_name%TYPE
39    ,row_name                      pay_user_rows_f.row_low_range_or_name%TYPE
40    ,row_high_range                pay_user_rows_f.row_high_range%TYPE
41    ,matrix_value                  pay_user_column_instances_f.VALUE%TYPE
42    ,start_date                    DATE
43    ,end_date                      DATE
44   );
45 
46   TYPE temp_rec IS RECORD
47    (
48      hash_string VARCHAR2(200)
49     );
50 
51   TYPE t_temp_rec IS TABLE OF temp_rec
52   INDEX BY BINARY_INTEGER;
53   g_hash_keys t_temp_rec;
54 
55 
56 
57   -- Added by akarmaka
58   -- global cache pointer  record structure.This is used
59   -- as template for hash-buckets.
60   TYPE t_cached_udt_bucket_rec IS RECORD
61   (
62     table_name         pay_user_tables.user_table_name%TYPE
63    ,business_group_id  NUMBER(15)
64    ,start_index        NUMBER (15)
65    ,rec_count          NUMBER(15)
66    );
67 
68 
69 
70   TYPE t_cached_udt_bucket IS TABLE OF t_cached_udt_bucket_rec
71     INDEX BY BINARY_INTEGER;
72    g_cached_udt        t_cached_udt_bucket;
73 -- four hash buckets for the cached UDTs
74   g_cached_udt0        t_cached_udt_bucket;
75   g_cached_udt1        t_cached_udt_bucket;
76   g_cached_udt2        t_cached_udt_bucket;
77   g_cached_udt3        t_cached_udt_bucket;
78 
79 --
80     TYPE r_config_values IS RECORD (
81           configuration_value_id        NUMBER,
82           pcv_information1              pqp_configuration_values.pcv_information1%TYPE,
83           pcv_information2              pqp_configuration_values.pcv_information2%TYPE,
84           pcv_information3              pqp_configuration_values.pcv_information3%TYPE,
85           pcv_information4              pqp_configuration_values.pcv_information4%TYPE,
86           pcv_information5              pqp_configuration_values.pcv_information5%TYPE,
87           pcv_information6              pqp_configuration_values.pcv_information6%TYPE,
88           pcv_information7              pqp_configuration_values.pcv_information7%TYPE,
89           pcv_information8              pqp_configuration_values.pcv_information8%TYPE,
90           pcv_information9              pqp_configuration_values.pcv_information9%TYPE,
91           pcv_information10             pqp_configuration_values.pcv_information10%TYPE,
92           pcv_information11             pqp_configuration_values.pcv_information11%TYPE,
93           pcv_information12             pqp_configuration_values.pcv_information12%TYPE,
94           pcv_information13             pqp_configuration_values.pcv_information13%TYPE,
95           pcv_information14             pqp_configuration_values.pcv_information14%TYPE,
96           pcv_information15             pqp_configuration_values.pcv_information15%TYPE,
97           pcv_information16             pqp_configuration_values.pcv_information16%TYPE,
98           pcv_information17             pqp_configuration_values.pcv_information17%TYPE,
99           pcv_information18             pqp_configuration_values.pcv_information18%TYPE,
100           pcv_information19             pqp_configuration_values.pcv_information19%TYPE,
101           pcv_information20             pqp_configuration_values.pcv_information20%TYPE
102           );
103 
104       TYPE t_config_values IS TABLE OF r_config_values
105       INDEX BY BINARY_INTEGER;
106 --
107   -- added by kkarri
108   TYPE r_all_segment_values IS RECORD
109         (
110         segment_column_value1      VARCHAR2(80)
111         ,segment_column_value2     VARCHAR2(80)
112         ,segment_column_value3     VARCHAR2(80)
113         ,segment_column_value4     VARCHAR2(80)
114         ,segment_column_value5     VARCHAR2(80)
115         ,segment_column_value6     VARCHAR2(80)
116         ,segment_column_value7     VARCHAR2(80)
117         ,segment_column_value8     VARCHAR2(80)
118         ,segment_column_value9     VARCHAR2(80)
119         ,segment_column_value10    VARCHAR2(80)
120         ,segment_column_value11    VARCHAR2(80)
121         ,segment_column_value12    VARCHAR2(80)
122         ,segment_column_value13    VARCHAR2(80)
123         ,segment_column_value14    VARCHAR2(80)
124         ,segment_column_value15    VARCHAR2(80)
125         ,segment_column_value16    VARCHAR2(80)
126         ,segment_column_value17    VARCHAR2(80)
127         ,segment_column_value18    VARCHAR2(80)
128         ,segment_column_value19    VARCHAR2(80)
129         ,segment_column_value20    VARCHAR2(80)
130         ,segment_column_value21    VARCHAR2(80)
131         ,segment_column_value22    VARCHAR2(80)
132         ,segment_column_value23    VARCHAR2(80)
133         ,segment_column_value24    VARCHAR2(80)
134         ,segment_column_value25    VARCHAR2(80)
135         ,segment_column_value26    VARCHAR2(80)
136         ,segment_column_value27    VARCHAR2(80)
137         ,segment_column_value28    VARCHAR2(80)
138         ,segment_column_value29    VARCHAR2(80)
139         ,segment_column_value30    VARCHAR2(80)
140         );
141   PROCEDURE get_config_type_values
142     (
143      p_configuration_type   IN              VARCHAR2
144     ,p_business_group_id    IN              NUMBER
145     ,p_legislation_code     IN              VARCHAR2
146     ,p_tab_config_values    OUT NOCOPY      t_config_values
147     );
148 
149 --
150   TYPE t_udt_array IS TABLE OF t_udt_rec
151     INDEX BY BINARY_INTEGER;
152 
153   g_udt_rec                     t_udt_array;
154 
155 -- Added by : rtahilia
156 -- Date : 04/04/2003
157 -- Record type to store merged event dates and update types
158   TYPE event_details_record_type IS RECORD(
159     event_date                    DATE
160    ,update_type                   pay_datetracked_events.update_type%TYPE
161   );
162 
163 -- Added by : rtahilia
164 -- Date : 04/04/2003
165 -- PL/SQL table type to store merged event dates and update types
166   TYPE t_event_details_table_type IS TABLE OF event_details_record_type
167     INDEX BY BINARY_INTEGER;
168 
169 --
170 -- Cursor to get Data Type for a given Table Name and column Name
171   CURSOR csr_data_type(p_tab_nam IN VARCHAR2, p_col_nam IN VARCHAR2)
172   IS
173     SELECT fc.column_type data_type
174     FROM   fnd_tables ft, fnd_columns fc
175     WHERE  ft.table_id = fc.table_id
176     AND    ft.application_id = fc.application_id
177     -- 801-PAY, 800-PER, 805-BEN, 8303-PQP, 8302-PQH, 0-FND, 804-SSP
178     AND    ft.application_id IN (801,800,805,8303,8302,0,804)
179     AND    ft.table_name = p_tab_nam
180     AND    fc.column_name = p_col_nam;
181 
182 -- Cursor to get Segment Name for a flex name, context and flex field title.
183   CURSOR csr_seg_name(
184     p_flex_name                 IN       VARCHAR2
185    ,p_flex_context              IN       VARCHAR2
186    ,p_flex_field_title          IN       VARCHAR2
187   )
188   IS
189     SELECT application_column_name
190     FROM   fnd_descr_flex_col_usage_vl
191     WHERE  descriptive_flexfield_name = p_flex_name
192     -- Added for performance fix 3166903
193     -- 801-PAY, 800-PER, 805-BEN, 8303-PQP, 8302-PQH, 0-FND, 804-SSP
194     AND    application_id IN (801,800,805,8303,8302,0,804)
195     AND    descriptive_flex_context_code = p_flex_context
196     AND    end_user_column_name = p_flex_field_title;
197 
198 -- Need to check for FORM_LEFT_PROMPT?
199 
200 -- Cursor to get Table Name associated with a Flex Field
201   CURSOR csr_tab_name(p_flex_name IN VARCHAR2)
202   IS
203     SELECT application_table_name
204     FROM   fnd_descriptive_flexs
205     WHERE application_id IN (801,800,805,8303,8302,0)
206       AND descriptive_flexfield_name = p_flex_name;
207 
208 -- Need to check for Title?
209 
210 -- Cursor to check whether Multiple Ocurances of EIT information
211 -- type is allowed
212   CURSOR csr_mult_occur(p_information_type IN VARCHAR2)
213   IS
214     SELECT multiple_occurences_flag
215     FROM   pay_element_type_info_types
216     WHERE  information_type = p_information_type
217            AND active_inactive_flag = 'Y';
218 
219 -- Cursor to get Element type id for a given element Name.
220   CURSOR csr_element_type(
221     p_element_type_name         IN       VARCHAR2
222    ,p_effective_date            IN       DATE
223    ,p_business_group_id         IN       NUMBER
224    ,p_legislation_code          IN       VARCHAR2
225   )
226   IS
227     SELECT element_type_id
228     FROM   pay_element_types_f
229     WHERE upper( element_name) =upper( p_element_type_name)
230     AND    p_effective_date BETWEEN effective_start_date AND effective_end_date
231     AND    (   business_group_id = p_business_group_id
232             OR business_group_id IS NULL)
233     AND    (   legislation_code = p_legislation_code
234             OR legislation_code IS NULL);
235 
236 -- Cursor to get User Defined Table ID for a given UDT Name.
237   CURSOR csr_table_id(p_table_id IN NUMBER)
238   IS
239     SELECT user_table_name
240     FROM   pay_user_tables
241     WHERE  user_table_id = p_table_id;
242 
243 -- Cursor to get Legislation Code from a Business Group Id.
244   CURSOR csr_leg_code(p_business_group_id IN NUMBER)
245   IS
246     SELECT legislation_code
247     FROM   per_business_groups
248     WHERE  business_group_id = p_business_group_id;
249 
250 -- Cursor to get Lookup Code.
251   CURSOR csr_lookup_code(
252     p_lookup_type               IN       VARCHAR2
253    ,p_lookup_meaning            IN       VARCHAR2
254   )
255   IS
256     SELECT lookup_code
257     FROM   fnd_lookup_values_vl
258     WHERE  lookup_type = p_lookup_type AND UPPER(meaning) = UPPER(p_lookup_meaning);
259 
260 -- Cursor to get the event group details
261   CURSOR csr_event_group_details(
262     p_event_group_name                   VARCHAR2
263    ,p_business_group_id                  NUMBER
264   )
265   IS
266     SELECT event_group_id
267           ,event_group_name
268           ,event_group_type
269           ,proration_type
270     FROM   pay_event_groups
271     WHERE  event_group_name = p_event_group_name
272     AND    NVL(business_group_id, p_business_group_id) = p_business_group_id;
273 
274 -------------debug
275   PROCEDURE DEBUG(
276     p_trace_message             IN       VARCHAR2
277    ,p_trace_location            IN       NUMBER DEFAULT NULL
278   );
279 
280 -------------debug_enter
281   PROCEDURE debug_enter(
282     p_proc_name                 IN       VARCHAR2 DEFAULT NULL
283    ,p_trace_on                  IN       VARCHAR2 DEFAULT NULL
284   );
285 
286 -------------debug_exit
287   PROCEDURE debug_exit(
288     p_proc_name                 IN       VARCHAR2 DEFAULT NULL
289    ,p_trace_off                 IN       VARCHAR2 DEFAULT NULL
290   );
291 
292   PROCEDURE debug_others(
293     p_proc_name                 IN       VARCHAR2
294    ,p_proc_step                 IN       NUMBER DEFAULT NULL
295   );
296 
297 ----------------get_value_main
298   FUNCTION get_col_value(
299     p_col_nam                   IN       VARCHAR2
300    ,p_key_val                   IN       NUMBER
301    ,p_table                     IN       VARCHAR2
302    ,p_key_col                   IN       VARCHAR2
303    ,p_where                     IN       VARCHAR2
304    ,p_error_code                OUT NOCOPY NUMBER
305    ,p_message                   OUT NOCOPY VARCHAR2
306   )
307     RETURN VARCHAR2;
308 
309 -----------------get_data_type
310   FUNCTION get_data_type(
311     p_col_nam                   IN       VARCHAR2
312    ,p_tab_nam                   IN       VARCHAR2
313    ,p_error_code                OUT NOCOPY NUMBER
314    ,p_message                   OUT NOCOPY VARCHAR2
315   )
316     RETURN VARCHAR2;
317 
318 -----------------get_flex_value
319   FUNCTION get_ddf_value(
320     p_flex_name                 IN       VARCHAR2
321    ,p_flex_context              IN       VARCHAR2
322    ,p_flex_field_title          IN       VARCHAR2
323    ,p_key_col                   IN       VARCHAR2
324    ,p_key_val                   IN       NUMBER
325    ,p_effective_date            IN       DATE
326    ,p_eff_date_req              IN       VARCHAR2
327    ,p_business_group_id         IN       NUMBER
328    ,p_bus_group_id_req          IN       VARCHAR2
329    ,p_error_code                OUT NOCOPY NUMBER
330    ,p_message                   OUT NOCOPY VARCHAR2
331   )
332     RETURN VARCHAR2;
333 
334 ------------------get_segment_name
335   FUNCTION get_segment_name(
336     p_flex_name                 IN       VARCHAR2
337    ,p_flex_field_title          IN       VARCHAR2
338    ,p_flex_context              IN       VARCHAR2
339    ,p_tab_nam                   OUT NOCOPY VARCHAR2
340    ,p_error_code                OUT NOCOPY NUMBER
341    ,p_message                   OUT NOCOPY VARCHAR2
342   )
343     RETURN VARCHAR2;
344 
345 ------------------get_df_value
346   FUNCTION get_df_value(
347     p_flex_name                 IN       VARCHAR2
348    ,p_flex_context              IN       VARCHAR2
349    ,p_flex_field_title          IN       VARCHAR2
350    ,p_key_col                   IN       VARCHAR2
351    ,p_key_val                   IN       VARCHAR2
352    ,p_tab_name                  IN       VARCHAR2
353    ,p_effective_date            IN       DATE
354    ,p_eff_date_req              IN       VARCHAR2
355    ,p_business_group_id         IN       NUMBER
356    ,p_bus_group_id_req          IN       VARCHAR2
357    ,p_error_code                OUT NOCOPY NUMBER
358    ,p_message                   OUT NOCOPY VARCHAR2
359   )
360     RETURN VARCHAR2;
361 
362 ------------------pqp_get_concat_value
363   FUNCTION pqp_get_concat_value(
364     p_key_col                   IN       VARCHAR2
365    ,p_key_val                   IN       VARCHAR2
366    ,p_tab_name                  IN       VARCHAR2
367    ,p_view_name                 IN       VARCHAR2
368    ,p_message                   OUT NOCOPY VARCHAR2
369   )
370     RETURN VARCHAR2;
371 
372 ------------------pqp_get_extra_element_mult
373   FUNCTION pqp_get_extra_element_mult(
374     p_flex_name                 IN       VARCHAR2
375    ,p_segment_name              IN       VARCHAR2
376    ,p_flex_context              IN       VARCHAR2
377    ,p_element_type_id           IN       NUMBER
378    ,p_message                   OUT NOCOPY VARCHAR2
379   )
380     RETURN NUMBER;
381 
382 ------------------pqp_get_extra_element_info
383   FUNCTION pqp_get_extra_element_info(
384     p_element_type_id           IN       NUMBER
385    ,p_information_type          IN       VARCHAR2
386    ,p_segment_name              IN       VARCHAR2
387    ,p_value                     OUT NOCOPY VARCHAR2
388    ,p_truncated_yes_no          OUT NOCOPY VARCHAR2
389    ,p_error_msg                 OUT NOCOPY VARCHAR2
390   )
391     RETURN NUMBER;
392 
393 ------------------pqp_get_extra_element_info_det
394   FUNCTION pqp_get_extra_element_info_det(
395     p_element_type_id           IN       NUMBER
396    ,p_information_type          IN       VARCHAR2
397    ,p_segment_name              IN       VARCHAR2
398    ,p_value                     OUT NOCOPY VARCHAR2
399    ,p_truncated_yes_no          OUT NOCOPY VARCHAR2
400    ,p_error_msg                 OUT NOCOPY VARCHAR2
401   )
402     RETURN NUMBER;
403 
404 ------------------pqp_get_element_extra_info
405   FUNCTION pqp_get_element_extra_info(
406     p_business_group_id         IN       NUMBER
407    ,p_effective_date            IN       DATE
408    ,p_element_type_name         IN       VARCHAR2
409    ,p_information_type          IN       VARCHAR2
410    ,p_segment_name              IN       VARCHAR2
411    ,p_value                     OUT NOCOPY VARCHAR2
412    ,p_truncated_yes_no          OUT NOCOPY VARCHAR2
413    ,p_error_msg                 OUT NOCOPY VARCHAR2
414   )
415     RETURN NUMBER;
416 
417 ------------------pqp_get_element_extra_info_det
418   FUNCTION pqp_get_element_extra_info_det(
419     p_business_group_id         IN       NUMBER
420    ,p_effective_date            IN       DATE
421    ,p_element_type_name         IN       VARCHAR2
422    ,p_information_type          IN       VARCHAR2
423    ,p_segment_name              IN       VARCHAR2
424    ,p_value                     OUT NOCOPY VARCHAR2
425    ,p_truncated_yes_no          OUT NOCOPY VARCHAR2
426    ,p_error_msg                 OUT NOCOPY VARCHAR2
427   )
428     RETURN NUMBER;
429 
430 ------------------pqp_get_ele_type_extra_info_id
431 -- added by   : vimittal
432 -- added date : 10-Feb-2005
433 -- purpose    : The function returns the element type extra information id
434 --              for the passed element type id and information type.
435   FUNCTION pqp_get_ele_type_extra_info_id(
436      p_element_type_id             IN         NUMBER
437     ,p_information_type            IN         VARCHAR2
438     ,p_element_type_extra_info_id  OUT NOCOPY NUMBER
439     ,p_error_msg                   OUT NOCOPY VARCHAR2
440     )
441     RETURN NUMBER;
442 
443 
444 ------------------pqp_gb_get_element_type_id
445   FUNCTION pqp_get_element_type_id(
446     p_business_group_id         IN       NUMBER
447    ,p_legislation_code          IN       VARCHAR2
448    ,p_effective_date            IN       DATE
449    ,p_element_type_name         IN       VARCHAR2
450    ,p_error_code                OUT NOCOPY NUMBER
451    ,p_message                   OUT NOCOPY VARCHAR2
452   )
453     RETURN NUMBER;
454 
455 ------------------pqp_gb_get_table_value
456   FUNCTION pqp_gb_get_table_value(
457     p_business_group_id         IN       NUMBER
458    ,p_effective_date            IN       DATE
459    ,p_table_name                IN       VARCHAR2
460    ,p_column_name               IN       VARCHAR2
461    ,p_row_name                  IN       VARCHAR2
462    ,p_value                     OUT NOCOPY VARCHAR2
463    ,p_error_msg                 OUT NOCOPY VARCHAR2
464    ,p_refresh_cache             IN         VARCHAR2   DEFAULT 'N'
465   )
466     RETURN NUMBER;
467 
468 ------------------pqp_gb_get_table_value_id
469   FUNCTION pqp_gb_get_table_value_id(
470     p_business_group_id         IN       NUMBER
471    ,p_effective_date            IN       DATE
472    ,p_table_id                  IN       NUMBER
473    ,p_column_name               IN       VARCHAR2
474    ,p_row_name                  IN       VARCHAR2
475    ,p_value                     OUT NOCOPY VARCHAR2
476    ,p_error_msg                 OUT NOCOPY VARCHAR2
477   )
478     RETURN NUMBER;
479 
480 ------------
481   PROCEDURE delete_udt_value(
482    p_table_name    IN         VARCHAR2
483   ,p_column_name   IN         VARCHAR2 DEFAULT 'ALL'
484   ,p_error_msg     OUT NOCOPY VARCHAR2
485   );
486 ------------------pqp_get_legislation_code
487   FUNCTION pqp_get_legislation_code(p_business_group_id IN NUMBER)
488     RETURN VARCHAR2;
489 
490 ------------------get_udt_data
491    PROCEDURE get_udt_data(
492     p_business_group_id         IN       NUMBER
493    ,p_effective_date            IN       DATE
494    ,p_udt_name                  IN       VARCHAR2
495    ,p_column_name               IN       VARCHAR2 DEFAULT 'ALL'
496    ,p_error_msg                 OUT NOCOPY VARCHAR2
497   );
498 
499 ------------------get_udt_value
500   FUNCTION get_udt_value(
501     p_table_name                IN       VARCHAR2
502    ,p_column_name               IN       VARCHAR2
503    ,p_row_name                  IN       VARCHAR2
504    ,p_effective_date            IN       DATE
505    ,p_business_group_id         IN       NUMBER
506   )
507     RETURN VARCHAR2;
508 
509 ------------------set_trace_on
510   FUNCTION set_trace_on(
511     p_trace_destination         IN       VARCHAR2
512    ,p_trace_coverage            IN       VARCHAR2
513    ,p_error_message             OUT NOCOPY VARCHAR2
514   )
515     RETURN NUMBER;
516 
517 ------------------set_request_trace_on
518   FUNCTION set_request_trace_on(p_error_message OUT NOCOPY VARCHAR2)
519     RETURN NUMBER;
520 
521 ------------------set_trace_off
522   FUNCTION set_trace_off(p_error_message OUT NOCOPY VARCHAR2)
523     RETURN NUMBER;
524 
525 ------------------------get_lookup_code
526   FUNCTION get_lookup_code(
527     p_lookup_type               IN       VARCHAR2
528    ,p_lookup_meaning            IN       VARCHAR2
529    ,p_message                   OUT NOCOPY VARCHAR2
530   )
531     RETURN VARCHAR2;
532 
533 --delete_formula
534   PROCEDURE delete_formula(
535     p_formula_id                IN       NUMBER
536    ,p_drop_compiled_info        IN       BOOLEAN DEFAULT TRUE
537    ,p_error_code                OUT NOCOPY NUMBER
538    ,p_error_message             OUT NOCOPY VARCHAR2
539   );
540 
541 ------------------get_event_group_id
542 -- Added by : rtahilia
543 -- Date : 04/04/2003
544 -- This a generic function to return the event group id
545 -- for the give event group name and business group id
546   FUNCTION get_event_group_id(
547     p_business_group_id         IN       NUMBER
548    ,p_event_group_name          IN       VARCHAR2
549   )
550     RETURN NUMBER;
551 
552 ------------------get_events - overloaded
553 -- Added by : rtahilia
554 -- Date : 04/04/2003
555 -- This is a generic function to return events for a
556 -- given event group and date range
557   FUNCTION get_events(
558     p_assignment_id             IN       NUMBER
559    ,p_element_entry_id          IN       NUMBER DEFAULT NULL
560    ,p_assignment_action_id      IN       NUMBER DEFAULT NULL
561    ,p_business_group_id         IN       NUMBER
562    ,p_process_mode              IN       VARCHAR2
563         DEFAULT 'ENTRY_EFFECTIVE_DATE'
564    ,p_event_group_name          IN       VARCHAR2
565    ,p_start_date                IN       DATE
566    ,p_end_date                  IN       DATE
567    ,t_event_details             OUT NOCOPY pqp_utilities.t_event_details_table_type
568   )
569     RETURN NUMBER;
570 
571 ------------------get_events - overloaded
572 -- Added by : rtahilia
573 -- Date : 19/08/2003
574 -- This is a generic function to return events for a
575 -- given event group and date range
576   FUNCTION get_events(
577     p_assignment_id             IN       NUMBER
578    ,p_element_entry_id          IN       NUMBER DEFAULT NULL
579    ,p_assignment_action_id      IN       NUMBER DEFAULT NULL
580    ,p_business_group_id         IN       NUMBER
581    ,p_process_mode              IN       VARCHAR2 DEFAULT 'ENTRY_EFFECTIVE_DATE'
582    ,p_event_group_name          IN       VARCHAR2
583    ,p_start_date                IN       DATE
584    ,p_end_date                  IN       DATE
585    ,t_proration_dates          OUT NOCOPY pay_interpreter_pkg.t_proration_dates_table_type
586    ,t_proration_change_type    OUT NOCOPY pay_interpreter_pkg.t_proration_type_table_type
587   )
588     RETURN NUMBER;
589 ------------------------------chk_cached_udt_bucket
590 -- Added by akarmaka
591 FUNCTION chk_cached_udt_bucket (p_refresh_cache IN VARCHAR2
592                                 ,p_business_group IN NUMBER
593 				,p_table_name     IN VARCHAR2
594 				,p_error_msg      OUT NOCOPY VARCHAR2
595 			      )
596  RETURN BOOLEAN ;
597 -------------- added by akarmaka for hash function implementation
598  FUNCTION get_hash_key
599  ( p_string IN VARCHAR2
600   ,p_error_msg    OUT NOCOPY VARCHAR2
601   ,p_refresh_cache IN VARCHAR2
602   ,p_business_group_id IN NUMBER
603   )
604  RETURN BINARY_INTEGER;
605 
606  PROCEDURE set_hash_conflict_check_off;
607  PROCEDURE set_hash_conflict_check_on;
608  PROCEDURE reset_hash_keys;
609  PROCEDURE set_hash_parameters
610   (p_hash_base       IN  BINARY_INTEGER
611   ,p_hash_size       IN  BINARY_INTEGER
612   ,p_conflict_check  IN  BOOLEAN DEFAULT FALSE
613   );
614 
615 ------------------------------------------------------------------
616 --
617 --
618 --
619   PROCEDURE check_error_code(
620     p_error_code                IN       fnd_new_messages.message_number%TYPE
621    ,p_error_message             IN       fnd_new_messages.MESSAGE_TEXT%TYPE
622         DEFAULT NULL
623   );
624 --
625 --
626 --
627   FUNCTION pqp_fnd_message_set_token(
628     token                       IN      VARCHAR2
629    ,value                       IN      VARCHAR2
630    ,translate                   IN      VARCHAR2 DEFAULT 'N'
631    ) RETURN NUMBER;
632 
633 --
634 --
635 --
636   FUNCTION pqp_fnd_message_set_name(
637     application                 IN      VARCHAR2
638    ,name                        IN      VARCHAR2
639    ) RETURN NUMBER;
640 
641 --
642 --
643 
644 FUNCTION round_value_up_down(
645     p_value_to_round IN NUMBER
646    ,p_base_value     IN NUMBER
647    ,p_rounding_type  IN VARCHAR2
648   )
649   RETURN NUMBER ;
650 --
651 
652 --
653 FUNCTION pqp_get_config_value(
654     p_business_group_id     IN NUMBER
655    ,p_legislation_code     IN VARCHAR2
656    ,p_column_name          IN VARCHAR2
657    ,p_information_category IN VARCHAR2
658   ) RETURN VARCHAR2;
659 
660 --
661 -- added by kkarri
662 PROCEDURE get_kflex_value
663     (p_entity_name                IN VARCHAR2 -- name of the table holding the values
664     ,p_key_column_name            IN VARCHAR2 -- Key Column Name
665     ,p_key_column_value           IN VARCHAR2 -- Key Column Value
666     ,p_segment_column_values      OUT NOCOPY r_all_segment_values
667     );
668 -- added by kkarri
669 PROCEDURE get_kflex_value
670     (p_entity_name                IN VARCHAR2 -- name of the table holding the values
671     ,p_key_column_name            IN VARCHAR2 -- Key Column Name
672     ,p_key_column_value           IN VARCHAR2 -- Key Column Value
673     ,p_segment_column_name        IN VARCHAR2
674     ,p_segment_column_value       OUT NOCOPY VARCHAR2
675     );
676 -- added by kkarri
677 PROCEDURE entries_affected
678     (p_assignment_id           IN  NUMBER DEFAULT NULL
679     ,p_event_group_id         IN  NUMBER DEFAULT NULL
680     ,p_mode                   IN  VARCHAR2 DEFAULT NULL
681     ,p_start_date             IN  DATE  DEFAULT hr_api.g_sot
682     ,p_end_date               IN  DATE  DEFAULT hr_api.g_eot
683     ,p_business_group_id      IN  NUMBER
684     ,p_detailed_output        OUT NOCOPY  pay_interpreter_pkg.t_detailed_output_table_type
685     ,p_process_mode           IN  VARCHAR2 DEFAULT 'ENTRY_CREATION_DATE'
686     );
687 END pqp_utilities;