[Home] [Help]
PACKAGE BODY: APPS.ARP_DISTRIBUTIONS_PKG
Source
1 PACKAGE BODY ARP_DISTRIBUTIONS_PKG AS
2 /* $Header: ARJIDSTB.pls 120.12 2005/06/02 22:52:16 hyu ship $*/
3 --
4 PG_DEBUG varchar2(1) := NVL(FND_PROFILE.value('AFLOG_ENABLED'), 'N');
5
6 PROCEDURE insert_p(
7 p_dist_rec IN ar_distributions%ROWTYPE,
8 p_line_id OUT NOCOPY ar_distributions.line_id%TYPE ) IS
9 l_line_id ar_distributions.line_id%TYPE;
10 exp_null_insert exception;
11 pragma exception_init(exp_null_insert, -1400);
12 BEGIN
13 IF PG_DEBUG in ('Y', 'C') THEN
14 arp_standard.debug( 'arp_distributions_pkg.insert_p()+' );
15 END IF;
16 --
17 SELECT ar_distributions_s.nextval
18 INTO l_line_id
19 FROM dual;
20 --
21 IF PG_DEBUG in ('Y', 'C') THEN
22 arp_standard.debug( 'LINE ID '|| l_line_id);
23 arp_standard.debug( 'SOURCE_ID ' || p_dist_rec.SOURCE_ID);
24 arp_standard.debug( 'SOURCE_TABLE ' || p_dist_rec.SOURCE_TABLE);
25 arp_standard.debug( 'SOURCE_TYPE ' || p_dist_rec.SOURCE_TYPE);
26 arp_standard.debug( 'SOURCE_TYPE_SECONDARY ' || p_dist_rec.SOURCE_TYPE_SECONDARY);
27 arp_standard.debug( 'CODE_COMBINATION_ID '||p_dist_rec.CODE_COMBINATION_ID);
28 arp_standard.debug( 'AMOUNT_DR ' || p_dist_rec.AMOUNT_DR);
29 arp_standard.debug( 'AMOUNT_CR ' || p_dist_rec.AMOUNT_CR);
30 arp_standard.debug( 'ACCTD_AMOUNT_DR ' || p_dist_rec.ACCTD_AMOUNT_DR);
31 arp_standard.debug( 'ACCTD_AMOUNT_CR ' ||p_dist_rec.ACCTD_AMOUNT_CR);
32 arp_standard.debug( 'SOURCE_TABLE_SECONDARY ' || p_dist_rec.SOURCE_TABLE_SECONDARY);
33 arp_standard.debug( 'SOURCE_ID_SECONDARY ' || p_dist_rec.SOURCE_ID_SECONDARY);
34 arp_standard.debug( 'CURRENCY_CODE ' || p_dist_rec.CURRENCY_CODE);
35 arp_standard.debug( 'CURRENCY_CONVERSION_RATE ' || p_dist_rec.CURRENCY_CONVERSION_RATE);
36 arp_standard.debug( 'CURRENCY_CONVERSION_TYPE ' || p_dist_rec.CURRENCY_CONVERSION_TYPE);
37 arp_standard.debug( 'CURRENCY_CONVERSION_DATE ' || p_dist_rec.CURRENCY_CONVERSION_DATE);
38 arp_standard.debug( 'TAXABLE_ENTERED_DR ' || p_dist_rec.TAXABLE_ENTERED_DR);
39 arp_standard.debug( 'TAXABLE_ENTERED_CR ' || p_dist_rec.TAXABLE_ENTERED_CR);
40 arp_standard.debug( 'TAXABLE_ACCOUNTED_DR ' || p_dist_rec.TAXABLE_ACCOUNTED_DR);
41 arp_standard.debug( 'TAXABLE_ACCOUNTED_CR ' || p_dist_rec.TAXABLE_ACCOUNTED_CR);
42 arp_standard.debug( 'TAX_LINK_ID ' || p_dist_rec.TAX_LINK_ID);
43 arp_standard.debug( 'THIRD_PARTY_ID ' || p_dist_rec.THIRD_PARTY_ID);
44 arp_standard.debug( 'THIRD_PARTY_SUB_ID ' || p_dist_rec.THIRD_PARTY_SUB_ID);
45 arp_standard.debug( 'REVERSED_SOURCE_ID ' || p_dist_rec.REVERSED_SOURCE_ID);
46 arp_standard.debug( 'TAX_GROUP_CODE_ID ' || p_dist_rec.TAX_GROUP_CODE_ID);
47 arp_standard.debug( 'TAX_CODE_ID ' || p_dist_rec.TAX_CODE_ID);
48 arp_standard.debug( 'LOCATION_SEGMENT_ID ' || p_dist_rec.LOCATION_SEGMENT_ID);
49 --HYU--{
50 arp_standard.debug( 'FROM_AMOUNT_DR ' || p_dist_rec.FROM_AMOUNT_DR);
51 arp_standard.debug( 'FROM_AMOUNT_CR ' || p_dist_rec.FROM_AMOUNT_CR);
52 arp_standard.debug( 'FROM_ACCTD_AMOUNT_DR ' || p_dist_rec.FROM_ACCTD_AMOUNT_DR);
53 arp_standard.debug( 'FROMACCTD_AMOUNT_CR ' || p_dist_rec.FROM_ACCTD_AMOUNT_CR);
54 arp_standard.debug( 'ref_account_class ' || p_dist_rec.ref_account_class);
55 arp_standard.debug( 'activity_bucket ' || p_dist_rec.activity_bucket);
56 arp_standard.debug( 'REF_DIST_CCID ' || p_dist_rec.ref_dist_ccid);
57 arp_standard.debug( 'REF_MF_DIST_FLAG ' || p_dist_rec.ref_mf_dist_flag);
58 --HYU--}
59 END IF;
60
61 INSERT INTO ar_distributions (
62 line_id,
63 source_id,
64 source_table,
65 source_type,
66 source_type_secondary,
67 code_combination_id,
68 amount_dr,
69 amount_cr,
70 acctd_amount_dr,
71 acctd_amount_cr,
72 created_by,
73 creation_date,
74 last_updated_by,
75 last_update_date,
76 last_update_login,
77 source_id_secondary,
78 source_table_secondary,
79 currency_code ,
80 currency_conversion_rate,
81 currency_conversion_type,
82 currency_conversion_date,
83 third_party_id,
84 third_party_sub_id,
85 tax_code_id,
86 location_segment_id,
87 taxable_entered_dr,
88 taxable_entered_cr,
89 taxable_accounted_dr,
90 taxable_accounted_cr,
91 tax_link_id,
92 reversed_source_id,
93 tax_group_code_id
94 ,org_id
95 --{BUG#2979254
96 ,ref_customer_trx_line_id
97 ,ref_cust_trx_line_gl_dist_id
98 ,ref_line_id
99 ,from_amount_dr
100 ,from_amount_cr
101 ,from_acctd_amount_dr
102 ,from_acctd_amount_cr
103 ,ref_account_class
104 ,activity_bucket
105 ,ref_dist_ccid
106 ,ref_mf_dist_flag
107 --}
108 )
109 VALUES ( l_line_id,
110 p_dist_rec.source_id,
111 p_dist_rec.source_table,
112 p_dist_rec.source_type,
113 p_dist_rec.source_type_secondary,
114 p_dist_rec.code_combination_id,
115 p_dist_rec.amount_dr,
116 p_dist_rec.amount_cr,
117 p_dist_rec.acctd_amount_dr,
118 p_dist_rec.acctd_amount_cr,
119 arp_standard.profile.user_id,
120 SYSDATE,
121 arp_standard.profile.user_id,
122 SYSDATE,
123 NVL( arp_standard.profile.last_update_login,
124 p_dist_rec.last_update_login ),
125 p_dist_rec.source_id_secondary,
126 p_dist_rec.source_table_secondary,
127 p_dist_rec.currency_code ,
128 p_dist_rec.currency_conversion_rate,
129 p_dist_rec.currency_conversion_type,
130 p_dist_rec.currency_conversion_date,
131 p_dist_rec.third_party_id,
132 p_dist_rec.third_party_sub_id,
133 p_dist_rec.tax_code_id,
134 p_dist_rec.location_segment_id,
135 p_dist_rec.taxable_entered_dr,
136 p_dist_rec.taxable_entered_cr,
137 p_dist_rec.taxable_accounted_dr,
138 p_dist_rec.taxable_accounted_cr,
139 p_dist_rec.tax_link_id,
140 p_dist_rec.reversed_source_id,
141 p_dist_rec.tax_group_code_id
142 ,arp_standard.sysparm.org_id /* SSA changes anuj */
143 --{BUG#2979254
144 ,p_dist_rec.ref_customer_trx_line_id
145 ,p_dist_rec.ref_cust_trx_line_gl_dist_id
146 ,p_dist_rec.ref_line_id
147 ,p_dist_rec.from_amount_dr
148 ,p_dist_rec.from_amount_cr
149 ,p_dist_rec.from_acctd_amount_dr
150 ,p_dist_rec.from_acctd_amount_cr
151 ,p_dist_rec.ref_account_class
152 ,p_dist_rec.activity_bucket
153 ,p_dist_rec.ref_dist_ccid
154 ,p_dist_rec.ref_mf_dist_flag
155 --}
156 );
157 --
158 p_line_id := l_line_id;
159 --
160 IF PG_DEBUG in ('Y', 'C') THEN
161 arp_standard.debug( 'arp_distributions_pkg.insert_p()-' );
162 END IF;
163 EXCEPTION
164 WHEN exp_null_insert THEN
165 FND_MESSAGE.SET_NAME('AR','AR_INS_NULL_INTO_NOTNULL');
166 APP_EXCEPTION.RAISE_EXCEPTION;
167 WHEN OTHERS THEN
168 IF PG_DEBUG in ('Y', 'C') THEN
169 arp_standard.debug( 'EXCEPTION: arp_distributions_pkg.insert_p' );
170 END IF;
171 RAISE;
172 END insert_p;
173 --
174 PROCEDURE update_p(
175 p_dist_rec IN ar_distributions%ROWTYPE ) IS
176 BEGIN
177 IF PG_DEBUG in ('Y', 'C') THEN
178 arp_standard.debug( 'arp_distributions_pkg.update_p()+' );
179 END IF;
180 --
181 UPDATE ar_distributions SET
182 source_id = p_dist_rec.source_id,
183 source_table = p_dist_rec.source_table,
184 source_type = p_dist_rec.source_type,
185 source_type_secondary = p_dist_rec.source_type_secondary,
186 code_combination_id = p_dist_rec.code_combination_id,
187 amount_dr = p_dist_rec.amount_dr,
188 amount_cr = p_dist_rec.amount_cr,
189 acctd_amount_dr = p_dist_rec.acctd_amount_dr,
190 acctd_amount_cr = p_dist_rec.acctd_amount_cr,
191 last_updated_by = arp_standard.profile.user_id,
192 last_update_date = SYSDATE,
193 last_update_login = NVL( arp_standard.profile.last_update_login,
194 p_dist_rec.last_update_login ),
195 source_id_secondary = p_dist_rec.source_id_secondary,
196 source_table_secondary = p_dist_rec.source_table_secondary,
197 currency_code = p_dist_rec.currency_code,
198 currency_conversion_rate = p_dist_rec.currency_conversion_rate,
199 currency_conversion_type = p_dist_rec.currency_conversion_type,
200 currency_conversion_date = p_dist_rec.currency_conversion_date,
201 third_party_id = p_dist_rec.third_party_id,
202 third_party_sub_id = p_dist_rec.third_party_sub_id,
203 tax_code_id = p_dist_rec.tax_code_id,
204 location_segment_id = p_dist_rec.location_segment_id,
205 taxable_entered_dr = p_dist_rec.taxable_entered_dr,
206 taxable_entered_cr = p_dist_rec.taxable_entered_cr,
207 taxable_accounted_dr = p_dist_rec.taxable_accounted_dr,
208 taxable_accounted_cr = p_dist_rec.taxable_accounted_cr,
209 tax_link_id = p_dist_rec.tax_link_id,
210 reversed_source_id = p_dist_rec.reversed_source_id,
211 tax_group_code_id = p_dist_rec.tax_group_code_id,
212 --{BUG#2979254
213 ref_customer_trx_line_id = p_dist_rec.ref_customer_trx_line_id,
214 ref_cust_trx_line_gl_dist_id = p_dist_rec.ref_cust_trx_line_gl_dist_id,
215 ref_line_id = p_dist_rec.ref_line_id,
216 from_amount_dr = p_dist_rec.from_amount_dr,
217 from_amount_cr = p_dist_rec.from_amount_cr,
218 from_acctd_amount_dr = p_dist_rec.from_acctd_amount_dr,
219 from_acctd_amount_cr = p_dist_rec.from_acctd_amount_cr,
220 ref_account_class = p_dist_rec.ref_account_class,
221 activity_bucket = p_dist_rec.activity_bucket,
222 ref_dist_ccid = p_dist_rec.ref_dist_ccid,
223 ref_mf_dist_flag = p_dist_rec.ref_mf_dist_flag
224 --}
225 WHERE line_id = p_dist_rec.line_id;
226 --
227 IF PG_DEBUG in ('Y', 'C') THEN
228 arp_standard.debug( 'arp_distributions_pkg.update_p()-' );
229 END IF;
230 EXCEPTION
231 WHEN OTHERS THEN
232 IF PG_DEBUG in ('Y', 'C') THEN
233 arp_standard.debug( 'EXCEPTION: arp_distributions_pkg.update_p' );
234 END IF;
235 RAISE;
236 END update_p;
237 --
238 PROCEDURE delete_p(
239 p_line_id IN ar_distributions.line_id%TYPE ) IS
240 BEGIN
241 IF PG_DEBUG in ('Y', 'C') THEN
242 arp_standard.debug( 'arp_distributions_pkg.delete_p()+' );
243 END IF;
244 --
245 DELETE FROM ar_distributions
246 WHERE line_id = p_line_id;
247 --
248 IF PG_DEBUG in ('Y', 'C') THEN
249 arp_standard.debug( 'arp_distributions_pkg.delete_p()-' );
250 END IF;
251 EXCEPTION
252 WHEN OTHERS THEN
253 IF PG_DEBUG in ('Y', 'C') THEN
254 arp_standard.debug( 'EXCEPTION: arp_distributions_pkg.delete_p' );
255 END IF;
256 RAISE;
257 END delete_p;
258 --
259 PROCEDURE lock_p(
260 p_line_id IN ar_distributions.line_id%TYPE ) IS
261 l_line_id ar_distributions.line_id%TYPE;
262 BEGIN
263 IF PG_DEBUG in ('Y', 'C') THEN
264 arp_standard.debug( 'arp_distributions_pkg.lock_p()+' );
265 END IF;
266 SELECT line_id
267 INTO l_line_id
268 FROM ar_distributions
269 WHERE line_id = p_line_id
270 FOR UPDATE OF line_id;
271 --
272 IF PG_DEBUG in ('Y', 'C') THEN
273 arp_standard.debug( 'arp_distributions_pkg.lock_p()-' );
274 END IF;
275 EXCEPTION
276 WHEN OTHERS THEN
277 IF PG_DEBUG in ('Y', 'C') THEN
278 arp_standard.debug( 'EXCEPTION: arp_distributions_pkg.lock_p' );
279 END IF;
280 RAISE;
281 END lock_p;
282 --
283 PROCEDURE fetch_p(
284 p_line_id IN ar_distributions.line_id%TYPE,
285 p_dist_rec OUT NOCOPY ar_distributions%ROWTYPE ) IS
286 BEGIN
287 IF PG_DEBUG in ('Y', 'C') THEN
288 arp_standard.debug( 'arp_distributions_pkg.fetch_p()+' );
289 END IF;
290 SELECT *
291 INTO p_dist_rec
292 FROM ar_distributions
293 WHERE line_id = p_line_id;
294 IF PG_DEBUG in ('Y', 'C') THEN
295 arp_standard.debug( 'arp_distributions_pkg.fetch_p()-' );
296 END IF;
297 --
298 EXCEPTION
299 --
300 WHEN OTHERS THEN
301 IF PG_DEBUG in ('Y', 'C') THEN
302 arp_standard.debug( 'EXCEPTION: arp_distributions_pkg.fetch_p' );
303 END IF;
304 RAISE;
305 END fetch_p;
306 --
307 PROCEDURE fetch_pk(
308 p_source_id IN ar_distributions.source_id%TYPE,
309 p_source_table IN ar_distributions.source_table%TYPE,
310 p_source_type IN ar_distributions.source_type%TYPE,
311 p_dist_rec OUT NOCOPY ar_distributions%ROWTYPE ) IS
312 BEGIN
313 IF PG_DEBUG in ('Y', 'C') THEN
314 arp_standard.debug( 'arp_distributions_pkg.fetch_pk()+' );
315 END IF;
316 SELECT *
317 INTO p_dist_rec
318 FROM ar_distributions
319 WHERE source_id = p_source_id
320 AND source_table = p_source_table
321 AND source_type = p_source_type;
322 IF PG_DEBUG in ('Y', 'C') THEN
323 arp_standard.debug( 'arp_distributions_pkg.fetch_pk()-' );
324 END IF;
325 --
326 EXCEPTION
327 --
328 WHEN OTHERS THEN
329 IF PG_DEBUG in ('Y', 'C') THEN
330 arp_standard.debug( 'EXCEPTION: arp_distributions_pkg.fetch_pk' );
331 END IF;
332 RAISE;
333 END fetch_pk;
334 --
335 PROCEDURE lock_fetch_pk(
336 p_source_id IN ar_distributions.source_id%TYPE,
337 p_source_table IN ar_distributions.source_table%TYPE,
338 p_source_type IN ar_distributions.source_type%TYPE,
339 p_dist_rec OUT NOCOPY ar_distributions%ROWTYPE ) IS
340 BEGIN
341 IF PG_DEBUG in ('Y', 'C') THEN
342 arp_standard.debug( 'arp_distributions_pkg.lock_fetch_pk()+' );
343 END IF;
344 SELECT *
345 INTO p_dist_rec
346 FROM ar_distributions
347 WHERE source_id = p_source_id
348 AND source_table = p_source_table
349 AND source_type = p_source_type
350 FOR UPDATE OF line_id;
351
352 IF PG_DEBUG in ('Y', 'C') THEN
353 arp_standard.debug( 'arp_distributions_pkg.lock_fetch_pk()-' );
354 END IF;
355 --
356 EXCEPTION
357 --
358 WHEN OTHERS THEN
359 IF PG_DEBUG in ('Y', 'C') THEN
360 arp_standard.debug( 'EXCEPTION: arp_distributions_pkg.lock_fetch_pk' );
361 END IF;
362 RAISE;
363 END lock_fetch_pk;
364 --
365 PROCEDURE nowaitlock_fetch_pk(
366 p_source_id IN ar_distributions.source_id%TYPE,
367 p_source_table IN ar_distributions.source_table%TYPE,
368 p_source_type IN ar_distributions.source_type%TYPE,
369 p_dist_rec OUT NOCOPY ar_distributions%ROWTYPE ) IS
370 BEGIN
371 IF PG_DEBUG in ('Y', 'C') THEN
372 arp_standard.debug( 'arp_distributions_pkg.nowaitlock_fetch_pk()+' );
373 END IF;
374 SELECT *
375 INTO p_dist_rec
376 FROM ar_distributions
377 WHERE source_id = p_source_id
378 AND source_table = p_source_table
379 AND source_type = p_source_type
380 FOR UPDATE OF line_id NOWAIT;
381
382 IF PG_DEBUG in ('Y', 'C') THEN
383 arp_standard.debug( 'arp_distributions_pkg.nowaitlock_fetch_pk()-' );
384 END IF;
385 --
386 EXCEPTION
387 --
388 WHEN OTHERS THEN
389 IF PG_DEBUG in ('Y', 'C') THEN
390 arp_standard.debug( 'EXCEPTION: arp_distributions_pkg.nowaitlock_fetch_pk' );
391 END IF;
392 RAISE;
393 END nowaitlock_fetch_pk;
394 --
395 END ARP_DISTRIBUTIONS_PKG;