1 PACKAGE fnd_flex_server AS
2 /* $Header: AFFFSSVS.pls 120.3.12010000.1 2008/07/25 14:14:20 appldev ship $ */
3
4 -- ----------------------------------------------------------------------
5 -- Internal functions.
6 -- These functions are only used within flex and are not to be used
7 -- by anyone else. The functions are not supported in any manner
8 -- and their arguments and functionality are subject to change
9 -- without notice.
10 -- ----------------------------------------------------------------------
11
12 PROCEDURE validation_engine
13 (user_apid IN NUMBER,
14 user_resp IN NUMBER,
15 userid IN NUMBER,
16 flex_app_sname IN VARCHAR2,
17 flex_code IN VARCHAR2,
18 select_comb_from_view IN VARCHAR2,
19 flex_num IN NUMBER,
20 val_date IN DATE,
21 vrulestr IN VARCHAR2,
22 data_set IN NUMBER,
23 invoking_mode IN VARCHAR2,
24 validate_mode IN VARCHAR2,
25 dinsert IN VARCHAR2,
26 qsecurity IN VARCHAR2,
27 required IN VARCHAR2,
28 allow_nulls IN VARCHAR2,
29 display_segstr IN VARCHAR2,
30 concat_segs IN VARCHAR2,
31 vals_or_ids IN VARCHAR2,
32 where_clause IN VARCHAR2,
33 no_combmsg IN VARCHAR2,
34 where_clause_msg IN VARCHAR2,
35 get_extra_cols IN VARCHAR2,
36 ccid_in IN NUMBER,
37 nvalidated OUT nocopy NUMBER,
38 displayed_vals OUT nocopy FND_FLEX_SERVER1.ValueArray,
39 stored_vals OUT nocopy FND_FLEX_SERVER1.ValueArray,
40 segment_ids OUT nocopy FND_FLEX_SERVER1.ValueIdArray,
41 descriptions OUT nocopy FND_FLEX_SERVER1.ValueDescArray,
42 desc_lengths OUT nocopy FND_FLEX_SERVER1.NumberArray,
43 seg_colnames OUT nocopy FND_FLEX_SERVER1.TabColArray,
44 seg_coltypes OUT nocopy FND_FLEX_SERVER1.CharArray,
45 segment_types OUT nocopy FND_FLEX_SERVER1.SegFormats,
46 displayed_segs OUT nocopy FND_FLEX_SERVER1.DisplayedSegs,
47 derived_eff OUT nocopy FND_FLEX_SERVER1.DerivedVals,
48 table_eff OUT nocopy FND_FLEX_SERVER1.DerivedVals,
49 derived_quals OUT nocopy FND_FLEX_SERVER1.Qualifiers,
50 table_quals OUT nocopy FND_FLEX_SERVER1.Qualifiers,
51 n_column_vals OUT nocopy NUMBER,
52 column_vals OUT nocopy FND_FLEX_SERVER1.StringArray,
53 seg_delimiter OUT nocopy VARCHAR2,
54 ccid_out OUT nocopy NUMBER,
55 new_combination OUT nocopy BOOLEAN,
56 v_status OUT nocopy NUMBER,
57 seg_codes OUT nocopy VARCHAR2,
58 err_segnum OUT nocopy NUMBER);
59
60 -- ----------------------------------------------------------------------
61 -- find_combination() function made public and used in AFFFEXTB package.
62 -- ----------------------------------------------------------------------
63 FUNCTION find_combination
64 (structnum IN NUMBER,
65 combtbl IN FND_FLEX_SERVER1.CombTblInfo,
66 nsegs IN NUMBER,
67 combcols IN FND_FLEX_SERVER1.TabColArray,
68 combtypes IN FND_FLEX_SERVER1.CharArray,
69 segfmts IN FND_FLEX_SERVER1.SegFormats,
70 nquals IN NUMBER,
71 qualcols IN FND_FLEX_SERVER1.TabColArray,
72 nxcols IN NUMBER,
73 xcolnames IN FND_FLEX_SERVER1.StringArray,
74 where_cl IN VARCHAR2,
75 ccid IN OUT nocopy NUMBER,
76 segids IN OUT nocopy FND_FLEX_SERVER1.ValueIdArray,
77 tblderv OUT nocopy FND_FLEX_SERVER1.DerivedVals,
78 qualvals OUT nocopy FND_FLEX_SERVER1.ValAttribArray,
79 xcolvals OUT nocopy FND_FLEX_SERVER1.StringArray)
80 RETURN NUMBER;
81
82
83 -- ----------------------------------------------------------------------
84 FUNCTION parse_displayed
85 (fstruct IN FND_FLEX_SERVER1.FlexStructId,
86 token_str IN VARCHAR2,
87 dispsegs OUT nocopy FND_FLEX_SERVER1.DisplayedSegs)
88 RETURN BOOLEAN;
89
90 -- ----------------------------------------------------------------------
91 FUNCTION concatenate_values
92 (nvals IN NUMBER,
93 vals IN FND_FLEX_SERVER1.ValueArray,
94 displ IN FND_FLEX_SERVER1.DisplayedSegs,
95 delimiter IN VARCHAR2)
96 RETURN VARCHAR2;
97
98 -- ----------------------------------------------------------------------
99 FUNCTION concatenate_ids
100 (nids IN NUMBER,
101 ids IN FND_FLEX_SERVER1.ValueIdArray,
102 delimiter IN VARCHAR2)
103 RETURN VARCHAR2;
104
105 -- ----------------------------------------------------------------------
106 FUNCTION concatenate_descriptions
107 (ndescs IN NUMBER,
108 descs IN FND_FLEX_SERVER1.ValueDescArray,
109 displ IN FND_FLEX_SERVER1.DisplayedSegs,
110 lengths IN FND_FLEX_SERVER1.NumberArray,
111 delimiter IN VARCHAR2)
112 RETURN VARCHAR2;
113
114 -- ----------------------------------------------------------------------
115 -- The general purpose interface to the client c-code
116 -- ----------------------------------------------------------------------
117 PROCEDURE validate_combination
118 (user_apid IN NUMBER,
119 user_resp IN NUMBER,
120 userid IN NUMBER,
121 flex_app_sname IN VARCHAR2,
122 flex_code IN VARCHAR2,
123 flex_num IN NUMBER,
124 vdate IN VARCHAR2,
125 vrulestr IN VARCHAR2,
126 data_set IN NUMBER,
127 invoking_mode IN VARCHAR2,
128 validate_mode IN VARCHAR2,
129 dinsert IN VARCHAR2,
130 qsecurity IN VARCHAR2,
131 required IN VARCHAR2,
132 allow_nulls IN VARCHAR2,
133 display_segs IN VARCHAR2,
134 concat_segs IN VARCHAR2,
135 vals_or_ids IN VARCHAR2,
136 concat_vals_out OUT nocopy VARCHAR2,
137 concat_ids_out OUT nocopy VARCHAR2,
138 concat_desc OUT nocopy VARCHAR2,
139 where_clause IN VARCHAR2,
140 get_extra_cols IN VARCHAR2,
141 extra_cols OUT nocopy VARCHAR2,
142 get_valatts IN VARCHAR2,
143 valatts OUT nocopy VARCHAR2,
144 get_derived IN VARCHAR2,
145 derived_vals OUT nocopy VARCHAR2,
146 start_date OUT nocopy VARCHAR2,
147 end_date OUT nocopy VARCHAR2,
148 enabled_flag OUT nocopy VARCHAR2,
149 summary_flag OUT nocopy VARCHAR2,
150 seg_delimiter OUT nocopy VARCHAR2,
151 ccid_in IN NUMBER,
152 ccid_out OUT nocopy NUMBER,
153 vstatus OUT nocopy NUMBER,
154 segcodes OUT nocopy VARCHAR2,
155 error_seg OUT nocopy NUMBER,
156 message OUT nocopy VARCHAR2,
157 select_comb_from_view IN VARCHAR2,
158 no_combmsg IN VARCHAR2,
159 where_clause_msg IN VARCHAR2,
160 server_debug_mode IN VARCHAR2);
161
162 -- ----------------------------------------------------------------------
163 -- General purpose interface to the client c-code for descr flexs
164 -- ----------------------------------------------------------------------
165 PROCEDURE validate_descflex
166 (user_apid IN NUMBER,
167 user_resp IN NUMBER,
168 userid IN NUMBER,
169 flex_app_sname IN VARCHAR2,
170 desc_flex_name IN VARCHAR2,
171 vdate IN VARCHAR2,
172 invoking_mode IN VARCHAR2,
173 allow_nulls IN VARCHAR2,
174 update_table IN VARCHAR2,
175 effective_activ IN VARCHAR2,
176 concat_segs IN VARCHAR2,
177 vals_or_ids IN VARCHAR2,
178 c_rowid IN VARCHAR2,
179 alternate_table IN VARCHAR2,
180 data_field IN VARCHAR2,
181 concat_vals_out OUT nocopy VARCHAR2,
182 concat_ids_out OUT nocopy VARCHAR2,
183 concat_desc OUT nocopy VARCHAR2,
184 seg_delimiter OUT nocopy VARCHAR2,
185 vstatus OUT nocopy NUMBER,
186 segcodes OUT nocopy VARCHAR2,
187 error_seg OUT nocopy NUMBER,
188 message OUT nocopy VARCHAR2);
189
190 -- ----------------------------------------------------------------------
191 -- Externalized function so client can use hash-lock mechanism.
192 -- Computes and locks hash value from ids passed in.
193 -- Returns hash number 0-999 or sets FND_MESSAGE and returns < 0
194 -- if error.
195 -- ----------------------------------------------------------------------
196 FUNCTION hash_lock
197 (application_id IN NUMBER,
198 id_flex_code IN VARCHAR2,
199 id_flex_num IN NUMBER,
200 delimiter IN VARCHAR2,
201 concat_ids IN VARCHAR2)
202 RETURN NUMBER;
203
204 -- ----------------------------------------------------------------------
205 -- Externalized function so client can use hash-lock mechanism.
206 -- Computes and locks hash value from ids passed in.
207 -- Returns hash number 0-999 or sets FND_MESSAGE and returns < 0
208 -- if error.
209 -- This version returns error message if any.
210 -- ----------------------------------------------------------------------
211 FUNCTION client_hash_lock
212 (application_id IN NUMBER,
213 id_flex_code IN VARCHAR2,
214 id_flex_num IN NUMBER,
215 delimiter IN VARCHAR2,
216 concat_ids IN VARCHAR2,
217 x_message OUT nocopy VARCHAR2)
218 RETURN NUMBER;
219
220 -- ----------------------------------------------------------------------
221 FUNCTION v_comb
222 (user_apid IN NUMBER,
223 user_resp IN NUMBER,
224 userid IN NUMBER,
225 flex_app_sname IN VARCHAR2,
226 flex_code IN VARCHAR2,
227 flex_num IN NUMBER,
228 vdate IN VARCHAR2,
229 vrulestr IN VARCHAR2,
230 data_set IN NUMBER,
231 invoking_mode IN VARCHAR2,
232 validate_mode IN VARCHAR2,
233 dinsert IN VARCHAR2,
234 qsecurity IN VARCHAR2,
235 required IN VARCHAR2,
236 allow_nulls IN VARCHAR2,
237 display_segs IN VARCHAR2,
238 concat_segs IN VARCHAR2,
239 vals_or_ids IN VARCHAR2,
240 where_clause IN VARCHAR2,
241 extra_cols IN VARCHAR2,
242 get_valatts IN VARCHAR2,
243 get_derived IN VARCHAR2,
244 ccid IN NUMBER)
245 RETURN VARCHAR2;
246
247 -- ----------------------------------------------------------------------
248 FUNCTION v_desc
249 (user_apid IN NUMBER,
250 user_resp IN NUMBER,
251 userid IN NUMBER,
252 flex_app_sname IN VARCHAR2,
253 desc_flex_name IN VARCHAR2,
254 vdate IN VARCHAR2,
255 invoking_mode IN VARCHAR2,
256 allow_nulls IN VARCHAR2,
257 update_table IN VARCHAR2,
258 eff_activation IN VARCHAR2,
259 concat_segs IN VARCHAR2,
260 vals_or_ids IN VARCHAR2,
261 c_rowid IN VARCHAR2,
262 alternate_table IN VARCHAR2,
263 data_field IN VARCHAR2)
264 RETURN VARCHAR2;
265
266 -- ----------------------------------------------------------------------
267 FUNCTION p_win
268 (user_apid IN NUMBER,
269 user_resp IN NUMBER,
270 flex_app_sname IN VARCHAR2,
271 flex_code IN VARCHAR2,
272 flex_num IN NUMBER,
273 vdate IN VARCHAR2,
274 vrulestr IN VARCHAR2,
275 display_segs IN VARCHAR2,
276 concat_segs IN VARCHAR2)
277 RETURN VARCHAR2;
278
279 -- ----------------------------------------------------------------------
280 PROCEDURE pre_window
281 (user_apid IN NUMBER,
282 user_resp IN NUMBER,
283 flex_app_sname IN VARCHAR2,
284 flex_code IN VARCHAR2,
285 flex_num IN NUMBER,
286 vdate IN VARCHAR2,
287 vrulestr IN VARCHAR2,
288 display_segs IN VARCHAR2,
289 concat_segs IN VARCHAR2,
290 concat_vals_out OUT nocopy VARCHAR2,
291 concat_ids_out OUT nocopy VARCHAR2,
292 concat_desc OUT nocopy VARCHAR2,
293 seg_delimiter OUT nocopy VARCHAR2,
294 seg_formats OUT nocopy VARCHAR2,
295 seg_codes OUT nocopy VARCHAR2,
296 n_segments OUT nocopy NUMBER,
297 v_status OUT nocopy NUMBER,
298 err_segnum OUT nocopy NUMBER,
299 message OUT nocopy VARCHAR2);
300
301 -- ----------------------------------------------------------------------
302 FUNCTION s_maps
303 (flex_app_sname IN VARCHAR2,
304 flex_code IN VARCHAR2,
305 flex_num IN NUMBER,
306 insert_tok IN VARCHAR2,
307 update_tok IN VARCHAR2,
308 display_tok IN VARCHAR2)
309 RETURN VARCHAR2;
310
311 -- ----------------------------------------------------------------------
312 PROCEDURE segment_maps
313 (flex_app_sname IN VARCHAR2,
314 flex_code IN VARCHAR2,
315 flex_num IN NUMBER,
316 insert_token IN VARCHAR2,
317 update_token IN VARCHAR2,
318 display_token IN VARCHAR2,
319 insert_map OUT nocopy VARCHAR2,
320 update_map OUT nocopy VARCHAR2,
321 display_map OUT nocopy VARCHAR2,
322 required_map OUT nocopy VARCHAR2,
323 n_segments OUT nocopy NUMBER,
324 message OUT nocopy VARCHAR2);
325
326 -- ----------------------------------------------------------------------
327 PROCEDURE segs_secured
328 (resp_apid IN NUMBER,
329 resp_id IN NUMBER,
330 flex_app_sname IN VARCHAR2,
331 flex_code IN VARCHAR2,
332 flex_num IN NUMBER,
333 display_segs IN VARCHAR2,
334 concat_segs IN VARCHAR2,
335 segnum OUT nocopy NUMBER,
336 message OUT nocopy VARCHAR2);
337
338 -- ----------------------------------------------------------------------
339 FUNCTION s_sec
340 (resp_apid IN NUMBER,
341 resp_id IN NUMBER,
342 flex_app_sname IN VARCHAR2,
343 flex_code IN VARCHAR2,
344 flex_num IN NUMBER,
345 display_segs IN VARCHAR2,
346 concat_segs IN VARCHAR2)
347 RETURN VARCHAR2;
348
349 -- ----------------------------------------------------------------------
350 -- For debugging. Gets sql strings used for dynamic sql statements.
351 -- ----------------------------------------------------------------------
352 FUNCTION get_nsql
353 RETURN NUMBER;
354
355 FUNCTION get_sql
356 (statement_num IN NUMBER,
357 statement_piece IN NUMBER DEFAULT 1)
358 RETURN VARCHAR2;
359
360 -- ----------------------------------------------------------------------
361 -- Gets additional string of debug information.
362 -- ----------------------------------------------------------------------
363 FUNCTION get_debug
364 (stringnum IN NUMBER)
365 RETURN VARCHAR2;
366
367 -- ----------------------------------------------------------------------
368 -- Turns on or off user PLSQL validation
369 -- ----------------------------------------------------------------------
370 PROCEDURE enable_user_validation
371 (Y_or_N IN VARCHAR2);
372
373 -- ----------------------------------------------------------------------
374 -- Turns on or off fdfgli calling from flex
375 -- ----------------------------------------------------------------------
376 PROCEDURE enable_fdfgli
377 (Y_or_N IN VARCHAR2);
378
379 -- ----------------------------------------------------------------------
380 -- Clears all caches in flex server validation package.
381 -- ----------------------------------------------------------------------
385 -- Called from Flex Java Validation Engine.
382 PROCEDURE clear_cache;
383
384 -- ----------------------------------------------------------------------
386 -- Uses autonomous transaction to insert new combination.
387 -- ----------------------------------------------------------------------
388 PROCEDURE do_dynamic_insert_for_java
389 (p_application_id IN NUMBER,
390 p_id_flex_code IN VARCHAR2,
391 p_id_flex_num IN NUMBER,
392 p_application_table_name IN VARCHAR2,
393 p_segment_delimiter IN VARCHAR2,
394 p_segment_count IN NUMBER,
395 p_validation_date IN DATE,
396 p_start_date_active IN DATE,
397 p_end_date_active IN DATE,
398 p_insert_sql IN VARCHAR2,
399 p_insert_sql_binds IN VARCHAR2,
400 p_select_sql IN VARCHAR2,
401 p_select_sql_binds IN VARCHAR2,
402 x_ccid OUT nocopy NUMBER,
403 x_encoded_error OUT nocopy VARCHAR2);
404
405 -- ----------------------------------------------------------------------
406 -- x_is_new is added.
407 -- ----------------------------------------------------------------------
408 PROCEDURE do_dynamic_insert_for_java
409 (p_application_id IN NUMBER,
410 p_id_flex_code IN VARCHAR2,
411 p_id_flex_num IN NUMBER,
412 p_application_table_name IN VARCHAR2,
413 p_segment_delimiter IN VARCHAR2,
414 p_segment_count IN NUMBER,
415 p_validation_date IN DATE,
416 p_start_date_active IN DATE,
417 p_end_date_active IN DATE,
418 p_insert_sql IN VARCHAR2,
419 p_insert_sql_binds IN VARCHAR2,
420 p_select_sql IN VARCHAR2,
421 p_select_sql_binds IN VARCHAR2,
422 x_ccid OUT nocopy NUMBER,
423 x_is_new OUT nocopy VARCHAR2,
424 x_encoded_error OUT nocopy VARCHAR2);
425
426 -- ----------------------------------------------------------------------
427 -- Checks if a value is secured.
428 -- ----------------------------------------------------------------------
429 PROCEDURE check_value_security
430 (p_security_check_mode IN VARCHAR2,
431 p_flex_value_set_id IN NUMBER,
432 p_parent_flex_value IN VARCHAR2,
433 p_flex_value IN VARCHAR2,
434 p_resp_application_id IN NUMBER,
435 p_responsibility_id IN NUMBER,
436 x_security_status OUT nocopy VARCHAR2,
437 x_error_message OUT nocopy VARCHAR2);
438
439 -- ----------------------------------------------------------------------
440 -- parse_flex_values:
441 --
442 -- Escape character:
443 -- While concatenating segment values, flex uses '\' to escape
444 -- delimiter character and escape character if they appear inside the
445 -- segment values.
446 --
447 -- Arguments:
448 -- p_concatenated_flex_values : Concatenated combination.
449 -- p_delimiter : Flexfield delimiter.
450 -- p_numof_flex_values : Expected number of flex values.
451 -- If 1, then the full combination is returned
452 -- as the value of the first segment. (This
453 -- ensures that escaping logic is not used for
454 -- single segment flexfields.
455 -- Ideally speaking this function should not be
456 -- called if it is known that there is only one
457 -- segment.
458 -- If this value is not 1, then flex will parse
459 -- the combination by using delimiter.
460 -- x_flex_values : Flex values array.
461 -- x_numof_flex_values : Number of flex values that parser found out.
462 -- This value may not be same as
463 -- p_numof_flex_values. See examples.
464 --
465 --
466 -- Examples: Assume delimiter is '.'.
467 --
468 -- p_concatenated_ p_numof_ x_numof_
469 -- flex_values flex_values x_flex_values flex_values
470 -- --------------- ------------ ------------------------- ------------
471 -- "A\B\\C.D\.E" 1 "A\B\\C.D\.E" 1
472 -- "A\B\\C.D\.E" not 1 "AB\C", "D.E" 2
473 -- "A\B\\CD\.E" not 1 "AB\CD.E" 1
474 -- "A.B.C" not 1 "A", "B", "C" 3
475 -- "" not 1 "" 1
476 -- "AB.CD\\" not 1 "AB", "CD\" 2
477 -- "AB.CD\" not 1 "AB", "CD" 2
478 --
479 -- ----------------------------------------------------------------------
480 PROCEDURE parse_flex_values
481 (p_concatenated_flex_values IN VARCHAR2,
482 p_delimiter IN VARCHAR2,
483 p_numof_flex_values IN NUMBER DEFAULT NULL,
484 x_flex_values OUT nocopy fnd_flex_server1.stringarray,
485 x_numof_flex_values OUT nocopy NUMBER);
486
487 -- ----------------------------------------------------------------------
488 -- concatenate_flex_values:
489 --
490 -- Arguments:
491 -- p_flex_values : Flex values array.
492 -- p_numof_flex_values : Number of elements in p_flex_values array.
496 -- using flex delimiter and applying the
493 -- If 1 then the first element of p_flex_values
494 -- array is copied to x_concatenated_flex_values
495 -- If not 1 then the values are concatenated by
497 -- escaping logic to special characters.
498 -- p_delimiter : Flexfield delimiter.
499 -- x_concatenated_flex_values : Concatenated combination.
500 --
501 -- Examples: Assume delimiter is '.'.
502 --
503 -- p_flex_values p_numof_flex_values x_concatenated_flex_values
504 -- ----------------- ------------------- --------------------------
505 -- "A\B\\C.D\.E" 1 "A\B\\C.D\.E"
506 -- "AB\C", "D.E" 2 "A\B\\C.D\.E"
507 -- "AB\CD.E" 1 "AB\CD.E"
508 -- "A", "B", "C" 3 "A.B.C"
509 -- "" 1 ""
510 -- "AB", "CD\" 2 "AB.CD\\"
511 -- "AB", "CD" 2 "AB.CD"
512 --
513 -- ----------------------------------------------------------------------
514 PROCEDURE concatenate_flex_values
515 (p_flex_values IN fnd_flex_server1.stringarray,
516 p_numof_flex_values IN NUMBER,
517 p_delimiter IN VARCHAR2,
518 x_concatenated_flex_values OUT nocopy VARCHAR2);
519
520 -- ----------------------------------------------------------------------
521 FUNCTION get_concatenated_value
522 (p_delimiter IN VARCHAR2,
523 p_segment_count IN NUMBER,
524 p_segment1 IN VARCHAR2 DEFAULT NULL,
525 p_segment2 IN VARCHAR2 DEFAULT NULL,
526 p_segment3 IN VARCHAR2 DEFAULT NULL,
527 p_segment4 IN VARCHAR2 DEFAULT NULL,
528 p_segment5 IN VARCHAR2 DEFAULT NULL,
529 p_segment6 IN VARCHAR2 DEFAULT NULL,
530 p_segment7 IN VARCHAR2 DEFAULT NULL,
531 p_segment8 IN VARCHAR2 DEFAULT NULL,
532 p_segment9 IN VARCHAR2 DEFAULT NULL,
533 p_segment10 IN VARCHAR2 DEFAULT NULL,
534 p_segment11 IN VARCHAR2 DEFAULT NULL,
535 p_segment12 IN VARCHAR2 DEFAULT NULL,
536 p_segment13 IN VARCHAR2 DEFAULT NULL,
537 p_segment14 IN VARCHAR2 DEFAULT NULL,
538 p_segment15 IN VARCHAR2 DEFAULT NULL,
539 p_segment16 IN VARCHAR2 DEFAULT NULL,
540 p_segment17 IN VARCHAR2 DEFAULT NULL,
541 p_segment18 IN VARCHAR2 DEFAULT NULL,
542 p_segment19 IN VARCHAR2 DEFAULT NULL,
543 p_segment20 IN VARCHAR2 DEFAULT NULL,
544 p_segment21 IN VARCHAR2 DEFAULT NULL,
545 p_segment22 IN VARCHAR2 DEFAULT NULL,
546 p_segment23 IN VARCHAR2 DEFAULT NULL,
547 p_segment24 IN VARCHAR2 DEFAULT NULL,
548 p_segment25 IN VARCHAR2 DEFAULT NULL,
549 p_segment26 IN VARCHAR2 DEFAULT NULL,
550 p_segment27 IN VARCHAR2 DEFAULT NULL,
551 p_segment28 IN VARCHAR2 DEFAULT NULL,
552 p_segment29 IN VARCHAR2 DEFAULT NULL,
553 p_segment30 IN VARCHAR2 DEFAULT NULL)
554 RETURN VARCHAR2;
555
556 -- ----------------------------------------------------------------------
557 PROCEDURE raise_dff_compiled
558 (p_application_id IN NUMBER,
559 p_descriptive_flexfield_name IN VARCHAR2);
560
561 -- ----------------------------------------------------------------------
562 PROCEDURE raise_kff_structure_compiled
563 (p_application_id IN NUMBER,
564 p_id_flex_code IN VARCHAR2,
565 p_id_flex_num IN NUMBER);
566
567 -- ----------------------------------------------------------------------
568 PROCEDURE raise_vst_updated
569 (p_flex_value_set_id IN NUMBER);
570
571 -- ----------------------------------------------------------------------
572 -- Concatenation Modes
573 --
574 -- COMPACT : Values are returned as they are.
575 -- PADDED : Numbers are left padded to their value set maximum size
576 -- Everything else is right padded to their value set maximum size
577 --
578 CONCAT_MODE_COMPACT CONSTANT VARCHAR2(30) := 'COMPACT';
579 CONCAT_MODE_PADDED CONSTANT VARCHAR2(30) := 'PADDED';
580
581 -- ---------------------------------------------------------------------
582 -- Returns concatenated segments for a given CCID (Code Combination ID)
583 -- from the code combinations table.
584 --
585 -- p_concat_mode - concat mode. e.g. CONCAT_MODE_COMPACT
586 -- p_application_id - application_id of the KFF. e.g. 101
587 -- p_id_flex_code - id_flex_code of the KFF. e.g. 'GL#'
588 -- p_id_flex_num - id_flx_num of the KFF. e.g. 101
589 -- p_ccid - code combination id from the code combinations table.
590 -- p_data_set - (optional) Data striping number. Used by certain KFFs
591 -- (Usually the organization_id). e.g. 101
592 -- ----------------------------------------------------------------------
593 FUNCTION get_kfv_concat_segs_by_ccid
594 (p_concat_mode IN VARCHAR2,
595 p_application_id IN NUMBER,
596 p_id_flex_code IN VARCHAR2,
597 p_id_flex_num IN NUMBER,
598 p_ccid IN NUMBER,
599 p_data_set IN NUMBER DEFAULT NULL)
600 RETURN VARCHAR2;
601
602 -- ----------------------------------------------------------------------
603 -- Returns concatenated segments for a given ROWID
604 -- from the code combinations table.
605 --
606 -- p_concat_mode - concat mode. e.g. CONCAT_MODE_COMPACT
607 -- p_application_id - application_id of the KFF. e.g. 101
608 -- p_id_flex_code - id_flex_code of the KFF. e.g. 'GL#'
609 -- p_id_flex_num - id_flx_num of the KFF. e.g. 101
610 -- p_rowid - ROWID from the code combinations table.
611 -- ----------------------------------------------------------------------
612 FUNCTION get_kfv_concat_segs_by_rowid
613 (p_concat_mode IN VARCHAR2,
614 p_application_id IN NUMBER,
615 p_id_flex_code IN VARCHAR2,
616 p_id_flex_num IN NUMBER,
617 p_rowid IN VARCHAR2)
618 RETURN VARCHAR2;
619
620 -- ----------------------------------------------------------------------
621 -- PRIVATE: FLEX INTERNAL USE ONLY
622 -- ----------------------------------------------------------------------
623 PROCEDURE request_lock
624 (p_lock_name IN VARCHAR2,
625 px_lock_handle IN OUT nocopy VARCHAR2);
626
627 -- ----------------------------------------------------------------------
628 -- PRIVATE: FLEX INTERNAL USE ONLY
629 -- ----------------------------------------------------------------------
630 PROCEDURE release_lock
631 (p_lock_name IN VARCHAR2,
632 p_lock_handle IN VARCHAR2);
633
634 -- ----------------------------------------------------------------------
635 -- PRIVATE: FLEX INTERNAL USE ONLY
636 -- ----------------------------------------------------------------------
637 PROCEDURE compute_non_forms_warnings_dff
638 (p_application_id IN NUMBER,
639 p_descriptive_flexfield_name IN VARCHAR2,
640 x_warning_count OUT nocopy NUMBER);
641
642 -- ----------------------------------------------------------------------
643 -- PRIVATE: FLEX INTERNAL USE ONLY
644 -- ----------------------------------------------------------------------
645 PROCEDURE compute_non_forms_warnings_kff
646 (p_application_id IN NUMBER,
647 p_id_flex_code IN VARCHAR2,
648 p_id_flex_num IN NUMBER,
649 x_warning_count OUT nocopy NUMBER);
650
651 -- ----------------------------------------------------------------------
652 -- PRIVATE: FLEX INTERNAL USE ONLY
653 -- ----------------------------------------------------------------------
654 FUNCTION get_non_forms_warning
655 (p_warning_index IN NUMBER)
656 RETURN VARCHAR2;
657
658 END fnd_flex_server;