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;