[Home] [Help]
PACKAGE BODY: APPS.FA_FLEX_PVT
Source
1 PACKAGE BODY FA_FLEX_PVT as
2 /* $Header: FAVFLEXB.pls 120.3 2005/07/25 10:06:27 yyoon noship $ */
3
4 FUNCTION get_concat_segs
5 (p_ccid IN number,
6 p_application_short_name IN varchar,
7 p_flex_code IN varchar,
8 p_flex_num IN number,
9 p_num_segs OUT NOCOPY number,
10 p_delimiter OUT NOCOPY varchar,
11 p_segment_array OUT NOCOPY FND_FLEX_EXT.SEGMENTARRAY,
12 p_concat_string OUT NOCOPY varchar,
13 p_log_level_rec IN FA_API_TYPES.log_level_rec_type default null) RETURN BOOLEAN IS
14
15 l_num number := 1;
16 error_found exception;
17
18 BEGIN
19
20 -- initialize
21 p_concat_string := '';
22
23 IF (NOT FND_FLEX_EXT.GET_SEGMENTS(p_application_short_name,
24 p_flex_code,
25 p_flex_num,
26 p_ccid,
27 p_num_segs,
28 p_segment_array)) THEN
29 RAISE error_found;
30 END IF;
31
32 p_delimiter := FND_FLEX_EXT.get_delimiter(
33 p_application_short_name,
34 p_flex_code,
35 p_flex_num);
36
37 if (p_delimiter is null) then
38 RAISE error_found;
39 end if;
40
41 -- fill the string for messaging with concat segs...
42
43 while (l_num <= p_num_segs) loop
44
45 if (l_num > 1) then
46 p_concat_string := p_concat_string || p_delimiter;
47 end if;
48
49 p_concat_string := p_concat_string || p_segment_array(l_num);
50
51 l_num := l_num + 1;
52
53 end loop;
54
55 return true;
56
57 EXCEPTION
58 when error_found then
59 fa_srvr_msg.add_message(calling_fn => 'fa_flex_pvt.get_concat_segs'
60 ,p_log_level_rec => p_log_level_rec);
61 return false;
62
63 when others then
64 fa_srvr_msg.add_sql_error(calling_fn => 'fa_flex_pvt.get_concat_segs'
65 ,p_log_level_rec => p_log_level_rec);
66 return false;
67
68 END get_concat_segs;
69
70
71 END FA_FLEX_PVT;