[Home] [Help]
PACKAGE BODY: APPS.FUN_TRX_ENTRY_UTIL
Source
1 PACKAGE BODY FUN_TRX_ENTRY_UTIL AS
2 -- $Header: funtrxentryutilb.pls 120.12 2006/03/27 23:19:25 dhaimes ship $
3
4 /****************************************************************
5 * FUNCTION : get_concatenated_accounted *
6 * *
7 * This function returns the concatenated segments for a *
8 * transaction type name given ccid *
9 ****************************************************************/
10
11 FUNCTION get_concatenated_account
12 (
13 p_ccid in NUMBER
14 ) RETURN VARCHAR2
15 IS
16
17 CURSOR c_details IS
18 SELECT fifs.concatenated_segment_delimiter,
19 gcc.segment1,
20 gcc.segment2,
21 gcc.segment3,
22 gcc.segment4,
23 gcc.segment5,
24 gcc.segment6,
25 gcc.segment7,
26 gcc.segment8,
27 gcc.segment9,
28 gcc.segment10,
29 gcc.segment11,
30 gcc.segment12,
31 gcc.segment13,
32 gcc.segment14,
33 gcc.segment15,
34 gcc.segment16,
35 gcc.segment17,
36 gcc.segment18,
37 gcc.segment19,
38 gcc.segment20,
39 gcc.segment21,
40 gcc.segment22,
41 gcc.segment23,
42 gcc.segment24,
43 gcc.segment25,
44 gcc.segment26,
45 gcc.segment27,
46 gcc.segment28,
47 gcc.segment29,
48 gcc.segment30
49 FROM fnd_id_flex_structures fifs,
50 gl_code_combinations gcc
51 WHERE fifs.application_id=101
52 AND fifs.id_flex_code = 'GL#'
53 AND fifs.id_flex_num = gcc.chart_of_accounts_id
54 AND gcc.code_combination_id = p_ccid;
55
56 l_concat_value varchar2(1000);
57 l_details c_details%rowtype;
58 l_nseg number;
59
60 BEGIN
61
62 OPEN c_details;
63 FETCH c_details INTO l_details;
64
65 IF c_details%NOTFOUND THEN
66 return null;
67 END IF;
68
69 CLOSE c_details;
70
71 SELECT count(1) into l_nseg
72 FROM fnd_id_flex_segments fifs,
73 gl_code_combinations glcc
74 WHERE fifs.application_id = 101 and
75 fifs.id_flex_code = 'GL#' and
76 fifs.id_flex_num = glcc.chart_of_accounts_id and
77 glcc.code_combination_id =p_ccid;
78
79 l_concat_value := FND_FLEX_SERVER.get_concatenated_value(
80 P_DELIMITER => l_details.concatenated_segment_delimiter,
81 P_SEGMENT_COUNT => l_nseg,
82 P_SEGMENT1 => l_details.segment1,
83 P_SEGMENT2 => l_details.segment2,
84 P_SEGMENT3 => l_details.segment3,
85 P_SEGMENT4 => l_details.segment4,
86 P_SEGMENT5 => l_details.segment5,
87 P_SEGMENT6 => l_details.segment6,
88 P_SEGMENT7 => l_details.segment7,
89 P_SEGMENT8 => l_details.segment8,
90 P_SEGMENT9 => l_details.segment9,
91 P_SEGMENT10 => l_details.segment10,
92 P_SEGMENT11 => l_details.segment11,
93 P_SEGMENT12 => l_details.segment12,
94 P_SEGMENT13 => l_details.segment13,
95 P_SEGMENT14 => l_details.segment14,
96 P_SEGMENT15 => l_details.segment15,
97 P_SEGMENT16 => l_details.segment16,
98 P_SEGMENT17 => l_details.segment17,
99 P_SEGMENT18 => l_details.segment18,
100 P_SEGMENT19 => l_details.segment19,
101 P_SEGMENT20 => l_details.segment20,
102 P_SEGMENT21 => l_details.segment21,
103 P_SEGMENT22 => l_details.segment22,
104 P_SEGMENT23 => l_details.segment23,
105 P_SEGMENT24 => l_details.segment24,
106 P_SEGMENT25 => l_details.segment25,
107 P_SEGMENT26 => l_details.segment26,
108 P_SEGMENT27 => l_details.segment27,
109 P_SEGMENT28 => l_details.segment28,
110 P_SEGMENT29 => l_details.segment29,
111 P_SEGMENT30 => l_details.segment30 );
112
113 RETURN (l_concat_value);
114
115 End get_concatenated_account;
116
117 /****************************************************************
118 * FUNCTION : get_ledger_id *
119 * *
120 * This function returns the ledger_id for a *
121 * intercompany organization *
122 ****************************************************************/
123
124 FUNCTION get_ledger_id
125 (
126 p_party_id IN NUMBER,
127 p_party_type IN Varchar2
128 ) RETURN NUMBER
129 IS
130 l_ledger_id Number;
131 l_return_id Number;
132
133 Begin
134
135 -- David Haimes bug 4962308
136 -- removed the hz_party table from the sql below as it was redundant.
137
138 SELECT ledger_id INTO l_return_id
139 FROM gl_ledger_le_v ledger_le, xle_firstparty_information_v le
140 WHERE fun_tca_pkg.get_le_id(p_party_id) = le.party_id
141 AND le.legal_entity_id = ledger_le.legal_entity_id
142 AND ledger_le.ledger_category_code = 'PRIMARY';
143
144 return l_return_id;
145
146 EXCEPTION
147 WHEN OTHERS THEN
148 l_return_id := -99;
149 return l_return_id;
150
151 end get_ledger_id;
152
153 /****************************************************************
154 * FUNCTION : get_default_ccid *
155 * *
156 * This function returns the default intercompany account (ccid)*
157 * for an initiator/recipient combination *
158 ****************************************************************/
159
160 FUNCTION get_default_ccid
161 (
162 p_from_le_id IN NUMBER,
163 p_to_le_id IN NUMBER,
164 p_type IN VARCHAR2
165 ) RETURN NUMBER
166 IS
167 l_cc_id Number;
168 Begin
169
170 begin
171 SELECT ccid INTO l_cc_id
172 FROM fun_inter_accounts
173 WHERE from_le_id = p_from_le_id
174 AND to_le_id = p_to_le_id
175 AND type = p_type
176 AND rownum = 1
177 ORDER by default_flag;
178 exception
179 when no_data_found then
180 SELECT ccid INTO l_cc_id
181 FROM fun_inter_accounts
182 WHERE from_le_id = p_from_le_id
183 AND to_le_id = -99
184 AND type = p_type
185 AND rownum = 1
186 ORDER by default_flag;
187 end;
188
189 return l_cc_id;
190
191 EXCEPTION
192 WHEN OTHERS THEN
193 l_cc_id := 0;
194 return l_cc_id;
195 END get_default_ccid;
196
197 /****************************************************************
198 * FUNCTION : log_debug *
199 * *
200 * This procedure calls fnd_log to log debug messages *
201 * Debug Levels: *
202 * LEVEL_UNEXPECTED CONSTANT NUMBER := 6; *
203 * LEVEL_ERROR CONSTANT NUMBER := 5; *
204 * LEVEL_EXCEPTION CONSTANT NUMBER := 4; *
205 * LEVEL_EVENT CONSTANT NUMBER := 3; *
206 * LEVEL_PROCEDURE CONSTANT NUMBER := 2; *
207 * LEVEL_STATEMENT CONSTANT NUMBER := 1; *
208 ****************************************************************/
209
210 PROCEDURE log_debug
211 (
212 p_log_level IN VARCHAR2 ,
213 p_module IN VARCHAR2,
214 p_message IN VARCHAR2
215 )
216 IS
217 l_debug_level NUMBER;
218 BEGIN
219 l_debug_level := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
220 IF (p_log_level >= l_debug_level) THEN
221 FND_LOG.STRING(p_log_level, p_module, p_message);
222 END IF;
223 END log_debug;
224
225 END FUN_TRX_ENTRY_UTIL;