[Home] [Help]
PACKAGE BODY: APPS.ARP_XLA_EXTRACT_MAIN_PKG
Source
1 PACKAGE BODY arp_xla_extract_main_pkg AS
2 /* $Header: ARPXLEXB.pls 120.189.12020000.7 2012/11/01 02:04:48 samara ship $ */
3
4 TYPE t_lock IS TABLE OF VARCHAR2(30) INDEX BY BINARY_INTEGER;
5 l_lock t_lock;
6
7 l_multi_fund VARCHAR2(1) DEFAULT 'N';
8 l_max_event_test NUMBER DEFAULT 10;
9
10 PG_DEBUG varchar2(1) := NVL(FND_PROFILE.value('AFLOG_ENABLED'), 'N');
11
12 /*--------------------------------------------------------+
13 | Dummy constants for use in update and lock operations |
14 +--------------------------------------------------------*/
15 AR_TEXT_DUMMY CONSTANT VARCHAR2(20) := '~~!@#$*&^';
16 AR_FLAG_DUMMY CONSTANT VARCHAR2(10) := '~';
17 AR_NUMBER_DUMMY CONSTANT NUMBER(15) := -999999999999999;
18 AR_DATE_DUMMY CONSTANT DATE := to_date(1, 'J');
19
20 -- bug 7197528
21 TYPE glr_ccid_cache_tab IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
22 g_glr_ccid_cache_tab glr_ccid_cache_tab;
23
24 --bug9076896
25 TYPE cm_app_extract_record IS RECORD (
26 EVENT_ID NUMBER(15)
27 ,MFAR_ADDITIONAL_ENTRY VARCHAR2(30)
28 ,LEDGER_ID NUMBER(15)
29 ,BASE_CURRENCY_CODE VARCHAR2(15)
30 ,ORG_ID NUMBER(15)
31 ,LINE_ID NUMBER(15)
32 ,SOURCE_ID NUMBER(15)
33 ,SOURCE_TABLE VARCHAR2(10)
34 ,HEADER_TABLE_ID NUMBER(15)
35 ,POSTING_ENTITY VARCHAR2(20)
36 ,XLA_ENTITY_ID NUMBER(15)
37
38 ,DIST_CCID NUMBER(15)
39 ,REF_DIST_CCID NUMBER
40
41 ,FROM_CURRENCY_CODE VARCHAR2(30)
42 ,FROM_EXCHANGE_RATE NUMBER
43 ,FROM_EXCHANGE_RATE_TYPE VARCHAR2(30)
44 ,FROM_EXCHANGE_DATE DATE
45 ,CM_AMT_APP_TO_INV_LINE NUMBER
46 ,CM_ACCTD_AMT_APP_TO_INV_LINE NUMBER
47
48 ,TO_CURRENCY_CODE VARCHAR2(30)
49 ,EXCHANGE_RATE NUMBER
50 ,EXCHANGE_RATE_TYPE VARCHAR2(30)
51 ,EXCHANGE_DATE DATE
52 ,AMOUNT NUMBER
53 ,ACCTD_AMOUNT NUMBER
54
55 ,RECEIVABLE_APPLICATION_ID NUMBER(15)
56 ,CUSTOMER_TRX_ID NUMBER(15)
57 ,CUSTOMER_TRX_LINE_ID NUMBER(15)
58 ,CUST_TRX_LINE_GL_DIST_ID NUMBER(15)
59
60 ,INVENTORY_ITEM_ID NUMBER(15)
61 ,SALES_TAX_ID NUMBER(15)
62 ,SET_OF_BOOKS_ID NUMBER(15)
63 ,BILL_SITE_USE_ID NUMBER(15)
64 ,SOLD_SITE_USE_ID NUMBER(15)
65 ,SHIP_SITE_USE_ID NUMBER(15)
66 ,BILL_CUSTOMER_ID NUMBER(15)
67 ,SOLD_CUSTOMER_ID NUMBER(15)
68 ,SHIP_CUSTOMER_ID NUMBER(15)
69 ,TAX_LINE_ID NUMBER(15)
70
71 ,SELECT_FLAG VARCHAR2(1)
72 ,LEVEL_FLAG VARCHAR2(1)
73 ,FROM_TO_FLAG VARCHAR2(1)
74
75 ,EVENT_TYPE_CODE VARCHAR2(30)
76 ,EVENT_CLASS_CODE VARCHAR2(30)
77 ,ENTITY_CODE VARCHAR2(30)
78
79 ,THIRD_PARTY_ID NUMBER(15)
80 ,THIRD_PARTY_SITE_ID NUMBER(15)
81 ,THIRD_PARTY_TYPE VARCHAR2(30)
82 ,SOURCE_TYPE VARCHAR2(30)
83
84 ,CM_APP_LINE_AMT NUMBER
85 ,CM_APP_LINE_ACCTD_AMT NUMBER
86 ,AMOUNT_APPLIED NUMBER
87 ,ACCTD_AMOUNT_APPLIED_FROM NUMBER
88 ,FROM_DIST_LINE_ID NUMBER(15)
89 ,LINE_NUMBER NUMBER(15)
90 );
91 TYPE cm_app_extract_record_type IS TABLE OF cm_app_extract_record
92 INDEX BY BINARY_INTEGER;
93 -- end bug9076896
94
95 -- bug 7458133
96 TYPE crh_mfar_extract_record IS RECORD (
97 EVENT_ID NUMBER(15)
98 ,MFAR_ADDITIONAL_ENTRY VARCHAR2(30)
99 ,LEDGER_ID NUMBER(15)
100 ,BASE_CURRENCY_CODE VARCHAR2(15)
101 ,ORG_ID NUMBER(15)
102 ,LINE_ID NUMBER(15)
103 ,SOURCE_ID NUMBER(15)
104 ,SOURCE_TABLE VARCHAR2(10)
105 ,HEADER_TABLE_ID NUMBER(15)
106 ,POSTING_ENTITY VARCHAR2(20)
107 ,XLA_ENTITY_ID NUMBER(15)
108 --
109 ,DIST_CCID NUMBER(15)
110 ,REF_DIST_CCID NUMBER
111 ,REF_CTLGD_CCID NUMBER(15)
112
113 ,FROM_CURRENCY_CODE VARCHAR2(30)
114 ,FROM_EXCHANGE_RATE NUMBER
115 ,FROM_EXCHANGE_RATE_TYPE VARCHAR2(30)
116 ,FROM_EXCHANGE_DATE DATE
117 ,FROM_AMOUNT NUMBER
118 ,FROM_ACCTD_AMOUNT NUMBER
119 --
120 ,TO_CURRENCY_CODE VARCHAR2(30)
121 ,EXCHANGE_RATE NUMBER
122 ,EXCHANGE_RATE_TYPE VARCHAR2(30)
123 ,EXCHANGE_DATE DATE
124 ,AMOUNT NUMBER
125 ,ACCTD_AMOUNT NUMBER
126 --
127 ,RECEIVABLE_APPLICATION_ID NUMBER(15)
128 ,CASH_RECEIPT_ID NUMBER(15)
129 ,CUSTOMER_TRX_ID NUMBER(15)
130 ,CUSTOMER_TRX_LINE_ID NUMBER(15)
131 ,CUST_TRX_LINE_GL_DIST_ID NUMBER(15)
132 --
133 ,INVENTORY_ITEM_ID NUMBER(15)
134 ,SALES_TAX_ID NUMBER(15)
135 ,SET_OF_BOOKS_ID NUMBER(15)
136 ,BILL_SITE_USE_ID NUMBER(15)
137 ,SOLD_SITE_USE_ID NUMBER(15)
138 ,SHIP_SITE_USE_ID NUMBER(15)
139 ,BILL_CUSTOMER_ID NUMBER(15)
140 ,SOLD_CUSTOMER_ID NUMBER(15)
141 ,SHIP_CUSTOMER_ID NUMBER(15)
142 ,TAX_LINE_ID NUMBER(15)
143 --
144 ,SELECT_FLAG VARCHAR2(1)
145 ,LEVEL_FLAG VARCHAR2(1)
146 ,FROM_TO_FLAG VARCHAR2(1)
147 ,CRH_STATUS VARCHAR2(30)
148 ,APP_CRH_STATUS VARCHAR2(30)
149 --
150 ,EVENT_TYPE_CODE VARCHAR2(30)
151 ,EVENT_CLASS_CODE VARCHAR2(30)
152 ,ENTITY_CODE VARCHAR2(30)
153 --
154 ,THIRD_PARTY_ID NUMBER(15)
155 ,THIRD_PARTY_SITE_ID NUMBER(15)
156 ,THIRD_PARTY_TYPE VARCHAR2(30)
157 ,SOURCE_TYPE VARCHAR2(30)
158 --
159 ,RECP_AMOUNT NUMBER
160 ,RECP_ACCTD_AMOUNT NUMBER
161 ,CRH_AMOUNT NUMBER
162 ,CRH_ACCTD_AMOUNT NUMBER
163 ,CRH_RECORD_ID NUMBER(15)
164 ,ALLOC_AMOUNT NUMBER
165 ,ALLOC_ACCTD_AMOUNT NUMBER
166 ,MAX_LINE_ID NUMBER(15)
167 ,MFAR_UPG_TRX VARCHAR2(1)
168 ,LINE_NUMBER NUMBER(15)
169 );
170 TYPE crh_mfar_extract_record_type IS TABLE OF crh_mfar_extract_record
171 INDEX BY BINARY_INTEGER;
172
173 TYPE ar_xla_extract_record IS RECORD (
174 EVENT_ID NUMBER(15)
175 ,LINE_NUMBER NUMBER(15)
176 ,LANGUAGE VARCHAR2(20)
177 ,LEDGER_ID NUMBER(15)
178 ,SOURCE_ID NUMBER(15)
179 ,SOURCE_TABLE VARCHAR2(10)
180 ,SOURCE_TYPE VARCHAR2(30)
181 ,LINE_ID NUMBER(15)
182 ,TAX_CODE_ID NUMBER(15)
183 ,LOCATION_SEGMENT_ID NUMBER(15)
184 ,BASE_CURRENCY_CODE VARCHAR2(15)
185 ,EXCHANGE_RATE_TYPE VARCHAR2(30)
186 ,EXCHANGE_RATE NUMBER
187 ,EXCHANGE_DATE DATE
188 ,ACCTD_AMOUNT NUMBER
189 ,TAXABLE_ACCTD_AMOUNT NUMBER
190 ,ORG_ID NUMBER(15)
191 ,HEADER_TABLE_ID NUMBER(15)
192 ,POSTING_ENTITY VARCHAR2(20)
193 ,AMOUNT_APPLIED NUMBER
194 ,AMOUNT_APPLIED_FROM NUMBER
195 ,ACCTD_AMOUNT_APPLIED_FROM NUMBER
196 ,CASH_RECEIPT_ID NUMBER(15)
197 ,CUSTOMER_TRX_ID NUMBER(15)
198 ,CUSTOMER_TRX_LINE_ID NUMBER(15)
199 ,CUST_TRX_LINE_GL_DIST_ID NUMBER(15)
200 ,CUST_TRX_LINE_SALESREP_ID NUMBER(15)
201 ,INVENTORY_ITEM_ID NUMBER(15)
202 ,SALES_TAX_ID NUMBER(15)
203 ,SO_ORGANIZATION_ID NUMBER(15)
204 ,TAX_EXEMPTION_ID NUMBER(15)
205 ,UOM_CODE VARCHAR2(3)
206 ,WAREHOUSE_ID NUMBER(15)
207 ,AGREEMENT_ID NUMBER(15)
208 ,CUSTOMER_BANK_ACCT_ID NUMBER(15)
209 ,DRAWEE_BANK_ACCOUNT_ID NUMBER(15)
210 ,REMITTANCE_BANK_ACCT_ID NUMBER(15)
211 ,DISTRIBUTION_SET_ID NUMBER(15)
212 ,PAYMENT_SCHEDULE_ID NUMBER(15)
213 ,RECEIPT_METHOD_ID NUMBER(15)
214 ,RECEIVABLES_TRX_ID NUMBER(15)
215 ,ED_ADJ_RECEIVABLES_TRX_ID NUMBER(15)
216 ,UNED_RECEIVABLES_TRX_ID NUMBER(15)
217 ,SET_OF_BOOKS_ID NUMBER(15)
218 ,SALESREP_ID NUMBER(15)
219 ,BILL_SITE_USE_ID NUMBER(15)
220 ,DRAWEE_SITE_USE_ID NUMBER(15)
221 ,PAYING_SITE_USE_ID NUMBER(15)
222 ,SOLD_SITE_USE_ID NUMBER(15)
223 ,SHIP_SITE_USE_ID NUMBER(15)
224 ,RECEIPT_CUSTOMER_SITE_USE_ID NUMBER(15)
225 ,BILL_CUST_ROLE_ID NUMBER(15)
226 ,DRAWEE_CUST_ROLE_ID NUMBER(15)
227 ,SHIP_CUST_ROLE_ID NUMBER(15)
228 ,SOLD_CUST_ROLE_ID NUMBER(15)
229 ,BILL_CUSTOMER_ID NUMBER(15)
230 ,DRAWEE_CUSTOMER_ID NUMBER(15)
231 ,PAYING_CUSTOMER_ID NUMBER(15)
232 ,SOLD_CUSTOMER_ID NUMBER(15)
233 ,SHIP_CUSTOMER_ID NUMBER(15)
234 ,REMIT_ADDRESS_ID NUMBER(15)
235 ,RECEIPT_BATCH_ID NUMBER(15)
236 ,RECEIVABLE_APPLICATION_ID NUMBER(15)
237 ,CUSTOMER_BANK_BRANCH_ID NUMBER(15)
238 ,ISSUER_BANK_BRANCH_ID NUMBER(15)
239 ,BATCH_SOURCE_ID NUMBER(15)
240 ,BATCH_ID NUMBER(15)
241 ,TERM_ID NUMBER(15)
242 ,SELECT_FLAG VARCHAR2(1)
243 ,LEVEL_FLAG VARCHAR2(1)
244 ,FROM_TO_FLAG VARCHAR2(1)
245 ,FROM_AMOUNT NUMBER
246 ,AMOUNT NUMBER
247 ,FROM_ACCTD_AMOUNT NUMBER
248 ,EVENT_TYPE_CODE VARCHAR2(30)
249 ,EVENT_CLASS_CODE VARCHAR2(30)
250 ,ENTITY_CODE VARCHAR2(30)
251 ,MFAR_ADDITIONAL_ENTRY VARCHAR2(30)
252 ,REF_MF_DIST_FLAG VARCHAR2(1)
253 );
254 TYPE ar_xla_extract_record_type IS TABLE OF ar_xla_extract_record
255 INDEX BY BINARY_INTEGER;
256
257
258 TYPE ar_cm_from_record IS RECORD (
259 ENTITY_ID NUMBER(15)
260 ,RECEIVABLE_APPLICATION_ID NUMBER(15)
261 ,LINE_ID NUMBER(15)
262 ,SOURCE_TYPE VARCHAR2(30)
263 ,CUSTOMER_TRX_ID NUMBER(15)
264 ,AMOUNT NUMBER
265 ,ACCTD_AMOUNT NUMBER
266 ,AMOUNT_APPLIED_FROM NUMBER
267 ,ACCTD_AMOUNT_APPLIED_FROM NUMBER
268 ,CODE_COMBINATION_ID NUMBER(15)
269 ,EXCHANGE_DATE DATE
270 ,EXCHANGE_RATE NUMBER
271 ,EXCHANGE_RATE_TYPE VARCHAR2(30)
272 ,THIRD_PARTY_ID NUMBER(15)
273 ,THIRD_PARTY_SUB_ID NUMBER(15)
274 ,EVENT_ID NUMBER(15)
275 ,LEDGER_ID NUMBER(15)
276 ,CURRENCY_CODE VARCHAR2(30)
277 ,ORG_ID NUMBER(15)
278 ,BASE_CURRENCY_CODE VARCHAR2(15)
279 );
280
281 TYPE ar_cm_to_record IS RECORD (
282 ENTITY_ID NUMBER(15)
283 ,RECEIVABLE_APPLICATION_ID NUMBER(15)
284 ,LINE_ID NUMBER(15)
285 ,AMOUNT NUMBER
286 ,ACCTD_AMOUNT NUMBER
287 ,FROM_AMOUNT NUMBER
288 ,FROM_ACCTD_AMOUNT NUMBER
289 ,THIRD_PARTY_ID NUMBER(15)
290 ,THIRD_PARTY_SITE_ID NUMBER(15)
291 ,THIRD_PARTY_TYPE VARCHAR2(30)
292 ,CURRENCY_CODE VARCHAR2(30)
293 ,EXCHANGE_RATE NUMBER
294 ,EXCHANGE_TYPE VARCHAR2(30)
295 ,EXCHANGE_DATE DATE
296 ,REF_CUSTOMER_TRX_LINE_ID NUMBER(15)
297 ,REF_CUST_TRX_LINE_GL_DIST_ID NUMBER(15)
298 ,CODE_COMBINATION_ID NUMBER(15)
299 ,REF_DIST_CCID NUMBER(15)
300 ,ACTIVITY_BUCKET VARCHAR2(30)
301 ,SOURCE_TYPE VARCHAR2(30)
302 ,SOURCE_TABLE VARCHAR2(30)
303 ,RA_POST_INDICATOR VARCHAR2(30)
304 ,CUSTOMER_TRX_ID NUMBER(15)
305 ,INVENTORY_ITEM_ID NUMBER(15)
306 ,SALES_TAX_ID NUMBER(15)
307 ,TAX_LINE_ID NUMBER(15)
308 ,BILL_TO_CUSTOMER_ID NUMBER(15)
309 ,BILL_TO_SITE_USE_ID NUMBER(15)
310 ,SOLD_TO_CUSTOMER_ID NUMBER(15)
311 ,SOLD_TO_SITE_USE_ID NUMBER(15)
312 ,SHIP_TO_CUSTOMER_ID NUMBER(15)
313 ,SHIP_TO_SITE_USE_ID NUMBER(15)
314 );
315
316 -- Added for bug 9860123 used for cm amount pro-ration
317 TYPE ar_cm_from_tab IS TABLE OF ar_cm_from_record
318 INDEX BY BINARY_INTEGER;
319 TYPE ar_cm_to_tab IS TABLE OF ar_cm_to_record
320 INDEX BY BINARY_INTEGER;
321
322 -- 10047351
323
324 TYPE cmapp_curr_round IS RECORD (
325 EVENT_ID NUMBER,
326 SOURCE_ID NUMBER,
327 AMOUNT NUMBER,
328 ACCTD_AMOUNT NUMBER
329 );
330
331 TYPE cmapp_curr_round_tab IS TABLE OF cmapp_curr_round
332 INDEX BY BINARY_INTEGER;
333
334 TYPE cmapp_rec_record IS RECORD (
335 BAL_SEG_VALUE VARCHAR2(25),
336 AMOUNT NUMBER,
337 ACCTD_AMOUNT NUMBER,
338 CUST_TRX_LINE_ID NUMBER
339 );
340
341 TYPE cmapp_rec_record_tab IS TABLE OF cmapp_rec_record
342 INDEX BY BINARY_INTEGER;
343
344 -- 10047351
345
346 ---------------------------
347 -- Local routine for MFAR
348 ---------------------------
349 PROCEDURE mfar_hook(p_ledger_id IN NUMBER);
350 PROCEDURE mfar_app_dist_cr;
351 PROCEDURE mfar_crh_dist;
352 PROCEDURE mfar_produit_app_by_crh;
353 PROCEDURE mfar_get_ra;
354 PROCEDURE mfar_produit_mcd_by_crh;
355 PROCEDURE mfar_mcd_dist_cr;
356 PROCEDURE mfar_cmapp_from_to;
357 PROCEDURE mfar_cmapp_curr_round;
358 PROCEDURE mfar_rctapp_curr_round;
359 PROCEDURE mfar_cmapp_fetch;
360
361
362 -- bug 7458133
363 PROCEDURE mfar_insert_crh_extract(p_crh_mfar_extract_record IN crh_mfar_extract_record_type);
364 PROCEDURE prorate_extract_acctd_amounts(p_extract_record IN ar_xla_extract_record_type);
365 PROCEDURE mfar_cm_app_insert_extract(p_ar_cm_from_rec IN ar_cm_from_tab, p_ar_cm_to_rec IN OUT NOCOPY ar_cm_to_tab);
366 PROCEDURE mfar_cmapp_trx_update(p_cmapp_curr_round IN cmapp_curr_round, p_call VARCHAR2);
367
368
369 --------------------------------------------------
370 -- Body of Procedures and functions --
371 --------------------------------------------------
372
373 PROCEDURE diag_data;
374
375 -- Local logging to avoid arp_standard.debug
376
377 PROCEDURE log(
378 message IN VARCHAR2,
379 newline IN BOOLEAN DEFAULT TRUE) IS
380 BEGIN
381 IF NVL(fnd_global.CONC_REQUEST_ID,0) <> 0 THEN
382 IF message = 'NEWLINE' THEN
383 FND_FILE.NEW_LINE(FND_FILE.LOG, 1);
384 ELSIF (newline) THEN
385 FND_FILE.put_line(fnd_file.log,message);
386 ELSE
387 FND_FILE.put(fnd_file.log,message);
388 END IF;
389 END IF;
390 END log;
391
392 PROCEDURE local_log
393 (procedure_name IN VARCHAR2,
394 p_msg_text IN VARCHAR2,
395 p_msg_level IN NUMBER DEFAULT FND_LOG.LEVEL_STATEMENT)
396 IS
397 l_module VARCHAR2(255);
398 BEGIN
399 IF fnd_log.level_procedure>=fnd_log.g_current_runtime_level THEN
400 l_module := 'ar.xla.plsql.'||procedure_name;
401 FND_LOG.STRING(fnd_log.level_procedure,
402 l_module,
403 p_msg_text);
404 END IF;
405 log(p_msg_text);
406 END;
407
408
409 PROCEDURE set_from_amt IS
410 CURSOR c IS
411 SELECT CASE WHEN (NVL(a.amount_cr,0) - NVL(a.amount_dr,0)) < 0 THEN
412 ABS(b.from_amount) ELSE NULL END
413 ,CASE WHEN (NVL(a.amount_cr,0) - NVL(a.amount_dr,0)) > 0 THEN
414 ABS(b.from_amount) ELSE NULL END
415 ,CASE WHEN (NVL(a.acctd_amount_cr,0) - NVL(a.acctd_amount_dr,0)) < 0 THEN
416 ABS(b.from_acctd_amount) ELSE NULL END
417 ,CASE WHEN (NVL(a.acctd_amount_cr,0) - NVL(a.acctd_amount_dr,0)) > 0 THEN
418 ABS(b.from_acctd_amount) ELSE NULL END
419 ,b.activity_bucket
420 ,b.line_id
421 FROM ar_line_app_detail_gt b,
422 ar_distributions_all a
423 WHERE b.line_id = a.line_id;
424
425 l_from_amount_dr DBMS_SQL.NUMBER_TABLE;
426 l_from_amount_cr DBMS_SQL.NUMBER_TABLE;
427 l_from_acctd_amount_dr DBMS_SQL.NUMBER_TABLE;
428 l_from_acctd_amount_cr DBMS_SQL.NUMBER_TABLE;
429 l_activity_bucket DBMS_SQL.VARCHAR2_TABLE;
430 l_line_id DBMS_SQL.NUMBER_TABLE;
431 l_last_fetch BOOLEAN := FALSE;
432 l_found VARCHAR2(1);
433
434 BEGIN
435
436 local_log( 'set_from_amt','set_from_amt +');
437 OPEN c;
438 LOOP
439 FETCH c BULK COLLECT INTO l_from_amount_dr,
440 l_from_amount_cr,
441 l_from_acctd_amount_dr,
442 l_from_acctd_amount_cr,
443 l_activity_bucket,
444 l_line_id
445 LIMIT 10000;
446
447 IF c%NOTFOUND THEN
448 l_last_fetch := TRUE;
449 END IF;
450
451 IF (l_line_id.COUNT = 0) AND (l_last_fetch) THEN
452 local_log('set_from_amt',' COUNT = 0 and LAST FETCH ');
453 EXIT;
454 END IF;
455
456 FORALL i IN l_line_id.FIRST .. l_line_id.LAST
457 UPDATE ar_distributions_all a
458 SET a.from_amount_dr = l_from_amount_dr(i),
459 a.from_amount_cr = l_from_amount_cr(i),
460 a.from_acctd_amount_dr = l_from_acctd_amount_dr(i),
461 a.from_acctd_amount_cr = l_from_acctd_amount_cr(i),
462 a.activity_bucket = l_activity_bucket(i)
463 WHERE a.line_id = l_line_id(i);
464
465 END LOOP;
466 CLOSE c;
467 local_log('set_from_amt','set_from_amt -');
468
469 EXCEPTION
470 -- WHEN NO_DATA_FOUND THEN NULL;
471 WHEN OTHERS THEN
472 IF c%ISOPEN THEN CLOSE c; END IF;
473 local_log('set_from_amt','EXCEPTION OTHERS in set_from_amt :'||SQLERRM);
474 END set_from_amt;
475
476
477 PROCEDURE upgrade_11i_r12_post IS
478
479 CURSOR cu_gt_info IS
480 SELECT taxable_amount, --amount_applied_from
481 taxable_acctd_amount, --acctd_amount_applied_from
482 base_currency, --sob_currency
483 det_id, --cash_receipt_id
484 group_id, --customer_trx_id CM
485 gt_id, --receivable_application_id used also as gt_id
486 to_currency --invoice currency
487 FROM ar_line_app_detail_gt
488 GROUP BY
489 (taxable_amount, --amount_applied_from
490 taxable_acctd_amount, --acctd_amount_applied_from
491 base_currency, --sob_currency
492 det_id, --cash_receipt_id
493 group_id, --customer_trx_id CM
494 gt_id, --receivable_application_id used also as gt_id
495 to_currency); --invoice currency
496
497
498 l_amount_applied_from NUMBER;
499 l_acctd_amount_applied_from NUMBER;
500 l_base_currency VARCHAR2(30);
501 l_cash_receipt_id NUMBER;
502 l_customer_trx_id NUMBER;
503 l_receivable_application_id NUMBER;
504 l_to_currency VARCHAR2(30);
505 l_ae_sys_rec arp_acct_main.ae_sys_rec_type;
506 l_app_rec ar_receivable_applications%ROWTYPE;
507
508 BEGIN
509 local_log(procedure_name => 'upgrade_11i_r12_post',
510 p_msg_text => 'Calling upgrade_11i_r12_post +');
511 --Get 11i Applications to upgrade
512
513 local_log(procedure_name => 'upgrade_11i_r12_post',
514 p_msg_text => ' Get 11i application to upgrade');
515 INSERT INTO ar_line_app_detail_gt
516 (gt_id, --receivable_application_id
517 source_data_key1, --application_type CASH CM
518 det_id, --cash_receipt_id CASH
519 group_id, --customer_trx_id CM
520 ref_customer_trx_id, --applied_customer_trx_id INV
521 line_id, --line_id
522 amount,
523 acctd_amount,
524 TO_CURRENCY, --CURRENCY_CODE
525 TAXABLE_AMOUNT, --from_total_applied
526 TAXABLE_ACCTD_AMOUNT, --from_total_accted_applied
527 base_currency, --sob_currency
528 activity_bucket,
529 from_amount,
530 from_acctd_amount)
531 SELECT /*+LEADING(eve) USE_NL(eve,app)*/
532 app.RECEIVABLE_APPLICATION_ID,
533 app.APPLICATION_TYPE ,
534 app.CASH_RECEIPT_ID ,
535 app.CUSTOMER_TRX_ID ,
536 app.APPLIED_CUSTOMER_TRX_ID ,
537 dist.LINE_ID ,
538 NVL(dist.AMOUNT_CR,0)-NVL(dist.AMOUNT_DR,0),
539 NVL(dist.ACCTD_AMOUNT_CR,0)-NVL(dist.ACCTD_AMOUNT_DR,0),
540 dist.CURRENCY_CODE ,
541 NVL(app.AMOUNT_APPLIED_FROM ,app.AMOUNT_APPLIED),
542 app.ACCTD_AMOUNT_APPLIED_FROM,
543 sob.currency_code ,
544 DECODE(dist.source_type,'EDISC' ,'ED_LINE' ,
545 'UNEDISC','UNED_LINE',
546 'REC' ,'APP_LINE' , NULL),
547 NVL(dist.AMOUNT_CR,0)-NVL(dist.AMOUNT_DR,0),
548 NVL(dist.ACCTD_AMOUNT_CR,0)-NVL(dist.ACCTD_AMOUNT_DR,0)
549 FROM xla_events_gt eve,
550 ar_receivable_applications_all app,
551 ar_distributions_all dist,
552 gl_ledgers sob
553 WHERE eve.application_id = 222
554 AND eve.entity_code IN ('RECEIPTS','TRANSACTIONS')
555 AND eve.event_id = app.event_id
556 AND app.status IN ('APP','ACTIVITY')
557 AND app.posting_control_id = -3
558 AND NVL(app.postable,'Y') ='Y'
559 AND NVL(app.confirmed_flag,'Y')='Y'
560 AND app.upgrade_method IS NULL
561 AND app.receivable_application_id = dist.source_id
562 AND dist.source_table = 'RA'
563 -- This is not required the app status should suffice
564 -- AND dist.source_type IN ('REC','EDISC','UNEDISC','DEFERRED_TAX','TAX','ACTIVITY','SHORT_TERM_DEBT')
565 AND app.set_of_books_id = sob.ledger_id;
566
567
568
569 IF SQL%ROWCOUNT > 0 THEN
570 local_log(procedure_name => 'upgrade_11i_r12_post',
571 p_msg_text => ' Number application found :'||SQL%ROWCOUNT);
572
573 --Calculate from amounts
574
575 OPEN cu_gt_info;
576 LOOP
577 FETCH cu_gt_info INTO
578 l_amount_applied_from ,
579 l_acctd_amount_applied_from,
580 l_base_currency ,
581 l_cash_receipt_id ,
582 l_customer_trx_id ,
583 l_receivable_application_id,
584 l_to_currency;
585 EXIT WHEN cu_gt_info%NOTFOUND;
586
587 l_ae_sys_rec.base_currency := l_base_currency;
588 l_app_rec.receivable_application_id := l_receivable_application_id;
589 l_app_rec.cash_receipt_id := l_cash_receipt_id;
590 l_app_rec.customer_trx_id := l_customer_trx_id;
591
592 local_log(procedure_name => 'upgrade_11i_r12_post',
593 p_msg_text => ' upgrading application_id :'|| l_receivable_application_id);
594
595 arp_det_dist_pkg.update_from_gt
596 (p_from_amt => l_amount_applied_from,
597 p_from_acctd_amt => l_acctd_amount_applied_from,
598 p_ae_sys_rec => l_ae_sys_rec,
599 p_app_rec => l_app_rec,
600 p_gt_id => l_receivable_application_id,
601 p_inv_currency => l_to_currency);
602
603 END LOOP;
604 CLOSE cu_gt_info;
605
606
607 --Update from amounts in distributions
608 local_log(procedure_name => 'upgrade_11i_r12_post',
609 p_msg_text => ' Updating distribution from amount');
610
611 --BUG#5550040
612 set_from_amt;
613
614 --Update receivable applications
615 local_log(procedure_name => 'upgrade_11i_r12_post',
616 p_msg_text => ' Set application upgrade_method 11I_R12_POST');
617
618 UPDATE ar_receivable_applications_all
619 SET upgrade_method = '11I_R12_POST'
620 WHERE receivable_application_id IN
621 (SELECT gt_id
622 FROM ar_line_app_detail_gt
623 GROUP BY gt_id);
624 END IF;
625
626 local_log(procedure_name => 'upgrade_11i_r12_post',
627 p_msg_text => 'End upgrade_11i_r12_post -');
628
629 EXCEPTION
630 -- WHEN NO_DATA_FOUND THEN NULL;
631 WHEN OTHERS THEN
632 local_log(procedure_name => 'upgrade_11i_r12_post',
633 p_msg_text => 'EXCEPTION OTHERS upgrade_11i_r12_post :'||SQLERRM);
634 RAISE;
635 END;
636
637 /*-----------------------------------------------------------------+
638 | Procedure Name : load_line_data_app_from_cr |
639 | Description : Extract the from application line attached to |
640 | a cash receipt event |
641 +-----------------------------------------------------------------+
642 | History : |
643 | 23-FEB-2004 Herve Yu Created due to bug#3419926 |
644 +-----------------------------------------------------------------*/
645 PROCEDURE load_line_data_app_from_cr(p_application_id IN NUMBER DEFAULT 222)
646 IS
647
648 CURSOR inv_conv_rate_zero IS
649 SELECT /*+LEADING(gt) USE_NL(gt,app)*/
650 gt.event_id, -- EVENT_ID
651 dist.line_id, -- LINE_NUMBER
652 '', -- LANGUAGE
653 sob.set_of_books_id, -- LEDGER_ID
654 dist.source_id, -- SOURCE_ID
655 dist.source_table, -- SOURCE_TABLE
656 dist.source_type,
657 dist.line_id, -- LINE_ID
658 dist.tax_code_id, -- TAX_CODE_ID
659 dist.location_segment_id, -- LOCATION_SEGMENT_ID
660 sob.currency_code, -- BASE_CURRENCY
661 NVL(crh.exchange_rate_type,cr.exchange_rate_type), -- EXCHANGE_RATE_TYPE
662 NVL(crh.EXCHANGE_RATE,cr.exchange_rate) , -- EXCHANGE_RATE
663 NVL(crh.EXCHANGE_DATE,cr.exchange_date) , -- EXCHANGE_DATE
664 --
665 NVL(dist.acctd_amount_cr,0)
666 - NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
667 NVL(dist.taxable_accounted_cr,0)
668 - NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
669 app.org_id, -- ORG_ID
670 app.receivable_application_id, -- HEADER_ID
671 'APP', -- POSTING_ENTITY
672 app.amount_applied,
673 app.amount_applied_from,
674 app.acctd_amount_applied_from,
675 cr.cash_receipt_id, -- CASH_RECEIPT_ID
676 NULL, -- CUSTOMER_TRX_ID
677 NULL, -- CUSTOMER_TRX_LINE_ID
678 NULL, -- CUST_TRX_LINE_GL_DIST_ID
679 NULL, -- CUST_TRX_LINE_SALESREP_ID
680 NULL, -- INVENTORY_ITEM_ID
681 NULL, -- SALES_TAX_ID
682 osp.master_organization_id, -- SO_ORGANIZATION_ID
683 NULL, -- TAX_EXEMPTION_ID
684 NULL, -- UOM_CODE
685 NULL, -- WAREHOUSE_ID
686 NULL, -- AGREEMENT_ID
687 cr.customer_bank_account_id, -- CUSTOMER_BANK_ACCT_ID
688 NULL, -- DRAWEE_BANK_ACCOUNT_ID
689 cr.remit_bank_acct_use_id, -- REMITTANCE_BANK_ACCT_ID
690 cr.distribution_set_id, -- DISTRIBUTION_SET_ID
691 NULL, -- PAYMENT_SCHEDULE_ID
692 cr.receipt_method_id, -- RECEIPT_METHOD_ID
693 cr.receivables_trx_id, -- RECEIVABLES_TRX_ID
694 -- arp_xla_extract_main_pkg.ed_uned_trx('EDISC',app.org_id), -- ED_ADJ_RECEIVABLES_TRX_ID
695 -- arp_xla_extract_main_pkg.ed_uned_trx('UNEDISC',app.org_id), -- UNED_RECEIVABLES_TRX_ID
696 -- ED and UNED activity id should only be available on the to doc in application
697 NULL, -- ED_ADJ_RECEIVABLES_TRX_ID
698 NULL, -- UNED_RECEIVABLES_TRX_ID
699 cr.set_of_books_id, -- SET_OF_BOOKS_ID
700 NULL, -- SALESREP_ID
701 cr.customer_site_use_id, -- BILL_SITE_USE_ID
702 NULL, -- DRAWEE_SITE_USE_ID
703 cr.customer_site_use_id, -- PAYING_SITE_USE_ID -- synch with PAYING_CUSTOMER_ID
704 NULL, -- SOLD_SITE_USE_ID
705 NULL, -- SHIP_SITE_USE_ID
706 cr.customer_site_use_id, -- RECEIPT_CUSTOMER_SITE_USE_ID
707 NULL, -- BILL_CUST_ROLE_ID
708 NULL, -- DRAWEE_CUST_ROLE_ID
709 NULL, -- SHIP_CUST_ROLE_ID
710 NULL, -- SOLD_CUST_ROLE_ID
711 NULL, -- BILL_CUSTOMER_ID
712 NULL, -- DRAWEE_CUSTOMER_ID
713 cr.pay_from_customer, -- PAYING_CUSTOMER_ID
714 NULL, -- SOLD_CUSTOMER_ID
715 NULL, -- SHIP_CUSTOMER_ID
716 NULL, -- REMIT_ADDRESS_ID
717 cr.SELECTED_REMITTANCE_BATCH_ID, -- RECEIPT_BATCH_ID
718 app.receivable_application_id, -- RECEIVABLE_APPLICATION_ID
719 cr.customer_bank_branch_id, -- CUSTOMER_BANK_BRANCH_ID
720 cr.issuer_bank_branch_id, -- ISSUER_BANK_BRANCH_ID
721 NULL, -- BATCH_SOURCE_ID
722 NULL, -- BATCH_ID
723 NULL, -- TERM_ID
724 'Y', -- SELECT_FLAG
725 'L', -- LEVEL_FLAG
726 'F', -- FROM_TO_FLAG
727 --BUG#5201086
728 -- NVL(dist.from_amount_cr,0)
729 -- -NVL(dist.from_amount_dr,0), -- FROM_AMOUNT,
730 CASE WHEN (app.upgrade_method IS NULL AND app.status ='APP') THEN
731 CASE WHEN (dist.from_amount_dr IS NOT NULL OR dist.from_amount_cr IS NOT NULL) THEN
732 NVL(dist.from_amount_cr,0)-NVL(dist.from_amount_dr,0)
733 ELSE
734 CASE WHEN (dist.source_type NOT IN ('REC','EDISC','UNEDISC')) THEN
735 NULL
736 ELSE
737 CASE WHEN (app.earned_discount_taken IS NOT NULL AND
738 app.earned_discount_taken = NVL(dist.amount_dr,0)-NVL(dist.amount_cr,0) AND
739 app.acctd_earned_discount_taken = NVL(dist.acctd_amount_dr,0)-NVL(dist.acctd_amount_cr,0)
740 AND dist.source_type = 'REC') THEN
741 NULL
742 ELSE
743 CASE WHEN (trx.invoice_currency_code = cr.currency_code) THEN
744 NVL(dist.amount_cr,0)-NVL(dist.amount_dr,0)
745 ELSE
746 CASE WHEN (app.amount_applied <> 0 AND app.amount_applied_from <> 0) THEN
747 NVL(app.amount_applied_from / app.amount_applied * dist.amount_cr,0)-
748 NVL(app.amount_applied_from / app.amount_applied * dist.amount_dr,0)
749 ELSE NULL END
750 END
751 END
752 END
753 END
754 ELSE
755 NVL(dist.from_amount_cr,0)
756 -NVL(dist.from_amount_dr,0)
757 END, -- FROM_AMOUNT
758 NVL(dist.amount_cr,0)
759 -NVL(dist.amount_dr,0), -- AMOUNT
760 --BUG#5201086
761 -- NVL(dist.from_acctd_amount_cr,0)
762 -- -NVL(dist.from_acctd_amount_dr,0), -- FROM_ACCTD_AMOUNT
763 CASE WHEN (app.upgrade_method IS NULL AND app.status ='APP') THEN
764 CASE WHEN (dist.from_acctd_amount_dr IS NOT NULL OR dist.from_acctd_amount_cr IS NOT NULL) THEN
765 NVL(dist.from_acctd_amount_cr,0)-NVL(dist.from_acctd_amount_dr,0)
766 ELSE
767 CASE WHEN (dist.source_type NOT IN ('REC','EDISC','UNEDISC')) THEN
768 NULL
769 ELSE
770 CASE WHEN (app.earned_discount_taken IS NOT NULL AND
771 app.earned_discount_taken = NVL(dist.amount_dr,0)-NVL(dist.amount_cr,0) AND
772 app.acctd_earned_discount_taken = NVL(dist.acctd_amount_dr,0)-NVL(dist.acctd_amount_cr,0)
773 AND dist.source_type = 'REC') THEN
774 NULL
775 ELSE
776 CASE WHEN (trx.invoice_currency_code = sob.currency_code AND
777 cr.currency_code = sob.currency_code ) THEN
778 NVL(dist.acctd_amount_cr,0)-NVL(dist.acctd_amount_dr,0)
779 ELSE
780 CASE WHEN (app.acctd_amount_applied_to <> 0 AND app.acctd_amount_applied_from <> 0) THEN
781 NVL(app.acctd_amount_applied_from / app.acctd_amount_applied_to * dist.acctd_amount_cr,0)-
782 NVL(app.acctd_amount_applied_from / app.acctd_amount_applied_to * dist.acctd_amount_dr,0)
783 ELSE NULL END
784 END
785 END
786 END
787 END
788 ELSE
789 NVL(dist.from_acctd_amount_cr,0)
790 -NVL(dist.from_acctd_amount_dr,0)
791 END, -- FROM_ACCTD_AMOUNT
792 --{BUG#4356088
793 gt.event_type_code
794 ,gt.event_class_code
795 ,gt.entity_code
796 ,'N' --MFAR_ADDITIONAL_ENTRY
797 ,nvl(dist.ref_mf_dist_flag,'N') --REF_MF_DIST_FLAG
798 FROM xla_events_gt gt,
799 ar_receivable_applications_all app,
800 ar_distributions_all dist,
801 gl_sets_of_books sob,
802 oe_system_parameters_all osp,
803 ar_cash_receipts_all cr,
804 --BUG#5201086
805 ar_cash_receipt_history_all crh,
806 ra_customer_trx_all trx
807 WHERE gt.event_type_code IN ( 'RECP_CREATE' ,'RECP_UPDATE' ,
808 'RECP_RATE_ADJUST' ) --,'RECP_REVERSE') uptake XLA transaction reversal
809 AND gt.application_id = p_application_id
810 AND gt.event_id = app.event_id
811 AND dist.source_table = 'RA' -- Don't need this join due to ar_app_dist_upg_v
812 AND dist.source_id = app.receivable_application_id
813 AND app.set_of_books_id = sob.set_of_books_id
814 AND DECODE(app.acctd_amount_applied_to,0,DECODE(app.acctd_amount_applied_from,0,'N','Y'),'N') = 'Y'
815 --
816 -- BUG#5366837
817 -- R12_11ICASH_POST is reserved for Upgraded 11i Cash basis not posted applications
818 -- We are not passing Cash basis at From Line level
819 -- the data for Cash Basis accounting upgraded will be at the To line level only
820 --
821 -- AND NVL(app.upgrade_method,'XX') NOT IN ('R12_11ICASH_POST')
822 --
823 -- Need to incorporate PSA upgrade
824 --
825 AND DECODE(app.upgrade_method,
826 'R12_11ICASH_POST','N',
827 '11I_MFAR_UPG' ,DECODE(dist.source_table_secondary,'UPMFRAMIAR','Y','N'),
828 'Y') = 'Y'
829 AND app.org_id = osp.org_id(+)
830 AND app.cash_receipt_id = cr.cash_receipt_id
831 AND app.cash_receipt_history_id = crh.cash_receipt_history_id(+)
832 AND app.applied_customer_trx_id = trx.customer_trx_id(+)
833 AND dist.source_type IN ('REC'
834 ,'OTHER ACC','ACC','BANK_CHARGES','ACTIVITY','FACTOR','REMITTANCE',
835 'TAX','DEFERRED_TAX','UNEDISC','EDISC','CURR_ROUND','SHORT_TERM_DEBT',
836 'EXCH_LOSS','EXCH_GAIN','EDISC_NON_REC_TAX','UNEDISC_NON_REC_TAX');
837
838 l_extract_record ar_xla_extract_record_type;
839
840
841 BEGIN
842 local_log(procedure_name => 'load_line_data_app_from_cr',
843 p_msg_text => 'arp_xla_extract_main_pkg.load_line_data_app_from_cr()+');
844 -- Insert line level data in Line GT with
845 -- selected_flag = Y
846 -- level_flag = L
847 -- From_to_flag = F
848
849
850 -- Special case handling for cases where application amount is non-zero
851 -- and invoice conversion rate is almost zero resulting into
852 -- zero accounted amount applications on invoice (Bug 8895061)
853
854 OPEN inv_conv_rate_zero;
855
856 LOOP
857 FETCH inv_conv_rate_zero BULK COLLECT INTO l_extract_record LIMIT MAX_ARRAY_SIZE;
858 IF PG_DEBUG in ('Y', 'C') THEN
859 arp_standard.debug('inv_conv_rate_zero current fetch count '|| l_extract_record.count);
860 END IF;
861
862 IF l_extract_record.count = 0 THEN
863 EXIT;
864 END IF;
865
866 -- Calculate prorated from accounted amounts and insert data into extract
867 prorate_extract_acctd_amounts(l_extract_record);
868
869 END LOOP;
870
871 CLOSE inv_conv_rate_zero;
872 -- Bug 8895061 Ends
873
874
875 INSERT INTO ar_xla_lines_extract (
876 EVENT_ID
877 ,LINE_NUMBER
878 ,LANGUAGE
879 ,LEDGER_ID
880 ,SOURCE_ID
881 ,SOURCE_TABLE
882 ,LINE_ID
883 ,TAX_CODE_ID
884 ,LOCATION_SEGMENT_ID
885 ,BASE_CURRENCY_CODE
886 ,EXCHANGE_RATE_TYPE
887 ,EXCHANGE_RATE
888 ,EXCHANGE_DATE
889 ,ACCTD_AMOUNT
890 ,TAXABLE_ACCTD_AMOUNT
891 ,ORG_ID
892 ,HEADER_TABLE_ID
893 ,POSTING_ENTITY
894 ,CASH_RECEIPT_ID
895 ,CUSTOMER_TRX_ID
896 ,CUSTOMER_TRX_LINE_ID
897 ,CUST_TRX_LINE_GL_DIST_ID
898 ,CUST_TRX_LINE_SALESREP_ID
899 ,INVENTORY_ITEM_ID
900 ,SALES_TAX_ID
901 ,SO_ORGANIZATION_ID
902 ,TAX_EXEMPTION_ID
903 ,UOM_CODE
904 ,WAREHOUSE_ID
905 ,AGREEMENT_ID
906 ,CUSTOMER_BANK_ACCT_ID
907 ,DRAWEE_BANK_ACCOUNT_ID
908 ,REMITTANCE_BANK_ACCT_ID
909 ,DISTRIBUTION_SET_ID
910 ,PAYMENT_SCHEDULE_ID
911 ,RECEIPT_METHOD_ID
912 ,RECEIVABLES_TRX_ID
913 ,ED_ADJ_RECEIVABLES_TRX_ID
914 ,UNED_RECEIVABLES_TRX_ID
915 ,SET_OF_BOOKS_ID
916 ,SALESREP_ID
917 ,BILL_SITE_USE_ID
918 ,DRAWEE_SITE_USE_ID
919 ,PAYING_SITE_USE_ID
920 ,SOLD_SITE_USE_ID
921 ,SHIP_SITE_USE_ID
922 ,RECEIPT_CUSTOMER_SITE_USE_ID
923 ,BILL_CUST_ROLE_ID
924 ,DRAWEE_CUST_ROLE_ID
925 ,SHIP_CUST_ROLE_ID
926 ,SOLD_CUST_ROLE_ID
927 ,BILL_CUSTOMER_ID
928 ,DRAWEE_CUSTOMER_ID
929 ,PAYING_CUSTOMER_ID
930 ,SOLD_CUSTOMER_ID
931 ,SHIP_CUSTOMER_ID
932 ,REMIT_ADDRESS_ID
933 ,RECEIPT_BATCH_ID
934 ,RECEIVABLE_APPLICATION_ID
935 ,CUSTOMER_BANK_BRANCH_ID
936 ,ISSUER_BANK_BRANCH_ID
937 ,BATCH_SOURCE_ID
938 ,BATCH_ID
939 ,TERM_ID
940 ,SELECT_FLAG
941 ,LEVEL_FLAG
942 ,FROM_TO_FLAG
943 ,CRH_STATUS
944 ,FROM_AMOUNT
945 ,AMOUNT
946 ,FROM_ACCTD_AMOUNT
947 --{BUG#4356088
948 ,event_type_code
949 ,event_class_code
950 ,entity_code
951 --MFAR
952 ,MFAR_ADDITIONAL_ENTRY
953 )
954 -- FROM document type Cash Receipt
955 SELECT /*+LEADING(gt) USE_NL(gt,app)*/
956 gt.event_id, -- EVENT_ID
957 dist.line_id, -- LINE_NUMBER
958 '', -- LANGUAGE
959 sob.set_of_books_id, -- LEDGER_ID
960 dist.source_id, -- SOURCE_ID
961 dist.source_table, -- SOURCE_TABLE
962 dist.line_id, -- LINE_ID
963 dist.tax_code_id, -- TAX_CODE_ID
964 dist.location_segment_id, -- LOCATION_SEGMENT_ID
965 sob.currency_code, -- BASE_CURRENCY
966 NVL(crh.exchange_rate_type,cr.exchange_rate_type), -- EXCHANGE_RATE_TYPE
967 NVL(crh.EXCHANGE_RATE,cr.exchange_rate) , -- EXCHANGE_RATE
968 NVL(crh.EXCHANGE_DATE,cr.exchange_date) , -- EXCHANGE_DATE
969 --
970 NVL(dist.acctd_amount_cr,0)
971 - NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
972 NVL(dist.taxable_accounted_cr,0)
973 - NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
974 app.org_id, -- ORG_ID
975 app.receivable_application_id, -- HEADER_ID
976 'APP', -- POSTING_ENTITY
977 cr.cash_receipt_id, -- CASH_RECEIPT_ID
978 NULL, -- CUSTOMER_TRX_ID
979 NULL, -- CUSTOMER_TRX_LINE_ID
980 NULL, -- CUST_TRX_LINE_GL_DIST_ID
981 NULL, -- CUST_TRX_LINE_SALESREP_ID
982 NULL, -- INVENTORY_ITEM_ID
983 NULL, -- SALES_TAX_ID
984 osp.master_organization_id, -- SO_ORGANIZATION_ID
985 NULL, -- TAX_EXEMPTION_ID
986 NULL, -- UOM_CODE
987 NULL, -- WAREHOUSE_ID
988 NULL, -- AGREEMENT_ID
989 cr.customer_bank_account_id, -- CUSTOMER_BANK_ACCT_ID
990 NULL, -- DRAWEE_BANK_ACCOUNT_ID
991 cr.remit_bank_acct_use_id, -- REMITTANCE_BANK_ACCT_ID
992 cr.distribution_set_id, -- DISTRIBUTION_SET_ID
993 NULL, -- PAYMENT_SCHEDULE_ID
994 cr.receipt_method_id, -- RECEIPT_METHOD_ID
995 cr.receivables_trx_id, -- RECEIVABLES_TRX_ID
996 -- arp_xla_extract_main_pkg.ed_uned_trx('EDISC',app.org_id), -- ED_ADJ_RECEIVABLES_TRX_ID
997 -- arp_xla_extract_main_pkg.ed_uned_trx('UNEDISC',app.org_id), -- UNED_RECEIVABLES_TRX_ID
998 -- ED and UNED activity id should only be available on the to doc in application
999 NULL, -- ED_ADJ_RECEIVABLES_TRX_ID
1000 NULL, -- UNED_RECEIVABLES_TRX_ID
1001 cr.set_of_books_id, -- SET_OF_BOOKS_ID
1002 NULL, -- SALESREP_ID
1003 cr.customer_site_use_id, -- BILL_SITE_USE_ID
1004 NULL, -- DRAWEE_SITE_USE_ID
1005 cr.customer_site_use_id, -- PAYING_SITE_USE_ID -- synch with PAYING_CUSTOMER_ID
1006 NULL, -- SOLD_SITE_USE_ID
1007 NULL, -- SHIP_SITE_USE_ID
1008 cr.customer_site_use_id, -- RECEIPT_CUSTOMER_SITE_USE_ID
1009 NULL, -- BILL_CUST_ROLE_ID
1010 NULL, -- DRAWEE_CUST_ROLE_ID
1011 NULL, -- SHIP_CUST_ROLE_ID
1012 NULL, -- SOLD_CUST_ROLE_ID
1013 NULL, -- BILL_CUSTOMER_ID
1014 NULL, -- DRAWEE_CUSTOMER_ID
1015 cr.pay_from_customer, -- PAYING_CUSTOMER_ID
1016 NULL, -- SOLD_CUSTOMER_ID
1017 NULL, -- SHIP_CUSTOMER_ID
1018 NULL, -- REMIT_ADDRESS_ID
1019 cr.SELECTED_REMITTANCE_BATCH_ID, -- RECEIPT_BATCH_ID
1020 app.receivable_application_id, -- RECEIVABLE_APPLICATION_ID
1021 cr.customer_bank_branch_id, -- CUSTOMER_BANK_BRANCH_ID
1022 cr.issuer_bank_branch_id, -- ISSUER_BANK_BRANCH_ID
1023 NULL, -- BATCH_SOURCE_ID
1024 NULL, -- BATCH_ID
1025 NULL, -- TERM_ID
1026 'Y', -- SELECT_FLAG
1027 'L', -- LEVEL_FLAG
1028 'F', -- FROM_TO_FLAG
1029 decode(app.status, 'APP', NULL,
1030 'UNAPP', NULL,
1031 'UNID', NULL, app.status), -- CRH_STATUS
1032 --BUG#5201086
1033 -- NVL(dist.from_amount_cr,0)
1034 -- -NVL(dist.from_amount_dr,0), -- FROM_AMOUNT,
1035 CASE WHEN (app.upgrade_method IS NULL AND app.status ='APP') THEN
1036 CASE WHEN (dist.from_amount_dr IS NOT NULL OR dist.from_amount_cr IS NOT NULL) THEN
1037 NVL(dist.from_amount_cr,0)-NVL(dist.from_amount_dr,0)
1038 ELSE
1039 CASE WHEN (dist.source_type NOT IN ('REC','EDISC','UNEDISC')) THEN
1040 NULL
1041 ELSE
1042 CASE WHEN (app.earned_discount_taken IS NOT NULL AND
1043 app.earned_discount_taken = NVL(dist.amount_dr,0)-NVL(dist.amount_cr,0) AND
1044 app.acctd_earned_discount_taken = NVL(dist.acctd_amount_dr,0)-NVL(dist.acctd_amount_cr,0)
1045 AND dist.source_type = 'REC') THEN
1046 NULL
1047 ELSE
1048 CASE WHEN (trx.invoice_currency_code = cr.currency_code) THEN
1049 NVL(dist.amount_cr,0)-NVL(dist.amount_dr,0)
1050 ELSE
1051 CASE WHEN (app.amount_applied <> 0 AND app.amount_applied_from <> 0) THEN
1052 NVL(app.amount_applied_from / app.amount_applied * dist.amount_cr,0)-
1053 NVL(app.amount_applied_from / app.amount_applied * dist.amount_dr,0)
1054 ELSE NULL END
1055 END
1056 END
1057 END
1058 END
1059 ELSE
1060 NVL(dist.from_amount_cr,0)
1061 -NVL(dist.from_amount_dr,0)
1062 END, -- FROM_AMOUNT
1063 NVL(dist.amount_cr,0)
1064 -NVL(dist.amount_dr,0), -- AMOUNT
1065 --BUG#5201086
1066 -- NVL(dist.from_acctd_amount_cr,0)
1067 -- -NVL(dist.from_acctd_amount_dr,0), -- FROM_ACCTD_AMOUNT
1068 CASE WHEN (app.upgrade_method IS NULL AND app.status ='APP') THEN
1069 CASE WHEN (dist.from_acctd_amount_dr IS NOT NULL OR dist.from_acctd_amount_cr IS NOT NULL) THEN
1070 NVL(dist.from_acctd_amount_cr,0)-NVL(dist.from_acctd_amount_dr,0)
1071 ELSE
1072 CASE WHEN (dist.source_type NOT IN ('REC','EDISC','UNEDISC')) THEN
1073 NULL
1074 ELSE
1075 CASE WHEN (app.earned_discount_taken IS NOT NULL AND
1076 app.earned_discount_taken = NVL(dist.amount_dr,0)-NVL(dist.amount_cr,0) AND
1077 app.acctd_earned_discount_taken = NVL(dist.acctd_amount_dr,0)-NVL(dist.acctd_amount_cr,0)
1078 AND dist.source_type = 'REC') THEN
1079 NULL
1080 ELSE
1081 CASE WHEN (trx.invoice_currency_code = sob.currency_code AND
1082 cr.currency_code = sob.currency_code ) THEN
1083 NVL(dist.acctd_amount_cr,0)-NVL(dist.acctd_amount_dr,0)
1084 ELSE
1085 CASE WHEN (app.acctd_amount_applied_to <> 0 AND app.acctd_amount_applied_from <> 0) THEN
1086 NVL(app.acctd_amount_applied_from / app.acctd_amount_applied_to * dist.acctd_amount_cr,0)-
1087 NVL(app.acctd_amount_applied_from / app.acctd_amount_applied_to * dist.acctd_amount_dr,0)
1088 ELSE NULL END
1089 END
1090 END
1091 END
1092 END
1093 ELSE
1094 NVL(dist.from_acctd_amount_cr,0)
1095 -NVL(dist.from_acctd_amount_dr,0)
1096 END, -- FROM_ACCTD_AMOUNT
1097 --{BUG#4356088
1098 gt.event_type_code
1099 ,gt.event_class_code
1100 ,gt.entity_code
1101 ,'N' --MFAR_ADDITIONAL_ENTRY
1102 FROM xla_events_gt gt,
1103 ar_receivable_applications_all app,
1104 ar_distributions_all dist,
1105 gl_sets_of_books sob,
1106 oe_system_parameters_all osp,
1107 ar_cash_receipts_all cr,
1108 --BUG#5201086
1109 ar_cash_receipt_history_all crh,
1110 ra_customer_trx_all trx
1111 WHERE gt.event_type_code IN ( 'RECP_CREATE' ,'RECP_UPDATE' ,
1112 'RECP_RATE_ADJUST' ) --,'RECP_REVERSE') uptake XLA transaction reversal
1113 AND gt.application_id = p_application_id
1114 AND gt.event_id = app.event_id
1115 AND dist.source_table = 'RA' -- Don't need this join due to ar_app_dist_upg_v
1116 AND dist.source_id = app.receivable_application_id
1117 AND app.set_of_books_id = sob.set_of_books_id
1118 AND DECODE(app.acctd_amount_applied_to,0,DECODE(app.acctd_amount_applied_from,0,'N','Y'),'N') = 'N'
1119 --
1120 -- BUG#5366837
1121 -- R12_11ICASH_POST is reserved for Upgraded 11i Cash basis not posted applications
1122 -- We are not passing Cash basis at From Line level
1123 -- the data for Cash Basis accounting upgraded will be at the To line level only
1124 --
1125 -- AND NVL(app.upgrade_method,'XX') NOT IN ('R12_11ICASH_POST')
1126 --
1127 -- Need to incorporate PSA upgrade
1128 --
1129 AND DECODE(app.upgrade_method,
1130 'R12_11ICASH_POST','N',
1131 '11I_MFAR_UPG' ,DECODE(dist.source_table_secondary,'UPMFRAMIAR','Y','N'),
1132 'Y') = 'Y'
1133 AND app.org_id = osp.org_id(+)
1134 AND app.cash_receipt_id = cr.cash_receipt_id
1135 AND app.cash_receipt_history_id = crh.cash_receipt_history_id(+)
1136 AND app.applied_customer_trx_id = trx.customer_trx_id(+)
1137 AND dist.source_type IN ('REC'
1138 ,'OTHER ACC','ACC','BANK_CHARGES','ACTIVITY','FACTOR','REMITTANCE',
1139 'TAX','DEFERRED_TAX','UNEDISC','EDISC','CURR_ROUND','SHORT_TERM_DEBT',
1140 'EXCH_LOSS','EXCH_GAIN','EDISC_NON_REC_TAX','UNEDISC_NON_REC_TAX');
1141
1142
1143 --BUG#5366837 From document in cash basis
1144 INSERT INTO ar_xla_lines_extract (
1145 EVENT_ID
1146 ,LINE_NUMBER
1147 ,LANGUAGE
1148 ,LEDGER_ID
1149 ,SOURCE_ID
1150 ,SOURCE_TABLE
1151 ,LINE_ID
1152 ,TAX_CODE_ID
1153 ,LOCATION_SEGMENT_ID
1154 ,BASE_CURRENCY_CODE
1155 ,EXCHANGE_RATE_TYPE
1156 ,EXCHANGE_RATE
1157 ,EXCHANGE_DATE
1158 ,ACCTD_AMOUNT
1159 ,TAXABLE_ACCTD_AMOUNT
1160 ,ORG_ID
1161 ,HEADER_TABLE_ID
1162 ,POSTING_ENTITY
1163 ,CASH_RECEIPT_ID
1164 ,CUSTOMER_TRX_ID
1165 ,CUSTOMER_TRX_LINE_ID
1166 ,CUST_TRX_LINE_GL_DIST_ID
1167 ,CUST_TRX_LINE_SALESREP_ID
1168 ,INVENTORY_ITEM_ID
1169 ,SALES_TAX_ID
1170 ,SO_ORGANIZATION_ID
1171 ,TAX_EXEMPTION_ID
1172 ,UOM_CODE
1173 ,WAREHOUSE_ID
1174 ,AGREEMENT_ID
1175 ,CUSTOMER_BANK_ACCT_ID
1176 ,DRAWEE_BANK_ACCOUNT_ID
1177 ,REMITTANCE_BANK_ACCT_ID
1178 ,DISTRIBUTION_SET_ID
1179 ,PAYMENT_SCHEDULE_ID
1180 ,RECEIPT_METHOD_ID
1181 ,RECEIVABLES_TRX_ID
1182 ,ED_ADJ_RECEIVABLES_TRX_ID
1183 ,UNED_RECEIVABLES_TRX_ID
1184 ,SET_OF_BOOKS_ID
1185 ,SALESREP_ID
1186 ,BILL_SITE_USE_ID
1187 ,DRAWEE_SITE_USE_ID
1188 ,PAYING_SITE_USE_ID
1189 ,SOLD_SITE_USE_ID
1190 ,SHIP_SITE_USE_ID
1191 ,RECEIPT_CUSTOMER_SITE_USE_ID
1192 ,BILL_CUST_ROLE_ID
1193 ,DRAWEE_CUST_ROLE_ID
1194 ,SHIP_CUST_ROLE_ID
1195 ,SOLD_CUST_ROLE_ID
1196 ,BILL_CUSTOMER_ID
1197 ,DRAWEE_CUSTOMER_ID
1198 ,PAYING_CUSTOMER_ID
1199 ,SOLD_CUSTOMER_ID
1200 ,SHIP_CUSTOMER_ID
1201 ,REMIT_ADDRESS_ID
1202 ,RECEIPT_BATCH_ID
1203 ,RECEIVABLE_APPLICATION_ID
1204 ,CUSTOMER_BANK_BRANCH_ID
1205 ,ISSUER_BANK_BRANCH_ID
1206 ,BATCH_SOURCE_ID
1207 ,BATCH_ID
1208 ,TERM_ID
1209 ,SELECT_FLAG
1210 ,LEVEL_FLAG
1211 ,FROM_TO_FLAG
1212 ,FROM_AMOUNT
1213 ,AMOUNT
1214 ,FROM_ACCTD_AMOUNT
1215 ,event_type_code
1216 ,event_class_code
1217 ,entity_code
1218 ,additional_char1
1219 ,MFAR_ADDITIONAL_ENTRY
1220 )
1221 SELECT /*+LEADING(gt) USE_NL(gt,app)*/
1222 gt.event_id -- EVENT_ID
1223 ,dist.cash_basis_distribution_id -- LINE_NUMBER
1224 ,'' -- LANGUAGE
1225 ,sob.set_of_books_id -- LEDGER_ID
1226 ,dist.receivable_application_id_cash -- SOURCE_ID
1227 ,'RA' -- SOURCE_TABLE
1228 ,dist.cash_basis_distribution_id -- LINE_ID
1229 ,NULL -- TAX_CODE_ID
1230 ,NULL -- LOCATION_SEGMENT_ID
1231 ,sob.currency_code -- BASE_CURRENCY
1232 ,NVL(crh.exchange_rate_type,cr.exchange_rate_type) -- EXCHANGE_RATE_TYPE
1233 ,NVL(crh.EXCHANGE_RATE,cr.exchange_rate) -- EXCHANGE_RATE
1234 ,NVL(crh.EXCHANGE_DATE,cr.exchange_date) -- EXCHANGE_DATE
1235 ,dist.acctd_amount -- ACCTD_AMOUNT
1236 ,0 -- TAXABLE_ACCTD_AMOUNT
1237 ,app.org_id -- ORG_ID
1238 ,app.receivable_application_id -- HEADER_ID
1239 ,'APP' -- POSTING_ENTITY
1240 ,cr.cash_receipt_id -- CASH_RECEIPT_ID
1241 ,NULL -- CUSTOMER_TRX_ID
1242 ,NULL -- CUSTOMER_TRX_LINE_ID
1243 ,NULL -- CUST_TRX_LINE_GL_DIST_ID
1244 ,NULL -- CUST_TRX_LINE_SALESREP_ID
1245 ,NULL -- INVENTORY_ITEM_ID
1246 ,NULL -- SALES_TAX_ID
1247 ,osp.master_organization_id -- SO_ORGANIZATION_ID
1248 ,NULL -- TAX_EXEMPTION_ID
1249 ,NULL -- UOM_CODE
1250 ,NULL -- WAREHOUSE_ID
1251 ,NULL -- AGREEMENT_ID
1252 ,cr.customer_bank_account_id -- CUSTOMER_BANK_ACCT_ID
1253 ,NULL -- DRAWEE_BANK_ACCOUNT_ID
1254 ,cr.remit_bank_acct_use_id -- REMITTANCE_BANK_ACCT_ID
1255 ,cr.distribution_set_id -- DISTRIBUTION_SET_ID
1256 ,NULL -- PAYMENT_SCHEDULE_ID
1257 ,cr.receipt_method_id -- RECEIPT_METHOD_ID
1258 ,cr.receivables_trx_id -- RECEIVABLES_TRX_ID
1259 ,NULL -- ED_ADJ_RECEIVABLES_TRX_ID
1260 ,NULL -- UNED_RECEIVABLES_TRX_ID
1261 ,cr.set_of_books_id -- SET_OF_BOOKS_ID
1262 ,NULL -- SALESREP_ID
1263 ,cr.customer_site_use_id -- BILL_SITE_USE_ID
1264 ,NULL -- DRAWEE_SITE_USE_ID
1265 ,cr.customer_site_use_id -- PAYING_SITE_USE_ID -- synch with PAYING_CUSTOMER_ID
1266 ,NULL -- SOLD_SITE_USE_ID
1267 ,NULL -- SHIP_SITE_USE_ID
1268 ,cr.customer_site_use_id -- RECEIPT_CUSTOMER_SITE_USE_ID
1269 ,NULL -- BILL_CUST_ROLE_ID
1270 ,NULL -- DRAWEE_CUST_ROLE_ID
1271 ,NULL -- SHIP_CUST_ROLE_ID
1272 ,NULL -- SOLD_CUST_ROLE_ID
1273 ,NULL -- BILL_CUSTOMER_ID
1274 ,NULL -- DRAWEE_CUSTOMER_ID
1275 ,cr.pay_from_customer -- PAYING_CUSTOMER_ID
1276 ,NULL -- SOLD_CUSTOMER_ID
1277 ,NULL -- SHIP_CUSTOMER_ID
1278 ,NULL -- REMIT_ADDRESS_ID
1279 ,cr.SELECTED_REMITTANCE_BATCH_ID -- RECEIPT_BATCH_ID
1280 ,app.receivable_application_id -- RECEIVABLE_APPLICATION_ID
1281 ,cr.customer_bank_branch_id -- CUSTOMER_BANK_BRANCH_ID
1282 ,cr.issuer_bank_branch_id -- ISSUER_BANK_BRANCH_ID
1283 ,NULL -- BATCH_SOURCE_ID
1284 ,NULL -- BATCH_ID
1285 ,NULL -- TERM_ID
1286 ,'Y' -- SELECT_FLAG
1287 ,'L' -- LEVEL_FLAG
1288 ,'F' -- FROM_TO_FLAG
1289 ,dist.from_amount -- FROM_AMOUNT
1290 ,dist.amount -- AMOUNT
1291 ,dist.from_acctd_amount -- FROM_ACCTD_AMOUNT
1292 ,gt.event_type_code
1293 ,gt.event_class_code
1294 ,gt.entity_code
1295 ,app.upgrade_method
1296 ,'N' --MFAR_ADDITIONAL_ENTRY
1297 FROM xla_events_gt gt,
1298 ar_receivable_applications_all app,
1299 ar_cash_basis_dists_all dist,
1300 gl_sets_of_books sob,
1301 oe_system_parameters_all osp,
1302 ar_cash_receipts_all cr,
1303 ar_cash_receipt_history_all crh,
1304 ra_customer_trx_all trx
1305 WHERE gt.event_type_code IN ( 'RECP_CREATE' ,'RECP_UPDATE' ,
1306 'RECP_RATE_ADJUST') -- Uptake XLA trx reversal ,'RECP_REVERSE')
1307 AND gt.application_id = 222
1308 AND gt.event_id = app.event_id
1309 AND dist.receivable_application_id = app.receivable_application_id
1310 AND app.set_of_books_id = sob.set_of_books_id
1311 AND app.upgrade_method = 'R12_11ICASH_POST'
1312 AND app.org_id = osp.org_id(+)
1313 AND app.cash_receipt_id = cr.cash_receipt_id
1314 AND app.cash_receipt_history_id = crh.cash_receipt_history_id
1315 AND app.applied_customer_trx_id = trx.customer_trx_id;
1316
1317
1318 local_log(procedure_name => 'load_line_data_app_from_cr',
1319 p_msg_text => 'arp_xla_extract_main_pkg.load_line_data_app_from_cr ()-');
1320 EXCEPTION
1321 -- WHEN NO_DATA_FOUND THEN NULL;
1322 WHEN OTHERS THEN
1323 local_log(procedure_name => 'load_line_data_app_from_cr',
1324 p_msg_text =>'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_app_from_cr '||
1325 arp_global.CRLF ||'Error :'|| SQLERRM);
1326 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
1327 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
1328 'Procedure :arp_xla_extract_main_pkg.load_line_data_app_from_cr'|| arp_global.CRLF||
1329 'Error :'||SQLERRM);
1330 FND_MSG_PUB.ADD;
1331 RAISE;
1332 END load_line_data_app_from_cr;
1333
1334 /*-----------------------------------------------------------------+
1335 | Procedure Name : load_line_data_app_from_cm |
1336 | Description : Extract the from application line attached to |
1337 | a credit memo event |
1338 +-----------------------------------------------------------------+
1339 | History : |
1340 | 23-FEB-2004 Herve Yu Created due to bug#3419926 |
1341 +-----------------------------------------------------------------*/
1342 PROCEDURE load_line_data_app_from_cm(p_application_id IN NUMBER DEFAULT 222)
1343 IS
1344 BEGIN
1345 local_log(procedure_name => 'load_line_data_app_from_cm',
1346 p_msg_text => 'arp_xla_extract_main_pkg.load_line_data_app_from_cm ()+');
1347 -- Insert line level data in Line GT with
1348 -- selected_flag = Y
1349 -- level_flag = L
1350 -- From_to_flag = F
1351 INSERT INTO ar_xla_lines_extract (
1352 EVENT_ID
1353 ,LINE_NUMBER
1354 ,LANGUAGE
1355 ,LEDGER_ID
1356 ,SOURCE_ID
1357 ,SOURCE_TABLE
1358 ,LINE_ID
1359 ,TAX_CODE_ID
1360 ,LOCATION_SEGMENT_ID
1361 ,BASE_CURRENCY_CODE
1362 ,EXCHANGE_RATE_TYPE
1363 ,EXCHANGE_RATE
1364 ,EXCHANGE_DATE
1365 ,ACCTD_AMOUNT
1366 ,TAXABLE_ACCTD_AMOUNT
1367 ,ORG_ID
1368 ,HEADER_TABLE_ID
1369 ,POSTING_ENTITY
1370 ,CASH_RECEIPT_ID
1371 ,CUSTOMER_TRX_ID
1372 ,CUSTOMER_TRX_LINE_ID
1373 ,CUST_TRX_LINE_GL_DIST_ID
1374 ,CUST_TRX_LINE_SALESREP_ID
1375 ,INVENTORY_ITEM_ID
1376 ,SALES_TAX_ID
1377 ,SO_ORGANIZATION_ID
1378 ,TAX_EXEMPTION_ID
1379 ,UOM_CODE
1380 ,WAREHOUSE_ID
1381 ,AGREEMENT_ID
1382 ,CUSTOMER_BANK_ACCT_ID
1383 ,DRAWEE_BANK_ACCOUNT_ID
1384 ,REMITTANCE_BANK_ACCT_ID
1385 ,DISTRIBUTION_SET_ID
1386 ,PAYMENT_SCHEDULE_ID
1387 ,RECEIPT_METHOD_ID
1388 ,RECEIVABLES_TRX_ID
1389 ,ED_ADJ_RECEIVABLES_TRX_ID
1390 ,UNED_RECEIVABLES_TRX_ID
1391 ,SET_OF_BOOKS_ID
1392 ,SALESREP_ID
1393 ,BILL_SITE_USE_ID
1394 ,DRAWEE_SITE_USE_ID
1395 ,PAYING_SITE_USE_ID
1396 ,SOLD_SITE_USE_ID
1397 ,SHIP_SITE_USE_ID
1398 ,RECEIPT_CUSTOMER_SITE_USE_ID
1399 ,BILL_CUST_ROLE_ID
1400 ,DRAWEE_CUST_ROLE_ID
1401 ,SHIP_CUST_ROLE_ID
1402 ,SOLD_CUST_ROLE_ID
1403 ,BILL_CUSTOMER_ID
1404 ,DRAWEE_CUSTOMER_ID
1405 ,PAYING_CUSTOMER_ID
1406 ,SOLD_CUSTOMER_ID
1407 ,SHIP_CUSTOMER_ID
1408 ,REMIT_ADDRESS_ID
1409 ,RECEIPT_BATCH_ID
1410 ,RECEIVABLE_APPLICATION_ID
1411 ,CUSTOMER_BANK_BRANCH_ID
1412 ,ISSUER_BANK_BRANCH_ID
1413 ,BATCH_SOURCE_ID
1414 ,BATCH_ID
1415 ,TERM_ID
1416 ,SELECT_FLAG
1417 ,LEVEL_FLAG
1418 ,FROM_TO_FLAG
1419 ,FROM_AMOUNT
1420 ,AMOUNT
1421 ,FROM_ACCTD_AMOUNT
1422 ,event_type_code
1423 ,event_class_code
1424 ,entity_code
1425 ,tax_line_id
1426 ,additional_char1
1427 ,MFAR_ADDITIONAL_ENTRY
1428 ,source_type
1429 ,CM_APP_TO_TRX_LINE_ID
1430 ,BAL_SEG_VALUE
1431 )
1432 -- FROM document type CM
1433 SELECT /*+LEADING(gt) USE_NL(gt,app)*/
1434 gt.event_id, -- EVENT_ID
1435 dist.line_id, -- LINE_NUMBER
1436 '', -- LANGUAGE
1437 sob.set_of_books_id, -- LEDGER_ID
1438 dist.source_id, -- SOURCE_ID
1439 dist.source_table, -- SOURCE_TABLE
1440 dist.line_id, -- LINE_ID
1441 dist.tax_code_id, -- TAX_CODE_ID
1442 dist.location_segment_id, -- LOCATION_SEGMENT_ID
1443 sob.currency_code, -- BASE_CURRENCY
1444 /* bug7311808 -vavenugo*/
1445 NVL(DIST.CURRENCY_CONVERSION_TYPE,trxf.exchange_rate_type), -- EXCHANGE_RATE_TYPE
1446 NVL(DIST.CURRENCY_CONVERSION_RATE,trxf.exchange_rate), -- EXCHANGE_RATE
1447 NVL(DIST.CURRENCY_CONVERSION_DATE, nvl(trxf.exchange_date, DECODE(dist.REF_PREV_CUST_TRX_LINE_ID, null, trxf.trx_date,
1448 nvl((select trxt.trx_date from ra_customer_trx_all trxt where trxt.customer_trx_id = trxf.previous_customer_trx_id),trxf.trx_date)))) , -- EXCHANGE_DATE
1449 /* End bug7311808 -vavenugo */ /* if REF_PREV_CUST_TRX_LINE_ID is NULL, use CM exchange_date/trx_date. Otherwise use INV exchange_date/trx_date*/
1450 NVL(dist.acctd_amount_cr,0) -
1451 NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
1452 NVL(dist.taxable_accounted_cr,0) -
1453 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
1454 app.org_id, -- ORG_ID
1455 app.receivable_application_id, -- HEADER_TABLE_ID
1456 'APP', -- POSTING_ENTITY
1457 NULL, -- CASH_RECEIPT_ID
1458 trxf.customer_trx_id, -- CUSTOMER_TRX_ID
1459 tlf.customer_trx_line_id, -- CUSTOMER_TRX_LINE_ID
1460 gldf.cust_trx_line_gl_dist_id, -- CUST_TRX_LINE_GL_DIST_ID
1461 gldf.cust_trx_line_salesrep_id, -- CUST_TRX_LINE_SALESREP_ID
1462 tlf.inventory_item_id, -- INVENTORY_ITEM_ID
1463 tlf.sales_tax_id, -- SALES_TAX_ID
1464 osp.master_organization_id, -- SO_ORGANIZATION_ID
1465 tlf.tax_exemption_id, -- TAX_EXEMPTION_ID
1466 tlf.uom_code, -- UOM_CODE
1467 tlf.warehouse_id, -- WAREHOUSE_ID
1468 trxf.agreement_id, -- AGREEMENT_ID
1469 trxf.customer_bank_account_id, -- CUSTOMER_BANK_ACCT_ID
1470 trxf.drawee_bank_account_id, -- DRAWEE_BANK_ACCOUNT_ID
1471 trxf.remit_bank_acct_use_id, -- REMITTANCE_BANK_ACCT_ID
1472 NULL, -- DISTRIBUTION_SET_ID
1473 psch.payment_schedule_id, -- PAYMENT_SCHEDULE_ID
1474 trxf.receipt_method_id, -- RECEIPT_METHOD_ID
1475 NULL, -- RECEIVABLES_TRX_ID
1476 NULL, -- ED_ADJ_RECEIVABLES_TRX_ID
1477 NULL, -- UNED_RECEIVABLES_TRX_ID
1478 trxf.set_of_books_id, -- SET_OF_BOOKS_ID
1479 trxf.primary_salesrep_id, -- SALESREP_ID
1480 trxf.bill_to_site_use_id, -- BILL_SITE_USE_ID
1481 trxf.drawee_site_use_id, -- DRAWEE_SITE_USE_ID
1482 trxf.paying_site_use_id, -- PAYING_SITE_USE_ID
1483 trxf.sold_to_site_use_id, -- SOLD_SITE_USE_ID
1484 trxf.ship_to_site_use_id, -- SHIP_SITE_USE_ID
1485 NULL, -- RECEIPT_CUSTOMER_SITE_USE_ID
1486 trxf.bill_to_contact_id, -- BILL_CUST_ROLE_ID
1487 trxf.drawee_contact_id, -- DRAWEE_CUST_ROLE_ID
1488 trxf.ship_to_contact_id, -- SHIP_CUST_ROLE_ID
1489 trxf.sold_to_contact_id, -- SOLD_CUST_ROLE_ID
1490 trxf.bill_to_customer_id, -- BILL_CUSTOMER_ID
1491 trxf.drawee_id, -- DRAWEE_CUSTOMER_ID
1492 trxf.paying_customer_id, -- PAYING_CUSTOMER_ID
1493 trxf.sold_to_customer_id, -- SOLD_CUSTOMER_ID
1494 trxf.ship_to_customer_id, -- SHIP_CUSTOMER_ID
1495 trxf.remit_to_address_id, -- REMIT_ADDRESS_ID
1496 NULL, -- RECEIPT_BATCH_ID
1497 NULL, -- RECEIVABLE_APPLICATION_ID
1498 NULL, -- CUSTOMER_BANK_BRANCH_ID
1499 NULL, -- ISSUER_BANK_BRANCH_ID
1500 trxf.batch_source_id, -- BATCH_SOURCE_ID
1501 trxf.batch_id, -- BATCH_ID
1502 trxf.term_id, -- TERM_ID
1503 'Y', -- SELECT_FLAG
1504 'L', -- LEVEL_FLAG
1505 'F', -- FROM_TO_FLAG
1506 CASE WHEN (dist.from_amount_cr IS NULL AND dist.from_amount_dr IS NULL) THEN
1507 NVL(dist.amount_cr,0) - NVL(dist.amount_dr,0)
1508 ELSE
1509 NVL(dist.from_amount_cr,0) - NVL(dist.from_amount_dr,0)
1510 END, -- FROM_AMOUNT
1511 NVL(dist.amount_cr,0) - NVL(dist.amount_dr,0), -- AMOUNT
1512 CASE WHEN (dist.from_acctd_amount_cr IS NULL AND dist.from_acctd_amount_dr IS NULL) THEN
1513 NVL(dist.acctd_amount_cr,0) - NVL(dist.acctd_amount_dr,0)
1514 ELSE
1515 NVL(dist.from_acctd_amount_cr,0) - NVL(dist.from_acctd_amount_dr,0)
1516 END, -- FROM_ACCTD_MOUNT
1517 gt.event_type_code,
1518 gt.event_class_code,
1519 gt.entity_code,
1520 tlf.tax_line_id, --tax_line_id
1521 app.upgrade_method
1522 ,'N' --MFAR_ADDITIONAL_ENTRY
1523 , dist.source_type
1524 , dist.REF_PREV_CUST_TRX_LINE_ID -- 9860123
1525 , the_segment_value(sob.chart_of_accounts_id, 'GL_BALANCING', dist.ref_dist_ccid)
1526 FROM xla_events_gt gt,
1527 ar_receivable_applications_all app,
1528 ar_distributions_all dist,
1529 gl_sets_of_books sob,
1530 oe_system_parameters_all osp,
1531 ra_customer_trx_all trxf,
1532 ra_customer_trx_lines_all tlf,
1533 ra_cust_trx_line_gl_dist_all gldf,
1534 ar_payment_schedules_all psch
1535 WHERE gt.event_type_code IN ('CM_CREATE','CM_UPDATE' ) --BUG#3419926
1536 AND gt.application_id = p_application_id
1537 AND gt.event_id = app.event_id
1538 AND dist.source_table = 'RA'
1539 AND dist.source_id = app.receivable_application_id
1540 AND app.set_of_books_id = sob.set_of_books_id
1541 AND app.org_id = osp.org_id(+)
1542 AND app.customer_trx_id = trxf.customer_trx_id
1543 --
1544 -- R12_11ICASH_POST is reserved for Upgraded 11i Cash basis not posted applications
1545 -- We are not passing Cash basis at From Line level
1546 -- the data for Cash Basis accounting upgraded will be at the To line level only
1547 --
1548 -- AND NVL(app.upgrade_method,'XX') NOT IN ('R12_11ICASH_POST')
1549 -- Need to incorporate PSA upgrade
1550 AND DECODE(app.upgrade_method,
1551 'R12_11ICASH_POST','N',
1552 '11I_MFAR_UPG' ,DECODE(dist.source_table_secondary,'UPMFRAMIAR','Y','N'),
1553 'Y') = 'Y'
1554 -- AND trxf.customer_trx_id = tlf.customer_trx_id
1555 -- AND trxf.customer_trx_id = gldf.customer_trx_id
1556 AND dist.ref_customer_trx_line_id = tlf.customer_trx_line_id(+)
1557 -- ?? application we only want line actually applied
1558 AND dist.ref_cust_trx_line_gl_dist_id = gldf.cust_trx_line_gl_dist_id(+)
1559 -- ?? application we only want line actually applied
1560 AND trxf.customer_trx_id = psch.customer_trx_id
1561 AND NVL(psch.terms_sequence_number,1) = 1
1562 AND dist.source_type in ('REC','DEFERRED_TAX','TAX','CURR_ROUND') /* Bug 6119725 Start Changes */
1563 AND (((dist.ref_cust_trx_line_gl_dist_id IS NOT NULL AND sign(dist.ref_cust_trx_line_gl_dist_id) = 1)
1564 AND dist.ref_cust_trx_line_gl_dist_id NOT IN (SELECT cust_trx_line_gl_dist_id
1565 FROM ra_cust_trx_line_gl_dist_all ctlgd
1566 WHERE ctlgd.customer_trx_id = app.applied_customer_trx_id)) -- Restrict To rows of Invoice
1567 OR (((dist.ref_cust_trx_line_gl_dist_id IS NULL OR sign(dist.ref_cust_trx_line_gl_dist_id) = -1)
1568 AND ((sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0)))*-1 = sign(nvl(dist.amount_cr,0) * -1+nvl(dist.amount_dr,0)) AND dist.source_type = 'DEFERRED_TAX' )/* Bug 8269394 Changes */
1569 OR ( sign((app.acctd_amount_applied_from+nvl(app.acctd_earned_discount_taken,0)+nvl(app.acctd_unearned_discount_taken,0)))*-1 = sign(nvl(dist.acctd_amount_dr,0) * -1+nvl(dist.acctd_amount_cr,0)) AND dist.source_type = 'CURR_ROUND')
1570 OR
1571 (( sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0)))*-1 = sign(nvl(dist.amount_dr,0) * -1+nvl(dist.amount_cr,0)) AND dist.source_type not in ('DEFERRED_TAX','CURR_ROUND'))
1572 /* Bug 8269394 Changes */
1573 AND (((sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0)))*-1) <> 0)
1574 OR
1575 ((sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0)))*-1 = 0)
1576 AND dist.amount_cr is not null)))))));
1577
1578 /* Bug 6119725 End Changes */
1579
1580
1581
1582
1583 --BUG#5366837
1584 INSERT INTO ar_xla_lines_extract (
1585 EVENT_ID
1586 ,LINE_NUMBER
1587 ,LANGUAGE
1588 ,LEDGER_ID
1589 ,SOURCE_ID
1590 ,SOURCE_TABLE
1591 ,LINE_ID
1592 ,TAX_CODE_ID
1593 ,LOCATION_SEGMENT_ID
1594 ,BASE_CURRENCY_CODE
1595 ,EXCHANGE_RATE_TYPE
1596 ,EXCHANGE_RATE
1597 ,EXCHANGE_DATE
1598 ,ACCTD_AMOUNT
1599 ,TAXABLE_ACCTD_AMOUNT
1600 ,ORG_ID
1601 ,HEADER_TABLE_ID
1602 ,POSTING_ENTITY
1603 ,CASH_RECEIPT_ID
1604 ,CUSTOMER_TRX_ID
1605 ,CUSTOMER_TRX_LINE_ID
1606 ,CUST_TRX_LINE_GL_DIST_ID
1607 ,CUST_TRX_LINE_SALESREP_ID
1608 ,INVENTORY_ITEM_ID
1609 ,SALES_TAX_ID
1610 ,SO_ORGANIZATION_ID
1611 ,TAX_EXEMPTION_ID
1612 ,UOM_CODE
1613 ,WAREHOUSE_ID
1614 ,AGREEMENT_ID
1615 ,CUSTOMER_BANK_ACCT_ID
1616 ,DRAWEE_BANK_ACCOUNT_ID
1617 ,REMITTANCE_BANK_ACCT_ID
1618 ,DISTRIBUTION_SET_ID
1619 ,PAYMENT_SCHEDULE_ID
1620 ,RECEIPT_METHOD_ID
1621 ,RECEIVABLES_TRX_ID
1622 ,ED_ADJ_RECEIVABLES_TRX_ID
1623 ,UNED_RECEIVABLES_TRX_ID
1624 ,SET_OF_BOOKS_ID
1625 ,SALESREP_ID
1626 ,BILL_SITE_USE_ID
1627 ,DRAWEE_SITE_USE_ID
1628 ,PAYING_SITE_USE_ID
1629 ,SOLD_SITE_USE_ID
1630 ,SHIP_SITE_USE_ID
1631 ,RECEIPT_CUSTOMER_SITE_USE_ID
1632 ,BILL_CUST_ROLE_ID
1633 ,DRAWEE_CUST_ROLE_ID
1634 ,SHIP_CUST_ROLE_ID
1635 ,SOLD_CUST_ROLE_ID
1636 ,BILL_CUSTOMER_ID
1637 ,DRAWEE_CUSTOMER_ID
1638 ,PAYING_CUSTOMER_ID
1639 ,SOLD_CUSTOMER_ID
1640 ,SHIP_CUSTOMER_ID
1641 ,REMIT_ADDRESS_ID
1642 ,RECEIPT_BATCH_ID
1643 ,RECEIVABLE_APPLICATION_ID
1644 ,CUSTOMER_BANK_BRANCH_ID
1645 ,ISSUER_BANK_BRANCH_ID
1646 ,BATCH_SOURCE_ID
1647 ,BATCH_ID
1648 ,TERM_ID
1649 ,SELECT_FLAG
1650 ,LEVEL_FLAG
1651 ,FROM_TO_FLAG
1652 ,FROM_AMOUNT
1653 ,AMOUNT
1654 ,FROM_ACCTD_AMOUNT
1655 ,event_type_code
1656 ,event_class_code
1657 ,entity_code
1658 ,tax_line_id
1659 ,additional_char1
1660 ,MFAR_ADDITIONAL_ENTRY
1661 )
1662 SELECT /*+LEADING(gt) USE_NL(gt,app)*/
1663 gt.event_id -- EVENT_ID
1664 ,dist.cash_basis_distribution_id -- LINE_NUMBER
1665 ,'' -- LANGUAGE
1666 ,sob.set_of_books_id -- LEDGER_ID
1667 ,dist.source_id -- SOURCE_ID
1668 ,'RA' -- SOURCE_TABLE
1669 ,dist.cash_basis_distribution_id -- LINE_ID
1670 ,NULL -- TAX_CODE_ID
1671 ,NULL -- LOCATION_SEGMENT_ID
1672 ,sob.currency_code -- BASE_CURRENCY
1673 ,trxf.exchange_rate_type -- EXCHANGE_RATE_TYPE
1674 ,trxf.exchange_rate -- EXCHANGE_RATE
1675 ,trxf.exchange_date -- EXCHANGE_DATE
1676 ,dist.acctd_amount -- ACCTD_AMOUNT
1677 ,0 -- TAXABLE_ACCTD_AMOUNT
1678 ,app.org_id -- ORG_ID
1679 ,app.receivable_application_id -- HEADER_TABLE_ID
1680 ,'APP' -- POSTING_ENTITY
1681 ,NULL -- CASH_RECEIPT_ID
1682 ,trxf.customer_trx_id -- CUSTOMER_TRX_ID
1683 ,tlf.customer_trx_line_id -- CUSTOMER_TRX_LINE_ID
1684 ,gldf.cust_trx_line_gl_dist_id -- CUST_TRX_LINE_GL_DIST_ID
1685 ,gldf.cust_trx_line_salesrep_id -- CUST_TRX_LINE_SALESREP_ID
1686 ,tlf.inventory_item_id -- INVENTORY_ITEM_ID
1687 ,tlf.sales_tax_id -- SALES_TAX_ID
1688 ,osp.master_organization_id -- SO_ORGANIZATION_ID
1689 ,tlf.tax_exemption_id -- TAX_EXEMPTION_ID
1690 ,tlf.uom_code -- UOM_CODE
1691 ,tlf.warehouse_id -- WAREHOUSE_ID
1692 ,trxf.agreement_id -- AGREEMENT_ID
1693 ,trxf.customer_bank_account_id -- CUSTOMER_BANK_ACCT_ID
1694 ,trxf.drawee_bank_account_id -- DRAWEE_BANK_ACCOUNT_ID
1695 ,trxf.remit_bank_acct_use_id -- REMITTANCE_BANK_ACCT_ID
1696 ,NULL -- DISTRIBUTION_SET_ID
1697 ,psch.payment_schedule_id -- PAYMENT_SCHEDULE_ID
1698 ,trxf.receipt_method_id -- RECEIPT_METHOD_ID
1699 ,NULL -- RECEIVABLES_TRX_ID
1700 ,NULL -- ED_ADJ_RECEIVABLES_TRX_ID
1701 ,NULL -- UNED_RECEIVABLES_TRX_ID
1702 ,trxf.set_of_books_id -- SET_OF_BOOKS_ID
1703 ,trxf.primary_salesrep_id -- SALESREP_ID
1704 ,trxf.bill_to_site_use_id -- BILL_SITE_USE_ID
1705 ,trxf.drawee_site_use_id -- DRAWEE_SITE_USE_ID
1706 ,trxf.paying_site_use_id -- PAYING_SITE_USE_ID
1707 ,trxf.sold_to_site_use_id -- SOLD_SITE_USE_ID
1708 ,trxf.ship_to_site_use_id -- SHIP_SITE_USE_ID
1709 ,NULL -- RECEIPT_CUSTOMER_SITE_USE_ID
1710 ,trxf.bill_to_contact_id -- BILL_CUST_ROLE_ID
1711 ,trxf.drawee_contact_id -- DRAWEE_CUST_ROLE_ID
1712 ,trxf.ship_to_contact_id -- SHIP_CUST_ROLE_ID
1713 ,trxf.sold_to_contact_id -- SOLD_CUST_ROLE_ID
1714 ,trxf.bill_to_customer_id -- BILL_CUSTOMER_ID
1715 ,trxf.drawee_id -- DRAWEE_CUSTOMER_ID
1716 ,trxf.paying_customer_id -- PAYING_CUSTOMER_ID
1717 ,trxf.sold_to_customer_id -- SOLD_CUSTOMER_ID
1718 ,trxf.ship_to_customer_id -- SHIP_CUSTOMER_ID
1719 ,trxf.remit_to_address_id -- REMIT_ADDRESS_ID
1720 ,NULL -- RECEIPT_BATCH_ID
1721 ,NULL -- RECEIVABLE_APPLICATION_ID
1722 ,NULL -- CUSTOMER_BANK_BRANCH_ID
1723 ,NULL -- ISSUER_BANK_BRANCH_ID
1724 ,trxf.batch_source_id -- BATCH_SOURCE_ID
1725 ,trxf.batch_id -- BATCH_ID
1726 ,trxf.term_id -- TERM_ID
1727 ,'Y' -- SELECT_FLAG
1728 ,'L' -- LEVEL_FLAG
1729 ,'F' -- FROM_TO_FLAG
1730 ,dist.from_amount -- FROM_AMOUNT
1731 ,dist.amount -- AMOUNT
1732 ,dist.from_acctd_amount -- FROM_ACCTD_MOUNT
1733 ,gt.event_type_code
1734 ,gt.event_class_code
1735 ,gt.entity_code
1736 ,tlf.tax_line_id --tax_line_id
1737 ,app.upgrade_method
1738 ,'N' --MFAR_ADDITIONAL_ENTRY
1739 FROM xla_events_gt gt,
1740 ar_receivable_applications_all app,
1741 ar_cash_basis_dists_all dist,
1742 gl_sets_of_books sob,
1743 oe_system_parameters_all osp,
1744 ra_customer_trx_all trxf,
1745 ra_customer_trx_lines_all tlf,
1746 ra_cust_trx_line_gl_dist_all gldf,
1747 ar_payment_schedules_all psch
1748 WHERE gt.event_type_code IN ('CM_CREATE','CM_UPDATE' )
1749 AND gt.application_id = 222
1750 AND gt.event_id = app.event_id
1751 AND dist.receivable_application_id = app.receivable_application_id
1752 AND app.set_of_books_id = sob.set_of_books_id
1753 AND app.org_id = osp.org_id(+)
1754 AND app.customer_trx_id = trxf.customer_trx_id
1755 AND app.upgrade_method = 'R12_11ICASH_POST'
1756 AND trxf.customer_trx_id = tlf.customer_trx_id
1757 AND trxf.customer_trx_id = gldf.customer_trx_id
1758 AND dist.ref_customer_trx_line_id = tlf.customer_trx_line_id(+)
1759 AND dist.ref_cust_trx_line_gl_dist_id = gldf.cust_trx_line_gl_dist_id(+)
1760 AND trxf.customer_trx_id = psch.customer_trx_id
1761 AND NVL(psch.terms_sequence_number,1) = 1;
1762
1763
1764 local_log(procedure_name => 'load_line_data_app_from_cm',
1765 p_msg_text => 'arp_xla_extract_main_pkg.load_line_data_app_from_cm ()-');
1766 EXCEPTION
1767 -- WHEN NO_DATA_FOUND THEN NULL;
1768 WHEN OTHERS THEN
1769 local_log(procedure_name => 'load_line_data_app_from_cm',
1770 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_app_from_cm '||
1771 arp_global.CRLF || 'Error :'|| SQLERRM);
1772 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
1773 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
1774 'Procedure :arp_xla_extract_main_pkg.load_line_data_app_from_cm'|| arp_global.CRLF||
1775 'Error :'||SQLERRM);
1776 FND_MSG_PUB.ADD;
1777 RAISE;
1778 END load_line_data_app_from_cm;
1779
1780
1781 ---------------------------------
1782 -- Header loading procedures --
1783 ---------------------------------
1784 /*-----------------------------------------------------------------+
1785 | Procedure Name : Load_header_data_ctlgd |
1786 | Description : Extract header data for transaction events |
1787 +-----------------------------------------------------------------+
1788 | History : |
1789 | 23-FEB-2004 Herve Yu Created due to bug#3419926 |
1790 +-----------------------------------------------------------------*/
1791 PROCEDURE Load_header_data_ctlgd(p_application_id IN NUMBER DEFAULT 222)
1792 IS
1793 BEGIN
1794 local_log(procedure_name => 'load_header_data_ctlgd',
1795 p_msg_text => 'arp_xla_extract_main_pkg.load_header_data_ctlgd ()+');
1796 -----------------------
1797 -- Insert header into ar_xla_lines_extract with
1798 -- selected_flg = 'Y'
1799 -- level_flg = 'H'
1800 -- We also need to insert the header data into ar_xla_headers_extract
1801 -- because the view AR_LEDGER_EXT_H is a pure header level view but it is
1802 -- used by the transaction event_types posting with the entity CTLGD
1803 -----------------------
1804 -- Insert into Lines GT
1805 INSERT INTO AR_XLA_LINES_EXTRACT(
1806 EVENT_ID
1807 ,SOURCE_ID
1808 ,SOURCE_TABLE
1809 ,LINE_ID
1810 ,TAX_CODE_ID
1811 ,LOCATION_SEGMENT_ID
1812 ,BASE_CURRENCY_CODE
1813 ,EXCHANGE_RATE_TYPE
1814 ,EXCHANGE_RATE
1815 ,EXCHANGE_DATE
1816 ,ACCTD_AMOUNT
1817 ,TAXABLE_ACCTD_AMOUNT
1818 ,ORG_ID
1819 ,HEADER_TABLE_ID
1820 ,POSTING_ENTITY
1821 ,CASH_RECEIPT_ID
1822 ,CUSTOMER_TRX_ID
1823 ,CUSTOMER_TRX_LINE_ID
1824 ,CUST_TRX_LINE_GL_DIST_ID
1825 ,CUST_TRX_LINE_SALESREP_ID
1826 ,INVENTORY_ITEM_ID
1827 ,SALES_TAX_ID
1828 ,SO_ORGANIZATION_ID
1829 ,TAX_EXEMPTION_ID
1830 ,UOM_CODE
1831 ,WAREHOUSE_ID
1832 ,AGREEMENT_ID
1833 ,CUSTOMER_BANK_ACCT_ID
1834 ,DRAWEE_BANK_ACCOUNT_ID
1835 ,REMITTANCE_BANK_ACCT_ID
1836 ,DISTRIBUTION_SET_ID
1837 ,PAYMENT_SCHEDULE_ID
1838 ,RECEIPT_METHOD_ID
1839 ,RECEIVABLES_TRX_ID
1840 ,ED_ADJ_RECEIVABLES_TRX_ID
1841 ,UNED_RECEIVABLES_TRX_ID
1842 ,SET_OF_BOOKS_ID
1843 ,SALESREP_ID
1844 ,BILL_SITE_USE_ID
1845 ,DRAWEE_SITE_USE_ID
1846 ,PAYING_SITE_USE_ID
1847 ,SOLD_SITE_USE_ID
1848 ,SHIP_SITE_USE_ID
1849 ,RECEIPT_CUSTOMER_SITE_USE_ID
1850 ,BILL_CUST_ROLE_ID
1851 ,DRAWEE_CUST_ROLE_ID
1852 ,SHIP_CUST_ROLE_ID
1853 ,SOLD_CUST_ROLE_ID
1854 ,BILL_CUSTOMER_ID
1855 ,DRAWEE_CUSTOMER_ID
1856 ,PAYING_CUSTOMER_ID
1857 ,SOLD_CUSTOMER_ID
1858 ,SHIP_CUSTOMER_ID
1859 ,REMIT_ADDRESS_ID
1860 ,RECEIPT_BATCH_ID
1861 ,RECEIVABLE_APPLICATION_ID
1862 ,CUSTOMER_BANK_BRANCH_ID
1863 ,ISSUER_BANK_BRANCH_ID
1864 ,BATCH_SOURCE_ID
1865 ,BATCH_ID
1866 ,TERM_ID
1867 ,SELECT_FLAG
1868 ,LEVEL_FLAG
1869 ,FROM_TO_FLAG
1870 ,PAIRED_CCID
1871 --{BUG#4356088
1872 ,event_type_code
1873 ,event_class_code
1874 ,entity_code
1875 ,MFAR_ADDITIONAL_ENTRY
1876 )
1877 SELECT /*+ LEADING(gt,trx,ctlgd) USE_NL(gt,trx,ctlgd)*/
1878 gt.event_id -- EVENT_ID
1879 ,'' -- SOURCE_ID
1880 ,'' -- SOURCE_TABLE
1881 ,'' -- LINE_ID
1882 ,'' -- TAX_CODE_ID
1883 ,'' -- LOCATION_SEGMENT_ID
1884 ,sob.currency_code -- BASE_CURRENCY_CODE
1885 ,trx.exchange_rate_type -- EXCHANGE_RATE_TYPE
1886 ,trx.exchange_rate -- EXCHANGE_RATE
1887 ,DECODE(trx.previous_customer_trx_id, NULL, trx.exchange_date, (select trx_date from ra_customer_trx_all where customer_trx_id = trx.previous_customer_trx_id) ) -- EXCHANGE_DATE
1888 ,'' -- ACCTD_AMOUNT
1889 ,'' -- TAXABLE_ACCTD_AMOUNT
1890 ,trx.org_id -- ORG_ID
1891 ,'' -- HEADER_TABLE_ID
1892 ,'CTLGD' -- POSTING_ENTITY
1893 ,'' -- CASH_RECEIPT_ID
1894 ,trx.customer_trx_id -- CUSTOMER_TRX_ID
1895 ,'' -- CUSTOMER_TRX_LINE_ID
1896 ,'' -- CUST_TRX_LINE_GL_DIST_ID
1897 ,'' -- CUST_TRX_LINE_SALESREP_ID
1898 ,'' -- INVENTORY_ITEM_ID
1899 ,'' -- SALES_TAX_ID
1900 ,'' -- SO_ORGANIZATION_ID
1901 ,'' -- TAX_EXEMPTION_ID
1902 ,'' -- UOM_CODE
1903 ,'' -- WAREHOUSE_ID
1904 ,trx.agreement_id -- AGREEMENT_ID
1905 ,trx.customer_bank_account_id -- CUSTOMER_BANK_ACCT_ID
1906 ,trx.drawee_bank_account_id -- DRAWEE_BANK_ACCOUNT_ID
1907 ,trx.remit_bank_acct_use_id -- REMITTANCE_BANK_ACCT_ID
1908 ,'' -- DISTRIBUTION_SET_ID
1909 ,psch.payment_schedule_id -- PAYMENT_SCHEDULE_ID
1910 ,trx.receipt_method_id -- RECEIPT_METHOD_ID
1911 ,'' -- RECEIVABLES_TRX_ID
1912 ,'' -- ED_ADJ_RECEIVABLES_TRX_ID
1913 ,'' -- UNED_RECEIVABLES_TRX_ID
1914 ,trx.set_of_books_id -- SET_OF_BOOKS_ID
1915 ,trx.primary_salesrep_id -- SALESREP_ID
1916 ,trx.bill_to_site_use_id -- BILL_SITE_USE_ID
1917 ,trx.drawee_site_use_id -- DRAWEE_SITE_USE_ID
1918 ,trx.paying_site_use_id -- PAYING_SITE_USE_ID
1919 ,trx.sold_to_site_use_id -- SOLD_SITE_USE_ID
1920 ,trx.ship_to_site_use_id -- SHIP_SITE_USE_ID
1921 ,'' -- RECEIPT_CUSTOMER_SITE_USE_ID
1922 ,trx.bill_to_contact_id -- BILL_CUST_ROLE_ID
1923 ,trx.drawee_contact_id -- DRAWEE_CUST_ROLE_ID
1924 ,trx.ship_to_contact_id -- SHIP_CUST_ROLE_ID
1925 ,trx.sold_to_contact_id -- SOLD_CUST_ROLE_ID
1926 ,trx.bill_to_customer_id -- BILL_CUSTOMER_ID
1927 ,trx.drawee_id -- DRAWEE_CUSTOMER_ID
1928 ,trx.paying_customer_id -- PAYING_CUSTOMER_ID
1929 ,trx.sold_to_customer_id -- SOLD_CUSTOMER_ID
1930 ,trx.ship_to_customer_id -- SHIP_CUSTOMER_ID
1931 ,trx.remit_to_address_id -- REMIT_ADDRESS_ID
1932 ,'' -- RECEIPT_BATCH_ID
1933 ,'' -- RECEIVABLE_APPLICATION_ID
1934 ,'' -- CUSTOMER_BANK_BRANCH_ID
1935 ,'' -- ISSUER_BANK_BRANCH_ID
1936 ,trx.batch_source_id -- BATCH_SOURCE_ID
1937 ,trx.batch_id -- BATCH_ID
1938 ,trx.term_id -- TERM_ID
1939 ,'Y' -- SELECT_FLAG
1940 ,'H' -- LEVEL_FLAG
1941 ,'' -- FROM_TO_FLAG
1942 ,ctlgd.code_combination_id -- paired_ccid
1943 --{BUG#4356088
1944 ,gt.event_type_code
1945 ,gt.event_class_code
1946 ,gt.entity_code
1947 ,'N' --MFAR_ADDITIONAL_ENTRY
1948 FROM ra_customer_trx_all trx,
1949 gl_sets_of_books sob,
1950 xla_events_gt gt,
1951 ar_payment_schedules_all psch,
1952 ra_cust_trx_line_gl_dist_all ctlgd
1953 WHERE gt.event_type_code IN ('INV_CREATE' , 'INV_UPDATE' ,
1954 'CM_CREATE' , 'CM_UPDATE' ,
1955 'DM_CREATE' , 'DM_UPDATE' ,
1956 'DEP_CREATE' , 'DEP_UPDATE' ,
1957 'GUAR_CREATE' , 'GUAR_UPDATE' ,
1958 'CB_CREATE' ) --BUG#3419926
1959 AND gt.application_id = p_application_id
1960 AND trx.customer_trx_id = gt.source_id_int_1
1961 AND trx.set_of_books_id = sob.set_of_books_id
1962 AND trx.customer_trx_id = ctlgd.customer_trx_id
1963 AND trx.complete_flag = 'Y'
1964 AND ctlgd.account_class = 'REC'
1965 AND ctlgd.account_set_flag = 'N'
1966 AND trx.customer_trx_id = psch.customer_trx_id(+)
1967 AND NVL(psch.terms_sequence_number,1) = 1;
1968
1969 /*------------------------------------------------+
1970 | Due to unified accounting sources modal, the |
1971 | data for header extract are already inserted |
1972 | in the actract line table. The code in header |
1973 | insertion is therefore not usefull. Unless it |
1974 | a denormalised approach for header data for |
1975 | performance reason. This needs to be evaluated.|
1976 | For now, I commented the header table insertion|
1977 | we might end up with removing the header table.|
1978 +------------------------------------------------*/
1979 /* to be removed at the end of the project*/
1980 -- Load_header_data_ctlgd_h ;
1981 local_log(procedure_name => 'load_header_data_ctlgd',
1982 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_header_data_ctlgd()-');
1983
1984 EXCEPTION
1985 -- WHEN NO_DATA_FOUND THEN NULL;
1986 WHEN OTHERS THEN
1987 local_log(procedure_name => 'load_header_data_ctlgd',
1988 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_header_data_ctlgd '||
1989 arp_global.CRLF ||'Error :'|| SQLERRM);
1990 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
1991 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
1992 'Procedure :arp_xla_extract_main_pkg.load_header_data_ctlgd'|| arp_global.CRLF||
1993 'Error :'||SQLERRM);
1994 FND_MSG_PUB.ADD;
1995 RAISE;
1996 END Load_header_data_ctlgd;
1997
1998 ---------------------------
1999 /*-----------------------------------------------------------------+
2000 | Procedure Name : Load_header_data_adj |
2001 | Description : Extract header data for adjustment events |
2002 +-----------------------------------------------------------------+
2003 | History : |
2004 | 23-FEB-2004 Herve Yu Created due to bug#3419926 |
2005 +-----------------------------------------------------------------*/
2006 PROCEDURE Load_header_data_adj(p_application_id IN NUMBER DEFAULT 222)
2007 IS
2008 BEGIN
2009 local_log(procedure_name => 'load_header_data_adj',
2010 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_header_data_adj()+');
2011 -- Insert into Lines GT for adjustments because header level
2012 -- shared sources can be used.
2013 INSERT INTO AR_XLA_LINES_EXTRACT(
2014 EVENT_ID
2015 ,SOURCE_ID
2016 ,SOURCE_TABLE
2017 ,LINE_ID
2018 ,TAX_CODE_ID
2019 ,LOCATION_SEGMENT_ID
2020 ,BASE_CURRENCY_CODE
2021 ,EXCHANGE_RATE_TYPE
2022 ,EXCHANGE_RATE
2023 ,EXCHANGE_DATE
2024 ,ACCTD_AMOUNT
2025 ,TAXABLE_ACCTD_AMOUNT
2026 ,ORG_ID
2027 ,HEADER_TABLE_ID
2028 ,POSTING_ENTITY
2029 ,CASH_RECEIPT_ID
2030 ,CUSTOMER_TRX_ID
2031 ,CUSTOMER_TRX_LINE_ID
2032 ,CUST_TRX_LINE_GL_DIST_ID
2033 ,CUST_TRX_LINE_SALESREP_ID
2034 ,INVENTORY_ITEM_ID
2035 ,SALES_TAX_ID
2036 ,SO_ORGANIZATION_ID
2037 ,TAX_EXEMPTION_ID
2038 ,UOM_CODE
2039 ,WAREHOUSE_ID
2040 ,AGREEMENT_ID
2041 ,CUSTOMER_BANK_ACCT_ID
2042 ,DRAWEE_BANK_ACCOUNT_ID
2043 ,REMITTANCE_BANK_ACCT_ID
2044 ,DISTRIBUTION_SET_ID
2045 ,PAYMENT_SCHEDULE_ID
2046 ,RECEIPT_METHOD_ID
2047 ,RECEIVABLES_TRX_ID
2048 ,ED_ADJ_RECEIVABLES_TRX_ID
2049 ,UNED_RECEIVABLES_TRX_ID
2050 ,SET_OF_BOOKS_ID
2051 ,SALESREP_ID
2052 ,BILL_SITE_USE_ID
2053 ,DRAWEE_SITE_USE_ID
2054 ,PAYING_SITE_USE_ID
2055 ,SOLD_SITE_USE_ID
2056 ,SHIP_SITE_USE_ID
2057 ,RECEIPT_CUSTOMER_SITE_USE_ID
2058 ,BILL_CUST_ROLE_ID
2059 ,DRAWEE_CUST_ROLE_ID
2060 ,SHIP_CUST_ROLE_ID
2061 ,SOLD_CUST_ROLE_ID
2062 ,BILL_CUSTOMER_ID
2063 ,DRAWEE_CUSTOMER_ID
2064 ,PAYING_CUSTOMER_ID
2065 ,SOLD_CUSTOMER_ID
2066 ,SHIP_CUSTOMER_ID
2067 ,REMIT_ADDRESS_ID
2068 ,RECEIPT_BATCH_ID
2069 ,RECEIVABLE_APPLICATION_ID
2070 ,CUSTOMER_BANK_BRANCH_ID
2071 ,ISSUER_BANK_BRANCH_ID
2072 ,BATCH_SOURCE_ID
2073 ,BATCH_ID
2074 ,TERM_ID
2075 ,SELECT_FLAG
2076 ,LEVEL_FLAG
2077 ,FROM_TO_FLAG
2078 ,paired_ccid
2079 --{BUG#4356088
2080 ,event_type_code
2081 ,event_class_code
2082 ,entity_code
2083 ,MFAR_ADDITIONAL_ENTRY
2084 )
2085 SELECT /*+LEADING(gt) USE_NL(gt, adj)*/
2086 gt.event_id, -- EVENT_ID
2087 '', -- SOURCE_ID
2088 '', -- SOURCE_TABLE
2089 '', -- LINE_ID
2090 '', -- TAX_CODE_ID
2091 '', -- LOCATION_SEGMENT_ID
2092 sob.currency_code, -- BASE_CURRENCY_CODE
2093 trxf.exchange_rate_type, -- EXCHANGE_RATE_TYPE
2094 trxf.exchange_rate, -- EXCHANGE_RATE
2095 trxf.exchange_date, -- EXCHANGE_DATE
2096 '', -- ACCTD_AMOUNT
2097 '', -- TAXABLE_ACCTD_AMOUNT
2098 adj.org_id, -- ORG_ID
2099 adj.adjustment_id, -- HEADER_TABLE_ID
2100 'ADJ', -- POSTING_ENTITY
2101 '', -- CASH_RECEIPT_ID
2102 adj.customer_trx_id, -- CUSTOMER_TRX_ID
2103 '', -- CUSTOMER_TRX_LINE_ID
2104 '', -- CUST_TRX_LINE_GL_DIST_ID
2105 trxf.primary_salesrep_id, -- SALESREP_ID
2106 '', -- INVENTORY_ITEM_ID
2107 '', -- SALES_TAX_ID
2108 '', -- SO_ORGANIZATION_ID
2109 '', -- TAX_EXEMPTION_ID
2110 '', -- UOM_CODE
2111 '', -- WAREHOUSE_ID
2112 trxf.agreement_id, -- AGREEMENT_ID
2113 trxf.customer_bank_account_id, -- CUSTOMER_BANK_ACCT_ID
2114 '', -- DRAWEE_BANK_ACCOUNT_ID
2115 trxf.remit_bank_acct_use_id, -- REMITTANCE_BANK_ACCT_ID
2116 adj.distribution_set_id, -- DISTRIBUTION_SET_ID
2117 adj.payment_schedule_id, -- PAYMENT_SCHEDULE_ID
2118 trxf.receipt_method_id, -- RECEIPT_METHOD_ID
2119 adj.receivables_trx_id, -- RECEIVABLES_TRX_ID
2120 '', -- ED_ADJ_RECEIVABLES_TRX_ID
2121 '', -- UNED_RECEIVABLES_TRX_ID
2122 adj.set_of_books_id, -- SET_OF_BOOKS_ID
2123 trxf.primary_salesrep_id, -- SALESREP_ID
2124 trxf.bill_to_site_use_id, -- BILL_SITE_USE_ID
2125 trxf.drawee_site_use_id, -- DRAWEE_SITE_USE_ID
2126 trxf.paying_site_use_id, -- PAYING_SITE_USE_ID
2127 trxf.sold_to_site_use_id, -- SOLD_SITE_USE_ID
2128 trxf.ship_to_site_use_id, -- SHIP_SITE_USE_ID
2129 '', -- RECEIPT_CUSTOMER_SITE_USE_ID
2130 trxf.bill_to_contact_id, -- BILL_CUST_ROLE_ID
2131 '', -- DRAWEE_CUST_ROLE_ID
2132 trxf.ship_to_contact_id, -- SHIP_CUST_ROLE_ID
2133 trxf.sold_to_contact_id, -- SOLD_CUST_ROLE_ID
2134 trxf.bill_to_customer_id, -- BILL_CUSTOMER_ID
2135 trxf.drawee_id, -- DRAWEE_CUSTOMER_ID
2136 trxf.paying_customer_id, -- PAYING_CUSTOMER_ID
2137 trxf.sold_to_customer_id, -- SOLD_CUSTOMER_ID
2138 trxf.ship_to_customer_id, -- SHIP_CUSTOMER_ID
2139 trxf.remit_to_address_id, -- REMIT_ADDRESS_ID
2140 '', -- RECEIPT_BATCH_ID
2141 '', -- RECEIVABLE_APPLICATION_ID
2142 '', -- CUSTOMER_BANK_BRANCH_ID
2143 '', -- ISSUER_BANK_BRANCH_ID
2144 trxf.batch_source_id, -- BATCH_SOURCE_ID
2145 trxf.batch_id, -- BATCH_ID
2146 trxf.term_id, -- TERM_ID
2147 'Y', -- select_flag
2148 'H', -- level_flag
2149 '', -- FROM_TO_FLAG
2150 ctlgd.code_combination_id -- paired_ccid
2151 --{BUG#4356088
2152 ,gt.event_type_code
2153 ,gt.event_class_code
2154 ,gt.entity_code
2155 ,'N' --MFAR_ADDITIONAL_ENTRY
2156 FROM ar_adjustments_all adj,
2157 gl_sets_of_books sob,
2158 xla_events_gt gt,
2159 ra_customer_trx_all trxf,
2160 ra_cust_trx_line_gl_dist_all ctlgd
2161 WHERE gt.event_type_code = 'ADJ_CREATE'
2162 AND gt.application_id = p_application_id
2163 AND adj.adjustment_id = gt.source_id_int_1
2164 AND adj.set_of_books_id = sob.set_of_books_id
2165 AND adj.customer_trx_id = trxf.customer_trx_id(+)
2166 AND trxf.customer_trx_id = ctlgd.customer_trx_id
2167 AND ctlgd.account_set_flag = 'N'
2168 AND ctlgd.account_class = 'REC'
2169 UNION ALL
2170 SELECT /*+LEADING(gt) USE_NL(gt, adj)*/
2171 gt.event_id, -- EVENT_ID
2172 '', -- SOURCE_ID
2173 '', -- SOURCE_TABLE
2174 '', -- LINE_ID
2175 '', -- TAX_CODE_ID
2176 '', -- LOCATION_SEGMENT_ID
2177 sob.currency_code, -- BASE_CURRENCY_CODE
2178 trxf.exchange_rate_type, -- EXCHANGE_RATE_TYPE
2179 trxf.exchange_rate, -- EXCHANGE_RATE
2180 trxf.exchange_date, -- EXCHANGE_DATE
2181 '', -- ACCTD_AMOUNT
2182 '', -- TAXABLE_ACCTD_AMOUNT
2183 adj.org_id, -- ORG_ID
2184 adj.adjustment_id, -- HEADER_TABLE_ID
2185 'ADJ', -- POSTING_ENTITY
2186 '', -- CASH_RECEIPT_ID
2187 adj.customer_trx_id, -- CUSTOMER_TRX_ID
2188 '', -- CUSTOMER_TRX_LINE_ID
2189 '', -- CUST_TRX_LINE_GL_DIST_ID
2190 trxf.primary_salesrep_id, -- SALESREP_ID
2191 '', -- INVENTORY_ITEM_ID
2192 '', -- SALES_TAX_ID
2193 '', -- SO_ORGANIZATION_ID
2194 '', -- TAX_EXEMPTION_ID
2195 '', -- UOM_CODE
2196 '', -- WAREHOUSE_ID
2197 trxf.agreement_id, -- AGREEMENT_ID
2198 trxf.customer_bank_account_id, -- CUSTOMER_BANK_ACCT_ID
2199 '', -- DRAWEE_BANK_ACCOUNT_ID
2200 trxf.remit_bank_acct_use_id, -- REMITTANCE_BANK_ACCT_ID
2201 adj.distribution_set_id, -- DISTRIBUTION_SET_ID
2202 adj.payment_schedule_id, -- PAYMENT_SCHEDULE_ID
2203 trxf.receipt_method_id, -- RECEIPT_METHOD_ID
2204 adj.receivables_trx_id, -- RECEIVABLES_TRX_ID
2205 '', -- ED_ADJ_RECEIVABLES_TRX_ID
2206 '', -- UNED_RECEIVABLES_TRX_ID
2207 adj.set_of_books_id, -- SET_OF_BOOKS_ID
2208 trxf.primary_salesrep_id, -- SALESREP_ID
2209 trxf.bill_to_site_use_id, -- BILL_SITE_USE_ID
2210 trxf.drawee_site_use_id, -- DRAWEE_SITE_USE_ID
2211 trxf.paying_site_use_id, -- PAYING_SITE_USE_ID
2212 trxf.sold_to_site_use_id, -- SOLD_SITE_USE_ID
2213 trxf.ship_to_site_use_id, -- SHIP_SITE_USE_ID
2214 '', -- RECEIPT_CUSTOMER_SITE_USE_ID
2215 trxf.bill_to_contact_id, -- BILL_CUST_ROLE_ID
2216 '', -- DRAWEE_CUST_ROLE_ID
2217 trxf.ship_to_contact_id, -- SHIP_CUST_ROLE_ID
2218 trxf.sold_to_contact_id, -- SOLD_CUST_ROLE_ID
2219 trxf.bill_to_customer_id, -- BILL_CUSTOMER_ID
2220 trxf.drawee_id, -- DRAWEE_CUSTOMER_ID
2221 trxf.paying_customer_id, -- PAYING_CUSTOMER_ID
2222 trxf.sold_to_customer_id, -- SOLD_CUSTOMER_ID
2223 trxf.ship_to_customer_id, -- SHIP_CUSTOMER_ID
2224 trxf.remit_to_address_id, -- REMIT_ADDRESS_ID
2225 '', -- RECEIPT_BATCH_ID
2226 '', -- RECEIVABLE_APPLICATION_ID
2227 '', -- CUSTOMER_BANK_BRANCH_ID
2228 '', -- ISSUER_BANK_BRANCH_ID
2229 trxf.batch_source_id, -- BATCH_SOURCE_ID
2230 trxf.batch_id, -- BATCH_ID
2231 trxf.term_id, -- TERM_ID
2232 'Y', -- select_flag
2233 'H', -- level_flag
2234 '', -- FROM_TO_FLAG
2235 ard.code_combination_id -- paired_ccid
2236 --{BUG#4356088
2237 ,gt.event_type_code
2238 ,gt.event_class_code
2239 ,gt.entity_code
2240 ,'N' --MFAR_ADDITIONAL_ENTRY
2241 FROM ar_adjustments_all adj,
2242 gl_sets_of_books sob,
2243 xla_events_gt gt,
2244 ra_customer_trx_all trxf,
2245 ar_transaction_history_all trh,
2246 ar_distributions_all ard
2247 WHERE gt.event_type_code = 'ADJ_CREATE'
2248 AND gt.application_id = p_application_id
2249 AND adj.adjustment_id = gt.source_id_int_1
2250 AND adj.set_of_books_id = sob.set_of_books_id
2251 AND adj.customer_trx_id = trxf.customer_trx_id(+)
2252 AND trxf.customer_trx_id = trh.customer_trx_id
2253 AND trh.current_accounted_flag = 'Y'
2254 AND trh.postable_flag = 'Y'
2255 AND ard.source_table = 'TH'
2256 AND ard.source_id = trh.transaction_history_id
2257 AND ard.source_type = 'REC'
2258 AND ard.ref_customer_trx_line_id is null
2259 AND ard.ref_cust_trx_line_gl_dist_id is null;
2260
2261 -- Load_header_data_adj_h;
2262 local_log(procedure_name => 'load_header_data_adj',
2263 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_header_data_adj()-');
2264 EXCEPTION
2265 -- WHEN NO_DATA_FOUND THEN NULL;
2266 WHEN OTHERS THEN
2267 local_log(procedure_name => 'load_header_data_adj',
2268 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_header_data_adj '||
2269 arp_global.CRLF || 'Error :'|| SQLERRM);
2270 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
2271 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
2272 'Procedure :arp_xla_extract_main_pkg.load_header_data_adj'|| arp_global.CRLF||
2273 'Error :'||SQLERRM);
2274 FND_MSG_PUB.ADD;
2275 RAISE;
2276 END Load_header_data_adj;
2277
2278 -----------------------------------------------------------------------
2279
2280 /*-----------------------------------------------------------------+
2281 | Procedure Name : Load_header_data_crh |
2282 | Description : Extract header data for cash receipt |
2283 | and misc cash receipt events. |
2284 +-----------------------------------------------------------------+
2285 | History : |
2286 | 23-FEB-2004 Herve Yu Created due to bug#3419926 |
2287 +-----------------------------------------------------------------*/
2288 PROCEDURE Load_header_data_crh(p_application_id IN NUMBER DEFAULT 222)
2289 IS
2290 BEGIN
2291 local_log(procedure_name => 'load_header_data_crh',
2292 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_header_data_crh()+');
2293 -- Insert header data to line level
2294 -- Pure Header sources and Shared header sources
2295 INSERT INTO AR_XLA_LINES_EXTRACT(
2296 EVENT_ID
2297 ,SOURCE_ID
2298 ,SOURCE_TABLE
2299 ,LINE_ID
2300 ,TAX_CODE_ID
2301 ,LOCATION_SEGMENT_ID
2302 ,BASE_CURRENCY_CODE
2303 ,EXCHANGE_RATE_TYPE
2304 ,EXCHANGE_RATE
2305 ,EXCHANGE_DATE
2306 ,ACCTD_AMOUNT
2307 ,TAXABLE_ACCTD_AMOUNT
2308 ,ORG_ID
2309 ,HEADER_TABLE_ID
2310 ,POSTING_ENTITY
2311 ,CASH_RECEIPT_ID
2312 ,CUSTOMER_TRX_ID
2313 ,CUSTOMER_TRX_LINE_ID
2314 ,CUST_TRX_LINE_GL_DIST_ID
2315 ,CUST_TRX_LINE_SALESREP_ID
2316 ,INVENTORY_ITEM_ID
2317 ,SALES_TAX_ID
2318 ,SO_ORGANIZATION_ID
2319 ,TAX_EXEMPTION_ID
2320 ,UOM_CODE
2321 ,WAREHOUSE_ID
2322 ,AGREEMENT_ID
2323 ,CUSTOMER_BANK_ACCT_ID
2324 ,DRAWEE_BANK_ACCOUNT_ID
2325 ,REMITTANCE_BANK_ACCT_ID
2326 ,DISTRIBUTION_SET_ID
2327 ,PAYMENT_SCHEDULE_ID
2328 ,RECEIPT_METHOD_ID
2329 ,RECEIVABLES_TRX_ID
2330 ,ED_ADJ_RECEIVABLES_TRX_ID
2331 ,UNED_RECEIVABLES_TRX_ID
2332 ,SET_OF_BOOKS_ID
2333 ,SALESREP_ID
2334 ,BILL_SITE_USE_ID
2335 ,DRAWEE_SITE_USE_ID
2336 ,PAYING_SITE_USE_ID
2337 ,SOLD_SITE_USE_ID
2338 ,SHIP_SITE_USE_ID
2339 ,RECEIPT_CUSTOMER_SITE_USE_ID
2340 ,BILL_CUST_ROLE_ID
2341 ,DRAWEE_CUST_ROLE_ID
2342 ,SHIP_CUST_ROLE_ID
2343 ,SOLD_CUST_ROLE_ID
2344 ,BILL_CUSTOMER_ID
2345 ,DRAWEE_CUSTOMER_ID
2346 ,PAYING_CUSTOMER_ID
2347 ,SOLD_CUSTOMER_ID
2348 ,SHIP_CUSTOMER_ID
2349 ,REMIT_ADDRESS_ID
2350 ,RECEIPT_BATCH_ID
2351 ,RECEIVABLE_APPLICATION_ID
2352 ,CUSTOMER_BANK_BRANCH_ID
2353 ,ISSUER_BANK_BRANCH_ID
2354 ,BATCH_SOURCE_ID
2355 ,BATCH_ID
2356 ,TERM_ID
2357 ,SELECT_FLAG
2358 ,LEVEL_FLAG
2359 ,FROM_TO_FLAG
2360 ,CRH_STATUS
2361 ,CRH_PRV_STATUS
2362 --{BUG#4356088
2363 ,event_type_code
2364 ,event_class_code
2365 ,entity_code
2366 --}
2367 ,reversal_code --Reversal at header should return 'Y' for RECP_REVERSAL
2368 ,MFAR_ADDITIONAL_ENTRY
2369 )
2370 SELECT /*+LEADING(gt) USE_NL(gt,cr)*/
2371 gt.event_id, --EVENT_ID
2372 '', --SOURCE_ID
2373 '', --SOURCE_TABLE
2374 '', --LINE_ID
2375 '', --TAX_CODE_ID
2376 '', --LOCATION_SEGMENT_ID
2377 sob.currency_code, -- BASE_CURRENCY_CODE
2378 cr.exchange_rate_type,-- EXCHANGE_RATE_TYPE
2379 cr.exchange_rate, -- EXCHANGE_RATE
2380 cr.exchange_date, -- EXCHANGE_DATE
2381 '', --ACCTD_AMOUNT
2382 '', --TAXABLE_ACCTD_AMOUNT
2383 cr.org_id, --ORG_ID
2384 cr.cash_receipt_id, --HEADER_TABLE_ID
2385 'CR', --POSTING_ENTITY
2386 cr.cash_receipt_id, --CASH_RECEIPT_ID
2387 '', --CUSTOMER_TRX_ID
2388 '', --CUSTOMER_TRX_LINE_ID
2389 '', --CUST_TRX_LINE_GL_DIST_ID
2390 '', --CUST_TRX_LINE_SALESREP_ID
2391 '', --INVENTORY_ITEM_ID
2392 '', --SALES_TAX_ID
2393 '', --SO_ORGANIZATION_ID
2394 '', --TAX_EXEMPTION_ID
2395 '', --UOM_CODE
2396 '', --WAREHOUSE_ID
2397 '', --AGREEMENT_ID
2398 cr.customer_bank_account_id, -- CUSTOMER_BANK_ACCT_ID
2399 '', -- DRAWEE_BANK_ACCOUNT_ID
2400 cr.remit_bank_acct_use_id, -- REMITTANCE_BANK_ACCT_ID
2401 cr.distribution_set_id, -- DISTRIBUTION_SET_ID
2402 '', -- PAYMENT_SCHEDULE_ID
2403 cr.receipt_method_id, -- RECEIPT_METHOD_ID
2404 cr.receivables_trx_id, -- RECEIVABLES_TRX_ID
2405 '', -- ED_ADJ_RECEIVABLES_TRX_ID
2406 '', -- UNED_RECEIVABLES_TRX_ID
2407 cr.set_of_books_id, -- SET_OF_BOOKS_ID
2408 '', -- SALESREP_ID
2409 cr.customer_site_use_id, -- BILL_SITE_USE_ID
2410 '', -- DRAWEE_SITE_USE_ID
2411 cr.customer_site_use_id, -- PAYING_SITE_USE_ID -- HYU
2412 '', -- SOLD_SITE_USE_ID
2413 '', -- SHIP_SITE_USE_ID
2414 cr.customer_site_use_id, -- RECEIPT_CUSTOMER_SITE_USE_ID
2415 '', -- BILL_CUST_ROLE_ID
2416 '', -- DRAWEE_CUST_ROLE_ID
2417 '', -- SHIP_CUST_ROLE_ID
2418 '', -- SOLD_CUST_ROLE_ID
2419 '', -- BILL_CUSTOMER_ID
2420 '', -- DRAWEE_CUSTOMER_ID
2421 cr.pay_from_customer, -- PAYING_CUSTOMER_ID
2422 '', -- SOLD_CUSTOMER_ID
2423 '', -- SHIP_CUSTOMER_ID
2424 '', -- REMIT_ADDRESS_ID
2425 cr.SELECTED_REMITTANCE_BATCH_ID, -- RECEIPT_BATCH_ID
2426 '', -- RECEIVABLE_APPLICATION_ID
2427 cr.customer_bank_branch_id, -- CUSTOMER_BANK_BRANCH_ID
2428 cr.issuer_bank_branch_id, -- ISSUER_BANK_BRANCH_ID
2429 '', -- BATCH_SOURCE_ID
2430 '', -- BATCH_ID
2431 '', -- TERM_ID
2432 'Y', -- SELECT_FLAG
2433 'H', -- LEVEL_FLAG
2434 '', -- FROM_TO_FLAG
2435 --{BUG5332302
2436 '', -- CRH_STATUS
2437 '' -- CRH_PRV_STATUS
2438 --}
2439 --{BUG#4356088
2440 ,gt.event_type_code
2441 ,gt.event_class_code
2442 ,gt.entity_code
2443 --}
2444 ,DECODE(gt.event_type_code,'RECP_REVERSE','Y',
2445 'MISC_RECP_REVERSE','Y','N') --reversal_code
2446 ,'N' --MFAR_ADDITIONAL_ENTRY
2447 FROM xla_events_gt gt,
2448 gl_sets_of_books sob,
2449 ar_cash_receipts_all cr
2450 WHERE gt.event_type_code IN ( 'RECP_CREATE' ,'RECP_UPDATE' ,
2451 'RECP_RATE_ADJUST' ,'RECP_REVERSE' ,--Header level view reversal stay
2452 'MISC_RECP_CREATE' ,'MISC_RECP_UPDATE' ,
2453 'MISC_RECP_RATE_ADJUST','MISC_RECP_REVERSE' )--BUG#3419926
2454 AND gt.application_id = p_application_id
2455 AND gt.source_id_int_1 = cr.cash_receipt_id
2456 AND cr.set_of_books_id = sob.set_of_books_id;
2457
2458 local_log(procedure_name => 'load_header_data_crh',
2459 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_header_data_crh()-');
2460 EXCEPTION
2461 -- WHEN NO_DATA_FOUND THEN NULL;
2462 WHEN OTHERS THEN
2463 local_log(procedure_name => 'load_header_data_crh',
2464 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_header_data_crh '||
2465 arp_global.CRLF ||'Error :'|| SQLERRM);
2466 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
2467 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
2468 'Procedure :arp_xla_extract_main_pkg.load_header_data_crh'|| arp_global.CRLF||
2469 'Error :'||SQLERRM);
2470 FND_MSG_PUB.ADD;
2471 RAISE;
2472 END Load_header_data_crh;
2473
2474 --------------------------------------------------------------------------------
2475
2476 /*-----------------------------------------------------------------+
2477 | Procedure Name : Load_header_data_th |
2478 | Description : Extract header data for Bill Receivable events |
2479 +-----------------------------------------------------------------+
2480 | History : |
2481 | 23-FEB-2004 Herve Yu Created due to bug#3419926 |
2482 +-----------------------------------------------------------------*/
2483 PROCEDURE Load_header_data_th(p_application_id IN NUMBER DEFAULT 222)
2484 IS
2485 BEGIN
2486 local_log(procedure_name => 'Load_header_data_th',
2487 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.Load_header_data_th()+');
2488 INSERT INTO AR_XLA_LINES_EXTRACT(
2489 EVENT_ID
2490 ,SOURCE_ID
2491 ,SOURCE_TABLE
2492 ,LINE_ID
2493 ,TAX_CODE_ID
2494 ,LOCATION_SEGMENT_ID
2495 ,BASE_CURRENCY_CODE
2496 ,EXCHANGE_RATE_TYPE
2497 ,EXCHANGE_RATE
2498 ,EXCHANGE_DATE
2499 ,ACCTD_AMOUNT
2500 ,TAXABLE_ACCTD_AMOUNT
2501 ,ORG_ID
2502 ,HEADER_TABLE_ID
2503 ,POSTING_ENTITY
2504 ,CASH_RECEIPT_ID
2505 ,CUSTOMER_TRX_ID
2506 ,CUSTOMER_TRX_LINE_ID
2507 ,CUST_TRX_LINE_GL_DIST_ID
2508 ,CUST_TRX_LINE_SALESREP_ID
2509 ,INVENTORY_ITEM_ID
2510 ,SALES_TAX_ID
2511 ,SO_ORGANIZATION_ID
2512 ,TAX_EXEMPTION_ID
2513 ,UOM_CODE
2514 ,WAREHOUSE_ID
2515 ,AGREEMENT_ID
2516 ,CUSTOMER_BANK_ACCT_ID
2517 ,DRAWEE_BANK_ACCOUNT_ID
2518 ,REMITTANCE_BANK_ACCT_ID
2519 ,DISTRIBUTION_SET_ID
2520 ,PAYMENT_SCHEDULE_ID
2521 ,RECEIPT_METHOD_ID
2522 ,RECEIVABLES_TRX_ID
2523 ,ED_ADJ_RECEIVABLES_TRX_ID
2524 ,UNED_RECEIVABLES_TRX_ID
2525 ,SET_OF_BOOKS_ID
2526 ,SALESREP_ID
2527 ,BILL_SITE_USE_ID
2528 ,DRAWEE_SITE_USE_ID
2529 ,PAYING_SITE_USE_ID
2530 ,SOLD_SITE_USE_ID
2531 ,SHIP_SITE_USE_ID
2532 ,RECEIPT_CUSTOMER_SITE_USE_ID
2533 ,BILL_CUST_ROLE_ID
2534 ,DRAWEE_CUST_ROLE_ID
2535 ,SHIP_CUST_ROLE_ID
2536 ,SOLD_CUST_ROLE_ID
2537 ,BILL_CUSTOMER_ID
2538 ,DRAWEE_CUSTOMER_ID
2539 ,PAYING_CUSTOMER_ID
2540 ,SOLD_CUSTOMER_ID
2541 ,SHIP_CUSTOMER_ID
2542 ,REMIT_ADDRESS_ID
2543 ,RECEIPT_BATCH_ID
2544 ,RECEIVABLE_APPLICATION_ID
2545 ,CUSTOMER_BANK_BRANCH_ID
2546 ,ISSUER_BANK_BRANCH_ID
2547 ,BATCH_SOURCE_ID
2548 ,BATCH_ID
2549 ,TERM_ID
2550 ,SELECT_FLAG
2551 ,LEVEL_FLAG
2552 ,FROM_TO_FLAG
2553 ,paired_ccid
2554 --{BUG#4356088
2555 ,event_type_code
2556 ,event_class_code
2557 ,entity_code
2558 ,MFAR_ADDITIONAL_ENTRY
2559 )
2560 SELECT /*+LEADING(gt) USE_NL(gt,trx)*/
2561 gt.event_id, --EVENT_ID
2562 '', --SOURCE_ID
2563 '', --SOURCE_TABLE
2564 '', --LINE_ID
2565 '', --TAX_CODE_ID
2566 '', --LOCATION_SEGMENT_ID
2567 sob.currency_code, -- BASE_CURRENCY_CODE
2568 trx.exchange_rate_type, -- EXCHANGE_RATE_TYPE
2569 trx.exchange_rate, -- EXCHANGE_RATE
2570 trx.exchange_date, -- EXCHANGE_DATE
2571 '', --ACCTD_AMOUNT
2572 '', --TAXABLE_ACCTD_AMOUNT
2573 trx.org_id, -- ORG_ID
2574 trx.customer_trx_id, --HEADER_TABLE_ID
2575 'TH', --POSTING_ENTITY
2576 '', -- CASH_RECEIPT_ID
2577 trx.customer_trx_id, -- CUSTOMER_TRX_ID
2578 '', --CUSTOMER_TRX_LINE_ID
2579 '', --CUST_TRX_LINE_GL_DIST_ID
2580 '', --CUST_TRX_LINE_SALESREP_ID
2581 '', --INVENTORY_ITEM_ID
2582 '', --SALES_TAX_ID
2583 '', --SO_ORGANIZATION_ID
2584 '', --TAX_EXEMPTION_ID
2585 '', --UOM_CODE
2586 '', --WAREHOUSE_ID
2587 trx.agreement_id, -- AGREEMENT_ID
2588 trx.customer_bank_account_id, -- CUSTOMER_BANK_ACCT_ID
2589 trx.drawee_bank_account_id, -- DRAWEE_BANK_ACCOUNT_ID
2590 '', -- DISTRIBUTION_SET_ID
2591 '', -- PAYMENT_SCHEDULE_ID
2592 trx.receipt_method_id, -- RECEIPT_METHOD_ID
2593 trx.remit_bank_acct_use_id,-- REMITTANCE_BANK_ACCT_ID
2594 '', -- RECEIVABLES_TRX_ID
2595 '', -- ED_ADJ_RECEIVABLES_TRX_ID
2596 '', -- UNED_RECEIVABLES_TRX_ID
2597 trx.set_of_books_id, -- SET_OF_BOOKS_ID
2598 trx.primary_salesrep_id, -- SALESREP_ID
2599 trx.bill_to_site_use_id, -- BILL_SITE_USE_ID
2600 trx.drawee_site_use_id, -- DRAWEE_SITE_USE_ID
2601 trx.paying_site_use_id, -- PAYING_SITE_USE_ID
2602 trx.sold_to_site_use_id, -- SOLD_SITE_USE_ID
2603 trx.ship_to_site_use_id, -- SHIP_SITE_USE_ID
2604 '', -- RECEIPT_CUSTOMER_SITE_USE_ID
2605 trx.bill_to_contact_id, -- BILL_CUST_ROLE_ID
2606 trx.drawee_contact_id, -- DRAWEE_CUST_ROLE_ID
2607 trx.ship_to_contact_id, -- SHIP_CUST_ROLE_ID
2608 trx.sold_to_contact_id, -- SOLD_CUST_ROLE_ID
2609 trx.bill_to_customer_id, -- BILL_CUSTOMER_ID
2610 trx.drawee_id, -- DRAWEE_CUSTOMER_ID
2611 trx.paying_customer_id, -- PAYING_CUSTOMER_ID
2612 trx.sold_to_customer_id, -- SOLD_CUSTOMER_ID
2613 trx.ship_to_customer_id, -- SHIP_CUSTOMER_ID
2614 trx.remit_to_address_id, -- REMIT_ADDRESS_ID
2615 '', -- RECEIPT_BATCH_ID
2616 '', -- RECEIVABLE_APPLICATION_ID
2617 '', -- CUSTOMER_BANK_BRANCH_ID
2618 '', -- ISSUER_BANK_BRANCH_ID
2619 trx.batch_source_id, -- BATCH_SOURCE_ID
2620 trx.batch_id, -- BATCH_ID
2621 trx.term_id, -- TERM_ID
2622 'Y', -- SELECT_FLAG
2623 'H', -- LEVEL_FLAG
2624 '', -- FROM_TO_FLAG
2625 '' --BUG#5204032 ard.code_combination_id -- paired_ccid
2626 --{BUG#4356088
2627 ,gt.event_type_code
2628 ,gt.event_class_code
2629 ,gt.entity_code
2630 ,'N' --MFAR_ADDITIONAL_ENTRY
2631 --}
2632 FROM xla_events_gt gt,
2633 ra_customer_trx_all trx,
2634 gl_sets_of_books sob
2635 WHERE gt.event_type_code IN ('BILL_CREATE' ,'BILL_UPDATE' ,'BILL_REVERSE')
2636 AND gt.application_id = p_application_id
2637 AND gt.source_id_int_1 = trx.customer_trx_id
2638 AND trx.set_of_books_id = sob.set_of_books_id;
2639
2640 -- Load_header_data_th_h;
2641 local_log(procedure_name => 'Load_header_data_th',
2642 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.Load_header_data_th()-');
2643 EXCEPTION
2644 -- WHEN NO_DATA_FOUND THEN NULL;
2645 WHEN OTHERS THEN
2646 local_log(procedure_name => 'Load_header_data_th',
2647 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_header_data_th'||
2648 arp_global.CRLF ||'Error :'|| SQLERRM);
2649 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
2650 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
2651 'Procedure :arp_xla_extract_main_pkg.load_header_data_th'|| arp_global.CRLF||
2652 'Error :'||SQLERRM);
2653 FND_MSG_PUB.ADD;
2654 RAISE;
2655 END Load_header_data_th;
2656
2657
2658 -----------------------------------
2659 -- Line data loading procedures --
2660 -----------------------------------
2661
2662 /*-----------------------------------------------------------------+
2663 | Procedure Name : load_line_data_ctlgd |
2664 | Description : Extract line data for transaction events |
2665 +-----------------------------------------------------------------+
2666 | History : |
2667 | 23-FEB-2004 Herve Yu Created due to bug#3419926 |
2668 +-----------------------------------------------------------------*/
2669 PROCEDURE load_line_data_ctlgd(p_application_id IN NUMBER DEFAULT 222)
2670 IS
2671 BEGIN
2672 local_log(procedure_name => 'load_line_data_ctlgd',
2673 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_ctlgd()+');
2674 -- Insert line level data in Line GT with
2675 -- level_flag = L
2676
2677 INSERT INTO ar_xla_lines_extract (
2678 EVENT_ID
2679 ,LINE_NUMBER
2680 ,LANGUAGE
2681 ,LEDGER_ID
2682 ,SOURCE_ID
2683 ,SOURCE_TABLE
2684 ,LINE_ID
2685 ,TAX_CODE_ID
2686 ,LOCATION_SEGMENT_ID
2687 ,BASE_CURRENCY_CODE
2688 ,EXCHANGE_RATE_TYPE
2689 ,EXCHANGE_RATE
2690 ,EXCHANGE_DATE
2691 ,ACCTD_AMOUNT
2692 ,TAXABLE_ACCTD_AMOUNT
2693 ,ORG_ID
2694 ,HEADER_TABLE_ID
2695 ,POSTING_ENTITY
2696 ,CASH_RECEIPT_ID
2697 ,CUSTOMER_TRX_ID
2698 ,CUSTOMER_TRX_LINE_ID
2699 ,CUST_TRX_LINE_GL_DIST_ID
2700 ,CUST_TRX_LINE_SALESREP_ID
2701 ,INVENTORY_ITEM_ID
2702 ,SALES_TAX_ID
2703 ,SO_ORGANIZATION_ID
2704 ,TAX_EXEMPTION_ID
2705 ,UOM_CODE
2706 ,WAREHOUSE_ID
2707 ,AGREEMENT_ID
2708 ,CUSTOMER_BANK_ACCT_ID
2709 ,DRAWEE_BANK_ACCOUNT_ID
2710 ,REMITTANCE_BANK_ACCT_ID
2711 ,DISTRIBUTION_SET_ID
2712 ,PAYMENT_SCHEDULE_ID
2713 ,RECEIPT_METHOD_ID
2714 ,RECEIVABLES_TRX_ID
2715 ,ED_ADJ_RECEIVABLES_TRX_ID
2716 ,UNED_RECEIVABLES_TRX_ID
2717 ,SET_OF_BOOKS_ID
2718 ,SALESREP_ID
2719 ,BILL_SITE_USE_ID
2720 ,DRAWEE_SITE_USE_ID
2721 ,PAYING_SITE_USE_ID
2722 ,SOLD_SITE_USE_ID
2723 ,SHIP_SITE_USE_ID
2724 ,RECEIPT_CUSTOMER_SITE_USE_ID
2725 ,BILL_CUST_ROLE_ID
2726 ,DRAWEE_CUST_ROLE_ID
2727 ,SHIP_CUST_ROLE_ID
2728 ,SOLD_CUST_ROLE_ID
2729 ,BILL_CUSTOMER_ID
2730 ,DRAWEE_CUSTOMER_ID
2731 ,PAYING_CUSTOMER_ID
2732 ,SOLD_CUSTOMER_ID
2733 ,SHIP_CUSTOMER_ID
2734 ,REMIT_ADDRESS_ID
2735 ,RECEIPT_BATCH_ID
2736 ,RECEIVABLE_APPLICATION_ID
2737 ,CUSTOMER_BANK_BRANCH_ID
2738 ,ISSUER_BANK_BRANCH_ID
2739 ,BATCH_SOURCE_ID
2740 ,BATCH_ID
2741 ,TERM_ID
2742 ,SELECT_FLAG
2743 ,LEVEL_FLAG
2744 ,FROM_TO_FLAG
2745 ,PAIRED_CCID
2746 ,PAIRE_DIST_ID
2747 --{BUG#4356088
2748 ,event_type_code
2749 ,event_class_code
2750 ,entity_code
2751 --BUG#4645389
2752 ,tax_line_id
2753 --}
2754 ,MFAR_ADDITIONAL_ENTRY
2755 )
2756 SELECT /*+LEADING(gt) USE_NL(gt,gld)*/
2757 gt.event_id, -- EVENT_ID
2758 -1 * gld.cust_trx_line_gl_dist_id, --LINE_NUMBER
2759 -- As in the case application are extracted along with the
2760 -- transaction distributions the line number should be
2761 -- unique without a event. For lines extracted from application
2762 -- the line number is set by using the ard.line_id
2763 -- and transaction by using the ctlgd.cust_trx_line_gl_dist_id
2764 -- to avoid the same id to be extracted with in the same event
2765 -- ids coming from ctlgd will be negative
2766 '', --LANGUAGE
2767 sob.set_of_books_id, --LEDGER_ID
2768 '', -- SOURCE_ID
2769 '', -- SOURCE_TABLE
2770 '', -- LINE_ID
2771 li.vat_tax_id, -- TAX_CODE_ID
2772 li.location_segment_id, -- LOCATION_SEGMENT_ID
2773 sob.currency_code, -- BASE_CURRENCY
2774 hd.exchange_rate_type, -- EXCHANGE_RATE_TYPE
2775 hd.exchange_rate, -- EXCHANGE_RATE
2776 DECODE(hd.previous_customer_trx_id, NULL, hd.exchange_date, (select trx_date from ra_customer_trx_all where customer_trx_id = hd.previous_customer_trx_id) ), -- EXCHANGE_DATE
2777 gld.acctd_amount, -- ACCTD_AMOUNT
2778 '', -- TAXABLE_ACCTD_AMOUNT
2779 gld.org_id, -- ORG_ID
2780 gld.customer_trx_id, -- HEADER_ID
2781 'CTLGD', -- POSTING_ENTITY
2782 '', -- CASH_RECEIPT_ID
2783 hd.customer_trx_id, -- CUSTOMER_TRX_ID
2784 li.customer_trx_line_id, -- CUSTOMER_TRX_LINE_ID
2785 gld.cust_trx_line_gl_dist_id, -- CUST_TRX_LINE_GL_DIST_ID
2786 gld.cust_trx_line_salesrep_id, -- CUST_TRX_LINE_SALESREP_ID
2787 li.inventory_item_id, -- INVENTORY_ITEM_ID
2788 li.sales_tax_id, -- SALES_TAX_ID
2789 osp.master_organization_id, -- SO_ORGANIZATION_ID
2790 li.tax_exemption_id, -- TAX_EXEMPTION_ID
2791 li.uom_code, -- UOM_CODE
2792 li.warehouse_id, -- WAREHOUSE_ID
2793 '', -- AGREEMENT_ID
2794 '', -- CUSTOMER_BANK_ACCT_ID
2795 '', -- DRAWEE_BANK_ACCOUNT_ID
2796 '', -- REMITTANCE_BANK_ACCT_ID
2797 '', -- DISTRIBUTION_SET_ID
2798 '', -- PAYMENT_SCHEDULE_ID
2799 '', -- RECEIPT_METHOD_ID
2800 '', -- RECEIVABLES_TRX_ID
2801 '', -- ED_ADJ_RECEIVABLES_TRX_ID
2802 '', -- UNED_RECEIVABLES_TRX_ID
2803 '', -- SET_OF_BOOKS_ID
2804 '', -- SALESREP_ID
2805 '', -- BILL_SITE_USE_ID
2806 '', -- DRAWEE_SITE_USE_ID
2807 '', -- PAYING_SITE_USE_ID
2808 '', -- SOLD_SITE_USE_ID
2809 '', -- SHIP_SITE_USE_ID
2810 '', -- RECEIPT_CUSTOMER_SITE_USE_ID
2811 '', -- BILL_CUST_ROLE_ID
2812 '', -- DRAWEE_CUST_ROLE_ID
2813 '', -- SHIP_CUST_ROLE_ID
2814 '', -- SOLD_CUST_ROLE_ID
2815 '', -- BILL_CUSTOMER_ID
2816 '', -- DRAWEE_CUSTOMER_ID
2817 '', -- PAYING_CUSTOMER_ID
2818 '', -- SOLD_CUSTOMER_ID
2819 '', -- SHIP_CUSTOMER_ID
2820 '', -- REMIT_ADDRESS_ID
2821 '', -- RECEIPT_BATCH_ID
2822 '', -- RECEIVABLE_APPLICATION_ID
2823 '', -- CUSTOMER_BANK_BRANCH_ID
2824 '', -- ISSUER_BANK_BRANCH_ID
2825 '', -- BATCH_SOURCE_ID
2826 '', -- BATCH_ID
2827 '', -- TERM_ID
2828 'N', -- SELECT_FLAG -- This flag set to Y is probably ok
2829 -- but as it is only used for
2830 -- single document with application
2831 -- driving by ctlgd, no shared views
2832 -- should access to it
2833 -- if we set this flag to Y still
2834 -- it should not be a problem as the
2835 -- line number will filter it out for
2836 -- to be a source for a specific line
2837 'L', -- LEVEL_FLAG
2838 '' , -- FROM_TO_FLAG
2839 NULL, -- PAIRED_CCID
2840 NULL -- PAIRE_DIST_ID
2841 --{BUG#4356088
2842 ,gt.event_type_code
2843 ,gt.event_class_code
2844 ,gt.entity_code
2845 --BUG#4645389
2846 ,li.tax_line_id --tax_line_id
2847 ,'N' --MFAR_ADDITIONAL_ENTRY
2848 --}
2849 FROM xla_events_gt gt,
2850 ra_cust_trx_line_gl_dist_all gld,
2851 ra_customer_trx_lines_all li,
2852 ra_customer_trx_all hd,
2853 gl_sets_of_books sob,
2854 oe_system_parameters_all osp
2855 WHERE gt.event_type_code IN ('INV_CREATE' , 'INV_UPDATE' ,
2856 'CM_CREATE' , 'CM_UPDATE' ,
2857 'DM_CREATE' , 'DM_UPDATE' ,
2858 'DEP_CREATE' , 'DEP_UPDATE' ,
2859 'GUAR_CREATE' , 'GUAR_UPDATE' ,
2860 'CB_CREATE' ) --BUG#3419926
2861 AND gt.application_id = p_application_id
2862 AND gld.event_id = gt.event_id
2863 AND hd.customer_trx_id = gt.source_id_int_1 --BUG#5517976
2864 AND gld.customer_trx_line_id = li.customer_trx_line_id(+)
2865 AND gld.customer_trx_id = hd.customer_trx_id
2866 AND gld.set_of_books_id = sob.set_of_books_id
2867 AND gld.org_id = osp.org_id(+)
2868 AND gld.account_set_flag = 'N';
2869 local_log(procedure_name => 'load_line_data_ctlgd',
2870 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_ctlgd()-');
2871 EXCEPTION
2872 -- WHEN NO_DATA_FOUND THEN NULL;
2873 WHEN OTHERS THEN
2874 local_log(procedure_name => 'load_line_data_ctlgd',
2875 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_ctlgd '||
2876 arp_global.CRLF ||'Error :'|| SQLERRM);
2877 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
2878 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
2879 'Procedure :arp_xla_extract_main_pkg.load_line_data_ctlgd'|| arp_global.CRLF||
2880 'Error :'||SQLERRM);
2881 FND_MSG_PUB.ADD;
2882 RAISE;
2883 END load_line_data_ctlgd;
2884
2885 ---------------------------------------------------------------------
2886
2887 /*-----------------------------------------------------------------+
2888 | Procedure Name : load_line_data_adj |
2889 | Description : Extract line data for adjustment events |
2890 +-----------------------------------------------------------------+
2891 | History : |
2892 | 23-FEB-2004 Herve Yu Created due to bug#3419926 |
2893 +-----------------------------------------------------------------*/
2894 PROCEDURE load_line_data_adj(p_application_id IN NUMBER DEFAULT 222)
2895 IS
2896 BEGIN
2897 local_log(procedure_name => 'load_line_data_adj',
2898 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_adj()+');
2899
2900 -- Insert line level data in Line GT with
2901 -- selected_flag = N
2902 -- level_flag = L
2903 INSERT INTO ar_xla_lines_extract (
2904 EVENT_ID
2905 ,LINE_NUMBER
2906 ,LANGUAGE
2907 ,LEDGER_ID
2908 ,SOURCE_ID
2909 ,SOURCE_TABLE
2910 ,LINE_ID
2911 ,TAX_CODE_ID
2912 ,LOCATION_SEGMENT_ID
2913 ,BASE_CURRENCY_CODE
2914 ,EXCHANGE_RATE_TYPE
2915 ,EXCHANGE_RATE
2916 ,EXCHANGE_DATE
2917 ,ACCTD_AMOUNT
2918 ,TAXABLE_ACCTD_AMOUNT
2919 ,ORG_ID
2920 ,HEADER_TABLE_ID
2921 ,POSTING_ENTITY
2922 ,CASH_RECEIPT_ID
2923 ,CUSTOMER_TRX_ID
2924 ,CUSTOMER_TRX_LINE_ID
2925 ,CUST_TRX_LINE_GL_DIST_ID
2926 ,CUST_TRX_LINE_SALESREP_ID
2927 ,INVENTORY_ITEM_ID
2928 ,SALES_TAX_ID
2929 ,SO_ORGANIZATION_ID
2930 ,TAX_EXEMPTION_ID
2931 ,UOM_CODE
2932 ,WAREHOUSE_ID
2933 ,AGREEMENT_ID
2934 ,CUSTOMER_BANK_ACCT_ID
2935 ,DRAWEE_BANK_ACCOUNT_ID
2936 ,REMITTANCE_BANK_ACCT_ID
2937 ,DISTRIBUTION_SET_ID
2938 ,PAYMENT_SCHEDULE_ID
2939 ,RECEIPT_METHOD_ID
2940 ,RECEIVABLES_TRX_ID
2941 ,ED_ADJ_RECEIVABLES_TRX_ID
2942 ,UNED_RECEIVABLES_TRX_ID
2943 ,SET_OF_BOOKS_ID
2944 ,SALESREP_ID
2945 ,BILL_SITE_USE_ID
2946 ,DRAWEE_SITE_USE_ID
2947 ,PAYING_SITE_USE_ID
2948 ,SOLD_SITE_USE_ID
2949 ,SHIP_SITE_USE_ID
2950 ,RECEIPT_CUSTOMER_SITE_USE_ID
2951 ,BILL_CUST_ROLE_ID
2952 ,DRAWEE_CUST_ROLE_ID
2953 ,SHIP_CUST_ROLE_ID
2954 ,SOLD_CUST_ROLE_ID
2955 ,BILL_CUSTOMER_ID
2956 ,DRAWEE_CUSTOMER_ID
2957 ,PAYING_CUSTOMER_ID
2958 ,SOLD_CUSTOMER_ID
2959 ,SHIP_CUSTOMER_ID
2960 ,REMIT_ADDRESS_ID
2961 ,RECEIPT_BATCH_ID
2962 ,RECEIVABLE_APPLICATION_ID
2963 ,CUSTOMER_BANK_BRANCH_ID
2964 ,ISSUER_BANK_BRANCH_ID
2965 ,BATCH_SOURCE_ID
2966 ,BATCH_ID
2967 ,TERM_ID
2968 ,SELECT_FLAG
2969 ,LEVEL_FLAG
2970 ,FROM_TO_FLAG
2971 ,AMOUNT
2972 ,PAIRED_CCID
2973 --{BUG#4356088
2974 ,event_type_code
2975 ,event_class_code
2976 ,entity_code
2977 --BUG#4645389
2978 ,tax_line_id
2979 ,MFAR_ADDITIONAL_ENTRY
2980 ,ADDITIONAL_CHAR2
2981 --}
2982 )
2983 SELECT /*+LEADING(gt) USE_NL(gt,adj)*/
2984 gt.event_id, -- EVENT_ID
2985 dist.line_id, -- LINE_NUMBER
2986 '', -- LANGUAGE
2987 sob.set_of_books_id, -- LEDGER_ID
2988 dist.source_id, -- SOURCE_ID
2989 dist.source_table, -- SOURCE_TABLE
2990 dist.line_id, -- LINE_ID
2991 dist.tax_code_id, -- TAX_CODE_ID
2992 dist.location_segment_id, -- LOCATION_SEGMENT_ID
2993 sob.currency_code, -- BASE_CURRENCY
2994 trxt.exchange_rate_type, -- EXCHANGE_RATE_TYPE
2995 trxt.exchange_rate, -- EXCHANGE_RATE
2996 trxt.exchange_date, -- EXCHANGE_DATE
2997 NVL(dist.acctd_amount_cr,0)-
2998 NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
2999 NVL(dist.taxable_accounted_cr,0) -
3000 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
3001 adj.org_id, -- ORG_ID
3002 adj.adjustment_id, -- HEADER_ID
3003 'ADJ', -- POSTING_ENTITY
3004 adj.associated_cash_receipt_id, -- CASH_RECEIPT_ID
3005 adj.customer_trx_id, -- CUSTOMER_TRX_ID
3006 tlt.customer_trx_line_id, -- CUSTOMER_TRX_LINE_ID
3007 gldt.cust_trx_line_gl_dist_id, -- CUST_TRX_LINE_GL_DIST_ID
3008 gldt.cust_trx_line_salesrep_id, -- CUST_TRX_LINE_SALESREP_ID
3009 tlt.inventory_item_id, -- INVENTORY_ITEM_ID
3010 tlt.sales_tax_id, -- SALES_TAX_ID
3011 osp.master_organization_id, -- SO_ORGANIZATION_ID
3012 tlt.tax_exemption_id, -- TAX_EXEMPTION_ID
3013 tlt.uom_code, -- UOM_CODE
3014 tlt.warehouse_id, -- WAREHOUSE_ID
3015 trxt.agreement_id , -- AGREEMENT_ID
3016 '', -- CUSTOMER_BANK_ACCT_ID
3017 '', -- DRAWEE_BANK_ACCOUNT_ID
3018 '', -- REMITTANCE_BANK_ACCT_ID
3019 '', -- DISTRIBUTION_SET_ID
3020 '', -- PAYMENT_SCHEDULE_ID
3021 '', -- RECEIPT_METHOD_ID
3022 '', -- RECEIVABLES_TRX_ID
3023 '', -- ED_ADJ_RECEIVABLES_TRX_ID
3024 '', -- UNED_RECEIVABLES_TRX_ID
3025 '', -- SET_OF_BOOKS_ID
3026 '', -- SALESREP_ID
3027 '', -- BILL_SITE_USE_ID
3028 '', -- DRAWEE_SITE_USE_ID
3029 '', -- PAYING_SITE_USE_ID
3030 '', -- SOLD_SITE_USE_ID
3031 '', -- SHIP_SITE_USE_ID
3032 '', -- RECEIPT_CUSTOMER_SITE_USE_ID
3033 '', -- BILL_CUST_ROLE_ID
3034 '', -- DRAWEE_CUST_ROLE_ID
3035 '', -- SHIP_CUST_ROLE_ID
3036 '', -- SOLD_CUST_ROLE_ID
3037 '', -- BILL_CUSTOMER_ID
3038 '', -- DRAWEE_CUSTOMER_ID
3039 '', -- PAYING_CUSTOMER_ID
3040 '', -- SOLD_CUSTOMER_ID
3041 '', -- SHIP_CUSTOMER_ID
3042 '', -- REMIT_ADDRESS_ID
3043 '', -- RECEIPT_BATCH_ID
3044 '', -- RECEIVABLE_APPLICATION_ID
3045 '', -- CUSTOMER_BANK_BRANCH_ID
3046 '', -- ISSUER_BANK_BRANCH_ID
3047 '', -- BATCH_SOURCE_ID
3048 '', -- BATCH_ID
3049 '', -- TERM_ID
3050 'N', -- SELECT_FLAG
3051 'L', -- LEVEL_FLAG
3052 '', -- FROM_TO_FLAG
3053 NVL(dist.amount_cr,0)
3054 -NVL(dist.amount_dr,0), -- AMOUNT
3055 NULL -- PAIRED_CCID
3056 --{BUG#4356088
3057 ,gt.event_type_code
3058 ,gt.event_class_code
3059 ,gt.entity_code
3060 --BUG#4645389
3061 ,tlt.tax_line_id --tax_line_id
3062 ,'N' --MFAR_ADDITIONAL_ENTRY
3063 ,decode(trxt.upgrade_method,'R12_11ICASH','N','')
3064 --}
3065 FROM xla_events_gt gt,
3066 ar_distributions_all dist,
3067 ar_adjustments_all adj,
3068 gl_sets_of_books sob,
3069 ra_customer_trx_all trxt,
3070 ra_customer_trx_lines_all tlt,
3071 ra_cust_trx_line_gl_dist_all gldt,
3072 oe_system_parameters_all osp
3073 WHERE gt.event_type_code = 'ADJ_CREATE'
3074 AND gt.application_id = p_application_id
3075 AND adj.event_id = gt.event_id
3076 AND adj.customer_trx_id = trxt.customer_trx_id
3077 AND dist.source_table = 'ADJ'
3078 AND dist.source_id = adj.adjustment_id
3079 --{Pass adj distribution for the REC
3080 -- AND dist.source_type <> 'REC'
3081 --}
3082 -- Need to add PSA upgrade impact
3083 AND DECODE(adj.upgrade_method,
3084 '11IMFAR',DECODE(dist.source_table_secondary,'UPMFAJMIAR','Y','N'),
3085 'Y') = 'Y'
3086 AND dist.ref_customer_trx_line_id = tlt.customer_trx_line_id(+)
3087 AND dist.ref_cust_trx_line_gl_dist_id = gldt.cust_trx_line_gl_dist_id(+)
3088 AND adj.set_of_books_id = sob.set_of_books_id
3089 AND adj.org_id = osp.org_id(+);
3090 local_log(procedure_name => 'load_line_data_adj',
3091 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_adj()-');
3092 EXCEPTION
3093 -- WHEN NO_DATA_FOUND THEN NULL;
3094 WHEN OTHERS THEN
3095 local_log(procedure_name => 'load_line_data_adj',
3096 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_adj '||
3097 arp_global.CRLF ||'Error :'|| SQLERRM);
3098 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
3099 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
3100 'Procedure :arp_xla_extract_main_pkg.load_line_data_adj'|| arp_global.CRLF||
3101 'Error :'||SQLERRM);
3102 FND_MSG_PUB.ADD;
3103 RAISE;
3104 END load_line_data_adj;
3105
3106 --------------------------------------------------------
3107
3108
3109 /*-----------------------------------------------------------------+
3110 | Procedure Name : load_line_data_app_to_trx |
3111 | Description : Extract the to application line attached to |
3112 | the applied to transaction event |
3113 +-----------------------------------------------------------------+
3114 | History : |
3115 | 23-FEB-2004 Herve Yu Created due to bug#3419926 |
3116 +-----------------------------------------------------------------*/
3117 PROCEDURE load_line_data_app_to_trx(p_application_id IN NUMBER DEFAULT 222)
3118 IS
3119 BEGIN
3120 local_log(procedure_name => 'load_line_data_app_to_trx',
3121 p_msg_text => 'arp_xla_extract_main_pkg.load_line_data_app_to_trx ()+');
3122 -- Insert line level data in Line GT with
3123 -- selected_flag = Y
3124 -- level_flag = L
3125 -- from_to_flag = T
3126 INSERT INTO ar_xla_lines_extract (
3127 EVENT_ID
3128 ,LINE_NUMBER
3129 ,LANGUAGE
3130 ,LEDGER_ID
3131 ,SOURCE_ID
3132 ,SOURCE_TABLE
3133 ,LINE_ID
3134 ,TAX_CODE_ID
3135 ,LOCATION_SEGMENT_ID
3136 ,BASE_CURRENCY_CODE
3137 ,EXCHANGE_RATE_TYPE
3138 ,EXCHANGE_RATE
3139 ,EXCHANGE_DATE
3140 ,ACCTD_AMOUNT
3141 ,TAXABLE_ACCTD_AMOUNT
3142 ,ORG_ID
3143 ,HEADER_TABLE_ID
3144 ,POSTING_ENTITY
3145 ,CASH_RECEIPT_ID
3146 ,CUSTOMER_TRX_ID
3147 ,CUSTOMER_TRX_LINE_ID
3148 ,CUST_TRX_LINE_GL_DIST_ID
3149 ,CUST_TRX_LINE_SALESREP_ID
3150 ,INVENTORY_ITEM_ID
3151 ,SALES_TAX_ID
3152 ,SO_ORGANIZATION_ID
3153 ,TAX_EXEMPTION_ID
3154 ,UOM_CODE
3155 ,WAREHOUSE_ID
3156 ,AGREEMENT_ID
3157 ,CUSTOMER_BANK_ACCT_ID
3158 ,DRAWEE_BANK_ACCOUNT_ID
3159 ,REMITTANCE_BANK_ACCT_ID
3160 ,DISTRIBUTION_SET_ID
3161 ,PAYMENT_SCHEDULE_ID
3162 ,RECEIPT_METHOD_ID
3163 ,RECEIVABLES_TRX_ID
3164 ,ED_ADJ_RECEIVABLES_TRX_ID
3165 ,UNED_RECEIVABLES_TRX_ID
3166 ,SET_OF_BOOKS_ID
3167 ,SALESREP_ID
3168 ,BILL_SITE_USE_ID
3169 ,DRAWEE_SITE_USE_ID
3170 ,PAYING_SITE_USE_ID
3171 ,SOLD_SITE_USE_ID
3172 ,SHIP_SITE_USE_ID
3173 ,RECEIPT_CUSTOMER_SITE_USE_ID
3174 ,BILL_CUST_ROLE_ID
3175 ,DRAWEE_CUST_ROLE_ID
3176 ,SHIP_CUST_ROLE_ID
3177 ,SOLD_CUST_ROLE_ID
3178 ,BILL_CUSTOMER_ID
3179 ,DRAWEE_CUSTOMER_ID
3180 ,PAYING_CUSTOMER_ID
3181 ,SOLD_CUSTOMER_ID
3182 ,SHIP_CUSTOMER_ID
3183 ,REMIT_ADDRESS_ID
3184 ,RECEIPT_BATCH_ID
3185 ,RECEIVABLE_APPLICATION_ID
3186 ,CUSTOMER_BANK_BRANCH_ID
3187 ,ISSUER_BANK_BRANCH_ID
3188 ,BATCH_SOURCE_ID
3189 ,BATCH_ID
3190 ,TERM_ID
3191 ,SELECT_FLAG
3192 ,LEVEL_FLAG
3193 ,FROM_TO_FLAG
3194 ,FROM_AMOUNT
3195 ,AMOUNT
3196 ,FROM_ACCTD_AMOUNT
3197 --{BUG#4356088
3198 ,event_type_code
3199 ,event_class_code
3200 ,entity_code
3201 --BUG#4645389
3202 ,tax_line_id
3203 --BUG#5366837
3204 ,additional_char1
3205 ,MFAR_ADDITIONAL_ENTRY
3206 ,SOURCE_TYPE
3207 ,CM_APP_TO_TRX_LINE_ID
3208 ,BAL_SEG_VALUE
3209 ,ADDITIONAL_CHAR2
3210 )
3211 SELECT /*+LEADING(gt) cardinality(gt,1) USE_NL(gt, app)*/
3212 gt.event_id, -- EVENT_ID
3213 dist.line_id, -- LINE_NUMBER
3214 '', -- LANGUAGE
3215 sob.set_of_books_id, -- LEDGER_ID
3216 dist.source_id, -- SOURCE_ID
3217 dist.source_table, -- SOURCE_TABLE
3218 dist.line_id, -- LINE_ID
3219 dist.tax_code_id, -- TAX_CODE_ID
3220 dist.location_segment_id, -- LOCATION_SEGMENT_ID
3221 sob.currency_code, -- BASE_CURRENCY
3222 trxt.exchange_rate_type, -- EXCHANGE_RATE_TYPE
3223 trxt.exchange_rate, -- EXCHANGE_RATE
3224 -- bug 7535858 Default Exch Date as Trx Date for Base Currency Line for ALC Calculation
3225 decode(trxt.invoice_currency_code,sob.currency_code,
3226 trxt.trx_date, trxt.exchange_date), -- EXCHANGE_DATE
3227 -- trxt.exchange_date, -- EXCHANGE_DATE
3228 NVL(dist.acctd_amount_cr,0) -
3229 NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
3230 NVL(dist.taxable_accounted_cr,0) -
3231 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
3232 app.org_id, -- ORG_ID
3233 app.receivable_application_id, -- HEADER_TABLE_ID
3234 'APP', -- POSTING_ENTITY
3235 NULL, -- CASH_RECEIPT_ID
3236 trxt.customer_trx_id, -- CUSTOMER_TRX_ID
3237 tlt.customer_trx_line_id, -- CUSTOMER_TRX_LINE_ID
3238 gldt.cust_trx_line_gl_dist_id, -- CUST_TRX_LINE_GL_DIST_ID
3239 gldt.cust_trx_line_salesrep_id, -- CUST_TRX_LINE_SALESREP_ID
3240 tlt.inventory_item_id, -- INVENTORY_ITEM_ID
3241 tlt.sales_tax_id, -- SALES_TAX_ID
3242 osp.master_organization_id, -- SO_ORGANIZATION_ID
3243 tlt.tax_exemption_id, -- TAX_EXEMPTION_ID
3244 tlt.uom_code, -- UOM_CODE
3245 tlt.warehouse_id, -- WAREHOUSE_ID
3246 trxt.agreement_id, -- AGREEMENT_ID
3247 trxt.customer_bank_account_id, -- CUSTOMER_BANK_ACCT_ID
3248 trxt.drawee_bank_account_id, -- DRAWEE_BANK_ACCOUNT_ID
3249 trxt.remit_bank_acct_use_id, -- REMITTANCE_BANK_ACCT_ID
3250 NULL, -- DISTRIBUTION_SET_ID
3251 psch.payment_schedule_id, -- PAYMENT_SCHEDULE_ID
3252 trxt.receipt_method_id, -- RECEIPT_METHOD_ID
3253 NULL, -- RECEIVABLES_TRX_ID
3254 arp_xla_extract_main_pkg.ed_uned_trx('EDISC',app.org_id), -- ED_ADJ_RECEIVABLES_TRX_ID
3255 arp_xla_extract_main_pkg.ed_uned_trx('UNEDISC',app.org_id), -- UNED_RECEIVABLES_TRX_ID
3256 trxt.set_of_books_id, -- SET_OF_BOOKS_ID
3257 trxt.primary_salesrep_id, -- SALESREP_ID
3258 trxt.bill_to_site_use_id, -- BILL_SITE_USE_ID
3259 trxt.drawee_site_use_id, -- DRAWEE_SITE_USE_ID
3260 trxt.paying_site_use_id, -- PAYING_SITE_USE_ID
3261 trxt.sold_to_site_use_id, -- SOLD_SITE_USE_ID
3262 trxt.ship_to_site_use_id, -- SHIP_SITE_USE_ID
3263 NULL, -- RECEIPT_CUSTOMER_SITE_USE_ID
3264 trxt.bill_to_contact_id, -- BILL_CUST_ROLE_ID
3265 trxt.drawee_contact_id, -- DRAWEE_CUST_ROLE_ID
3266 trxt.ship_to_contact_id, -- SHIP_CUST_ROLE_ID
3267 trxt.sold_to_contact_id, -- SOLD_CUST_ROLE_ID
3268 trxt.bill_to_customer_id, -- BILL_CUSTOMER_ID
3269 trxt.drawee_id, -- DRAWEE_CUSTOMER_ID
3270 trxt.paying_customer_id, -- PAYING_CUSTOMER_ID
3271 trxt.sold_to_customer_id, -- SOLD_CUSTOMER_ID
3272 trxt.ship_to_customer_id, -- SHIP_CUSTOMER_ID
3273 trxt.remit_to_address_id, -- REMIT_ADDRESS_ID
3274 NULL, -- RECEIPT_BATCH_ID
3275 NULL, -- RECEIVABLE_APPLICATION_ID
3276 NULL, -- CUSTOMER_BANK_BRANCH_ID
3277 NULL, -- ISSUER_BANK_BRANCH_ID
3278 trxt.batch_source_id, -- BATCH_SOURCE_ID
3279 trxt.batch_id, -- BATCH_ID
3280 trxt.term_id, -- TERM_ID
3281 'Y', -- SELECT_FLAG
3282 'L', -- LEVEL_FLAG
3283 'T', -- FROM_TO_FLAG
3284 -- NVL(dist.from_amount_cr,0)
3285 -- -NVL(dist.from_amount_dr,0), -- FROM_AMOUNT,
3286 CASE WHEN (app.upgrade_method IS NULL AND app.status ='APP') THEN
3287 CASE WHEN (dist.from_amount_dr IS NOT NULL OR dist.from_amount_cr IS NOT NULL) THEN
3288 NVL(dist.from_amount_cr,0)-NVL(dist.from_amount_dr,0)
3289 ELSE
3290 CASE WHEN (dist.source_type NOT IN ('REC','EDISC','UNEDISC')) THEN
3291 NULL
3292 ELSE
3293 CASE WHEN (app.earned_discount_taken IS NOT NULL AND
3294 app.earned_discount_taken = NVL(dist.amount_dr,0)-NVL(dist.amount_cr,0) AND
3295 app.acctd_earned_discount_taken = NVL(dist.acctd_amount_dr,0)-NVL(dist.acctd_amount_cr,0)
3296 AND dist.source_type = 'REC') THEN
3297 NULL
3298 ELSE
3299 CASE WHEN (trxt.invoice_currency_code = cr.currency_code) THEN
3300 NVL(dist.amount_cr,0)-NVL(dist.amount_dr,0)
3301 ELSE
3302 CASE WHEN (app.amount_applied <> 0 AND app.amount_applied_from <> 0) THEN
3303 NVL(app.amount_applied_from / app.amount_applied * dist.amount_cr,0)-
3304 NVL(app.amount_applied_from / app.amount_applied * dist.amount_dr,0)
3305 ELSE NULL END
3306 END
3307 END
3308 END
3309 END
3310 ELSE
3311 NVL(dist.from_amount_cr,0)
3312 -NVL(dist.from_amount_dr,0)
3313 END, -- FROM_AMOUNT
3314 NVL(dist.amount_cr,0) - NVL(dist.amount_dr,0), -- AMOUNT
3315 -- NVL(dist.from_acctd_amount_cr,0)
3316 -- -NVL(dist.from_acctd_amount_dr,0) -- FROM_ACCTD_AMOUNT
3317 CASE WHEN (app.upgrade_method IS NULL AND app.status ='APP') THEN
3318 CASE WHEN (dist.from_acctd_amount_dr IS NOT NULL OR dist.from_acctd_amount_cr IS NOT NULL) THEN
3319 NVL(dist.from_acctd_amount_cr,0)-NVL(dist.from_acctd_amount_dr,0)
3320 ELSE
3321 CASE WHEN (dist.source_type NOT IN ('REC','EDISC','UNEDISC')) THEN
3322 NULL
3323 ELSE
3324 CASE WHEN (app.earned_discount_taken IS NOT NULL AND
3325 app.earned_discount_taken = NVL(dist.amount_dr,0)-NVL(dist.amount_cr,0) AND
3326 app.acctd_earned_discount_taken = NVL(dist.acctd_amount_dr,0)-NVL(dist.acctd_amount_cr,0)
3327 AND dist.source_type = 'REC') THEN
3328 NULL
3329 ELSE
3330 CASE WHEN (trxt.invoice_currency_code = sob.currency_code AND
3331 cr.currency_code = sob.currency_code ) THEN
3332 NVL(dist.acctd_amount_cr,0)-NVL(dist.acctd_amount_dr,0)
3333 ELSE
3334 CASE WHEN (app.acctd_amount_applied_to <> 0 AND app.acctd_amount_applied_from <> 0) THEN
3335 NVL(app.acctd_amount_applied_from / app.acctd_amount_applied_to * dist.acctd_amount_cr,0)-
3336 NVL(app.acctd_amount_applied_from / app.acctd_amount_applied_to * dist.acctd_amount_dr,0)
3337 ELSE NULL END
3338 END
3339 END
3340 END
3341 END
3342 ELSE
3343 NVL(dist.from_acctd_amount_cr,0)
3344 -NVL(dist.from_acctd_amount_dr,0)
3345 END, -- FROM_ACCTD_AMOUNT
3346 --{BUG#4356088
3347 gt.event_type_code
3348 ,gt.event_class_code
3349 ,gt.entity_code
3350 --BUG#4645389
3351 ,tlt.tax_line_id --tax_line_id
3352 --BUG5366837
3353 ,app.upgrade_method
3354 ,'N' --MFAR_ADDITIONAL_ENTRY
3355 , NULL
3356 , to_number(NULL)
3357 , NULL
3358 ,decode(trxt.upgrade_method,'R12_11ICASH','N','')
3359 FROM xla_events_gt gt,
3360 ar_receivable_applications_all app,
3361 ar_distributions_all dist,
3362 gl_sets_of_books sob,
3363 oe_system_parameters_all osp,
3364 ra_customer_trx_all trxt,
3365 ra_customer_trx_lines_all tlt,
3366 ra_cust_trx_line_gl_dist_all gldt,
3367 ar_payment_schedules_all psch,
3368 ar_cash_receipts_all cr
3369 WHERE gt.event_type_code IN ( 'RECP_CREATE' ,'RECP_UPDATE' ,
3370 'RECP_RATE_ADJUST' ) -- Uptake XLA reversal, 'RECP_REVERSE')
3371 -- Exclude 'RECP_REVERSE' for no extract at line level is reuired for Reversal
3372 AND gt.application_id = p_application_id
3373 AND gt.event_id = app.event_id
3374 AND (app.upgrade_method IN ('R12_NLB','R12', 'R12_11IMFAR', 'R12_11ICASH','11I_R12_POST','R12_MERGE')
3375 OR (app.upgrade_method IS NULL AND app.status = 'APP') --11i Accrual
3376 --Need to add PSA upgrade impact
3377 OR (DECODE(app.upgrade_method,
3378 '11I_MFAR_UPG' ,DECODE(dist.source_table_secondary,'UPMFRAMIAR','Y','N'),
3379 'N') = 'Y'))
3380 AND app.set_of_books_id = sob.set_of_books_id
3381 AND app.org_id = osp.org_id(+)
3382 AND app.applied_customer_trx_id = trxt.customer_trx_id
3383 --5201086
3384 AND app.cash_receipt_id = cr.cash_receipt_id
3385 AND dist.source_id = app.receivable_application_id
3386 AND dist.source_table = 'RA'
3387 AND dist.ref_customer_trx_line_id = tlt.customer_trx_line_id(+)
3388 AND dist.ref_cust_trx_line_gl_dist_id = gldt.cust_trx_line_gl_dist_id(+)
3389 AND trxt.customer_trx_id = psch.customer_trx_id
3390 AND NVL(psch.terms_sequence_number,1) = 1
3391 --{Pass also the UNAPP UNID ... everything
3392 -- AND dist.source_type IN ('REC','EDISC','UNEDISC')
3393 --}
3394 --}
3395 -- AND dist.activity_bucket IS NOT NULL
3396 UNION ALL
3397 SELECT /*+LEADING(gt) cardinality(gt,1) USE_NL(gt, app)*/
3398 gt.event_id, -- EVENT_ID
3399 dist.line_id, -- LINE_NUMBER
3400 '', -- LANGUAGE
3401 sob.set_of_books_id, -- LEDGER_ID
3402 dist.source_id, -- SOURCE_ID
3403 dist.source_table, -- SOURCE_TABLE
3404 dist.line_id, -- LINE_ID
3405 dist.tax_code_id, -- TAX_CODE_ID
3406 dist.location_segment_id, -- LOCATION_SEGMENT_ID
3407 sob.currency_code, -- BASE_CURRENCY
3408 trxt.exchange_rate_type, -- EXCHANGE_RATE_TYPE
3409 trxt.exchange_rate, -- EXCHANGE_RATE
3410 -- bug 9483060 Default Exch Date as Trx Date for Base Currency Line for ALC Calculation
3411 decode(trxt.invoice_currency_code,sob.currency_code,
3412 trxt.trx_date, trxt.exchange_date), -- EXCHANGE_DATE
3413 NVL(dist.acctd_amount_cr,0) -
3414 NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
3415 NVL(dist.taxable_accounted_cr,0) -
3416 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
3417 app.org_id, -- ORG_ID
3418 app.receivable_application_id, -- HEADER_TABLE_ID
3419 'APP', -- POSTING_ENTITY
3420 NULL, -- CASH_RECEIPT_ID
3421 trxt.customer_trx_id, -- CUSTOMER_TRX_ID
3422 tlt.customer_trx_line_id, -- CUSTOMER_TRX_LINE_ID
3423 gldt.cust_trx_line_gl_dist_id, -- CUST_TRX_LINE_GL_DIST_ID
3424 gldt.cust_trx_line_salesrep_id, -- CUST_TRX_LINE_SALESREP_ID
3425 tlt.inventory_item_id, -- INVENTORY_ITEM_ID
3426 tlt.sales_tax_id, -- SALES_TAX_ID
3427 osp.master_organization_id, -- SO_ORGANIZATION_ID
3428 tlt.tax_exemption_id, -- TAX_EXEMPTION_ID
3429 tlt.uom_code, -- UOM_CODE
3430 tlt.warehouse_id, -- WAREHOUSE_ID
3431 trxt.agreement_id, -- AGREEMENT_ID
3432 trxt.customer_bank_account_id, -- CUSTOMER_BANK_ACCT_ID
3433 trxt.drawee_bank_account_id, -- DRAWEE_BANK_ACCOUNT_ID
3434 trxt.remit_bank_acct_use_id, -- REMITTANCE_BANK_ACCT_ID
3435 NULL, -- DISTRIBUTION_SET_ID
3436 psch.payment_schedule_id, -- PAYMENT_SCHEDULE_ID
3437 trxt.receipt_method_id, -- RECEIPT_METHOD_ID
3438 NULL, -- RECEIVABLES_TRX_ID
3439 NULL, -- ED_ADJ_RECEIVABLES_TRX_ID
3440 NULL, -- UNED_RECEIVABLES_TRX_ID
3441 trxt.set_of_books_id, -- SET_OF_BOOKS_ID
3442 trxt.primary_salesrep_id, -- SALESREP_ID
3443 trxt.bill_to_site_use_id, -- BILL_SITE_USE_ID
3444 trxt.drawee_site_use_id, -- DRAWEE_SITE_USE_ID
3445 trxt.paying_site_use_id, -- PAYING_SITE_USE_ID
3446 trxt.sold_to_site_use_id, -- SOLD_SITE_USE_ID
3447 trxt.ship_to_site_use_id, -- SHIP_SITE_USE_ID
3448 NULL, -- RECEIPT_CUSTOMER_SITE_USE_ID
3449 trxt.bill_to_contact_id, -- BILL_CUST_ROLE_ID
3450 trxt.drawee_contact_id, -- DRAWEE_CUST_ROLE_ID
3451 trxt.ship_to_contact_id, -- SHIP_CUST_ROLE_ID
3452 trxt.sold_to_contact_id, -- SOLD_CUST_ROLE_ID
3453 trxt.bill_to_customer_id, -- BILL_CUSTOMER_ID
3454 trxt.drawee_id, -- DRAWEE_CUSTOMER_ID
3455 trxt.paying_customer_id, -- PAYING_CUSTOMER_ID
3456 trxt.sold_to_customer_id, -- SOLD_CUSTOMER_ID
3457 trxt.ship_to_customer_id, -- SHIP_CUSTOMER_ID
3458 trxt.remit_to_address_id, -- REMIT_ADDRESS_ID
3459 NULL, -- RECEIPT_BATCH_ID
3460 NULL, -- RECEIVABLE_APPLICATION_ID
3461 NULL, -- CUSTOMER_BANK_BRANCH_ID
3462 NULL, -- ISSUER_BANK_BRANCH_ID
3463 trxt.batch_source_id, -- BATCH_SOURCE_ID
3464 trxt.batch_id, -- BATCH_ID
3465 trxt.term_id, -- TERM_ID
3466 'Y', -- SELECT_FLAG
3467 'L', -- LEVEL_FLAG
3468 'T', -- FROM_TO_FLAG
3469 -- NVL(dist.from_amount_cr,0) -NVL(dist.from_amount_dr,0), -- FROM_AMOUNT,
3470 CASE WHEN (dist.from_amount_cr IS NULL AND dist.from_amount_dr IS NULL) THEN
3471 NVL(dist.amount_cr,0) - NVL(dist.amount_dr,0)
3472 ELSE
3473 NVL(dist.from_amount_cr,0) - NVL(dist.from_amount_dr,0)
3474 END, -- FROM_AMOUNT
3475 NVL(dist.amount_cr,0) -NVL(dist.amount_dr,0), -- AMOUNT
3476 -- NVL(dist.from_acctd_amount_cr,0) -NVL(dist.from_acctd_amount_dr,0) -- FROM_ACCTD_AMOUNT
3477 CASE WHEN (dist.from_acctd_amount_cr IS NULL AND dist.from_acctd_amount_dr IS NULL) THEN
3478 NVL(dist.acctd_amount_cr,0) - NVL(dist.acctd_amount_dr,0)
3479 ELSE
3480 NVL(dist.from_acctd_amount_cr,0) - NVL(dist.from_acctd_amount_dr,0)
3481 END, -- FROM_ACCTD_MOUNT
3482 --{BUG#4356088
3483 gt.event_type_code
3484 ,gt.event_class_code
3485 ,gt.entity_code
3486 --BUG#4645389
3487 ,tlt.tax_line_id --tax_line_id
3488 --BUG#5366837
3489 ,app.upgrade_method
3490 ,'N' --MFAR_ADDITIONAL_ENTRY
3491 , dist.source_type
3492 ,decode(dist.REF_PREV_CUST_TRX_LINE_ID, NULL, to_number(NULL),dist.ref_customer_trx_line_id) -- 9860123
3493 ,the_segment_value(sob.chart_of_accounts_id, 'GL_BALANCING', dist.ref_dist_ccid)
3494 ,decode(trxt.upgrade_method,'R12_11ICASH','N','')
3495 FROM xla_events_gt gt,
3496 ar_receivable_applications_all app,
3497 ar_distributions_all dist,
3498 gl_sets_of_books sob,
3499 oe_system_parameters_all osp,
3500 ra_customer_trx_all trxt,
3501 ra_customer_trx_lines_all tlt,
3502 ra_cust_trx_line_gl_dist_all gldt,
3503 ar_payment_schedules_all psch
3504 WHERE gt.event_type_code IN ( 'CM_CREATE','CM_UPDATE' )
3505 AND gt.application_id = p_application_id
3506 AND gt.event_id = app.event_id
3507 AND (app.upgrade_method IN ('R12_NLB','R12', 'R12_11IMFAR', 'R12_11ICASH','11I_R12_POST','R12_MERGE')
3508 OR (app.upgrade_method IS NULL AND app.status = 'APP')
3509 OR (DECODE(app.upgrade_method,
3510 '11I_MFAR_UPG' ,DECODE(dist.source_table_secondary,'UPMFRAMIAR','Y','N'),
3511 'N') = 'Y'))
3512 AND dist.source_table = 'RA'
3513 AND dist.source_id = app.receivable_application_id
3514 AND app.set_of_books_id = sob.set_of_books_id
3515 AND app.org_id = osp.org_id(+)
3516 AND app.applied_customer_trx_id = trxt.customer_trx_id
3517 AND dist.ref_customer_trx_line_id = tlt.customer_trx_line_id(+)
3518 AND dist.ref_cust_trx_line_gl_dist_id = gldt.cust_trx_line_gl_dist_id(+)
3519 AND trxt.customer_trx_id = psch.customer_trx_id
3520 AND NVL(psch.terms_sequence_number,1) = 1
3521 -- {Pass every distributions REC EDISC UNEDISC UNAPP UNID
3522 -- AND dist.source_type IN ('REC','EDISC','UNEDISC')
3523 -- }
3524 -- AND dist.activity_bucket IS NOT NULL
3525 /* Bug 6119725 Begin Changes */
3526 AND ((( dist.ref_cust_trx_line_gl_dist_id IS NOT NULL AND sign(dist.ref_cust_trx_line_gl_dist_id) = 1)
3527 AND dist.ref_cust_trx_line_gl_dist_id IN (SELECT cust_trx_line_gl_dist_id
3528 FROM ra_cust_trx_line_gl_dist_all ctlgd
3529 WHERE ctlgd.customer_trx_id = app.applied_customer_trx_id)) -- Select only TO rows which belong to Invoice
3530 OR (((dist.ref_cust_trx_line_gl_dist_id IS NULL OR sign(dist.ref_cust_trx_line_gl_dist_id) = -1)
3531 AND ((sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0))) = sign(nvl(dist.amount_cr,0) * -1+nvl(dist.amount_dr,0)) AND dist.source_type = 'DEFERRED_TAX' )
3532 OR (sign((app.acctd_amount_applied_to+nvl(app.acctd_earned_discount_taken,0)+nvl(app.acctd_unearned_discount_taken,0))) = sign(nvl(dist.acctd_amount_dr,0) * -1+nvl(dist.acctd_amount_cr,0)) AND dist.source_type = 'CURR_ROUND')
3533 OR
3534 ( (sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0))) = sign(nvl(dist.amount_dr,0) * -1+nvl(dist.amount_cr,0)) AND dist.source_type not in ('DEFERRED_TAX', 'CURR_ROUND'))
3535 AND (((sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0)))*-1) <> 0)
3536 OR
3537 ((sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0)))*-1 = 0)
3538 AND dist.amount_dr is not null)))))))
3539 /* Bug 6119725 End Changes */
3540
3541 UNION
3542 --HYUCMACT
3543 SELECT /*+LEADING(gt) cardinality(gt,1) USE_NL(gt, app)*/
3544 gt.event_id, -- EVENT_ID
3545 dist.line_id, -- LINE_NUMBER
3546 '', -- LANGUAGE
3547 sob.set_of_books_id, -- LEDGER_ID
3548 dist.source_id, -- SOURCE_ID
3549 dist.source_table, -- SOURCE_TABLE
3550 dist.line_id, -- LINE_ID
3551 dist.tax_code_id, -- TAX_CODE_ID
3552 dist.location_segment_id, -- LOCATION_SEGMENT_ID
3553 sob.currency_code, -- BASE_CURRENCY
3554 trx.EXCHANGE_RATE_TYPE, -- EXCHANGE_RATE_TYPE
3555 trx.EXCHANGE_RATE, -- EXCHANGE_RATE
3556 trx.EXCHANGE_DATE, -- EXCHANGE_DATE
3557 NVL(dist.acctd_amount_cr,0) -
3558 NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
3559 NVL(dist.taxable_accounted_cr,0) -
3560 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
3561 app.org_id, -- ORG_ID
3562 app.receivable_application_id, -- HEADER_TABLE_ID
3563 'APP', -- POSTING_ENTITY
3564 NULL, -- CASH_RECEIPT_ID
3565 app.customer_trx_id, -- CUSTOMER_TRX_ID
3566 NULL, -- CUSTOMER_TRX_LINE_ID
3567 NULL, -- CUST_TRX_LINE_GL_DIST_ID
3568 NULL, -- CUST_TRX_LINE_SALESREP_ID
3569 NULL, -- INVENTORY_ITEM_ID
3570 NULL, -- SALES_TAX_ID
3571 NULL, -- SO_ORGANIZATION_ID
3572 NULL, -- TAX_EXEMPTION_ID
3573 NULL, -- UOM_CODE
3574 NULL, -- WAREHOUSE_ID
3575 NULL, -- AGREEMENT_ID
3576 NULL, -- CUSTOMER_BANK_ACCT_ID
3577 NULL, -- DRAWEE_BANK_ACCOUNT_ID
3578 NULL, -- REMITTANCE_BANK_ACCT_ID
3579 NULL, -- DISTRIBUTION_SET_ID
3580 NULL, -- PAYMENT_SCHEDULE_ID
3581 NULL, -- RECEIPT_METHOD_ID
3582 app.receivables_trx_id, -- RECEIVABLES_TRX_ID
3583 NULL, -- ED_ADJ_RECEIVABLES_TRX_ID
3584 NULL, -- UNED_RECEIVABLES_TRX_ID
3585 app.set_of_books_id, -- SET_OF_BOOKS_ID
3586 NULL, -- SALESREP_ID
3587 trx.BILL_TO_SITE_USE_ID, -- BILL_SITE_USE_ID
3588 NULL, -- DRAWEE_SITE_USE_ID
3589 NULL, -- PAYING_SITE_USE_ID
3590 trx.SOLD_TO_SITE_USE_ID, -- SOLD_SITE_USE_ID
3591 trx.SHIP_TO_SITE_USE_ID, -- SHIP_SITE_USE_ID
3592 NULL, -- RECEIPT_CUSTOMER_SITE_USE_ID
3593 NULL, -- BILL_CUST_ROLE_ID
3594 NULL, -- DRAWEE_CUST_ROLE_ID
3595 NULL, -- SHIP_CUST_ROLE_ID
3596 NULL, -- SOLD_CUST_ROLE_ID
3597 trx.BILL_TO_CUSTOMER_ID, -- BILL_CUSTOMER_ID
3598 NULL, -- DRAWEE_CUSTOMER_ID
3599 NULL, -- PAYING_CUSTOMER_ID
3600 trx.SOLD_TO_CUSTOMER_ID, -- SOLD_CUSTOMER_ID
3601 trx.SHIP_TO_CUSTOMER_ID, -- SHIP_CUSTOMER_ID
3602 NULL, -- REMIT_ADDRESS_ID
3603 NULL, -- RECEIPT_BATCH_ID
3604 app.receivable_application_id, -- RECEIVABLE_APPLICATION_ID
3605 NULL, -- CUSTOMER_BANK_BRANCH_ID
3606 NULL, -- ISSUER_BANK_BRANCH_ID
3607 NULL, -- BATCH_SOURCE_ID
3608 NULL, -- BATCH_ID
3609 NULL, -- TERM_ID
3610 'Y', -- SELECT_FLAG
3611 'L', -- LEVEL_FLAG
3612 'T', -- FROM_TO_FLAG
3613 NVL(dist.amount_cr,0) - NVL(dist.amount_dr,0), -- FROM_AMOUNT
3614 NVL(dist.amount_cr,0) -NVL(dist.amount_dr,0), -- AMOUNT
3615 NVL(dist.acctd_amount_cr,0) - NVL(dist.acctd_amount_dr,0), -- FROM_ACCTD_MOUNT
3616 gt.event_type_code
3617 ,gt.event_class_code
3618 ,gt.entity_code
3619 ,NULL --tax_line_id
3620 --BUG#5366837
3621 ,app.upgrade_method
3622 ,'N' --MFAR_ADDITIONAL_ENTRY
3623 , dist.source_type
3624 , to_number(NULL)
3625 , NULL
3626 , NULL
3627 FROM xla_events_gt gt,
3628 ar_receivable_applications_all app,
3629 ar_distributions_all dist,
3630 gl_sets_of_books sob,
3631 ra_customer_trx_all trx
3632 WHERE gt.event_type_code IN ( 'CM_CREATE','CM_UPDATE' )
3633 AND gt.application_id = p_application_id
3634 AND gt.event_id = app.event_id
3635 AND dist.source_table = 'RA'
3636 AND dist.source_id = app.receivable_application_id
3637 AND app.status = 'ACTIVITY'
3638 AND app.set_of_books_id = sob.set_of_books_id
3639 AND trx.customer_trx_id = app.customer_trx_id
3640 AND dist.source_type = 'ACTIVITY';
3641
3642
3643
3644 --BUG#5366837 Cash Basis
3645 INSERT INTO ar_xla_lines_extract (
3646 EVENT_ID
3647 ,LINE_NUMBER
3648 ,LANGUAGE
3649 ,LEDGER_ID
3650 ,SOURCE_ID
3651 ,SOURCE_TABLE
3652 ,LINE_ID
3653 ,TAX_CODE_ID
3654 ,LOCATION_SEGMENT_ID
3655 ,BASE_CURRENCY_CODE
3656 ,EXCHANGE_RATE_TYPE
3657 ,EXCHANGE_RATE
3658 ,EXCHANGE_DATE
3659 ,ACCTD_AMOUNT
3660 ,TAXABLE_ACCTD_AMOUNT
3661 ,ORG_ID
3662 ,HEADER_TABLE_ID
3663 ,POSTING_ENTITY
3664 ,CASH_RECEIPT_ID
3665 ,CUSTOMER_TRX_ID
3666 ,CUSTOMER_TRX_LINE_ID
3667 ,CUST_TRX_LINE_GL_DIST_ID
3668 ,CUST_TRX_LINE_SALESREP_ID
3669 ,INVENTORY_ITEM_ID
3670 ,SALES_TAX_ID
3671 ,SO_ORGANIZATION_ID
3672 ,TAX_EXEMPTION_ID
3673 ,UOM_CODE
3674 ,WAREHOUSE_ID
3675 ,AGREEMENT_ID
3676 ,CUSTOMER_BANK_ACCT_ID
3677 ,DRAWEE_BANK_ACCOUNT_ID
3678 ,REMITTANCE_BANK_ACCT_ID
3679 ,DISTRIBUTION_SET_ID
3680 ,PAYMENT_SCHEDULE_ID
3681 ,RECEIPT_METHOD_ID
3682 ,RECEIVABLES_TRX_ID
3683 ,ED_ADJ_RECEIVABLES_TRX_ID
3684 ,UNED_RECEIVABLES_TRX_ID
3685 ,SET_OF_BOOKS_ID
3686 ,SALESREP_ID
3687 ,BILL_SITE_USE_ID
3688 ,DRAWEE_SITE_USE_ID
3689 ,PAYING_SITE_USE_ID
3690 ,SOLD_SITE_USE_ID
3691 ,SHIP_SITE_USE_ID
3692 ,RECEIPT_CUSTOMER_SITE_USE_ID
3693 ,BILL_CUST_ROLE_ID
3694 ,DRAWEE_CUST_ROLE_ID
3695 ,SHIP_CUST_ROLE_ID
3696 ,SOLD_CUST_ROLE_ID
3697 ,BILL_CUSTOMER_ID
3698 ,DRAWEE_CUSTOMER_ID
3699 ,PAYING_CUSTOMER_ID
3700 ,SOLD_CUSTOMER_ID
3701 ,SHIP_CUSTOMER_ID
3702 ,REMIT_ADDRESS_ID
3703 ,RECEIPT_BATCH_ID
3704 ,RECEIVABLE_APPLICATION_ID
3705 ,CUSTOMER_BANK_BRANCH_ID
3706 ,ISSUER_BANK_BRANCH_ID
3707 ,BATCH_SOURCE_ID
3708 ,BATCH_ID
3709 ,TERM_ID
3710 ,SELECT_FLAG
3711 ,LEVEL_FLAG
3712 ,FROM_TO_FLAG
3713 ,FROM_AMOUNT
3714 ,AMOUNT
3715 ,FROM_ACCTD_AMOUNT
3716 ,event_type_code
3717 ,event_class_code
3718 ,entity_code
3719 ,tax_line_id
3720 ,ADDITIONAL_CHAR1
3721 ,MFAR_ADDITIONAL_ENTRY
3722 )
3723 SELECT /*+LEADING(gt) USE_NL(gt, app)*/
3724 gt.event_id -- EVENT_ID
3725 ,acb.cash_basis_distribution_id -- LINE_NUMBER
3726 ,'' -- LANGUAGE
3727 ,sob.set_of_books_id -- LEDGER_ID
3728 ,app.receivable_application_id -- SOURCE_ID
3729 ,'RA' -- SOURCE_TABLE
3730 ,acb.cash_basis_distribution_id -- LINE_ID
3731 ,NULL -- TAX_CODE_ID
3732 ,NULL -- LOCATION_SEGMENT_ID
3733 ,sob.currency_code -- BASE_CURRENCY
3734 ,trxt.exchange_rate_type -- EXCHANGE_RATE_TYPE
3735 ,trxt.exchange_rate -- EXCHANGE_RATE
3736 ,trxt.exchange_date -- EXCHANGE_DATE
3737 ,acb.acctd_amount -- ACCTD_AMOUNT
3738 ,NULL -- TAXABLE_ACCTD_AMOUNT
3739 ,app.org_id -- ORG_ID
3740 ,app.receivable_application_id -- HEADER_TABLE_ID
3741 ,'APP' -- POSTING_ENTITY
3742 ,NULL -- CASH_RECEIPT_ID
3743 ,trxt.customer_trx_id -- CUSTOMER_TRX_ID
3744 ,tlt.customer_trx_line_id -- CUSTOMER_TRX_LINE_ID
3745 ,gldt.cust_trx_line_gl_dist_id -- CUST_TRX_LINE_GL_DIST_ID
3746 ,gldt.cust_trx_line_salesrep_id -- CUST_TRX_LINE_SALESREP_ID
3747 ,tlt.inventory_item_id -- INVENTORY_ITEM_ID
3748 ,tlt.sales_tax_id -- SALES_TAX_ID
3749 ,osp.master_organization_id -- SO_ORGANIZATION_ID
3750 ,tlt.tax_exemption_id -- TAX_EXEMPTION_ID
3751 ,tlt.uom_code -- UOM_CODE
3752 ,tlt.warehouse_id -- WAREHOUSE_ID
3753 ,trxt.agreement_id -- AGREEMENT_ID
3754 ,trxt.customer_bank_account_id -- CUSTOMER_BANK_ACCT_ID
3755 ,trxt.drawee_bank_account_id -- DRAWEE_BANK_ACCOUNT_ID
3756 ,trxt.remit_bank_acct_use_id -- REMITTANCE_BANK_ACCT_ID
3757 ,NULL -- DISTRIBUTION_SET_ID
3758 ,psch.payment_schedule_id -- PAYMENT_SCHEDULE_ID
3759 ,trxt.receipt_method_id -- RECEIPT_METHOD_ID
3760 ,NULL -- RECEIVABLES_TRX_ID
3761 ,NULL -- ED_ADJ_RECEIVABLES_TRX_ID
3762 ,NULL -- UNED_RECEIVABLES_TRX_ID
3763 ,trxt.set_of_books_id -- SET_OF_BOOKS_ID
3764 ,trxt.primary_salesrep_id -- SALESREP_ID
3765 ,trxt.bill_to_site_use_id -- BILL_SITE_USE_ID
3766 ,trxt.drawee_site_use_id -- DRAWEE_SITE_USE_ID
3767 ,trxt.paying_site_use_id -- PAYING_SITE_USE_ID
3768 ,trxt.sold_to_site_use_id -- SOLD_SITE_USE_ID
3769 ,trxt.ship_to_site_use_id -- SHIP_SITE_USE_ID
3770 ,NULL -- RECEIPT_CUSTOMER_SITE_USE_ID
3771 ,trxt.bill_to_contact_id -- BILL_CUST_ROLE_ID
3772 ,trxt.drawee_contact_id -- DRAWEE_CUST_ROLE_ID
3773 ,trxt.ship_to_contact_id -- SHIP_CUST_ROLE_ID
3774 ,trxt.sold_to_contact_id -- SOLD_CUST_ROLE_ID
3775 ,trxt.bill_to_customer_id -- BILL_CUSTOMER_ID
3776 ,trxt.drawee_id -- DRAWEE_CUSTOMER_ID
3777 ,trxt.paying_customer_id -- PAYING_CUSTOMER_ID
3778 ,trxt.sold_to_customer_id -- SOLD_CUSTOMER_ID
3779 ,trxt.ship_to_customer_id -- SHIP_CUSTOMER_ID
3780 ,trxt.remit_to_address_id -- REMIT_ADDRESS_ID
3781 ,NULL -- RECEIPT_BATCH_ID
3782 ,NULL -- RECEIVABLE_APPLICATION_ID
3783 ,NULL -- CUSTOMER_BANK_BRANCH_ID
3784 ,NULL -- ISSUER_BANK_BRANCH_ID
3785 ,trxt.batch_source_id -- BATCH_SOURCE_ID
3786 ,trxt.batch_id -- BATCH_ID
3787 ,trxt.term_id -- TERM_ID
3788 ,'Y' -- SELECT_FLAG
3789 ,'L' -- LEVEL_FLAG
3790 ,'T' -- FROM_TO_FLAG
3791 ,acb.from_amount -- FROM_AMOUNT
3792 ,acb.amount -- AMOUNT
3793 ,acb.from_acctd_amount -- FROM_ACCTD_AMOUNT
3794 ,gt.event_type_code
3795 ,gt.event_class_code
3796 ,gt.entity_code
3797 ,tlt.tax_line_id --tax_line_id
3798 ,app.upgrade_method
3799 ,'N' --MFAR_ADDITIONAL_ENTRY
3800 FROM xla_events_gt gt,
3801 ar_receivable_applications_all app,
3802 AR_CASH_BASIS_DISTS_ALL acb,
3803 gl_sets_of_books sob,
3804 oe_system_parameters_all osp,
3805 ra_customer_trx_all trxt,
3806 ra_customer_trx_lines_all tlt,
3807 ra_cust_trx_line_gl_dist_all gldt,
3808 ar_payment_schedules_all psch,
3809 ar_system_parameters_all ars
3810 WHERE gt.event_type_code IN ( 'RECP_CREATE' ,'RECP_UPDATE',
3811 'RECP_RATE_ADJUST' ) --Uptake XLA Reversal, 'RECP_REVERSE')
3812 AND gt.application_id = p_application_id
3813 AND gt.event_id = app.event_id
3814 AND app.receivable_application_id = acb.receivable_application_id
3815 AND app.upgrade_method = 'R12_11ICASH_POST'
3816 AND acb.receivable_application_id = app.receivable_application_id
3817 AND app.set_of_books_id = sob.set_of_books_id
3818 AND app.org_id = osp.org_id(+)
3819 AND app.applied_customer_trx_id = trxt.customer_trx_id
3820 AND acb.REF_CUSTOMER_TRX_LINE_ID = tlt.customer_trx_line_id(+)
3821 AND acb.ref_cust_trx_line_gl_dist_id = gldt.cust_trx_line_gl_dist_id(+)
3822 AND trxt.customer_trx_id = psch.customer_trx_id
3823 AND NVL(psch.terms_sequence_number,1) = 1
3824 AND ars.org_id = app.org_id
3825 AND ars.ACCOUNTING_METHOD = 'CASH'
3826 UNION ALL
3827 SELECT /*+LEADING(gt) USE_NL(gt, app)*/
3828 gt.event_id -- EVENT_ID
3829 ,acb.cash_basis_distribution_id -- LINE_NUMBER
3830 ,'' -- LANGUAGE
3831 ,sob.set_of_books_id -- LEDGER_ID
3832 ,app.receivable_application_id -- SOURCE_ID
3833 ,'RA' -- SOURCE_TABLE
3834 ,acb.cash_basis_distribution_id -- LINE_ID
3835 ,NULL -- TAX_CODE_ID
3836 ,NULL -- LOCATION_SEGMENT_ID
3837 ,sob.currency_code -- BASE_CURRENCY
3838 ,trxt.exchange_rate_type -- EXCHANGE_RATE_TYPE
3839 ,trxt.exchange_rate -- EXCHANGE_RATE
3840 ,trxt.exchange_date -- EXCHANGE_DATE
3841 ,acb.acctd_amount -- ACCTD_AMOUNT
3842 ,NULL -- TAXABLE_ACCTD_AMOUNT
3843 ,app.org_id -- ORG_ID
3844 ,app.receivable_application_id -- HEADER_TABLE_ID
3845 ,'APP' -- POSTING_ENTITY
3846 ,NULL -- CASH_RECEIPT_ID
3847 ,trxt.customer_trx_id -- CUSTOMER_TRX_ID
3848 ,tlt.customer_trx_line_id -- CUSTOMER_TRX_LINE_ID
3849 ,gldt.cust_trx_line_gl_dist_id -- CUST_TRX_LINE_GL_DIST_ID
3850 ,gldt.cust_trx_line_salesrep_id -- CUST_TRX_LINE_SALESREP_ID
3851 ,tlt.inventory_item_id -- INVENTORY_ITEM_ID
3852 ,tlt.sales_tax_id -- SALES_TAX_ID
3853 ,osp.master_organization_id -- SO_ORGANIZATION_ID
3854 ,tlt.tax_exemption_id -- TAX_EXEMPTION_ID
3855 ,tlt.uom_code -- UOM_CODE
3856 ,tlt.warehouse_id -- WAREHOUSE_ID
3857 ,trxt.agreement_id -- AGREEMENT_ID
3858 ,trxt.customer_bank_account_id -- CUSTOMER_BANK_ACCT_ID
3859 ,trxt.drawee_bank_account_id -- DRAWEE_BANK_ACCOUNT_ID
3860 ,trxt.remit_bank_acct_use_id -- REMITTANCE_BANK_ACCT_ID
3861 ,NULL -- DISTRIBUTION_SET_ID
3862 ,psch.payment_schedule_id -- PAYMENT_SCHEDULE_ID
3863 ,trxt.receipt_method_id -- RECEIPT_METHOD_ID
3864 ,NULL -- RECEIVABLES_TRX_ID
3865 ,NULL -- ED_ADJ_RECEIVABLES_TRX_ID
3866 ,NULL -- UNED_RECEIVABLES_TRX_ID
3867 ,trxt.set_of_books_id -- SET_OF_BOOKS_ID
3868 ,trxt.primary_salesrep_id -- SALESREP_ID
3869 ,trxt.bill_to_site_use_id -- BILL_SITE_USE_ID
3870 ,trxt.drawee_site_use_id -- DRAWEE_SITE_USE_ID
3871 ,trxt.paying_site_use_id -- PAYING_SITE_USE_ID
3872 ,trxt.sold_to_site_use_id -- SOLD_SITE_USE_ID
3873 ,trxt.ship_to_site_use_id -- SHIP_SITE_USE_ID
3874 ,NULL -- RECEIPT_CUSTOMER_SITE_USE_ID
3875 ,trxt.bill_to_contact_id -- BILL_CUST_ROLE_ID
3876 ,trxt.drawee_contact_id -- DRAWEE_CUST_ROLE_ID
3877 ,trxt.ship_to_contact_id -- SHIP_CUST_ROLE_ID
3878 ,trxt.sold_to_contact_id -- SOLD_CUST_ROLE_ID
3879 ,trxt.bill_to_customer_id -- BILL_CUSTOMER_ID
3880 ,trxt.drawee_id -- DRAWEE_CUSTOMER_ID
3881 ,trxt.paying_customer_id -- PAYING_CUSTOMER_ID
3882 ,trxt.sold_to_customer_id -- SOLD_CUSTOMER_ID
3883 ,trxt.ship_to_customer_id -- SHIP_CUSTOMER_ID
3884 ,trxt.remit_to_address_id -- REMIT_ADDRESS_ID
3885 ,NULL -- RECEIPT_BATCH_ID
3886 ,NULL -- RECEIVABLE_APPLICATION_ID
3887 ,NULL -- CUSTOMER_BANK_BRANCH_ID
3888 ,NULL -- ISSUER_BANK_BRANCH_ID
3889 ,trxt.batch_source_id -- BATCH_SOURCE_ID
3890 ,trxt.batch_id -- BATCH_ID
3891 ,trxt.term_id -- TERM_ID
3892 ,'Y' -- SELECT_FLAG
3893 ,'L' -- LEVEL_FLAG
3894 ,'T' -- FROM_TO_FLAG
3895 ,NULL -- FROM_AMOUNT,
3896 ,acb.amount -- AMOUNT
3897 ,acb.from_acctd_Amount -- FROM_ACCTD_AMOUNT
3898 ,gt.event_type_code
3899 ,gt.event_class_code
3900 ,gt.entity_code
3901 ,tlt.tax_line_id -- tax_line_id
3902 ,app.upgrade_method
3903 ,'N' --MFAR_ADDITIONAL_ENTRY
3904 FROM xla_events_gt gt,
3905 ar_receivable_applications_all app,
3906 AR_CASH_BASIS_DISTS_ALL acb,
3907 gl_sets_of_books sob,
3908 oe_system_parameters_all osp,
3909 ra_customer_trx_all trxt,
3910 ra_customer_trx_lines_all tlt,
3911 ra_cust_trx_line_gl_dist_all gldt,
3912 ar_payment_schedules_all psch,
3913 ar_system_parameters_all ars
3914 WHERE gt.event_type_code IN ( 'CM_CREATE' ,'CM_UPDATE' )
3915 AND gt.application_id = p_application_id
3916 AND gt.event_id = app.event_id
3917 AND app.upgrade_method = 'R12_11ICASH_POST'
3918 AND acb.receivable_application_id = app.receivable_application_id
3919 AND app.set_of_books_id = sob.set_of_books_id
3920 AND app.org_id = osp.org_id(+)
3921 AND app.applied_customer_trx_id = trxt.customer_trx_id
3922 AND acb.ref_customer_trx_line_id = tlt.customer_trx_line_id(+)
3923 AND acb.ref_cust_trx_line_gl_dist_id = gldt.cust_trx_line_gl_dist_id(+)
3924 AND trxt.customer_trx_id = psch.customer_trx_id
3925 AND NVL(psch.terms_sequence_number,1) = 1
3926 AND ars.org_id = app.org_id
3927 AND ars.ACCOUNTING_METHOD = 'CASH'
3928 AND acb.ref_cust_trx_line_gl_dist_id NOT IN
3929 (SELECT cust_trx_line_gl_dist_id
3930 FROM ra_cust_trx_line_gl_dist_all
3931 WHERE customer_trx_id = gt.source_id_int_1); --Excluding the receivable distribution of the CM
3932
3933
3934
3935 local_log(procedure_name => 'load_line_data_app_to_trx',
3936 p_msg_text => 'arp_xla_extract_main_pkg.load_line_data_app_to_trx ()-');
3937 EXCEPTION
3938 -- WHEN NO_DATA_FOUND THEN NULL;
3939 WHEN OTHERS THEN
3940 local_log(procedure_name => 'load_line_data_app_to_trx',
3941 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_app_to_trx '||
3942 arp_global.CRLF || 'Error :'|| SQLERRM);
3943 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
3944 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
3945 'Procedure :arp_xla_extract_main_pkg.load_line_data_app_to_trx'|| arp_global.CRLF||
3946 'Error :'||SQLERRM);
3947 FND_MSG_PUB.ADD;
3948 RAISE;
3949 END load_line_data_app_to_trx;
3950
3951
3952 --This is no longer usefull as we pass the UNID and the UNAPP as well
3953 -- Leave it for now
3954 PROCEDURE load_line_data_app_unid(p_application_id IN NUMBER DEFAULT 222)
3955 IS
3956 BEGIN
3957 local_log(procedure_name => 'load_line_data_app_unid',
3958 p_msg_text => 'arp_xla_extract_main_pkg.load_line_data_app_unid ()+');
3959 -- Insert line level data in Line GT with
3960 -- selected_flag = Y
3961 -- level_flag = L
3962 -- from_to_flag = T
3963 INSERT INTO ar_xla_lines_extract (
3964 EVENT_ID
3965 ,LINE_NUMBER
3966 ,LANGUAGE
3967 ,LEDGER_ID
3968 ,SOURCE_ID
3969 ,SOURCE_TABLE
3970 ,LINE_ID
3971 ,TAX_CODE_ID
3972 ,LOCATION_SEGMENT_ID
3973 ,BASE_CURRENCY_CODE
3974 ,EXCHANGE_RATE_TYPE
3975 ,EXCHANGE_RATE
3976 ,EXCHANGE_DATE
3977 ,ACCTD_AMOUNT
3978 ,TAXABLE_ACCTD_AMOUNT
3979 ,ORG_ID
3980 ,HEADER_TABLE_ID
3981 ,POSTING_ENTITY
3982 ,CASH_RECEIPT_ID
3983 ,CUSTOMER_TRX_ID
3984 ,CUSTOMER_TRX_LINE_ID
3985 ,CUST_TRX_LINE_GL_DIST_ID
3986 ,CUST_TRX_LINE_SALESREP_ID
3987 ,INVENTORY_ITEM_ID
3988 ,SALES_TAX_ID
3989 ,SO_ORGANIZATION_ID
3990 ,TAX_EXEMPTION_ID
3991 ,UOM_CODE
3992 ,WAREHOUSE_ID
3993 ,AGREEMENT_ID
3994 ,CUSTOMER_BANK_ACCT_ID
3995 ,DRAWEE_BANK_ACCOUNT_ID
3996 ,REMITTANCE_BANK_ACCT_ID
3997 ,DISTRIBUTION_SET_ID
3998 ,PAYMENT_SCHEDULE_ID
3999 ,RECEIPT_METHOD_ID
4000 ,RECEIVABLES_TRX_ID
4001 ,ED_ADJ_RECEIVABLES_TRX_ID
4002 ,UNED_RECEIVABLES_TRX_ID
4003 ,SET_OF_BOOKS_ID
4004 ,SALESREP_ID
4005 ,BILL_SITE_USE_ID
4006 ,DRAWEE_SITE_USE_ID
4007 ,PAYING_SITE_USE_ID
4008 ,SOLD_SITE_USE_ID
4009 ,SHIP_SITE_USE_ID
4010 ,RECEIPT_CUSTOMER_SITE_USE_ID
4011 ,BILL_CUST_ROLE_ID
4012 ,DRAWEE_CUST_ROLE_ID
4013 ,SHIP_CUST_ROLE_ID
4014 ,SOLD_CUST_ROLE_ID
4015 ,BILL_CUSTOMER_ID
4016 ,DRAWEE_CUSTOMER_ID
4017 ,PAYING_CUSTOMER_ID
4018 ,SOLD_CUSTOMER_ID
4019 ,SHIP_CUSTOMER_ID
4020 ,REMIT_ADDRESS_ID
4021 ,RECEIPT_BATCH_ID
4022 ,RECEIVABLE_APPLICATION_ID
4023 ,CUSTOMER_BANK_BRANCH_ID
4024 ,ISSUER_BANK_BRANCH_ID
4025 ,BATCH_SOURCE_ID
4026 ,BATCH_ID
4027 ,TERM_ID
4028 ,SELECT_FLAG
4029 ,LEVEL_FLAG
4030 ,FROM_TO_FLAG
4031 ,FROM_AMOUNT
4032 ,AMOUNT
4033 ,FROM_ACCTD_AMOUNT
4034 --{BUG#4356088
4035 ,event_type_code
4036 ,event_class_code
4037 ,entity_code
4038 --}
4039 ,MFAR_ADDITIONAL_ENTRY
4040 )
4041 SELECT /*+LEADING(gt) USE_NL(gt, app)*/
4042 gt.event_id, -- EVENT_ID
4043 dist.line_id, -- LINE_NUMBER
4044 '', -- LANGUAGE
4045 sob.set_of_books_id, -- LEDGER_ID
4046 dist.source_id, -- SOURCE_ID
4047 dist.source_table, -- SOURCE_TABLE
4048 dist.line_id, -- LINE_ID
4049 dist.tax_code_id, -- TAX_CODE_ID
4050 dist.location_segment_id, -- LOCATION_SEGMENT_ID
4051 sob.currency_code, -- BASE_CURRENCY
4052 NULL, -- EXCHANGE_RATE_TYPE
4053 NULL, -- EXCHANGE_RATE
4054 NULL, -- EXCHANGE_DATE
4055 NVL(dist.acctd_amount_cr,0) -
4056 NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
4057 NVL(dist.taxable_accounted_cr,0) -
4058 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
4059 app.org_id, -- ORG_ID
4060 app.receivable_application_id, -- HEADER_TABLE_ID
4061 'APP', -- POSTING_ENTITY
4062 NULL, -- CASH_RECEIPT_ID
4063 NULL, -- CUSTOMER_TRX_ID
4064 NULL, -- CUSTOMER_TRX_LINE_ID
4065 NULL, -- CUST_TRX_LINE_GL_DIST_ID
4066 NULL, -- CUST_TRX_LINE_SALESREP_ID
4067 NULL, -- INVENTORY_ITEM_ID
4068 NULL, -- SALES_TAX_ID
4069 NULL, -- SO_ORGANIZATION_ID
4070 NULL, -- TAX_EXEMPTION_ID
4071 NULL, -- UOM_CODE
4072 NULL, -- WAREHOUSE_ID
4073 NULL, -- AGREEMENT_ID
4074 NULL, -- CUSTOMER_BANK_ACCT_ID
4075 NULL, -- DRAWEE_BANK_ACCOUNT_ID
4076 NULL, -- REMITTANCE_BANK_ACCT_ID
4077 NULL, -- DISTRIBUTION_SET_ID
4078 NULL, -- PAYMENT_SCHEDULE_ID
4079 NULL, -- RECEIPT_METHOD_ID
4080 NULL, -- RECEIVABLES_TRX_ID
4081 NULL, -- ED_ADJ_RECEIVABLES_TRX_ID
4082 NULL, -- UNED_RECEIVABLES_TRX_ID
4083 NULL, -- SET_OF_BOOKS_ID
4084 NULL, -- SALESREP_ID
4085 NULL, -- BILL_SITE_USE_ID
4086 NULL, -- DRAWEE_SITE_USE_ID
4087 NULL, -- PAYING_SITE_USE_ID
4088 NULL, -- SOLD_SITE_USE_ID
4089 NULL, -- SHIP_SITE_USE_ID
4090 NULL, -- RECEIPT_CUSTOMER_SITE_USE_ID
4091 NULL, -- BILL_CUST_ROLE_ID
4092 NULL, -- DRAWEE_CUST_ROLE_ID
4093 NULL, -- SHIP_CUST_ROLE_ID
4094 NULL, -- SOLD_CUST_ROLE_ID
4095 NULL, -- BILL_CUSTOMER_ID
4096 NULL, -- DRAWEE_CUSTOMER_ID
4097 NULL, -- PAYING_CUSTOMER_ID
4098 NULL, -- SOLD_CUSTOMER_ID
4099 NULL, -- SHIP_CUSTOMER_ID
4100 NULL, -- REMIT_ADDRESS_ID
4101 NULL, -- RECEIPT_BATCH_ID
4102 NULL, -- RECEIVABLE_APPLICATION_ID
4103 NULL, -- CUSTOMER_BANK_BRANCH_ID
4104 NULL, -- ISSUER_BANK_BRANCH_ID
4105 NULL, -- BATCH_SOURCE_ID
4106 NULL, -- BATCH_ID
4107 NULL, -- TERM_ID
4108 'Y', -- SELECT_FLAG
4109 'L', -- LEVEL_FLAG
4110 'T', -- FROM_TO_FLAG
4111 NVL(dist.from_amount_cr,0)
4112 -NVL(dist.from_amount_dr,0), -- FROM_AMOUNT,
4113 NVL(dist.amount_cr,0)
4114 -NVL(dist.amount_dr,0), -- AMOUNT
4115 NVL(dist.from_acctd_amount_cr,0)
4116 -NVL(dist.from_acctd_amount_dr,0) -- FROM_ACCTD_AMOUNT
4117 --{BUG#4356088
4118 ,gt.event_type_code
4119 ,gt.event_class_code
4120 ,gt.entity_code
4121 --}
4122 ,'N' --MFAR_ADDITIONAL_ENTRY
4123 FROM xla_events_gt gt,
4124 ar_receivable_applications_all app,
4125 ar_distributions_all dist, --ar_distributions_all dist,
4126 gl_sets_of_books sob
4127 WHERE gt.event_type_code IN ( 'RECP_CREATE' ,'RECP_UPDATE' ,
4128 'RECP_RATE_ADJUST' ) --Uptake XLA reversal,'RECP_REVERSE')
4129 -- Exclude 'RECP_REVERSE' for no extract at line level is reuired for Reversal
4130 AND gt.application_id = p_application_id
4131 AND gt.event_id = app.event_id
4132 AND dist.source_table = 'RA'
4133 AND dist.source_id = app.receivable_application_id
4134 AND app.set_of_books_id = sob.set_of_books_id
4135 AND dist.source_type = 'UNID';
4136
4137 local_log(procedure_name => 'load_line_data_app_unid',
4138 p_msg_text => 'arp_xla_extract_main_pkg.load_line_data_app_unid ()-');
4139
4140 EXCEPTION
4141 -- WHEN NO_DATA_FOUND THEN NULL;
4142 WHEN OTHERS THEN
4143 local_log(procedure_name => 'load_line_data_app_unid',
4144 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_app_unid '||
4145 arp_global.CRLF || 'Error :'|| SQLERRM);
4146 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
4147 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
4148 'Procedure :arp_xla_extract_main_pkg.load_line_data_app_to_trx'|| arp_global.CRLF||
4149 'Error :'||SQLERRM);
4150 FND_MSG_PUB.ADD;
4151 RAISE;
4152 END load_line_data_app_unid;
4153 -------------------------------------------------------------------------------
4154 /*-----------------------------------------------------------------+
4155 | Procedure Name : load_line_data_crh |
4156 | Description : Extract line data for cash receipt and |
4157 | misc cash receipt events |
4158 +-----------------------------------------------------------------+
4159 | History : |
4160 | 23-FEB-2004 Herve Yu Created due to bug#3419926 |
4161 +-----------------------------------------------------------------*/
4162 PROCEDURE load_line_data_crh(p_application_id IN NUMBER DEFAULT 222)
4163 IS
4164 BEGIN
4165 local_log(procedure_name => 'load_line_data_crh',
4166 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_date_crh ()+');
4167 -- Line data CR in Line GT
4168 -- Selected_flag = N
4169 -- Level_flag = L
4170 INSERT INTO ar_xla_lines_extract (
4171 EVENT_ID
4172 ,LINE_NUMBER
4173 ,LANGUAGE
4174 ,LEDGER_ID
4175 ,SOURCE_ID
4176 ,SOURCE_TABLE
4177 ,LINE_ID
4178 ,TAX_CODE_ID
4179 ,LOCATION_SEGMENT_ID
4180 ,BASE_CURRENCY_CODE
4181 ,EXCHANGE_RATE_TYPE
4182 ,EXCHANGE_RATE
4183 ,EXCHANGE_DATE
4184 ,ACCTD_AMOUNT
4185 ,TAXABLE_ACCTD_AMOUNT
4186 ,ORG_ID
4187 ,HEADER_TABLE_ID
4188 ,POSTING_ENTITY
4189 ,CASH_RECEIPT_ID
4190 ,CUSTOMER_TRX_ID
4191 ,CUSTOMER_TRX_LINE_ID
4192 ,CUST_TRX_LINE_GL_DIST_ID
4193 ,CUST_TRX_LINE_SALESREP_ID
4194 ,INVENTORY_ITEM_ID
4195 ,SALES_TAX_ID
4196 ,SO_ORGANIZATION_ID
4197 ,TAX_EXEMPTION_ID
4198 ,UOM_CODE
4199 ,WAREHOUSE_ID
4200 ,AGREEMENT_ID
4201 ,CUSTOMER_BANK_ACCT_ID
4202 ,DRAWEE_BANK_ACCOUNT_ID
4203 ,REMITTANCE_BANK_ACCT_ID
4204 ,DISTRIBUTION_SET_ID
4205 ,PAYMENT_SCHEDULE_ID
4206 ,RECEIPT_METHOD_ID
4207 ,RECEIVABLES_TRX_ID
4208 ,ED_ADJ_RECEIVABLES_TRX_ID
4209 ,UNED_RECEIVABLES_TRX_ID
4210 ,SET_OF_BOOKS_ID
4211 ,SALESREP_ID
4212 ,BILL_SITE_USE_ID
4213 ,DRAWEE_SITE_USE_ID
4214 ,PAYING_SITE_USE_ID
4215 ,SOLD_SITE_USE_ID
4216 ,SHIP_SITE_USE_ID
4217 ,RECEIPT_CUSTOMER_SITE_USE_ID
4218 ,BILL_CUST_ROLE_ID
4219 ,DRAWEE_CUST_ROLE_ID
4220 ,SHIP_CUST_ROLE_ID
4221 ,SOLD_CUST_ROLE_ID
4222 ,BILL_CUSTOMER_ID
4223 ,DRAWEE_CUSTOMER_ID
4224 ,PAYING_CUSTOMER_ID
4225 ,SOLD_CUSTOMER_ID
4226 ,SHIP_CUSTOMER_ID
4227 ,REMIT_ADDRESS_ID
4228 ,RECEIPT_BATCH_ID
4229 ,RECEIVABLE_APPLICATION_ID
4230 ,CUSTOMER_BANK_BRANCH_ID
4231 ,ISSUER_BANK_BRANCH_ID
4232 ,BATCH_SOURCE_ID
4233 ,BATCH_ID
4234 ,TERM_ID
4235 ,SELECT_FLAG
4236 ,LEVEL_FLAG
4237 ,FROM_TO_FLAG
4238 ,CRH_STATUS
4239 ,CRH_PRV_STATUS
4240 ,AMOUNT
4241 --{BUG#4356088
4242 ,event_type_code
4243 ,event_class_code
4244 ,entity_code
4245 --}
4246 ,MFAR_ADDITIONAL_ENTRY
4247 )
4248 SELECT /*+LEADING(gt) USE_NL(gt,crh)*/
4249 gt.event_id, -- EVENT_ID
4250 dist.line_id, -- LINE_NUMBER
4251 '', -- LANGUAGE
4252 sob.set_of_books_id, -- LEDGER_ID
4253 dist.source_id, -- SOURCE_ID
4254 dist.source_table, -- SOURCE_TABLE
4255 dist.line_id, -- LINE_ID
4256 dist.tax_code_id, -- TAX_CODE_ID
4257 dist.location_segment_id, -- LOCATION_SEGMENT_ID
4258 sob.currency_code, -- BASE_CURRENCY
4259 -- crh.exchange_rate_type, -- EXCHANGE_RATE_TYPE
4260 -- crh.exchange_rate , -- EXCHANGE_RATE
4261 -- crh.exchange_date , -- EXCHANGE_DATE
4262 dist.CURRENCY_CONVERSION_TYPE, -- EXCHANGE_RATE_TYPE
4263 dist.CURRENCY_CONVERSION_RATE , -- EXCHANGE_RATE
4264 dist.CURRENCY_CONVERSION_DATE , -- EXCHANGE_DATE
4265 NVL(dist.acctd_amount_cr,0)
4266 - NVL(dist.acctd_amount_dr,0) , -- ACCTD_AMOUNT
4267 NVL(dist.taxable_accounted_cr,0)
4268 - NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
4269 crh.org_id, -- ORG_ID
4270 crh.cash_receipt_history_id, -- HEADER_TABLE_ID
4271 'CRH', -- POSTING_ENTITY
4272 crh.cash_receipt_id, -- CASH_RECEIPT_ID
4273 NULL, -- CUSTOMER_TRX_ID
4274 NULL, -- CUSTOMER_TRX_LINE_ID
4275 NULL, -- CUST_TRX_LINE_GL_DIST_ID
4276 NULL, -- CUST_TRX_LINE_SALESREP_ID
4277 NULL, -- INVENTORY_ITEM_ID
4278 NULL, -- SALES_TAX_ID
4279 NULL, -- SO_ORGANIZATION_ID
4280 NULL, -- TAX_EXEMPTION_ID
4281 NULL, -- UOM_CODE
4282 NULL, -- WAREHOUSE_ID
4283 NULL, -- AGREEMENT_ID
4284 NULL, -- CUSTOMER_BANK_ACCT_ID
4285 NULL, -- DRAWEE_BANK_ACCOUNT_ID
4286 NULL, -- REMITTANCE_BANK_ACCT_ID
4287 NULL, -- DISTRIBUTION_SET_ID
4288 NULL, -- PAYMENT_SCHEDULE_ID
4289 NULL, -- RECEIPT_METHOD_ID
4290 NULL, -- RECEIVABLES_TRX_ID
4291 NULL, -- ED_ADJ_RECEIVABLES_TRX_ID
4292 NULL, -- UNED_RECEIVABLES_TRX_ID
4293 sob.set_of_books_id, -- SET_OF_BOOKS_ID
4294 NULL, -- SALESREP_ID
4295 NULL, -- BILL_SITE_USE_ID
4296 NULL, -- DRAWEE_SITE_USE_ID
4297 NULL, -- PAYING_SITE_USE_ID
4298 NULL, -- SOLD_SITE_USE_ID
4299 NULL, -- SHIP_SITE_USE_ID
4300 NULL, -- RECEIPT_CUSTOMER_SITE_USE_ID
4301 NULL, -- BILL_CUST_ROLE_ID
4302 NULL, -- DRAWEE_CUST_ROLE_ID
4303 NULL, -- SHIP_CUST_ROLE_ID
4304 NULL, -- SOLD_CUST_ROLE_ID
4305 NULL, -- BILL_CUSTOMER_ID
4306 NULL, -- DRAWEE_CUSTOMER_ID
4307 NULL, -- PAYING_CUSTOMER_ID
4308 NULL, -- SOLD_CUSTOMER_ID
4309 NULL, -- SHIP_CUSTOMER_ID
4310 NULL, -- REMIT_ADDRESS_ID
4311 NULL, -- RECEIPT_BATCH_ID
4312 NULL, -- RECEIVABLE_APPLICATION_ID
4313 NULL, -- CUSTOMER_BANK_BRANCH_ID
4314 NULL, -- ISSUER_BANK_BRANCH_ID
4315 NULL, -- BATCH_SOURCE_ID
4316 NULL, -- BATCH_ID
4317 NULL, -- TERM_ID
4318 'N', -- SELECT_FLAG
4319 'L', -- LEVEL_FLAG
4320 '' , -- FROM_TO_FLAG
4321 crh.status, -- CRH_STATUS
4322 pcrh.status, -- CRH_PRV_STATUS
4323 NVL(dist.amount_cr,0)
4324 - NVL(dist.amount_dr,0) -- AMOUNT
4325 --{BUG#4356088
4326 ,gt.event_type_code
4327 ,gt.event_class_code
4328 ,gt.entity_code
4329 ,'N' --MFAR_ADDITIONAL_ENTRY
4330 --}
4331 FROM xla_events_gt gt,
4332 ar_cash_receipts_all cr,
4333 ar_cash_receipt_history_all crh,
4334 ar_distributions_all dist,
4335 gl_sets_of_books sob,
4336 ar_cash_receipt_history_all pcrh
4337 WHERE gt.event_type_code IN ( 'RECP_CREATE' ,'RECP_UPDATE' ,
4338 'MISC_RECP_CREATE' ,'MISC_RECP_UPDATE' ,
4339 --Uptake XLA Reversal 'RECP_REVERSE' ,'MISC_RECP_REVERSE' ,
4340 --5201086
4341 'RECP_RATE_ADJUST' ,'MISC_RECP_RATE_ADJUST')
4342 AND gt.application_id = p_application_id
4343 AND gt.event_id = crh.event_id
4344 AND crh.cash_receipt_id = cr.cash_receipt_id
4345 AND dist.source_table = 'CRH'
4346 AND dist.source_id = crh.cash_receipt_history_id
4347 AND cr.set_of_books_id = sob.set_of_books_id
4348 AND crh.prv_stat_cash_receipt_hist_id = pcrh.cash_receipt_history_id(+);
4349 --RateAdj
4350 -- AND crh.status = rateadj.status(+)
4351 -- AND crh.cash_receipt_id = rateadj.cash_receipt_id(+);
4352
4353
4354 --Extrating REVERSE
4355 -- Needs to return 1 distribution row in case of Cash Receipt life cycle
4356 -- AND DECODE(crh.status,'REVERSED','X',dist.source_type) =
4357 -- DECODE(crh.status,'CLEARED','CASH',
4358 -- 'CONFIRMED','CONFIRMATION',
4359 -- 'REMITTED','REMITTANCE',
4360 -- 'REVERSED','Y');
4361
4362 --{Insertion of UNAPP and UNID
4363 --Note all the UNAPP and UNID are inserted here
4364 INSERT INTO ar_xla_lines_extract (
4365 EVENT_ID
4366 ,LINE_NUMBER
4367 ,LANGUAGE
4368 ,LEDGER_ID
4369 ,SOURCE_ID
4370 ,SOURCE_TABLE
4371 ,LINE_ID
4372 ,TAX_CODE_ID
4373 ,LOCATION_SEGMENT_ID
4374 ,BASE_CURRENCY_CODE
4375 ,EXCHANGE_RATE_TYPE
4376 ,EXCHANGE_RATE
4377 ,EXCHANGE_DATE
4378 ,ACCTD_AMOUNT
4379 ,TAXABLE_ACCTD_AMOUNT
4380 ,ORG_ID
4381 ,HEADER_TABLE_ID
4382 ,POSTING_ENTITY
4383 ,CASH_RECEIPT_ID
4384 ,CUSTOMER_TRX_ID
4385 ,CUSTOMER_TRX_LINE_ID
4386 ,CUST_TRX_LINE_GL_DIST_ID
4387 ,CUST_TRX_LINE_SALESREP_ID
4388 ,INVENTORY_ITEM_ID
4389 ,SALES_TAX_ID
4390 ,SO_ORGANIZATION_ID
4391 ,TAX_EXEMPTION_ID
4392 ,UOM_CODE
4393 ,WAREHOUSE_ID
4394 ,AGREEMENT_ID
4395 ,CUSTOMER_BANK_ACCT_ID
4396 ,DRAWEE_BANK_ACCOUNT_ID
4397 ,REMITTANCE_BANK_ACCT_ID
4398 ,DISTRIBUTION_SET_ID
4399 ,PAYMENT_SCHEDULE_ID
4400 ,RECEIPT_METHOD_ID
4401 ,RECEIVABLES_TRX_ID
4402 ,ED_ADJ_RECEIVABLES_TRX_ID
4403 ,UNED_RECEIVABLES_TRX_ID
4404 ,SET_OF_BOOKS_ID
4405 ,SALESREP_ID
4406 ,BILL_SITE_USE_ID
4407 ,DRAWEE_SITE_USE_ID
4408 ,PAYING_SITE_USE_ID
4409 ,SOLD_SITE_USE_ID
4410 ,SHIP_SITE_USE_ID
4411 ,RECEIPT_CUSTOMER_SITE_USE_ID
4412 ,BILL_CUST_ROLE_ID
4413 ,DRAWEE_CUST_ROLE_ID
4414 ,SHIP_CUST_ROLE_ID
4415 ,SOLD_CUST_ROLE_ID
4416 ,BILL_CUSTOMER_ID
4417 ,DRAWEE_CUSTOMER_ID
4418 ,PAYING_CUSTOMER_ID
4419 ,SOLD_CUSTOMER_ID
4420 ,SHIP_CUSTOMER_ID
4421 ,REMIT_ADDRESS_ID
4422 ,RECEIPT_BATCH_ID
4423 ,RECEIVABLE_APPLICATION_ID
4424 ,CUSTOMER_BANK_BRANCH_ID
4425 ,ISSUER_BANK_BRANCH_ID
4426 ,BATCH_SOURCE_ID
4427 ,BATCH_ID
4428 ,TERM_ID
4429 ,SELECT_FLAG
4430 ,LEVEL_FLAG
4431 ,FROM_TO_FLAG
4432 ,CRH_STATUS
4433 ,CRH_PRV_STATUS
4434 ,AMOUNT
4435 --{BUG#4356088
4436 ,event_type_code
4437 ,event_class_code
4438 ,entity_code
4439 --}
4440 ,MFAR_ADDITIONAL_ENTRY
4441 ,FROM_ACCTD_AMOUNT --Bug7255483 Added new column for acctd amount
4442 )
4443 SELECT /*+LEADING(gt) cardinality(gt,1) USE_NL(gt,cr)*/
4444 gt.event_id, -- EVENT_ID
4445 dist.line_id, -- LINE_NUMBER
4446 '', -- LANGUAGE
4447 sob.set_of_books_id, -- LEDGER_ID
4448 dist.source_id, -- SOURCE_ID
4449 dist.source_table, -- SOURCE_TABLE
4450 dist.line_id, -- LINE_ID
4451 dist.tax_code_id, -- TAX_CODE_ID
4452 dist.location_segment_id, -- LOCATION_SEGMENT_ID
4453 sob.currency_code, -- BASE_CURRENCY
4454 --5201086
4455 crh.exchange_rate_type, -- EXCHANGE_RATE_TYPE
4456 crh.exchange_rate , -- EXCHANGE_RATE
4457 crh.exchange_date , -- EXCHANGE_DATE
4458 NVL(dist.acctd_amount_cr,0)
4459 - NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
4460 NVL(dist.taxable_accounted_cr,0)
4461 - NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
4462 cr.org_id, -- ORG_ID
4463 app.receivable_application_id, -- HEADER_TABLE_ID
4464 --{Although the UNAPP and UNID are distributions created from RA the posting entity is CRH
4465 -- but the source_table will be RA
4466 'CRH', -- POSTING_ENTITY
4467 --}
4468 cr.cash_receipt_id, -- CASH_RECEIPT_ID
4469 NULL, -- CUSTOMER_TRX_ID
4470 NULL, -- CUSTOMER_TRX_LINE_ID
4471 NULL, -- CUST_TRX_LINE_GL_DIST_ID
4472 NULL, -- CUST_TRX_LINE_SALESREP_ID
4473 NULL, -- INVENTORY_ITEM_ID
4474 NULL, -- SALES_TAX_ID
4475 NULL, -- SO_ORGANIZATION_ID
4476 NULL, -- TAX_EXEMPTION_ID
4477 NULL, -- UOM_CODE
4478 NULL, -- WAREHOUSE_ID
4479 NULL, -- AGREEMENT_ID
4480 NULL, -- CUSTOMER_BANK_ACCT_ID
4481 NULL, -- DRAWEE_BANK_ACCOUNT_ID
4482 NULL, -- REMITTANCE_BANK_ACCT_ID
4483 NULL, -- DISTRIBUTION_SET_ID
4484 NULL, -- PAYMENT_SCHEDULE_ID
4485 NULL, -- RECEIPT_METHOD_ID
4486 app.receivables_trx_id, -- RECEIVABLES_TRX_ID
4487 NULL, -- ED_ADJ_RECEIVABLES_TRX_ID
4488 NULL, -- UNED_RECEIVABLES_TRX_ID
4489 sob.set_of_books_id, -- SET_OF_BOOKS_ID
4490 NULL, -- SALESREP_ID
4491 NULL, -- BILL_SITE_USE_ID
4492 NULL, -- DRAWEE_SITE_USE_ID
4493 NULL, -- PAYING_SITE_USE_ID
4494 NULL, -- SOLD_SITE_USE_ID
4495 NULL, -- SHIP_SITE_USE_ID
4496 NULL, -- RECEIPT_CUSTOMER_SITE_USE_ID
4497 NULL, -- BILL_CUST_ROLE_ID
4498 NULL, -- DRAWEE_CUST_ROLE_ID
4499 NULL, -- SHIP_CUST_ROLE_ID
4500 NULL, -- SOLD_CUST_ROLE_ID
4501 NULL, -- BILL_CUSTOMER_ID
4502 NULL, -- DRAWEE_CUSTOMER_ID
4503 NULL, -- PAYING_CUSTOMER_ID
4504 NULL, -- SOLD_CUSTOMER_ID
4505 NULL, -- SHIP_CUSTOMER_ID
4506 NULL, -- REMIT_ADDRESS_ID
4507 NULL, -- RECEIPT_BATCH_ID
4508 app.receivable_application_id, -- RECEIVABLE_APPLICATION_ID
4509 NULL, -- CUSTOMER_BANK_BRANCH_ID
4510 NULL, -- ISSUER_BANK_BRANCH_ID
4511 NULL, -- BATCH_SOURCE_ID
4512 NULL, -- BATCH_ID
4513 NULL, -- TERM_ID
4514 'N', -- SELECT_FLAG
4515 'L', -- LEVEL_FLAG
4516 '' , -- FROM_TO_FLAG
4517 app.status, -- CRH_STATUS
4518 '', -- CRH_PRV_STATUS
4519 NVL(dist.amount_cr,0)
4520 - NVL(dist.amount_dr,0) -- AMOUNT
4521 --{BUG#4356088
4522 ,gt.event_type_code
4523 ,gt.event_class_code
4524 ,gt.entity_code
4525 ,'N' --MFAR_ADDITIONAL_ENTRY
4526 --}
4527 --Bug7255483 Added value for new column in the view
4528 ,DECODE(NVL(app.receivables_trx_id,0), -16,
4529 NVL(dist.from_acctd_amount_cr,0) - NVL(dist.from_acctd_amount_dr,0),to_number(NULL))
4530 FROM xla_events_gt gt,
4531 ar_cash_receipts_all cr,
4532 ar_cash_receipt_history_all crh,
4533 ar_receivable_applications_all app,
4534 ar_distributions_all dist,
4535 gl_sets_of_books sob
4536 WHERE gt.event_type_code IN ( 'RECP_CREATE' ,'RECP_UPDATE' ,
4537 'RECP_RATE_ADJUST' ) --Uptake XLA Reversal,'RECP_REVERSE' )
4538 AND gt.application_id = p_application_id
4539 AND cr.cash_receipt_id = gt.source_id_int_1
4540 AND gt.event_id = app.event_id
4541 AND app.status IN ('UNAPP','UNID',
4542 --{BUG#4960533
4543 'OTHER ACC',
4544 'ACC','BANK_CHARGES','ACTIVITY','SHORT_TERM_DEBT')
4545 --}
4546 AND dist.source_table = 'RA'
4547 AND dist.source_id = app.receivable_application_id
4548 AND cr.set_of_books_id = sob.set_of_books_id
4549 -- AND gt.event_id = crh.event_id(+)
4550 AND app.event_id = crh.event_id(+)
4551 AND app.cash_receipt_history_id = crh.cash_receipt_history_id (+)
4552 AND crh.status(+) NOT IN ('REVERSED');
4553
4554
4555
4556
4557 local_log(procedure_name => 'load_line_data_crh',
4558 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_date_crh ()-');
4559 EXCEPTION
4560 -- WHEN NO_DATA_FOUND THEN NULL;
4561 WHEN OTHERS THEN
4562 local_log(procedure_name => 'load_line_data_crh',
4563 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_crh '||
4564 arp_global.CRLF || 'Error :'|| SQLERRM);
4565 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
4566 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
4567 'Procedure :arp_xla_extract_main_pkg.load_line_data_crh'|| arp_global.CRLF||
4568 'Error :'||SQLERRM);
4569 FND_MSG_PUB.ADD;
4570 RAISE;
4571 END load_line_data_crh;
4572
4573 --------------------------------------------------------
4574 /*-----------------------------------------------------------------+
4575 | Procedure Name : mfar_hook |
4576 | Description : Extract line data for Cash Receipt events in MF|
4577 +-----------------------------------------------------------------+
4578 | History : |
4579 +-----------------------------------------------------------------*/
4580
4581 PROCEDURE mfar_hook(p_ledger_id IN NUMBER)
4582 IS
4583 CURSOR c IS
4584 SELECT NULL
4585 FROM gl_ledgers gl,
4586 xla_acctg_method_rules mr,
4587 xla_product_rules_tl pr
4588 WHERE gl.ledger_id = p_ledger_id
4589 AND mr.application_id = 222
4590 AND mr.accounting_method_code = gl.SLA_ACCOUNTING_METHOD_CODE
4591 AND mr.product_rule_code = pr.product_rule_code
4592 AND mr.product_rule_code = 'MFAR_ACCRUAL_ACCOUNT'
4593 AND pr.language = USERENV('LANG')
4594 AND SYSDATE BETWEEN mr.start_date_active AND NVL(mr.end_date_active, SYSDATE);
4595 l_res VARCHAR2(1);
4596 l_execution VARCHAR2(1) := 'N';
4597 BEGIN
4598 local_log(procedure_name => 'mfar_hook',
4599 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_hook ()+');
4600 IF NVL(FND_PROFILE.value('AR_MFAR_ACTIVATED'), 'N') = 'N' THEN
4601 l_execution := 'N';
4602 ELSE
4603 l_execution := 'Y';
4604 END IF;
4605
4606 IF l_execution = 'Y' THEN
4607
4608 -- Get all the CMAPP with curr round and populate cm_app_to_trx_line_id if required
4609 mfar_cmapp_fetch;
4610 -- Get all the applications of receipts being processed
4611 mfar_app_dist_cr;
4612 -- Get all CRH being currently post
4613 mfar_crh_dist;
4614 -- Create the times of additional distributions for CRH
4615 mfar_produit_app_by_crh;
4616 --Create additional_distribution_for_ra
4617 mfar_get_ra;
4618 --Avoid contention between Cash Receipt and MCD
4619 DELETE FROM ar_crh_app_gt;
4620 -- Get all Misc Cash Distributions for the Misc receipts
4621 mfar_mcd_dist_cr;
4622 -- Create the times of addition distribution for MCD
4623 mfar_produit_mcd_by_crh;
4624 -- Calculate and insert prorated MFAR additional entries for On-Account CM Applications
4625 mfar_cmapp_from_to;
4626 -- Calculate the currency rounding accounted amounts at line level for CM Apps
4627 mfar_cmapp_curr_round;
4628 -- Calculate the currency rounding accounted amounts at line level for RCT Apps
4629 mfar_rctapp_curr_round;
4630
4631 END IF;
4632 local_log(procedure_name => 'mfar_hook',
4633 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_hook ()-');
4634 EXCEPTION
4635 -- WHEN NO_DATA_FOUND THEN NULL;
4636 WHEN OTHERS THEN
4637 local_log(procedure_name => 'mfar_hook',
4638 p_msg_text => 'EXCEPTION OTHERS in mfar_hook '||
4639 arp_global.CRLF || 'Error :'|| SQLERRM);
4640 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
4641 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
4642 'Procedure :arp_xla_extract_main_pkg.mfar_hook'|| arp_global.CRLF||
4643 'Error :'||SQLERRM);
4644 FND_MSG_PUB.ADD;
4645 RAISE;
4646 END mfar_hook;
4647
4648
4649 /*---------------------------------------------------------------------------+
4650 | Procedure Name : mfar_cmapp_fetch
4651 | Description : Fetch all the foreign currency On-Account CM application
4652 | records with CURR_ROUND and EXCH_GAIN_LOSS in ARD and call
4653 | the update procedure.
4654 +----------------------------------------------------------------------------+
4655 | History :
4656 | 10-AUG-2010 Ram Manikandan Created due to bug#10047351
4657 +---------------------------------------------------------------------------*/
4658
4659 PROCEDURE mfar_cmapp_fetch
4660 IS
4661
4662 -- Cursor to fetch the foreign currency on-account CM applications with CURR_ROUND
4663 CURSOR cmapp_curr_round_cur IS
4664 SELECT ext1.event_id, ext1.source_id, ext1.amount, ext1.acctd_amount FROM ar_xla_lines_extract ext1
4665 WHERE ext1.source_type='CURR_ROUND'
4666 AND ext1.source_table = 'RA'
4667 AND ext1.mfar_additional_entry ='N'
4668 AND ext1.event_class_code = 'CREDIT_MEMO'
4669 AND NOT EXISTS
4670 (SELECT 1 FROM ar_xla_lines_extract ext2
4671 WHERE ext2.event_id = ext1.event_id
4672 AND ext2.source_id = ext1.source_id
4673 AND ext2.source_table = 'RA'
4674 AND ext2.source_type = 'REC'
4675 AND ext2.mfar_additional_entry ='N'
4676 AND ext2.event_class_code = 'CREDIT_MEMO'
4677 AND ext2.cm_app_to_trx_line_id IS NOT NULL)
4678 ORDER BY ext1.event_id, ext1.source_id;
4679
4680 -- Cursor to fetch the foreign currency on-account CM applications with EXCHG_GAIN_LOSS
4681 CURSOR cmapp_exch_rate_cur IS
4682 SELECT DISTINCT ext1.event_id, ext1.source_id,0,0
4683 FROM ar_xla_lines_extract ext1
4684 WHERE ext1.exchange_rate IS NOT NULL
4685 AND ext1.source_table = 'RA'
4686 AND ext1.mfar_additional_entry ='N'
4687 AND ext1.event_class_code = 'CREDIT_MEMO'
4688 AND NOT EXISTS
4689 (SELECT 1 FROM ar_xla_lines_extract ext2
4690 WHERE ext2.event_id = ext1.event_id
4691 AND ext2.source_id = ext1.source_id
4692 AND ext2.source_table = 'RA'
4693 AND ext2.source_type = 'REC'
4694 AND ext2.mfar_additional_entry ='N'
4695 AND ext2.event_class_code = 'CREDIT_MEMO'
4696 AND ext2.cm_app_to_trx_line_id IS NOT NULL
4697 UNION ALL
4698 SELECT 1 FROM ar_xla_lines_extract ext3
4699 WHERE ext3.event_id = ext1.event_id
4700 AND ext3.source_id = ext1.source_id
4701 AND ext3.source_type = 'CURR_ROUND'
4702 AND ext3.source_table = 'RA'
4703 AND ext3.mfar_additional_entry ='N'
4704 AND ext3.event_class_code = 'CREDIT_MEMO')
4705 ORDER BY ext1.event_id, ext1.source_id;
4706
4707 l_cmapp_curr_round_tab cmapp_curr_round_tab;
4708 BEGIN
4709
4710 local_log(procedure_name => 'mfar_cmapp_fetch',
4711 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_cmapp_fetch ()+');
4712
4713 OPEN cmapp_curr_round_cur;
4714 LOOP
4715 fetch cmapp_curr_round_cur bulk collect into l_cmapp_curr_round_tab LIMIT MAX_ARRAY_SIZE;
4716 exit when cmapp_curr_round_cur%NOTFOUND;
4717 end loop;
4718 close cmapp_curr_round_cur;
4719
4720 local_log(procedure_name => 'mfar_cmapp_fetch',
4721 p_msg_text => 'No. of curr_round rows: '|| l_cmapp_curr_round_tab.count);
4722
4723 -- If there exists applications with CURR_ROUND, call the mfar_cmapp_trx_update procedure
4724 -- for each source id with CURR_ROUND as a parameter
4725 IF l_cmapp_curr_round_tab.count > 0 THEN
4726
4727 FOR i in l_cmapp_curr_round_tab.FIRST..l_cmapp_curr_round_tab.LAST
4728 LOOP
4729 mfar_cmapp_trx_update(l_cmapp_curr_round_tab(i), 'CURR_ROUND');
4730 END LOOP;
4731
4732 END IF;
4733
4734
4735 OPEN cmapp_exch_rate_cur;
4736 LOOP
4737 fetch cmapp_exch_rate_cur bulk collect into l_cmapp_curr_round_tab LIMIT MAX_ARRAY_SIZE;
4738 exit when cmapp_exch_rate_cur%NOTFOUND;
4739 end loop;
4740 close cmapp_exch_rate_cur;
4741
4742 local_log(procedure_name => 'mfar_cmapp_fetch',
4743 p_msg_text => 'No. of Exchange_rate rows: '|| l_cmapp_curr_round_tab.count);
4744
4745 -- If there exists applications with EXCH_GAIN_LOSS, call the mfar_cmapp_trx_update procedure
4746 -- for each source id with EXCHG_GAIN_LOSS as a parameter
4747 IF l_cmapp_curr_round_tab.count > 0 THEN
4748
4749 FOR i in l_cmapp_curr_round_tab.FIRST..l_cmapp_curr_round_tab.LAST
4750 LOOP
4751 mfar_cmapp_trx_update(l_cmapp_curr_round_tab(i), 'EXCHG_GAIN_LOSS');
4752 END LOOP;
4753
4754 END IF;
4755
4756 local_log(procedure_name => 'mfar_cmapp_fetch',
4757 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_cmapp_fetch ()-');
4758 EXCEPTION
4759 -- WHEN NO_DATA_FOUND THEN NULL;
4760 WHEN OTHERS THEN
4761 local_log(procedure_name => 'mfar_cmapp_fetch',
4762 p_msg_text => 'EXCEPTION OTHERS in mfar_cmapp_fetch '||
4763 arp_global.CRLF || 'Error :'|| SQLERRM);
4764 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
4765 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
4766 'Procedure :arp_xla_extract_main_pkg.mfar_cmapp_fetch'|| arp_global.CRLF||
4767 'Error :'||SQLERRM);
4768 FND_MSG_PUB.ADD;
4769 RAISE;
4770
4771 END;
4772
4773 /*---------------------------------------------------------------------------+
4774 | Procedure Name : mfar_cmapp_trx_update
4775 | Description : Check if the CM and Invoice are of same funds and ratio.
4776 | If p_call is CURR_ROUND, check if the difference in
4777 | acctd_amounts is equal to CURR_ROUND else if p_call is
4778 | EXCHG_GAIN_LOSS, check if the amounts are equal.
4779 | If any of the above conditions fail, return from the
4780 | procedure, else update the column cm_app_to_trx_line_id
4781 | so that it behaves as a Regular CM from now on.
4782 +----------------------------------------------------------------------------+
4783 | History :
4784 | 10-AUG-2010 Ram Manikandan Created due to bug#10047351
4785 +---------------------------------------------------------------------------*/
4786
4787 PROCEDURE mfar_cmapp_trx_update(p_cmapp_curr_round IN cmapp_curr_round, p_call IN VARCHAR2) IS
4788
4789 CURSOR cmapp_rec_cur (p_source_id NUMBER, p_from_to_flag VARCHAR2) IS
4790 SELECT bal_seg_value, sum(amount), sum(acctd_amount), min(customer_trx_line_id)
4791 FROM ar_xla_lines_extract
4792 WHERE source_id = p_source_id
4793 AND source_table = 'RA'
4794 AND posting_entity = 'APP'
4795 AND event_class_code = 'CREDIT_MEMO'
4796 AND source_type = 'REC'
4797 AND mfar_additional_entry = 'N'
4798 AND cm_app_to_trx_line_id IS NULL
4799 AND from_to_flag = p_from_to_flag
4800 GROUP BY bal_seg_value
4801 ORDER BY bal_seg_value;
4802
4803 l_cmapp_rec_record_tab_f cmapp_rec_record_tab;
4804 l_cmapp_rec_record_tab_t cmapp_rec_record_tab;
4805
4806 local_round NUMBER;
4807
4808 BEGIN
4809
4810 local_log(procedure_name => 'mfar_cmapp_trx_update',
4811 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_cmapp_trx_update ()+');
4812
4813 local_round := p_cmapp_curr_round.acctd_amount;
4814
4815 local_log(procedure_name => 'mfar_cmapp_trx_update',
4816 p_msg_text => 'Source ID: '||p_cmapp_curr_round.source_id);
4817 local_log(procedure_name => 'mfar_cmapp_trx_update',
4818 p_msg_text => 'Local Round: '||local_round);
4819
4820 -- Fetch the FROM and TO set of lines for on-account CMs
4821 OPEN cmapp_rec_cur(p_cmapp_curr_round.source_id, 'F');
4822 LOOP
4823 FETCH cmapp_rec_cur bulk collect into l_cmapp_rec_record_tab_f LIMIT MAX_ARRAY_SIZE;
4824 exit when cmapp_rec_cur%NOTFOUND;
4825 end loop;
4826 close cmapp_rec_cur;
4827
4828 OPEN cmapp_rec_cur(p_cmapp_curr_round.source_id, 'T');
4829 LOOP
4830 FETCH cmapp_rec_cur bulk collect into l_cmapp_rec_record_tab_t LIMIT MAX_ARRAY_SIZE;
4831 exit when cmapp_rec_cur%NOTFOUND;
4832 end loop;
4833 close cmapp_rec_cur;
4834
4835 local_log(procedure_name => 'mfar_cmapp_trx_update',
4836 p_msg_text => 'From count: '||l_cmapp_rec_record_tab_f.count);
4837 local_log(procedure_name => 'mfar_cmapp_trx_update',
4838 p_msg_text => 'To count: '||l_cmapp_rec_record_tab_t.count);
4839
4840 -- Check if there are same number of lines in both the records to ensure that there are same funds used
4841 IF l_cmapp_rec_record_tab_f.count = 0
4842 OR l_cmapp_rec_record_tab_t.count = 0
4843 OR l_cmapp_rec_record_tab_f.count <> l_cmapp_rec_record_tab_t.count THEN
4844 RETURN;
4845 END IF;
4846
4847 FOR i IN l_cmapp_rec_record_tab_f.FIRST..l_cmapp_rec_record_tab_f.LAST
4848 LOOP
4849
4850 -- Check if the FUNDS are same
4851 IF l_cmapp_rec_record_tab_f(i).bal_seg_value <> l_cmapp_rec_record_tab_t(i).bal_seg_value THEN
4852 RETURN;
4853 END IF;
4854
4855 IF p_call = 'CURR_ROUND' THEN
4856 -- Check if the difference is equal to CURR_ROUND
4857 IF ABS(l_cmapp_rec_record_tab_f(i).acctd_amount+l_cmapp_rec_record_tab_t(i).acctd_amount) = ABS(local_round) THEN
4858 local_round := 0;
4859 ELSIF ABS(l_cmapp_rec_record_tab_f(i).acctd_amount+l_cmapp_rec_record_tab_t(i).acctd_amount) <> 0 THEN
4860 RETURN;
4861 END IF;
4862 ELSIF p_call = 'EXCHG_GAIN_LOSS' THEN
4863 -- This is exchange rate case. If amounts are matching fund wise then convert it to Regular CM
4864 IF ABS(l_cmapp_rec_record_tab_f(i).amount+l_cmapp_rec_record_tab_t(i).amount) <> 0 THEN
4865 RETURN;
4866 END IF;
4867 END IF;
4868
4869 END LOOP;
4870
4871 -- Update the column cm_app_to_trx_line_id with appropriate value so that the
4872 -- CM accounting happens as for a regular CM from now on.
4873 FOR j in l_cmapp_rec_record_tab_t.FIRST..l_cmapp_rec_record_tab_t.LAST LOOP
4874 UPDATE ar_xla_lines_extract
4875 SET cm_app_to_trx_line_id = l_cmapp_rec_record_tab_t(j).cust_trx_line_id
4876 WHERE source_id = p_cmapp_curr_round.source_id
4877 AND bal_seg_value = l_cmapp_rec_record_tab_t(j).bal_seg_value
4878 AND source_type = 'REC'
4879 AND event_class_code = 'CREDIT_MEMO';
4880 END LOOP;
4881
4882 local_log(procedure_name => 'mfar_cmapp_trx_update',
4883 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_cmapp_trx_update ()-');
4884
4885 EXCEPTION
4886 -- WHEN NO_DATA_FOUND THEN NULL;
4887 WHEN OTHERS THEN
4888 local_log(procedure_name => 'mfar_cmapp_trx_update',
4889 p_msg_text => 'EXCEPTION OTHERS in mfar_cmapp_trx_update '||
4890 arp_global.CRLF || 'Error :'|| SQLERRM);
4891 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
4892 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
4893 'Procedure :arp_xla_extract_main_pkg.mfar_cmapp_trx_update'|| arp_global.CRLF||
4894 'Error :'||SQLERRM);
4895 FND_MSG_PUB.ADD;
4896 RAISE;
4897
4898 END;
4899
4900 /*---------------------------------------------------------------------------+
4901 | Procedure Name : mfar_cmapp_curr_round
4902 | Description : Calculates the Line Level Currency Rounding for both
4903 | Regular and On-Account Credit Memo Applications for MFAR
4904 | Customers.
4905 +----------------------------------------------------------------------------+
4906 | History :
4907 | 10-AUG-2010 Ram Manikandan Created due to bug#9860123
4908 | 02-SEP-2010 Ram Manikandan Modified for bug#10047351
4909 +---------------------------------------------------------------------------*/
4910
4911 PROCEDURE mfar_cmapp_curr_round
4912 IS
4913 BEGIN
4914
4915 local_log(procedure_name => 'mfar_reg_cmapp_curr_round',
4916 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_reg_cmapp_curr_round ()+');
4917
4918 -- Insert MFAR CURR_ROUND rows for regular Credit Memos
4919 INSERT INTO ar_xla_lines_extract (
4920 EVENT_ID
4921 ,LINE_NUMBER
4922 ,LANGUAGE
4923 ,LEDGER_ID
4924 ,SOURCE_ID
4925 ,SOURCE_TABLE
4926 ,LINE_ID
4927 ,TAX_CODE_ID
4928 ,LOCATION_SEGMENT_ID
4929 ,BASE_CURRENCY_CODE
4930 ,EXCHANGE_RATE_TYPE
4931 ,EXCHANGE_RATE
4932 ,EXCHANGE_DATE
4933 ,ACCTD_AMOUNT
4934 ,TAXABLE_ACCTD_AMOUNT
4935 ,ORG_ID
4936 ,HEADER_TABLE_ID
4937 ,POSTING_ENTITY
4938 ,CASH_RECEIPT_ID
4939 ,CUSTOMER_TRX_ID
4940 ,CUSTOMER_TRX_LINE_ID
4941 ,CUST_TRX_LINE_GL_DIST_ID
4942 ,CUST_TRX_LINE_SALESREP_ID
4943 ,INVENTORY_ITEM_ID
4944 ,SALES_TAX_ID
4945 ,SO_ORGANIZATION_ID
4946 ,TAX_EXEMPTION_ID
4947 ,UOM_CODE
4948 ,WAREHOUSE_ID
4949 ,AGREEMENT_ID
4950 ,CUSTOMER_BANK_ACCT_ID
4951 ,DRAWEE_BANK_ACCOUNT_ID
4952 ,REMITTANCE_BANK_ACCT_ID
4953 ,DISTRIBUTION_SET_ID
4954 ,PAYMENT_SCHEDULE_ID
4955 ,RECEIPT_METHOD_ID
4956 ,RECEIVABLES_TRX_ID
4957 ,ED_ADJ_RECEIVABLES_TRX_ID
4958 ,UNED_RECEIVABLES_TRX_ID
4959 ,SET_OF_BOOKS_ID
4960 ,SALESREP_ID
4961 ,BILL_SITE_USE_ID
4962 ,DRAWEE_SITE_USE_ID
4963 ,PAYING_SITE_USE_ID
4964 ,SOLD_SITE_USE_ID
4965 ,SHIP_SITE_USE_ID
4966 ,RECEIPT_CUSTOMER_SITE_USE_ID
4967 ,BILL_CUST_ROLE_ID
4968 ,DRAWEE_CUST_ROLE_ID
4969 ,SHIP_CUST_ROLE_ID
4970 ,SOLD_CUST_ROLE_ID
4971 ,BILL_CUSTOMER_ID
4972 ,DRAWEE_CUSTOMER_ID
4973 ,PAYING_CUSTOMER_ID
4974 ,SOLD_CUSTOMER_ID
4975 ,SHIP_CUSTOMER_ID
4976 ,REMIT_ADDRESS_ID
4977 ,RECEIPT_BATCH_ID
4978 ,RECEIVABLE_APPLICATION_ID
4979 ,CUSTOMER_BANK_BRANCH_ID
4980 ,ISSUER_BANK_BRANCH_ID
4981 ,BATCH_SOURCE_ID
4982 ,BATCH_ID
4983 ,TERM_ID
4984 ,SELECT_FLAG
4985 ,LEVEL_FLAG
4986 ,FROM_TO_FLAG
4987 ,CRH_STATUS
4988 ,CRH_PRV_STATUS
4989 ,AMOUNT
4990 ,FROM_AMOUNT
4991 ,FROM_ACCTD_AMOUNT
4992 ,PREV_FUND_SEG_REPLACE
4993 ,APP_CRH_STATUS
4994 ,PAIRED_CCID
4995 ,PAIRE_DIST_ID
4996 ,REF_DIST_CCID
4997 ,REF_MF_DIST_FLAG
4998 ,ORIGIN_EXTRACT_TABLE
4999 ,EVENT_TYPE_CODE
5000 ,EVENT_CLASS_CODE
5001 ,ENTITY_CODE
5002 ,REVERSAL_CODE
5003 ,BUSINESS_FLOW_CODE
5004 ,TAX_LINE_ID
5005 ,ADDITIONAL_CHAR1
5006 ,ADDITIONAL_CHAR2
5007 ,ADDITIONAL_CHAR3
5008 ,ADDITIONAL_CHAR4
5009 ,ADDITIONAL_CHAR5
5010 ,CM_APP_TO_TRX_LINE_ID
5011 ,ADDITIONAL_ID2
5012 ,ADDITIONAL_ID3
5013 ,ADDITIONAL_ID4
5014 ,ADDITIONAL_ID5
5015 ,XLA_ENTITY_ID
5016 ,REF_CTLGD_CCID
5017 ,DIST_CCID
5018 ,FROM_EXCHANGE_RATE
5019 ,FROM_EXCHANGE_RATE_TYPE
5020 ,FROM_EXCHANGE_DATE
5021 ,FROM_CURRENCY_CODE
5022 ,TO_CURRENCY_CODE
5023 ,MFAR_ADDITIONAL_ENTRY
5024 ,THIRD_PARTY_ID
5025 ,THIRD_PARTY_SITE_ID
5026 ,THIRD_PARTY_TYPE
5027 ,SOURCE_TYPE )
5028 SELECT l.EVENT_ID
5029 ,-1 * ar_mfar_extract_s.nextval
5030 ,l.LANGUAGE
5031 ,l.LEDGER_ID
5032 ,l.SOURCE_ID
5033 ,l.SOURCE_TABLE
5034 ,l.LINE_ID
5035 ,l.TAX_CODE_ID
5036 ,l.LOCATION_SEGMENT_ID
5037 ,l.BASE_CURRENCY_CODE
5038 ,l.EXCHANGE_RATE_TYPE
5039 ,l.EXCHANGE_RATE
5040 ,l.EXCHANGE_DATE
5041 ,curr.ACCTD_AMT
5042 ,l.TAXABLE_ACCTD_AMOUNT
5043 ,l.ORG_ID
5044 ,l.HEADER_TABLE_ID
5045 ,l.POSTING_ENTITY
5046 ,l.CASH_RECEIPT_ID
5047 ,l.CUSTOMER_TRX_ID
5048 ,l.CUSTOMER_TRX_LINE_ID
5049 ,l.CUST_TRX_LINE_GL_DIST_ID
5050 ,l.CUST_TRX_LINE_SALESREP_ID
5051 ,l.INVENTORY_ITEM_ID
5052 ,l.SALES_TAX_ID
5053 ,l.SO_ORGANIZATION_ID
5054 ,l.TAX_EXEMPTION_ID
5055 ,l.UOM_CODE
5056 ,l.WAREHOUSE_ID
5057 ,l.AGREEMENT_ID
5058 ,l.CUSTOMER_BANK_ACCT_ID
5059 ,l.DRAWEE_BANK_ACCOUNT_ID
5060 ,l.REMITTANCE_BANK_ACCT_ID
5061 ,l.DISTRIBUTION_SET_ID
5062 ,l.PAYMENT_SCHEDULE_ID
5063 ,l.RECEIPT_METHOD_ID
5064 ,l.RECEIVABLES_TRX_ID
5065 ,l.ED_ADJ_RECEIVABLES_TRX_ID
5066 ,l.UNED_RECEIVABLES_TRX_ID
5067 ,l.SET_OF_BOOKS_ID
5068 ,l.SALESREP_ID
5069 ,l.BILL_SITE_USE_ID
5070 ,l.DRAWEE_SITE_USE_ID
5071 ,l.PAYING_SITE_USE_ID
5072 ,l.SOLD_SITE_USE_ID
5073 ,l.SHIP_SITE_USE_ID
5074 ,l.RECEIPT_CUSTOMER_SITE_USE_ID
5075 ,l.BILL_CUST_ROLE_ID
5076 ,l.DRAWEE_CUST_ROLE_ID
5077 ,l.SHIP_CUST_ROLE_ID
5078 ,l.SOLD_CUST_ROLE_ID
5079 ,l.BILL_CUSTOMER_ID
5080 ,l.DRAWEE_CUSTOMER_ID
5081 ,l.PAYING_CUSTOMER_ID
5082 ,l.SOLD_CUSTOMER_ID
5083 ,l.SHIP_CUSTOMER_ID
5084 ,l.REMIT_ADDRESS_ID
5085 ,l.RECEIPT_BATCH_ID
5086 ,l.RECEIVABLE_APPLICATION_ID
5087 ,l.CUSTOMER_BANK_BRANCH_ID
5088 ,l.ISSUER_BANK_BRANCH_ID
5089 ,l.BATCH_SOURCE_ID
5090 ,l.BATCH_ID
5091 ,l.TERM_ID
5092 ,l.SELECT_FLAG
5093 ,l.LEVEL_FLAG
5094 ,l.FROM_TO_FLAG
5095 ,l.CRH_STATUS
5096 ,l.CRH_PRV_STATUS
5097 ,curr.AMOUNT
5098 ,curr.FROM_AMOUNT
5099 ,curr.FROM_ACCTD_AMT
5100 ,l.PREV_FUND_SEG_REPLACE
5101 ,l.APP_CRH_STATUS
5102 ,l.PAIRED_CCID
5103 ,l.PAIRE_DIST_ID
5104 ,l.REF_DIST_CCID
5105 ,l.REF_MF_DIST_FLAG
5106 ,l.ORIGIN_EXTRACT_TABLE
5107 ,l.EVENT_TYPE_CODE
5108 ,l.EVENT_CLASS_CODE
5109 ,l.ENTITY_CODE
5110 ,l.REVERSAL_CODE
5111 ,l.BUSINESS_FLOW_CODE
5112 ,l.TAX_LINE_ID
5113 ,l.ADDITIONAL_CHAR1
5114 ,l.ADDITIONAL_CHAR2
5115 ,l.ADDITIONAL_CHAR3
5116 ,l.ADDITIONAL_CHAR4
5117 ,l.ADDITIONAL_CHAR5
5118 ,l.CM_APP_TO_TRX_LINE_ID
5119 ,l.ADDITIONAL_ID2
5120 ,l.ADDITIONAL_ID3
5121 ,l.ADDITIONAL_ID4
5122 ,l.ADDITIONAL_ID5
5123 ,l.XLA_ENTITY_ID
5124 ,l.REF_CTLGD_CCID
5125 ,ard.code_combination_id
5126 ,l.FROM_EXCHANGE_RATE
5127 ,l.FROM_EXCHANGE_RATE_TYPE
5128 ,l.FROM_EXCHANGE_DATE
5129 ,l.FROM_CURRENCY_CODE
5130 ,l.TO_CURRENCY_CODE
5131 ,'Y'
5132 ,l.THIRD_PARTY_ID
5133 ,l.THIRD_PARTY_SITE_ID
5134 ,l.THIRD_PARTY_TYPE
5135 ,'CURR_ROUND'
5136 FROM AR_XLA_LINES_EXTRACT l,
5137 (SELECT
5138 event_id,
5139 source_id,
5140 CM_APP_TO_TRX_LINE_ID,
5141 sum(-1*ACCTD_AMOUNT) ACCTD_AMT,
5142 sum(-1*FROM_ACCTD_AMOUNT) FROM_ACCTD_AMT,
5143 sum(AMOUNT) AMOUNT,
5144 sum(FROM_AMOUNT) FROM_AMOUNT
5145 FROM ar_xla_lines_extract
5146 WHERE POSTING_ENTITY = 'APP'
5147 AND CUSTOMER_TRX_LINE_ID is not null
5148 AND source_type = 'REC'
5149 AND MFAR_ADDITIONAL_ENTRY = 'N'
5150 GROUP BY event_id, source_id, CM_APP_TO_TRX_LINE_ID
5151 HAVING sum(ACCTD_AMOUNT) <> 0 AND sum(AMOUNT) = 0
5152 ) curr,
5153 AR_DISTRIBUTIONS_ALL ard
5154 WHERE l.MFAR_ADDITIONAL_ENTRY = 'N'
5155 AND l.FROM_TO_FLAG = 'T'
5156 AND l.LEVEL_FLAG = 'L'
5157 AND l.event_id = curr.event_id
5158 AND l.source_id = curr.source_id
5159 AND l.CUSTOMER_TRX_LINE_ID = curr.CM_APP_TO_TRX_LINE_ID
5160 AND l.source_type = 'REC'
5161 AND l.source_id = ard.source_id
5162 AND ard.source_table = 'RA'
5163 AND ard.source_type = 'CURR_ROUND';
5164
5165 -- Insert MFAR CURR_ROUND rows for on-account Credit Memos
5166 INSERT INTO ar_xla_lines_extract (
5167 EVENT_ID
5168 ,LINE_NUMBER
5169 ,LANGUAGE
5170 ,LEDGER_ID
5171 ,SOURCE_ID
5172 ,SOURCE_TABLE
5173 ,LINE_ID
5174 ,TAX_CODE_ID
5175 ,LOCATION_SEGMENT_ID
5176 ,BASE_CURRENCY_CODE
5177 ,EXCHANGE_RATE_TYPE
5178 ,EXCHANGE_RATE
5179 ,EXCHANGE_DATE
5180 ,ACCTD_AMOUNT
5181 ,TAXABLE_ACCTD_AMOUNT
5182 ,ORG_ID
5183 ,HEADER_TABLE_ID
5184 ,POSTING_ENTITY
5185 ,CASH_RECEIPT_ID
5186 ,CUSTOMER_TRX_ID
5187 ,CUSTOMER_TRX_LINE_ID
5188 ,CUST_TRX_LINE_GL_DIST_ID
5189 ,CUST_TRX_LINE_SALESREP_ID
5190 ,INVENTORY_ITEM_ID
5191 ,SALES_TAX_ID
5192 ,SO_ORGANIZATION_ID
5193 ,TAX_EXEMPTION_ID
5194 ,UOM_CODE
5195 ,WAREHOUSE_ID
5196 ,AGREEMENT_ID
5197 ,CUSTOMER_BANK_ACCT_ID
5198 ,DRAWEE_BANK_ACCOUNT_ID
5199 ,REMITTANCE_BANK_ACCT_ID
5200 ,DISTRIBUTION_SET_ID
5201 ,PAYMENT_SCHEDULE_ID
5202 ,RECEIPT_METHOD_ID
5203 ,RECEIVABLES_TRX_ID
5204 ,ED_ADJ_RECEIVABLES_TRX_ID
5205 ,UNED_RECEIVABLES_TRX_ID
5206 ,SET_OF_BOOKS_ID
5207 ,SALESREP_ID
5208 ,BILL_SITE_USE_ID
5209 ,DRAWEE_SITE_USE_ID
5210 ,PAYING_SITE_USE_ID
5211 ,SOLD_SITE_USE_ID
5212 ,SHIP_SITE_USE_ID
5213 ,RECEIPT_CUSTOMER_SITE_USE_ID
5214 ,BILL_CUST_ROLE_ID
5215 ,DRAWEE_CUST_ROLE_ID
5216 ,SHIP_CUST_ROLE_ID
5217 ,SOLD_CUST_ROLE_ID
5218 ,BILL_CUSTOMER_ID
5219 ,DRAWEE_CUSTOMER_ID
5220 ,PAYING_CUSTOMER_ID
5221 ,SOLD_CUSTOMER_ID
5222 ,SHIP_CUSTOMER_ID
5223 ,REMIT_ADDRESS_ID
5224 ,RECEIPT_BATCH_ID
5225 ,RECEIVABLE_APPLICATION_ID
5226 ,CUSTOMER_BANK_BRANCH_ID
5227 ,ISSUER_BANK_BRANCH_ID
5228 ,BATCH_SOURCE_ID
5229 ,BATCH_ID
5230 ,TERM_ID
5231 ,SELECT_FLAG
5232 ,LEVEL_FLAG
5233 ,FROM_TO_FLAG
5234 ,CRH_STATUS
5235 ,CRH_PRV_STATUS
5236 ,AMOUNT
5237 ,FROM_AMOUNT
5238 ,FROM_ACCTD_AMOUNT
5239 ,PREV_FUND_SEG_REPLACE
5240 ,APP_CRH_STATUS
5241 ,PAIRED_CCID
5242 ,PAIRE_DIST_ID
5243 ,REF_DIST_CCID
5244 ,REF_MF_DIST_FLAG
5245 ,ORIGIN_EXTRACT_TABLE
5246 ,EVENT_TYPE_CODE
5247 ,EVENT_CLASS_CODE
5248 ,ENTITY_CODE
5249 ,REVERSAL_CODE
5250 ,BUSINESS_FLOW_CODE
5251 ,TAX_LINE_ID
5252 ,ADDITIONAL_CHAR1
5253 ,ADDITIONAL_CHAR2
5254 ,ADDITIONAL_CHAR3
5255 ,ADDITIONAL_CHAR4
5256 ,ADDITIONAL_CHAR5
5257 ,ADDITIONAL_ID1
5258 ,ADDITIONAL_ID2
5259 ,ADDITIONAL_ID3
5260 ,ADDITIONAL_ID4
5261 ,ADDITIONAL_ID5
5262 ,XLA_ENTITY_ID
5263 ,REF_CTLGD_CCID
5264 ,DIST_CCID
5265 ,FROM_EXCHANGE_RATE
5266 ,FROM_EXCHANGE_RATE_TYPE
5267 ,FROM_EXCHANGE_DATE
5268 ,FROM_CURRENCY_CODE
5269 ,TO_CURRENCY_CODE
5270 ,MFAR_ADDITIONAL_ENTRY
5271 ,THIRD_PARTY_ID
5272 ,THIRD_PARTY_SITE_ID
5273 ,THIRD_PARTY_TYPE
5274 ,SOURCE_TYPE )
5275 SELECT l.EVENT_ID
5276 ,-1 * ar_mfar_extract_s.nextval
5277 ,l.LANGUAGE
5278 ,l.LEDGER_ID
5279 ,l.SOURCE_ID
5280 ,l.SOURCE_TABLE
5281 ,l.LINE_ID
5282 ,l.TAX_CODE_ID
5283 ,l.LOCATION_SEGMENT_ID
5284 ,l.BASE_CURRENCY_CODE
5285 ,l.EXCHANGE_RATE_TYPE
5286 ,l.EXCHANGE_RATE
5287 ,l.EXCHANGE_DATE
5288 ,curr.CURR_ROUND_ACCTD_AMT FROM_ACCTD_AMOUNT -- Currency Rounding Amount
5289 ,l.TAXABLE_ACCTD_AMOUNT
5290 ,l.ORG_ID
5291 ,l.HEADER_TABLE_ID
5292 ,l.POSTING_ENTITY
5293 ,l.CASH_RECEIPT_ID
5294 ,l.CUSTOMER_TRX_ID
5295 ,l.CUSTOMER_TRX_LINE_ID
5296 ,l.CUST_TRX_LINE_GL_DIST_ID
5297 ,l.CUST_TRX_LINE_SALESREP_ID
5298 ,l.INVENTORY_ITEM_ID
5299 ,l.SALES_TAX_ID
5300 ,l.SO_ORGANIZATION_ID
5301 ,l.TAX_EXEMPTION_ID
5302 ,l.UOM_CODE
5303 ,l.WAREHOUSE_ID
5304 ,l.AGREEMENT_ID
5305 ,l.CUSTOMER_BANK_ACCT_ID
5306 ,l.DRAWEE_BANK_ACCOUNT_ID
5307 ,l.REMITTANCE_BANK_ACCT_ID
5308 ,l.DISTRIBUTION_SET_ID
5309 ,l.PAYMENT_SCHEDULE_ID
5310 ,l.RECEIPT_METHOD_ID
5311 ,l.RECEIVABLES_TRX_ID
5312 ,l.ED_ADJ_RECEIVABLES_TRX_ID
5313 ,l.UNED_RECEIVABLES_TRX_ID
5314 ,l.SET_OF_BOOKS_ID
5315 ,l.SALESREP_ID
5316 ,l.BILL_SITE_USE_ID
5317 ,l.DRAWEE_SITE_USE_ID
5318 ,l.PAYING_SITE_USE_ID
5319 ,l.SOLD_SITE_USE_ID
5320 ,l.SHIP_SITE_USE_ID
5321 ,l.RECEIPT_CUSTOMER_SITE_USE_ID
5322 ,l.BILL_CUST_ROLE_ID
5323 ,l.DRAWEE_CUST_ROLE_ID
5324 ,l.SHIP_CUST_ROLE_ID
5325 ,l.SOLD_CUST_ROLE_ID
5326 ,l.BILL_CUSTOMER_ID
5327 ,l.DRAWEE_CUSTOMER_ID
5328 ,l.PAYING_CUSTOMER_ID
5329 ,l.SOLD_CUSTOMER_ID
5330 ,l.SHIP_CUSTOMER_ID
5331 ,l.REMIT_ADDRESS_ID
5332 ,l.RECEIPT_BATCH_ID
5333 ,l.RECEIVABLE_APPLICATION_ID
5334 ,l.CUSTOMER_BANK_BRANCH_ID
5335 ,l.ISSUER_BANK_BRANCH_ID
5336 ,l.BATCH_SOURCE_ID
5337 ,l.BATCH_ID
5338 ,l.TERM_ID
5339 ,l.SELECT_FLAG
5340 ,l.LEVEL_FLAG
5341 ,l.FROM_TO_FLAG
5342 ,l.CRH_STATUS
5343 ,l.CRH_PRV_STATUS
5344 ,(NVL(ard.amount_cr,0) - NVL(ard.amount_dr,0)) AMOUNT
5345 ,(NVL(ard.from_amount_cr,0) - NVL(ard.from_amount_dr,0)) FROM_AMOUNT
5346 ,curr.CURR_ROUND_ACCTD_AMT FROM_ACCTD_AMOUNT -- Currency Rounding Amount
5347 ,l.PREV_FUND_SEG_REPLACE
5348 ,l.APP_CRH_STATUS
5349 ,l.PAIRED_CCID
5350 ,l.PAIRE_DIST_ID
5351 ,l.REF_DIST_CCID
5352 ,l.REF_MF_DIST_FLAG
5353 ,l.ORIGIN_EXTRACT_TABLE
5354 ,l.EVENT_TYPE_CODE
5355 ,l.EVENT_CLASS_CODE
5356 ,l.ENTITY_CODE
5357 ,l.REVERSAL_CODE
5358 ,l.BUSINESS_FLOW_CODE
5359 ,l.TAX_LINE_ID
5360 ,l.ADDITIONAL_CHAR1
5361 ,l.ADDITIONAL_CHAR2
5362 ,l.ADDITIONAL_CHAR3
5363 ,l.ADDITIONAL_CHAR4
5364 ,l.ADDITIONAL_CHAR5
5365 ,l.ADDITIONAL_ID1
5366 ,l.ADDITIONAL_ID2
5367 ,l.ADDITIONAL_ID3
5368 ,l.ADDITIONAL_ID4
5369 ,l.ADDITIONAL_ID5
5370 ,l.XLA_ENTITY_ID
5371 ,l.REF_CTLGD_CCID
5372 ,ard.code_combination_id
5373 ,l.FROM_EXCHANGE_RATE
5374 ,l.FROM_EXCHANGE_RATE_TYPE
5375 ,l.FROM_EXCHANGE_DATE
5376 ,l.FROM_CURRENCY_CODE
5377 ,l.TO_CURRENCY_CODE
5378 ,'Y'
5379 ,l.THIRD_PARTY_ID
5380 ,l.THIRD_PARTY_SITE_ID
5381 ,l.THIRD_PARTY_TYPE
5382 ,ard.source_type
5383 FROM AR_XLA_LINES_EXTRACT l,
5384 AR_DISTRIBUTIONS_ALL ard,
5385 (select event_id,
5386 source_id,
5387 LINE_ID,
5388 sum(-1*ACCTD_AMOUNT) CURR_ROUND_ACCTD_AMT
5389 from ar_xla_lines_extract
5390 where POSTING_ENTITY = 'APP'
5391 AND CUSTOMER_TRX_LINE_ID is not null
5392 AND ((MFAR_ADDITIONAL_ENTRY = 'Y')
5393 OR (MFAR_ADDITIONAL_ENTRY = 'N' AND FROM_TO_FLAG = 'T'))
5394 group by event_id, source_id, LINE_ID
5395 having sum(-1*ACCTD_AMOUNT) <> 0) curr
5396 WHERE l.MFAR_ADDITIONAL_ENTRY = 'N'
5397 AND l.FROM_TO_FLAG = 'T'
5398 AND l.CUSTOMER_TRX_LINE_ID IS NOT NULL
5399 AND l.CM_APP_TO_TRX_LINE_ID IS NULL
5400 AND nvl(l.Source_Type, 'XX') <> 'CURR_ROUND'
5401 AND curr.source_id = ard.source_id
5402 AND ard.source_type = 'CURR_ROUND'
5403 AND ard.source_table = 'RA'
5404 AND l.line_id = curr.line_id
5405 AND l.event_id = curr.event_id
5406 AND l.source_id = curr.source_id;
5407
5408 local_log(procedure_name => 'mfar_reg_cmapp_curr_round',
5409 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_reg_cmapp_curr_round ()-');
5410
5411 EXCEPTION
5412 -- WHEN NO_DATA_FOUND THEN NULL;
5413 WHEN OTHERS THEN
5414 local_log(procedure_name => 'mfar_reg_cmapp_curr_round',
5415 p_msg_text => 'EXCEPTION OTHERS in mfar_reg_cmapp_curr_round '||
5416 arp_global.CRLF || 'Error :'|| SQLERRM);
5417 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5418 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5419 'Procedure :arp_xla_extract_main_pkg.mfar_reg_cmapp_curr_round'|| arp_global.CRLF||
5420 'Error :'||SQLERRM);
5421 FND_MSG_PUB.ADD;
5422 RAISE;
5423 END;
5424
5425 /*-------------------------------------------------------------------------------+
5426 | Procedure Name : mfar_cmapp_from_to
5427 | Description : Fetch the CM REC lines (from side) and the Invoice REC
5428 | lines (to side) into separate records and call the procedure
5429 | to insert the MFAR additional lines to the extract table.
5430 | These cursors fetch rows only for on-account CM applications.
5431 +-------------------------------------------------------------------------------+
5432 | History :
5433 | 25-JUL-2010 Ram Manikandan Created due to bug#9860123
5434 | 02-SEP-2010 Ram Manikandan Created due to bug#10047351
5435 +------------------------------------------------------------------------------*/
5436
5437 PROCEDURE mfar_cmapp_from_to is
5438
5439 l_ar_cm_from_tab ar_cm_from_tab;
5440 l_ar_cm_to_tab ar_cm_to_tab;
5441
5442 cursor ar_cm_from_cur is
5443 SELECT xla.entity_id --entity_id
5444 ,ra.receivable_application_id --receivable_application_id
5445 ,ard.line_id --line_id
5446 ,ard.source_type --source_type
5447 ,ra.customer_trx_id --customer_trx_id
5448 ,NVL(ard.amount_cr,0)-
5449 NVL(ard.amount_dr,0) --amount
5450 ,NVL(ard.acctd_amount_cr,0)-
5451 NVL(ard.acctd_amount_dr,0) --acctd_amount
5452 ,NVL(sign(ra.amount_applied)*ra.amount_applied,0) --amount_applied_from
5453 ,NVL(sign(ra.acctd_amount_applied_from)*ra.acctd_amount_applied_from,0) --acctd_amount_applied_from
5454 ,ard.code_combination_id --code_combination_id
5455 ,ard.currency_conversion_date --exchange_date
5456 ,ard.currency_conversion_rate --exchange_rate
5457 ,ard.currency_conversion_type --exchange_type
5458 ,ard.third_party_id --third_party_id
5459 ,ard.third_party_sub_id --third_party_site_id
5460 ,ra.event_id --event_id
5461 ,ra.set_of_books_id --ledger_id
5462 ,ard.currency_code --currency_code
5463 ,ra.org_id --org_id
5464 ,sob.currency_code --base currency code
5465 FROM ar_receivable_applications_all ra
5466 ,ar_distributions_all ard
5467 ,(SELECT entity_id,
5468 source_id_int_1,
5469 event_id,
5470 ledger_id
5471 FROM xla_events_gt
5472 WHERE application_id = 222
5473 AND event_type_code IN ('CM_CREATE','CM_UPDATE')
5474 GROUP BY entity_id,
5475 source_id_int_1,
5476 event_id,
5477 ledger_id) xla
5478 ,gl_sets_of_books sob
5479 ,ar_xla_lines_extract ext -- 10047351
5480 WHERE xla.source_id_int_1 = ra.customer_trx_id
5481 AND xla.event_id = ra.event_id
5482 AND ra.status = 'APP'
5483 AND ra.receivable_application_id = ard.source_id
5484 AND xla.ledger_id = sob.set_of_books_id
5485 AND ard.source_table = 'RA'
5486 AND ard.source_type = 'REC'
5487 AND ard.source_id = ext.source_id
5488 AND ard.line_id = ext.line_id
5489 AND ext.event_class_code = 'CREDIT_MEMO'
5490 AND ext.cm_app_to_trx_line_id IS NULL
5491 AND ard.source_type NOT IN ('EXCH_GAIN','EXCH_LOSS','EDISC','UNEDISC','EDISC_NON_REC_TAX','UNEDISC_NON_REC_TAX','DEFERRED_TAX','TAX')
5492 AND ( ard.ref_cust_trx_line_gl_dist_id IS NOT NULL
5493 AND ard.ref_cust_trx_line_gl_dist_id IN (SELECT cust_trx_line_gl_dist_id
5494 FROM ra_cust_trx_line_gl_dist_all ctlgd
5495 WHERE ctlgd.customer_trx_id = ra.customer_trx_id)) -- Select only FROM rows which belong to Credit Memo
5496 ORDER BY ra.receivable_application_id, ard.line_id;
5497
5498
5499 CURSOR ar_cm_to_cur is
5500 SELECT xla.entity_id --entity_id
5501 ,ra.receivable_application_id --receivable_application_id
5502 ,ard.line_id --line_id
5503 ,NVL(ard.amount_cr,0)-
5504 NVL(ard.amount_dr,0) --amount
5505 ,NVL(ard.acctd_amount_cr,0)-
5506 NVL(ard.acctd_amount_dr,0) --acctd_amount
5507 ,NVL(ard.from_amount_cr,0)-
5508 NVL(ard.from_amount_dr,0) --from_amount
5509 ,NVL(ard.from_acctd_amount_cr,0)-
5510 NVL(ard.from_acctd_amount_dr,0) --from_acctd_amount
5511 ,ard.third_party_id --third_party_id
5512 ,ard.third_party_sub_id --third_party_site_id
5513 ,DECODE(ard.third_party_id,NULL,NULL,'C') --third_party_type
5514 ,ard.currency_code -- currency_code
5515 ,ard.currency_conversion_rate --exchange_rate
5516 ,ard.currency_conversion_type --exchange_type
5517 ,ard.currency_conversion_date --exchange_date
5518 ,ard.ref_customer_trx_line_id --ref_customer_trx_line_id
5519 ,ard.ref_cust_trx_line_gl_dist_id --ref_cust_trx_line_gl_dist_id
5520 ,ard.code_combination_id --code_combination_id
5521 ,ard.ref_dist_ccid --ref_dist_ccid
5522 ,ard.activity_bucket --activity_bucket
5523 ,ard.source_type --source_type
5524 ,ard.source_table --source_table
5525 ,DECODE(ra.posting_control_id,-3,'N','Y') --ra_post_indicator
5526 ,ra.applied_customer_trx_id --customer_trx_id
5527 ,ctl.inventory_item_id --inventory_item_id
5528 ,ctl.sales_tax_id --sales_tax_id
5529 ,ctl.tax_line_id --tax_line_id
5530 ,ct.bill_to_customer_id --bill_to_customer_id
5531 ,ct.bill_to_site_use_id --bill_to_site_use_id
5532 ,ct.sold_to_customer_id --sold_to_customer_id
5533 ,ct.sold_to_site_use_id --sold_to_site_use_id
5534 ,ct.ship_to_customer_id --ship_to_customer_id
5535 ,ct.ship_to_site_use_id --ship_to_site_use_id
5536 FROM ar_receivable_applications_all ra
5537 ,ar_distributions_all ard
5538 ,ra_customer_trx_all ct
5539 ,ra_customer_trx_lines_all ctl
5540 ,(SELECT entity_id,
5541 source_id_int_1,
5542 event_id
5543 FROM xla_events_gt
5544 WHERE application_id = 222
5545 AND event_type_code IN ('CM_CREATE','CM_UPDATE')
5546 GROUP BY entity_id,
5547 source_id_int_1,
5548 event_id) xla
5549 ,ar_xla_lines_extract ext -- 10047351
5550 WHERE xla.source_id_int_1 = ra.customer_trx_id
5551 AND xla.event_id = ra.event_id
5552 AND ra.status = 'APP'
5553 AND ra.receivable_application_id = ard.source_id
5554 AND ard.source_table = 'RA'
5555 AND ard.source_type = 'REC'
5556 AND ard.source_id = ext.source_id
5557 AND ard.line_id = ext.line_id
5558 AND ext.event_class_code = 'CREDIT_MEMO'
5559 AND ext.cm_app_to_trx_line_id IS NULL
5560 AND ra.applied_customer_trx_id = ct.customer_trx_id
5561 AND ct.customer_trx_id = ctl.customer_trx_id
5562 AND ctl.customer_trx_line_id = ard.ref_customer_trx_line_id
5563 AND ard.source_type NOT IN ('EXCH_GAIN','EXCH_LOSS','EDISC','UNEDISC','EDISC_NON_REC_TAX','UNEDISC_NON_REC_TAX','DEFERRED_TAX','TAX')
5564 AND ( ard.ref_cust_trx_line_gl_dist_id IS NOT NULL
5565 AND ard.ref_cust_trx_line_gl_dist_id IN (SELECT cust_trx_line_gl_dist_id
5566 FROM ra_cust_trx_line_gl_dist_all ctlgd
5567 WHERE ctlgd.customer_trx_id = ra.applied_customer_trx_id)) -- Select only TO rows which belong to Invoice
5568 ORDER BY ra.receivable_application_id, (NVL(ard.from_amount_cr,0)-NVL(ard.from_amount_dr,0)); -- Bug 14140214
5569
5570 begin
5571 local_log(procedure_name => 'mfar_cmapp_from_to',
5572 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_cmapp_from_to ()+');
5573
5574 -- Fetch the data of ar_cm_from_cur to the record l_ar_cm_from_tab
5575 open ar_cm_from_cur;
5576 loop
5577 fetch ar_cm_from_cur bulk collect into l_ar_cm_from_tab LIMIT MAX_ARRAY_SIZE;
5578 exit when ar_cm_from_cur%NOTFOUND;
5579 end loop;
5580 close ar_cm_from_cur;
5581 local_log(procedure_name => 'mfar_cmapp_from_to',
5582 p_msg_text => 'l_ar_cm_from_tab.count:'|| l_ar_cm_from_tab.count);
5583
5584 -- Fetch the data of ar_cm_to_cur to the record l_ar_cm_to_tab
5585 open ar_cm_to_cur;
5586 loop
5587 fetch ar_cm_to_cur bulk collect into l_ar_cm_to_tab LIMIT MAX_ARRAY_SIZE;
5588 exit when ar_cm_to_cur%NOTFOUND;
5589 end loop;
5590 close ar_cm_to_cur;
5591 local_log(procedure_name => 'mfar_cmapp_from_to',
5592 p_msg_text => 'l_ar_cm_to_tab.count:'|| l_ar_cm_to_tab.count);
5593
5594 IF l_ar_cm_from_tab.count > 0 AND l_ar_cm_to_tab.count > 0 THEN
5595 mfar_cm_app_insert_extract(l_ar_cm_from_tab, l_ar_cm_to_tab);
5596 END IF;
5597
5598 EXCEPTION
5599 WHEN NO_DATA_FOUND THEN NULL;
5600 WHEN OTHERS THEN
5601 local_log(procedure_name => 'mfar_cmapp_from_to',
5602 p_msg_text => 'EXCEPTION OTHERS in mfar_cmapp_from_to '||
5603 arp_global.CRLF || 'Error :'|| SQLERRM);
5604 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5605 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5606 'Procedure :arp_xla_extract_main_pkg.mfar_cmapp_from_to'|| arp_global.CRLF||
5607 'Error :'||SQLERRM);
5608 FND_MSG_PUB.ADD;
5609 RAISE;
5610
5611 END mfar_cmapp_from_to;
5612
5613 /*-------------------------------------------------------------------------------+
5614 | Procedure Name : mfar_cm_app_insert_extract
5615 | Description : Pro-rates the CM line amounts across the Invoice line amounts
5616 | irrespective of the funds they belong to and insert the
5617 | MFAR additional lines to the extract table.
5618 +-------------------------------------------------------------------------------+
5619 | History :
5620 | 25-JUL-2010 Ram Manikandan Created due to bug#9860123
5621 +------------------------------------------------------------------------------*/
5622
5623 PROCEDURE mfar_cm_app_insert_extract(p_ar_cm_from_rec IN ar_cm_from_tab, p_ar_cm_to_rec IN OUT NOCOPY ar_cm_to_tab) IS
5624
5625 -- run time variables for proration
5626 x_run_amt number := 0;
5627 x_run_alloc_amt number := 0;
5628 x_alloc_amt number := 0;
5629 x_base_sum number := 0;
5630 x_applied_amount number := 0;
5631 x_base_acctd_sum number := 0;
5632 x_applied_acctd_amount number := 0;
5633
5634 x_run_acctd_amt number := 0;
5635 x_run_alloc_acctd_amt number := 0;
5636 x_alloc_acctd_amt number := 0;
5637
5638 i number := 0;
5639 j number := 0;
5640 k number := 1;
5641 x_app_id number := 0;
5642 x_sign_value number := 0;
5643
5644 l_ar_mfar_extract_s number;
5645
5646 -- pl/sql table for ar_xla_lines_extract
5647 TYPE ar_xla_mfar_extract_gt_tab IS TABLE OF ar_xla_lines_extract%ROWTYPE
5648 INDEX BY BINARY_INTEGER;
5649 l_cm_app_mfar_extract_tab ar_xla_mfar_extract_gt_tab;
5650
5651 BEGIN
5652
5653 local_log(procedure_name => 'mfar_cm_app_insert_extract',
5654 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_cm_app_insert_extract()+');
5655
5656 FOR i in p_ar_cm_from_rec.FIRST..p_ar_cm_from_rec.LAST
5657 LOOP
5658
5659 x_run_amt := 0;
5660 x_run_alloc_amt := 0;
5661 x_run_acctd_amt := 0;
5662 x_run_alloc_acctd_amt := 0;
5663
5664 if p_ar_cm_from_rec(i).receivable_application_id <> x_app_id then
5665 x_applied_amount := p_ar_cm_from_rec(i).amount_applied_from;
5666 x_applied_acctd_amount := p_ar_cm_from_rec(i).acctd_amount_applied_from;
5667 else
5668 x_applied_amount := abs(x_base_sum);
5669 x_applied_acctd_amount := abs(x_base_acctd_sum);
5670 end if;
5671
5672 x_base_sum := 0;
5673 x_base_acctd_sum := 0;
5674
5675 x_app_id := p_ar_cm_from_rec(i).receivable_application_id;
5676
5677 local_log(procedure_name => 'mfar_cm_app_insert_extract',
5678 p_msg_text => 'CM Line '||i||' Amount: '||p_ar_cm_from_rec(i).acctd_amount);
5679
5680 FOR j in p_ar_cm_to_rec.FIRST..p_ar_cm_to_rec.LAST
5681 LOOP
5682
5683 if p_ar_cm_from_rec(i).entity_id = p_ar_cm_to_rec(j).entity_id
5684 and p_ar_cm_from_rec(i).receivable_application_id = p_ar_cm_to_rec(j).receivable_application_id then
5685
5686 x_alloc_amt := 0;
5687 x_alloc_acctd_amt := 0;
5688
5689 IF x_applied_amount <> 0 THEN
5690
5691 local_log(procedure_name => 'mfar_cm_app_insert_extract',
5692 p_msg_text => 'Invoice Line '||j||' Amount: '||p_ar_cm_to_rec(j).from_acctd_amount);
5693
5694 IF p_ar_cm_to_rec(j).from_amount < 0 THEN
5695 x_sign_value := -1;
5696 ELSE
5697 x_sign_value := 1;
5698 END IF;
5699
5700 -- Proration of Amounts
5701 x_run_amt := x_run_amt + p_ar_cm_to_rec(j).from_amount;
5702 x_alloc_amt := ar_unposted_item_util.currRound((x_run_amt/x_applied_amount)
5703 * x_sign_value * p_ar_cm_from_rec(i).amount ,p_ar_cm_from_rec(i).CURRENCY_CODE)
5704 - x_run_alloc_amt;
5705 x_run_alloc_amt := x_run_alloc_amt + x_alloc_amt;
5706 p_ar_cm_to_rec(j).from_amount := p_ar_cm_to_rec(j).from_amount + x_alloc_amt;
5707 x_base_sum := x_base_sum + p_ar_cm_to_rec(j).from_amount;
5708
5709 -- Proration of Accounted Amounts
5710 x_run_acctd_amt := x_run_acctd_amt + p_ar_cm_to_rec(j).from_acctd_amount;
5711 x_alloc_acctd_amt := ar_unposted_item_util.currRound((x_run_acctd_amt/x_applied_acctd_amount)
5712 * x_sign_value * p_ar_cm_from_rec(i).acctd_amount ,p_ar_cm_from_rec(i).CURRENCY_CODE) - x_run_alloc_acctd_amt;
5713 x_run_alloc_acctd_amt := x_run_alloc_acctd_amt + x_alloc_acctd_amt;
5714 p_ar_cm_to_rec(j).from_acctd_amount := p_ar_cm_to_rec(j).from_acctd_amount + x_alloc_acctd_amt;
5715 x_base_acctd_sum := x_base_acctd_sum + p_ar_cm_to_rec(j).from_acctd_amount;
5716
5717 local_log(procedure_name => 'mfar_cm_app_insert_extract',
5718 p_msg_text => 'Prorated Amount: '||x_alloc_acctd_amt);
5719
5720 END IF;
5721
5722 SELECT ar_mfar_extract_s.nextval INTO l_ar_mfar_extract_s
5723 FROM dual;
5724
5725 -- Assign the values to extract table
5726 l_cm_app_mfar_extract_tab(k).EVENT_ID := p_ar_cm_from_rec(i).EVENT_ID;
5727 l_cm_app_mfar_extract_tab(k).LINE_NUMBER := -1 * l_ar_mfar_extract_s;
5728 l_cm_app_mfar_extract_tab(k).MFAR_ADDITIONAL_ENTRY := 'Y';
5729 l_cm_app_mfar_extract_tab(k).LEDGER_ID := p_ar_cm_from_rec(i).LEDGER_ID;
5730 l_cm_app_mfar_extract_tab(k).BASE_CURRENCY_CODE := p_ar_cm_from_rec(i).base_currency_code;
5731 l_cm_app_mfar_extract_tab(k).ORG_ID := p_ar_cm_from_rec(i).ORG_ID;
5732 l_cm_app_mfar_extract_tab(k).LINE_ID := p_ar_cm_to_rec(j).LINE_ID;
5733 l_cm_app_mfar_extract_tab(k).SOURCE_ID := p_ar_cm_from_rec(i).receivable_application_id;
5734 l_cm_app_mfar_extract_tab(k).SOURCE_TABLE := 'RA';
5735 l_cm_app_mfar_extract_tab(k).HEADER_TABLE_ID := p_ar_cm_from_rec(i).receivable_application_id;
5736 l_cm_app_mfar_extract_tab(k).POSTING_ENTITY := 'APP';
5737 l_cm_app_mfar_extract_tab(k).XLA_ENTITY_ID := p_ar_cm_to_rec(j).ENTITY_ID;
5738 l_cm_app_mfar_extract_tab(k).DIST_CCID := p_ar_cm_to_rec(j).code_combination_id;
5739 l_cm_app_mfar_extract_tab(k).REF_DIST_CCID := p_ar_cm_to_rec(j).ref_dist_ccid;
5740 l_cm_app_mfar_extract_tab(k).FROM_CURRENCY_CODE := p_ar_cm_from_rec(i).CURRENCY_CODE;
5741 l_cm_app_mfar_extract_tab(k).FROM_EXCHANGE_RATE := p_ar_cm_from_rec(i).EXCHANGE_RATE;
5742 l_cm_app_mfar_extract_tab(k).FROM_EXCHANGE_RATE_TYPE := p_ar_cm_from_rec(i).EXCHANGE_RATE_TYPE;
5743 l_cm_app_mfar_extract_tab(k).FROM_EXCHANGE_DATE := p_ar_cm_from_rec(i).EXCHANGE_DATE;
5744 l_cm_app_mfar_extract_tab(k).TO_CURRENCY_CODE := p_ar_cm_from_rec(i).CURRENCY_CODE;
5745 l_cm_app_mfar_extract_tab(k).EXCHANGE_RATE := p_ar_cm_from_rec(i).EXCHANGE_RATE;
5746 l_cm_app_mfar_extract_tab(k).EXCHANGE_RATE_TYPE := p_ar_cm_from_rec(i).EXCHANGE_RATE_TYPE;
5747 l_cm_app_mfar_extract_tab(k).EXCHANGE_DATE := p_ar_cm_from_rec(i).EXCHANGE_DATE;
5748 l_cm_app_mfar_extract_tab(k).AMOUNT := x_alloc_amt;
5749 l_cm_app_mfar_extract_tab(k).ACCTD_AMOUNT := x_alloc_acctd_amt;
5750 l_cm_app_mfar_extract_tab(k).RECEIVABLE_APPLICATION_ID := p_ar_cm_to_rec(j).RECEIVABLE_APPLICATION_ID;
5751 l_cm_app_mfar_extract_tab(k).CUSTOMER_TRX_ID := p_ar_cm_from_rec(i).CUSTOMER_TRX_ID;
5752 l_cm_app_mfar_extract_tab(k).CUSTOMER_TRX_LINE_ID := p_ar_cm_to_rec(j).ref_customer_trx_line_id;
5753 l_cm_app_mfar_extract_tab(k).CUST_TRX_LINE_GL_DIST_ID := p_ar_cm_to_rec(j).ref_cust_trx_line_gl_dist_id;
5754 l_cm_app_mfar_extract_tab(k).INVENTORY_ITEM_ID := p_ar_cm_to_rec(j).INVENTORY_ITEM_ID;
5755 l_cm_app_mfar_extract_tab(k).SALES_TAX_ID := p_ar_cm_to_rec(j).SALES_TAX_ID;
5756 l_cm_app_mfar_extract_tab(k).SET_OF_BOOKS_ID := p_ar_cm_from_rec(i).ledger_id;
5757 l_cm_app_mfar_extract_tab(k).BILL_SITE_USE_ID := p_ar_cm_to_rec(j).bill_to_site_use_id;
5758 l_cm_app_mfar_extract_tab(k).SOLD_SITE_USE_ID := p_ar_cm_to_rec(j).sold_to_site_use_id;
5759 l_cm_app_mfar_extract_tab(k).SHIP_SITE_USE_ID := p_ar_cm_to_rec(j).ship_to_site_use_id;
5760 l_cm_app_mfar_extract_tab(k).BILL_CUSTOMER_ID := p_ar_cm_to_rec(j).bill_to_customer_id;
5761 l_cm_app_mfar_extract_tab(k).SOLD_CUSTOMER_ID := p_ar_cm_to_rec(j).sold_to_customer_id;
5762 l_cm_app_mfar_extract_tab(k).SHIP_CUSTOMER_ID := p_ar_cm_to_rec(j).ship_to_customer_id;
5763 l_cm_app_mfar_extract_tab(k).TAX_LINE_ID := p_ar_cm_to_rec(j).tax_line_id;
5764 l_cm_app_mfar_extract_tab(k).SELECT_FLAG := 'Y';
5765 l_cm_app_mfar_extract_tab(k).LEVEL_FLAG := 'L';
5766 l_cm_app_mfar_extract_tab(k).FROM_TO_FLAG := 'F';
5767 l_cm_app_mfar_extract_tab(k).EVENT_CLASS_CODE := 'CREDIT_MEMO';
5768 l_cm_app_mfar_extract_tab(k).ENTITY_CODE := 'TRANSACTIONS';
5769 l_cm_app_mfar_extract_tab(k).third_party_id := p_ar_cm_to_rec(j).third_party_id;
5770 l_cm_app_mfar_extract_tab(k).third_party_site_id := p_ar_cm_to_rec(j).third_party_site_id;
5771 l_cm_app_mfar_extract_tab(k).third_party_type := p_ar_cm_to_rec(j).third_party_type;
5772 l_cm_app_mfar_extract_tab(k).source_type := p_ar_cm_to_rec(j).source_type;
5773 l_cm_app_mfar_extract_tab(k).paire_dist_id := p_ar_cm_from_rec(i).line_id;
5774
5775 k := k+1;
5776 end if;
5777
5778 END LOOP;
5779
5780 END LOOP;
5781
5782 FORALL r IN l_cm_app_mfar_extract_tab.first..l_cm_app_mfar_extract_tab.last
5783 INSERT INTO ar_xla_lines_extract VALUES l_cm_app_mfar_extract_tab(r);
5784
5785 local_log(procedure_name => 'mfar_cm_app_insert_extract',
5786 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_cm_app_insert_extract()-');
5787
5788 EXCEPTION
5789 WHEN NO_DATA_FOUND THEN NULL;
5790 WHEN OTHERS THEN
5791 local_log(procedure_name => 'mfar_cm_app_insert_extract',
5792 p_msg_text => 'EXCEPTION OTHERS in mfar_cm_app_insert_extract '||
5793 arp_global.CRLF || 'Error :'|| SQLERRM);
5794 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5795 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5796 'Procedure :arp_xla_extract_main_pkg.mfar_cm_app_insert_extract'|| arp_global.CRLF||
5797 'Error :'||SQLERRM);
5798 FND_MSG_PUB.ADD;
5799 RAISE;
5800
5801
5802 END mfar_cm_app_insert_extract;
5803
5804 /*-------------------------------------------------------------------------------+
5805 | Procedure Name : mfar_app_dist_cr
5806 | Description : Fetches all the application distributions for RECP_CREATE,
5807 | RECP_UPDATE and RECP_RATE_ADJUST events which are necessary
5808 | for the MFAR CRH building and populates the GT
5809 | table ar_crh_app_gt.
5810 +-------------------------------------------------------------------------------+
5811 | History :
5812 | 25-JUL-2010 Anshu Kaushal Created
5813 +------------------------------------------------------------------------------*/
5814
5815 PROCEDURE mfar_app_dist_cr IS
5816 BEGIN
5817 local_log(procedure_name => 'mfar_app_dist_cr',
5818 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_app_dist_cr ()+');
5819 --
5820 -- For a RECP_CREATE and RECP_UPDATE events
5821 -- All application distributions are necessary for the MFAR CRH building
5822 --
5823 INSERT INTO ar_crh_app_gt (
5824 entity_id
5825 ,receivable_application_id
5826 ,cash_receipt_history_id
5827 ,cash_receipt_history_status
5828 ,line_id
5829 ,amount
5830 ,acctd_amount
5831 ,from_amount
5832 ,from_acctd_amount
5833 ,third_party_id
5834 ,third_party_site_id
5835 ,third_party_type
5836 ,from_currency_code
5837 ,from_exchange_rate
5838 ,from_exchange_type
5839 ,from_exchange_date
5840 ,to_currency_code
5841 ,to_exchange_rate
5842 ,to_exchange_type
5843 ,to_exchange_date
5844 ,ref_customer_trx_line_id
5845 ,ref_cust_trx_line_gl_dist_id
5846 ,code_combination_id
5847 ,ref_code_combination_id
5848 ,ref_dist_ccid
5849 ,activity_bucket
5850 ,source_type
5851 ,source_table
5852 ,ra_post_indicator
5853 ,crh_post_indicator
5854 ,customer_trx_id
5855 ,inventory_item_id
5856 ,sales_tax_id
5857 ,tax_line_id
5858 ,bill_to_customer_id
5859 ,bill_to_site_use_id
5860 ,sold_to_customer_id
5861 ,sold_to_site_use_id
5862 ,ship_to_customer_id
5863 ,ship_to_site_use_id
5864 ,event_id
5865 ,amount_applied
5866 ,acctd_amount_applied
5867 ,mfar_upg_trx)
5868 SELECT xla.entity_id --entity_id
5869 ,ra.receivable_application_id --receivable_application_id
5870 ,crh.cash_receipt_history_id --cash_receipt_history_id
5871 ,crh.status --cash_receipt_history_status
5872 ,ard.line_id --line_id
5873 ,NVL(ard.amount_cr,0)-
5874 NVL(ard.amount_dr,0) --amount
5875 ,NVL(ard.acctd_amount_cr,0)-
5876 NVL(ard.acctd_amount_dr,0) --acctd_amount
5877 ,NVL(ard.from_amount_cr,0)-
5878 NVL(ard.from_amount_dr,0) --from_amount
5879 ,NVL(ard.from_acctd_amount_cr,0)-
5880 NVL(ard.from_acctd_amount_dr,0) --from_acctd_amount
5881 ,ard.third_party_id --third_party_id
5882 ,ard.third_party_sub_id --third_party_site_id
5883 ,DECODE(ard.third_party_id,NULL,NULL,'C') --third_party_type
5884 ,cr.currency_code --from_currency_code
5885 ,crh.exchange_rate --from_exchange_rate
5886 ,crh.exchange_rate_type --from_exchange_type
5887 ,crh.exchange_date --from_exchange_date
5888 ,ct.invoice_currency_code --to_currency_code
5889 ,ct.exchange_rate --to_exchange_rate
5890 ,ct.exchange_rate_type --to_exchange_type
5891 ,ct.exchange_date --to_exchange_date
5892 ,ard.ref_customer_trx_line_id --ref_customer_trx_line_id
5893 ,ard.ref_cust_trx_line_gl_dist_id --ref_cust_trx_line_gl_dist_id
5894 ,ard.code_combination_id --code_combination_id
5895 ,ctlgd.code_combination_id --ref_code_combination_id
5896 ,ard.ref_dist_ccid --ref_dist_ccid
5897 ,ard.activity_bucket --activity_bucket
5898 ,ard.source_type --source_type
5899 ,source_table --source_table
5900 ,DECODE(ra.posting_control_id,-3,'N','Y') --ra_post_indicator
5901 ,DECODE(crh.posting_control_id,-3,'N','Y') --crh_post_indicator
5902 ,ra.applied_customer_trx_id --customer_trx_id
5903 ,ctl.inventory_item_id
5904 ,ctl.sales_tax_id
5905 ,ctl.tax_line_id
5906 ,ct.bill_to_customer_id
5907 ,ct.bill_to_site_use_id
5908 ,ct.sold_to_customer_id
5909 ,ct.sold_to_site_use_id
5910 ,ct.ship_to_customer_id
5911 ,ct.ship_to_site_use_id
5912 ,ra.event_id
5913 ,ra.amount_applied
5914 ,ra.acctd_amount_applied_from
5915 ,decode(ct.upgrade_method,'R12_11ICASH','N','') mfar_upg_trx
5916 FROM ar_cash_receipt_history_all crh
5917 ,ar_cash_receipts_all cr
5918 ,ar_receivable_applications_all ra
5919 ,ar_distributions_all ard
5920 ,ra_customer_trx_all ct
5921 ,ra_cust_trx_line_gl_dist_all ctlgd
5922 ,ra_customer_trx_lines_all ctl
5923 ,(SELECT entity_id,
5924 source_id_int_1
5925 FROM xla_events_gt
5926 WHERE application_id = 222
5927 AND event_type_code IN ('RECP_CREATE','RECP_UPDATE','RECP_RATE_ADJUST')
5928 GROUP BY entity_id,
5929 source_id_int_1) xla
5930 WHERE xla.source_id_int_1 = crh.cash_receipt_id
5931 AND crh.cash_receipt_history_id = ra.cash_receipt_history_id
5932 AND crh.cash_receipt_id = cr.cash_receipt_id
5933 AND crh.cash_receipt_id = ra.cash_receipt_id
5934 AND ra.status = 'APP'
5935 AND ra.receivable_application_id = ard.source_id
5936 -- Add MFAR UPG impacts
5937 AND DECODE(ra.upgrade_method,
5938 '11I_MFAR_UPG',DECODE(ard.source_table_secondary,'UPMFRAMIAR','Y','N'),
5939 'R12_11ICASH' ,'N',
5940 '11I_R12_POST','N',
5941 'Y') = 'Y'
5942 AND ra.applied_customer_trx_id = ct.customer_trx_id
5943 AND ard.source_table = 'RA'
5944 AND ard.source_type NOT IN ('EXCH_GAIN','EXCH_LOSS','EDISC','UNEDISC','EDISC_NON_REC_TAX','UNEDISC_NON_REC_TAX','DEFERRED_TAX','TAX', 'CURR_ROUND')
5945 AND decode(ard.source_type,'REC',decode(ard.ref_mf_dist_flag,'D','N','Y'),'Y')='Y'
5946 AND ard.ref_customer_trx_line_id = ctl.customer_trx_line_id(+)
5947 AND ard.ref_cust_trx_line_gl_dist_id = ctlgd.cust_trx_line_gl_dist_id(+)
5948 ORDER BY ard.line_id;
5949
5950 local_log(procedure_name => 'mfar_app_dist_cr',
5951 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_app_dist_cr ()-');
5952 EXCEPTION
5953 -- WHEN NO_DATA_FOUND THEN NULL;
5954 WHEN OTHERS THEN
5955 local_log(procedure_name => 'mfar_app_dist_cr',
5956 p_msg_text => 'EXCEPTION OTHERS in mfar_app_dist_cr '||
5957 arp_global.CRLF || 'Error :'|| SQLERRM);
5958 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5959 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5960 'Procedure :arp_xla_extract_main_pkg.mfar_app_dist_cr'|| arp_global.CRLF||
5961 'Error :'||SQLERRM);
5962 FND_MSG_PUB.ADD;
5963 RAISE;
5964 END;
5965
5966 /*-------------------------------------------------------------------------------+
5967 | Procedure Name : mfar_crh_dist
5968 | Description : Fetches all the CRH distributions for RECP_CREATE, RECP_UPDATE
5969 | MISC_RECP_CREATE, MISC_RECP_UPDATE, RECP_RATE_ADJUST events
5970 | which are necessary for MFAR additional distribution building
5971 | and populates the GT table ar_crh_gt.
5972 +-------------------------------------------------------------------------------+
5973 | History :
5974 | 25-JUL-2010 Anshu Kaushal Created
5975 +------------------------------------------------------------------------------*/
5976
5977 PROCEDURE mfar_crh_dist IS
5978 BEGIN
5979 local_log(procedure_name => 'mfar_crh_dist',
5980 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_crh_dist ()+');
5981 -- All CRH distribution part of the current posting will serve for the
5982 -- Additional distribution building
5983 INSERT INTO ar_crh_gt (
5984 cash_receipt_id ,
5985 cash_receipt_history_id,
5986 source_type ,
5987 posting_control_id ,
5988 amount ,
5989 acctd_amount ,
5990 code_combination_id ,
5991 exchange_date ,
5992 exchange_rate ,
5993 exchange_rate_type ,
5994 third_party_id ,
5995 third_party_sub_id ,
5996 third_party_flag ,
5997 event_id ,
5998 entity_id ,
5999 ledger_id ,
6000 base_currency_code ,
6001 org_id ,
6002 status ,
6003 crh_line_id ,
6004 recp_amount ,
6005 recp_acctd_amount ,
6006 DIST_LINE_STATUS)
6007 SELECT crh.cash_receipt_id
6008 ,crh.cash_receipt_history_id
6009 ,ard.source_type
6010 ,crh.posting_control_id
6011 ,NVL(ard.amount_cr,0)-NVL(ard.amount_dr,0)
6012 ,NVL(ard.acctd_amount_cr,0)-NVL(ard.acctd_amount_dr,0)
6013 ,ard.code_combination_id
6014 ,crh.exchange_date
6015 ,crh.exchange_rate
6016 ,crh.exchange_rate_type
6017 ,ard.third_party_id
6018 ,ard.third_party_sub_id
6019 ,DECODE(third_party_id,NULL,'N','Y')
6020 ,gt.event_id
6021 ,gt.entity_id
6022 ,cr.set_of_books_id -- ledger_id
6023 ,lg.currency_code
6024 ,crh.org_id
6025 ,DECODE(ard.source_type,'CASH' ,'CLEARED',
6026 'REMITTANCE' ,'REMITTED',
6027 'CONFIRMATION','CONFIRMED'
6028 ,'BANK_CHARGES','BANK_CHARGES'
6029 ,'CASH')
6030 -- ,ard.line_id crh_line_id
6031 ,crh.cash_receipt_history_id crh_line_id
6032 ,(crh.amount+ nvl(crh.factor_discount_amount,0)) recp_amount
6033 ,(crh.acctd_amount+ nvl(crh.acctd_factor_discount_amount,0)) recp_acctd_amount
6034 ,decode(crh.status , DECODE(ard.source_type,'CASH','CLEARED',
6035 'REMITTANCE','REMITTED',
6036 'CONFIRMATION','CONFIRMED',
6037 'BANK_CHARGES','CLEARED'
6038 ,'CASH'), 'ACTUAL','REVERSAL') DIST_LINE_STATUS
6039 FROM xla_events_gt gt,
6040 ar_cash_receipt_history_all crh,
6041 ar_cash_receipts_all cr,
6042 ar_distributions_all ard,
6043 gl_ledgers lg
6044 WHERE gt.application_id = 222
6045 AND gt.event_type_code IN ('RECP_CREATE','RECP_UPDATE','MISC_RECP_CREATE','MISC_RECP_UPDATE','RECP_RATE_ADJUST')
6046 AND gt.event_id = crh.event_id
6047 AND crh.postable_flag = 'Y'
6048 AND crh.cash_receipt_id= cr.cash_receipt_id
6049 AND ard.source_id = crh.cash_receipt_history_id
6050 AND ard.source_table = 'CRH'
6051 AND (
6052 (ard.source_type IN ('CASH','REMITTANCE','CONFIRMATION'))
6053 OR
6054 (ard.source_type ='BANK_CHARGES'
6055 AND crh.factor_discount_amount = ( nvl(ard.amount_dr,0) - nvl(ard.amount_cr,0)))
6056 )
6057 AND cr.set_of_books_id = lg.ledger_id
6058 /*
6059 Whenever user updates the Bank Charges for a posted Receipt, the ar_distributions
6060 table calculates the differential amount and stores the difference
6061 But, for mfar accountin we need to build the detailed distributions with
6062 reversal entries and the new entries.
6063
6064 The below select builds the detailed distributions for the bank charge changes
6065 when the previous distribution does not involve the change in bank charges
6066 */
6067 UNION ALL
6068 SELECT crh.cash_receipt_id
6069 ,crh.cash_receipt_history_id
6070 ,pairard.source_type
6071 ,crh.posting_control_id
6072 ,decode(pairard.source_type, 'BANK_CHARGES',
6073 decode(state.status, 'ORG_DIST',
6074 -1*crh.factor_discount_amount,
6075 -1*paircrh.factor_discount_amount),
6076 NVL(pairard.amount_cr,0)-NVL(pairard.amount_dr,0)) amount
6077 ,decode(pairard.source_type, 'BANK_CHARGES',
6078 decode(state.status, 'ORG_DIST',
6079 -1*crh.acctd_factor_discount_amount,
6080 -1*paircrh.acctd_factor_discount_amount),
6081 NVL(pairard.acctd_amount_cr,0)-NVL(pairard.acctd_amount_dr,0)) acctd_amount
6082 ,pairard.code_combination_id
6083 ,paircrh.exchange_date
6084 ,paircrh.exchange_rate
6085 ,paircrh.exchange_rate_type
6086 ,pairard.third_party_id
6087 ,pairard.third_party_sub_id
6088 ,DECODE(pairard.third_party_id,NULL,'N','Y')
6089 ,gt.event_id
6090 ,gt.entity_id
6091 ,cr.set_of_books_id -- ledger_id
6092 ,lg.currency_code
6093 ,paircrh.org_id
6094 ,DECODE(pairard.source_type,'CASH' ,'CLEARED',
6095 'REMITTANCE' ,'REMITTED',
6096 'CONFIRMATION','CONFIRMED'
6097 ,'BANK_CHARGES','BANK_CHARGES'
6098 ,'CASH')
6099 ,decode(state.status, 'ORG_DIST', paircrh.cash_receipt_history_id, -1*paircrh.cash_receipt_history_id) crh_line_id
6100 ,decode(state.status, 'ORG_DIST', (crh.amount+ nvl(crh.factor_discount_amount,0))
6101 , 'REV_DIST', (paircrh.amount+ nvl(paircrh.factor_discount_amount,0))) recp_amount
6102 ,decode(state.status, 'ORG_DIST',(crh.acctd_amount+ nvl(crh.acctd_factor_discount_amount,0))
6103 , 'REV_DIST',(paircrh.acctd_amount+ nvl(paircrh.acctd_factor_discount_amount,0))) recp_acctd_amount
6104 , decode(state.status, 'ORG_DIST','ACTUAL','REVERSAL') DIST_LINE_STATUS
6105 FROM xla_events_gt gt,
6106 ar_cash_receipt_history_all crh,
6107 ar_cash_receipts_all cr,
6108 ar_distributions_all ard,
6109 ar_cash_receipt_history_all paircrh,
6110 ar_distributions_all pairard,
6111 gl_ledgers lg,
6112 (SELECT 'ORG_DIST' AS status FROM DUAL UNION
6113 SELECT 'REV_DIST' AS status FROM DUAL) state
6114 WHERE gt.application_id = 222
6115 AND gt.event_type_code IN ('RECP_CREATE','RECP_UPDATE','MISC_RECP_CREATE','MISC_RECP_UPDATE','RECP_RATE_ADJUST')
6116 AND gt.event_id = crh.event_id
6117 AND crh.postable_flag = 'Y'
6118 AND crh.cash_receipt_id= cr.cash_receipt_id
6119 AND ard.source_id = crh.cash_receipt_history_id
6120 AND ard.source_table = 'CRH'
6121 AND ard.source_type = 'BANK_CHARGES'
6122 AND paircrh.reversal_cash_receipt_hist_id = crh.cash_receipt_history_id
6123 AND paircrh.cash_receipt_history_id = pairard.source_id
6124 AND pairard.source_table = 'CRH'
6125 AND crh.factor_discount_amount <> ( nvl(ard.amount_dr,0) - nvl(ard.amount_cr,0) )
6126 AND cr.set_of_books_id = lg.ledger_id
6127 UNION ALL
6128 /*
6129
6130 Build CASH and REMITTANCE Records
6131 when ARD's Bank Charge Record is created as difference amount,
6132 and previous CRH state also exists with a differential Bank Charge Amount
6133
6134 That means customer has updated the bank charges more than once consecutively
6135 in receipt history.
6136
6137 */
6138 SELECT crh.cash_receipt_id
6139 ,crh.cash_receipt_history_id
6140 ,decode(paircrh.status, 'CLEARED', 'CASH'
6141 , 'REMITTED', 'REMITTACE'
6142 ,'CONFIRMED','CONFIRMATION'
6143 ,'CASH')
6144 ,crh.posting_control_id
6145 ,decode(state.status, 'ORG_DIST',
6146 -1*crh.amount,
6147 -1*paircrh.amount) amount
6148 ,decode(state.status, 'ORG_DIST',
6149 -1*crh.acctd_amount,
6150 -1*paircrh.acctd_amount) acctd_amount
6151 ,pairard.code_combination_id
6152 ,paircrh.exchange_date
6153 ,paircrh.exchange_rate
6154 ,paircrh.exchange_rate_type
6155 ,pairard.third_party_id
6156 ,pairard.third_party_sub_id
6157 ,DECODE(pairard.third_party_id,NULL,'N','Y')
6158 ,gt.event_id
6159 ,gt.entity_id
6160 ,cr.set_of_books_id -- ledger_id
6161 ,lg.currency_code
6162 ,paircrh.org_id
6163 , paircrh.status
6164 ,decode(state.status, 'ORG_DIST', paircrh.cash_receipt_history_id, -1*paircrh.cash_receipt_history_id) crh_line_id
6165 ,decode(state.status, 'ORG_DIST', (crh.amount+ nvl(crh.factor_discount_amount,0))
6166 , 'REV_DIST', (paircrh.amount+ nvl(paircrh.factor_discount_amount,0))) recp_amount
6167 ,decode(state.status, 'ORG_DIST',(crh.acctd_amount+ nvl(crh.acctd_factor_discount_amount,0))
6168 , 'REV_DIST',(paircrh.acctd_amount+ nvl(paircrh.acctd_factor_discount_amount,0))) recp_acctd_amount
6169 , decode(state.status, 'ORG_DIST','ACTUAL','REVERSAL') DIST_LINE_STATUS
6170 FROM xla_events_gt gt,
6171 ar_cash_receipt_history_all crh,
6172 ar_cash_receipts_all cr,
6173 ar_distributions_all ard,
6174 ar_cash_receipt_history_all paircrh,
6175 ar_distributions_all pairard,
6176 gl_ledgers lg,
6177 (SELECT 'ORG_DIST' AS status FROM DUAL UNION
6178 SELECT 'REV_DIST' AS status FROM DUAL) state
6179 WHERE gt.application_id = 222
6180 AND gt.event_type_code IN ('RECP_CREATE','RECP_UPDATE','MISC_RECP_CREATE','MISC_RECP_UPDATE','RECP_RATE_ADJUST')
6181 AND gt.event_id = crh.event_id
6182 AND crh.postable_flag = 'Y'
6183 AND crh.cash_receipt_id= cr.cash_receipt_id
6184 AND ard.source_id = crh.cash_receipt_history_id
6185 AND ard.source_table = 'CRH'
6186 AND ard.source_type = 'BANK_CHARGES'
6187 AND pairard.source_type = ard.source_type
6188 AND paircrh.reversal_cash_receipt_hist_id = crh.cash_receipt_history_id
6189 AND paircrh.cash_receipt_history_id = pairard.source_id
6190 AND pairard.source_table = 'CRH'
6191 AND crh.factor_discount_amount <> ( nvl(ard.amount_dr,0) - nvl(ard.amount_cr,0) )
6192 AND paircrh.factor_discount_amount <> ( nvl(pairard.amount_dr,0) - nvl(pairard.amount_cr,0) )
6193 AND cr.set_of_books_id = lg.ledger_id;
6194
6195 local_log(procedure_name => 'mfar_crh_dist',
6196 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_app_dist_cr ()-');
6197 EXCEPTION
6198 -- WHEN NO_DATA_FOUND THEN NULL;
6199 WHEN OTHERS THEN
6200 local_log(procedure_name => 'mfar_crh_dist',
6201 p_msg_text => 'EXCEPTION OTHERS in mfar_crh_dist '||
6202 arp_global.CRLF || 'Error :'|| SQLERRM);
6203 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
6204 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
6205 'Procedure :arp_xla_extract_main_pkg.mfar_crh_dist'|| arp_global.CRLF||
6206 'Error :'||SQLERRM);
6207 FND_MSG_PUB.ADD;
6208 RAISE;
6209 END;
6210
6211 /*-------------------------------------------------------------------------------+
6212 | Procedure Name : mfar_produit_app_by_crh
6213 | Description : Builds the MFAR distributions for CRH by taking a cross product
6214 | of the lines in the Gt tables ar_crh_gt and ar_crh_app_gt.
6215 | Calls the procedure to insert into the extract table after
6216 | building the CRH MFAR distributions.
6217 +-------------------------------------------------------------------------------+
6218 | History :
6219 | 25-JUL-2010 Anshu Kaushal Created
6220 +------------------------------------------------------------------------------*/
6221
6222 PROCEDURE mfar_produit_app_by_crh IS
6223 --
6224 -- Build the MFAR distribution for CRH
6225 --
6226 CURSOR mfar_extract_cur IS
6227 SELECT
6228 ordered_crh_by_app.*
6229 ,-1 * ar_mfar_extract_s.nextval LINE_NUMBER
6230 FROM (SELECT
6231 crh.event_id event_id
6232 -- ,-1 * ar_mfar_extract_s.nextval LINE_NUMBER
6233 ,'Y' MFAR_ADDITIONAL_ENTRY
6234 ,crh.ledger_id LEDGER_ID
6235 ,crh.base_currency_code BASE_CURRENCY_CODE
6236 ,crh.org_id ORG_ID
6237 ,decode(crh.dist_line_status, 'REVERSAL', -1*app.line_id, app.line_id) LINE_ID
6238 ,app.receivable_application_id SOURCE_ID
6239 ,'RA' SOURCE_TABLE
6240 ,crh.cash_receipt_id HEADER_TABLE_ID
6241 ,'RECEIPT_HISTORY' POSTING_ENTITY
6242 ,crh.entity_id xla_entity_id
6243 --
6244 ,app.code_combination_id DIST_CCID
6245 ,app.ref_dist_ccid ref_dist_ccid
6246 ,app.ref_code_combination_id REF_CTLGD_CCID
6247 --
6248 ,app.from_currency_code from_currency_code
6249 ,app.from_exchange_rate from_exchange_rate
6250 ,app.from_exchange_type FROM_EXCHANGE_RATE_TYPE
6251 ,app.from_exchange_date from_exchange_date
6252 ,decode(event_type_code, 'RECP_RATE_ADJUST',-app.from_amount,sign(crh.amount)*app.from_amount) from_amount
6253 ,decode(event_type_code, 'RECP_RATE_ADJUST',-app.from_acctd_amount,sign(crh.acctd_amount)*app.from_acctd_amount) from_acctd_amount
6254 --
6255 ,app.to_currency_code to_currency_code
6256 ,app.to_exchange_rate exchange_rate
6257 ,app.to_exchange_type EXCHANGE_RATE_TYPE
6258 ,app.to_exchange_date EXCHANGE_DATE
6259 ,decode(event_type_code, 'RECP_RATE_ADJUST',-app.amount,sign(crh.amount)*app.amount) amount
6260 ,decode(event_type_code, 'RECP_RATE_ADJUST',-app.acctd_amount,sign(crh.acctd_amount)*app.acctd_amount) acctd_amount
6261 --
6262 ,app.receivable_application_id RECEIVABLE_APPLICATION_ID
6263 ,crh.cash_receipt_id CASH_RECEIPT_ID
6264 ,app.customer_trx_id CUSTOMER_TRX_ID
6265 ,app.ref_customer_trx_line_id CUSTOMER_TRX_LINE_ID
6266 ,app.ref_cust_trx_line_gl_dist_id CUST_TRX_LINE_GL_DIST_ID
6267 --
6268 ,app.inventory_item_id INVENTORY_ITEM_ID
6269 ,app.sales_tax_id SALES_TAX_ID
6270 ,crh.ledger_id SET_OF_BOOKS_ID
6271 ,app.bill_to_site_use_id BILL_SITE_USE_ID
6272 ,app.sold_to_site_use_id SOLD_SITE_USE_ID
6273 ,app.ship_to_site_use_id SHIP_SITE_USE_ID
6274 ,app.bill_to_customer_id BILL_CUSTOMER_ID
6275 ,app.sold_to_customer_id SOLD_CUSTOMER_ID
6276 ,app.ship_to_customer_id SHIP_CUSTOMER_ID
6277 ,app.tax_line_id TAX_LINE_ID
6278 --
6279 ,'Y' SELECT_FLAG
6280 ,'L' LEVEL_FLAG
6281 ,'T' FROM_TO_FLAG
6282 ,crh.status CRH_STATUS
6283 ,app.cash_receipt_history_status APP_CRH_STATUS
6284 --
6285 ,gt.event_type_code EVENT_TYPE_CODE
6286 ,gt.event_class_code EVENT_CLASS_CODE
6287 ,gt.entity_code ENTITY_CODE
6288 --
6289 ,app.third_party_id third_party_id
6290 ,app.third_party_site_id third_party_site_id
6291 ,app.third_party_type third_party_type
6292 ,app.source_type source_type
6293 ,crh.recp_amount recp_amount
6294 ,crh.recp_acctd_amount recp_acctd_amount
6295 ,decode(crh.DIST_LINE_STATUS,'REVERSAL', crh.amount, -1*(crh.amount)) crh_amount
6296 ,decode(crh.DIST_LINE_STATUS,'REVERSAL', crh.acctd_amount, -1*(crh.acctd_amount)) crh_acctd_amount
6297 ,crh.crh_line_id CRH_RECORD_ID
6298 ,decode(crh.recp_amount, 0 , 0 , decode(crh.source_type, 'BANK_CHARGES',
6299 ar_unposted_item_util.currRound(app.amount_applied-
6300 ((decode(crh.DIST_LINE_STATUS,'REVERSAL', crh.recp_amount-crh.amount, crh.recp_amount+crh.amount)/crh.recp_amount)
6301 * app.amount_applied)
6302 ,app.from_currency_code),
6303 ar_unposted_item_util.currRound((decode(crh.DIST_LINE_STATUS,'REVERSAL', crh.amount, -1*(crh.amount))/crh.recp_amount) * app.amount_applied,app.from_currency_code))) ALLOC_AMOUNT
6304 ,decode(crh.recp_acctd_amount, 0 , 0 , decode(crh.source_type, 'BANK_CHARGES',
6305 ar_unposted_item_util.currRound(app.acctd_amount_applied-
6306 ((decode(crh.DIST_LINE_STATUS,'REVERSAL', crh.recp_acctd_amount-crh.acctd_amount, crh.recp_acctd_amount+crh.acctd_amount)/crh.recp_acctd_amount)
6307 * app.acctd_amount_applied)
6308 ,app.from_currency_code),
6309 ar_unposted_item_util.currRound((decode(crh.DIST_LINE_STATUS,'REVERSAL', crh.acctd_amount, -1*(crh.acctd_amount))/crh.recp_acctd_amount) * app.acctd_amount_applied
6310 ,app.from_currency_code))) ALLOC_ACCTD_AMOUNT
6311 ,decode(crh.dist_line_status, 'REVERSAL', -1*app_max_line.max_line_id, app_max_line.max_line_id)
6312 ,app.mfar_upg_trx
6313 FROM ar_crh_gt crh,
6314 ar_crh_app_gt app,
6315 xla_events_gt gt,
6316 (SELECT app1.receivable_application_id receivable_application_id,
6317 MAX(app1.line_id) max_line_id
6318 FROM ar_crh_app_gt app1
6319 GROUP BY app1.receivable_application_id) app_max_line
6320 WHERE crh.entity_id = app.entity_id
6321 AND app.source_table = 'RA'
6322 and app.receivable_application_id = app_max_line.receivable_application_id
6323 /* Start fix for Bug 9644866 */
6324 AND decode (crh.cash_receipt_history_id,
6325 app.cash_receipt_history_id,
6326 decode(app.event_id,
6327 crh.event_id, 'Y'
6328 ,'N')
6329 ,'Y') = 'Y'
6330 /* End fix for Bug 9644866 */
6331 AND crh.event_id = gt.event_id
6332 AND ((gt.event_type_code <> 'RECP_RATE_ADJUST' AND crh.DIST_LINE_STATUS = 'ACTUAL' AND crh.cash_receipt_history_id >= app.cash_receipt_history_id)
6333 OR
6334 (gt.event_type_code <> 'RECP_RATE_ADJUST' AND crh.DIST_LINE_STATUS = 'REVERSAL' AND crh.cash_receipt_history_id > app.cash_receipt_history_id)
6335 OR
6336 (gt.event_type_code = 'RECP_RATE_ADJUST' AND crh.cash_receipt_history_id = app.cash_receipt_history_id)
6337 )
6338 order by crh.cash_receipt_id, crh.dist_line_status, app.line_id, CRH_RECORD_ID) ordered_crh_by_app;
6339
6340 -- crh_mfar_extract_record table type local variable
6341 l_crh_mfar_extract_record crh_mfar_extract_record_type;
6342
6343 BEGIN
6344 local_log(procedure_name => 'mfar_produit_app_by_crh',
6345 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_produit_app_by_crh ()+');
6346
6347 OPEN mfar_extract_cur;
6348 LOOP
6349 FETCH mfar_extract_cur BULK COLLECT INTO l_crh_mfar_extract_record LIMIT MAX_ARRAY_SIZE;
6350 IF PG_DEBUG in ('Y', 'C') THEN
6351 arp_standard.debug('mfar_produit_app_by_crh current fetch count '|| l_crh_mfar_extract_record.count);
6352 END IF;
6353
6354 IF l_crh_mfar_extract_record.count = 0 THEN
6355 EXIT;
6356 END IF;
6357
6358 -- Calculate prorated amounts and insert data into extract
6359 mfar_insert_crh_extract (l_crh_mfar_extract_record);
6360
6361 END LOOP;
6362
6363 CLOSE mfar_extract_cur;
6364
6365
6366 local_log(procedure_name => 'mfar_produit_app_by_crh',
6367 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_produit_app_by_crh ()-');
6368 EXCEPTION
6369 -- WHEN NO_DATA_FOUND THEN NULL;
6370 WHEN OTHERS THEN
6371 local_log(procedure_name => 'mfar_crh_dist',
6372 p_msg_text => 'EXCEPTION OTHERS in mfar_produit_app_by_crh '||
6373 arp_global.CRLF || 'Error :'|| SQLERRM);
6374 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
6375 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
6376 'Procedure :arp_xla_extract_main_pkg.mfar_produit_app_by_crh'|| arp_global.CRLF||
6377 'Error :'||SQLERRM);
6378 FND_MSG_PUB.ADD;
6379 RAISE;
6380 END;
6381
6382 /*-------------------------------------------------------------------------------+
6383 | Procedure Name : mfar_get_ra
6384 | Description : Builds the MFAR distributions all the application distributions
6385 | when the corresponding CRH distributions are already posted
6386 | to GL or when the application distributions belong to a different
6387 | event than that of their corresponding CRH distributions.
6388 | Calls the procedure to insert into the extract after building
6389 | the additional distributions.
6390 +-------------------------------------------------------------------------------+
6391 | History :
6392 | 25-JUL-2010 Anshu Kaushal Created
6393 +------------------------------------------------------------------------------*/
6394
6395 PROCEDURE mfar_get_ra IS
6396
6397 CURSOR mfar_extract_app_cur IS
6398 Select
6399 ordered_crh.*
6400 ,-1 * ar_mfar_extract_s.NEXTVAL LINE_NUMBER
6401 FROM
6402 (SELECT
6403 gt.event_id EVENT_ID
6404 -- ,-1 * ar_mfar_extract_s.NEXTVAL LINE_NUMBER
6405 ,'Y' MFAR_ADDITIONAL_ENTRY
6406 ,trx.set_of_books_id LEDGER_ID
6407 ,lg.currency_code BASE_CURRENCY_CODE
6408 ,ra.org_id ORG_ID
6409 ,ard.line_id LINE_ID
6410 ,ra.receivable_application_id SOURCE_ID
6411 ,'RA' SOURCE_TABLE
6412 ,ra.cash_receipt_id HEADER_TABLE_ID
6413 ,'APPLICATION' POSTING_ENTITY
6414 ,gt.entity_id XLA_ENTITY_ID
6415 --
6416 ,ard.code_combination_id DIST_CCID
6417 ,ard.ref_dist_ccid REF_DIST_CCID
6418 ,ctlgd.code_Combination_id REF_CTLGD_CCID
6419 --
6420 ,cr.currency_code FROM_CURRENCY_CODE
6421 ,crh.exchange_rate FROM_EXCHANGE_RATE
6422 ,crh.exchange_rate_type FROM_EXCHANGE_RATE_TYPE
6423 ,crh.exchange_date FROM_EXCHANGE_DATE
6424 ,-1 * (NVL(ard.from_amount_cr,0)-NVL(ard.from_amount_dr,0)) FROM_AMOUNT
6425 ,-1 * (NVL(ard.from_acctd_amount_cr,0)-NVL(ard.from_acctd_amount_dr,0)) FROM_ACCTD_AMOUNT
6426 --
6427 ,trx.invoice_currency_code TO_CURRENCY_CODE
6428 ,trx.exchange_rate EXCHANGE_RATE
6429 ,trx.exchange_rate_type EXCHANGE_RATE_TYPE
6430 ,trx.exchange_date EXCHANGE_DATE
6431 ,-1 * (NVL(ard.amount_cr,0)-NVL(ard.amount_dr,0)) AMOUNT
6432 ,-1 * (NVL(ard.acctd_amount_cr,0)-NVL(ard.acctd_amount_dr,0)) ACCTD_AMOUNT
6433 --
6434 ,ra.receivable_application_id RECEIVABLE_APPLICATION_ID
6435 ,ra.cash_receipt_id CASH_RECEIPT_ID
6436 ,ra.applied_customer_trx_id CUSTOMER_TRX_ID
6437 ,ard.ref_customer_trx_line_id CUSTOMER_TRX_LINE_ID
6438 ,ard.ref_cust_trx_line_gl_dist_id CUST_TRX_LINE_GL_DIST_ID
6439 --
6440 ,ctl.inventory_item_id INVENTORY_ITEM_ID
6441 ,ctl.sales_tax_id SALES_TAX_ID
6442 ,trx.set_of_books_id SET_OF_BOOKS_ID
6443 ,trx.bill_to_site_use_id BILL_SITE_USE_ID
6444 ,trx.sold_to_site_use_id SOLD_SITE_USE_ID
6445 ,trx.ship_to_site_use_id SHIP_SITE_USE_ID
6446 ,trx.bill_to_customer_id BILL_CUSTOMER_ID
6447 ,trx.sold_to_customer_id SOLD_CUSTOMER_ID
6448 ,trx.ship_to_customer_id SHIP_CUSTOMER_ID
6449 ,ctl.tax_line_id TAX_LINE_ID
6450 --
6451 ,'Y' SELECT_FLAG
6452 ,'L' LEVEL_FLAG
6453 ,'T' FROM_TO_FLAG
6454 ,crhlatest.status CRH_STATUS
6455 ,crh.status APP_CRH_STATUS
6456 --
6457 ,gt.event_type_code EVENT_TYPE_CODE
6458 ,gt.event_class_code EVENT_CLASS_CODE
6459 ,gt.entity_code ENTITY_CODE
6460 --
6461 ,ard.third_party_id third_party_id
6462 ,ard.third_party_sub_id third_party_site_id
6463 ,DECODE(ard.third_party_id,NULL,NULL,'C') third_party_type
6464 ,ard.source_type source_type
6465 ,abs(crhlatest.amount+ nvl(crhlatest.factor_discount_amount,0)) RECP_AMOUNT
6466 ,abs(crhlatest.acctd_amount+ nvl(crhlatest.acctd_factor_discount_amount,0)) RECP_ACCTD_AMOUNT
6467 ,abs(crhlatest.amount) crh_amount
6468 ,abs(crhlatest.acctd_amount) crh_acctd_amount
6469 ,crhlatest.cash_receipt_history_id CRH_RECORD_ID
6470 ,decode(crhlatest.amount+ nvl(crhlatest.factor_discount_amount,0),0,0,
6471 ar_unposted_item_util.currRound((abs(crhlatest.amount)/abs(crhlatest.amount+ nvl(crhlatest.factor_discount_amount,0)))*ra.amount_applied,cr.currency_code)) ALLOC_AMOUNT
6472 ,decode(crhlatest.acctd_amount+ nvl(crhlatest.acctd_factor_discount_amount,0),0,0,
6473 ar_unposted_item_util.currRound((abs(crhlatest.acctd_amount)/abs(crhlatest.acctd_amount+ nvl(crhlatest.acctd_factor_discount_amount,0)))*ra.acctd_amount_applied_from,cr.currency_code)) ALLOC_ACCTD_AMOUNT
6474 ,ext.max_line_id MAX_LINE_ID
6475 ,decode(trx.upgrade_method,'R12_11ICASH','N','') mfar_upg_trx
6476 FROM xla_events_gt gt,
6477 ar_receivable_applications_all ra,
6478 ar_cash_receipt_history_all crh,
6479 ar_distributions_all ard,
6480 ra_customer_trx_all trx,
6481 ra_cust_trx_line_gl_dist_all ctlgd,
6482 ra_customer_trx_lines_all ctl,
6483 ar_cash_receipts_all cr,
6484 gl_ledgers lg,
6485 ar_cash_receipt_history_all crhlatest,
6486 (SELECT source_id,
6487 MAX(line_id) max_line_id
6488 FROM ar_xla_lines_extract
6489 WHERE source_table='RA'
6490 AND posting_entity='APP'
6491 AND event_class_code='RECEIPT'
6492 AND customer_trx_line_id IS NOT NULL
6493 GROUP BY source_id) ext
6494 WHERE gt.application_id = 222
6495 AND gt.event_type_code IN ('RECP_CREATE','RECP_UPDATE')
6496 AND gt.event_id = ra.event_id
6497 AND ra.status = 'APP'
6498 AND ard.source_id = ra.receivable_application_id
6499 AND ard.source_table = 'RA'
6500 AND nvl(ard.REF_MF_DIST_FLAG, 'Z') <> 'U'
6501 AND ard.source_type NOT IN ('EXCH_GAIN','EXCH_LOSS')
6502 AND ra.cash_receipt_history_id = crh.cash_receipt_history_id
6503 AND ra.cash_receipt_id = cr.cash_receipt_id
6504 AND trx.set_of_books_id = lg.ledger_id
6505 AND crh.cash_receipt_id = cr.cash_receipt_id
6506 AND crh.posting_control_id <> -3
6507 AND crh.cash_receipt_id = crhlatest.cash_receipt_id
6508 AND ard.ref_cust_trx_line_gl_dist_id = ctlgd.cust_trx_line_gl_dist_id(+)
6509 AND ard.ref_customer_trx_line_id = ctl.customer_trx_line_id(+)
6510 AND ra.applied_customer_trx_id = trx.customer_trx_id
6511 AND ra.receivable_application_id = ext.source_id
6512 AND crhlatest.cash_receipt_id = cr.cash_receipt_id
6513 AND crhlatest.cash_receipt_history_id =
6514 ( SELECT MAX(a.cash_receipt_history_id)
6515 FROM ar_cash_receipt_history_all a
6516 WHERE a.cash_receipt_id = cr.cash_receipt_id
6517 AND posting_control_id <> -3)
6518 UNION ALL
6519 SELECT
6520 gt.event_id EVENT_ID
6521 -- ,-1 * ar_mfar_extract_s.NEXTVAL LINE_NUMBER
6522 ,'Y' MFAR_ADDITIONAL_ENTRY
6523 ,trx.set_of_books_id LEDGER_ID
6524 ,lg.currency_code BASE_CURRENCY_CODE
6525 ,ra.org_id ORG_ID
6526 ,ard.line_id LINE_ID
6527 ,ra.receivable_application_id SOURCE_ID
6528 ,'RA' SOURCE_TABLE
6529 ,ra.cash_receipt_id HEADER_TABLE_ID
6530 ,'APPLICATION' POSTING_ENTITY
6531 ,gt.entity_id XLA_ENTITY_ID
6532 --
6533 ,ard.code_combination_id DIST_CCID
6534 ,ard.ref_dist_ccid REF_DIST_CCID
6535 ,ctlgd.code_Combination_id REF_CTLGD_CCID
6536 --
6537 ,cr.currency_code FROM_CURRENCY_CODE
6538 ,crh.exchange_rate FROM_EXCHANGE_RATE
6539 ,crh.exchange_rate_type FROM_EXCHANGE_RATE_TYPE
6540 ,crh.exchange_date FROM_EXCHANGE_DATE
6541 ,-1 * (NVL(ard.from_amount_cr,0)-NVL(ard.from_amount_dr,0)) FROM_AMOUNT
6542 ,-1 * (NVL(ard.from_acctd_amount_cr,0)-NVL(ard.from_acctd_amount_dr,0)) FROM_ACCTD_AMOUNT
6543 --
6544 ,trx.invoice_currency_code TO_CURRENCY_CODE
6545 ,trx.exchange_rate EXCHANGE_RATE
6546 ,trx.exchange_rate_type EXCHANGE_RATE_TYPE
6547 ,trx.exchange_date EXCHANGE_DATE
6548 ,-1 * (NVL(ard.amount_cr,0)-NVL(ard.amount_dr,0)) AMOUNT
6549 ,-1 * (NVL(ard.acctd_amount_cr,0)-NVL(ard.acctd_amount_dr,0)) ACCTD_AMOUNT
6550 --
6551 ,ra.receivable_application_id RECEIVABLE_APPLICATION_ID
6552 ,ra.cash_receipt_id CASH_RECEIPT_ID
6553 ,ra.applied_customer_trx_id CUSTOMER_TRX_ID
6554 ,ard.ref_customer_trx_line_id CUSTOMER_TRX_LINE_ID
6555 ,ard.ref_cust_trx_line_gl_dist_id CUST_TRX_LINE_GL_DIST_ID
6556 --
6557 ,ctl.inventory_item_id INVENTORY_ITEM_ID
6558 ,ctl.sales_tax_id SALES_TAX_ID
6559 ,trx.set_of_books_id SET_OF_BOOKS_ID
6560 ,trx.bill_to_site_use_id BILL_SITE_USE_ID
6561 ,trx.sold_to_site_use_id SOLD_SITE_USE_ID
6562 ,trx.ship_to_site_use_id SHIP_SITE_USE_ID
6563 ,trx.bill_to_customer_id BILL_CUSTOMER_ID
6564 ,trx.sold_to_customer_id SOLD_CUSTOMER_ID
6565 ,trx.ship_to_customer_id SHIP_CUSTOMER_ID
6566 ,ctl.tax_line_id TAX_LINE_ID
6567 --
6568 ,'Y' SELECT_FLAG
6569 ,'L' LEVEL_FLAG
6570 ,'T' FROM_TO_FLAG
6571 ,crh.status CRH_STATUS
6572 ,crh.status APP_CRH_STATUS
6573 --
6574 ,gt.event_type_code EVENT_TYPE_CODE
6575 ,gt.event_class_code EVENT_CLASS_CODE
6576 ,gt.entity_code ENTITY_CODE
6577 --
6578 ,ard.third_party_id third_party_id
6579 ,ard.third_party_sub_id third_party_site_id
6580 ,DECODE(ard.third_party_id,NULL,NULL,'C') third_party_type
6581 ,ard.source_type source_type
6582 ,abs(crh.amount+ nvl(crh.factor_discount_amount,0)) RECP_AMOUNT
6583 ,abs(crh.acctd_amount+ nvl(crh.acctd_factor_discount_amount,0)) RECP_ACCTD_AMOUNT
6584 ,abs(crh.amount) crh_amount
6585 ,abs(crh.acctd_amount) crh_acctd_amount
6586 ,crh.cash_receipt_history_id CRH_RECORD_ID
6587 ,decode(crh.amount+ nvl(crh.factor_discount_amount,0),0,0,
6588 ar_unposted_item_util.currRound((abs(crh.amount)/abs(crh.amount+ nvl(crh.factor_discount_amount,0)))*ra.amount_applied,cr.currency_code)) ALLOC_AMOUNT
6589 ,decode(crh.acctd_amount+ nvl(crh.acctd_factor_discount_amount,0),0,0,
6590 ar_unposted_item_util.currRound((abs(crh.acctd_amount)/abs(crh.acctd_amount+ nvl(crh.acctd_factor_discount_amount,0)))*ra.acctd_amount_applied_from,cr.currency_code)) ALLOC_ACCTD_AMOUNT
6591 ,ext.max_line_id MAX_LINE_ID
6592 ,decode(trx.upgrade_method,'R12_11ICASH','N','') mfar_upg_trx
6593 FROM xla_events_gt gt,
6594 ar_receivable_applications_all ra,
6595 ar_cash_receipt_history_all crh,
6596 ar_distributions_all ard,
6597 ra_customer_trx_all trx,
6598 ra_cust_trx_line_gl_dist_all ctlgd,
6599 ra_customer_trx_lines_all ctl,
6600 ar_cash_receipts_all cr,
6601 gl_ledgers lg,
6602 (SELECT source_id,
6603 MAX(line_id) max_line_id
6604 FROM ar_xla_lines_extract
6605 WHERE source_table='RA'
6606 AND posting_entity='APP'
6607 AND event_class_code='RECEIPT'
6608 AND customer_trx_line_id IS NOT NULL
6609 GROUP BY source_id) ext
6610 WHERE gt.application_id = 222
6611 AND gt.event_type_code IN ('RECP_CREATE','RECP_UPDATE')
6612 AND gt.event_id = ra.event_id
6613 AND ra.status = 'APP'
6614 AND ard.source_id = ra.receivable_application_id
6615 AND ard.source_table = 'RA'
6616 AND ra.receivable_application_id = ext.source_id
6617 AND nvl(ard.REF_MF_DIST_FLAG, 'Z') <> 'U'
6618 AND ard.source_type NOT IN ('EXCH_GAIN','EXCH_LOSS')
6619 AND ra.cash_receipt_history_id = crh.cash_receipt_history_id
6620 AND ra.cash_receipt_id = cr.cash_receipt_id
6621 AND trx.set_of_books_id = lg.ledger_id
6622 AND crh.cash_receipt_id = cr.cash_receipt_id
6623 /* Start fix for Bug 9644866 */
6624 AND crh.posting_control_id = -3
6625 AND ra.cash_receipt_history_id = crh.cash_receipt_history_id
6626 AND ra.event_id <> crh.event_id
6627 /* End fix for Bug 9644866 */
6628 AND ard.ref_cust_trx_line_gl_dist_id = ctlgd.cust_trx_line_gl_dist_id(+)
6629 AND ard.ref_customer_trx_line_id = ctl.customer_trx_line_id(+)
6630 AND ra.applied_customer_trx_id = trx.customer_trx_id
6631 UNION ALL
6632 SELECT
6633 gt.event_id EVENT_ID
6634 -- ,-1 * ar_mfar_extract_s.NEXTVAL LINE_NUMBER
6635 ,'Y' MFAR_ADDITIONAL_ENTRY
6636 ,trx.set_of_books_id LEDGER_ID
6637 ,lg.currency_code BASE_CURRENCY_CODE
6638 ,ra.org_id ORG_ID
6639 ,ard.line_id LINE_ID
6640 ,ra.receivable_application_id SOURCE_ID
6641 ,'RA' SOURCE_TABLE
6642 ,ra.cash_receipt_id HEADER_TABLE_ID
6643 ,'APPLICATION' POSTING_ENTITY
6644 ,gt.entity_id XLA_ENTITY_ID
6645 --
6646 ,ard.code_combination_id DIST_CCID
6647 ,ard.ref_dist_ccid REF_DIST_CCID
6648 ,ctlgd.code_Combination_id REF_CTLGD_CCID
6649 --
6650 ,cr.currency_code FROM_CURRENCY_CODE
6651 ,crh.exchange_rate FROM_EXCHANGE_RATE
6652 ,crh.exchange_rate_type FROM_EXCHANGE_RATE_TYPE
6653 ,crh.exchange_date FROM_EXCHANGE_DATE
6654 ,-1 * (NVL(ard.from_amount_cr,0)-NVL(ard.from_amount_dr,0)) FROM_AMOUNT
6655 ,-1 * (NVL(ard.from_acctd_amount_cr,0)-NVL(ard.from_acctd_amount_dr,0)) FROM_ACCTD_AMOUNT
6656 --
6657 ,trx.invoice_currency_code TO_CURRENCY_CODE
6658 ,trx.exchange_rate EXCHANGE_RATE
6659 ,trx.exchange_rate_type EXCHANGE_RATE_TYPE
6660 ,trx.exchange_date EXCHANGE_DATE
6661 ,-1 * (NVL(ard.amount_cr,0)-NVL(ard.amount_dr,0)) AMOUNT
6662 ,-1 * (NVL(ard.acctd_amount_cr,0)-NVL(ard.acctd_amount_dr,0)) ACCTD_AMOUNT
6663 --
6664 ,ra.receivable_application_id RECEIVABLE_APPLICATION_ID
6665 ,ra.cash_receipt_id CASH_RECEIPT_ID
6666 ,ra.applied_customer_trx_id CUSTOMER_TRX_ID
6667 ,ard.ref_customer_trx_line_id CUSTOMER_TRX_LINE_ID
6668 ,ard.ref_cust_trx_line_gl_dist_id CUST_TRX_LINE_GL_DIST_ID
6669 --
6670 ,ctl.inventory_item_id INVENTORY_ITEM_ID
6671 ,ctl.sales_tax_id SALES_TAX_ID
6672 ,trx.set_of_books_id SET_OF_BOOKS_ID
6673 ,trx.bill_to_site_use_id BILL_SITE_USE_ID
6674 ,trx.sold_to_site_use_id SOLD_SITE_USE_ID
6675 ,trx.ship_to_site_use_id SHIP_SITE_USE_ID
6676 ,trx.bill_to_customer_id BILL_CUSTOMER_ID
6677 ,trx.sold_to_customer_id SOLD_CUSTOMER_ID
6678 ,trx.ship_to_customer_id SHIP_CUSTOMER_ID
6679 ,ctl.tax_line_id TAX_LINE_ID
6680 --
6681 ,'Y' SELECT_FLAG
6682 ,'L' LEVEL_FLAG
6683 ,'T' FROM_TO_FLAG
6684 ,'BANK_CHARGES' CRH_STATUS
6685 ,crh.status APP_CRH_STATUS
6686 --
6687 ,gt.event_type_code EVENT_TYPE_CODE
6688 ,gt.event_class_code EVENT_CLASS_CODE
6689 ,gt.entity_code ENTITY_CODE
6690 --
6691 ,ard.third_party_id third_party_id
6692 ,ard.third_party_sub_id third_party_site_id
6693 ,DECODE(ard.third_party_id,NULL,NULL,'C') third_party_type
6694 ,ard.source_type source_type
6695 ,abs(crhlatest.amount+ nvl(crhlatest.factor_discount_amount,0)) RECP_AMOUNT
6696 ,abs(crhlatest.acctd_amount+ nvl(crhlatest.acctd_factor_discount_amount,0)) RECP_ACCTD_AMOUNT
6697 ,abs(crhlatest.factor_discount_amount) crh_amount
6698 ,abs(crhlatest.acctd_factor_discount_amount) crh_acctd_amount
6699 ,crhlatest.cash_receipt_history_id CRH_RECORD_ID
6700 ,decode(crhlatest.amount+ nvl(crhlatest.factor_discount_amount,0),0,0,
6701 ar_unposted_item_util.currRound(ra.amount_applied-((abs(crhlatest.amount)/abs(crhlatest.amount+ nvl(crhlatest.factor_discount_amount,0)))*ra.amount_applied),cr.currency_code)) ALLOC_AMOUNT
6702 ,decode(crhlatest.acctd_amount+ nvl(crhlatest.acctd_factor_discount_amount,0),0,0,
6703 ar_unposted_item_util.currRound(ra.acctd_amount_applied_from-((abs(crhlatest.acctd_amount)/abs(crhlatest.acctd_amount+ nvl(crhlatest.acctd_factor_discount_amount,0)))*ra.acctd_amount_applied_from),cr.currency_code)) ALLOC_ACCTD_AMOUNT
6704 ,ext.max_line_id MAX_LINE_ID
6705 ,decode(trx.upgrade_method,'R12_11ICASH','N','') mfar_upg_trx
6706 FROM xla_events_gt gt,
6707 ar_receivable_applications_all ra,
6708 ar_cash_receipt_history_all crh,
6709 ar_distributions_all ard,
6710 ra_customer_trx_all trx,
6711 ra_cust_trx_line_gl_dist_all ctlgd,
6712 ra_customer_trx_lines_all ctl,
6713 ar_cash_receipts_all cr,
6714 gl_ledgers lg,
6715 ar_cash_receipt_history_all crhlatest,
6716 (SELECT source_id,
6717 MAX(line_id) max_line_id
6718 FROM ar_xla_lines_extract
6719 WHERE source_table='RA'
6720 AND posting_entity='APP'
6721 AND event_class_code='RECEIPT'
6722 AND customer_trx_line_id IS NOT NULL
6723 GROUP BY source_id) ext
6724 WHERE gt.application_id = 222
6725 AND gt.event_type_code IN ('RECP_CREATE','RECP_UPDATE')
6726 AND gt.event_id = ra.event_id
6727 AND ra.status = 'APP'
6728 AND ard.source_id = ra.receivable_application_id
6729 AND ard.source_table = 'RA'
6730 AND ra.receivable_application_id = ext.source_id
6731 AND nvl(ard.REF_MF_DIST_FLAG, 'Z') <> 'U'
6732 AND ard.source_type NOT IN ('EXCH_GAIN','EXCH_LOSS')
6733 AND ra.cash_receipt_history_id = crh.cash_receipt_history_id
6734 AND ra.cash_receipt_id = cr.cash_receipt_id
6735 AND trx.set_of_books_id = lg.ledger_id
6736 AND crh.cash_receipt_id = cr.cash_receipt_id
6737 AND crh.posting_control_id <> -3
6738 AND crh.cash_receipt_id = crhlatest.cash_receipt_id
6739 AND ard.ref_cust_trx_line_gl_dist_id = ctlgd.cust_trx_line_gl_dist_id(+)
6740 AND ard.ref_customer_trx_line_id = ctl.customer_trx_line_id(+)
6741 AND ra.applied_customer_trx_id = trx.customer_trx_id
6742 AND crhlatest.cash_receipt_id = cr.cash_receipt_id
6743 AND crhlatest.cash_receipt_history_id =
6744 ( SELECT MAX(a.cash_receipt_history_id)
6745 FROM ar_cash_receipt_history_all a
6746 WHERE a.cash_receipt_id = cr.cash_receipt_id
6747 AND a.posting_control_id <> -3)
6748 AND crhlatest.status = 'CLEARED'
6749 AND NVL(crhlatest.factor_discount_amount,0) <> 0
6750 AND NVL(crhlatest.acctd_factor_discount_amount,0) <> 0
6751 UNION ALL
6752 SELECT
6753 gt.event_id EVENT_ID
6754 -- ,-1 * ar_mfar_extract_s.NEXTVAL LINE_NUMBER
6755 ,'Y' MFAR_ADDITIONAL_ENTRY
6756 ,trx.set_of_books_id LEDGER_ID
6757 ,lg.currency_code BASE_CURRENCY_CODE
6758 ,ra.org_id ORG_ID
6759 ,ard.line_id LINE_ID
6760 ,ra.receivable_application_id SOURCE_ID
6761 ,'RA' SOURCE_TABLE
6762 ,ra.cash_receipt_id HEADER_TABLE_ID
6763 ,'APPLICATION' POSTING_ENTITY
6764 ,gt.entity_id XLA_ENTITY_ID
6765 --
6766 ,ard.code_combination_id DIST_CCID
6767 ,ard.ref_dist_ccid REF_DIST_CCID
6768 ,ctlgd.code_Combination_id REF_CTLGD_CCID
6769 --
6770 ,cr.currency_code FROM_CURRENCY_CODE
6771 ,crh.exchange_rate FROM_EXCHANGE_RATE
6772 ,crh.exchange_rate_type FROM_EXCHANGE_RATE_TYPE
6773 ,crh.exchange_date FROM_EXCHANGE_DATE
6774 ,-1 * (NVL(ard.from_amount_cr,0)-NVL(ard.from_amount_dr,0)) FROM_AMOUNT
6775 ,-1 * (NVL(ard.from_acctd_amount_cr,0)-NVL(ard.from_acctd_amount_dr,0)) FROM_ACCTD_AMOUNT
6776 --
6777 ,trx.invoice_currency_code TO_CURRENCY_CODE
6778 ,trx.exchange_rate EXCHANGE_RATE
6779 ,trx.exchange_rate_type EXCHANGE_RATE_TYPE
6780 ,trx.exchange_date EXCHANGE_DATE
6781 ,-1 * (NVL(ard.amount_cr,0)-NVL(ard.amount_dr,0)) AMOUNT
6782 ,-1 * (NVL(ard.acctd_amount_cr,0)-NVL(ard.acctd_amount_dr,0)) ACCTD_AMOUNT
6783 --
6784 ,ra.receivable_application_id RECEIVABLE_APPLICATION_ID
6785 ,ra.cash_receipt_id CASH_RECEIPT_ID
6786 ,ra.applied_customer_trx_id CUSTOMER_TRX_ID
6787 ,ard.ref_customer_trx_line_id CUSTOMER_TRX_LINE_ID
6788 ,ard.ref_cust_trx_line_gl_dist_id CUST_TRX_LINE_GL_DIST_ID
6789 --
6790 ,ctl.inventory_item_id INVENTORY_ITEM_ID
6791 ,ctl.sales_tax_id SALES_TAX_ID
6792 ,trx.set_of_books_id SET_OF_BOOKS_ID
6793 ,trx.bill_to_site_use_id BILL_SITE_USE_ID
6794 ,trx.sold_to_site_use_id SOLD_SITE_USE_ID
6795 ,trx.ship_to_site_use_id SHIP_SITE_USE_ID
6796 ,trx.bill_to_customer_id BILL_CUSTOMER_ID
6797 ,trx.sold_to_customer_id SOLD_CUSTOMER_ID
6798 ,trx.ship_to_customer_id SHIP_CUSTOMER_ID
6799 ,ctl.tax_line_id TAX_LINE_ID
6800 --
6801 ,'Y' SELECT_FLAG
6802 ,'L' LEVEL_FLAG
6803 ,'T' FROM_TO_FLAG
6804 ,'BANK_CHARGES' CRH_STATUS
6805 ,crh.status APP_CRH_STATUS
6806 --
6807 ,gt.event_type_code EVENT_TYPE_CODE
6808 ,gt.event_class_code EVENT_CLASS_CODE
6809 ,gt.entity_code ENTITY_CODE
6810 --
6811 ,ard.third_party_id third_party_id
6812 ,ard.third_party_sub_id third_party_site_id
6813 ,DECODE(ard.third_party_id,NULL,NULL,'C') third_party_type
6814 ,ard.source_type source_type
6815 ,abs(crh.amount + nvl(crh.factor_discount_amount,0)) RECP_AMOUNT
6816 ,abs(crh.acctd_amount + nvl(crh.acctd_factor_discount_amount,0)) RECP_ACCTD_AMOUNT
6817 ,abs(crhgt.amount) crh_amount
6818 ,abs(crhgt.acctd_amount) crh_acctd_amount
6819 ,crh.cash_receipt_history_id CRH_RECORD_ID
6820 ,decode(crh.amount+ nvl(crh.factor_discount_amount,0),0,0,
6821 ar_unposted_item_util.currRound(ra.amount_applied-((abs(crh.amount)/abs(crh.amount+ nvl(crh.factor_discount_amount,0)))*ra.amount_applied),cr.currency_code)) ALLOC_AMOUNT
6822 ,decode(crh.acctd_amount+ nvl(crh.acctd_factor_discount_amount,0),0,0,
6823 ar_unposted_item_util.currRound(ra.acctd_amount_applied_from-((abs(crh.acctd_amount)/abs(crh.acctd_amount+ nvl(crh.acctd_factor_discount_amount,0)))*ra.acctd_amount_applied_from),cr.currency_code)) ALLOC_ACCTD_AMOUNT
6824 ,ext.max_line_id MAX_LINE_ID
6825 ,decode(trx.upgrade_method,'R12_11ICASH','N','') mfar_upg_trx
6826 FROM xla_events_gt gt,
6827 ar_receivable_applications_all ra,
6828 ar_cash_receipt_history_all crh,
6829 ar_distributions_all ard,
6830 ra_customer_trx_all trx,
6831 ra_cust_trx_line_gl_dist_all ctlgd,
6832 ra_customer_trx_lines_all ctl,
6833 ar_cash_receipts_all cr,
6834 gl_ledgers lg,
6835 ar_crh_gt crhgt,
6836 (SELECT source_id,
6837 MAX(line_id) max_line_id
6838 FROM ar_xla_lines_extract
6839 WHERE source_table='RA'
6840 AND posting_entity='APP'
6841 AND event_class_code='RECEIPT'
6842 AND customer_trx_line_id IS NOT NULL
6843 GROUP BY source_id) ext
6844 WHERE gt.application_id = 222
6845 AND gt.event_type_code IN ('RECP_CREATE','RECP_UPDATE')
6846 AND gt.event_id = ra.event_id
6847 AND ra.status = 'APP'
6848 AND ard.source_id = ra.receivable_application_id
6849 AND ard.source_table = 'RA'
6850 AND ra.receivable_application_id = ext.source_id
6851 AND nvl(ard.REF_MF_DIST_FLAG, 'Z') <> 'U'
6852 AND ard.source_type NOT IN ('EXCH_GAIN','EXCH_LOSS')
6853 AND ra.cash_receipt_history_id = crh.cash_receipt_history_id
6854 AND ra.cash_receipt_id = cr.cash_receipt_id
6855 AND trx.set_of_books_id = lg.ledger_id
6856 AND crh.cash_receipt_id = cr.cash_receipt_id
6857 AND crh.posting_control_id = -3
6858 AND ra.event_id <> crh.event_id
6859 AND ard.ref_cust_trx_line_gl_dist_id = ctlgd.cust_trx_line_gl_dist_id(+)
6860 AND ard.ref_customer_trx_line_id = ctl.customer_trx_line_id(+)
6861 AND ra.applied_customer_trx_id = trx.customer_trx_id
6862 AND crhgt.cash_receipt_id = crh.cash_receipt_id
6863 AND crhgt.cash_receipt_history_id = crh.cash_receipt_history_id
6864 AND crhgt.status = 'BANK_CHARGES'
6865 AND sign(crhgt.CRH_LINE_ID) <> -1
6866 AND crh.status = 'CLEARED'
6867 AND NVL(crh.factor_discount_amount,0) <> 0
6868 AND NVL(crh.acctd_factor_discount_amount,0) <> 0
6869 order by CASH_RECEIPT_ID, LINE_ID, CRH_RECORD_ID, CRH_STATUS
6870 ) ordered_crh;
6871
6872
6873 -- crh_mfar_extract_record table type local variable
6874 l_crh_mfar_extract_record crh_mfar_extract_record_type;
6875
6876
6877 BEGIN
6878 local_log(procedure_name => 'mfar_get_ra',
6879 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_get_ra ()+');
6880
6881 OPEN mfar_extract_app_cur;
6882 LOOP
6883 FETCH mfar_extract_app_cur BULK COLLECT INTO l_crh_mfar_extract_record LIMIT MAX_ARRAY_SIZE;
6884 IF PG_DEBUG in ('Y', 'C') THEN
6885 arp_standard.debug('mfar_produit_app_by_crh current fetch count '|| l_crh_mfar_extract_record.count);
6886 END IF;
6887
6888 IF l_crh_mfar_extract_record.count = 0 THEN
6889 EXIT;
6890 END IF;
6891
6892 -- Calculate prorated amounts and insert data into extract
6893 mfar_insert_crh_extract (l_crh_mfar_extract_record);
6894
6895 END LOOP;
6896
6897 CLOSE mfar_extract_app_cur;
6898
6899 local_log(procedure_name => 'mfar_get_ra',
6900 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_get_ra ()-');
6901 EXCEPTION
6902 -- WHEN NO_DATA_FOUND THEN NULL;
6903 WHEN OTHERS THEN
6904 local_log(procedure_name => 'mfar_get_ra',
6905 p_msg_text => 'EXCEPTION OTHERS in mfar_get_ra '||
6906 arp_global.CRLF || 'Error :'|| SQLERRM);
6907 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
6908 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
6909 'Procedure :arp_xla_extract_main_pkg.mfar_get_ra'|| arp_global.CRLF||
6910 'Error :'||SQLERRM);
6911 FND_MSG_PUB.ADD;
6912 RAISE;
6913 END mfar_get_ra;
6914
6915 /*-----------------------------------------------------------------+
6916 | Procedure Name : mfar_rctapp_curr_round |
6917 | Description : Create Line Level CURR_ROUND distributions |
6918 | for MFAR Accounting Customers |
6919 +-----------------------------------------------------------------+
6920 | History : |
6921 | 02-AUG-2010 Anshu Kaushal Created due to bug#9761480 |
6922 +-----------------------------------------------------------------*/
6923 PROCEDURE mfar_rctapp_curr_round
6924 IS
6925 BEGIN
6926 local_log(procedure_name => 'mfar_rctapp_curr_round',
6927 p_msg_text => 'arp_xla_extract_main_pkg.mfar_rctapp_curr_round ()+');
6928
6929 INSERT INTO ar_xla_lines_extract (
6930 EVENT_ID
6931 ,LINE_NUMBER
6932 ,LANGUAGE
6933 ,LEDGER_ID
6934 ,SOURCE_ID
6935 ,SOURCE_TABLE
6936 ,LINE_ID
6937 ,TAX_CODE_ID
6938 ,LOCATION_SEGMENT_ID
6939 ,BASE_CURRENCY_CODE
6940 ,EXCHANGE_RATE_TYPE
6941 ,EXCHANGE_RATE
6942 ,EXCHANGE_DATE
6943 ,ACCTD_AMOUNT
6944 ,TAXABLE_ACCTD_AMOUNT
6945 ,ORG_ID
6946 ,HEADER_TABLE_ID
6947 ,POSTING_ENTITY
6948 ,CASH_RECEIPT_ID
6949 ,CUSTOMER_TRX_ID
6950 ,CUSTOMER_TRX_LINE_ID
6951 ,CUST_TRX_LINE_GL_DIST_ID
6952 ,CUST_TRX_LINE_SALESREP_ID
6953 ,INVENTORY_ITEM_ID
6954 ,SALES_TAX_ID
6955 ,SO_ORGANIZATION_ID
6956 ,TAX_EXEMPTION_ID
6957 ,UOM_CODE
6958 ,WAREHOUSE_ID
6959 ,AGREEMENT_ID
6960 ,CUSTOMER_BANK_ACCT_ID
6961 ,DRAWEE_BANK_ACCOUNT_ID
6962 ,REMITTANCE_BANK_ACCT_ID
6963 ,DISTRIBUTION_SET_ID
6964 ,PAYMENT_SCHEDULE_ID
6965 ,RECEIPT_METHOD_ID
6966 ,RECEIVABLES_TRX_ID
6967 ,ED_ADJ_RECEIVABLES_TRX_ID
6968 ,UNED_RECEIVABLES_TRX_ID
6969 ,SET_OF_BOOKS_ID
6970 ,SALESREP_ID
6971 ,BILL_SITE_USE_ID
6972 ,DRAWEE_SITE_USE_ID
6973 ,PAYING_SITE_USE_ID
6974 ,SOLD_SITE_USE_ID
6975 ,SHIP_SITE_USE_ID
6976 ,RECEIPT_CUSTOMER_SITE_USE_ID
6977 ,BILL_CUST_ROLE_ID
6978 ,DRAWEE_CUST_ROLE_ID
6979 ,SHIP_CUST_ROLE_ID
6980 ,SOLD_CUST_ROLE_ID
6981 ,BILL_CUSTOMER_ID
6982 ,DRAWEE_CUSTOMER_ID
6983 ,PAYING_CUSTOMER_ID
6984 ,SOLD_CUSTOMER_ID
6985 ,SHIP_CUSTOMER_ID
6986 ,REMIT_ADDRESS_ID
6987 ,RECEIPT_BATCH_ID
6988 ,RECEIVABLE_APPLICATION_ID
6989 ,CUSTOMER_BANK_BRANCH_ID
6990 ,ISSUER_BANK_BRANCH_ID
6991 ,BATCH_SOURCE_ID
6992 ,BATCH_ID
6993 ,TERM_ID
6994 ,SELECT_FLAG
6995 ,LEVEL_FLAG
6996 ,FROM_TO_FLAG
6997 ,FROM_AMOUNT
6998 ,AMOUNT
6999 ,FROM_ACCTD_AMOUNT
7000 ,CRH_STATUS
7001 ,event_type_code
7002 ,event_class_code
7003 ,entity_code
7004 ,tax_line_id
7005 ,additional_char1
7006 ,FROM_EXCHANGE_RATE
7007 ,FROM_EXCHANGE_RATE_TYPE
7008 ,FROM_EXCHANGE_DATE
7009 ,FROM_CURRENCY_CODE
7010 ,TO_CURRENCY_CODE
7011 ,MFAR_ADDITIONAL_ENTRY
7012 ,SOURCE_TYPE
7013 ,DIST_CCID
7014 ,REF_DIST_CCID
7015 )
7016 SELECT /*+LEADING(gt) USE_NL(gt, app)*/
7017 gt.event_id, -- EVENT_ID
7018 -1 * ar_mfar_extract_s.nextval, -- LINE_NUMBER
7019 '', -- LANGUAGE
7020 sob.set_of_books_id, -- LEDGER_ID
7021 dist.source_id, -- SOURCE_ID
7022 dist.source_table, -- SOURCE_TABLE
7023 dist.line_id, -- LINE_ID
7024 dist.tax_code_id, -- TAX_CODE_ID
7025 dist.location_segment_id, -- LOCATION_SEGMENT_ID
7026 sob.currency_code, -- BASE_CURRENCY
7027 trxt.exchange_rate_type, -- EXCHANGE_RATE_TYPE
7028 trxt.exchange_rate, -- EXCHANGE_RATE
7029 decode(trxt.invoice_currency_code,sob.currency_code,
7030 trxt.trx_date, trxt.exchange_date), -- EXCHANGE_DATE
7031 (NVL(dist.acctd_amount_dr,0) -
7032 NVL(dist.acctd_amount_cr,0)) - ( NVL(dist.from_acctd_amount_dr,0) -
7033 NVL(dist.from_acctd_amount_cr,0)) ACCTD_AMOUNT
7034 ,NVL(dist.taxable_accounted_dr,0) -
7035 NVL(dist.taxable_accounted_cr,0), -- TAXABLE_ACCTD_AMOUNT
7036 app.org_id, -- ORG_ID
7037 app.receivable_application_id, -- HEADER_TABLE_ID
7038 'APP_CURR_ROUND', -- POSTING_ENTITY
7039 NULL, -- CASH_RECEIPT_ID
7040 trxt.customer_trx_id, -- CUSTOMER_TRX_ID
7041 tlt.customer_trx_line_id, -- CUSTOMER_TRX_LINE_ID
7042 gldt.cust_trx_line_gl_dist_id, -- CUST_TRX_LINE_GL_DIST_ID
7043 gldt.cust_trx_line_salesrep_id, -- CUST_TRX_LINE_SALESREP_ID
7044 tlt.inventory_item_id, -- INVENTORY_ITEM_ID
7045 tlt.sales_tax_id, -- SALES_TAX_ID
7046 osp.master_organization_id, -- SO_ORGANIZATION_ID
7047 tlt.tax_exemption_id, -- TAX_EXEMPTION_ID
7048 tlt.uom_code, -- UOM_CODE
7049 tlt.warehouse_id, -- WAREHOUSE_ID
7050 trxt.agreement_id, -- AGREEMENT_ID
7051 trxt.customer_bank_account_id, -- CUSTOMER_BANK_ACCT_ID
7052 trxt.drawee_bank_account_id, -- DRAWEE_BANK_ACCOUNT_ID
7053 trxt.remit_bank_acct_use_id, -- REMITTANCE_BANK_ACCT_ID
7054 NULL, -- DISTRIBUTION_SET_ID
7055 psch.payment_schedule_id, -- PAYMENT_SCHEDULE_ID
7056 trxt.receipt_method_id, -- RECEIPT_METHOD_ID
7057 NULL, -- RECEIVABLES_TRX_ID
7058 arp_xla_extract_main_pkg.ed_uned_trx('EDISC',app.org_id), -- ED_ADJ_RECEIVABLES_TRX_ID
7059 arp_xla_extract_main_pkg.ed_uned_trx('UNEDISC',app.org_id), -- UNED_RECEIVABLES_TRX_ID
7060 trxt.set_of_books_id, -- SET_OF_BOOKS_ID
7061 trxt.primary_salesrep_id, -- SALESREP_ID
7062 trxt.bill_to_site_use_id, -- BILL_SITE_USE_ID
7063 trxt.drawee_site_use_id, -- DRAWEE_SITE_USE_ID
7064 trxt.paying_site_use_id, -- PAYING_SITE_USE_ID
7065 trxt.sold_to_site_use_id, -- SOLD_SITE_USE_ID
7066 trxt.ship_to_site_use_id, -- SHIP_SITE_USE_ID
7067 NULL, -- RECEIPT_CUSTOMER_SITE_USE_ID
7068 trxt.bill_to_contact_id, -- BILL_CUST_ROLE_ID
7069 trxt.drawee_contact_id, -- DRAWEE_CUST_ROLE_ID
7070 trxt.ship_to_contact_id, -- SHIP_CUST_ROLE_ID
7071 trxt.sold_to_contact_id, -- SOLD_CUST_ROLE_ID
7072 trxt.bill_to_customer_id, -- BILL_CUSTOMER_ID
7073 trxt.drawee_id, -- DRAWEE_CUSTOMER_ID
7074 trxt.paying_customer_id, -- PAYING_CUSTOMER_ID
7075 trxt.sold_to_customer_id, -- SOLD_CUSTOMER_ID
7076 trxt.ship_to_customer_id, -- SHIP_CUSTOMER_ID
7077 trxt.remit_to_address_id, -- REMIT_ADDRESS_ID
7078 NULL, -- RECEIPT_BATCH_ID
7079 NULL, -- RECEIVABLE_APPLICATION_ID
7080 NULL, -- CUSTOMER_BANK_BRANCH_ID
7081 NULL, -- ISSUER_BANK_BRANCH_ID
7082 trxt.batch_source_id, -- BATCH_SOURCE_ID
7083 trxt.batch_id, -- BATCH_ID
7084 trxt.term_id, -- TERM_ID
7085 'Y', -- SELECT_FLAG
7086 'L', -- LEVEL_FLAG
7087 'T', -- FROM_TO_FLAG
7088 (NVL(dist.amount_dr,0) - NVL(dist.amount_cr,0))
7089 - (NVL(dist.from_amount_dr,0) - NVL(dist.from_amount_cr,0)) FROM_AMOUNT
7090 ,(NVL(dist.amount_dr,0) - NVL(dist.amount_cr,0))
7091 - (NVL(dist.from_amount_dr,0) - NVL(dist.from_amount_cr,0)) AMOUNT
7092 , (NVL(dist.acctd_amount_dr,0) -
7093 NVL(dist.acctd_amount_cr,0)) - ( NVL(dist.from_acctd_amount_dr,0) -
7094 NVL(dist.from_acctd_amount_cr,0)) FROM_ACCTD_AMOUNT
7095 ,'CURR_ROUND'
7096 ,gt.event_type_code
7097 ,gt.event_class_code
7098 ,gt.entity_code
7099 ,tlt.tax_line_id
7100 ,app.upgrade_method
7101 ,cr.exchange_rate
7102 ,cr.exchange_rate_type
7103 ,cr.exchange_date
7104 ,cr.currency_code
7105 ,trxt.invoice_currency_code
7106 ,'Y' --MFAR_ADDITIONAL_ENTRY
7107 , 'CURR_ROUND'
7108 , currard.code_combination_id
7109 , dist.ref_dist_ccid
7110 FROM xla_events_gt gt,
7111 ar_receivable_applications_all app,
7112 ar_distributions_all dist,
7113 gl_sets_of_books sob,
7114 oe_system_parameters_all osp,
7115 ra_customer_trx_all trxt,
7116 ra_customer_trx_lines_all tlt,
7117 ra_cust_trx_line_gl_dist_all gldt,
7118 ar_payment_schedules_all psch,
7119 ar_cash_receipts_all cr,
7120 ar_distributions_all currard
7121 WHERE gt.event_type_code IN ('RECP_CREATE' ,'RECP_UPDATE', 'RECP_RATE_ADJUST' )
7122 AND gt.application_id = 222
7123 AND gt.event_id = app.event_id
7124 AND (app.upgrade_method IN ('R12_NLB','R12', 'R12_11IMFAR', 'R12_11ICASH','11I_R12_POST','R12_MERGE')
7125 OR (app.upgrade_method IS NULL AND app.status = 'APP')
7126 OR (DECODE(app.upgrade_method,
7127 '11I_MFAR_UPG' ,DECODE(dist.source_table_secondary,'UPMFRAMIAR','Y','N'),
7128 'N') = 'Y'))
7129 AND app.set_of_books_id = sob.set_of_books_id
7130 AND app.org_id = osp.org_id(+)
7131 AND app.applied_customer_trx_id = trxt.customer_trx_id
7132 AND app.cash_receipt_id = cr.cash_receipt_id
7133 AND dist.source_id = app.receivable_application_id
7134 AND dist.source_table = 'RA'
7135 AND dist.ref_customer_trx_line_id = tlt.customer_trx_line_id(+)
7136 AND dist.ref_cust_trx_line_gl_dist_id = gldt.cust_trx_line_gl_dist_id(+)
7137 AND trxt.customer_trx_id = psch.customer_trx_id
7138 AND NVL(psch.terms_sequence_number,1) = 1
7139 AND (NVL(dist.acctd_amount_cr,0) - NVL(dist.acctd_amount_dr,0))
7140 <> (NVL(dist.from_acctd_amount_cr,0) - NVL(dist.from_acctd_amount_dr,0))
7141 AND dist.source_type = 'REC'
7142 AND dist.source_id = currard.source_id
7143 AND dist.source_table = currard.source_table
7144 AND currard.source_type = 'CURR_ROUND';
7145
7146
7147 local_log(procedure_name => 'mfar_rctapp_curr_round',
7148 p_msg_text => 'arp_xla_extract_main_pkg.mfar_rctapp_curr_round ()-');
7149
7150 EXCEPTION
7151 -- WHEN NO_DATA_FOUND THEN NULL;
7152 WHEN OTHERS THEN
7153 local_log(procedure_name => 'mfar_rctapp_curr_round',
7154 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.mfar_rctapp_curr_round '||
7155 arp_global.CRLF || 'Error :'|| SQLERRM);
7156 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
7157 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
7158 'Procedure :arp_xla_extract_main_pkg.mfar_rctapp_curr_round'|| arp_global.CRLF||
7159 'Error :'||SQLERRM);
7160 FND_MSG_PUB.ADD;
7161 RAISE;
7162 END mfar_rctapp_curr_round;
7163
7164
7165 PROCEDURE mfar_mcd_dist_cr IS
7166 BEGIN
7167 local_log(procedure_name => 'mfar_mcd_dist_cr',
7168 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_mcd_dist_cr ()+');
7169 INSERT INTO ar_crh_app_gt (
7170 entity_id
7171 ,receivable_application_id
7172 ,cash_receipt_history_id
7173 ,cash_receipt_history_status
7174 ,line_id
7175 ,amount
7176 ,acctd_amount
7177 ,from_amount
7178 ,from_acctd_amount
7179 ,third_party_id
7180 ,third_party_site_id
7181 ,third_party_type
7182 ,from_currency_code
7183 ,from_exchange_rate
7184 ,from_exchange_type
7185 ,from_exchange_date
7186 ,to_currency_code
7187 ,to_exchange_rate
7188 ,to_exchange_type
7189 ,to_exchange_date
7190 ,ref_customer_trx_line_id
7191 ,ref_cust_trx_line_gl_dist_id
7192 ,code_combination_id
7193 ,ref_code_combination_id
7194 ,ref_dist_ccid
7195 ,activity_bucket
7196 ,source_type
7197 ,source_table
7198 ,ra_post_indicator
7199 ,crh_post_indicator
7200 ,customer_trx_id
7201 ,inventory_item_id
7202 ,sales_tax_id
7203 ,tax_line_id
7204 ,bill_to_customer_id
7205 ,bill_to_site_use_id
7206 ,sold_to_customer_id
7207 ,sold_to_site_use_id
7208 ,ship_to_customer_id
7209 ,ship_to_site_use_id
7210 ,signed_receipt_amount)
7211 SELECT xla.entity_id --entity_id
7212 ,mcd.misc_cash_distribution_id --receivable_application_id
7213 ,NULL --cash_receipt_history_id
7214 ,NULL --cash_receipt_history_status
7215 ,ard.line_id --line_id
7216 ,NVL(ard.amount_cr,0)-
7217 NVL(ard.amount_dr,0) --amount
7218 ,NVL(ard.acctd_amount_cr,0)-
7219 NVL(ard.acctd_amount_dr,0) --acctd_amount
7220 ,NVL(ard.from_amount_cr,0)-
7221 NVL(ard.from_amount_dr,0) --from_amount
7222 ,NVL(ard.from_acctd_amount_cr,0)-
7223 NVL(ard.from_acctd_amount_dr,0) --from_acctd_amount
7224 ,NULL --third_party_id
7225 ,NULL --third_party_site_id
7226 ,NULL --third_party_type
7227 ,cr.currency_code --from_currency_code
7228 ,NVL(crh.exchange_rate,cr.exchange_rate) --from_exchange_rate
7229 ,NVL(crh.exchange_rate_type,cr.exchange_rate_type) --from_exchange_type
7230 ,NVL(crh.exchange_date,cr.exchange_date) --from_exchange_date
7231 ,NULL --to_currency_code
7232 ,NULL --to_exchange_rate
7233 ,NULL --to_exchange_type
7234 ,NULL --to_exchange_date
7235 ,NULL --ref_customer_trx_line_id
7236 ,NULL --ref_cust_trx_line_gl_dist_id
7237 ,ard.code_combination_id --code_combination_id
7238 ,NULL --ref_code_combination_id
7239 ,ard.ref_dist_ccid --ref_dist_ccid
7240 ,ard.activity_bucket --activity_bucket
7241 ,ard.source_type --source_type
7242 ,ard.source_table --source_table
7243 ,NULL --ra_post_indicator
7244 ,NULL --crh_post_indicator
7245 ,NULL --customer_trx_id
7246 ,NULL
7247 ,NULL
7248 ,NULL
7249 ,NULL
7250 ,NULL
7251 ,NULL
7252 ,NULL
7253 ,NULL
7254 ,NULL
7255 ,cr.amount
7256 FROM ar_cash_receipts_all cr
7257 ,ar_misc_cash_distributions_all mcd
7258 ,ar_cash_receipt_history_all crh
7259 ,ar_distributions_all ard
7260 ,(SELECT entity_id,
7261 source_id_int_1
7262 FROM xla_events_gt
7263 WHERE application_id = 222
7264 AND event_type_code IN ('MISC_RECP_CREATE','MISC_RECP_UPDATE')
7265 GROUP BY entity_id,
7266 source_id_int_1) xla
7267 WHERE xla.source_id_int_1 = cr.cash_receipt_id
7268 AND cr.cash_receipt_id = mcd.cash_receipt_id
7269 AND nvl(mcd.event_id, -1) <> NVL((select event_id from ar_cash_receipt_history_all crh1 where
7270 crh1.cash_receipt_id = cr.cash_receipt_id and
7271 crh1.status='REVERSED' and crh1.current_record_flag = 'Y'),0)
7272 AND mcd.cash_receipt_history_id = crh.cash_receipt_history_id(+)
7273 AND mcd.misc_cash_distribution_id = ard.source_id
7274 AND ard.source_table = 'MCD';
7275 local_log(procedure_name => 'mfar_mcd_dist_cr',
7276 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_mcd_dist_cr ()-');
7277 EXCEPTION
7278 -- WHEN NO_DATA_FOUND THEN NULL;
7279 WHEN OTHERS THEN
7280 local_log(procedure_name => 'mfar_mcd_dist_cr',
7281 p_msg_text => 'EXCEPTION OTHERS in mfar_mcd_dist_cr '||
7282 arp_global.CRLF || 'Error :'|| SQLERRM);
7283 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
7284 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
7285 'Procedure :arp_xla_extract_main_pkg.mfar_mcd_dist_cr'|| arp_global.CRLF||
7286 'Error :'||SQLERRM);
7287 FND_MSG_PUB.ADD;
7288 RAISE;
7289 END;
7290
7291 PROCEDURE mfar_produit_mcd_by_crh IS
7292 BEGIN
7293 local_log(procedure_name => 'mfar_produit_mcd_by_crh',
7294 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_produit_mcd_by_crh ()+');
7295
7296 INSERT INTO ar_xla_lines_extract
7297 (EVENT_ID
7298 ,LINE_NUMBER
7299 ,MFAR_ADDITIONAL_ENTRY
7300 ,LEDGER_ID
7301 ,BASE_CURRENCY_CODE
7302 ,ORG_ID
7303 ,LINE_ID
7304 ,SOURCE_ID
7305 ,SOURCE_TABLE
7306 ,HEADER_TABLE_ID
7307 ,POSTING_ENTITY
7308 ,XLA_ENTITY_ID
7309 --
7310 ,DIST_CCID
7311 ,REF_DIST_CCID
7312 ,REF_CTLGD_CCID
7313 --
7314 ,FROM_CURRENCY_CODE
7315 ,FROM_EXCHANGE_RATE
7316 ,FROM_EXCHANGE_RATE_TYPE
7317 ,FROM_EXCHANGE_DATE
7318 ,FROM_AMOUNT
7319 ,FROM_ACCTD_AMOUNT
7320 --
7321 ,TO_CURRENCY_CODE
7322 ,EXCHANGE_RATE
7323 ,EXCHANGE_RATE_TYPE
7324 ,EXCHANGE_DATE
7325 ,AMOUNT
7326 ,ACCTD_AMOUNT
7327 --
7328 ,RECEIVABLE_APPLICATION_ID
7329 ,CASH_RECEIPT_ID
7330 ,CUSTOMER_TRX_ID
7331 ,CUSTOMER_TRX_LINE_ID
7332 ,CUST_TRX_LINE_GL_DIST_ID
7333 --
7334 ,INVENTORY_ITEM_ID
7335 ,SALES_TAX_ID
7336 ,SET_OF_BOOKS_ID
7337 ,BILL_SITE_USE_ID
7338 ,SOLD_SITE_USE_ID
7339 ,SHIP_SITE_USE_ID
7340 ,BILL_CUSTOMER_ID
7341 ,SOLD_CUSTOMER_ID
7342 ,SHIP_CUSTOMER_ID
7343 ,TAX_LINE_ID
7344 --
7345 ,SELECT_FLAG
7346 ,LEVEL_FLAG
7347 ,FROM_TO_FLAG
7348 ,CRH_STATUS
7349 ,APP_CRH_STATUS
7350 --
7351 ,EVENT_TYPE_CODE
7352 ,EVENT_CLASS_CODE
7353 ,ENTITY_CODE)
7354 SELECT
7355 crh.event_id --event_id
7356 ,-1 * ar_mfar_extract_s.NEXTVAL --LINE_NUMBER
7357 ,'Y' --MFAR_ADDITIONAL_ENTRY
7358 ,crh.ledger_id --LEDGER_ID
7359 ,crh.base_currency_code --BASE_CURRENCY_CODE
7360 ,crh.org_id --ORG_ID
7361 ,mcd.line_id --LINE_ID
7362 ,mcd.receivable_application_id --SOURCE_ID --This misc_cash_dist_id only
7363 ,'MCD' --SOURCE_TABLE
7364 ,crh.cash_receipt_id --HEADER_TABLE_ID
7365 ,'MISC_RECEIPT_HISTORY' --POSTING_ENTITY
7366 ,crh.entity_id --xla_entity_id
7367 --
7368 ,mcd.code_combination_id --DIST_CCID
7369 ,mcd.code_combination_id --ref_dist_ccid
7370 ,mcd.code_combination_id --REF_CTLGD_CCID
7371 --
7372 ,mcd.from_currency_code --from_currency_code
7373 ,mcd.from_exchange_rate --from_exchange_rate
7374 ,mcd.from_exchange_type --FROM_EXCHANGE_RATE_TYPE
7375 ,mcd.from_exchange_date --from_exchange_date
7376 ,SIGN(crh.amount)*mcd.from_amount*SIGN(signed_receipt_amount) --from_amount
7377 ,SIGN(crh.acctd_amount)*mcd.from_acctd_amount*SIGN(signed_receipt_amount)--from_acctd_amount
7378 --
7379 ,mcd.from_currency_code --to_currency_code
7380 ,mcd.from_exchange_rate --exchange_rate
7381 ,mcd.from_exchange_type --EXCHANGE_RATE_TYPE
7382 ,mcd.from_exchange_date --EXCHANGE_DATE
7383 ,SIGN(crh.amount)*mcd.amount*SIGN(signed_receipt_amount) --amount
7384 ,SIGN(crh.acctd_amount)*mcd.acctd_amount*SIGN(signed_receipt_amount) --acctd_amount
7385 --
7386 ,mcd.receivable_application_id --RECEIVABLE_APPLICATION_ID --MISC_CASH_DIST_ID
7387 ,crh.cash_receipt_id --CASH_RECEIPT_ID
7388 ,NULL --CUSTOMER_TRX_ID
7389 ,NULL --CUSTOMER_TRX_LINE_ID
7390 ,NULL --CUST_TRX_LINE_GL_DIST_ID
7391 --
7392 ,NULL --INVENTORY_ITEM_ID
7393 ,NULL --SALES_TAX_ID
7394 ,crh.ledger_id --SET_OF_BOOKS_ID
7395 ,NULL --BILL_SITE_USE_ID
7396 ,NULL --SOLD_SITE_USE_ID
7397 ,NULL --SHIP_SITE_USE_ID
7398 ,NULL --BILL_CUSTOMER_ID
7399 ,NULL --SOLD_CUSTOMER_ID
7400 ,NULL --SHIP_CUSTOMER_ID
7401 ,NULL --TAX_LINE_ID
7402 --
7403 ,'Y' --SELECT_FLAG
7404 ,'L' --LEVEL_FLAG
7405 ,'T' --FROM_TO_FLAG
7406 ,crh.status --CRH_STATUS
7407 ,NULL --APP_CRH_STATUS
7408 --
7409 ,gt.event_type_code --EVENT_TYPE_CODE
7410 ,gt.event_class_code --EVENT_CLASS_CODE
7411 ,gt.entity_code --ENTITY_CODE
7412 FROM ar_crh_gt crh,
7413 ar_crh_app_gt mcd,
7414 xla_events_gt gt
7415 WHERE crh.entity_id = mcd.entity_id
7416 AND mcd.source_table = 'MCD'
7417 AND crh.event_id = gt.event_id;
7418 local_log(procedure_name => 'mfar_produit_mcd_by_crh',
7419 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_produit_mcd_by_crh ()-');
7420 EXCEPTION
7421 -- WHEN NO_DATA_FOUND THEN NULL;
7422 WHEN OTHERS THEN
7423 local_log(procedure_name => 'mfar_mcd_dist_cr',
7424 p_msg_text => 'EXCEPTION OTHERS in mfar_produit_mcd_by_crh '||
7425 arp_global.CRLF || 'Error :'|| SQLERRM);
7426 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
7427 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
7428 'Procedure :arp_xla_extract_main_pkg.mfar_produit_mcd_by_crh'|| arp_global.CRLF||
7429 'Error :'||SQLERRM);
7430 FND_MSG_PUB.ADD;
7431 RAISE;
7432 END;
7433
7434
7435
7436 PROCEDURE load_line_data_crh_mf(p_application_id IN NUMBER DEFAULT 222) IS
7437 BEGIN
7438 NULL;
7439 END;
7440
7441 --------------------------------------------------------
7442
7443 /*-----------------------------------------------------------------+
7444 | Procedure Name : Load_line_data_th |
7445 | Description : Extract line data for Bill Receivable events |
7446 +-----------------------------------------------------------------+
7447 | History : |
7448 | 23-FEB-2004 Herve Yu Created due to bug#3419926 |
7449 +-----------------------------------------------------------------*/
7450 PROCEDURE load_line_data_th(P_APPLICATION_ID IN NUMBER DEFAULT 222)
7451 IS
7452 BEGIN
7453 local_log(procedure_name => 'load_line_data_th',
7454 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_th()+');
7455
7456 INSERT INTO ar_xla_lines_extract (
7457 EVENT_ID
7458 ,LINE_NUMBER
7459 ,LANGUAGE
7460 ,LEDGER_ID
7461 ,SOURCE_ID
7462 ,SOURCE_TABLE
7463 ,LINE_ID
7464 ,TAX_CODE_ID
7465 ,LOCATION_SEGMENT_ID
7466 ,BASE_CURRENCY_CODE
7467 ,EXCHANGE_RATE_TYPE
7468 ,EXCHANGE_RATE
7469 ,EXCHANGE_DATE
7470 ,ACCTD_AMOUNT
7471 ,TAXABLE_ACCTD_AMOUNT
7472 ,ORG_ID
7473 ,HEADER_TABLE_ID
7474 ,POSTING_ENTITY
7475 ,CASH_RECEIPT_ID
7476 ,CUSTOMER_TRX_ID
7477 ,CUSTOMER_TRX_LINE_ID
7478 ,CUST_TRX_LINE_GL_DIST_ID
7479 ,CUST_TRX_LINE_SALESREP_ID
7480 ,INVENTORY_ITEM_ID
7481 ,SALES_TAX_ID
7482 ,SO_ORGANIZATION_ID
7483 ,TAX_EXEMPTION_ID
7484 ,UOM_CODE
7485 ,WAREHOUSE_ID
7486 ,AGREEMENT_ID
7487 ,CUSTOMER_BANK_ACCT_ID
7488 ,DRAWEE_BANK_ACCOUNT_ID
7489 ,REMITTANCE_BANK_ACCT_ID
7490 ,DISTRIBUTION_SET_ID
7491 ,PAYMENT_SCHEDULE_ID
7492 ,RECEIPT_METHOD_ID
7493 ,RECEIVABLES_TRX_ID
7494 ,ED_ADJ_RECEIVABLES_TRX_ID
7495 ,UNED_RECEIVABLES_TRX_ID
7496 ,SET_OF_BOOKS_ID
7497 ,SALESREP_ID
7498 ,BILL_SITE_USE_ID
7499 ,DRAWEE_SITE_USE_ID
7500 ,PAYING_SITE_USE_ID
7501 ,SOLD_SITE_USE_ID
7502 ,SHIP_SITE_USE_ID
7503 ,RECEIPT_CUSTOMER_SITE_USE_ID
7504 ,BILL_CUST_ROLE_ID
7505 ,DRAWEE_CUST_ROLE_ID
7506 ,SHIP_CUST_ROLE_ID
7507 ,SOLD_CUST_ROLE_ID
7508 ,BILL_CUSTOMER_ID
7509 ,DRAWEE_CUSTOMER_ID
7510 ,PAYING_CUSTOMER_ID
7511 ,SOLD_CUSTOMER_ID
7512 ,SHIP_CUSTOMER_ID
7513 ,REMIT_ADDRESS_ID
7514 ,RECEIPT_BATCH_ID
7515 ,RECEIVABLE_APPLICATION_ID
7516 ,CUSTOMER_BANK_BRANCH_ID
7517 ,ISSUER_BANK_BRANCH_ID
7518 ,BATCH_SOURCE_ID
7519 ,BATCH_ID
7520 ,TERM_ID
7521 ,SELECT_FLAG
7522 ,LEVEL_FLAG
7523 ,FROM_TO_FLAG
7524 ,FROM_AMOUNT
7525 ,AMOUNT
7526 ,FROM_ACCTD_AMOUNT
7527 ,PAIRED_CCID
7528 --{BUG#4356088
7529 ,event_type_code
7530 ,event_class_code
7531 ,entity_code
7532 --BUG#4645389
7533 ,tax_line_id
7534 --}
7535 ,MFAR_ADDITIONAL_ENTRY
7536 )
7537 SELECT /*+LEADING(gt) USE_NL(gt,th)*/
7538 gt.event_id, -- EVENT_ID
7539 ar_mfar_extract_s.NEXTVAL, --LINE_NUMBER
7540 '', -- LANGUAGE
7541 sob.set_of_books_id, -- LEDGER_ID
7542 dist.source_id, -- SOURCE_ID
7543 dist.source_table, -- SOURCE_TABLE
7544 dist.line_id, -- LINE_ID
7545 dist.tax_code_id, -- TAX_CODE_ID
7546 dist.location_segment_id, -- LOCATION_SEGMENT_ID
7547 sob.currency_code, -- BASE_CURRENCY
7548 trx.exchange_rate_type , -- EXCHANGE_RATE_TYPE
7549 trx.exchange_rate , -- EXCHANGE_RATE
7550 trx.exchange_date , -- EXCHANGE_DATE
7551 NVL(dist.acctd_amount_cr,0) -
7552 NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
7553 NVL(dist.taxable_accounted_cr,0) -
7554 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
7555 th.org_id, -- ORG_ID
7556 th.transaction_history_id, -- HEADER_ID
7557 'TH', -- POSTING_ENTITY
7558 '', -- CASH_RECEIPT_ID
7559 th.customer_trx_id, -- CUSTOMER_TRX_ID
7560 dist.ref_customer_trx_line_id, -- CUSTOMER_TRX_LINE_ID
7561 dist.ref_cust_trx_line_gl_dist_id,--CUST_TRX_LINE_GL_DIST_ID
7562 gld.cust_trx_line_salesrep_id, -- CUST_TRX_LINE_SALESREP_ID
7563 tl.inventory_item_id, --INVENTORY_ITEM_ID
7564 tl.sales_tax_id, --SALES_TAX_ID
7565 osp.master_organization_id, --SO_ORGANIZATION_ID
7566 tl.tax_exemption_id, --TAX_EXEMPTION_ID
7567 tl.uom_code, --UOM_CODE
7568 tl.warehouse_id, --WAREHOUSE_ID
7569 trx.agreement_id, --AGREEMENT_ID
7570 trx.customer_bank_account_id, --CUSTOMER_BANK_ACCT_ID
7571 '', --DRAWEE_BANK_ACCOUNT_ID
7572 trx.remit_bank_acct_use_id, --REMITTANCE_BANK_ACCT_ID
7573 '', --DISTRIBUTION_SET_ID
7574 psch.payment_schedule_id, --PAYMENT_SCHEDULE_ID
7575 '', --RECEIPT_METHOD_ID
7576 '', --RECEIVABLES_TRX_ID
7577 '', --ED_ADJ_RECEIVABLES_TRX_ID
7578 '', --UNED_RECEIVABLES_TRX_ID
7579 sob.set_of_books_id, --SET_OF_BOOKS_ID
7580 trx.primary_salesrep_id, --SALESREP_ID
7581 trx.bill_to_site_use_id, --BILL_SITE_USE_ID
7582 trx.drawee_site_use_id, --DRAWEE_SITE_USE_ID
7583 trx.paying_site_use_id, --PAYING_SITE_USE_ID
7584 trx.sold_to_site_use_id, --SOLD_SITE_USE_ID
7585 trx.ship_to_site_use_id, --SHIP_SITE_USE_ID
7586 '', --RECEIPT_CUSTOMER_SITE_USE_ID
7587 trx.bill_to_contact_id, --BILL_CUST_ROLE_ID
7588 trx.drawee_contact_id, --DRAWEE_CUST_ROLE_ID
7589 trx.ship_to_contact_id, --SHIP_CUST_ROLE_ID
7590 trx.sold_to_contact_id, --SOLD_CUST_ROLE_ID
7591 trx.bill_to_customer_id, --BILL_CUSTOMER_ID
7592 trx.drawee_id, --DRAWEE_CUSTOMER_ID
7593 trx.paying_customer_id, --PAYING_CUSTOMER_ID
7594 trx.sold_to_customer_id, --SOLD_CUSTOMER_ID
7595 trx.ship_to_customer_id, --SHIP_CUSTOMER_ID
7596 '', --REMIT_ADDRESS_ID
7597 '', --RECEIPT_BATCH_ID
7598 '', --RECEIVABLE_APPLICATION_ID
7599 '', --CUSTOMER_BANK_BRANCH_ID
7600 '', --ISSUER_BANK_BRANCH_ID
7601 trx.batch_source_id, --BATCH_SOURCE_ID
7602 trx.batch_id, --BATCH_ID
7603 trx.term_id, --TERM_ID
7604 'N', --SELECT_FLAG
7605 'L', --LEVEL_FLAG
7606 '', --FROM_TO_FLAG
7607 NVL(dist.from_amount_cr,0)
7608 -NVL(dist.from_amount_dr,0), -- FROM_AMOUNT,
7609 NVL(dist.amount_cr,0)
7610 -NVL(dist.amount_dr,0), -- AMOUNT
7611 NVL(dist.from_acctd_amount_cr,0)
7612 -NVL(dist.from_acctd_amount_dr,0), -- FROM_ACCTD_AMOUNT
7613 NULL -- PAIRED_CCID
7614 --{BUG#4356088
7615 ,gt.event_type_code
7616 ,gt.event_class_code
7617 ,gt.entity_code
7618 --BUG#4645389
7619 ,tl.tax_line_id --tax_line_id
7620 ,'N'
7621 FROM xla_events_gt gt,
7622 ar_transaction_history_all th,
7623 ra_customer_trx_all trx,
7624 ra_customer_trx_lines_all tl,
7625 ra_cust_trx_line_gl_dist_all gld,
7626 oe_system_parameters_all osp,
7627 ar_distributions_all dist,
7628 gl_sets_of_books sob,
7629 ar_payment_schedules_all psch
7630 WHERE gt.event_type_code IN ('BILL_CREATE' ,
7631 'BILL_UPDATE' ,
7632 'BILL_REVERSE' )
7633 AND gt.application_id = p_application_id
7634 AND gt.event_id = th.event_id
7635 AND dist.source_table = 'TH'
7636 AND dist.source_id = th.transaction_history_id
7637 AND th.customer_trx_id = trx.customer_trx_id
7638 -- AND trx.customer_trx_id = tl.customer_trx_id
7639 -- AND trx.customer_trx_id = gld.customer_trx_id
7640 AND th.org_id = osp.org_id(+)
7641 /*Pass double entries accounting*/
7642 --AND ( ( dist.source_type = 'REC' AND dist.source_table_secondary = 'CTL')
7643 -- OR ( dist.source_type <> 'REC'))
7644 AND dist.ref_customer_trx_line_id = tl.customer_trx_line_id(+)
7645 AND dist.ref_cust_trx_line_gl_dist_id = gld.cust_trx_line_gl_dist_id(+)
7646 AND trx.set_of_books_id = sob.set_of_books_id
7647 AND trx.customer_trx_id = psch.customer_trx_id
7648 AND NVL(psch.terms_sequence_number,1) = 1;
7649 local_log(procedure_name => 'load_line_data_th',
7650 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_th()-');
7651 EXCEPTION
7652 -- WHEN NO_DATA_FOUND THEN NULL;
7653 WHEN OTHERS THEN
7654 local_log(procedure_name => 'load_line_data_th',
7655 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_th '||
7656 arp_global.CRLF || 'Error :'|| SQLERRM);
7657 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
7658 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
7659 'Procedure :arp_xla_extract_main_pkg.load_line_data_th'|| arp_global.CRLF||
7660 'Error :'||SQLERRM);
7661 FND_MSG_PUB.ADD;
7662 RAISE;
7663 END load_line_data_th;
7664
7665
7666 PROCEDURE load_line_data_mcd(p_application_id IN NUMBER DEFAULT 222)
7667 IS
7668 BEGIN
7669 local_log(procedure_name => 'load_line_data_mcd',
7670 p_msg_text => 'arp_xla_extract_main_pkg.load_line_data_mcd()+');
7671 -- Insert line level data in Line GT with
7672 -- selected_flag = N
7673 -- level_flag = L
7674 -- From_to_flag = NULL
7675 INSERT INTO ar_xla_lines_extract (
7676 EVENT_ID
7677 ,LINE_NUMBER
7678 ,LANGUAGE
7679 ,LEDGER_ID
7680 ,SOURCE_ID
7681 ,SOURCE_TABLE
7682 ,LINE_ID
7683 ,TAX_CODE_ID
7684 ,LOCATION_SEGMENT_ID
7685 ,BASE_CURRENCY_CODE
7686 ,EXCHANGE_RATE_TYPE
7687 ,EXCHANGE_RATE
7688 ,EXCHANGE_DATE
7689 ,ACCTD_AMOUNT
7690 ,TAXABLE_ACCTD_AMOUNT
7691 ,ORG_ID
7692 ,HEADER_TABLE_ID
7693 ,POSTING_ENTITY
7694 ,CASH_RECEIPT_ID
7695 ,CUSTOMER_TRX_ID
7696 ,CUSTOMER_TRX_LINE_ID
7697 ,CUST_TRX_LINE_GL_DIST_ID
7698 ,CUST_TRX_LINE_SALESREP_ID
7699 ,INVENTORY_ITEM_ID
7700 ,SALES_TAX_ID
7701 ,SO_ORGANIZATION_ID
7702 ,TAX_EXEMPTION_ID
7703 ,UOM_CODE
7704 ,WAREHOUSE_ID
7705 ,AGREEMENT_ID
7706 ,CUSTOMER_BANK_ACCT_ID
7707 ,DRAWEE_BANK_ACCOUNT_ID
7708 ,REMITTANCE_BANK_ACCT_ID
7709 ,DISTRIBUTION_SET_ID
7710 ,PAYMENT_SCHEDULE_ID
7711 ,RECEIPT_METHOD_ID
7712 ,RECEIVABLES_TRX_ID
7713 ,ED_ADJ_RECEIVABLES_TRX_ID
7714 ,UNED_RECEIVABLES_TRX_ID
7715 ,SET_OF_BOOKS_ID
7716 ,SALESREP_ID
7717 ,BILL_SITE_USE_ID
7718 ,DRAWEE_SITE_USE_ID
7719 ,PAYING_SITE_USE_ID
7720 ,SOLD_SITE_USE_ID
7721 ,SHIP_SITE_USE_ID
7722 ,RECEIPT_CUSTOMER_SITE_USE_ID
7723 ,BILL_CUST_ROLE_ID
7724 ,DRAWEE_CUST_ROLE_ID
7725 ,SHIP_CUST_ROLE_ID
7726 ,SOLD_CUST_ROLE_ID
7727 ,BILL_CUSTOMER_ID
7728 ,DRAWEE_CUSTOMER_ID
7729 ,PAYING_CUSTOMER_ID
7730 ,SOLD_CUSTOMER_ID
7731 ,SHIP_CUSTOMER_ID
7732 ,REMIT_ADDRESS_ID
7733 ,RECEIPT_BATCH_ID
7734 ,RECEIVABLE_APPLICATION_ID
7735 ,CUSTOMER_BANK_BRANCH_ID
7736 ,ISSUER_BANK_BRANCH_ID
7737 ,BATCH_SOURCE_ID
7738 ,BATCH_ID
7739 ,TERM_ID
7740 ,SELECT_FLAG
7741 ,LEVEL_FLAG
7742 ,FROM_TO_FLAG
7743 ,FROM_AMOUNT
7744 ,AMOUNT
7745 ,FROM_ACCTD_AMOUNT
7746 ,reversal_code
7747 ,MFAR_ADDITIONAL_ENTRY
7748 )
7749 -- FROM document type Cash Receipt
7750 SELECT /*+LEADING(gt) USE_NL(gt,mcd)*/
7751 gt.event_id, -- EVENT_ID
7752 dist.line_id, -- LINE_NUMBER
7753 '', -- LANGUAGE
7754 sob.set_of_books_id, -- LEDGER_ID
7755 dist.source_id, -- SOURCE_ID
7756 dist.source_table, -- SOURCE_TABLE
7757 dist.line_id, -- LINE_ID
7758 dist.tax_code_id, -- TAX_CODE_ID
7759 dist.location_segment_id, -- LOCATION_SEGMENT_ID
7760 sob.currency_code, -- BASE_CURRENCY
7761 NVL(crh.exchange_rate_type,cr.exchange_rate_type), -- EXCHANGE_RATE_TYPE
7762 NVL(crh.exchange_rate,cr.exchange_rate) , -- EXCHANGE_RATE
7763 NVL(crh.exchange_date,cr.exchange_date) , -- EXCHANGE_DATE
7764 NVL(dist.acctd_amount_cr,0)
7765 - NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
7766 NVL(dist.taxable_accounted_cr,0)
7767 - NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
7768 mcd.org_id, -- ORG_ID
7769 mcd.cash_receipt_id, -- HEADER_ID
7770 'MCD', -- POSTING_ENTITY
7771 cr.cash_receipt_id, -- CASH_RECEIPT_ID
7772 NULL, -- CUSTOMER_TRX_ID
7773 NULL, -- CUSTOMER_TRX_LINE_ID
7774 NULL, -- CUST_TRX_LINE_GL_DIST_ID
7775 NULL, -- CUST_TRX_LINE_SALESREP_ID
7776 NULL, -- INVENTORY_ITEM_ID
7777 NULL, -- SALES_TAX_ID
7778 NULL, -- SO_ORGANIZATION_ID
7779 NULL, -- TAX_EXEMPTION_ID
7780 NULL, -- UOM_CODE
7781 NULL, -- WAREHOUSE_ID
7782 NULL, -- AGREEMENT_ID
7783 cr.customer_bank_account_id, -- CUSTOMER_BANK_ACCT_ID
7784 NULL, -- DRAWEE_BANK_ACCOUNT_ID
7785 cr.remit_bank_acct_use_id, -- REMITTANCE_BANK_ACCT_ID
7786 cr.distribution_set_id, -- DISTRIBUTION_SET_ID
7787 NULL, -- PAYMENT_SCHEDULE_ID
7788 cr.receipt_method_id, -- RECEIPT_METHOD_ID
7789 cr.receivables_trx_id, -- RECEIVABLES_TRX_ID
7790 NULL, -- ED_ADJ_RECEIVABLES_TRX_ID
7791 NULL, -- UNED_RECEIVABLES_TRX_ID
7792 cr.set_of_books_id, -- SET_OF_BOOKS_ID
7793 NULL, -- SALESREP_ID
7794 cr.customer_site_use_id, -- BILL_SITE_USE_ID
7795 NULL, -- DRAWEE_SITE_USE_ID
7796 cr.customer_site_use_id, -- PAYING_SITE_USE_ID -- synch with PAYING_CUSTOMER_ID
7797 NULL, -- SOLD_SITE_USE_ID
7798 NULL, -- SHIP_SITE_USE_ID
7799 cr.customer_site_use_id, -- RECEIPT_CUSTOMER_SITE_USE_ID
7800 NULL, -- BILL_CUST_ROLE_ID
7801 NULL, -- DRAWEE_CUST_ROLE_ID
7802 NULL, -- SHIP_CUST_ROLE_ID
7803 NULL, -- SOLD_CUST_ROLE_ID
7804 NULL, -- BILL_CUSTOMER_ID
7805 NULL, -- DRAWEE_CUSTOMER_ID
7806 cr.pay_from_customer, -- PAYING_CUSTOMER_ID
7807 NULL, -- SOLD_CUSTOMER_ID
7808 NULL, -- SHIP_CUSTOMER_ID
7809 NULL, -- REMIT_ADDRESS_ID
7810 cr.SELECTED_REMITTANCE_BATCH_ID, -- RECEIPT_BATCH_ID
7811 NULL, -- RECEIVABLE_APPLICATION_ID
7812 cr.customer_bank_branch_id, -- CUSTOMER_BANK_BRANCH_ID
7813 cr.issuer_bank_branch_id, -- ISSUER_BANK_BRANCH_ID
7814 NULL, -- BATCH_SOURCE_ID
7815 NULL, -- BATCH_ID
7816 NULL, -- TERM_ID
7817 'N', -- SELECT_FLAG
7818 'L', -- LEVEL_FLAG
7819 '', -- FROM_TO_FLAG
7820 NVL(dist.from_amount_cr,0)
7821 -NVL(dist.from_amount_dr,0), -- FROM_AMOUNT,
7822 NVL(dist.amount_cr,0)
7823 -NVL(dist.amount_dr,0), -- AMOUNT
7824 NVL(dist.from_acctd_amount_cr,0)
7825 -NVL(dist.from_acctd_amount_dr,0) -- AMOUNT
7826 ,DECODE(gt.event_type_code,'MISC_RECP_REVERSE' ,'Y','N') --reversal_code
7827 ,'N'
7828 FROM xla_events_gt gt,
7829 ar_misc_cash_distributions_all mcd,
7830 ar_distributions_all dist,
7831 gl_sets_of_books sob,
7832 ar_cash_receipts_all cr,
7833 --5201086
7834 ar_cash_receipt_history_all crh
7835 WHERE gt.event_type_code IN ( 'MISC_RECP_CREATE','MISC_RECP_RATE_ADJUST',
7836 'MISC_RECP_UPDATE') --Uptake XLA Reversal 'MISC_RECP_REVERSE' )
7837 --'MISC_RECP_REVERSE' REVERSAL only needs header level source
7838 AND gt.event_id = mcd.event_id
7839 AND gt.application_id = p_application_id
7840 AND dist.source_table = 'MCD'
7841 AND dist.source_id = mcd.misc_cash_distribution_id
7842 AND mcd.set_of_books_id = sob.set_of_books_id
7843 AND mcd.cash_receipt_id = cr.cash_receipt_id
7844 AND mcd.cash_receipt_history_id = crh.cash_receipt_history_id(+);
7845 -- AND dist.source_type = 'MISCCASH';
7846
7847 local_log(procedure_name => 'load_line_data_mcd',
7848 p_msg_text => 'arp_xla_extract_main_pkg.load_line_data_mcd()-');
7849 EXCEPTION
7850 -- WHEN NO_DATA_FOUND THEN NULL;
7851 WHEN OTHERS THEN
7852 local_log(procedure_name => 'load_line_data_mcd',
7853 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_mcd '||
7854 arp_global.CRLF || 'Error :'|| SQLERRM);
7855 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
7856 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
7857 'Procedure :arp_xla_extract_main_pkg.load_line_data_mcd'|| arp_global.CRLF||
7858 'Error :'||SQLERRM);
7859 FND_MSG_PUB.ADD;
7860 RAISE;
7861 END load_line_data_mcd;
7862
7863
7864 -------------------------
7865 -- Extraction program --
7866 -------------------------
7867 /*------------------------------------------------------+
7868 | Procedure name : Extract |
7869 +------------------------------------------------------+
7870 | Parameter : accounting mode |
7871 | D for Draft |
7872 | F for final |
7873 | |
7874 | Purpose : Extract the AR accounting lines based |
7875 | on xla events passed by XLA_EVENTS_GT |
7876 | This routine is launched by XLA accounting |
7877 | program in extract phase |
7878 | |
7879 | Modification history |
7880 | 23-FEB-2004 H. Yu bug#3419926 restructuration |
7881 +------------------------------------------------------*/
7882 --BUG#4387467
7883 PROCEDURE extract(p_application_id IN NUMBER
7884 ,p_accounting_mode IN VARCHAR2)
7885 IS
7886 CURSOR c_sob IS
7887 SELECT set_of_books_id
7888 FROM ar_xla_lines_extract gt
7889 WHERE posting_entity in ('CR','CTLGD')
7890 AND select_flag = 'Y'
7891 AND level_flag = 'H'
7892 AND set_of_books_id IS NOT NULL
7893 AND event_class_code in ('RECEIPT','MISC_RECEIPT','CREDIT_MEMO');
7894 l_sob_id NUMBER;
7895 BEGIN
7896 local_log(procedure_name => 'extract',
7897 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.extract()+');
7898 local_log(procedure_name => 'extract',
7899 p_msg_text => ' p_application_id :'|| p_application_id );
7900 local_log(procedure_name => 'extract',
7901 p_msg_text => ' p_accounting_mode :'|| p_accounting_mode);
7902
7903 upgrade_11i_r12_post;
7904
7905 -- Posting transaction
7906 load_header_data_ctlgd(p_application_id => p_application_id);
7907 load_line_data_ctlgd(p_application_id => p_application_id);
7908 load_line_data_app_from_cm(p_application_id => p_application_id);
7909
7910 -- Posting Cash Receipt or Misc cash receipt
7911 Load_header_data_crh(p_application_id => p_application_id);
7912
7913 Load_line_data_crh(p_application_id => p_application_id);
7914
7915 -- Posting from Cash Receipt
7916 load_line_data_app_from_cr(p_application_id => p_application_id);
7917
7918 -- Posting Cash Receipt or Credit Memo
7919 -- Only execute once for both Cash receipt and Credit Memo
7920 -- If executed twice then duplication of data.
7921 load_line_data_app_to_trx(p_application_id => p_application_id);
7922
7923 -- Mis Cash Receipt Distributions
7924 load_line_data_mcd(p_application_id => p_application_id);
7925
7926 -- Posting Adjustment
7927 Load_header_data_adj(p_application_id => p_application_id);
7928 Load_line_data_adj(p_application_id => p_application_id);
7929
7930 -- Posting Bill Receivable
7931 Load_header_data_th(p_application_id => p_application_id);
7932 Load_line_data_th(p_application_id => p_application_id);
7933
7934 --{Execute MFAR extract if neceessary
7935 OPEN c_sob;
7936 FETCH c_sob INTO l_sob_id;
7937 IF c_sob%NOTFOUND THEN
7938 l_sob_id := -9999;
7939 END IF;
7940 CLOSE c_sob;
7941
7942 local_log(procedure_name => 'extract',
7943 p_msg_text => 'l_sob_id: '||l_sob_id);
7944
7945
7946 IF l_sob_id <> -9999 THEN
7947 mfar_hook(p_ledger_id => l_sob_id) ;
7948 END IF;
7949 --}
7950
7951 --{Conditional run for JL callout
7952 IF JL_BR_AR_BANK_ACCT_PKG.check_if_upgrade_occs THEN
7953 local_log(procedure_name => 'extract',
7954 p_msg_text => ' JL Callout JL_BR_AR_BANK_ACCT_PKG.load_occurrences_header_data');
7955 JL_BR_AR_BANK_ACCT_PKG.load_occurrences_header_data(p_application_id => p_application_id);
7956 END IF;
7957
7958 --}
7959 -- IF fnd_profile.value('AR_EXTRACT_DIAG') = 'Y' THEN
7960 IF PG_DEBUG = 'Y' THEN
7961 diag_data;
7962 END IF;
7963 -- END IF;
7964
7965 local_log(procedure_name => 'extract',
7966 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.extract()-');
7967 EXCEPTION
7968 -- WHEN NO_DATA_FOUND THEN NULL;
7969 WHEN OTHERS THEN
7970 local_log(procedure_name => 'extract',
7971 p_msg_text => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.extract '|| arp_global.CRLF ||
7972 'Error :'|| SQLERRM);
7973 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
7974 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
7975 'Procedure :arp_xla_extract_main_pkg.extract'|| arp_global.CRLF||
7976 'Error :'||SQLERRM);
7977 FND_MSG_PUB.ADD;
7978 APP_EXCEPTION.RAISE_EXCEPTION;
7979 END extract;
7980
7981 --Old extract for testing purposes
7982 PROCEDURE extract(p_accounting_mode IN VARCHAR2) IS
7983 BEGIN
7984 extract(p_application_id => 222
7985 ,p_accounting_mode => p_accounting_mode);
7986 END;
7987
7988 -----------------
7989 -- Post processing with XLA no more posting control id
7990 -- In posting Entity, we can either use a dummy id in the column posting
7991 -- control when the posting is successful.
7992 -- As we use the posting control id in AR posting entity to indicate if
7993 -- a document has been posted or not.
7994 -- For now we still use the posting control id sequence to stamp the posted
7995 -- documents, we can think of how to avoid maintaining this id going forward.
7996 -----------------
7997 -- The table in which the posting_control_id is present in AR are:
7998 -- AR_MC_CASH_BASIS_DISTS_ALL Obsolete unified Accrual and Cash basis accounting
7999 -- AR_CASH_BASIS_DISTS_ALL Obsolete unified Accrual and Cash basis accounting
8000 -- RA_CUSTOMER_TRX_ALL Do not post
8001 -- AR_RATE_ADJUSTMENTS_ALL Do not post
8002 -- AR_CASH_RECEIPT_HISTORY_ALL A Those 4 A entities will post together
8003 -- AR_MC_CASH_RECEIPT_HIST A (Misc) Cash Receipt
8004 -- AR_MISC_CASH_DISTRIBUTIONS_ALL A
8005 -- AR_MC_MISC_CASH_DISTS A
8006 -- RA_CUST_TRX_LINE_GL_DIST_ALL B Those 2 B entities will post tpgether
8007 -- RA_MC_TRX_LINE_GL_DIST B (Transactions)
8008 -- AR_ADJUSTMENTS_ALL C Those 2 C entities will post together
8009 -- AR_MC_ADJUSTMENTS C (Adjustments)
8010 -- AR_RECEIVABLE_APPLICATIONS_ALL D Those 2 D entities will post together
8011 -- AR_MC_RECEIVABLE_APPS D (Applications)
8012 -- AR_TRANSACTION_HISTORY_ALL E Those 2 E entities will post together
8013 -- AR_MC_TRANSACTION_HISTORY E (Bill Receivables)
8014 -- Question are there any side effect
8015 -- from BR on TRX ?
8016 ------------------
8017 /*------------------------------------------------------+
8018 | Procedure name : flag_the_posting_id |
8019 +------------------------------------------------------+
8020 | Parameter : accounting mode |
8021 | D for Draft |
8022 | F for final |
8023 | |
8024 | Purpose : Stamping the posting control id in AR |
8025 | AR posting entities only for Final mode. |
8026 | This is used in the post acctg process |
8027 | |
8028 | Modification history |
8029 | 23-FEB-2004 H. Yu Bug#3419926 |
8030 +------------------------------------------------------*/
8031 --BUG#4387467
8032 PROCEDURE postaccounting
8033 (p_application_id IN NUMBER,
8034 p_ledger_id IN NUMBER,
8035 p_process_category IN VARCHAR2,
8036 p_end_date IN DATE,
8037 p_accounting_mode IN VARCHAR2,
8038 p_valuation_method IN VARCHAR2,
8039 p_security_id_int_1 IN NUMBER,
8040 p_security_id_int_2 IN NUMBER,
8041 p_security_id_int_3 IN NUMBER,
8042 p_security_id_char_1 IN NUMBER,
8043 p_security_id_char_2 IN NUMBER,
8044 p_security_id_char_3 IN NUMBER,
8045 p_report_request_id IN NUMBER)
8046 IS
8047 BEGIN
8048 NULL;
8049 END;
8050
8051 --BUG#4387467
8052 PROCEDURE postprocessing
8053 (p_application_id IN NUMBER
8054 ,p_accounting_mode IN VARCHAR2)
8055 IS
8056 l_pst_id NUMBER;
8057 l_date DATE;
8058 BEGIN
8059 local_log(procedure_name => 'postprocessing',
8060 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.postprocessing()+');
8061
8062 IF p_accounting_mode = 'F' THEN
8063
8064 SELECT ar_posting_control_s.NEXTVAL
8065 INTO l_pst_id
8066 FROM DUAL;
8067
8068 SELECT trunc(sysdate) INTO l_date FROM SYS.DUAL;
8069 --
8070 -- CRH
8071 -- GL Posting entiting are
8072 -- AR_CASH_RECEIPT_HISTORY_ALL,
8073 -- AR_MISC_CASH_DISTRIBUTIONS_ALL,
8074 --
8075 UPDATE ar_cash_receipt_history_all
8076 SET posting_control_id = l_pst_id,
8077 gl_posted_date = l_date,
8078 last_updated_by = fnd_global.user_id,
8079 last_update_date = sysdate,
8080 last_update_login = fnd_global.user_id
8081 WHERE posting_control_id = -3
8082 AND (cash_receipt_id, event_id) IN
8083 (SELECT /*+ cardinality(EV,1) unnest */ ev.source_id_int_1, ev.event_id
8084 /* added hint as suggest by the perf team thru bug 13702457 */
8085 FROM xla_post_acctg_events_v ev
8086 WHERE ev.application_id = p_application_id
8087 AND ev.process_status_code = 'P'
8088 AND ev.event_type_code IN
8089 ('RECP_CREATE' ,
8090 'RECP_UPDATE' ,
8091 'RECP_RATE_ADJUST' ,
8092 'RECP_REVERSE' ,
8093 'MISC_RECP_CREATE' ,
8094 'MISC_RECP_UPDATE' ,
8095 'MISC_RECP_RATE_ADJUST',
8096 'MISC_RECP_REVERSE' ));
8097
8098 UPDATE AR_MISC_CASH_DISTRIBUTIONS_ALL
8099 SET posting_control_id = l_pst_id,
8100 gl_posted_date = l_date,
8101 last_updated_by = fnd_global.user_id,
8102 last_update_date = sysdate,
8103 last_update_login = fnd_global.user_id
8104 WHERE posting_control_id = -3
8105 AND (cash_receipt_id, event_id) IN
8106 (SELECT ev.source_id_int_1, ev.event_id
8107 FROM xla_post_acctg_events_v ev
8108 WHERE ev.application_id = p_application_id
8109 AND ev.process_status_code = 'P'
8110 AND ev.event_type_code IN
8111 ('MISC_RECP_CREATE' ,
8112 'MISC_RECP_UPDATE' ,
8113 'MISC_RECP_RATE_ADJUST',
8114 'MISC_RECP_REVERSE' ));
8115
8116 --
8117 -- CTLGD
8118 -- GL Posting entiting are
8119 -- RA_CUST_TRX_LINE_GL_DIST_ALL,
8120 --
8121 UPDATE /*+ INDEX(ra_cust_trx_line_gl_dist_all ra_cust_trx_line_gl_dist_n6) */
8122 ra_cust_trx_line_gl_dist_all
8123 SET posting_control_id = l_pst_id,
8124 gl_posted_date = l_date,
8125 last_updated_by = fnd_global.user_id,
8126 last_update_date = sysdate,
8127 last_update_login = fnd_global.user_id
8128 WHERE posting_control_id = -3
8129 AND (customer_trx_id, event_id) IN
8130 (SELECT ev.source_id_int_1, ev.event_id
8131 FROM xla_post_acctg_events_v ev
8132 WHERE ev.application_id = p_application_id
8133 AND ev.process_status_code = 'P'
8134 AND ev.event_type_code IN
8135 ('INV_CREATE' , 'INV_UPDATE' ,
8136 'CM_CREATE' , 'CM_UPDATE' ,
8137 'DM_CREATE' , 'DM_UPDATE' ,
8138 'DEP_CREATE' , 'DEP_UPDATE' ,
8139 'GUAR_CREATE' , 'GUAR_UPDATE' ,
8140 'CB_CREATE' ));
8141
8142 --
8143 -- ADJ
8144 -- GL Posting entiting are
8145 -- AR_ADJUSTMENTS_ALL,
8146 --
8147 UPDATE ar_adjustments_all
8148 SET posting_control_id = l_pst_id,
8149 gl_posted_date = l_date,
8150 last_updated_by = fnd_global.user_id,
8151 last_update_date = sysdate,
8152 last_update_login = fnd_global.user_id
8153 WHERE posting_control_id = -3
8154 AND adjustment_id IN
8155 (SELECT ev.source_id_int_1
8156 FROM xla_post_acctg_events_v ev
8157 WHERE ev.application_id = p_application_id
8158 AND ev.process_status_code = 'P'
8159 AND ev.event_type_code = 'ADJ_CREATE');
8160
8161 --
8162 -- APP
8163 -- GL Posting entiting are
8164 -- AR_RECEIVABLE_APPLICATIONS_ALL,
8165 --
8166 UPDATE ar_receivable_applications_all
8167 SET posting_control_id = l_pst_id,
8168 gl_posted_date = l_date,
8169 last_updated_by = fnd_global.user_id,
8170 last_update_date = sysdate,
8171 last_update_login = fnd_global.user_id
8172 WHERE posting_control_id = -3
8173 AND event_id IN
8174 (SELECT /*+ LEADING(ev) CARDINALITY(ev,1) */ ev.event_id -- Added hint for bug 14335425
8175 FROM xla_post_acctg_events_v ev
8176 WHERE ev.application_id = p_application_id
8177 AND ev.process_status_code = 'P'
8178 AND ev.event_type_code IN
8179 ('CM_CREATE' ,'CM_UPDATE' ,
8180 'RECP_CREATE' ,'RECP_UPDATE' ,
8181 'RECP_RATE_ADJUST','RECP_REVERSE' ,
8182 'MISC_RECP_RATE_ADJUST','MISC_RECP_REVERSE' ));
8183
8184 --
8185 -- TH
8186 -- GL Posting entiting are
8187 -- AR_TRANSACTION_HISTORY_ALL,
8188 --
8189 UPDATE AR_TRANSACTION_HISTORY_ALL
8190 SET posting_control_id = l_pst_id,
8191 gl_posted_date = l_date,
8192 last_updated_by = fnd_global.user_id,
8193 last_update_date = sysdate,
8194 last_update_login = fnd_global.user_id
8195 WHERE posting_control_id = -3
8196 AND postable_flag='Y'
8197 AND event_id IN
8198 (SELECT ev.event_id
8199 FROM xla_post_acctg_events_v ev
8200 WHERE ev.application_id = p_application_id
8201 AND ev.process_status_code = 'P'
8202 AND ev.event_type_code IN
8203 ( 'BILL_CREATE' ,
8204 'BILL_UPDATE' ,
8205 'BILL_REVERSE' ));
8206
8207 END IF;
8208 local_log(procedure_name => 'postprocessing',
8209 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.postprocessing()-');
8210 EXCEPTION
8211 -- WHEN NO_DATA_FOUND THEN NULL;
8212 WHEN OTHERS THEN
8213 local_log(procedure_name => 'postprocessing',
8214 p_msg_text =>'EXCEPTION OTHERS in arp_xla_extract_main_pkg.postprocessing '|| arp_global.CRLF ||
8215 'Error :'|| SQLERRM);
8216 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
8217 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
8218 'Procedure :arp_xla_extract_main_pkg.postprocessing '|| arp_global.CRLF||
8219 'Error :'||SQLERRM);
8220 FND_MSG_PUB.ADD;
8221 APP_EXCEPTION.RAISE_EXCEPTION;
8222 END postprocessing;
8223
8224
8225
8226 PROCEDURE flag_the_posting_id(p_accounting_mode IN VARCHAR2)
8227 IS
8228 BEGIN
8229 local_log(procedure_name => 'flag_the_posting_id',
8230 p_msg_text =>'arp_xla_extract_main_pkg.flag_the_posting_id()+');
8231
8232 postprocessing(p_application_id => 222
8233 ,p_accounting_mode => p_accounting_mode);
8234
8235 local_log(procedure_name => 'flag_the_posting_id',
8236 p_msg_text =>'ARP_XLA_EXTRACT_MAIN_PKG.flag_the_posting_id()-');
8237 END flag_the_posting_id;
8238
8239
8240 /*-----------------------------------------------------------+
8241 | Procedure name : lock_documents_for_xla |
8242 +-----------------------------------------------------------+
8243 | Parameter : None |
8244 | |
8245 | Purpose : Locking the records concerned in a |
8246 | particular accounting program process. |
8247 | |
8248 | Modification history |
8249 | 23-FEB-2004 H. Yu Bug#3419926 Redesign of acct events |
8250 +-----------------------------------------------------------*/
8251 PROCEDURE preaccounting
8252 ( p_application_id IN NUMBER
8253 ,p_ledger_id IN NUMBER
8254 ,p_process_category IN VARCHAR2
8255 ,p_end_date IN DATE
8256 ,p_accounting_mode IN VARCHAR2
8257 ,p_valuation_method IN VARCHAR2
8258 ,p_security_id_int_1 IN NUMBER
8259 ,p_security_id_int_2 IN NUMBER
8260 ,p_security_id_int_3 IN NUMBER
8261 ,p_security_id_char_1 IN VARCHAR2
8262 ,p_security_id_char_2 IN VARCHAR2
8263 ,p_security_id_char_3 IN VARCHAR2
8264 ,p_report_request_id IN NUMBER)
8265 IS
8266 BEGIN
8267 local_log(procedure_name =>'preaccounting',
8268 p_msg_text =>'arp_xla_extract_main_pkg.preaccounting()+');
8269
8270 local_log(procedure_name =>'preaccounting',
8271 p_msg_text =>' p_application_id :'||p_application_id);
8272 local_log(procedure_name =>'preaccounting',
8273 p_msg_text =>' p_ledger_id :'||p_ledger_id);
8274 local_log(procedure_name =>'preaccounting',
8275 p_msg_text =>' p_process_category :'||p_process_category);
8276 local_log(procedure_name =>'preaccounting',
8277 p_msg_text =>' p_end_date :'||p_end_date);
8278 local_log(procedure_name =>'preaccounting',
8279 p_msg_text =>' p_accounting_mode :'||p_accounting_mode);
8280 local_log(procedure_name =>'preaccounting',
8281 p_msg_text =>' p_valuation_method :'||p_valuation_method);
8282 local_log(procedure_name =>'preaccounting',
8283 p_msg_text =>' p_security_id_int_1 :'||p_security_id_int_1);
8284 local_log(procedure_name =>'preaccounting',
8285 p_msg_text =>' p_security_id_int_2 :'||p_security_id_int_2);
8286 local_log(procedure_name =>'preaccounting',
8287 p_msg_text =>' p_security_id_int_3 :'||p_security_id_int_3);
8288 local_log(procedure_name =>'preaccounting',
8289 p_msg_text =>' p_security_id_char_1:'||p_security_id_char_1);
8290 local_log(procedure_name =>'preaccounting',
8291 p_msg_text =>' p_security_id_char_2:'||p_security_id_char_2);
8292 local_log(procedure_name =>'preaccounting',
8293 p_msg_text =>' p_security_id_char_3:'||p_security_id_char_3);
8294 local_log(procedure_name =>'preaccounting',
8295 p_msg_text =>' p_report_request_id :'||p_report_request_id);
8296
8297 --{
8298 --BUG#5366837
8299 --No need to run this code anymore as we upgrade unposted cash basis data and upgrade PSA dist to AR for adj - app -crh
8300 --For transaction although not upgraded MFAR AAD will build the correct accounting
8301 --{Unification of Cash Basis Accounting
8302 -- local_log(procedure_name =>'preaccounting',
8303 -- p_msg_text =>' call unification of cash basis : ar_upgrade_cash_accrual.create_cash_distributions');
8304 --
8305 -- ar_upgrade_cash_accrual.create_distributions;
8306 --
8307 -- local_log(procedure_name =>'preaccounting',
8308 -- p_msg_text =>' locking distribution rows');
8309 --}
8310
8311 -- CTLGD
8312 SELECT 'lock'
8313 BULK COLLECT INTO l_lock
8314 FROM xla_entity_events_v eve,
8315 ra_cust_trx_line_gl_dist_all ctlgd
8316 WHERE eve.request_id = p_report_request_id
8317 AND eve.application_id = p_application_id
8318 AND eve.entity_code = 'TRANSACTIONS'
8319 AND eve.event_id = ctlgd.event_id
8320 AND ctlgd.posting_control_id = -3
8321 AND ctlgd.account_set_flag = 'N'
8322 FOR UPDATE OF ctlgd.cust_trx_line_gl_dist_id;
8323
8324 -- ADJ
8325 SELECT 'lock'
8326 BULK COLLECT INTO l_lock
8327 FROM xla_entity_events_v eve,
8328 ar_adjustments_all adj
8329 WHERE eve.request_id = p_report_request_id
8330 AND eve.application_id = p_application_id
8331 AND eve.entity_code = 'ADJUSTMENTS'
8332 AND eve.event_id = adj.event_id
8333 AND adj.posting_control_id = -3
8334 AND NVL(adj.postable,'Y') = 'Y'
8335 FOR UPDATE OF adjustment_id;
8336
8337 -- APP
8338 SELECT 'lock'
8339 BULK COLLECT INTO l_lock
8340 FROM xla_entity_events_v eve,
8341 ar_receivable_applications_all app
8342 WHERE eve.request_id = p_report_request_id
8343 AND eve.application_id = p_application_id
8344 AND eve.entity_code IN ('RECEIPTS','TRANSACTIONS')
8345 AND eve.event_id = app.event_id
8346 AND app.posting_control_id = -3
8347 AND NVL(app.postable,'Y') ='Y'
8348 AND NVL(app.confirmed_flag,'Y')='Y'
8349 FOR UPDATE OF receivable_application_id;
8350
8351 -- CRH MCD
8352 SELECT 'lock'
8353 BULK COLLECT INTO l_lock
8354 FROM xla_entity_events_v eve,
8355 ar_cash_receipt_history_all crh
8356 WHERE eve.request_id = p_report_request_id
8357 AND eve.application_id = p_application_id
8358 AND eve.entity_code = 'RECEIPTS'
8359 AND eve.event_id = crh.event_id
8360 AND crh.posting_control_id = -3
8361 FOR UPDATE OF crh.cash_receipt_history_id;
8362
8363 SELECT 'lock'
8364 BULK COLLECT INTO l_lock
8365 FROM xla_entity_events_v eve,
8366 ar_misc_cash_distributions_all mcd
8367 WHERE eve.request_id = p_report_request_id
8368 AND eve.application_id = p_application_id
8369 AND eve.entity_code = 'RECEIPTS'
8370 AND eve.event_id = mcd.event_id
8371 AND mcd.posting_control_id = -3
8372 FOR UPDATE OF misc_cash_distribution_id;
8373
8374 --TRH
8375 SELECT 'lock'
8376 BULK COLLECT INTO l_lock
8377 FROM xla_entity_events_v eve,
8378 ar_transaction_history_all trh
8379 WHERE eve.request_id = p_report_request_id
8380 AND eve.application_id = p_application_id
8381 AND eve.entity_code = 'BILLS_RECEIVABLE'
8382 AND eve.event_id = trh.event_id
8383 AND trh.postable_flag = 'Y'
8384 AND trh.posting_control_id = -3
8385 FOR UPDATE OF trh.transaction_history_id;
8386
8387 local_log(procedure_name =>'preaccounting',
8388 p_msg_text =>'arp_xla_extract_main_pkg.preaccounting -');
8389 EXCEPTION
8390 -- WHEN NO_DATA_FOUND THEN NULL;
8391 WHEN OTHERS THEN
8392 local_log(procedure_name =>'preaccounting',
8393 p_msg_text =>'EXCEPTION OTHERS in arp_xla_extract_main_pkg.lock_documents_for_xla '||
8394 arp_global.CRLF || 'Error :'|| SQLERRM);
8395 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
8396 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
8397 'Procedure :arp_xla_extract_main_pkg.lock_documents_for_xla'|| arp_global.CRLF||
8398 'Error :'||SQLERRM);
8399 FND_MSG_PUB.ADD;
8400 APP_EXCEPTION.RAISE_EXCEPTION;
8401 END preaccounting;
8402
8403
8404 -- This routine is no longer usefull
8405 -- Keep this routine in order not to break the current code
8406 PROCEDURE lock_documents_for_xla IS
8407 BEGIN
8408 NULL;
8409 END;
8410
8411 /*------------------------------------------------------+
8412 | Procedure name : locking_status |
8413 +------------------------------------------------------+
8414 | Parameter : Workflow rule function subscription |
8415 | standard parameters. |
8416 | |
8417 | Purpose : Allow the procedure lock_documents_for_xla |
8418 | to be called in Workflow 2.6 |
8419 | |
8420 | Modification history |
8421 +------------------------------------------------------*/
8422 FUNCTION locking_status(p_subscription_guid IN RAW,
8423 p_event IN OUT NOCOPY wf_event_t)
8424 RETURN VARCHAR2
8425 IS
8426 l_application_id NUMBER;
8427 BEGIN
8428 l_application_id := p_event.GetValueForParameter('APPLICATION_ID');
8429 IF l_application_id = 222 THEN
8430 lock_documents_for_xla;
8431 END IF;
8432 RETURN 'SUCCESS';
8433 EXCEPTION
8434 WHEN OTHERS THEN
8435 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
8436 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
8437 'Procedure:arp_xla_extract_main_pkg.lock_documents_for_xla
8438 Error:'||SQLERRM);
8439 FND_MSG_PUB.ADD;
8440 -- APP_EXCEPTION.RAISE_EXCEPTION;
8441 RETURN 'ERROR';
8442 END locking_status;
8443
8444
8445 /*------------------------------------------------------+
8446 | Procedure name : extract_status |
8447 +------------------------------------------------------+
8448 | Parameter : Workflow rule function subscription |
8449 | standard parameters. |
8450 | |
8451 | Purpose : Allow the procedure extract |
8452 | to be called in Workflow 2.6 |
8453 | |
8454 | Modification history |
8455 +------------------------------------------------------*/
8456 FUNCTION extract_status(p_subscription_guid IN RAW,
8457 p_event IN OUT NOCOPY wf_event_t)
8458 RETURN VARCHAR2
8459 IS
8460 l_mode VARCHAR2(30);
8461 l_application_id NUMBER;
8462 BEGIN
8463 l_application_id := p_event.GetValueForParameter('APPLICATION_ID');
8464 IF l_application_id = 222 THEN
8465 l_mode := p_event.GetValueForParameter('ACCOUNTING_MODE');
8466 extract(p_accounting_mode => l_mode);
8467 END IF;
8468 RETURN 'SUCCESS';
8469 EXCEPTION
8470 WHEN OTHERS THEN
8471 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
8472 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
8473 'Procedure:arp_xla_extract_main_pkg.extract
8474 Mode:'||l_mode||'
8475 Error:'||SQLERRM);
8476 FND_MSG_PUB.ADD;
8477 -- APP_EXCEPTION.RAISE_EXCEPTION;
8478 RETURN 'ERROR';
8479 END extract_status;
8480
8481
8482 /*------------------------------------------------------+
8483 | Procedure name : posting_ctl_status |
8484 +------------------------------------------------------+
8485 | Parameter : Workflow rule function subscription |
8486 | standard parameters. |
8487 | |
8488 | Purpose : Allow the procedure flag_the_posting_id |
8489 | to be called in Workflow 2.6 |
8490 | |
8491 | Modification history |
8492 +------------------------------------------------------*/
8493 FUNCTION posting_ctl_status(p_subscription_guid IN RAW,
8494 p_event IN OUT NOCOPY wf_event_t)
8495 RETURN VARCHAR2
8496 IS
8497 l_key VARCHAR2(240) := p_event.GetEventKey();
8498 l_mode VARCHAR2(30);
8499 l_application_id NUMBER;
8500 l_mode_exception EXCEPTION;
8501 BEGIN
8502 l_application_id := p_event.GetValueForParameter('APPLICATION_ID');
8503 IF l_application_id = 222 THEN
8504 l_mode := p_event.GetValueForParameter('ACCOUNTING_MODE');
8505 IF l_mode NOT IN ('D','F') THEN
8506 RAISE l_mode_exception;
8507 END IF;
8508 flag_the_posting_id(p_accounting_mode => l_mode);
8509 END IF;
8510 RETURN 'SUCCESS';
8511 EXCEPTION
8512 WHEN l_mode_exception THEN
8513 -- As the error message is only useful for debugging and it has
8514 -- no functional impact. For now, the FND_GENERIC_MESSAGE is used
8515 -- We might need to end up seeded messages later.
8516 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
8517 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
8518 'Procedure:arp_xla_extract_main_pkg.posting_ctl_status
8519 Error: accounting is '||l_mode||' - mode should be D (Draft) or F (Final)');
8520 FND_MSG_PUB.ADD;
8521 -- APP_EXCEPTION.RAISE_EXCEPTION;
8522 RETURN 'ERROR';
8523 WHEN OTHERS THEN
8524 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
8525 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
8526 'Procedure:arp_xla_extract_main_pkg.posting_ctl_status
8527 Mode:'||l_mode||'
8528 Error:'||SQLERRM);
8529 FND_MSG_PUB.ADD;
8530 APP_EXCEPTION.RAISE_EXCEPTION;
8531 RETURN 'ERROR';
8532 END posting_ctl_status;
8533
8534
8535 --{Get GL segment info
8536 PROCEDURE get_segment_value
8537 (p_segment_name IN VARCHAR2,
8538 p_coa_id IN NUMBER,
8539 p_ccid IN NUMBER,
8540 x_segment_value OUT NOCOPY VARCHAR2)
8541 IS
8542 l_c INTEGER;
8543 l_exec INTEGER;
8544 l_fetch_row INTEGER;
8545 l_stmt VARCHAR2(2000);
8546 l_xla_user VARCHAR2(30);
8547 BEGIN
8548 --local_log('arp_xla_extract_main_pkg',' get_segment_value +');
8549 l_stmt :=
8550 ' SELECT '||p_segment_name||'
8551 FROM gl_code_combinations
8552 WHERE chart_of_accounts_id = :coa_id
8553 AND code_combination_id = :ccid ';
8554 --local_log('arp_xla_extract_main_pkg',' l_stmt :'||l_stmt);
8555 l_c := DBMS_SQL.OPEN_CURSOR;
8556 DBMS_SQL.PARSE(l_c, l_stmt, DBMS_SQL.NATIVE);
8557 DBMS_SQL.BIND_VARIABLE(l_c,':coa_id',p_coa_id);
8558 DBMS_SQL.BIND_VARIABLE(l_c,':ccid',p_ccid);
8559 DBMS_SQL.DEFINE_COLUMN(l_c,1,x_segment_value,30);
8560 l_exec := DBMS_SQL.EXECUTE(l_c);
8561 l_fetch_row := DBMS_SQL.FETCH_ROWS(l_c);
8562 DBMS_SQL.COLUMN_VALUE(l_c, 1, x_segment_value);
8563 DBMS_SQL.CLOSE_CURSOR(l_c);
8564 --local_log('arp_xla_extract_main_pkg',' get_segment_value -');
8565 END;
8566
8567 /*-------------------------------------------------------------------------------+
8568 | Procedure Name : mfar_insert_crh_extract
8569 | Description : Pro-rates the CRH entries over the Receipt application
8570 | distributions and inserts the MFAR additional entries to the
8571 | extract table. The pro-ration happens only when the CRH_STATUS
8572 | is in CLEARED or BANK_CHARGES.
8573 +-------------------------------------------------------------------------------+
8574 | History :
8575 | 25-JUL-2010 Anshu Kaushal Created
8576 +------------------------------------------------------------------------------*/
8577
8578 PROCEDURE mfar_insert_crh_extract (p_crh_mfar_extract_record crh_mfar_extract_record_type)
8579 IS
8580 -- run time variables for proration
8581 x_run_amt number := 0;
8582 x_run_alloc_amt number := 0;
8583 x_alloc_amt number := 0;
8584
8585 x_run_acctd_amt number := 0;
8586 x_run_alloc_acctd_amt number := 0;
8587 x_alloc_acctd_amt number := 0;
8588
8589 x_run_from_amt number := 0;
8590 x_run_alloc_from_amt number := 0;
8591 x_alloc_from_amt number := 0;
8592
8593 x_run_from_acctd_amt number := 0;
8594 x_run_alloc_from_acctd_amt number := 0;
8595 x_alloc_from_acctd_amt number := 0;
8596
8597 x_cleared_amount number:= 0;
8598 x_bc_amount number:= 0;
8599 x_cleared_acctd_amount number:= 0;
8600 x_bc_acctd_amount number:= 0;
8601
8602 x_cleared_from_amount number:= 0;
8603 x_bc_from_amount number:= 0;
8604 x_cleared_from_acctd_amount number:= 0;
8605 x_bc_from_acctd_amount number:= 0;
8606
8607 x_diff_amt number := 0;
8608 x_diff_acctd_amt number := 0;
8609 x_diff_from_amt number := 0;
8610 x_diff_from_acctd_amt number := 0;
8611
8612 x_max_line_id number :=0;
8613
8614 x_CRH_RECORD_ID number := 0;
8615 x_LINE_ID number := 0;
8616 i number := 0;
8617
8618 -- pl/sql table for ar_xla_lines_extract
8619 TYPE ar_xla_mfar_extract_gt_tab IS TABLE OF ar_xla_lines_extract%ROWTYPE
8620 INDEX BY BINARY_INTEGER;
8621 l_mfar_extract_tab ar_xla_mfar_extract_gt_tab;
8622
8623
8624 BEGIN
8625 local_log(procedure_name => 'mfar_insert_crh_extract',
8626 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_insert_crh_extract ()+');
8627
8628 FOR i IN p_crh_mfar_extract_record.FIRST..p_crh_mfar_extract_record.LAST
8629 LOOP
8630
8631 -- For CRH Sources Cash and Bank Charges, accounted amounts can be lesser than applied amounts.
8632 -- In such cases we need to prorate the Cash and Bank Charge over applied to invoice distributions.
8633
8634 IF p_crh_mfar_extract_record(i).CRH_STATUS IN ('CLEARED','BANK_CHARGES')
8635 AND p_crh_mfar_extract_record(i).crh_acctd_amount <> p_crh_mfar_extract_record(i).recp_acctd_amount THEN
8636
8637 -- Reset run time variables for a new CRH Source Line from ARD
8638
8639 IF (p_crh_mfar_extract_record(i).LINE_ID <> x_LINE_ID OR
8640 p_crh_mfar_extract_record(i).CRH_RECORD_ID <> x_CRH_RECORD_ID) THEN
8641
8642 local_log(procedure_name => 'mfar_insert_crh_extract',
8643 p_msg_text => 'Reset Run Amounts LINE_ID : '||p_crh_mfar_extract_record(i).LINE_ID||', CRH_RECORD_ID : '||p_crh_mfar_extract_record(i).CRH_RECORD_ID);
8644
8645 x_run_amt := 0;
8646 x_run_alloc_amt := 0;
8647 x_run_acctd_amt := 0;
8648 x_run_alloc_acctd_amt := 0;
8649 x_run_from_amt := 0;
8650 x_run_alloc_from_amt := 0;
8651 x_run_from_acctd_amt := 0;
8652 x_run_alloc_from_acctd_amt := 0;
8653
8654 IF p_crh_mfar_extract_record(i).CRH_RECORD_ID <> x_CRH_RECORD_ID THEN
8655 x_cleared_amount := 0;
8656 x_cleared_acctd_amount := 0;
8657 x_cleared_from_amount := 0;
8658 x_cleared_from_acctd_amount := 0;
8659
8660 x_bc_amount := 0;
8661 x_bc_acctd_amount := 0;
8662 x_bc_from_amount := 0;
8663 x_bc_from_acctd_amount := 0;
8664
8665 x_diff_amt := 0;
8666 x_diff_acctd_amt := 0;
8667 x_diff_from_amt := 0;
8668 x_diff_from_acctd_amt := 0;
8669
8670 x_max_line_id := 0;
8671
8672 END IF;
8673
8674 END IF;
8675
8676 x_LINE_ID := p_crh_mfar_extract_record(i).LINE_ID;
8677 x_CRH_RECORD_ID := p_crh_mfar_extract_record(i).CRH_RECORD_ID;
8678
8679 -- Proration of Amounts
8680 x_run_amt := x_run_amt + p_crh_mfar_extract_record(i).crh_acctd_amount;
8681 x_alloc_amt := ar_unposted_item_util.currRound((x_run_amt/p_crh_mfar_extract_record(i).recp_acctd_amount)
8682 * p_crh_mfar_extract_record(i).amount,p_crh_mfar_extract_record(i).FROM_CURRENCY_CODE)
8683 - x_run_alloc_amt;
8684 x_run_alloc_amt := x_run_alloc_amt + x_alloc_amt;
8685
8686 -- Proration of Accounted Amounts
8687 x_run_acctd_amt := x_run_acctd_amt + p_crh_mfar_extract_record(i).crh_acctd_amount;
8688 x_alloc_acctd_amt := ar_unposted_item_util.currRound((x_run_acctd_amt/p_crh_mfar_extract_record(i).recp_acctd_amount)
8689 * p_crh_mfar_extract_record(i).acctd_amount,p_crh_mfar_extract_record(i).BASE_CURRENCY_CODE) - x_run_alloc_acctd_amt;
8690 x_run_alloc_acctd_amt := x_run_alloc_acctd_amt + x_alloc_acctd_amt;
8691
8692 -- Proration of From Amounts
8693 x_run_from_amt := x_run_from_amt + p_crh_mfar_extract_record(i).crh_acctd_amount;
8694 x_alloc_from_amt := ar_unposted_item_util.currRound((x_run_from_amt/p_crh_mfar_extract_record(i).recp_acctd_amount)
8695 * p_crh_mfar_extract_record(i).from_amount,p_crh_mfar_extract_record(i).FROM_CURRENCY_CODE)
8696 - x_run_alloc_from_amt;
8697 x_run_alloc_from_amt := x_run_alloc_from_amt + x_alloc_from_amt;
8698
8699 -- Proration of From Accounted Amounts
8700 x_run_from_acctd_amt := x_run_from_acctd_amt + p_crh_mfar_extract_record(i).crh_acctd_amount;
8701 x_alloc_from_acctd_amt := ar_unposted_item_util.currRound((x_run_from_acctd_amt/p_crh_mfar_extract_record(i).recp_acctd_amount)
8702 * p_crh_mfar_extract_record(i).from_acctd_amount,p_crh_mfar_extract_record(i).BASE_CURRENCY_CODE) - x_run_alloc_from_acctd_amt;
8703 x_run_alloc_from_acctd_amt := x_run_alloc_from_acctd_amt + x_alloc_from_acctd_amt;
8704
8705
8706 -- Keep a running total of the x_alloc_amount so that it will be used to check the difference at the end
8707 IF p_crh_mfar_extract_record(i).CRH_STATUS = 'CLEARED' THEN
8708 x_cleared_amount := x_cleared_amount + x_alloc_amt;
8709 x_cleared_acctd_amount := x_cleared_acctd_amount + x_alloc_acctd_amt;
8710 x_cleared_from_amount := x_cleared_from_amount + x_alloc_from_amt;
8711 x_cleared_from_acctd_amount := x_cleared_from_acctd_amount + x_alloc_from_acctd_amt;
8712 ELSIF p_crh_mfar_extract_record(i).CRH_STATUS = 'BANK_CHARGES' THEN
8713 x_bc_amount := x_bc_amount + x_alloc_amt;
8714 x_bc_acctd_amount := x_bc_acctd_amount + x_alloc_acctd_amt;
8715 x_bc_from_amount := x_bc_from_amount + x_alloc_from_amt;
8716 x_bc_from_acctd_amount := x_bc_from_acctd_amount + x_alloc_from_acctd_amt;
8717 END IF;
8718
8719
8720 -- If it is the line with max_line_id and it is the first line with that max_line_id, store the diff in a variable.
8721 -- If the next line also has the same line id and the different is same as the previous line, then adjust the values in both the lines.
8722 IF p_crh_mfar_extract_record(i).line_id = p_crh_mfar_extract_record(i).max_line_id THEN
8723 IF p_crh_mfar_extract_record(i).CRH_STATUS = 'CLEARED' THEN
8724 IF p_crh_mfar_extract_record(i).line_id = x_max_line_id THEN
8725 IF x_diff_amt <> 0 AND abs(x_diff_amt) = abs(p_crh_mfar_extract_record(i).alloc_amount + x_cleared_amount) THEN
8726 x_alloc_amt := x_alloc_amt - (p_crh_mfar_extract_record(i).alloc_amount + x_cleared_amount);
8727 l_mfar_extract_tab(i-1).AMOUNT := l_mfar_extract_tab(i-1).AMOUNT + x_diff_amt;
8728 END IF;
8729 IF x_diff_acctd_amt <> 0 AND abs(x_diff_acctd_amt) = abs(p_crh_mfar_extract_record(i).alloc_acctd_amount + x_cleared_acctd_amount) THEN
8730 x_alloc_acctd_amt := x_alloc_acctd_amt - (p_crh_mfar_extract_record(i).alloc_acctd_amount + x_cleared_acctd_amount);
8731 l_mfar_extract_tab(i-1).ACCTD_AMOUNT := l_mfar_extract_tab(i-1).ACCTD_AMOUNT + x_diff_acctd_amt;
8732 END IF;
8733 IF x_diff_from_amt <> 0 AND abs(x_diff_from_amt) = abs(p_crh_mfar_extract_record(i).alloc_amount + x_cleared_from_amount) THEN
8734 x_alloc_from_amt := x_alloc_from_amt - (p_crh_mfar_extract_record(i).alloc_amount + x_cleared_from_amount);
8735 l_mfar_extract_tab(i-1).FROM_AMOUNT := l_mfar_extract_tab(i-1).FROM_AMOUNT + x_diff_from_amt;
8736 END IF;
8737 IF x_diff_from_acctd_amt <> 0 AND abs(x_diff_from_acctd_amt) = abs(p_crh_mfar_extract_record(i).alloc_acctd_amount + x_cleared_from_acctd_amount) THEN
8738 x_alloc_from_acctd_amt := x_alloc_from_acctd_amt - (p_crh_mfar_extract_record(i).alloc_acctd_amount + x_cleared_from_acctd_amount);
8739 l_mfar_extract_tab(i-1).FROM_ACCTD_AMOUNT := l_mfar_extract_tab(i-1).FROM_ACCTD_AMOUNT + x_diff_from_acctd_amt;
8740 END IF;
8741 ELSE
8742 x_max_line_id := p_crh_mfar_extract_record(i).line_id;
8743 x_diff_amt := -1 * (p_crh_mfar_extract_record(i).alloc_amount + x_cleared_amount);
8744 x_diff_acctd_amt := -1 * (p_crh_mfar_extract_record(i).alloc_acctd_amount + x_cleared_acctd_amount);
8745 x_diff_from_amt := -1 * (p_crh_mfar_extract_record(i).alloc_amount + x_cleared_from_amount);
8746 x_diff_from_acctd_amt := -1 * (p_crh_mfar_extract_record(i).alloc_acctd_amount + x_cleared_from_acctd_amount);
8747 END IF;
8748 ELSIF p_crh_mfar_extract_record(i).CRH_STATUS = 'BANK_CHARGES' THEN
8749 IF p_crh_mfar_extract_record(i).line_id = x_max_line_id THEN
8750 IF x_diff_amt <> 0 AND abs(x_diff_amt) = abs(p_crh_mfar_extract_record(i).alloc_amount + x_bc_amount) THEN
8751 x_alloc_amt := x_alloc_amt - (p_crh_mfar_extract_record(i).alloc_amount + x_bc_amount);
8752 l_mfar_extract_tab(i-1).AMOUNT := l_mfar_extract_tab(i-1).AMOUNT + x_diff_amt;
8753 END IF;
8754 IF x_diff_acctd_amt <> 0 AND abs(x_diff_acctd_amt) = abs(p_crh_mfar_extract_record(i).alloc_acctd_amount + x_bc_acctd_amount) THEN
8755 x_alloc_acctd_amt := x_alloc_acctd_amt - (p_crh_mfar_extract_record(i).alloc_acctd_amount + x_bc_acctd_amount);
8756 l_mfar_extract_tab(i-1).ACCTD_AMOUNT := l_mfar_extract_tab(i-1).ACCTD_AMOUNT + x_diff_acctd_amt;
8757 END IF;
8758 IF x_diff_from_amt <> 0 AND abs(x_diff_from_amt) = abs(p_crh_mfar_extract_record(i).alloc_amount + x_bc_from_amount) THEN
8759 x_alloc_from_amt := x_alloc_from_amt - (p_crh_mfar_extract_record(i).alloc_amount + x_bc_from_amount);
8760 l_mfar_extract_tab(i-1).FROM_AMOUNT := l_mfar_extract_tab(i-1).FROM_AMOUNT + x_diff_from_amt;
8761 END IF;
8762 IF x_diff_from_acctd_amt <> 0 AND abs(x_diff_from_acctd_amt) = abs(p_crh_mfar_extract_record(i).alloc_acctd_amount + x_bc_from_acctd_amount) THEN
8763 x_alloc_from_acctd_amt := x_alloc_from_acctd_amt - (p_crh_mfar_extract_record(i).alloc_acctd_amount + x_bc_from_acctd_amount);
8764 l_mfar_extract_tab(i-1).FROM_ACCTD_AMOUNT := l_mfar_extract_tab(i-1).FROM_ACCTD_AMOUNT + x_diff_from_acctd_amt;
8765 END IF;
8766 ELSE
8767 x_max_line_id := p_crh_mfar_extract_record(i).line_id;
8768 x_diff_amt := -1 * (p_crh_mfar_extract_record(i).alloc_amount + x_bc_amount);
8769 x_diff_acctd_amt := -1 * (p_crh_mfar_extract_record(i).alloc_acctd_amount + x_bc_acctd_amount);
8770 x_diff_from_amt := -1 * (p_crh_mfar_extract_record(i).alloc_amount + x_bc_from_amount);
8771 x_diff_from_acctd_amt := -1 * (p_crh_mfar_extract_record(i).alloc_acctd_amount + x_bc_from_acctd_amount);
8772 END IF;
8773 END IF;
8774 END IF;
8775
8776 --
8777 local_log(procedure_name => 'mfar_insert_crh_extract',
8778 p_msg_text => 'crh_status : '||p_crh_mfar_extract_record(i).crh_status);
8779 local_log(procedure_name => 'mfar_insert_crh_extract',
8780 p_msg_text => 'crh_acctd_amount : '||p_crh_mfar_extract_record(i).crh_acctd_amount);
8781 local_log(procedure_name => 'mfar_insert_crh_extract',
8782 p_msg_text => 'recp_acctd_amount : '||p_crh_mfar_extract_record(i).recp_acctd_amount);
8783 local_log(procedure_name => 'mfar_insert_crh_extract',
8784 p_msg_text => 'amount : '||p_crh_mfar_extract_record(i).amount);
8785 local_log(procedure_name => 'mfar_insert_crh_extract',
8786 p_msg_text => 'acctd_amount : '||p_crh_mfar_extract_record(i).acctd_amount);
8787 local_log(procedure_name => 'mfar_insert_crh_extract',
8788 p_msg_text => 'from_amount : '||p_crh_mfar_extract_record(i).from_amount);
8789 local_log(procedure_name => 'mfar_insert_crh_extract',
8790 p_msg_text => 'from_acctd_amount : '||p_crh_mfar_extract_record(i).from_acctd_amount);
8791
8792
8793 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_run_amt : '||x_run_amt);
8794 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_alloc_amt : '||x_alloc_amt);
8795 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_run_alloc_amt : '||x_run_alloc_amt);
8796 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_run_acctd_amt : '||x_run_acctd_amt);
8797 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_alloc_acctd_amt : '||x_alloc_acctd_amt);
8798 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_run_alloc_acctd_amt : '||x_run_alloc_acctd_amt);
8799 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_run_from_amt : '||x_run_from_amt);
8800 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_alloc_from_amt : '||x_alloc_from_amt);
8801 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_run_alloc_from_amt : '||x_run_alloc_from_amt);
8802 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_run_from_acctd_amt : '||x_run_from_acctd_amt);
8803 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_alloc_from_acctd_amt : '||x_alloc_from_acctd_amt);
8804 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_run_alloc_from_acctd_amt : '||x_run_alloc_from_acctd_amt);
8805 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_cleared_amount : '||x_cleared_amount);
8806 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_cleared_acctd_amount : '||x_cleared_acctd_amount);
8807 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_cleared_from_amount : '||x_cleared_from_amount);
8808 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_cleared_from_acctd_amount: '||x_cleared_from_acctd_amount);
8809 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_bc_amount : '||x_bc_amount);
8810 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_bc_acctd_amount : '||x_bc_acctd_amount);
8811 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_bc_from_amount : '||x_bc_from_amount);
8812 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_bc_from_acctd_amount : '||x_bc_from_acctd_amount);
8813 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_diff_amt : '||x_diff_amt);
8814 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_diff_acctd_amt : '||x_diff_acctd_amt);
8815 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_diff_from_amt : '||x_diff_from_amt);
8816 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_diff_from_acctd_amt : '||x_diff_from_acctd_amt);
8817 local_log(procedure_name => 'mfar_insert_crh_extract',p_msg_text => ' x_max_line_id : '||x_max_line_id);
8818 --
8819 ELSE
8820 -- No calculation when proration is not required
8821 x_alloc_amt := p_crh_mfar_extract_record(i).amount;
8822 x_alloc_acctd_amt := p_crh_mfar_extract_record(i).acctd_amount;
8823 x_alloc_from_amt := p_crh_mfar_extract_record(i).from_amount;
8824 x_alloc_from_acctd_amt := p_crh_mfar_extract_record(i).from_acctd_amount;
8825 END IF;
8826
8827 -- Assign the values to extract table
8828 l_mfar_extract_tab(i).EVENT_ID := p_crh_mfar_extract_record(i).EVENT_ID;
8829 l_mfar_extract_tab(i).LINE_NUMBER := p_crh_mfar_extract_record(i).LINE_NUMBER;
8830 l_mfar_extract_tab(i).MFAR_ADDITIONAL_ENTRY := p_crh_mfar_extract_record(i).MFAR_ADDITIONAL_ENTRY;
8831 l_mfar_extract_tab(i).LEDGER_ID := p_crh_mfar_extract_record(i).LEDGER_ID;
8832 l_mfar_extract_tab(i).BASE_CURRENCY_CODE := p_crh_mfar_extract_record(i).BASE_CURRENCY_CODE;
8833 l_mfar_extract_tab(i).ORG_ID := p_crh_mfar_extract_record(i).ORG_ID;
8834 l_mfar_extract_tab(i).LINE_ID := abs(p_crh_mfar_extract_record(i).LINE_ID);
8835 l_mfar_extract_tab(i).SOURCE_ID := p_crh_mfar_extract_record(i).SOURCE_ID;
8836 l_mfar_extract_tab(i).SOURCE_TABLE := p_crh_mfar_extract_record(i).SOURCE_TABLE;
8837 l_mfar_extract_tab(i).HEADER_TABLE_ID := p_crh_mfar_extract_record(i).HEADER_TABLE_ID;
8838 l_mfar_extract_tab(i).POSTING_ENTITY := p_crh_mfar_extract_record(i).POSTING_ENTITY;
8839 l_mfar_extract_tab(i).XLA_ENTITY_ID := p_crh_mfar_extract_record(i).XLA_ENTITY_ID;
8840 --
8841 l_mfar_extract_tab(i).DIST_CCID := p_crh_mfar_extract_record(i).DIST_CCID;
8842 l_mfar_extract_tab(i).REF_DIST_CCID := p_crh_mfar_extract_record(i).REF_DIST_CCID;
8843 l_mfar_extract_tab(i).REF_CTLGD_CCID := p_crh_mfar_extract_record(i).REF_CTLGD_CCID;
8844 --
8845 l_mfar_extract_tab(i).FROM_CURRENCY_CODE := p_crh_mfar_extract_record(i).FROM_CURRENCY_CODE;
8846 l_mfar_extract_tab(i).FROM_EXCHANGE_RATE := p_crh_mfar_extract_record(i).FROM_EXCHANGE_RATE;
8847 l_mfar_extract_tab(i).FROM_EXCHANGE_RATE_TYPE := p_crh_mfar_extract_record(i).FROM_EXCHANGE_RATE_TYPE;
8848 l_mfar_extract_tab(i).FROM_EXCHANGE_DATE := p_crh_mfar_extract_record(i).FROM_EXCHANGE_DATE;
8849 l_mfar_extract_tab(i).FROM_AMOUNT := x_alloc_from_amt;
8850 l_mfar_extract_tab(i).FROM_ACCTD_AMOUNT := x_alloc_from_acctd_amt;
8851 --
8852 l_mfar_extract_tab(i).TO_CURRENCY_CODE := p_crh_mfar_extract_record(i).TO_CURRENCY_CODE;
8853 l_mfar_extract_tab(i).EXCHANGE_RATE := p_crh_mfar_extract_record(i).EXCHANGE_RATE;
8854 l_mfar_extract_tab(i).EXCHANGE_RATE_TYPE := p_crh_mfar_extract_record(i).EXCHANGE_RATE_TYPE;
8855 l_mfar_extract_tab(i).EXCHANGE_DATE := p_crh_mfar_extract_record(i).EXCHANGE_DATE;
8856 l_mfar_extract_tab(i).AMOUNT := x_alloc_amt;
8857 l_mfar_extract_tab(i).ACCTD_AMOUNT := x_alloc_acctd_amt;
8858 --
8859 l_mfar_extract_tab(i).RECEIVABLE_APPLICATION_ID := p_crh_mfar_extract_record(i).RECEIVABLE_APPLICATION_ID;
8860 l_mfar_extract_tab(i).CASH_RECEIPT_ID := p_crh_mfar_extract_record(i).CASH_RECEIPT_ID;
8861 l_mfar_extract_tab(i).CUSTOMER_TRX_ID := p_crh_mfar_extract_record(i).CUSTOMER_TRX_ID;
8862 l_mfar_extract_tab(i).CUSTOMER_TRX_LINE_ID := p_crh_mfar_extract_record(i).CUSTOMER_TRX_LINE_ID;
8863 l_mfar_extract_tab(i).CUST_TRX_LINE_GL_DIST_ID := p_crh_mfar_extract_record(i).CUST_TRX_LINE_GL_DIST_ID;
8864 --
8865 l_mfar_extract_tab(i).INVENTORY_ITEM_ID := p_crh_mfar_extract_record(i).INVENTORY_ITEM_ID;
8866 l_mfar_extract_tab(i).SALES_TAX_ID := p_crh_mfar_extract_record(i).SALES_TAX_ID;
8867 l_mfar_extract_tab(i).SET_OF_BOOKS_ID := p_crh_mfar_extract_record(i).SET_OF_BOOKS_ID;
8868 l_mfar_extract_tab(i).BILL_SITE_USE_ID := p_crh_mfar_extract_record(i).BILL_SITE_USE_ID;
8869 l_mfar_extract_tab(i).SOLD_SITE_USE_ID := p_crh_mfar_extract_record(i).SOLD_SITE_USE_ID;
8870 l_mfar_extract_tab(i).SHIP_SITE_USE_ID := p_crh_mfar_extract_record(i).SHIP_SITE_USE_ID;
8871 l_mfar_extract_tab(i).BILL_CUSTOMER_ID := p_crh_mfar_extract_record(i).BILL_CUSTOMER_ID;
8872 l_mfar_extract_tab(i).SOLD_CUSTOMER_ID := p_crh_mfar_extract_record(i).SOLD_CUSTOMER_ID;
8873 l_mfar_extract_tab(i).SHIP_CUSTOMER_ID := p_crh_mfar_extract_record(i).SHIP_CUSTOMER_ID;
8874 l_mfar_extract_tab(i).TAX_LINE_ID := p_crh_mfar_extract_record(i).TAX_LINE_ID;
8875 --
8876 l_mfar_extract_tab(i).SELECT_FLAG := p_crh_mfar_extract_record(i).SELECT_FLAG;
8877 l_mfar_extract_tab(i).LEVEL_FLAG := p_crh_mfar_extract_record(i).LEVEL_FLAG;
8878 l_mfar_extract_tab(i).FROM_TO_FLAG := p_crh_mfar_extract_record(i).FROM_TO_FLAG;
8879 l_mfar_extract_tab(i).CRH_STATUS := p_crh_mfar_extract_record(i).CRH_STATUS;
8880 l_mfar_extract_tab(i).APP_CRH_STATUS := p_crh_mfar_extract_record(i).APP_CRH_STATUS;
8881 --
8882 l_mfar_extract_tab(i).EVENT_TYPE_CODE := p_crh_mfar_extract_record(i).EVENT_TYPE_CODE;
8883 l_mfar_extract_tab(i).EVENT_CLASS_CODE := p_crh_mfar_extract_record(i).EVENT_CLASS_CODE;
8884 l_mfar_extract_tab(i).ENTITY_CODE := p_crh_mfar_extract_record(i).ENTITY_CODE;
8885 --
8886 l_mfar_extract_tab(i).third_party_id := p_crh_mfar_extract_record(i).third_party_id;
8887 l_mfar_extract_tab(i).third_party_site_id := p_crh_mfar_extract_record(i).third_party_site_id;
8888 l_mfar_extract_tab(i).third_party_type := p_crh_mfar_extract_record(i).third_party_type;
8889 l_mfar_extract_tab(i).source_type := p_crh_mfar_extract_record(i).source_type;
8890
8891 l_mfar_extract_tab(i).additional_char2 := p_crh_mfar_extract_record(i).mfar_upg_trx;
8892
8893 END LOOP;
8894
8895 FORALL r IN l_mfar_extract_tab.first..l_mfar_extract_tab.last
8896 INSERT INTO ar_xla_lines_extract VALUES l_mfar_extract_tab(r);
8897
8898 local_log(procedure_name => 'mfar_insert_crh_extract',
8899 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_insert_crh_extract ()-');
8900
8901 EXCEPTION
8902 -- WHEN NO_DATA_FOUND THEN NULL;
8903 WHEN OTHERS THEN
8904 local_log(procedure_name => 'mfar_insert_crh_extract',
8905 p_msg_text => 'EXCEPTION OTHERS in mfar_insert_crh_extract '||
8906 arp_global.CRLF || 'Error :'|| SQLERRM);
8907 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
8908 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
8909 'Procedure :arp_xla_extract_main_pkg.mfar_insert_crh_extract'|| arp_global.CRLF||
8910 'Error :'||SQLERRM);
8911 FND_MSG_PUB.ADD;
8912 RAISE;
8913
8914 END mfar_insert_crh_extract;
8915
8916 PROCEDURE prorate_extract_acctd_amounts (p_extract_record ar_xla_extract_record_type)
8917 IS
8918 -- run time variables for proration
8919 x_run_from_acctd_amt number := 0;
8920 x_run_alloc_from_acctd_amt number := 0;
8921 x_alloc_from_acctd_amt number := 0;
8922
8923 x_APP_RECORD_ID number := 0;
8924
8925 i number := 0;
8926
8927 -- pl/sql table for ar_xla_lines_extract
8928 TYPE ar_xla_extract_gt_tab IS TABLE OF ar_xla_lines_extract%ROWTYPE
8929 INDEX BY BINARY_INTEGER;
8930 l_extract_tab ar_xla_extract_gt_tab;
8931
8932
8933 BEGIN
8934 local_log(procedure_name => 'prorate_extract_acctd_amounts',
8935 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.prorate_extract_acctd_amounts()+');
8936
8937 FOR i IN p_extract_record.FIRST..p_extract_record.LAST
8938 LOOP
8939
8940 -- Reset run time variables for a new CRH Source Line from ARD
8941 IF p_extract_record(i).SOURCE_ID <> x_APP_RECORD_ID THEN
8942 x_run_from_acctd_amt := 0;
8943 x_run_alloc_from_acctd_amt := 0;
8944 END IF;
8945
8946 x_APP_RECORD_ID := p_extract_record(i).SOURCE_ID;
8947
8948 -- Proration of From Accounted Amounts
8949 x_run_from_acctd_amt := x_run_from_acctd_amt + p_extract_record(i).FROM_AMOUNT;
8950 x_alloc_from_acctd_amt := ar_unposted_item_util.currRound((x_run_from_acctd_amt/NVL(p_extract_record(i).AMOUNT_APPLIED_FROM,p_extract_record(i).AMOUNT_APPLIED))
8951 * p_extract_record(i).ACCTD_AMOUNT_APPLIED_FROM,p_extract_record(i).BASE_CURRENCY_CODE) - x_run_alloc_from_acctd_amt;
8952 x_run_alloc_from_acctd_amt := x_run_alloc_from_acctd_amt + x_alloc_from_acctd_amt;
8953
8954 -- Assign the values to extract table
8955 l_extract_tab(i).EVENT_ID := p_extract_record(i).EVENT_ID;
8956 l_extract_tab(i).LINE_NUMBER := p_extract_record(i).LINE_NUMBER;
8957 l_extract_tab(i).LANGUAGE := p_extract_record(i).LANGUAGE;
8958 l_extract_tab(i).LEDGER_ID := p_extract_record(i).LEDGER_ID;
8959 l_extract_tab(i).SOURCE_ID := p_extract_record(i).SOURCE_ID;
8960 l_extract_tab(i).SOURCE_TABLE := p_extract_record(i).SOURCE_TABLE;
8961 l_extract_tab(i).LINE_ID := p_extract_record(i).LINE_ID;
8962 l_extract_tab(i).TAX_CODE_ID := p_extract_record(i).TAX_CODE_ID;
8963 l_extract_tab(i).LOCATION_SEGMENT_ID := p_extract_record(i).LOCATION_SEGMENT_ID;
8964 l_extract_tab(i).BASE_CURRENCY_CODE := p_extract_record(i).BASE_CURRENCY_CODE;
8965 l_extract_tab(i).EXCHANGE_RATE_TYPE := p_extract_record(i).EXCHANGE_RATE_TYPE;
8966 l_extract_tab(i).EXCHANGE_RATE := p_extract_record(i).EXCHANGE_RATE;
8967 l_extract_tab(i).EXCHANGE_DATE := p_extract_record(i).EXCHANGE_DATE;
8968 l_extract_tab(i).ACCTD_AMOUNT := p_extract_record(i).ACCTD_AMOUNT;
8969 l_extract_tab(i).TAXABLE_ACCTD_AMOUNT := p_extract_record(i).TAXABLE_ACCTD_AMOUNT;
8970 l_extract_tab(i).ORG_ID := p_extract_record(i).ORG_ID;
8971 l_extract_tab(i).HEADER_TABLE_ID := p_extract_record(i).HEADER_TABLE_ID;
8972 l_extract_tab(i).POSTING_ENTITY := p_extract_record(i).POSTING_ENTITY;
8973 l_extract_tab(i).CASH_RECEIPT_ID := p_extract_record(i).CASH_RECEIPT_ID;
8974 l_extract_tab(i).CUSTOMER_TRX_ID := p_extract_record(i).CUSTOMER_TRX_ID;
8975
8976 l_extract_tab(i).CUSTOMER_TRX_LINE_ID := p_extract_record(i).CUSTOMER_TRX_LINE_ID;
8977 l_extract_tab(i).CUST_TRX_LINE_GL_DIST_ID := p_extract_record(i).CUST_TRX_LINE_GL_DIST_ID;
8978 l_extract_tab(i).CUST_TRX_LINE_SALESREP_ID := p_extract_record(i).CUST_TRX_LINE_SALESREP_ID;
8979 l_extract_tab(i).INVENTORY_ITEM_ID := p_extract_record(i).INVENTORY_ITEM_ID;
8980 l_extract_tab(i).SALES_TAX_ID := p_extract_record(i).SALES_TAX_ID;
8981 l_extract_tab(i).SO_ORGANIZATION_ID := p_extract_record(i).SO_ORGANIZATION_ID;
8982 l_extract_tab(i).TAX_EXEMPTION_ID := p_extract_record(i).TAX_EXEMPTION_ID;
8983 l_extract_tab(i).UOM_CODE := p_extract_record(i).UOM_CODE;
8984 l_extract_tab(i).WAREHOUSE_ID := p_extract_record(i).WAREHOUSE_ID;
8985 l_extract_tab(i).AGREEMENT_ID := p_extract_record(i).AGREEMENT_ID;
8986 l_extract_tab(i).CUSTOMER_BANK_ACCT_ID := p_extract_record(i).CUSTOMER_BANK_ACCT_ID;
8987 l_extract_tab(i).DRAWEE_BANK_ACCOUNT_ID := p_extract_record(i).DRAWEE_BANK_ACCOUNT_ID;
8988 l_extract_tab(i).REMITTANCE_BANK_ACCT_ID := p_extract_record(i).REMITTANCE_BANK_ACCT_ID;
8989 l_extract_tab(i).DISTRIBUTION_SET_ID := p_extract_record(i).DISTRIBUTION_SET_ID;
8990 l_extract_tab(i).PAYMENT_SCHEDULE_ID := p_extract_record(i).PAYMENT_SCHEDULE_ID;
8991 l_extract_tab(i).RECEIPT_METHOD_ID := p_extract_record(i).RECEIPT_METHOD_ID;
8992
8993 l_extract_tab(i).RECEIVABLES_TRX_ID := p_extract_record(i).RECEIVABLES_TRX_ID;
8994 l_extract_tab(i).ED_ADJ_RECEIVABLES_TRX_ID := p_extract_record(i).ED_ADJ_RECEIVABLES_TRX_ID;
8995 l_extract_tab(i).UNED_RECEIVABLES_TRX_ID := p_extract_record(i).UNED_RECEIVABLES_TRX_ID;
8996 l_extract_tab(i).SET_OF_BOOKS_ID := p_extract_record(i).SET_OF_BOOKS_ID;
8997 l_extract_tab(i).SALESREP_ID := p_extract_record(i).SALESREP_ID;
8998 l_extract_tab(i).BILL_SITE_USE_ID := p_extract_record(i).BILL_SITE_USE_ID;
8999 l_extract_tab(i).DRAWEE_SITE_USE_ID := p_extract_record(i).DRAWEE_SITE_USE_ID;
9000 l_extract_tab(i).PAYING_SITE_USE_ID := p_extract_record(i).PAYING_SITE_USE_ID;
9001 l_extract_tab(i).SOLD_SITE_USE_ID := p_extract_record(i).SOLD_SITE_USE_ID;
9002 l_extract_tab(i).SHIP_SITE_USE_ID := p_extract_record(i).SHIP_SITE_USE_ID;
9003 l_extract_tab(i).RECEIPT_CUSTOMER_SITE_USE_ID := p_extract_record(i).RECEIPT_CUSTOMER_SITE_USE_ID;
9004 l_extract_tab(i).BILL_CUST_ROLE_ID := p_extract_record(i).BILL_CUST_ROLE_ID;
9005 l_extract_tab(i).DRAWEE_CUST_ROLE_ID := p_extract_record(i).DRAWEE_CUST_ROLE_ID;
9006 l_extract_tab(i).SHIP_CUST_ROLE_ID := p_extract_record(i).SHIP_CUST_ROLE_ID;
9007 l_extract_tab(i).SOLD_CUST_ROLE_ID := p_extract_record(i).SOLD_CUST_ROLE_ID;
9008 l_extract_tab(i).BILL_CUSTOMER_ID := p_extract_record(i).BILL_CUSTOMER_ID;
9009
9010 l_extract_tab(i).DRAWEE_CUSTOMER_ID := p_extract_record(i).DRAWEE_CUSTOMER_ID;
9011 l_extract_tab(i).PAYING_CUSTOMER_ID := p_extract_record(i).PAYING_CUSTOMER_ID;
9012 l_extract_tab(i).SOLD_CUSTOMER_ID := p_extract_record(i).SOLD_CUSTOMER_ID;
9013 l_extract_tab(i).SHIP_CUSTOMER_ID := p_extract_record(i).SHIP_CUSTOMER_ID;
9014 l_extract_tab(i).REMIT_ADDRESS_ID := p_extract_record(i).REMIT_ADDRESS_ID;
9015 l_extract_tab(i).RECEIPT_BATCH_ID := p_extract_record(i).RECEIPT_BATCH_ID;
9016 l_extract_tab(i).RECEIVABLE_APPLICATION_ID := p_extract_record(i).RECEIVABLE_APPLICATION_ID;
9017 l_extract_tab(i).CUSTOMER_BANK_BRANCH_ID := p_extract_record(i).CUSTOMER_BANK_BRANCH_ID;
9018 l_extract_tab(i).ISSUER_BANK_BRANCH_ID := p_extract_record(i).ISSUER_BANK_BRANCH_ID;
9019 l_extract_tab(i).BATCH_SOURCE_ID := p_extract_record(i).BATCH_SOURCE_ID;
9020 l_extract_tab(i).BATCH_ID := p_extract_record(i).BATCH_ID;
9021 l_extract_tab(i).TERM_ID := p_extract_record(i).TERM_ID;
9022 l_extract_tab(i).SELECT_FLAG := p_extract_record(i).SELECT_FLAG;
9023 l_extract_tab(i).LEVEL_FLAG := p_extract_record(i).LEVEL_FLAG;
9024 l_extract_tab(i).FROM_TO_FLAG := p_extract_record(i).FROM_TO_FLAG;
9025 l_extract_tab(i).AMOUNT := p_extract_record(i).AMOUNT;
9026 l_extract_tab(i).FROM_AMOUNT := p_extract_record(i).FROM_AMOUNT;
9027
9028 IF p_extract_record(i).SOURCE_TYPE = 'REC' AND p_extract_record(i).REF_MF_DIST_FLAG <> 'D' THEN
9029 l_extract_tab(i).FROM_ACCTD_AMOUNT := x_alloc_from_acctd_amt;
9030 ELSE
9031 l_extract_tab(i).FROM_ACCTD_AMOUNT := p_extract_record(i).FROM_ACCTD_AMOUNT;
9032 END If;
9033
9034 l_extract_tab(i).EVENT_TYPE_CODE := p_extract_record(i).EVENT_TYPE_CODE;
9035 l_extract_tab(i).EVENT_CLASS_CODE := p_extract_record(i).EVENT_CLASS_CODE;
9036 l_extract_tab(i).ENTITY_CODE := p_extract_record(i).ENTITY_CODE;
9037 l_extract_tab(i).MFAR_ADDITIONAL_ENTRY := p_extract_record(i).MFAR_ADDITIONAL_ENTRY;
9038
9039 END LOOP;
9040
9041 FORALL r IN l_extract_tab.first..l_extract_tab.last
9042 INSERT INTO ar_xla_lines_extract VALUES l_extract_tab(r);
9043
9044 local_log(procedure_name => 'prorate_extract_acctd_amounts',
9045 p_msg_text => 'ARP_XLA_EXTRACT_MAIN_PKG.prorate_extract_acctd_amounts ()-');
9046
9047 EXCEPTION
9048 -- WHEN NO_DATA_FOUND THEN NULL;
9049 WHEN OTHERS THEN
9050 local_log(procedure_name => 'prorate_extract_acctd_amounts',
9051 p_msg_text => 'EXCEPTION OTHERS in prorate_extract_acctd_amounts '||
9052 arp_global.CRLF || 'Error :'|| SQLERRM);
9053 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
9054 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
9055 'Procedure :arp_xla_extract_main_pkg.prorate_extract_acctd_amounts'|| arp_global.CRLF||
9056 'Error :'||SQLERRM);
9057 FND_MSG_PUB.ADD;
9058 RAISE;
9059
9060 END prorate_extract_acctd_amounts;
9061
9062 FUNCTION the_segment_value(p_coa_id IN NUMBER,
9063 p_qual_code IN VARCHAR2,
9064 p_ccid IN NUMBER)
9065 RETURN VARCHAR2
9066 IS
9067 l_segment_name VARCHAR2(30);
9068 l_segment_value VARCHAR2(25);
9069 l_hash_value NUMBER;
9070 CURSOR c IS
9071 SELECT application_column_name
9072 FROM FND_SEGMENT_ATTRIBUTE_VALUES
9073 WHERE id_flex_num = p_coa_id
9074 AND segment_attribute_type = p_qual_code
9075 AND id_flex_code = 'GL#'
9076 AND attribute_value = 'Y';
9077 BEGIN
9078
9079 IF p_coa_id IS NOT NULL AND
9080 p_qual_code IS NOT NULL AND
9081 p_ccid IS NOT NULL
9082 THEN
9083
9084 l_hash_value := DBMS_UTILITY.get_hash_value(
9085 'COA:'||p_coa_id||'@*?QUAL:'||p_qual_code||'@*?CCID:'||p_ccid||'@*?END:',
9086 1000,
9087 32768);
9088
9089
9090 IF p_qual_code = 'GL_BALANCING' THEN
9091 IF pg_bal_qual.EXISTS(l_hash_value) THEN
9092 l_segment_value := pg_bal_qual(l_hash_value);
9093 ELSE
9094 OPEN c;
9095 FETCH c INTO l_segment_name;
9096 CLOSE c;
9097 get_segment_value(p_segment_name => l_segment_name,
9098 p_coa_id => p_coa_id,
9099 p_ccid => p_ccid,
9100 x_segment_value => l_segment_value);
9101 pg_bal_qual(l_hash_value) := l_segment_value;
9102 END IF;
9103 ELSIF p_qual_code = 'GL_ACCOUNT' THEN
9104 IF pg_nat_qual.EXISTS(l_hash_value) THEN
9105 l_segment_value := pg_nat_qual(l_hash_value);
9106 ELSE
9107 OPEN c;
9108 FETCH c INTO l_segment_name;
9109 CLOSE c;
9110 get_segment_value(p_segment_name => l_segment_name,
9111 p_coa_id => p_coa_id,
9112 p_ccid => p_ccid,
9113 x_segment_value => l_segment_value);
9114 pg_nat_qual(l_hash_value) := l_segment_value;
9115 END IF;
9116 END IF;
9117 END IF;
9118
9119 return(l_segment_value);
9120
9121 EXCEPTION
9122 WHEN no_data_found THEN
9123 return(null);
9124 WHEN OTHERS THEN
9125 raise;
9126 END;
9127
9128
9129 FUNCTION ed_uned_trx(p_type IN VARCHAR2, p_org_id IN NUMBER) RETURN NUMBER
9130 IS
9131 l_trx_id NUMBER;
9132 l_hash_value NUMBER;
9133 CURSOR c IS
9134 SELECT receivables_trx_id
9135 FROM ar_receivables_trx_all
9136 WHERE org_id = p_org_id
9137 AND type = p_type;
9138 BEGIN
9139 IF p_org_id IS NOT NULL AND
9140 p_type IS NOT NULL
9141 THEN
9142 l_hash_value := DBMS_UTILITY.get_hash_value(
9143 'EDUNED:'||p_type||'@*?:'||p_org_id||'@*?END:',
9144 1000,
9145 32768);
9146 IF p_type = 'EDISC' THEN
9147 IF pg_ed_trx.EXISTS(l_hash_value) THEN
9148 l_trx_id := pg_ed_trx(l_hash_value);
9149 ELSE
9150 OPEN c;
9151 FETCH c INTO l_trx_id;
9152 CLOSE c;
9153 pg_ed_trx(l_hash_value) := l_trx_id;
9154 END IF;
9155 ELSIF p_type = 'UNEDISC' THEN
9156 IF pg_uned_trx.EXISTS(l_hash_value) THEN
9157 l_trx_id := pg_uned_trx(l_hash_value);
9158 ELSE
9159 OPEN c;
9160 FETCH c INTO l_trx_id;
9161 CLOSE c;
9162 pg_uned_trx(l_hash_value) := l_trx_id;
9163 END IF;
9164 END IF;
9165 END IF;
9166 return(l_trx_id);
9167 EXCEPTION
9168 WHEN no_data_found THEN
9169 return(null);
9170 WHEN OTHERS THEN
9171 raise;
9172 END;
9173
9174
9175 -- bug 7319548
9176 FUNCTION get_glr_ccid (p_ra_id IN NUMBER,p_gain_loss_identifier IN VARCHAR) RETURN NUMBER
9177 IS
9178 l_ccid NUMBER;
9179 BEGIN
9180
9181 IF ( g_glr_ccid_cache_tab.EXISTS(p_ra_id) = FALSE ) THEN
9182
9183 select ard.code_combination_id
9184 into l_ccid
9185 from ar_distributions_all ard
9186 where ard.source_table = 'RA'
9187 and ard.source_type = p_gain_loss_identifier
9188 and ard.source_id = p_ra_id;
9189 -- bug 7694448 modified select to fetch ccid based on whether it is gain or loss
9190
9191 g_glr_ccid_cache_tab(p_ra_id) := l_ccid;
9192
9193 END IF;
9194
9195 return g_glr_ccid_cache_tab(p_ra_id);
9196
9197 EXCEPTION
9198 WHEN NO_DATA_FOUND then return NULL;
9199 WHEN OTHERS THEN
9200 local_log(procedure_name => 'get_glr_ccid',
9201 p_msg_text =>'EXCEPTION OTHERS in arp_xla_extract_main_pkg.get_glr_ccid '||
9202 arp_global.CRLF ||'Error :'|| SQLERRM);
9203 FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
9204 FND_MESSAGE.SET_TOKEN('MESSAGE' ,
9205 'Procedure :arp_xla_extract_main_pkg.get_glr_ccid'|| arp_global.CRLF||
9206 'Error :'||SQLERRM);
9207 FND_MSG_PUB.ADD;
9208 RAISE;
9209
9210 END get_glr_ccid;
9211
9212
9213
9214 PROCEDURE diag_data
9215 IS
9216 CURSOR c IS
9217 SELECT *
9218 FROM ar_xla_lines_extract;
9219 l_c c%ROWTYPE;
9220
9221
9222 CURSOR c2 IS
9223 SELECT *
9224 FROM xla_events_gt
9225 WHERE application_id = 222;
9226 l c2%ROWTYPE;
9227
9228
9229 l_text VARCHAR2(4000);
9230 cpt NUMBER := 0;
9231 BEGIN
9232 --
9233 /*
9234 DELETE FROM ar_xla_event_tmp;
9235 --
9236 DELETE FROM ar_xla_lines_extract_tmp;
9237 --
9238 INSERT INTO ar_xla_event_tmp
9239 (LINE_NUMBER ,
9240 ENTITY_ID ,
9241 APPLICATION_ID ,
9242 LEDGER_ID ,
9243 LEGAL_ENTITY_ID ,
9244 ENTITY_CODE ,
9245 TRANSACTION_NUMBER ,
9246 SOURCE_ID_INT_1 ,
9247 SOURCE_ID_INT_2 ,
9248 SOURCE_ID_INT_3 ,
9249 SOURCE_ID_INT_4 ,
9250 SOURCE_ID_CHAR_1 ,
9251 SOURCE_ID_CHAR_2 ,
9252 SOURCE_ID_CHAR_3 ,
9253 SOURCE_ID_CHAR_4 ,
9254 EVENT_ID ,
9255 EVENT_CLASS_CODE ,
9256 EVENT_TYPE_CODE ,
9257 EVENT_NUMBER ,
9258 EVENT_DATE ,
9259 EVENT_STATUS_CODE ,
9260 PROCESS_STATUS_CODE ,
9261 EVENT_CREATED_BY ,
9262 REFERENCE_NUM_1 ,
9263 REFERENCE_NUM_2 ,
9264 REFERENCE_NUM_3 ,
9265 REFERENCE_NUM_4 ,
9266 REFERENCE_CHAR_1 ,
9267 REFERENCE_CHAR_2 ,
9268 REFERENCE_CHAR_3 ,
9269 REFERENCE_CHAR_4 ,
9270 REFERENCE_DATE_1 ,
9271 REFERENCE_DATE_2 ,
9272 REFERENCE_DATE_3 ,
9273 REFERENCE_DATE_4 ,
9274 VALUATION_METHOD ,
9275 SECURITY_ID_INT_1 ,
9276 SECURITY_ID_INT_2 ,
9277 SECURITY_ID_INT_3 ,
9278 SECURITY_ID_CHAR_1 ,
9279 SECURITY_ID_CHAR_2 ,
9280 SECURITY_ID_CHAR_3 ,
9281 ON_HOLD_FLAG ,
9282 TRANSACTION_DATE ,
9283 BUDGETARY_CONTROL_FLAG )
9284 SELECT
9285 LINE_NUMBER ,
9286 ENTITY_ID ,
9287 APPLICATION_ID ,
9288 LEDGER_ID ,
9289 LEGAL_ENTITY_ID ,
9290 ENTITY_CODE ,
9291 TRANSACTION_NUMBER ,
9292 SOURCE_ID_INT_1 ,
9293 SOURCE_ID_INT_2 ,
9294 SOURCE_ID_INT_3 ,
9295 SOURCE_ID_INT_4 ,
9296 SOURCE_ID_CHAR_1 ,
9297 SOURCE_ID_CHAR_2 ,
9298 SOURCE_ID_CHAR_3 ,
9299 SOURCE_ID_CHAR_4 ,
9300 EVENT_ID ,
9301 EVENT_CLASS_CODE ,
9302 EVENT_TYPE_CODE ,
9303 EVENT_NUMBER ,
9304 EVENT_DATE ,
9305 EVENT_STATUS_CODE ,
9306 PROCESS_STATUS_CODE ,
9307 EVENT_CREATED_BY ,
9308 REFERENCE_NUM_1 ,
9309 REFERENCE_NUM_2 ,
9310 REFERENCE_NUM_3 ,
9311 REFERENCE_NUM_4 ,
9312 REFERENCE_CHAR_1 ,
9313 REFERENCE_CHAR_2 ,
9314 REFERENCE_CHAR_3 ,
9315 REFERENCE_CHAR_4 ,
9316 REFERENCE_DATE_1 ,
9317 REFERENCE_DATE_2 ,
9318 REFERENCE_DATE_3 ,
9319 REFERENCE_DATE_4 ,
9320 VALUATION_METHOD ,
9321 SECURITY_ID_INT_1 ,
9322 SECURITY_ID_INT_2 ,
9323 SECURITY_ID_INT_3 ,
9324 SECURITY_ID_CHAR_1 ,
9325 SECURITY_ID_CHAR_2 ,
9326 SECURITY_ID_CHAR_3 ,
9327 ON_HOLD_FLAG ,
9328 TRANSACTION_DATE ,
9329 BUDGETARY_CONTROL_FLAG
9330 FROM xla_events_gt
9331 WHERE application_id = 222;
9332 --
9333 INSERT INTO ar_xla_lines_extract_tmp
9334 ( EVENT_ID ,
9335 LINE_NUMBER ,
9336 LANGUAGE ,
9337 LEDGER_ID ,
9338 SOURCE_ID ,
9339 SOURCE_TABLE ,
9340 LINE_ID ,
9341 TAX_CODE_ID ,
9342 LOCATION_SEGMENT_ID ,
9343 BASE_CURRENCY_CODE ,
9344 EXCHANGE_RATE_TYPE ,
9345 EXCHANGE_RATE ,
9346 EXCHANGE_DATE ,
9347 ACCTD_AMOUNT ,
9348 TAXABLE_ACCTD_AMOUNT ,
9349 ORG_ID ,
9350 HEADER_TABLE_ID ,
9351 POSTING_ENTITY ,
9352 CASH_RECEIPT_ID ,
9353 CUSTOMER_TRX_ID ,
9354 CUSTOMER_TRX_LINE_ID ,
9355 CUST_TRX_LINE_GL_DIST_ID ,
9356 CUST_TRX_LINE_SALESREP_ID ,
9357 INVENTORY_ITEM_ID ,
9358 SALES_TAX_ID ,
9359 SO_ORGANIZATION_ID ,
9360 TAX_EXEMPTION_ID ,
9361 UOM_CODE ,
9362 WAREHOUSE_ID ,
9363 AGREEMENT_ID ,
9364 CUSTOMER_BANK_ACCT_ID ,
9365 DRAWEE_BANK_ACCOUNT_ID ,
9366 REMITTANCE_BANK_ACCT_ID ,
9367 DISTRIBUTION_SET_ID ,
9368 PAYMENT_SCHEDULE_ID ,
9369 RECEIPT_METHOD_ID ,
9370 RECEIVABLES_TRX_ID ,
9371 ED_ADJ_RECEIVABLES_TRX_ID ,
9372 UNED_RECEIVABLES_TRX_ID ,
9373 SET_OF_BOOKS_ID ,
9374 SALESREP_ID ,
9375 BILL_SITE_USE_ID ,
9376 DRAWEE_SITE_USE_ID ,
9377 PAYING_SITE_USE_ID ,
9378 SOLD_SITE_USE_ID ,
9379 SHIP_SITE_USE_ID ,
9380 RECEIPT_CUSTOMER_SITE_USE_ID ,
9381 BILL_CUST_ROLE_ID ,
9382 DRAWEE_CUST_ROLE_ID ,
9383 SHIP_CUST_ROLE_ID ,
9384 SOLD_CUST_ROLE_ID ,
9385 BILL_CUSTOMER_ID ,
9386 DRAWEE_CUSTOMER_ID ,
9387 PAYING_CUSTOMER_ID ,
9388 SOLD_CUSTOMER_ID ,
9389 SHIP_CUSTOMER_ID ,
9390 REMIT_ADDRESS_ID ,
9391 RECEIPT_BATCH_ID ,
9392 RECEIVABLE_APPLICATION_ID ,
9393 CUSTOMER_BANK_BRANCH_ID ,
9394 ISSUER_BANK_BRANCH_ID ,
9395 BATCH_SOURCE_ID ,
9396 BATCH_ID ,
9397 TERM_ID ,
9398 SELECT_FLAG ,
9399 LEVEL_FLAG ,
9400 FROM_TO_FLAG ,
9401 CRH_STATUS ,
9402 CRH_PRV_STATUS ,
9403 AMOUNT ,
9404 FROM_AMOUNT ,
9405 FROM_ACCTD_AMOUNT ,
9406 PREV_FUND_SEG_REPLACE ,
9407 APP_CRH_STATUS ,
9408 PAIRED_CCID ,
9409 PAIRE_DIST_ID ,
9410 REF_DIST_CCID ,
9411 REF_MF_DIST_FLAG ,
9412 ORIGIN_EXTRACT_TABLE ,
9413 EVENT_TYPE_CODE ,
9414 EVENT_CLASS_CODE ,
9415 ENTITY_CODE ,
9416 REVERSAL_CODE ,
9417 BUSINESS_FLOW_CODE ,
9418 TAX_LINE_ID ,
9419 ADDITIONAL_CHAR1 ,
9420 ADDITIONAL_CHAR2 ,
9421 ADDITIONAL_CHAR3 ,
9422 ADDITIONAL_CHAR4 ,
9423 ADDITIONAL_CHAR5 ,
9424 ADDITIONAL_ID1 ,
9425 ADDITIONAL_ID2 ,
9426 ADDITIONAL_ID3 ,
9427 ADDITIONAL_ID4 ,
9428 ADDITIONAL_ID5 ,
9429 XLA_ENTITY_ID
9430 ,REF_CTLGD_CCID
9431 ,DIST_CCID
9432 ,FROM_EXCHANGE_RATE
9433 ,FROM_EXCHANGE_RATE_TYPE
9434 ,FROM_EXCHANGE_DATE
9435 ,FROM_CURRENCY_CODE
9436 ,TO_CURRENCY_CODE
9437 ,MFAR_ADDITIONAL_ENTRY
9438 ,third_party_id
9439 ,third_party_site_id
9440 ,third_party_type
9441 ,source_type )
9442 SELECT
9443 EVENT_ID ,
9444 LINE_NUMBER ,
9445 LANGUAGE ,
9446 LEDGER_ID ,
9447 SOURCE_ID ,
9448 SOURCE_TABLE ,
9449 LINE_ID ,
9450 TAX_CODE_ID ,
9451 LOCATION_SEGMENT_ID ,
9452 BASE_CURRENCY_CODE ,
9453 EXCHANGE_RATE_TYPE ,
9454 EXCHANGE_RATE ,
9455 EXCHANGE_DATE ,
9456 ACCTD_AMOUNT ,
9457 TAXABLE_ACCTD_AMOUNT ,
9458 ORG_ID ,
9459 HEADER_TABLE_ID ,
9460 POSTING_ENTITY ,
9461 CASH_RECEIPT_ID ,
9462 CUSTOMER_TRX_ID ,
9463 CUSTOMER_TRX_LINE_ID ,
9464 CUST_TRX_LINE_GL_DIST_ID ,
9465 CUST_TRX_LINE_SALESREP_ID ,
9466 INVENTORY_ITEM_ID ,
9467 SALES_TAX_ID ,
9468 SO_ORGANIZATION_ID ,
9469 TAX_EXEMPTION_ID ,
9470 UOM_CODE ,
9471 WAREHOUSE_ID ,
9472 AGREEMENT_ID ,
9473 CUSTOMER_BANK_ACCT_ID ,
9474 DRAWEE_BANK_ACCOUNT_ID ,
9475 REMITTANCE_BANK_ACCT_ID ,
9476 DISTRIBUTION_SET_ID ,
9477 PAYMENT_SCHEDULE_ID ,
9478 RECEIPT_METHOD_ID ,
9479 RECEIVABLES_TRX_ID ,
9480 ED_ADJ_RECEIVABLES_TRX_ID ,
9481 UNED_RECEIVABLES_TRX_ID ,
9482 SET_OF_BOOKS_ID ,
9483 SALESREP_ID ,
9484 BILL_SITE_USE_ID ,
9485 DRAWEE_SITE_USE_ID ,
9486 PAYING_SITE_USE_ID ,
9487 SOLD_SITE_USE_ID ,
9488 SHIP_SITE_USE_ID ,
9489 RECEIPT_CUSTOMER_SITE_USE_ID ,
9490 BILL_CUST_ROLE_ID ,
9491 DRAWEE_CUST_ROLE_ID ,
9492 SHIP_CUST_ROLE_ID ,
9493 SOLD_CUST_ROLE_ID ,
9494 BILL_CUSTOMER_ID ,
9495 DRAWEE_CUSTOMER_ID ,
9496 PAYING_CUSTOMER_ID ,
9497 SOLD_CUSTOMER_ID ,
9498 SHIP_CUSTOMER_ID ,
9499 REMIT_ADDRESS_ID ,
9500 RECEIPT_BATCH_ID ,
9501 RECEIVABLE_APPLICATION_ID ,
9502 CUSTOMER_BANK_BRANCH_ID ,
9503 ISSUER_BANK_BRANCH_ID ,
9504 BATCH_SOURCE_ID ,
9505 BATCH_ID ,
9506 TERM_ID ,
9507 SELECT_FLAG ,
9508 LEVEL_FLAG ,
9509 FROM_TO_FLAG ,
9510 CRH_STATUS ,
9511 CRH_PRV_STATUS ,
9512 AMOUNT ,
9513 FROM_AMOUNT ,
9514 FROM_ACCTD_AMOUNT ,
9515 PREV_FUND_SEG_REPLACE ,
9516 APP_CRH_STATUS ,
9517 PAIRED_CCID ,
9518 PAIRE_DIST_ID ,
9519 REF_DIST_CCID ,
9520 REF_MF_DIST_FLAG ,
9521 ORIGIN_EXTRACT_TABLE ,
9522 EVENT_TYPE_CODE ,
9523 EVENT_CLASS_CODE ,
9524 ENTITY_CODE ,
9525 REVERSAL_CODE ,
9526 BUSINESS_FLOW_CODE ,
9527 TAX_LINE_ID ,
9528 ADDITIONAL_CHAR1 ,
9529 ADDITIONAL_CHAR2 ,
9530 ADDITIONAL_CHAR3 ,
9531 ADDITIONAL_CHAR4 ,
9532 ADDITIONAL_CHAR5 ,
9533 ADDITIONAL_ID1 ,
9534 ADDITIONAL_ID2 ,
9535 ADDITIONAL_ID3 ,
9536 ADDITIONAL_ID4 ,
9537 ADDITIONAL_ID5
9538 ,XLA_ENTITY_ID
9539 ,REF_CTLGD_CCID
9540 ,DIST_CCID
9541 ,FROM_EXCHANGE_RATE
9542 ,FROM_EXCHANGE_RATE_TYPE
9543 ,FROM_EXCHANGE_DATE
9544 ,FROM_CURRENCY_CODE
9545 ,TO_CURRENCY_CODE
9546 ,MFAR_ADDITIONAL_ENTRY
9547 ,third_party_id
9548 ,third_party_site_id
9549 ,third_party_type
9550 ,source_type
9551 FROM ar_xla_lines_extract;
9552 */
9553 local_log('diag_data','+--------BEGIN READING XLA_EVENTS_GT--------------+');
9554 OPEN c2;
9555 LOOP
9556 FETCH c2 INTO l;
9557 EXIT WHEN c2%NOTFOUND;
9558 cpt := cpt + 1;
9559 local_log('diag_data','|------------------EVENT#'||cpt||'----------------|');
9560 local_log('diag_data','<LINE_NUMBER>'||l.LINE_NUMBER||'</LINE_NUMBER>');
9561 local_log('diag_data','<ENTITY_ID>'||l.ENTITY_ID||'</ENTITY_ID>');
9562 local_log('diag_data','<APPLICATION_ID>'||l.APPLICATION_ID||'</APPLICATION_ID>');
9563 local_log('diag_data','<LEDGER_ID>'||l.LEDGER_ID||'</LEDGER_ID>');
9564 local_log('diag_data','<LEGAL_ENTITY_ID>'||l.LEGAL_ENTITY_ID||'</LEGAL_ENTITY_ID>');
9565 local_log('diag_data','<ENTITY_CODE>'||l.ENTITY_CODE||'</ENTITY_CODE>');
9566 local_log('diag_data','<TRANSACTION_NUMBER>'||l.TRANSACTION_NUMBER||'</TRANSACTION_NUMBER>');
9567 local_log('diag_data','<SOURCE_ID_INT_1>'||l.SOURCE_ID_INT_1||'</SOURCE_ID_INT_1>');
9568 local_log('diag_data','<SOURCE_ID_INT_2>'||l.SOURCE_ID_INT_2||'</SOURCE_ID_INT_2>');
9569 local_log('diag_data','<SOURCE_ID_INT_3>'||l.SOURCE_ID_INT_3||'</SOURCE_ID_INT_3>');
9570 local_log('diag_data','<SOURCE_ID_INT_4>'||l.SOURCE_ID_INT_4||'</SOURCE_ID_INT_4>');
9571 local_log('diag_data','<SOURCE_ID_CHAR_1>'||l.SOURCE_ID_CHAR_1||'</SOURCE_ID_CHAR_1>');
9572 local_log('diag_data','<SOURCE_ID_CHAR_2>'||l.SOURCE_ID_CHAR_2||'</SOURCE_ID_CHAR_2>');
9573 local_log('diag_data','<SOURCE_ID_CHAR_3>'||l.SOURCE_ID_CHAR_3||'</SOURCE_ID_CHAR_3>');
9574 local_log('diag_data','<SOURCE_ID_CHAR_4>'||l.SOURCE_ID_CHAR_4||'</SOURCE_ID_CHAR_4>');
9575 local_log('diag_data','<EVENT_ID>'||l.EVENT_ID||'</EVENT_ID>');
9576 local_log('diag_data','<EVENT_CLASS_CODE>'||l.EVENT_CLASS_CODE||'</EVENT_CLASS_CODE>');
9577 local_log('diag_data','<EVENT_TYPE_CODE>'||l.EVENT_TYPE_CODE||'</EVENT_TYPE_CODE>');
9578 local_log('diag_data','<EVENT_NUMBER>'||l.EVENT_NUMBER||'</EVENT_NUMBER>');
9579 local_log('diag_data','<EVENT_DATE>'||l.EVENT_DATE||'</EVENT_DATE>');
9580 local_log('diag_data','<EVENT_STATUS_CODE>'||l.EVENT_STATUS_CODE||'</EVENT_STATUS_CODE>');
9581 local_log('diag_data','<PROCESS_STATUS_CODE>'||l.PROCESS_STATUS_CODE||'</PROCESS_STATUS_CODE>');
9582 local_log('diag_data','<EVENT_CREATED_BY>'||l.EVENT_CREATED_BY||'</EVENT_CREATED_BY>');
9583 local_log('diag_data','<REFERENCE_NUM_1>'||l.REFERENCE_NUM_1||'</REFERENCE_NUM_1>');
9584 local_log('diag_data','<REFERENCE_NUM_2>'||l.REFERENCE_NUM_2||'</REFERENCE_NUM_2>');
9585 local_log('diag_data','<REFERENCE_NUM_3>'||l.REFERENCE_NUM_3||'</REFERENCE_NUM_3>');
9586 local_log('diag_data','<REFERENCE_NUM_4>'||l.REFERENCE_NUM_4||'</REFERENCE_NUM_4>');
9587 local_log('diag_data','<REFERENCE_CHAR_1>'||l.REFERENCE_CHAR_1||'</REFERENCE_CHAR_1>');
9588 local_log('diag_data','<REFERENCE_CHAR_2>'||l.REFERENCE_CHAR_2||'</REFERENCE_CHAR_2>');
9589 local_log('diag_data','<REFERENCE_CHAR_3>'||l.REFERENCE_CHAR_3||'</REFERENCE_CHAR_3>');
9590 local_log('diag_data','<REFERENCE_CHAR_4>'||l.REFERENCE_CHAR_4||'</REFERENCE_CHAR_4>');
9591 local_log('diag_data','<REFERENCE_DATE_4>'||l.REFERENCE_DATE_4||'</REFERENCE_DATE_4>');
9592 local_log('diag_data','<VALUATION_METHOD>'||l.VALUATION_METHOD||'</VALUATION_METHOD>');
9593 local_log('diag_data','<SECURITY_ID_INT_1>'||l.SECURITY_ID_INT_1||'</SECURITY_ID_INT_1>');
9594 local_log('diag_data','<SECURITY_ID_INT_2>'||l.SECURITY_ID_INT_2||'</SECURITY_ID_INT_2>');
9595 local_log('diag_data','<SECURITY_ID_INT_3>'||l.SECURITY_ID_INT_3||'</SECURITY_ID_INT_3>');
9596 local_log('diag_data','<SECURITY_ID_CHAR_1>'||l.SECURITY_ID_CHAR_1||'</SECURITY_ID_CHAR_1>');
9597 local_log('diag_data','<SECURITY_ID_CHAR_2>'||l.SECURITY_ID_CHAR_2||'</SECURITY_ID_CHAR_2>');
9598 local_log('diag_data','<SECURITY_ID_CHAR_3>'||l.SECURITY_ID_CHAR_3||'</SECURITY_ID_CHAR_3>');
9599 local_log('diag_data','<ON_HOLD_FLAG>'||l.ON_HOLD_FLAG||'</ON_HOLD_FLAG>');
9600 local_log('diag_data','<TRANSACTION_DATE>'||l.TRANSACTION_DATE||'</TRANSACTION_DATE>');
9601 local_log('diag_data','<BUDGETARY_CONTROL_FLAG>'||l.BUDGETARY_CONTROL_FLAG||'</BUDGETARY_CONTROL_FLAG>');
9602 local_log('diag_data','<REFERENCE_DATE_1>'||l.REFERENCE_DATE_1||'</REFERENCE_DATE_1>');
9603 local_log('diag_data','<REFERENCE_DATE_2>'||l.REFERENCE_DATE_2||'</REFERENCE_DATE_2>');
9604 local_log('diag_data','<REFERENCE_DATE_3>'||l.REFERENCE_DATE_3||'</REFERENCE_DATE_3>');
9605 END LOOP;
9606 CLOSE c2;
9607 local_log('diag_data','+--------END READING XLA_EVENTS_GT----------------+');
9608
9609
9610 local_log('diag_data','+--------BEGIN READING AR_XLA_LINES_EXTRACT-------+');
9611 cpt := 0;
9612 OPEN c;
9613 LOOP
9614 FETCH c INTO l_c;
9615 EXIT WHEN c%NOTFOUND;
9616 cpt := cpt + 1;
9617 local_log('diag_data','|---------LINE#'||cpt||'--------------------------|');
9618 local_log('diag_data','<BILL_CUSTOMER_ID>'||l_c.BILL_CUSTOMER_ID||'</BILL_CUSTOMER_ID>');
9619 local_log('diag_data','<DRAWEE_CUSTOMER_ID>'||l_c.DRAWEE_CUSTOMER_ID||'</DRAWEE_CUSTOMER_ID>');
9620 local_log('diag_data','<PAYING_CUSTOMER_ID>'||l_c.PAYING_CUSTOMER_ID||'</PAYING_CUSTOMER_ID>');
9621 local_log('diag_data','<SOLD_CUSTOMER_ID>'||l_c.SOLD_CUSTOMER_ID||'</SOLD_CUSTOMER_ID>');
9622 local_log('diag_data','<SHIP_CUSTOMER_ID>'||l_c.SHIP_CUSTOMER_ID||'</SHIP_CUSTOMER_ID>');
9623 local_log('diag_data','<REMIT_ADDRESS_ID>'||l_c.REMIT_ADDRESS_ID||'</REMIT_ADDRESS_ID>');
9624 local_log('diag_data','<RECEIPT_BATCH_ID>'||l_c.RECEIPT_BATCH_ID||'</RECEIPT_BATCH_ID>');
9625 local_log('diag_data','<RECEIVABLE_APPLICATION_ID>'||l_c.RECEIVABLE_APPLICATION_ID||'</RECEIVABLE_APPLICATION_ID>');
9626 local_log('diag_data','<CUSTOMER_BANK_BRANCH_ID>'||l_c.CUSTOMER_BANK_BRANCH_ID||'</CUSTOMER_BANK_BRANCH_ID>');
9627 local_log('diag_data','<ISSUER_BANK_BRANCH_ID>'||l_c.ISSUER_BANK_BRANCH_ID||'</ISSUER_BANK_BRANCH_ID>');
9628 local_log('diag_data','<BATCH_SOURCE_ID>'||l_c.BATCH_SOURCE_ID||'</BATCH_SOURCE_ID>');
9629 local_log('diag_data','<BATCH_ID>'||l_c.BATCH_ID||'</BATCH_ID>');
9630 local_log('diag_data','<TERM_ID>'||l_c.TERM_ID||'</TERM_ID>');
9631 local_log('diag_data','<SELECT_FLAG>'||l_c.SELECT_FLAG||'</SELECT_FLAG>');
9632 local_log('diag_data','<LEVEL_FLAG>'||l_c.LEVEL_FLAG||'</LEVEL_FLAG>');
9633 local_log('diag_data','<FROM_TO_FLAG>'||l_c.FROM_TO_FLAG||'</FROM_TO_FLAG>');
9634 local_log('diag_data','<CRH_STATUS>'||l_c.CRH_STATUS||'</CRH_STATUS>');
9635 local_log('diag_data','<CRH_PRV_STATUS>'||l_c.CRH_PRV_STATUS||'</CRH_PRV_STATUS>');
9636 local_log('diag_data','<AMOUNT>'||l_c.AMOUNT||'</AMOUNT>');
9637 local_log('diag_data','<FROM_AMOUNT>'||l_c.FROM_AMOUNT||'</FROM_AMOUNT>');
9638 local_log('diag_data','<FROM_ACCTD_AMOUNT>'||l_c.FROM_ACCTD_AMOUNT||'</FROM_ACCTD_AMOUNT>');
9639 local_log('diag_data','<PREV_FUND_SEG_REPLACE>'||l_c.PREV_FUND_SEG_REPLACE||'</PREV_FUND_SEG_REPLACE>');
9640 local_log('diag_data','<APP_CRH_STATUS>'||l_c.APP_CRH_STATUS||'</APP_CRH_STATUS>');
9641 local_log('diag_data','<PAIRED_CCID>'||l_c.PAIRED_CCID||'</PAIRED_CCID>');
9642 local_log('diag_data','<PAIRE_DIST_ID>'||l_c.PAIRE_DIST_ID||'</PAIRE_DIST_ID>');
9643 local_log('diag_data','<REF_DIST_CCID>'||l_c.REF_DIST_CCID||'</REF_DIST_CCID>');
9644 local_log('diag_data','<REF_MF_DIST_FLAG>'||l_c.REF_MF_DIST_FLAG||'</REF_MF_DIST_FLAG>');
9645 local_log('diag_data','<ORIGIN_EXTRACT_TABLE>'||l_c.ORIGIN_EXTRACT_TABLE||'</ORIGIN_EXTRACT_TABLE>');
9646 local_log('diag_data','<EVENT_TYPE_CODE>'||l_c.EVENT_TYPE_CODE||'</EVENT_TYPE_CODE>');
9647 local_log('diag_data','<EVENT_CLASS_CODE>'||l_c.EVENT_CLASS_CODE||'</EVENT_CLASS_CODE>');
9648 local_log('diag_data','<ENTITY_CODE>'||l_c.ENTITY_CODE||'</ENTITY_CODE>');
9649 local_log('diag_data','<REVERSAL_CODE>'||l_c.REVERSAL_CODE||'</REVERSAL_CODE>');
9650 local_log('diag_data','<BUSINESS_FLOW_CODE>'||l_c.BUSINESS_FLOW_CODE||'</BUSINESS_FLOW_CODE>');
9651 local_log('diag_data','<TAX_LINE_ID>'||l_c.TAX_LINE_ID||'</TAX_LINE_ID>');
9652 local_log('diag_data','<ADDITIONAL_CHAR1>'||l_c.ADDITIONAL_CHAR1||'</ADDITIONAL_CHAR1>');
9653 local_log('diag_data','<ADDITIONAL_CHAR2>'||l_c.ADDITIONAL_CHAR2||'</ADDITIONAL_CHAR2>');
9654 local_log('diag_data','<ADDITIONAL_CHAR3>'||l_c.ADDITIONAL_CHAR3||'</ADDITIONAL_CHAR3>');
9655 local_log('diag_data','<ADDITIONAL_CHAR4>'||l_c.ADDITIONAL_CHAR4||'</ADDITIONAL_CHAR4>');
9656 local_log('diag_data','<ADDITIONAL_CHAR5>'||l_c.ADDITIONAL_CHAR5||'</ADDITIONAL_CHAR5>');
9657 local_log('diag_data','<ADDITIONAL_ID1>'||l_c.ADDITIONAL_ID1||'</ADDITIONAL_ID1>');
9658 local_log('diag_data','<ADDITIONAL_ID2>'||l_c.ADDITIONAL_ID2||'</ADDITIONAL_ID2>');
9659 local_log('diag_data','<ADDITIONAL_ID3>'||l_c.ADDITIONAL_ID3||'</ADDITIONAL_ID3>');
9660 local_log('diag_data','<ADDITIONAL_ID4>'||l_c.ADDITIONAL_ID4||'</ADDITIONAL_ID4>');
9661 local_log('diag_data','<ADDITIONAL_ID5>'||l_c.ADDITIONAL_ID5||'</ADDITIONAL_ID5>');
9662 local_log('diag_data','<EVENT_ID>'||l_c.EVENT_ID||'</EVENT_ID>');
9663 local_log('diag_data','<LINE_NUMBER>'||l_c.LINE_NUMBER||'</LINE_NUMBER>');
9664 local_log('diag_data','<LANGUAGE>'||l_c.LANGUAGE||'</LANGUAGE>');
9665 local_log('diag_data','<LEDGER_ID>'||l_c.LEDGER_ID||'</LEDGER_ID>');
9666 local_log('diag_data','<SOURCE_ID>'||l_c.SOURCE_ID||'</SOURCE_ID>');
9667 local_log('diag_data','<SOURCE_TABLE>'||l_c.SOURCE_TABLE||'</SOURCE_TABLE>');
9668 local_log('diag_data','<LINE_ID>'||l_c.LINE_ID||'</LINE_ID>');
9669 local_log('diag_data','<TAX_CODE_ID>'||l_c.TAX_CODE_ID||'</TAX_CODE_ID>');
9670 local_log('diag_data','<LOCATION_SEGMENT_ID>'||l_c.LOCATION_SEGMENT_ID||'</LOCATION_SEGMENT_ID>');
9671 local_log('diag_data','<BASE_CURRENCY_CODE>'||l_c.BASE_CURRENCY_CODE||'</BASE_CURRENCY_CODE>');
9672 local_log('diag_data','<EXCHANGE_RATE_TYPE>'||l_c.EXCHANGE_RATE_TYPE||'</EXCHANGE_RATE_TYPE>');
9673 local_log('diag_data','<EXCHANGE_RATE>'||l_c.EXCHANGE_RATE||'</EXCHANGE_RATE>');
9674 local_log('diag_data','<EXCHANGE_DATE>'||l_c.EXCHANGE_DATE||'</EXCHANGE_DATE>');
9675 local_log('diag_data','<ACCTD_AMOUNT>'||l_c.ACCTD_AMOUNT||'</ACCTD_AMOUNT>');
9676 local_log('diag_data','<TAXABLE_ACCTD_AMOUNT>'||l_c.TAXABLE_ACCTD_AMOUNT||'</TAXABLE_ACCTD_AMOUNT>');
9677 local_log('diag_data','<ORG_ID>'||l_c.ORG_ID||'</ORG_ID>');
9678 local_log('diag_data','<HEADER_TABLE_ID>'||l_c.HEADER_TABLE_ID||'</HEADER_TABLE_ID>');
9679 local_log('diag_data','<POSTING_ENTITY>'||l_c.POSTING_ENTITY||'</POSTING_ENTITY>');
9680 local_log('diag_data','<CASH_RECEIPT_ID>'||l_c.CASH_RECEIPT_ID||'</CASH_RECEIPT_ID>');
9681 local_log('diag_data','<CUSTOMER_TRX_ID>'||l_c.CUSTOMER_TRX_ID||'</CUSTOMER_TRX_ID>');
9682 local_log('diag_data','<CUSTOMER_TRX_LINE_ID>'||l_c.CUSTOMER_TRX_LINE_ID||'</CUSTOMER_TRX_LINE_ID>');
9683 local_log('diag_data','<CUST_TRX_LINE_GL_DIST_ID>'||l_c.CUST_TRX_LINE_GL_DIST_ID||'</CUST_TRX_LINE_GL_DIST_ID>');
9684 local_log('diag_data','<CUST_TRX_LINE_SALESREP_ID>'||l_c.CUST_TRX_LINE_SALESREP_ID||'</CUST_TRX_LINE_SALESREP_ID>');
9685 local_log('diag_data','<INVENTORY_ITEM_ID>'||l_c.INVENTORY_ITEM_ID||'</INVENTORY_ITEM_ID>');
9686 local_log('diag_data','<SALES_TAX_ID>'||l_c.SALES_TAX_ID||'</SALES_TAX_ID>');
9687 local_log('diag_data','<SO_ORGANIZATION_ID>'||l_c.SO_ORGANIZATION_ID||'</SO_ORGANIZATION_ID>');
9688 local_log('diag_data','<TAX_EXEMPTION_ID>'||l_c.TAX_EXEMPTION_ID||'</TAX_EXEMPTION_ID>');
9689 local_log('diag_data','<UOM_CODE>'||l_c.UOM_CODE||'</UOM_CODE>');
9690 local_log('diag_data','<WAREHOUSE_ID>'||l_c.WAREHOUSE_ID||'</WAREHOUSE_ID>');
9691 local_log('diag_data','<AGREEMENT_ID>'||l_c.AGREEMENT_ID||'</AGREEMENT_ID>');
9692 local_log('diag_data','<CUSTOMER_BANK_ACCT_ID>'||l_c.CUSTOMER_BANK_ACCT_ID||'</CUSTOMER_BANK_ACCT_ID>');
9693 local_log('diag_data','<DRAWEE_BANK_ACCOUNT_ID>'||l_c.DRAWEE_BANK_ACCOUNT_ID||'</DRAWEE_BANK_ACCOUNT_ID>');
9694 local_log('diag_data','<REMITTANCE_BANK_ACCT_ID>'||l_c.REMITTANCE_BANK_ACCT_ID||'</REMITTANCE_BANK_ACCT_ID>');
9695 local_log('diag_data','<DISTRIBUTION_SET_ID>'||l_c.DISTRIBUTION_SET_ID||'</DISTRIBUTION_SET_ID>');
9696 local_log('diag_data','<PAYMENT_SCHEDULE_ID>'||l_c.PAYMENT_SCHEDULE_ID||'</PAYMENT_SCHEDULE_ID>');
9697 local_log('diag_data','<RECEIPT_METHOD_ID>'||l_c.RECEIPT_METHOD_ID||'</RECEIPT_METHOD_ID>');
9698 local_log('diag_data','<RECEIVABLES_TRX_ID>'||l_c.RECEIVABLES_TRX_ID||'</RECEIVABLES_TRX_ID>');
9699 local_log('diag_data','<ED_ADJ_RECEIVABLES_TRX_ID>'||l_c.ED_ADJ_RECEIVABLES_TRX_ID||'</ED_ADJ_RECEIVABLES_TRX_ID>');
9700 local_log('diag_data','<UNED_RECEIVABLES_TRX_ID>'||l_c.UNED_RECEIVABLES_TRX_ID||'</UNED_RECEIVABLES_TRX_ID>');
9701 local_log('diag_data','<SET_OF_BOOKS_ID>'||l_c.SET_OF_BOOKS_ID||'</SET_OF_BOOKS_ID>');
9702 local_log('diag_data','<SALESREP_ID>'||l_c.SALESREP_ID||'</SALESREP_ID>');
9703 local_log('diag_data','<BILL_SITE_USE_ID>'||l_c.BILL_SITE_USE_ID||'</BILL_SITE_USE_ID>');
9704 local_log('diag_data','<DRAWEE_SITE_USE_ID>'||l_c.DRAWEE_SITE_USE_ID||'</DRAWEE_SITE_USE_ID>');
9705 local_log('diag_data','<PAYING_SITE_USE_ID>'||l_c.PAYING_SITE_USE_ID||'</PAYING_SITE_USE_ID>');
9706 local_log('diag_data','<SOLD_SITE_USE_ID>'||l_c.SOLD_SITE_USE_ID||'</SOLD_SITE_USE_ID>');
9707 local_log('diag_data','<SHIP_SITE_USE_ID>'||l_c.SHIP_SITE_USE_ID||'</SHIP_SITE_USE_ID>');
9708 local_log('diag_data','<RECEIPT_CUSTOMER_SITE_USE_ID>'||l_c.RECEIPT_CUSTOMER_SITE_USE_ID||'</RECEIPT_CUSTOMER_SITE_USE_ID>');
9709 local_log('diag_data','<BILL_CUST_ROLE_ID>'||l_c.BILL_CUST_ROLE_ID||'</BILL_CUST_ROLE_ID>');
9710 local_log('diag_data','<DRAWEE_CUST_ROLE_ID>'||l_c.DRAWEE_CUST_ROLE_ID||'</DRAWEE_CUST_ROLE_ID>');
9711 local_log('diag_data','<SHIP_CUST_ROLE_ID>'||l_c.SHIP_CUST_ROLE_ID||'</SHIP_CUST_ROLE_ID>');
9712 local_log('diag_data','<SOLD_CUST_ROLE_ID>'||l_c.SOLD_CUST_ROLE_ID||'</SOLD_CUST_ROLE_ID>');
9713 END LOOP;
9714 CLOSE c;
9715 local_log('diag_data','+--------END READING AR_XLA_LINES_EXTRACT---------+');
9716
9717
9718 END;
9719
9720
9721 END arp_xla_extract_main_pkg;