DBA Data[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.83.12010000.4 2008/12/09 16:47:04 ankausha 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 -- bug 7197528
13 TYPE glr_ccid_cache_tab IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
14 g_glr_ccid_cache_tab  glr_ccid_cache_tab;
15 
16 ---------------------------
17 -- Local routine for MFAR
18 ---------------------------
19 PROCEDURE mfar_hook(p_ledger_id IN NUMBER);
20 PROCEDURE mfar_app_dist_cr;
21 PROCEDURE mfar_crh_dist;
22 PROCEDURE mfar_produit_app_by_crh;
23 PROCEDURE mfar_get_ra;
24 PROCEDURE mfar_produit_mcd_by_crh;
25 PROCEDURE mfar_mcd_dist_cr;
26 
27 
28 
29 
30 --------------------------------------------------
31 -- Body of Procedures and functions             --
32 --------------------------------------------------
33 
34 PROCEDURE diag_data;
35 
36 -- Local logging to avoid arp_standard.debug
37 
38 PROCEDURE log(
39    message       IN VARCHAR2,
40    newline       IN BOOLEAN DEFAULT TRUE) IS
41 BEGIN
42   IF NVL(fnd_global.CONC_REQUEST_ID,0) <> 0 THEN
43     IF message = 'NEWLINE' THEN
44       FND_FILE.NEW_LINE(FND_FILE.LOG, 1);
45     ELSIF (newline) THEN
46       FND_FILE.put_line(fnd_file.log,message);
47     ELSE
48       FND_FILE.put(fnd_file.log,message);
49     END IF;
50   END IF;
51 END log;
52 
53 PROCEDURE local_log
54 (procedure_name    IN VARCHAR2,
55  p_msg_text        IN VARCHAR2,
56  p_msg_level       IN NUMBER DEFAULT FND_LOG.LEVEL_STATEMENT)
57 IS
58   l_module     VARCHAR2(255);
59 BEGIN
60   IF fnd_log.level_procedure>=fnd_log.g_current_runtime_level THEN
61      l_module := 'ar.xla.plsql.'||procedure_name;
62      FND_LOG.STRING(fnd_log.level_procedure,
63                     l_module,
64                     p_msg_text);
65   END IF;
66   log(p_msg_text);
67 END;
68 
69 
70 PROCEDURE set_from_amt IS
71 CURSOR c IS
72 SELECT  CASE WHEN (NVL(a.amount_cr,0) - NVL(a.amount_dr,0)) < 0 THEN
73             ABS(b.from_amount)        ELSE NULL END
74        ,CASE WHEN (NVL(a.amount_cr,0) - NVL(a.amount_dr,0)) > 0 THEN
75             ABS(b.from_amount)        ELSE NULL END
76        ,CASE WHEN (NVL(a.acctd_amount_cr,0) - NVL(a.acctd_amount_dr,0)) < 0 THEN
77             ABS(b.from_acctd_amount)  ELSE NULL END
78        ,CASE WHEN (NVL(a.acctd_amount_cr,0) - NVL(a.acctd_amount_dr,0)) > 0 THEN
79              ABS(b.from_acctd_amount) ELSE NULL END
80        ,b.activity_bucket
81        ,b.line_id
82   FROM ar_line_app_detail_gt b,
83        ar_distributions_all  a
84  WHERE b.line_id = a.line_id;
85 
86   l_from_amount_dr          DBMS_SQL.NUMBER_TABLE;
87   l_from_amount_cr          DBMS_SQL.NUMBER_TABLE;
88   l_from_acctd_amount_dr    DBMS_SQL.NUMBER_TABLE;
89   l_from_acctd_amount_cr    DBMS_SQL.NUMBER_TABLE;
90   l_activity_bucket         DBMS_SQL.VARCHAR2_TABLE;
91   l_line_id                 DBMS_SQL.NUMBER_TABLE;
92   l_last_fetch              BOOLEAN := FALSE;
93   l_found                   VARCHAR2(1);
94 
95 BEGIN
96 
97   local_log( 'set_from_amt','set_from_amt +');
98   OPEN c;
99   LOOP
100     FETCH c BULK COLLECT INTO l_from_amount_dr,
101                               l_from_amount_cr,
102                               l_from_acctd_amount_dr,
103                               l_from_acctd_amount_cr,
104                               l_activity_bucket,
105                               l_line_id
106                     LIMIT 10000;
107 
108       IF c%NOTFOUND THEN
109          l_last_fetch := TRUE;
110       END IF;
111 
112       IF (l_line_id.COUNT = 0) AND (l_last_fetch) THEN
113         local_log('set_from_amt',' COUNT = 0 and LAST FETCH ');
114         EXIT;
115       END IF;
116 
117       FORALL i IN l_line_id.FIRST .. l_line_id.LAST
118       UPDATE ar_distributions_all a
119          SET a.from_amount_dr         = l_from_amount_dr(i),
120              a.from_amount_cr         = l_from_amount_cr(i),
121              a.from_acctd_amount_dr   = l_from_acctd_amount_dr(i),
122              a.from_acctd_amount_cr   = l_from_acctd_amount_cr(i),
123              a.activity_bucket        = l_activity_bucket(i)
124        WHERE a.line_id                = l_line_id(i);
125 
126    END LOOP;
127    CLOSE c;
128    local_log('set_from_amt','set_from_amt  -');
129 
130 EXCEPTION
131 --  WHEN NO_DATA_FOUND THEN NULL;
132   WHEN OTHERS THEN
133     IF c%ISOPEN THEN CLOSE c; END IF;
134     local_log('set_from_amt','EXCEPTION OTHERS in set_from_amt  :'||SQLERRM);
135 END set_from_amt;
136 
137 
138 PROCEDURE upgrade_11i_r12_post IS
139 
140   CURSOR cu_gt_info IS
141   SELECT taxable_amount,        --amount_applied_from
142          taxable_acctd_amount,  --acctd_amount_applied_from
143          base_currency,         --sob_currency
144          det_id,                --cash_receipt_id
145          group_id,              --customer_trx_id CM
146          gt_id,                 --receivable_application_id used also as gt_id
147          to_currency            --invoice currency
148     FROM ar_line_app_detail_gt
149    GROUP BY
150            (taxable_amount,        --amount_applied_from
151             taxable_acctd_amount,  --acctd_amount_applied_from
152             base_currency,         --sob_currency
153             det_id,                --cash_receipt_id
154             group_id,              --customer_trx_id CM
155             gt_id,                 --receivable_application_id used also as gt_id
156             to_currency);          --invoice currency
157 
158 
159   l_amount_applied_from         NUMBER;
160   l_acctd_amount_applied_from   NUMBER;
161   l_base_currency               VARCHAR2(30);
162   l_cash_receipt_id             NUMBER;
163   l_customer_trx_id             NUMBER;
164   l_receivable_application_id   NUMBER;
165   l_to_currency                 VARCHAR2(30);
166   l_ae_sys_rec                  arp_acct_main.ae_sys_rec_type;
167   l_app_rec                     ar_receivable_applications%ROWTYPE;
168 
169 BEGIN
170   local_log(procedure_name => 'upgrade_11i_r12_post',
171              p_msg_text     => 'Calling upgrade_11i_r12_post +');
172    --Get 11i Applications to upgrade
173 
174   local_log(procedure_name => 'upgrade_11i_r12_post',
175              p_msg_text     => '  Get 11i application to upgrade');
176      INSERT INTO ar_line_app_detail_gt
177       (gt_id,                --receivable_application_id
178        source_data_key1,     --application_type CASH CM
179        det_id,               --cash_receipt_id CASH
180        group_id,             --customer_trx_id CM
181        ref_customer_trx_id,  --applied_customer_trx_id INV
182        line_id,              --line_id
183        amount,
184        acctd_amount,
185        TO_CURRENCY,          --CURRENCY_CODE
186        TAXABLE_AMOUNT,       --from_total_applied
187        TAXABLE_ACCTD_AMOUNT, --from_total_accted_applied
188        base_currency,        --sob_currency
189        activity_bucket,
190        from_amount,
191        from_acctd_amount)
192         SELECT app.RECEIVABLE_APPLICATION_ID,
193                app.APPLICATION_TYPE         ,
194                app.CASH_RECEIPT_ID          ,
195                app.CUSTOMER_TRX_ID          ,
196                app.APPLIED_CUSTOMER_TRX_ID  ,
197                dist.LINE_ID                 ,
198                NVL(dist.AMOUNT_CR,0)-NVL(dist.AMOUNT_DR,0),
199                NVL(dist.ACCTD_AMOUNT_CR,0)-NVL(dist.ACCTD_AMOUNT_DR,0),
200                dist.CURRENCY_CODE           ,
201                NVL(app.AMOUNT_APPLIED_FROM  ,app.AMOUNT_APPLIED),
202                app.ACCTD_AMOUNT_APPLIED_FROM,
203                sob.currency_code            ,
204                DECODE(dist.source_type,'EDISC'  ,'ED_LINE'  ,
205                                        'UNEDISC','UNED_LINE',
206                                        'REC'    ,'APP_LINE' , NULL),
207                NVL(dist.AMOUNT_CR,0)-NVL(dist.AMOUNT_DR,0),
208                NVL(dist.ACCTD_AMOUNT_CR,0)-NVL(dist.ACCTD_AMOUNT_DR,0)
209           FROM xla_events_gt                  eve,
210                ar_receivable_applications_all app,
211                ar_distributions_all           dist,
212                gl_ledgers                     sob
213          WHERE eve.application_id         = 222
214            AND eve.entity_code           IN ('RECEIPTS','TRANSACTIONS')
215            AND eve.event_id               = app.event_id
216            AND app.status                IN ('APP','ACTIVITY')
217            AND app.posting_control_id     = -3
218            AND NVL(app.postable,'Y')      ='Y'
219            AND NVL(app.confirmed_flag,'Y')='Y'
220            AND app.upgrade_method        IS NULL
221            AND app.receivable_application_id = dist.source_id
222            AND dist.source_table          = 'RA'
223 -- This is not required the app status should suffice
224 --           AND dist.source_type         IN ('REC','EDISC','UNEDISC','DEFERRED_TAX','TAX','ACTIVITY','SHORT_TERM_DEBT')
225            AND app.set_of_books_id        = sob.ledger_id;
226 
227 
228 
229     IF SQL%ROWCOUNT > 0 THEN
230   local_log(procedure_name => 'upgrade_11i_r12_post',
231              p_msg_text     => '  Number application found :'||SQL%ROWCOUNT);
232 
233      --Calculate from amounts
234 
235      OPEN cu_gt_info;
236      LOOP
237        FETCH cu_gt_info INTO
238          l_amount_applied_from      ,
239          l_acctd_amount_applied_from,
240          l_base_currency            ,
241          l_cash_receipt_id          ,
242          l_customer_trx_id          ,
243          l_receivable_application_id,
244          l_to_currency;
245        EXIT WHEN cu_gt_info%NOTFOUND;
246 
247        l_ae_sys_rec.base_currency := l_base_currency;
248        l_app_rec.receivable_application_id := l_receivable_application_id;
249        l_app_rec.cash_receipt_id  := l_cash_receipt_id;
250        l_app_rec.customer_trx_id  := l_customer_trx_id;
251 
252   local_log(procedure_name => 'upgrade_11i_r12_post',
253              p_msg_text     => '  upgrading application_id :'|| l_receivable_application_id);
254 
255        arp_det_dist_pkg.update_from_gt
256         (p_from_amt       => l_amount_applied_from,
257          p_from_acctd_amt => l_acctd_amount_applied_from,
258          p_ae_sys_rec     => l_ae_sys_rec,
259          p_app_rec        => l_app_rec,
260          p_gt_id          => l_receivable_application_id,
261          p_inv_currency   => l_to_currency);
262 
263       END LOOP;
264       CLOSE cu_gt_info;
265 
266 
267    --Update from amounts in distributions
268   local_log(procedure_name => 'upgrade_11i_r12_post',
269              p_msg_text     => '  Updating distribution from amount');
270 
271   --BUG#5550040
272   set_from_amt;
273 
274    --Update receivable applications
275   local_log(procedure_name => 'upgrade_11i_r12_post',
276              p_msg_text     => '  Set application upgrade_method 11I_R12_POST');
277 
278        UPDATE ar_receivable_applications_all
279           SET upgrade_method = '11I_R12_POST'
280         WHERE receivable_application_id IN
281              (SELECT gt_id
282                 FROM ar_line_app_detail_gt
283                GROUP BY gt_id);
284     END IF;
285 
286   local_log(procedure_name => 'upgrade_11i_r12_post',
287              p_msg_text     => 'End upgrade_11i_r12_post -');
288 
289 EXCEPTION
290 --  WHEN NO_DATA_FOUND THEN NULL;
291   WHEN OTHERS THEN
292   local_log(procedure_name => 'upgrade_11i_r12_post',
293             p_msg_text     => 'EXCEPTION OTHERS upgrade_11i_r12_post :'||SQLERRM);
294   RAISE;
295 END;
296 
297 /*-----------------------------------------------------------------+
298  | Procedure Name : load_line_data_app_from_cr                     |
299  | Description    : Extract the from application line attached to  |
300  |                  a cash receipt event                           |
301  +-----------------------------------------------------------------+
302  | History        :                                                |
303  | 23-FEB-2004     Herve Yu    Created due to bug#3419926          |
304  +-----------------------------------------------------------------*/
305 PROCEDURE load_line_data_app_from_cr(p_application_id IN NUMBER DEFAULT 222)
306 IS
307 BEGIN
308    local_log(procedure_name => 'load_line_data_app_from_cr',
309              p_msg_text     => 'arp_xla_extract_main_pkg.load_line_data_app_from_cr()+');
310     -- Insert line level data in Line GT with
311     -- selected_flag = Y
312     -- level_flag    = L
313     -- From_to_flag  = F
314     INSERT INTO ar_xla_lines_extract (
315         EVENT_ID
316        ,LINE_NUMBER
317        ,LANGUAGE
318        ,LEDGER_ID
319        ,SOURCE_ID
320        ,SOURCE_TABLE
321        ,LINE_ID
322        ,TAX_CODE_ID
323        ,LOCATION_SEGMENT_ID
324        ,BASE_CURRENCY_CODE
325        ,EXCHANGE_RATE_TYPE
326        ,EXCHANGE_RATE
327        ,EXCHANGE_DATE
328        ,ACCTD_AMOUNT
329        ,TAXABLE_ACCTD_AMOUNT
330        ,ORG_ID
331        ,HEADER_TABLE_ID
332        ,POSTING_ENTITY
333        ,CASH_RECEIPT_ID
334        ,CUSTOMER_TRX_ID
335        ,CUSTOMER_TRX_LINE_ID
336        ,CUST_TRX_LINE_GL_DIST_ID
337        ,CUST_TRX_LINE_SALESREP_ID
338        ,INVENTORY_ITEM_ID
339        ,SALES_TAX_ID
340        ,SO_ORGANIZATION_ID
341        ,TAX_EXEMPTION_ID
342        ,UOM_CODE
343        ,WAREHOUSE_ID
344        ,AGREEMENT_ID
345        ,CUSTOMER_BANK_ACCT_ID
346        ,DRAWEE_BANK_ACCOUNT_ID
347        ,REMITTANCE_BANK_ACCT_ID
348        ,DISTRIBUTION_SET_ID
349        ,PAYMENT_SCHEDULE_ID
350        ,RECEIPT_METHOD_ID
351        ,RECEIVABLES_TRX_ID
352        ,ED_ADJ_RECEIVABLES_TRX_ID
353        ,UNED_RECEIVABLES_TRX_ID
354        ,SET_OF_BOOKS_ID
355        ,SALESREP_ID
356        ,BILL_SITE_USE_ID
357        ,DRAWEE_SITE_USE_ID
358        ,PAYING_SITE_USE_ID
359        ,SOLD_SITE_USE_ID
360        ,SHIP_SITE_USE_ID
361        ,RECEIPT_CUSTOMER_SITE_USE_ID
362        ,BILL_CUST_ROLE_ID
363        ,DRAWEE_CUST_ROLE_ID
364        ,SHIP_CUST_ROLE_ID
365        ,SOLD_CUST_ROLE_ID
366        ,BILL_CUSTOMER_ID
367        ,DRAWEE_CUSTOMER_ID
368        ,PAYING_CUSTOMER_ID
369        ,SOLD_CUSTOMER_ID
370        ,SHIP_CUSTOMER_ID
371        ,REMIT_ADDRESS_ID
372        ,RECEIPT_BATCH_ID
373        ,RECEIVABLE_APPLICATION_ID
374        ,CUSTOMER_BANK_BRANCH_ID
375        ,ISSUER_BANK_BRANCH_ID
376        ,BATCH_SOURCE_ID
377        ,BATCH_ID
378        ,TERM_ID
379        ,SELECT_FLAG
380        ,LEVEL_FLAG
381        ,FROM_TO_FLAG
382        ,FROM_AMOUNT
383        ,AMOUNT
384        ,FROM_ACCTD_AMOUNT
385        --{BUG#4356088
386        ,event_type_code
387        ,event_class_code
388        ,entity_code
389        --MFAR
390        ,MFAR_ADDITIONAL_ENTRY
391        )
392       -- FROM document type Cash Receipt
393        SELECT /*+LEADING(gt) USE_NL(gt,app)*/
394            gt.event_id,                        -- EVENT_ID
395            dist.line_id,                       -- LINE_NUMBER
396            '',                                 -- LANGUAGE
397            sob.set_of_books_id,                -- LEDGER_ID
398            dist.source_id,                     -- SOURCE_ID
399            dist.source_table,                  -- SOURCE_TABLE
400            dist.line_id,                       -- LINE_ID
401            dist.tax_code_id,                   -- TAX_CODE_ID
402            dist.location_segment_id,           -- LOCATION_SEGMENT_ID
403            sob.currency_code,                  -- BASE_CURRENCY
404            NVL(crh.exchange_rate_type,cr.exchange_rate_type),         -- EXCHANGE_RATE_TYPE
405            NVL(crh.EXCHANGE_RATE,cr.exchange_rate)     ,              -- EXCHANGE_RATE
406            NVL(crh.EXCHANGE_DATE,cr.exchange_date)     ,              -- EXCHANGE_DATE
407 --
408            NVL(dist.acctd_amount_cr,0)
409              - NVL(dist.acctd_amount_dr,0),      -- ACCTD_AMOUNT
410            NVL(dist.taxable_accounted_cr,0)
411              - NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
412            app.org_id,                         -- ORG_ID
413            app.receivable_application_id,      -- HEADER_ID
414            'APP',                              -- POSTING_ENTITY
415            cr.cash_receipt_id,                 -- CASH_RECEIPT_ID
416            NULL,                               -- CUSTOMER_TRX_ID
417            NULL,                               -- CUSTOMER_TRX_LINE_ID
418            NULL,                               -- CUST_TRX_LINE_GL_DIST_ID
419            NULL,                               -- CUST_TRX_LINE_SALESREP_ID
420            NULL,                               -- INVENTORY_ITEM_ID
421            NULL,                               -- SALES_TAX_ID
422            osp.master_organization_id,         -- SO_ORGANIZATION_ID
423            NULL,                               -- TAX_EXEMPTION_ID
424            NULL,                               -- UOM_CODE
425            NULL,                               -- WAREHOUSE_ID
426            NULL,                               -- AGREEMENT_ID
427            cr.customer_bank_account_id,        -- CUSTOMER_BANK_ACCT_ID
428            NULL,                               -- DRAWEE_BANK_ACCOUNT_ID
429            cr.remit_bank_acct_use_id,          -- REMITTANCE_BANK_ACCT_ID
430            cr.distribution_set_id,             -- DISTRIBUTION_SET_ID
431            NULL,                               -- PAYMENT_SCHEDULE_ID
432            cr.receipt_method_id,               -- RECEIPT_METHOD_ID
433            cr.receivables_trx_id,              -- RECEIVABLES_TRX_ID
434 --           arp_xla_extract_main_pkg.ed_uned_trx('EDISC',app.org_id),       -- ED_ADJ_RECEIVABLES_TRX_ID
435 --           arp_xla_extract_main_pkg.ed_uned_trx('UNEDISC',app.org_id),     -- UNED_RECEIVABLES_TRX_ID
436 -- ED and UNED activity id should only be available on the to doc in application
437            NULL,       -- ED_ADJ_RECEIVABLES_TRX_ID
438            NULL,     -- UNED_RECEIVABLES_TRX_ID
439            cr.set_of_books_id,                 -- SET_OF_BOOKS_ID
440            NULL,                               -- SALESREP_ID
441            cr.customer_site_use_id,            -- BILL_SITE_USE_ID
442            NULL,                               -- DRAWEE_SITE_USE_ID
443            cr.customer_site_use_id,            -- PAYING_SITE_USE_ID  -- synch with PAYING_CUSTOMER_ID
444            NULL,                               -- SOLD_SITE_USE_ID
445            NULL,                               -- SHIP_SITE_USE_ID
446            cr.customer_site_use_id,            -- RECEIPT_CUSTOMER_SITE_USE_ID
447            NULL,                               -- BILL_CUST_ROLE_ID
448            NULL,                               -- DRAWEE_CUST_ROLE_ID
449            NULL,                               -- SHIP_CUST_ROLE_ID
450            NULL,                               -- SOLD_CUST_ROLE_ID
451            NULL,                               -- BILL_CUSTOMER_ID
452            NULL,                               -- DRAWEE_CUSTOMER_ID
453            cr.pay_from_customer,               -- PAYING_CUSTOMER_ID
454            NULL,                               -- SOLD_CUSTOMER_ID
455            NULL,                               -- SHIP_CUSTOMER_ID
456            NULL,                               -- REMIT_ADDRESS_ID
457            cr.SELECTED_REMITTANCE_BATCH_ID,    -- RECEIPT_BATCH_ID
458            app.receivable_application_id,      -- RECEIVABLE_APPLICATION_ID
459            cr.customer_bank_branch_id,         -- CUSTOMER_BANK_BRANCH_ID
460            cr.issuer_bank_branch_id,           -- ISSUER_BANK_BRANCH_ID
461            NULL,                               -- BATCH_SOURCE_ID
462            NULL,                               -- BATCH_ID
463            NULL,                               -- TERM_ID
464            'Y',                                -- SELECT_FLAG
465            'L',                                -- LEVEL_FLAG
466            'F',                                -- FROM_TO_FLAG
467 --BUG#5201086
468 --           NVL(dist.from_amount_cr,0)
469 --             -NVL(dist.from_amount_dr,0),      -- FROM_AMOUNT,
470         CASE WHEN (app.upgrade_method IS NULL  AND app.status ='APP') THEN
471            CASE WHEN (dist.from_amount_dr IS NOT NULL OR dist.from_amount_cr IS NOT NULL) THEN
472               NVL(dist.from_amount_cr,0)-NVL(dist.from_amount_dr,0)
473            ELSE
474              CASE WHEN (dist.source_type NOT IN ('REC','EDISC','UNEDISC')) THEN
475                 NULL
476              ELSE
477                CASE WHEN (app.earned_discount_taken IS NOT NULL AND
478                     app.earned_discount_taken = NVL(dist.amount_dr,0)-NVL(dist.amount_cr,0) AND
479                     app.acctd_earned_discount_taken = NVL(dist.acctd_amount_dr,0)-NVL(dist.acctd_amount_cr,0)
480                     AND dist.source_type = 'REC') THEN
481                    NULL
482                ELSE
483                  CASE WHEN (trx.invoice_currency_code = cr.currency_code) THEN
484                     NVL(dist.amount_cr,0)-NVL(dist.amount_dr,0)
485                  ELSE
486                    CASE WHEN (app.amount_applied <> 0 AND app.amount_applied_from <> 0) THEN
487                      NVL(app.amount_applied_from / app.amount_applied * dist.amount_cr,0)-
488                      NVL(app.amount_applied_from / app.amount_applied * dist.amount_dr,0)
489                     ELSE  NULL END
490                  END
491                END
492              END
493            END
494         ELSE
495            NVL(dist.from_amount_cr,0)
496              -NVL(dist.from_amount_dr,0)
497         END,                     -- FROM_AMOUNT
498            NVL(dist.amount_cr,0)
499              -NVL(dist.amount_dr,0),           -- AMOUNT
500 --BUG#5201086
501 --           NVL(dist.from_acctd_amount_cr,0)
502 --             -NVL(dist.from_acctd_amount_dr,0), -- FROM_ACCTD_AMOUNT
503         CASE WHEN (app.upgrade_method IS NULL AND app.status ='APP') THEN
504            CASE WHEN (dist.from_acctd_amount_dr IS NOT NULL OR dist.from_acctd_amount_cr IS NOT NULL) THEN
505               NVL(dist.from_acctd_amount_cr,0)-NVL(dist.from_acctd_amount_dr,0)
506            ELSE
507              CASE WHEN (dist.source_type NOT IN ('REC','EDISC','UNEDISC')) THEN
508                 NULL
509              ELSE
510                CASE WHEN (app.earned_discount_taken IS NOT NULL AND
511                     app.earned_discount_taken = NVL(dist.amount_dr,0)-NVL(dist.amount_cr,0) AND
512                     app.acctd_earned_discount_taken = NVL(dist.acctd_amount_dr,0)-NVL(dist.acctd_amount_cr,0)
513                     AND dist.source_type = 'REC') THEN
514                    NULL
515                ELSE
516                  CASE WHEN (trx.invoice_currency_code = sob.currency_code AND
517                             cr.currency_code          = sob.currency_code ) THEN
518                     NVL(dist.acctd_amount_cr,0)-NVL(dist.acctd_amount_dr,0)
519                  ELSE
520                    CASE WHEN (app.acctd_amount_applied_to <> 0 AND app.acctd_amount_applied_from <> 0) THEN
521                    NVL(app.acctd_amount_applied_from / app.acctd_amount_applied_to * dist.acctd_amount_cr,0)-
522                    NVL(app.acctd_amount_applied_from / app.acctd_amount_applied_to * dist.acctd_amount_dr,0)
523                     ELSE  NULL END
524                  END
525                END
526              END
527            END
528         ELSE
529            NVL(dist.from_acctd_amount_cr,0)
530              -NVL(dist.from_acctd_amount_dr,0)
531         END,                     -- FROM_ACCTD_AMOUNT
532          --{BUG#4356088
533           gt.event_type_code
534          ,gt.event_class_code
535          ,gt.entity_code
536          ,'N'                    --MFAR_ADDITIONAL_ENTRY
537         FROM xla_events_gt                 gt,
538            ar_receivable_applications_all app,
539            ar_distributions_all           dist,
540            gl_sets_of_books               sob,
541            oe_system_parameters_all       osp,
542            ar_cash_receipts_all           cr,
543            --BUG#5201086
544            ar_cash_receipt_history_all    crh,
545            ra_customer_trx_all            trx
546      WHERE gt.event_type_code IN (  'RECP_CREATE'          ,'RECP_UPDATE'      ,
547                                     'RECP_RATE_ADJUST'     ) --,'RECP_REVERSE') uptake XLA transaction reversal
548        AND gt.application_id              = p_application_id
549 	   AND gt.event_id                    = app.event_id
550        AND dist.source_table              = 'RA' -- Don't need this join due to ar_app_dist_upg_v
551        AND dist.source_id                 = app.receivable_application_id
552        AND app.set_of_books_id            = sob.set_of_books_id
553 --
554 -- BUG#5366837
555 -- R12_11ICASH_POST is reserved for Upgraded 11i Cash basis not posted applications
556 -- We are not passing Cash basis at From Line level
557 -- the data for Cash Basis accounting upgraded will be at the To line level only
558 --
559 --       AND NVL(app.upgrade_method,'XX')   NOT IN ('R12_11ICASH_POST')
560 --
561 -- Need to incorporate PSA upgrade
562 --
563        AND DECODE(app.upgrade_method,
564                     'R12_11ICASH_POST','N',
565                     '11I_MFAR_UPG'    ,DECODE(dist.source_table_secondary,'UPMFRAMIAR','Y','N'),
566                     'Y')                  = 'Y'
567        AND app.org_id                     = osp.org_id(+)
568        AND app.cash_receipt_id            = cr.cash_receipt_id
569        AND app.cash_receipt_history_id    = crh.cash_receipt_history_id(+)
570        AND app.applied_customer_trx_id    = trx.customer_trx_id(+)
571        AND dist.source_type               IN ('REC'
572            ,'OTHER ACC','ACC','BANK_CHARGES','ACTIVITY','FACTOR','REMITTANCE',
573             'TAX','DEFERRED_TAX','UNEDISC','EDISC','CURR_ROUND','SHORT_TERM_DEBT',
574             'EXCH_LOSS','EXCH_GAIN');
575 
576 
577 --BUG#5366837 From document in cash basis
578     INSERT INTO ar_xla_lines_extract (
579         EVENT_ID
580        ,LINE_NUMBER
581        ,LANGUAGE
582        ,LEDGER_ID
583        ,SOURCE_ID
584        ,SOURCE_TABLE
585        ,LINE_ID
586        ,TAX_CODE_ID
587        ,LOCATION_SEGMENT_ID
588        ,BASE_CURRENCY_CODE
589        ,EXCHANGE_RATE_TYPE
590        ,EXCHANGE_RATE
591        ,EXCHANGE_DATE
592        ,ACCTD_AMOUNT
593        ,TAXABLE_ACCTD_AMOUNT
594        ,ORG_ID
595        ,HEADER_TABLE_ID
596        ,POSTING_ENTITY
597        ,CASH_RECEIPT_ID
598        ,CUSTOMER_TRX_ID
599        ,CUSTOMER_TRX_LINE_ID
600        ,CUST_TRX_LINE_GL_DIST_ID
601        ,CUST_TRX_LINE_SALESREP_ID
602        ,INVENTORY_ITEM_ID
603        ,SALES_TAX_ID
604        ,SO_ORGANIZATION_ID
605        ,TAX_EXEMPTION_ID
606        ,UOM_CODE
607        ,WAREHOUSE_ID
608        ,AGREEMENT_ID
609        ,CUSTOMER_BANK_ACCT_ID
610        ,DRAWEE_BANK_ACCOUNT_ID
611        ,REMITTANCE_BANK_ACCT_ID
612        ,DISTRIBUTION_SET_ID
613        ,PAYMENT_SCHEDULE_ID
614        ,RECEIPT_METHOD_ID
615        ,RECEIVABLES_TRX_ID
616        ,ED_ADJ_RECEIVABLES_TRX_ID
617        ,UNED_RECEIVABLES_TRX_ID
618        ,SET_OF_BOOKS_ID
619        ,SALESREP_ID
620        ,BILL_SITE_USE_ID
621        ,DRAWEE_SITE_USE_ID
622        ,PAYING_SITE_USE_ID
623        ,SOLD_SITE_USE_ID
624        ,SHIP_SITE_USE_ID
625        ,RECEIPT_CUSTOMER_SITE_USE_ID
626        ,BILL_CUST_ROLE_ID
627        ,DRAWEE_CUST_ROLE_ID
628        ,SHIP_CUST_ROLE_ID
629        ,SOLD_CUST_ROLE_ID
630        ,BILL_CUSTOMER_ID
631        ,DRAWEE_CUSTOMER_ID
632        ,PAYING_CUSTOMER_ID
633        ,SOLD_CUSTOMER_ID
634        ,SHIP_CUSTOMER_ID
635        ,REMIT_ADDRESS_ID
636        ,RECEIPT_BATCH_ID
637        ,RECEIVABLE_APPLICATION_ID
638        ,CUSTOMER_BANK_BRANCH_ID
639        ,ISSUER_BANK_BRANCH_ID
640        ,BATCH_SOURCE_ID
641        ,BATCH_ID
642        ,TERM_ID
643        ,SELECT_FLAG
644        ,LEVEL_FLAG
645        ,FROM_TO_FLAG
646        ,FROM_AMOUNT
647        ,AMOUNT
648        ,FROM_ACCTD_AMOUNT
649        ,event_type_code
650        ,event_class_code
651        ,entity_code
652        ,additional_char1
653        ,MFAR_ADDITIONAL_ENTRY
654        )
655        SELECT /*+LEADING(gt) USE_NL(gt,app)*/
656            gt.event_id                         -- EVENT_ID
657           ,dist.cash_basis_distribution_id     -- LINE_NUMBER
658           ,''                                  -- LANGUAGE
659           ,sob.set_of_books_id                 -- LEDGER_ID
660           ,dist.receivable_application_id_cash -- SOURCE_ID
661           ,'RA'                                -- SOURCE_TABLE
662           ,dist.cash_basis_distribution_id     -- LINE_ID
663           ,NULL                                -- TAX_CODE_ID
664           ,NULL                                -- LOCATION_SEGMENT_ID
665           ,sob.currency_code                   -- BASE_CURRENCY
666           ,NVL(crh.exchange_rate_type,cr.exchange_rate_type)  -- EXCHANGE_RATE_TYPE
667           ,NVL(crh.EXCHANGE_RATE,cr.exchange_rate)            -- EXCHANGE_RATE
668           ,NVL(crh.EXCHANGE_DATE,cr.exchange_date)            -- EXCHANGE_DATE
669           ,dist.acctd_amount                   -- ACCTD_AMOUNT
670           ,0                                   -- TAXABLE_ACCTD_AMOUNT
671           ,app.org_id                          -- ORG_ID
672           ,app.receivable_application_id       -- HEADER_ID
673           ,'APP'                               -- POSTING_ENTITY
674           ,cr.cash_receipt_id                  -- CASH_RECEIPT_ID
675           ,NULL                                -- CUSTOMER_TRX_ID
676           ,NULL                                -- CUSTOMER_TRX_LINE_ID
677           ,NULL                                -- CUST_TRX_LINE_GL_DIST_ID
678           ,NULL                                -- CUST_TRX_LINE_SALESREP_ID
679           ,NULL                                -- INVENTORY_ITEM_ID
680           ,NULL                                -- SALES_TAX_ID
681           ,osp.master_organization_id          -- SO_ORGANIZATION_ID
682           ,NULL                                -- TAX_EXEMPTION_ID
683           ,NULL                                -- UOM_CODE
684           ,NULL                                -- WAREHOUSE_ID
685           ,NULL                                -- AGREEMENT_ID
686           ,cr.customer_bank_account_id         -- CUSTOMER_BANK_ACCT_ID
687           ,NULL                                -- DRAWEE_BANK_ACCOUNT_ID
688           ,cr.remit_bank_acct_use_id           -- REMITTANCE_BANK_ACCT_ID
689           ,cr.distribution_set_id              -- DISTRIBUTION_SET_ID
690           ,NULL                                -- PAYMENT_SCHEDULE_ID
691           ,cr.receipt_method_id                -- RECEIPT_METHOD_ID
692           ,cr.receivables_trx_id               -- RECEIVABLES_TRX_ID
693           ,NULL                                -- ED_ADJ_RECEIVABLES_TRX_ID
694           ,NULL                                -- UNED_RECEIVABLES_TRX_ID
695           ,cr.set_of_books_id                  -- SET_OF_BOOKS_ID
696           ,NULL                                -- SALESREP_ID
697           ,cr.customer_site_use_id             -- BILL_SITE_USE_ID
698           ,NULL                                -- DRAWEE_SITE_USE_ID
699           ,cr.customer_site_use_id             -- PAYING_SITE_USE_ID  -- synch with PAYING_CUSTOMER_ID
700           ,NULL                                -- SOLD_SITE_USE_ID
701           ,NULL                                -- SHIP_SITE_USE_ID
702           ,cr.customer_site_use_id             -- RECEIPT_CUSTOMER_SITE_USE_ID
703           ,NULL                                -- BILL_CUST_ROLE_ID
704           ,NULL                                -- DRAWEE_CUST_ROLE_ID
705           ,NULL                                -- SHIP_CUST_ROLE_ID
706           ,NULL                                -- SOLD_CUST_ROLE_ID
707           ,NULL                                -- BILL_CUSTOMER_ID
708           ,NULL                                -- DRAWEE_CUSTOMER_ID
709           ,cr.pay_from_customer                -- PAYING_CUSTOMER_ID
710           ,NULL                                -- SOLD_CUSTOMER_ID
711           ,NULL                                -- SHIP_CUSTOMER_ID
712           ,NULL                                -- REMIT_ADDRESS_ID
713           ,cr.SELECTED_REMITTANCE_BATCH_ID     -- RECEIPT_BATCH_ID
714           ,app.receivable_application_id       -- RECEIVABLE_APPLICATION_ID
715           ,cr.customer_bank_branch_id          -- CUSTOMER_BANK_BRANCH_ID
716           ,cr.issuer_bank_branch_id            -- ISSUER_BANK_BRANCH_ID
717           ,NULL                                -- BATCH_SOURCE_ID
718           ,NULL                                -- BATCH_ID
719           ,NULL                                -- TERM_ID
720           ,'Y'                                 -- SELECT_FLAG
721           ,'L'                                 -- LEVEL_FLAG
722           ,'F'                                 -- FROM_TO_FLAG
723           ,dist.from_amount                    -- FROM_AMOUNT
724           ,dist.amount                         -- AMOUNT
725           ,dist.from_acctd_amount              -- FROM_ACCTD_AMOUNT
726           ,gt.event_type_code
727           ,gt.event_class_code
728           ,gt.entity_code
729           ,app.upgrade_method
730          ,'N'                    --MFAR_ADDITIONAL_ENTRY
731         FROM xla_events_gt                 gt,
732            ar_receivable_applications_all app,
733            ar_cash_basis_dists_all        dist,
734            gl_sets_of_books               sob,
735            oe_system_parameters_all       osp,
736            ar_cash_receipts_all           cr,
737            ar_cash_receipt_history_all    crh,
738            ra_customer_trx_all            trx
739      WHERE gt.event_type_code IN (  'RECP_CREATE'          ,'RECP_UPDATE'      ,
740                                     'RECP_RATE_ADJUST')  -- Uptake XLA trx reversal     ,'RECP_REVERSE')
741        AND gt.application_id              = 222
742        AND gt.event_id                    = app.event_id
743        AND dist.receivable_application_id = app.receivable_application_id
744        AND app.set_of_books_id            = sob.set_of_books_id
745        AND app.upgrade_method             = 'R12_11ICASH_POST'
746        AND app.org_id                     = osp.org_id(+)
747        AND app.cash_receipt_id            = cr.cash_receipt_id
748        AND app.cash_receipt_history_id    = crh.cash_receipt_history_id
749        AND app.applied_customer_trx_id    = trx.customer_trx_id;
750 
751 
752    local_log(procedure_name => 'load_line_data_app_from_cr',
753              p_msg_text     => 'arp_xla_extract_main_pkg.load_line_data_app_from_cr ()-');
754 EXCEPTION
755 --  WHEN NO_DATA_FOUND THEN NULL;
756   WHEN OTHERS THEN
757    local_log(procedure_name => 'load_line_data_app_from_cr',
758              p_msg_text     =>'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_app_from_cr '||
759              arp_global.CRLF ||'Error      :'|| SQLERRM);
760     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
761     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
762          'Procedure :arp_xla_extract_main_pkg.load_line_data_app_from_cr'|| arp_global.CRLF||
763          'Error     :'||SQLERRM);
764     FND_MSG_PUB.ADD;
765   RAISE;
766 END load_line_data_app_from_cr;
767 
768 /*-----------------------------------------------------------------+
769  | Procedure Name : load_line_data_app_from_cm                     |
770  | Description    : Extract the from application line attached to  |
771  |                  a credit memo event                            |
772  +-----------------------------------------------------------------+
773  | History        :                                                |
774  | 23-FEB-2004     Herve Yu    Created due to bug#3419926          |
775  +-----------------------------------------------------------------*/
776 PROCEDURE load_line_data_app_from_cm(p_application_id IN NUMBER DEFAULT 222)
777 IS
778 BEGIN
779    local_log(procedure_name => 'load_line_data_app_from_cm',
780              p_msg_text     => 'arp_xla_extract_main_pkg.load_line_data_app_from_cm ()+');
781     -- Insert line level data in Line GT with
782     -- selected_flag = Y
783     -- level_flag    = L
784     -- From_to_flag  = F
785     INSERT INTO ar_xla_lines_extract (
786         EVENT_ID
787        ,LINE_NUMBER
788        ,LANGUAGE
789        ,LEDGER_ID
790        ,SOURCE_ID
791        ,SOURCE_TABLE
792        ,LINE_ID
793        ,TAX_CODE_ID
794        ,LOCATION_SEGMENT_ID
795        ,BASE_CURRENCY_CODE
796        ,EXCHANGE_RATE_TYPE
797        ,EXCHANGE_RATE
798        ,EXCHANGE_DATE
799        ,ACCTD_AMOUNT
800        ,TAXABLE_ACCTD_AMOUNT
801        ,ORG_ID
802        ,HEADER_TABLE_ID
803        ,POSTING_ENTITY
804        ,CASH_RECEIPT_ID
805        ,CUSTOMER_TRX_ID
806        ,CUSTOMER_TRX_LINE_ID
807        ,CUST_TRX_LINE_GL_DIST_ID
808        ,CUST_TRX_LINE_SALESREP_ID
809        ,INVENTORY_ITEM_ID
810        ,SALES_TAX_ID
811        ,SO_ORGANIZATION_ID
812        ,TAX_EXEMPTION_ID
813        ,UOM_CODE
814        ,WAREHOUSE_ID
815        ,AGREEMENT_ID
816        ,CUSTOMER_BANK_ACCT_ID
817        ,DRAWEE_BANK_ACCOUNT_ID
818        ,REMITTANCE_BANK_ACCT_ID
819        ,DISTRIBUTION_SET_ID
820        ,PAYMENT_SCHEDULE_ID
821        ,RECEIPT_METHOD_ID
822        ,RECEIVABLES_TRX_ID
823        ,ED_ADJ_RECEIVABLES_TRX_ID
824        ,UNED_RECEIVABLES_TRX_ID
825        ,SET_OF_BOOKS_ID
826        ,SALESREP_ID
827        ,BILL_SITE_USE_ID
828        ,DRAWEE_SITE_USE_ID
829        ,PAYING_SITE_USE_ID
830        ,SOLD_SITE_USE_ID
831        ,SHIP_SITE_USE_ID
832        ,RECEIPT_CUSTOMER_SITE_USE_ID
833        ,BILL_CUST_ROLE_ID
834        ,DRAWEE_CUST_ROLE_ID
835        ,SHIP_CUST_ROLE_ID
836        ,SOLD_CUST_ROLE_ID
837        ,BILL_CUSTOMER_ID
838        ,DRAWEE_CUSTOMER_ID
839        ,PAYING_CUSTOMER_ID
840        ,SOLD_CUSTOMER_ID
841        ,SHIP_CUSTOMER_ID
842        ,REMIT_ADDRESS_ID
843        ,RECEIPT_BATCH_ID
844        ,RECEIVABLE_APPLICATION_ID
845        ,CUSTOMER_BANK_BRANCH_ID
846        ,ISSUER_BANK_BRANCH_ID
847        ,BATCH_SOURCE_ID
848        ,BATCH_ID
849        ,TERM_ID
850        ,SELECT_FLAG
851        ,LEVEL_FLAG
852        ,FROM_TO_FLAG
853        ,FROM_AMOUNT
854        ,AMOUNT
855        ,FROM_ACCTD_AMOUNT
856        ,event_type_code
857        ,event_class_code
858        ,entity_code
859        ,tax_line_id
860        ,additional_char1
861          ,MFAR_ADDITIONAL_ENTRY
862        )
863     -- FROM document type CM
864       SELECT /*+LEADING(gt) USE_NL(gt,app)*/
865            gt.event_id,                      -- EVENT_ID
866            dist.line_id,                     -- LINE_NUMBER
867            '',                               -- LANGUAGE
868            sob.set_of_books_id,              -- LEDGER_ID
869            dist.source_id,                   -- SOURCE_ID
870            dist.source_table,                -- SOURCE_TABLE
871            dist.line_id,                     -- LINE_ID
872            dist.tax_code_id,                 -- TAX_CODE_ID
873            dist.location_segment_id,         -- LOCATION_SEGMENT_ID
874            sob.currency_code,                -- BASE_CURRENCY
875 	   /* bug7311808 -vavenugo*/
876            NVL(DIST.CURRENCY_CONVERSION_TYPE,trxf.exchange_rate_type),          -- EXCHANGE_RATE_TYPE
877            NVL(DIST.CURRENCY_CONVERSION_RATE,trxf.exchange_rate),               -- EXCHANGE_RATE
878            NVL(DIST.CURRENCY_CONVERSION_DATE,trxf.exchange_date),               -- EXCHANGE_DATE
879            /* End bug7311808 -vavenugo */
880            NVL(dist.acctd_amount_cr,0) -
881                 NVL(dist.acctd_amount_dr,0),      -- ACCTD_AMOUNT
882            NVL(dist.taxable_accounted_cr,0) -
883                 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
884            app.org_id,                       -- ORG_ID
885            app.receivable_application_id,    -- HEADER_TABLE_ID
886            'APP',                            -- POSTING_ENTITY
887            NULL,                             -- CASH_RECEIPT_ID
888            trxf.customer_trx_id,             -- CUSTOMER_TRX_ID
889            tlf.customer_trx_line_id,         -- CUSTOMER_TRX_LINE_ID
890            gldf.cust_trx_line_gl_dist_id,    -- CUST_TRX_LINE_GL_DIST_ID
891            gldf.cust_trx_line_salesrep_id,   -- CUST_TRX_LINE_SALESREP_ID
892            tlf.inventory_item_id,            -- INVENTORY_ITEM_ID
893            tlf.sales_tax_id,                 -- SALES_TAX_ID
894            osp.master_organization_id,       -- SO_ORGANIZATION_ID
895            tlf.tax_exemption_id,             -- TAX_EXEMPTION_ID
896            tlf.uom_code,                     -- UOM_CODE
897            tlf.warehouse_id,                 -- WAREHOUSE_ID
898            trxf.agreement_id,                -- AGREEMENT_ID
899            trxf.customer_bank_account_id,    -- CUSTOMER_BANK_ACCT_ID
900            trxf.drawee_bank_account_id,      -- DRAWEE_BANK_ACCOUNT_ID
901            trxf.remit_bank_acct_use_id,  -- REMITTANCE_BANK_ACCT_ID
902            NULL,                             -- DISTRIBUTION_SET_ID
903            psch.payment_schedule_id,         -- PAYMENT_SCHEDULE_ID
904            trxf.receipt_method_id,           -- RECEIPT_METHOD_ID
905            NULL,                             -- RECEIVABLES_TRX_ID
906            NULL,                             -- ED_ADJ_RECEIVABLES_TRX_ID
907            NULL,                             -- UNED_RECEIVABLES_TRX_ID
908            trxf.set_of_books_id,             -- SET_OF_BOOKS_ID
909            trxf.primary_salesrep_id,         -- SALESREP_ID
910            trxf.bill_to_site_use_id,         -- BILL_SITE_USE_ID
911            trxf.drawee_site_use_id,          -- DRAWEE_SITE_USE_ID
912            trxf.paying_site_use_id,          -- PAYING_SITE_USE_ID
913            trxf.sold_to_site_use_id,         -- SOLD_SITE_USE_ID
914            trxf.ship_to_site_use_id,         -- SHIP_SITE_USE_ID
915            NULL,                             -- RECEIPT_CUSTOMER_SITE_USE_ID
916            trxf.bill_to_contact_id,          -- BILL_CUST_ROLE_ID
917            trxf.drawee_contact_id,           -- DRAWEE_CUST_ROLE_ID
918            trxf.ship_to_contact_id,          -- SHIP_CUST_ROLE_ID
919            trxf.sold_to_contact_id,          -- SOLD_CUST_ROLE_ID
920            trxf.bill_to_customer_id,         -- BILL_CUSTOMER_ID
921            trxf.drawee_id,                   -- DRAWEE_CUSTOMER_ID
922            trxf.paying_customer_id,          -- PAYING_CUSTOMER_ID
923            trxf.sold_to_customer_id,         -- SOLD_CUSTOMER_ID
924            trxf.ship_to_customer_id,         -- SHIP_CUSTOMER_ID
925            trxf.remit_to_address_id,         -- REMIT_ADDRESS_ID
926            NULL,                             -- RECEIPT_BATCH_ID
927            NULL,                             -- RECEIVABLE_APPLICATION_ID
928            NULL,                             -- CUSTOMER_BANK_BRANCH_ID
929            NULL,                             -- ISSUER_BANK_BRANCH_ID
930            trxf.batch_source_id,             -- BATCH_SOURCE_ID
931            trxf.batch_id,                    -- BATCH_ID
932            trxf.term_id,                     -- TERM_ID
933            'Y',                              -- SELECT_FLAG
934            'L',                              -- LEVEL_FLAG
935            'F',                              -- FROM_TO_FLAG
936          CASE WHEN (dist.from_amount_cr IS NULL AND dist.from_amount_dr IS NULL) THEN
937            NVL(dist.amount_cr,0) - NVL(dist.amount_dr,0)
938          ELSE
939            NVL(dist.from_amount_cr,0) - NVL(dist.from_amount_dr,0)
940          END,                                                     -- FROM_AMOUNT
941            NVL(dist.amount_cr,0) - NVL(dist.amount_dr,0),         -- AMOUNT
942          CASE WHEN (dist.from_acctd_amount_cr IS NULL AND dist.from_acctd_amount_dr IS NULL) THEN
943            NVL(dist.acctd_amount_cr,0) - NVL(dist.acctd_amount_dr,0)
944          ELSE
945            NVL(dist.from_acctd_amount_cr,0) - NVL(dist.from_acctd_amount_dr,0)
946          END,                                                     -- FROM_ACCTD_MOUNT
947            gt.event_type_code,
948            gt.event_class_code,
949            gt.entity_code,
950            tlf.tax_line_id,                      --tax_line_id
951            app.upgrade_method
952          ,'N'                    --MFAR_ADDITIONAL_ENTRY
953       FROM xla_events_gt                  gt,
954            ar_receivable_applications_all app,
955            ar_distributions_all           dist,
956            gl_sets_of_books               sob,
957            oe_system_parameters_all       osp,
958            ra_customer_trx_all            trxf,
959            ra_customer_trx_lines_all      tlf,
960            ra_cust_trx_line_gl_dist_all   gldf,
961            ar_payment_schedules_all       psch
962      WHERE gt.event_type_code    IN ('CM_CREATE','CM_UPDATE' ) --BUG#3419926
963        AND gt.application_id     =     p_application_id
964 	   AND gt.event_id                      = app.event_id
965        AND dist.source_table                = 'RA'
966        AND dist.source_id                   = app.receivable_application_id
967        AND app.set_of_books_id              = sob.set_of_books_id
968        AND app.org_id                       = osp.org_id(+)
969        AND app.customer_trx_id              = trxf.customer_trx_id
970 --
971 -- R12_11ICASH_POST is reserved for Upgraded 11i Cash basis not posted applications
972 -- We are not passing Cash basis at From Line level
973 -- the data for Cash Basis accounting upgraded will be at the To line level only
974 --
975 --       AND NVL(app.upgrade_method,'XX')   NOT IN ('R12_11ICASH_POST')
976 -- Need to incorporate PSA upgrade
977        AND DECODE(app.upgrade_method,
978 	                'R12_11ICASH_POST','N',
979                     '11I_MFAR_UPG'    ,DECODE(dist.source_table_secondary,'UPMFRAMIAR','Y','N'),
980                      'Y')                   = 'Y'
981 --       AND trxf.customer_trx_id             = tlf.customer_trx_id
982 --       AND trxf.customer_trx_id             = gldf.customer_trx_id
983        AND dist.ref_customer_trx_line_id    = tlf.customer_trx_line_id(+)
984                           -- ?? application we only want line actually applied
985        AND dist.ref_cust_trx_line_gl_dist_id = gldf.cust_trx_line_gl_dist_id(+)
986                           -- ?? application we only want line actually applied
987        AND trxf.customer_trx_id              = psch.customer_trx_id
988        AND NVL(psch.terms_sequence_number,1) = 1
989        AND dist.source_type               = 'REC'    /* Bug 6119725 Start Changes */
990        AND ((dist.ref_cust_trx_line_gl_dist_id IS NOT NULL
991                AND dist.ref_cust_trx_line_gl_dist_id  NOT IN (SELECT cust_trx_line_gl_dist_id
992                                                        FROM ra_cust_trx_line_gl_dist_all ctlgd
993                                                        WHERE ctlgd.customer_trx_id =  app.applied_customer_trx_id)) -- Restrict To rows of Invoice
994          OR  ((dist.ref_cust_trx_line_gl_dist_id IS NULL
995                AND 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))
996              AND (((sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0)))*-1) <> 0)
997                 OR
998                   ((sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0)))*-1 = 0)
999                     AND dist.amount_cr is not null)))));
1000 
1001 /* Bug 6119725 End  Changes */
1002 
1003 
1004 
1005 
1006     --BUG#5366837
1007     INSERT INTO ar_xla_lines_extract (
1008         EVENT_ID
1009        ,LINE_NUMBER
1010        ,LANGUAGE
1011        ,LEDGER_ID
1012        ,SOURCE_ID
1013        ,SOURCE_TABLE
1014        ,LINE_ID
1015        ,TAX_CODE_ID
1016        ,LOCATION_SEGMENT_ID
1017        ,BASE_CURRENCY_CODE
1018        ,EXCHANGE_RATE_TYPE
1019        ,EXCHANGE_RATE
1020        ,EXCHANGE_DATE
1021        ,ACCTD_AMOUNT
1022        ,TAXABLE_ACCTD_AMOUNT
1023        ,ORG_ID
1024        ,HEADER_TABLE_ID
1025        ,POSTING_ENTITY
1026        ,CASH_RECEIPT_ID
1027        ,CUSTOMER_TRX_ID
1028        ,CUSTOMER_TRX_LINE_ID
1029        ,CUST_TRX_LINE_GL_DIST_ID
1030        ,CUST_TRX_LINE_SALESREP_ID
1031        ,INVENTORY_ITEM_ID
1032        ,SALES_TAX_ID
1033        ,SO_ORGANIZATION_ID
1034        ,TAX_EXEMPTION_ID
1035        ,UOM_CODE
1036        ,WAREHOUSE_ID
1037        ,AGREEMENT_ID
1038        ,CUSTOMER_BANK_ACCT_ID
1039        ,DRAWEE_BANK_ACCOUNT_ID
1040        ,REMITTANCE_BANK_ACCT_ID
1041        ,DISTRIBUTION_SET_ID
1042        ,PAYMENT_SCHEDULE_ID
1043        ,RECEIPT_METHOD_ID
1044        ,RECEIVABLES_TRX_ID
1045        ,ED_ADJ_RECEIVABLES_TRX_ID
1046        ,UNED_RECEIVABLES_TRX_ID
1047        ,SET_OF_BOOKS_ID
1048        ,SALESREP_ID
1049        ,BILL_SITE_USE_ID
1050        ,DRAWEE_SITE_USE_ID
1051        ,PAYING_SITE_USE_ID
1052        ,SOLD_SITE_USE_ID
1053        ,SHIP_SITE_USE_ID
1054        ,RECEIPT_CUSTOMER_SITE_USE_ID
1055        ,BILL_CUST_ROLE_ID
1056        ,DRAWEE_CUST_ROLE_ID
1057        ,SHIP_CUST_ROLE_ID
1058        ,SOLD_CUST_ROLE_ID
1059        ,BILL_CUSTOMER_ID
1060        ,DRAWEE_CUSTOMER_ID
1061        ,PAYING_CUSTOMER_ID
1062        ,SOLD_CUSTOMER_ID
1063        ,SHIP_CUSTOMER_ID
1064        ,REMIT_ADDRESS_ID
1065        ,RECEIPT_BATCH_ID
1066        ,RECEIVABLE_APPLICATION_ID
1067        ,CUSTOMER_BANK_BRANCH_ID
1068        ,ISSUER_BANK_BRANCH_ID
1069        ,BATCH_SOURCE_ID
1070        ,BATCH_ID
1071        ,TERM_ID
1072        ,SELECT_FLAG
1073        ,LEVEL_FLAG
1074        ,FROM_TO_FLAG
1075        ,FROM_AMOUNT
1076        ,AMOUNT
1077        ,FROM_ACCTD_AMOUNT
1078        ,event_type_code
1079        ,event_class_code
1080        ,entity_code
1081        ,tax_line_id
1082        ,additional_char1
1083         ,MFAR_ADDITIONAL_ENTRY
1084        )
1085       SELECT /*+LEADING(gt) USE_NL(gt,app)*/
1086             gt.event_id                      -- EVENT_ID
1087            ,dist.cash_basis_distribution_id  -- LINE_NUMBER
1088            ,''                               -- LANGUAGE
1089            ,sob.set_of_books_id              -- LEDGER_ID
1090            ,dist.source_id                   -- SOURCE_ID
1091            ,'RA'                             -- SOURCE_TABLE
1092            ,dist.cash_basis_distribution_id  -- LINE_ID
1093            ,NULL                             -- TAX_CODE_ID
1094            ,NULL                             -- LOCATION_SEGMENT_ID
1095            ,sob.currency_code                -- BASE_CURRENCY
1096            ,trxf.exchange_rate_type          -- EXCHANGE_RATE_TYPE
1097            ,trxf.exchange_rate               -- EXCHANGE_RATE
1098            ,trxf.exchange_date               -- EXCHANGE_DATE
1099            ,dist.acctd_amount                -- ACCTD_AMOUNT
1100            ,0                                -- TAXABLE_ACCTD_AMOUNT
1101            ,app.org_id                       -- ORG_ID
1102            ,app.receivable_application_id    -- HEADER_TABLE_ID
1103            ,'APP'                            -- POSTING_ENTITY
1104            ,NULL                             -- CASH_RECEIPT_ID
1105            ,trxf.customer_trx_id             -- CUSTOMER_TRX_ID
1106            ,tlf.customer_trx_line_id         -- CUSTOMER_TRX_LINE_ID
1107            ,gldf.cust_trx_line_gl_dist_id    -- CUST_TRX_LINE_GL_DIST_ID
1108            ,gldf.cust_trx_line_salesrep_id   -- CUST_TRX_LINE_SALESREP_ID
1109            ,tlf.inventory_item_id            -- INVENTORY_ITEM_ID
1110            ,tlf.sales_tax_id                 -- SALES_TAX_ID
1111            ,osp.master_organization_id       -- SO_ORGANIZATION_ID
1112            ,tlf.tax_exemption_id             -- TAX_EXEMPTION_ID
1113            ,tlf.uom_code                     -- UOM_CODE
1114            ,tlf.warehouse_id                 -- WAREHOUSE_ID
1115            ,trxf.agreement_id                -- AGREEMENT_ID
1116            ,trxf.customer_bank_account_id    -- CUSTOMER_BANK_ACCT_ID
1117            ,trxf.drawee_bank_account_id      -- DRAWEE_BANK_ACCOUNT_ID
1118            ,trxf.remit_bank_acct_use_id      -- REMITTANCE_BANK_ACCT_ID
1119            ,NULL                             -- DISTRIBUTION_SET_ID
1120            ,psch.payment_schedule_id         -- PAYMENT_SCHEDULE_ID
1121            ,trxf.receipt_method_id           -- RECEIPT_METHOD_ID
1122            ,NULL                             -- RECEIVABLES_TRX_ID
1123            ,NULL                             -- ED_ADJ_RECEIVABLES_TRX_ID
1124            ,NULL                             -- UNED_RECEIVABLES_TRX_ID
1125            ,trxf.set_of_books_id             -- SET_OF_BOOKS_ID
1126            ,trxf.primary_salesrep_id         -- SALESREP_ID
1127            ,trxf.bill_to_site_use_id         -- BILL_SITE_USE_ID
1128            ,trxf.drawee_site_use_id          -- DRAWEE_SITE_USE_ID
1129            ,trxf.paying_site_use_id          -- PAYING_SITE_USE_ID
1130            ,trxf.sold_to_site_use_id         -- SOLD_SITE_USE_ID
1131            ,trxf.ship_to_site_use_id         -- SHIP_SITE_USE_ID
1132            ,NULL                             -- RECEIPT_CUSTOMER_SITE_USE_ID
1133            ,trxf.bill_to_contact_id          -- BILL_CUST_ROLE_ID
1134            ,trxf.drawee_contact_id           -- DRAWEE_CUST_ROLE_ID
1135            ,trxf.ship_to_contact_id          -- SHIP_CUST_ROLE_ID
1136            ,trxf.sold_to_contact_id          -- SOLD_CUST_ROLE_ID
1137            ,trxf.bill_to_customer_id         -- BILL_CUSTOMER_ID
1138            ,trxf.drawee_id                   -- DRAWEE_CUSTOMER_ID
1139            ,trxf.paying_customer_id          -- PAYING_CUSTOMER_ID
1140            ,trxf.sold_to_customer_id         -- SOLD_CUSTOMER_ID
1141            ,trxf.ship_to_customer_id         -- SHIP_CUSTOMER_ID
1142            ,trxf.remit_to_address_id         -- REMIT_ADDRESS_ID
1143            ,NULL                             -- RECEIPT_BATCH_ID
1144            ,NULL                             -- RECEIVABLE_APPLICATION_ID
1145            ,NULL                             -- CUSTOMER_BANK_BRANCH_ID
1146            ,NULL                             -- ISSUER_BANK_BRANCH_ID
1147            ,trxf.batch_source_id             -- BATCH_SOURCE_ID
1148            ,trxf.batch_id                    -- BATCH_ID
1149            ,trxf.term_id                     -- TERM_ID
1150            ,'Y'                              -- SELECT_FLAG
1151            ,'L'                              -- LEVEL_FLAG
1152            ,'F'                              -- FROM_TO_FLAG
1153            ,dist.from_amount                 -- FROM_AMOUNT
1154            ,dist.amount                      -- AMOUNT
1155            ,dist.from_acctd_amount           -- FROM_ACCTD_MOUNT
1156            ,gt.event_type_code
1157            ,gt.event_class_code
1158            ,gt.entity_code
1159            ,tlf.tax_line_id                  --tax_line_id
1160            ,app.upgrade_method
1161          ,'N'                    --MFAR_ADDITIONAL_ENTRY
1162       FROM xla_events_gt                  gt,
1163            ar_receivable_applications_all app,
1164            ar_cash_basis_dists_all        dist,
1165            gl_sets_of_books               sob,
1166            oe_system_parameters_all       osp,
1167            ra_customer_trx_all            trxf,
1168            ra_customer_trx_lines_all      tlf,
1169            ra_cust_trx_line_gl_dist_all   gldf,
1170            ar_payment_schedules_all       psch
1171      WHERE gt.event_type_code               IN ('CM_CREATE','CM_UPDATE' )
1172        AND gt.application_id                 = 222
1173        AND gt.event_id                       = app.event_id
1174        AND dist.receivable_application_id    = app.receivable_application_id
1175        AND app.set_of_books_id               = sob.set_of_books_id
1176        AND app.org_id                        = osp.org_id(+)
1177        AND app.customer_trx_id               = trxf.customer_trx_id
1178        AND app.upgrade_method                = 'R12_11ICASH_POST'
1179        AND trxf.customer_trx_id              = tlf.customer_trx_id
1180        AND trxf.customer_trx_id              = gldf.customer_trx_id
1181        AND dist.ref_customer_trx_line_id     = tlf.customer_trx_line_id(+)
1182        AND dist.ref_cust_trx_line_gl_dist_id = gldf.cust_trx_line_gl_dist_id(+)
1183        AND trxf.customer_trx_id              = psch.customer_trx_id
1184        AND NVL(psch.terms_sequence_number,1) = 1;
1185 
1186 
1187    local_log(procedure_name => 'load_line_data_app_from_cm',
1188              p_msg_text     => 'arp_xla_extract_main_pkg.load_line_data_app_from_cm ()-');
1189 EXCEPTION
1190 --  WHEN NO_DATA_FOUND THEN NULL;
1191   WHEN OTHERS THEN
1192    local_log(procedure_name => 'load_line_data_app_from_cm',
1193              p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_app_from_cm '||
1194 			                    arp_global.CRLF || 'Error      :'|| SQLERRM);
1195     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
1196     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
1197          'Procedure :arp_xla_extract_main_pkg.load_line_data_app_from_cm'|| arp_global.CRLF||
1198          'Error     :'||SQLERRM);
1199     FND_MSG_PUB.ADD;
1200   RAISE;
1201 END load_line_data_app_from_cm;
1202 
1203 
1204 ---------------------------------
1205 -- Header loading procedures   --
1206 ---------------------------------
1207 /*-----------------------------------------------------------------+
1208  | Procedure Name : Load_header_data_ctlgd                         |
1209  | Description    : Extract header data for transaction events     |
1210  +-----------------------------------------------------------------+
1211  | History        :                                                |
1212  | 23-FEB-2004     Herve Yu    Created due to bug#3419926          |
1213  +-----------------------------------------------------------------*/
1214 PROCEDURE Load_header_data_ctlgd(p_application_id  IN NUMBER DEFAULT 222)
1215 IS
1216 BEGIN
1217   local_log(procedure_name => 'load_header_data_ctlgd',
1218             p_msg_text     => 'arp_xla_extract_main_pkg.load_header_data_ctlgd ()+');
1219     -----------------------
1220     -- Insert header into ar_xla_lines_extract with
1221     -- selected_flg = 'Y'
1222     -- level_flg    = 'H'
1223     -- We also need to insert the header data into ar_xla_headers_extract
1224     -- because the view AR_LEDGER_EXT_H is a pure header level view but it is
1225     -- used by the transaction event_types posting with the entity CTLGD
1226     -----------------------
1227     -- Insert into Lines GT
1228      INSERT INTO AR_XLA_LINES_EXTRACT(
1229         EVENT_ID
1230        ,SOURCE_ID
1231        ,SOURCE_TABLE
1232        ,LINE_ID
1233        ,TAX_CODE_ID
1234        ,LOCATION_SEGMENT_ID
1235        ,BASE_CURRENCY_CODE
1236        ,EXCHANGE_RATE_TYPE
1237        ,EXCHANGE_RATE
1238        ,EXCHANGE_DATE
1239        ,ACCTD_AMOUNT
1240        ,TAXABLE_ACCTD_AMOUNT
1241        ,ORG_ID
1242        ,HEADER_TABLE_ID
1243        ,POSTING_ENTITY
1244        ,CASH_RECEIPT_ID
1245        ,CUSTOMER_TRX_ID
1246        ,CUSTOMER_TRX_LINE_ID
1247        ,CUST_TRX_LINE_GL_DIST_ID
1248        ,CUST_TRX_LINE_SALESREP_ID
1249        ,INVENTORY_ITEM_ID
1250        ,SALES_TAX_ID
1251        ,SO_ORGANIZATION_ID
1252        ,TAX_EXEMPTION_ID
1253        ,UOM_CODE
1254        ,WAREHOUSE_ID
1255        ,AGREEMENT_ID
1256        ,CUSTOMER_BANK_ACCT_ID
1257        ,DRAWEE_BANK_ACCOUNT_ID
1258        ,REMITTANCE_BANK_ACCT_ID
1259        ,DISTRIBUTION_SET_ID
1260        ,PAYMENT_SCHEDULE_ID
1261        ,RECEIPT_METHOD_ID
1262        ,RECEIVABLES_TRX_ID
1263        ,ED_ADJ_RECEIVABLES_TRX_ID
1264        ,UNED_RECEIVABLES_TRX_ID
1265        ,SET_OF_BOOKS_ID
1266        ,SALESREP_ID
1267        ,BILL_SITE_USE_ID
1268        ,DRAWEE_SITE_USE_ID
1269        ,PAYING_SITE_USE_ID
1270        ,SOLD_SITE_USE_ID
1271        ,SHIP_SITE_USE_ID
1272        ,RECEIPT_CUSTOMER_SITE_USE_ID
1273        ,BILL_CUST_ROLE_ID
1274        ,DRAWEE_CUST_ROLE_ID
1275        ,SHIP_CUST_ROLE_ID
1276        ,SOLD_CUST_ROLE_ID
1277        ,BILL_CUSTOMER_ID
1278        ,DRAWEE_CUSTOMER_ID
1279        ,PAYING_CUSTOMER_ID
1280        ,SOLD_CUSTOMER_ID
1281        ,SHIP_CUSTOMER_ID
1282        ,REMIT_ADDRESS_ID
1283        ,RECEIPT_BATCH_ID
1284        ,RECEIVABLE_APPLICATION_ID
1285        ,CUSTOMER_BANK_BRANCH_ID
1286        ,ISSUER_BANK_BRANCH_ID
1287        ,BATCH_SOURCE_ID
1288        ,BATCH_ID
1289        ,TERM_ID
1290        ,SELECT_FLAG
1291        ,LEVEL_FLAG
1292        ,FROM_TO_FLAG
1293        ,PAIRED_CCID
1294        --{BUG#4356088
1295        ,event_type_code
1296        ,event_class_code
1297        ,entity_code
1298          ,MFAR_ADDITIONAL_ENTRY
1299         )
1300        SELECT /*+ LEADING(gt,trx,ctlgd)  USE_NL(gt,trx,ctlgd)*/
1301           gt.event_id                -- EVENT_ID
1302          ,''                            -- SOURCE_ID
1303          ,''                            -- SOURCE_TABLE
1304          ,''                            -- LINE_ID
1305          ,''                            -- TAX_CODE_ID
1306          ,''                            -- LOCATION_SEGMENT_ID
1307          ,sob.currency_code             -- BASE_CURRENCY_CODE
1308          ,trx.exchange_rate_type        -- EXCHANGE_RATE_TYPE
1309          ,trx.exchange_rate             -- EXCHANGE_RATE
1310          ,trx.exchange_date             -- EXCHANGE_DATE
1311          ,''                            -- ACCTD_AMOUNT
1312          ,''                            -- TAXABLE_ACCTD_AMOUNT
1313          ,trx.org_id                    -- ORG_ID
1314          ,''                            -- HEADER_TABLE_ID
1315          ,'CTLGD'                       -- POSTING_ENTITY
1316          ,''                            -- CASH_RECEIPT_ID
1317          ,trx.customer_trx_id           -- CUSTOMER_TRX_ID
1318          ,''                            -- CUSTOMER_TRX_LINE_ID
1319          ,''                            -- CUST_TRX_LINE_GL_DIST_ID
1320          ,''                            -- CUST_TRX_LINE_SALESREP_ID
1321          ,''                            -- INVENTORY_ITEM_ID
1322          ,''                            -- SALES_TAX_ID
1323          ,''                            -- SO_ORGANIZATION_ID
1324          ,''                            -- TAX_EXEMPTION_ID
1325          ,''                            -- UOM_CODE
1326          ,''                            -- WAREHOUSE_ID
1327          ,trx.agreement_id              -- AGREEMENT_ID
1328          ,trx.customer_bank_account_id  -- CUSTOMER_BANK_ACCT_ID
1329          ,trx.drawee_bank_account_id    -- DRAWEE_BANK_ACCOUNT_ID
1330          ,trx.remit_bank_acct_use_id    -- REMITTANCE_BANK_ACCT_ID
1331          ,''                            -- DISTRIBUTION_SET_ID
1332          ,psch.payment_schedule_id      -- PAYMENT_SCHEDULE_ID
1333          ,trx.receipt_method_id         -- RECEIPT_METHOD_ID
1334          ,''                            -- RECEIVABLES_TRX_ID
1335          ,''                            -- ED_ADJ_RECEIVABLES_TRX_ID
1336          ,''                            -- UNED_RECEIVABLES_TRX_ID
1337          ,trx.set_of_books_id           -- SET_OF_BOOKS_ID
1338          ,trx.primary_salesrep_id       -- SALESREP_ID
1339          ,trx.bill_to_site_use_id       -- BILL_SITE_USE_ID
1340          ,trx.drawee_site_use_id        -- DRAWEE_SITE_USE_ID
1341          ,trx.paying_site_use_id        -- PAYING_SITE_USE_ID
1342          ,trx.sold_to_site_use_id       -- SOLD_SITE_USE_ID
1343          ,trx.ship_to_site_use_id       -- SHIP_SITE_USE_ID
1344          ,''                            -- RECEIPT_CUSTOMER_SITE_USE_ID
1345          ,trx.bill_to_contact_id        -- BILL_CUST_ROLE_ID
1346          ,trx.drawee_contact_id         -- DRAWEE_CUST_ROLE_ID
1347          ,trx.ship_to_contact_id        -- SHIP_CUST_ROLE_ID
1348          ,trx.sold_to_contact_id        -- SOLD_CUST_ROLE_ID
1349          ,trx.bill_to_customer_id       -- BILL_CUSTOMER_ID
1350          ,trx.drawee_id                 -- DRAWEE_CUSTOMER_ID
1351          ,trx.paying_customer_id        -- PAYING_CUSTOMER_ID
1352          ,trx.sold_to_customer_id       -- SOLD_CUSTOMER_ID
1353          ,trx.ship_to_customer_id       -- SHIP_CUSTOMER_ID
1354          ,trx.remit_to_address_id       -- REMIT_ADDRESS_ID
1355          ,''                            -- RECEIPT_BATCH_ID
1356          ,''                            -- RECEIVABLE_APPLICATION_ID
1357          ,''                            -- CUSTOMER_BANK_BRANCH_ID
1358          ,''                            -- ISSUER_BANK_BRANCH_ID
1359          ,trx.batch_source_id           -- BATCH_SOURCE_ID
1360          ,trx.batch_id                  -- BATCH_ID
1361          ,trx.term_id                   -- TERM_ID
1362          ,'Y'                           -- SELECT_FLAG
1363          ,'H'                           -- LEVEL_FLAG
1364          ,''                            -- FROM_TO_FLAG
1365          ,ctlgd.code_combination_id     -- paired_ccid
1366          --{BUG#4356088
1367          ,gt.event_type_code
1368          ,gt.event_class_code
1369          ,gt.entity_code
1370          ,'N'                    --MFAR_ADDITIONAL_ENTRY
1371       FROM ra_customer_trx_all            trx,
1372            gl_sets_of_books               sob,
1373            xla_events_gt                  gt,
1374            ar_payment_schedules_all       psch,
1375            ra_cust_trx_line_gl_dist_all   ctlgd
1376      WHERE gt.event_type_code IN ('INV_CREATE'     , 'INV_UPDATE'     ,
1377                                      'CM_CREATE'      , 'CM_UPDATE'      ,
1378                                      'DM_CREATE'      , 'DM_UPDATE'      ,
1379                                      'DEP_CREATE'     , 'DEP_UPDATE' ,
1380                                      'GUAR_CREATE'    , 'GUAR_UPDATE'    ,
1381                                      'CB_CREATE'      ) --BUG#3419926
1382        AND gt.application_id         = p_application_id
1383 	   AND trx.customer_trx_id       = gt.source_id_int_1
1384        AND trx.set_of_books_id       = sob.set_of_books_id
1385        AND trx.customer_trx_id       = ctlgd.customer_trx_id
1386        AND ctlgd.account_class       = 'REC'
1387        AND ctlgd.account_set_flag    = 'N'
1388        AND trx.customer_trx_id       = psch.customer_trx_id(+)
1389        AND NVL(psch.terms_sequence_number,1) = 1;
1390 
1391      /*------------------------------------------------+
1392       | Due to unified accounting sources modal, the   |
1393       | data for header extract are already inserted   |
1394       | in the actract line table. The code in header  |
1395       | insertion is therefore not usefull. Unless it  |
1396       | a denormalised approach for header data for    |
1397       | performance reason. This needs to be evaluated.|
1398       | For now, I commented the header table insertion|
1399       | we might end up with removing the header table.|
1400       +------------------------------------------------*/
1401     /* to be removed at the end of the project*/
1402      -- Load_header_data_ctlgd_h ;
1403   local_log(procedure_name => 'load_header_data_ctlgd',
1404             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_header_data_ctlgd()-');
1405 
1406 EXCEPTION
1407 --  WHEN NO_DATA_FOUND THEN NULL;
1408   WHEN OTHERS THEN
1409   local_log(procedure_name => 'load_header_data_ctlgd',
1410             p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_header_data_ctlgd '||
1411 			                   arp_global.CRLF ||'Error      :'|| SQLERRM);
1412     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
1413     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
1414          'Procedure :arp_xla_extract_main_pkg.load_header_data_ctlgd'|| arp_global.CRLF||
1415          'Error     :'||SQLERRM);
1416     FND_MSG_PUB.ADD;
1417   RAISE;
1418 END Load_header_data_ctlgd;
1419 
1420 ---------------------------
1421 /*-----------------------------------------------------------------+
1422  | Procedure Name : Load_header_data_adj                           |
1423  | Description    : Extract header data for adjustment events      |
1424  +-----------------------------------------------------------------+
1425  | History        :                                                |
1426  | 23-FEB-2004     Herve Yu    Created due to bug#3419926          |
1427  +-----------------------------------------------------------------*/
1428 PROCEDURE Load_header_data_adj(p_application_id  IN NUMBER DEFAULT 222)
1429 IS
1430 BEGIN
1431   local_log(procedure_name => 'load_header_data_adj',
1432             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_header_data_adj()+');
1433     -- Insert into Lines GT for adjustments because header level
1434     -- shared sources can be used.
1435      INSERT INTO AR_XLA_LINES_EXTRACT(
1436         EVENT_ID
1437        ,SOURCE_ID
1438        ,SOURCE_TABLE
1439        ,LINE_ID
1440        ,TAX_CODE_ID
1441        ,LOCATION_SEGMENT_ID
1442        ,BASE_CURRENCY_CODE
1443        ,EXCHANGE_RATE_TYPE
1444        ,EXCHANGE_RATE
1445        ,EXCHANGE_DATE
1446        ,ACCTD_AMOUNT
1447        ,TAXABLE_ACCTD_AMOUNT
1448        ,ORG_ID
1449        ,HEADER_TABLE_ID
1450        ,POSTING_ENTITY
1451        ,CASH_RECEIPT_ID
1452        ,CUSTOMER_TRX_ID
1453        ,CUSTOMER_TRX_LINE_ID
1454        ,CUST_TRX_LINE_GL_DIST_ID
1455        ,CUST_TRX_LINE_SALESREP_ID
1456        ,INVENTORY_ITEM_ID
1457        ,SALES_TAX_ID
1458        ,SO_ORGANIZATION_ID
1459        ,TAX_EXEMPTION_ID
1460        ,UOM_CODE
1461        ,WAREHOUSE_ID
1462        ,AGREEMENT_ID
1463        ,CUSTOMER_BANK_ACCT_ID
1464        ,DRAWEE_BANK_ACCOUNT_ID
1465        ,REMITTANCE_BANK_ACCT_ID
1466        ,DISTRIBUTION_SET_ID
1467        ,PAYMENT_SCHEDULE_ID
1468        ,RECEIPT_METHOD_ID
1469        ,RECEIVABLES_TRX_ID
1470        ,ED_ADJ_RECEIVABLES_TRX_ID
1471        ,UNED_RECEIVABLES_TRX_ID
1472        ,SET_OF_BOOKS_ID
1473        ,SALESREP_ID
1474        ,BILL_SITE_USE_ID
1475        ,DRAWEE_SITE_USE_ID
1476        ,PAYING_SITE_USE_ID
1477        ,SOLD_SITE_USE_ID
1478        ,SHIP_SITE_USE_ID
1479        ,RECEIPT_CUSTOMER_SITE_USE_ID
1480        ,BILL_CUST_ROLE_ID
1481        ,DRAWEE_CUST_ROLE_ID
1482        ,SHIP_CUST_ROLE_ID
1483        ,SOLD_CUST_ROLE_ID
1484        ,BILL_CUSTOMER_ID
1485        ,DRAWEE_CUSTOMER_ID
1486        ,PAYING_CUSTOMER_ID
1487        ,SOLD_CUSTOMER_ID
1488        ,SHIP_CUSTOMER_ID
1489        ,REMIT_ADDRESS_ID
1490        ,RECEIPT_BATCH_ID
1491        ,RECEIVABLE_APPLICATION_ID
1492        ,CUSTOMER_BANK_BRANCH_ID
1493        ,ISSUER_BANK_BRANCH_ID
1494        ,BATCH_SOURCE_ID
1495        ,BATCH_ID
1496        ,TERM_ID
1497        ,SELECT_FLAG
1498        ,LEVEL_FLAG
1499        ,FROM_TO_FLAG
1500        ,paired_ccid
1501        --{BUG#4356088
1502        ,event_type_code
1503        ,event_class_code
1504        ,entity_code
1505        ,MFAR_ADDITIONAL_ENTRY
1506 	    )
1507        SELECT /*+LEADING(gt) USE_NL(gt, adj)*/
1508           gt.event_id,                        -- EVENT_ID
1509           '',                                 -- SOURCE_ID
1510           '',                                 -- SOURCE_TABLE
1511           '',                                 -- LINE_ID
1512           '',                                 -- TAX_CODE_ID
1513           '',                                 -- LOCATION_SEGMENT_ID
1514           sob.currency_code,                  -- BASE_CURRENCY_CODE
1515           trxf.exchange_rate_type,            -- EXCHANGE_RATE_TYPE
1516           trxf.exchange_rate,                 -- EXCHANGE_RATE
1517           trxf.exchange_date,                 -- EXCHANGE_DATE
1518           '',                                 -- ACCTD_AMOUNT
1519           '',                                 -- TAXABLE_ACCTD_AMOUNT
1520           adj.org_id,                         -- ORG_ID
1521           adj.adjustment_id,                  -- HEADER_TABLE_ID
1522           'ADJ',                              -- POSTING_ENTITY
1523           '',                                 -- CASH_RECEIPT_ID
1524           adj.customer_trx_id,                -- CUSTOMER_TRX_ID
1525           '',                                 -- CUSTOMER_TRX_LINE_ID
1526           '',                                 -- CUST_TRX_LINE_GL_DIST_ID
1527           trxf.primary_salesrep_id,           -- SALESREP_ID
1528           '',                                 -- INVENTORY_ITEM_ID
1529           '',                                 -- SALES_TAX_ID
1530           '',                                 -- SO_ORGANIZATION_ID
1531           '',                                 -- TAX_EXEMPTION_ID
1532           '',                                 -- UOM_CODE
1533           '',                                 -- WAREHOUSE_ID
1534           trxf.agreement_id,                  -- AGREEMENT_ID
1535           trxf.customer_bank_account_id,      -- CUSTOMER_BANK_ACCT_ID
1536           '',                                 -- DRAWEE_BANK_ACCOUNT_ID
1537           trxf.remit_bank_acct_use_id,    -- REMITTANCE_BANK_ACCT_ID
1538           adj.distribution_set_id,            -- DISTRIBUTION_SET_ID
1539           adj.payment_schedule_id,            -- PAYMENT_SCHEDULE_ID
1540           trxf.receipt_method_id,             -- RECEIPT_METHOD_ID
1541           adj.receivables_trx_id,             -- RECEIVABLES_TRX_ID
1542           '',                                 -- ED_ADJ_RECEIVABLES_TRX_ID
1543           '',                                 -- UNED_RECEIVABLES_TRX_ID
1544           adj.set_of_books_id,                -- SET_OF_BOOKS_ID
1545           trxf.primary_salesrep_id,           -- SALESREP_ID
1546           trxf.bill_to_site_use_id,           -- BILL_SITE_USE_ID
1547           '',                                 -- DRAWEE_SITE_USE_ID
1548           trxf.paying_site_use_id,            -- PAYING_SITE_USE_ID
1549           trxf.sold_to_site_use_id,           -- SOLD_SITE_USE_ID
1550           trxf.ship_to_site_use_id,           -- SHIP_SITE_USE_ID
1551           '',                                 -- RECEIPT_CUSTOMER_SITE_USE_ID
1552           trxf.bill_to_contact_id,            -- BILL_CUST_ROLE_ID
1553           '',                                 -- DRAWEE_CUST_ROLE_ID
1554           trxf.ship_to_contact_id,            -- SHIP_CUST_ROLE_ID
1555           trxf.sold_to_contact_id,            -- SOLD_CUST_ROLE_ID
1556           trxf.bill_to_customer_id,           -- BILL_CUSTOMER_ID
1557           '',                                 -- DRAWEE_CUSTOMER_ID
1558           trxf.paying_customer_id,            -- PAYING_CUSTOMER_ID
1559           trxf.sold_to_customer_id,           -- SOLD_CUSTOMER_ID
1560           trxf.ship_to_customer_id,           -- SHIP_CUSTOMER_ID
1561           trxf.remit_to_address_id,           -- REMIT_ADDRESS_ID
1562           '',                                 -- RECEIPT_BATCH_ID
1563           '',                                 -- RECEIVABLE_APPLICATION_ID
1564           '',                                 -- CUSTOMER_BANK_BRANCH_ID
1565           '',                                 -- ISSUER_BANK_BRANCH_ID
1566           trxf.batch_source_id,               -- BATCH_SOURCE_ID
1567           trxf.batch_id,                      -- BATCH_ID
1568           trxf.term_id,                       -- TERM_ID
1569           'Y',                                -- select_flag
1570           'H',                                -- level_flag
1571           '',                                 -- FROM_TO_FLAG
1572           ctlgd.code_combination_id           -- paired_ccid
1573          --{BUG#4356088
1574          ,gt.event_type_code
1575          ,gt.event_class_code
1576          ,gt.entity_code
1577          ,'N'                    --MFAR_ADDITIONAL_ENTRY
1578       FROM ar_adjustments_all             adj,
1579            gl_sets_of_books               sob,
1580            xla_events_gt                  gt,
1581            ra_customer_trx_all            trxf,
1582            ra_cust_trx_line_gl_dist_all   ctlgd
1583      WHERE gt.event_type_code             = 'ADJ_CREATE'
1584        AND gt.application_id              = p_application_id
1585 	   AND adj.adjustment_id              = gt.source_id_int_1
1586        AND adj.set_of_books_id            = sob.set_of_books_id
1587        AND adj.customer_trx_id            = trxf.customer_trx_id(+)
1588        AND trxf.customer_trx_id           = ctlgd.customer_trx_id
1589        AND ctlgd.account_set_flag         = 'N'
1590        AND ctlgd.account_class            = 'REC';
1591 
1592     -- Load_header_data_adj_h;
1593   local_log(procedure_name => 'load_header_data_adj',
1594             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_header_data_adj()-');
1595 EXCEPTION
1596 --  WHEN NO_DATA_FOUND THEN NULL;
1597   WHEN OTHERS THEN
1598     local_log(procedure_name => 'load_header_data_adj',
1599               p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_header_data_adj '||
1600                               arp_global.CRLF || 'Error      :'|| SQLERRM);
1601     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
1602     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
1603          'Procedure :arp_xla_extract_main_pkg.load_header_data_adj'|| arp_global.CRLF||
1604          'Error     :'||SQLERRM);
1605     FND_MSG_PUB.ADD;
1606   RAISE;
1607 END Load_header_data_adj;
1608 
1609 -----------------------------------------------------------------------
1610 
1611 /*-----------------------------------------------------------------+
1612  | Procedure Name : Load_header_data_crh                           |
1613  | Description    : Extract header data for cash receipt           |
1614  |                  and misc cash receipt events.                  |
1615  +-----------------------------------------------------------------+
1616  | History        :                                                |
1617  | 23-FEB-2004     Herve Yu    Created due to bug#3419926          |
1618  +-----------------------------------------------------------------*/
1619 PROCEDURE Load_header_data_crh(p_application_id IN NUMBER DEFAULT 222)
1620 IS
1621 BEGIN
1622     local_log(procedure_name => 'load_header_data_crh',
1623               p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_header_data_crh()+');
1624      -- Insert header data to line level
1625      -- Pure Header sources and Shared header sources
1626      INSERT INTO AR_XLA_LINES_EXTRACT(
1627         EVENT_ID
1628        ,SOURCE_ID
1629        ,SOURCE_TABLE
1630        ,LINE_ID
1631        ,TAX_CODE_ID
1632        ,LOCATION_SEGMENT_ID
1633        ,BASE_CURRENCY_CODE
1634        ,EXCHANGE_RATE_TYPE
1635        ,EXCHANGE_RATE
1636        ,EXCHANGE_DATE
1637        ,ACCTD_AMOUNT
1638        ,TAXABLE_ACCTD_AMOUNT
1639        ,ORG_ID
1640        ,HEADER_TABLE_ID
1641        ,POSTING_ENTITY
1642        ,CASH_RECEIPT_ID
1643        ,CUSTOMER_TRX_ID
1644        ,CUSTOMER_TRX_LINE_ID
1645        ,CUST_TRX_LINE_GL_DIST_ID
1646        ,CUST_TRX_LINE_SALESREP_ID
1647        ,INVENTORY_ITEM_ID
1648        ,SALES_TAX_ID
1649        ,SO_ORGANIZATION_ID
1650        ,TAX_EXEMPTION_ID
1651        ,UOM_CODE
1652        ,WAREHOUSE_ID
1653        ,AGREEMENT_ID
1654        ,CUSTOMER_BANK_ACCT_ID
1655        ,DRAWEE_BANK_ACCOUNT_ID
1656        ,REMITTANCE_BANK_ACCT_ID
1657        ,DISTRIBUTION_SET_ID
1658        ,PAYMENT_SCHEDULE_ID
1659        ,RECEIPT_METHOD_ID
1660        ,RECEIVABLES_TRX_ID
1661        ,ED_ADJ_RECEIVABLES_TRX_ID
1662        ,UNED_RECEIVABLES_TRX_ID
1663        ,SET_OF_BOOKS_ID
1664        ,SALESREP_ID
1665        ,BILL_SITE_USE_ID
1666        ,DRAWEE_SITE_USE_ID
1667        ,PAYING_SITE_USE_ID
1668        ,SOLD_SITE_USE_ID
1669        ,SHIP_SITE_USE_ID
1670        ,RECEIPT_CUSTOMER_SITE_USE_ID
1671        ,BILL_CUST_ROLE_ID
1672        ,DRAWEE_CUST_ROLE_ID
1673        ,SHIP_CUST_ROLE_ID
1674        ,SOLD_CUST_ROLE_ID
1675        ,BILL_CUSTOMER_ID
1676        ,DRAWEE_CUSTOMER_ID
1677        ,PAYING_CUSTOMER_ID
1678        ,SOLD_CUSTOMER_ID
1679        ,SHIP_CUSTOMER_ID
1680        ,REMIT_ADDRESS_ID
1681        ,RECEIPT_BATCH_ID
1682        ,RECEIVABLE_APPLICATION_ID
1683        ,CUSTOMER_BANK_BRANCH_ID
1684        ,ISSUER_BANK_BRANCH_ID
1685        ,BATCH_SOURCE_ID
1686        ,BATCH_ID
1687        ,TERM_ID
1688        ,SELECT_FLAG
1689        ,LEVEL_FLAG
1690        ,FROM_TO_FLAG
1691        ,CRH_STATUS
1692        ,CRH_PRV_STATUS
1693        --{BUG#4356088
1694        ,event_type_code
1695        ,event_class_code
1696        ,entity_code
1697        --}
1698        ,reversal_code --Reversal at header should return 'Y' for RECP_REVERSAL
1699        ,MFAR_ADDITIONAL_ENTRY
1700        )
1701        SELECT /*+LEADING(gt) USE_NL(gt,cr)*/
1702           gt.event_id,        --EVENT_ID
1703           '',                 --SOURCE_ID
1704           '',                 --SOURCE_TABLE
1705           '',                 --LINE_ID
1706           '',                 --TAX_CODE_ID
1707           '',                 --LOCATION_SEGMENT_ID
1708           sob.currency_code,    -- BASE_CURRENCY_CODE
1709           cr.exchange_rate_type,-- EXCHANGE_RATE_TYPE
1710           cr.exchange_rate,     -- EXCHANGE_RATE
1711           cr.exchange_date,     -- EXCHANGE_DATE
1712           '',                 --ACCTD_AMOUNT
1713           '',                 --TAXABLE_ACCTD_AMOUNT
1714           cr.org_id,          --ORG_ID
1715           cr.cash_receipt_id, --HEADER_TABLE_ID
1716           'CR',               --POSTING_ENTITY
1717           cr.cash_receipt_id, --CASH_RECEIPT_ID
1718           '',                 --CUSTOMER_TRX_ID
1719           '',                 --CUSTOMER_TRX_LINE_ID
1720           '',                 --CUST_TRX_LINE_GL_DIST_ID
1721           '',                 --CUST_TRX_LINE_SALESREP_ID
1722           '',                 --INVENTORY_ITEM_ID
1723           '',                 --SALES_TAX_ID
1724           '',                 --SO_ORGANIZATION_ID
1725           '',                 --TAX_EXEMPTION_ID
1726           '',                 --UOM_CODE
1727           '',                 --WAREHOUSE_ID
1728           '',                 --AGREEMENT_ID
1729           cr.customer_bank_account_id,        -- CUSTOMER_BANK_ACCT_ID
1730           '',                                 -- DRAWEE_BANK_ACCOUNT_ID
1731           cr.remit_bank_acct_use_id,      -- REMITTANCE_BANK_ACCT_ID
1732           cr.distribution_set_id,             -- DISTRIBUTION_SET_ID
1733           '',                                 -- PAYMENT_SCHEDULE_ID
1734           cr.receipt_method_id,               -- RECEIPT_METHOD_ID
1735           cr.receivables_trx_id,              -- RECEIVABLES_TRX_ID
1736           '',                                 -- ED_ADJ_RECEIVABLES_TRX_ID
1737           '',                                 -- UNED_RECEIVABLES_TRX_ID
1738           cr.set_of_books_id,                 -- SET_OF_BOOKS_ID
1739           '',                                 -- SALESREP_ID
1740           cr.customer_site_use_id,            -- BILL_SITE_USE_ID
1741           '',                                 -- DRAWEE_SITE_USE_ID
1742           cr.customer_site_use_id,            -- PAYING_SITE_USE_ID -- HYU
1743           '',                                 -- SOLD_SITE_USE_ID
1744           '',                                 -- SHIP_SITE_USE_ID
1745           cr.customer_site_use_id,            -- RECEIPT_CUSTOMER_SITE_USE_ID
1746           '',                                 -- BILL_CUST_ROLE_ID
1747           '',                                 -- DRAWEE_CUST_ROLE_ID
1748           '',                                 -- SHIP_CUST_ROLE_ID
1749           '',                                 -- SOLD_CUST_ROLE_ID
1750           '',                                 -- BILL_CUSTOMER_ID
1751           '',                                 -- DRAWEE_CUSTOMER_ID
1752           cr.pay_from_customer,               -- PAYING_CUSTOMER_ID
1753           '',                                 -- SOLD_CUSTOMER_ID
1754           '',                                 -- SHIP_CUSTOMER_ID
1755           '',                                 -- REMIT_ADDRESS_ID
1756           cr.SELECTED_REMITTANCE_BATCH_ID,    -- RECEIPT_BATCH_ID
1757           '',                                 -- RECEIVABLE_APPLICATION_ID
1758           cr.customer_bank_branch_id,         -- CUSTOMER_BANK_BRANCH_ID
1759           cr.issuer_bank_branch_id,           -- ISSUER_BANK_BRANCH_ID
1760           '',                                 -- BATCH_SOURCE_ID
1761           '',                                 -- BATCH_ID
1762           '',                                 -- TERM_ID
1763           'Y',                                -- SELECT_FLAG
1764           'H',                                -- LEVEL_FLAG
1765           '',                                 -- FROM_TO_FLAG
1766 --{BUG5332302
1767           '',                         --  CRH_STATUS
1768           ''                         --  CRH_PRV_STATUS
1769 --}
1770          --{BUG#4356088
1771          ,gt.event_type_code
1772          ,gt.event_class_code
1773          ,gt.entity_code
1774          --}
1775          ,DECODE(gt.event_type_code,'RECP_REVERSE','Y',
1776                                     'MISC_RECP_REVERSE','Y','N') --reversal_code
1777          ,'N'                    --MFAR_ADDITIONAL_ENTRY
1778        FROM xla_events_gt                     gt,
1779            gl_sets_of_books                  sob,
1780            ar_cash_receipts_all              cr
1781      WHERE gt.event_type_code IN (  'RECP_CREATE'          ,'RECP_UPDATE'        ,
1782                                     'RECP_RATE_ADJUST'     ,'RECP_REVERSE'       ,--Header level view reversal stay
1783                                     'MISC_RECP_CREATE'     ,'MISC_RECP_UPDATE'   ,
1784                                     'MISC_RECP_RATE_ADJUST','MISC_RECP_REVERSE'  )--BUG#3419926
1785        AND gt.application_id              = p_application_id
1786 	   AND gt.source_id_int_1             = cr.cash_receipt_id
1787        AND cr.set_of_books_id             = sob.set_of_books_id;
1788 
1789     local_log(procedure_name => 'load_header_data_crh',
1790               p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_header_data_crh()-');
1791 EXCEPTION
1792 --  WHEN NO_DATA_FOUND THEN NULL;
1793   WHEN OTHERS THEN
1794     local_log(procedure_name => 'load_header_data_crh',
1795               p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_header_data_crh '||
1796               arp_global.CRLF ||'Error      :'|| SQLERRM);
1797     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
1798     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
1799          'Procedure :arp_xla_extract_main_pkg.load_header_data_crh'|| arp_global.CRLF||
1800          'Error     :'||SQLERRM);
1801     FND_MSG_PUB.ADD;
1802   RAISE;
1803 END Load_header_data_crh;
1804 
1805 --------------------------------------------------------------------------------
1806 
1807 /*-----------------------------------------------------------------+
1808  | Procedure Name : Load_header_data_th                            |
1809  | Description    : Extract header data for Bill Receivable events |
1810  +-----------------------------------------------------------------+
1811  | History        :                                                |
1812  | 23-FEB-2004     Herve Yu    Created due to bug#3419926          |
1813  +-----------------------------------------------------------------*/
1814 PROCEDURE Load_header_data_th(p_application_id  IN NUMBER DEFAULT 222)
1815 IS
1816 BEGIN
1817     local_log(procedure_name => 'Load_header_data_th',
1818               p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.Load_header_data_th()+');
1819      INSERT INTO AR_XLA_LINES_EXTRACT(
1820         EVENT_ID
1821        ,SOURCE_ID
1822        ,SOURCE_TABLE
1823        ,LINE_ID
1824        ,TAX_CODE_ID
1825        ,LOCATION_SEGMENT_ID
1826        ,BASE_CURRENCY_CODE
1827        ,EXCHANGE_RATE_TYPE
1828        ,EXCHANGE_RATE
1829        ,EXCHANGE_DATE
1830        ,ACCTD_AMOUNT
1831        ,TAXABLE_ACCTD_AMOUNT
1832        ,ORG_ID
1833        ,HEADER_TABLE_ID
1834        ,POSTING_ENTITY
1835        ,CASH_RECEIPT_ID
1836        ,CUSTOMER_TRX_ID
1837        ,CUSTOMER_TRX_LINE_ID
1838        ,CUST_TRX_LINE_GL_DIST_ID
1839        ,CUST_TRX_LINE_SALESREP_ID
1840        ,INVENTORY_ITEM_ID
1841        ,SALES_TAX_ID
1842        ,SO_ORGANIZATION_ID
1843        ,TAX_EXEMPTION_ID
1844        ,UOM_CODE
1845        ,WAREHOUSE_ID
1846        ,AGREEMENT_ID
1847        ,CUSTOMER_BANK_ACCT_ID
1848        ,DRAWEE_BANK_ACCOUNT_ID
1849        ,REMITTANCE_BANK_ACCT_ID
1850        ,DISTRIBUTION_SET_ID
1851        ,PAYMENT_SCHEDULE_ID
1852        ,RECEIPT_METHOD_ID
1853        ,RECEIVABLES_TRX_ID
1854        ,ED_ADJ_RECEIVABLES_TRX_ID
1855        ,UNED_RECEIVABLES_TRX_ID
1856        ,SET_OF_BOOKS_ID
1857        ,SALESREP_ID
1858        ,BILL_SITE_USE_ID
1859        ,DRAWEE_SITE_USE_ID
1860        ,PAYING_SITE_USE_ID
1861        ,SOLD_SITE_USE_ID
1862        ,SHIP_SITE_USE_ID
1863        ,RECEIPT_CUSTOMER_SITE_USE_ID
1864        ,BILL_CUST_ROLE_ID
1865        ,DRAWEE_CUST_ROLE_ID
1866        ,SHIP_CUST_ROLE_ID
1867        ,SOLD_CUST_ROLE_ID
1868        ,BILL_CUSTOMER_ID
1869        ,DRAWEE_CUSTOMER_ID
1870        ,PAYING_CUSTOMER_ID
1871        ,SOLD_CUSTOMER_ID
1872        ,SHIP_CUSTOMER_ID
1873        ,REMIT_ADDRESS_ID
1874        ,RECEIPT_BATCH_ID
1875        ,RECEIVABLE_APPLICATION_ID
1876        ,CUSTOMER_BANK_BRANCH_ID
1877        ,ISSUER_BANK_BRANCH_ID
1878        ,BATCH_SOURCE_ID
1879        ,BATCH_ID
1880        ,TERM_ID
1881        ,SELECT_FLAG
1882        ,LEVEL_FLAG
1883        ,FROM_TO_FLAG
1884        ,paired_ccid
1885        --{BUG#4356088
1886        ,event_type_code
1887        ,event_class_code
1888        ,entity_code
1889        ,MFAR_ADDITIONAL_ENTRY
1890        )
1891        SELECT /*+LEADING(gt) USE_NL(gt,trx)*/
1892           gt.event_id,             --EVENT_ID
1893           '',                      --SOURCE_ID
1894           '',                      --SOURCE_TABLE
1895           '',                      --LINE_ID
1896           '',                      --TAX_CODE_ID
1897           '',                      --LOCATION_SEGMENT_ID
1898           sob.currency_code,             --   BASE_CURRENCY_CODE
1899           trx.exchange_rate_type,        --   EXCHANGE_RATE_TYPE
1900           trx.exchange_rate,             --   EXCHANGE_RATE
1901           trx.exchange_date,             --   EXCHANGE_DATE
1902           '',                      --ACCTD_AMOUNT
1903           '',                      --TAXABLE_ACCTD_AMOUNT
1904           trx.org_id,                    --   ORG_ID
1905           trx.customer_trx_id,     --HEADER_TABLE_ID
1906           'TH',                    --POSTING_ENTITY
1907           '',                          --   CASH_RECEIPT_ID
1908           trx.customer_trx_id,           --   CUSTOMER_TRX_ID
1909           '',                --CUSTOMER_TRX_LINE_ID
1910           '',                --CUST_TRX_LINE_GL_DIST_ID
1911           '',                --CUST_TRX_LINE_SALESREP_ID
1912           '',                --INVENTORY_ITEM_ID
1913           '',                --SALES_TAX_ID
1914           '',                --SO_ORGANIZATION_ID
1915           '',                --TAX_EXEMPTION_ID
1916           '',                --UOM_CODE
1917           '',                --WAREHOUSE_ID
1918           trx.agreement_id,              --   AGREEMENT_ID
1919           trx.customer_bank_account_id,  --   CUSTOMER_BANK_ACCT_ID
1920           trx.drawee_bank_account_id,    --   DRAWEE_BANK_ACCOUNT_ID
1921           '',                          --   DISTRIBUTION_SET_ID
1922           '',                          --   PAYMENT_SCHEDULE_ID
1923           trx.receipt_method_id,         --   RECEIPT_METHOD_ID
1924           trx.remit_bank_acct_use_id,--   REMITTANCE_BANK_ACCT_ID
1925           '',                          --   RECEIVABLES_TRX_ID
1926           '',                          --   ED_ADJ_RECEIVABLES_TRX_ID
1927           '',                          --   UNED_RECEIVABLES_TRX_ID
1928           trx.set_of_books_id,           --   SET_OF_BOOKS_ID
1929           trx.primary_salesrep_id,       --   SALESREP_ID
1930           trx.bill_to_site_use_id,       --   BILL_SITE_USE_ID
1931           trx.drawee_site_use_id,        --   DRAWEE_SITE_USE_ID
1932           trx.paying_site_use_id,        --   PAYING_SITE_USE_ID
1933           trx.sold_to_site_use_id,       --   SOLD_SITE_USE_ID
1934           trx.ship_to_site_use_id,       --   SHIP_SITE_USE_ID
1935           '',                          --   RECEIPT_CUSTOMER_SITE_USE_ID
1936           trx.bill_to_contact_id,        --   BILL_CUST_ROLE_ID
1937           trx.drawee_contact_id,         --   DRAWEE_CUST_ROLE_ID
1938           trx.ship_to_contact_id,        --   SHIP_CUST_ROLE_ID
1939           trx.sold_to_contact_id,        --   SOLD_CUST_ROLE_ID
1940           trx.bill_to_customer_id,       --   BILL_CUSTOMER_ID
1941           trx.drawee_id,                 --   DRAWEE_CUSTOMER_ID
1942           trx.paying_customer_id,        --   PAYING_CUSTOMER_ID
1943           trx.sold_to_customer_id,       --   SOLD_CUSTOMER_ID
1944           trx.ship_to_customer_id,       --   SHIP_CUSTOMER_ID
1945           trx.remit_to_address_id,       --   REMIT_ADDRESS_ID
1946           '',                          --   RECEIPT_BATCH_ID
1947           '',                          --   RECEIVABLE_APPLICATION_ID
1948           '',                          --   CUSTOMER_BANK_BRANCH_ID
1949           '',                          --   ISSUER_BANK_BRANCH_ID
1950           trx.batch_source_id,           --   BATCH_SOURCE_ID
1951           trx.batch_id,                  --   BATCH_ID
1952           trx.term_id,                   --   TERM_ID
1953           'Y',                           --   SELECT_FLAG
1954           'H',                           --   LEVEL_FLAG
1955           '',                            --   FROM_TO_FLAG
1956           ''                            --BUG#5204032 ard.code_combination_id      -- paired_ccid
1957          --{BUG#4356088
1958          ,gt.event_type_code
1959          ,gt.event_class_code
1960          ,gt.entity_code
1961          ,'N'                    --MFAR_ADDITIONAL_ENTRY
1962          --}
1963       FROM xla_events_gt                     gt,
1964            ra_customer_trx_all               trx,
1965            gl_sets_of_books                  sob
1966      WHERE gt.event_type_code             IN ('BILL_CREATE' ,'BILL_UPDATE' ,'BILL_REVERSE')
1967        AND gt.application_id              = p_application_id
1968        AND gt.source_id_int_1             = trx.customer_trx_id
1969        AND trx.set_of_books_id            = sob.set_of_books_id;
1970 
1971    --  Load_header_data_th_h;
1972    local_log(procedure_name => 'Load_header_data_th',
1973              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.Load_header_data_th()-');
1974 EXCEPTION
1975 --  WHEN NO_DATA_FOUND THEN NULL;
1976   WHEN OTHERS THEN
1977    local_log(procedure_name => 'Load_header_data_th',
1978              p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_header_data_th'||
1979              arp_global.CRLF ||'Error      :'|| SQLERRM);
1980     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
1981     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
1982          'Procedure :arp_xla_extract_main_pkg.load_header_data_th'|| arp_global.CRLF||
1983          'Error     :'||SQLERRM);
1984     FND_MSG_PUB.ADD;
1985   RAISE;
1986 END Load_header_data_th;
1987 
1988 
1989 -----------------------------------
1990 -- Line data loading procedures  --
1991 -----------------------------------
1992 
1993 /*-----------------------------------------------------------------+
1994  | Procedure Name : load_line_data_ctlgd                           |
1995  | Description    : Extract line data for transaction events       |
1996  +-----------------------------------------------------------------+
1997  | History        :                                                |
1998  | 23-FEB-2004     Herve Yu    Created due to bug#3419926          |
1999  +-----------------------------------------------------------------*/
2000 PROCEDURE load_line_data_ctlgd(p_application_id  IN NUMBER DEFAULT 222)
2001 IS
2002 BEGIN
2003    local_log(procedure_name => 'load_line_data_ctlgd',
2004              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_ctlgd()+');
2005       -- Insert line level data in Line GT with
2006       -- level_flag    = L
2007 
2008       INSERT INTO ar_xla_lines_extract (
2009         EVENT_ID
2010        ,LINE_NUMBER
2011        ,LANGUAGE
2012        ,LEDGER_ID
2013        ,SOURCE_ID
2014        ,SOURCE_TABLE
2015        ,LINE_ID
2016        ,TAX_CODE_ID
2017        ,LOCATION_SEGMENT_ID
2018        ,BASE_CURRENCY_CODE
2019        ,EXCHANGE_RATE_TYPE
2020        ,EXCHANGE_RATE
2021        ,EXCHANGE_DATE
2022        ,ACCTD_AMOUNT
2023        ,TAXABLE_ACCTD_AMOUNT
2024        ,ORG_ID
2025        ,HEADER_TABLE_ID
2026        ,POSTING_ENTITY
2027        ,CASH_RECEIPT_ID
2028        ,CUSTOMER_TRX_ID
2029        ,CUSTOMER_TRX_LINE_ID
2030        ,CUST_TRX_LINE_GL_DIST_ID
2031        ,CUST_TRX_LINE_SALESREP_ID
2032        ,INVENTORY_ITEM_ID
2033        ,SALES_TAX_ID
2034        ,SO_ORGANIZATION_ID
2035        ,TAX_EXEMPTION_ID
2036        ,UOM_CODE
2037        ,WAREHOUSE_ID
2038        ,AGREEMENT_ID
2039        ,CUSTOMER_BANK_ACCT_ID
2040        ,DRAWEE_BANK_ACCOUNT_ID
2041        ,REMITTANCE_BANK_ACCT_ID
2042        ,DISTRIBUTION_SET_ID
2043        ,PAYMENT_SCHEDULE_ID
2044        ,RECEIPT_METHOD_ID
2045        ,RECEIVABLES_TRX_ID
2046        ,ED_ADJ_RECEIVABLES_TRX_ID
2047        ,UNED_RECEIVABLES_TRX_ID
2048        ,SET_OF_BOOKS_ID
2049        ,SALESREP_ID
2050        ,BILL_SITE_USE_ID
2051        ,DRAWEE_SITE_USE_ID
2052        ,PAYING_SITE_USE_ID
2053        ,SOLD_SITE_USE_ID
2054        ,SHIP_SITE_USE_ID
2055        ,RECEIPT_CUSTOMER_SITE_USE_ID
2056        ,BILL_CUST_ROLE_ID
2057        ,DRAWEE_CUST_ROLE_ID
2058        ,SHIP_CUST_ROLE_ID
2059        ,SOLD_CUST_ROLE_ID
2060        ,BILL_CUSTOMER_ID
2061        ,DRAWEE_CUSTOMER_ID
2062        ,PAYING_CUSTOMER_ID
2063        ,SOLD_CUSTOMER_ID
2064        ,SHIP_CUSTOMER_ID
2065        ,REMIT_ADDRESS_ID
2066        ,RECEIPT_BATCH_ID
2067        ,RECEIVABLE_APPLICATION_ID
2068        ,CUSTOMER_BANK_BRANCH_ID
2069        ,ISSUER_BANK_BRANCH_ID
2070        ,BATCH_SOURCE_ID
2071        ,BATCH_ID
2072        ,TERM_ID
2073        ,SELECT_FLAG
2074        ,LEVEL_FLAG
2075        ,FROM_TO_FLAG
2076        ,PAIRED_CCID
2077        ,PAIRE_DIST_ID
2078        --{BUG#4356088
2079        ,event_type_code
2080        ,event_class_code
2081        ,entity_code
2082        --BUG#4645389
2083        ,tax_line_id
2084        --}
2085          ,MFAR_ADDITIONAL_ENTRY
2086        )
2087        SELECT /*+LEADING(gt) USE_NL(gt,gld)*/
2088            gt.event_id,                   -- EVENT_ID
2089            -1 * gld.cust_trx_line_gl_dist_id,    --LINE_NUMBER
2090                                                  -- As in the case application are extracted along with the
2091                                                  -- transaction distributions the line number should be
2092                                                  -- unique without a event. For lines extracted from application
2093                                                  -- the line number is set by using the ard.line_id
2094                                                  -- and transaction by using the ctlgd.cust_trx_line_gl_dist_id
2095                                                  -- to avoid the same id to be extracted with in the same event
2096                                                  -- ids coming from ctlgd will be negative
2097            '',                              --LANGUAGE
2098            sob.set_of_books_id,             --LEDGER_ID
2099            '',                               -- SOURCE_ID
2100            '',                               -- SOURCE_TABLE
2101            '',                               -- LINE_ID
2102            li.vat_tax_id,                    -- TAX_CODE_ID
2103            li.location_segment_id,           -- LOCATION_SEGMENT_ID
2104            sob.currency_code,                -- BASE_CURRENCY
2105            hd.exchange_rate_type,            -- EXCHANGE_RATE_TYPE
2106            hd.exchange_rate,                 -- EXCHANGE_RATE
2107            hd.exchange_date,                 -- EXCHANGE_DATE
2108            gld.acctd_amount,                 -- ACCTD_AMOUNT
2109            '',                               -- TAXABLE_ACCTD_AMOUNT
2110            gld.org_id,                       -- ORG_ID
2111            gld.customer_trx_id,              -- HEADER_ID
2112            'CTLGD',                          -- POSTING_ENTITY
2113            '',                               -- CASH_RECEIPT_ID
2114            hd.customer_trx_id,               -- CUSTOMER_TRX_ID
2115            li.customer_trx_line_id,          -- CUSTOMER_TRX_LINE_ID
2116            gld.cust_trx_line_gl_dist_id,     -- CUST_TRX_LINE_GL_DIST_ID
2117            gld.cust_trx_line_salesrep_id,    -- CUST_TRX_LINE_SALESREP_ID
2118            li.inventory_item_id,             -- INVENTORY_ITEM_ID
2119            li.sales_tax_id,                  -- SALES_TAX_ID
2120            osp.master_organization_id,       -- SO_ORGANIZATION_ID
2121            li.tax_exemption_id,              -- TAX_EXEMPTION_ID
2122            li.uom_code,                      -- UOM_CODE
2123            li.warehouse_id,                  -- WAREHOUSE_ID
2124            '',                               -- AGREEMENT_ID
2125            '',                               -- CUSTOMER_BANK_ACCT_ID
2126            '',                               -- DRAWEE_BANK_ACCOUNT_ID
2127            '',                               -- REMITTANCE_BANK_ACCT_ID
2128            '',                               -- DISTRIBUTION_SET_ID
2129            '',                               -- PAYMENT_SCHEDULE_ID
2130            '',                               -- RECEIPT_METHOD_ID
2131            '',                               -- RECEIVABLES_TRX_ID
2132            '',                               -- ED_ADJ_RECEIVABLES_TRX_ID
2133            '',                               -- UNED_RECEIVABLES_TRX_ID
2134            '',                               -- SET_OF_BOOKS_ID
2135            '',                               -- SALESREP_ID
2136            '',                               -- BILL_SITE_USE_ID
2137            '',                               -- DRAWEE_SITE_USE_ID
2138            '',                               -- PAYING_SITE_USE_ID
2139            '',                               -- SOLD_SITE_USE_ID
2140            '',                               -- SHIP_SITE_USE_ID
2141            '',                               -- RECEIPT_CUSTOMER_SITE_USE_ID
2142            '',                               -- BILL_CUST_ROLE_ID
2143            '',                               -- DRAWEE_CUST_ROLE_ID
2144            '',                               -- SHIP_CUST_ROLE_ID
2145            '',                               -- SOLD_CUST_ROLE_ID
2146            '',                               -- BILL_CUSTOMER_ID
2147            '',                               -- DRAWEE_CUSTOMER_ID
2148            '',                               -- PAYING_CUSTOMER_ID
2149            '',                               -- SOLD_CUSTOMER_ID
2150            '',                               -- SHIP_CUSTOMER_ID
2151            '',                               -- REMIT_ADDRESS_ID
2152            '',                               -- RECEIPT_BATCH_ID
2153            '',                               -- RECEIVABLE_APPLICATION_ID
2154            '',                               -- CUSTOMER_BANK_BRANCH_ID
2155            '',                               -- ISSUER_BANK_BRANCH_ID
2156            '',                               -- BATCH_SOURCE_ID
2157            '',                               -- BATCH_ID
2158            '',                               -- TERM_ID
2159            'N',                              -- SELECT_FLAG -- This flag set to Y is probably ok
2160                                                             -- but as it is only used for
2161                                                             -- single document with application
2162                                                             -- driving by ctlgd, no shared views
2163                                                             -- should access to it
2164                                                             -- if we set this flag to Y still
2165                                                             -- it should not be a problem as the
2166                                                             -- line number will filter it out for
2167                                                             -- to be a source for a specific line
2168            'L',                              -- LEVEL_FLAG
2169            '' ,                              -- FROM_TO_FLAG
2170            NULL,       -- PAIRED_CCID
2171            NULL        -- PAIRE_DIST_ID
2172          --{BUG#4356088
2173          ,gt.event_type_code
2174          ,gt.event_class_code
2175          ,gt.entity_code
2176          --BUG#4645389
2177          ,li.tax_line_id       --tax_line_id
2178          ,'N'                    --MFAR_ADDITIONAL_ENTRY
2179          --}
2180       FROM xla_events_gt                      gt,
2181            ra_cust_trx_line_gl_dist_all       gld,
2182            ra_customer_trx_lines_all          li,
2183            ra_customer_trx_all                hd,
2184            gl_sets_of_books                   sob,
2185            oe_system_parameters_all           osp
2186      WHERE gt.event_type_code IN ('INV_CREATE'     , 'INV_UPDATE'     ,
2187                                      'CM_CREATE'      , 'CM_UPDATE'      ,
2188                                      'DM_CREATE'      , 'DM_UPDATE'      ,
2189                                      'DEP_CREATE'     , 'DEP_UPDATE' ,
2190                                      'GUAR_CREATE'    , 'GUAR_UPDATE'    ,
2191                                      'CB_CREATE'      ) --BUG#3419926
2192        AND gt.application_id        = p_application_id
2193        AND gld.event_id             = gt.event_id
2194        AND hd.customer_trx_id       = gt.source_id_int_1        --BUG#5517976
2195 	   AND gld.customer_trx_line_id = li.customer_trx_line_id(+)
2196        AND gld.customer_trx_id      = hd.customer_trx_id
2197        AND gld.set_of_books_id      = sob.set_of_books_id
2198        AND gld.org_id               = osp.org_id(+)
2199        AND gld.account_set_flag     = 'N';
2200    local_log(procedure_name => 'load_line_data_ctlgd',
2201              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_ctlgd()-');
2202 EXCEPTION
2203 --  WHEN NO_DATA_FOUND THEN NULL;
2204   WHEN OTHERS THEN
2205    local_log(procedure_name => 'load_line_data_ctlgd',
2206              p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_ctlgd '||
2207                                arp_global.CRLF ||'Error      :'|| SQLERRM);
2208     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
2209     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
2210          'Procedure :arp_xla_extract_main_pkg.load_line_data_ctlgd'|| arp_global.CRLF||
2211          'Error     :'||SQLERRM);
2212     FND_MSG_PUB.ADD;
2213   RAISE;
2214 END load_line_data_ctlgd;
2215 
2216 ---------------------------------------------------------------------
2217 
2218 /*-----------------------------------------------------------------+
2219  | Procedure Name : load_line_data_adj                             |
2220  | Description    : Extract line data for adjustment events        |
2221  +-----------------------------------------------------------------+
2222  | History        :                                                |
2223  | 23-FEB-2004     Herve Yu    Created due to bug#3419926          |
2224  +-----------------------------------------------------------------*/
2225 PROCEDURE load_line_data_adj(p_application_id  IN NUMBER DEFAULT 222)
2226 IS
2227 BEGIN
2228    local_log(procedure_name => 'load_line_data_adj',
2229              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_adj()+');
2230 
2231       -- Insert line level data in Line GT with
2232       -- selected_flag = N
2233       -- level_flag    = L
2234       INSERT INTO ar_xla_lines_extract (
2235         EVENT_ID
2236        ,LINE_NUMBER
2237        ,LANGUAGE
2238        ,LEDGER_ID
2239        ,SOURCE_ID
2240        ,SOURCE_TABLE
2241        ,LINE_ID
2242        ,TAX_CODE_ID
2243        ,LOCATION_SEGMENT_ID
2244        ,BASE_CURRENCY_CODE
2245        ,EXCHANGE_RATE_TYPE
2246        ,EXCHANGE_RATE
2247        ,EXCHANGE_DATE
2248        ,ACCTD_AMOUNT
2249        ,TAXABLE_ACCTD_AMOUNT
2250        ,ORG_ID
2251        ,HEADER_TABLE_ID
2252        ,POSTING_ENTITY
2253        ,CASH_RECEIPT_ID
2254        ,CUSTOMER_TRX_ID
2255        ,CUSTOMER_TRX_LINE_ID
2256        ,CUST_TRX_LINE_GL_DIST_ID
2257        ,CUST_TRX_LINE_SALESREP_ID
2258        ,INVENTORY_ITEM_ID
2259        ,SALES_TAX_ID
2260        ,SO_ORGANIZATION_ID
2261        ,TAX_EXEMPTION_ID
2262        ,UOM_CODE
2263        ,WAREHOUSE_ID
2264        ,AGREEMENT_ID
2265        ,CUSTOMER_BANK_ACCT_ID
2266        ,DRAWEE_BANK_ACCOUNT_ID
2267        ,REMITTANCE_BANK_ACCT_ID
2268        ,DISTRIBUTION_SET_ID
2269        ,PAYMENT_SCHEDULE_ID
2270        ,RECEIPT_METHOD_ID
2271        ,RECEIVABLES_TRX_ID
2272        ,ED_ADJ_RECEIVABLES_TRX_ID
2273        ,UNED_RECEIVABLES_TRX_ID
2274        ,SET_OF_BOOKS_ID
2275        ,SALESREP_ID
2276        ,BILL_SITE_USE_ID
2277        ,DRAWEE_SITE_USE_ID
2278        ,PAYING_SITE_USE_ID
2279        ,SOLD_SITE_USE_ID
2280        ,SHIP_SITE_USE_ID
2281        ,RECEIPT_CUSTOMER_SITE_USE_ID
2282        ,BILL_CUST_ROLE_ID
2283        ,DRAWEE_CUST_ROLE_ID
2284        ,SHIP_CUST_ROLE_ID
2285        ,SOLD_CUST_ROLE_ID
2286        ,BILL_CUSTOMER_ID
2287        ,DRAWEE_CUSTOMER_ID
2288        ,PAYING_CUSTOMER_ID
2289        ,SOLD_CUSTOMER_ID
2290        ,SHIP_CUSTOMER_ID
2291        ,REMIT_ADDRESS_ID
2292        ,RECEIPT_BATCH_ID
2293        ,RECEIVABLE_APPLICATION_ID
2294        ,CUSTOMER_BANK_BRANCH_ID
2295        ,ISSUER_BANK_BRANCH_ID
2296        ,BATCH_SOURCE_ID
2297        ,BATCH_ID
2298        ,TERM_ID
2299        ,SELECT_FLAG
2300        ,LEVEL_FLAG
2301        ,FROM_TO_FLAG
2302        ,AMOUNT
2303        ,PAIRED_CCID
2304        --{BUG#4356088
2305        ,event_type_code
2306        ,event_class_code
2307        ,entity_code
2308        --BUG#4645389
2309        ,tax_line_id
2310          ,MFAR_ADDITIONAL_ENTRY
2311        --}
2312        )
2313         SELECT /*+LEADING(gt) USE_NL(gt,adj)*/
2314            gt.event_id,                      -- EVENT_ID
2315            dist.line_id,                     -- LINE_NUMBER
2316            '',                               -- LANGUAGE
2317            sob.set_of_books_id,              -- LEDGER_ID
2318            dist.source_id,                   -- SOURCE_ID
2319            dist.source_table,                -- SOURCE_TABLE
2320            dist.line_id,                     -- LINE_ID
2321            dist.tax_code_id,                 -- TAX_CODE_ID
2322            dist.location_segment_id,         -- LOCATION_SEGMENT_ID
2323            sob.currency_code,                -- BASE_CURRENCY
2324            trxt.exchange_rate_type,          -- EXCHANGE_RATE_TYPE
2325            trxt.exchange_rate,               -- EXCHANGE_RATE
2326            trxt.exchange_date,               -- EXCHANGE_DATE
2327            NVL(dist.acctd_amount_cr,0)-
2328                 NVL(dist.acctd_amount_dr,0), -- ACCTD_AMOUNT
2329            NVL(dist.taxable_accounted_cr,0) -
2330                 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
2331            adj.org_id,                       -- ORG_ID
2332            adj.adjustment_id,                -- HEADER_ID
2333            'ADJ',                            -- POSTING_ENTITY
2334            adj.associated_cash_receipt_id,   -- CASH_RECEIPT_ID
2335            adj.customer_trx_id,              -- CUSTOMER_TRX_ID
2336            tlt.customer_trx_line_id,         -- CUSTOMER_TRX_LINE_ID
2337            gldt.cust_trx_line_gl_dist_id,    -- CUST_TRX_LINE_GL_DIST_ID
2338            gldt.cust_trx_line_salesrep_id,   -- CUST_TRX_LINE_SALESREP_ID
2339            tlt.inventory_item_id,            -- INVENTORY_ITEM_ID
2340            tlt.sales_tax_id,                 -- SALES_TAX_ID
2341            osp.master_organization_id,       -- SO_ORGANIZATION_ID
2342            tlt.tax_exemption_id,             -- TAX_EXEMPTION_ID
2343            tlt.uom_code,                     -- UOM_CODE
2344            tlt.warehouse_id,                 -- WAREHOUSE_ID
2345            trxt.agreement_id ,               -- AGREEMENT_ID
2346            '',                               -- CUSTOMER_BANK_ACCT_ID
2347            '',                               -- DRAWEE_BANK_ACCOUNT_ID
2348            '',                               -- REMITTANCE_BANK_ACCT_ID
2349            '',                               -- DISTRIBUTION_SET_ID
2350            '',                               -- PAYMENT_SCHEDULE_ID
2351            '',                               -- RECEIPT_METHOD_ID
2352            '',                               -- RECEIVABLES_TRX_ID
2353            '',                               -- ED_ADJ_RECEIVABLES_TRX_ID
2354            '',                               -- UNED_RECEIVABLES_TRX_ID
2355            '',                               -- SET_OF_BOOKS_ID
2356            '',                               -- SALESREP_ID
2357            '',                               -- BILL_SITE_USE_ID
2358            '',                               -- DRAWEE_SITE_USE_ID
2359            '',                               -- PAYING_SITE_USE_ID
2360            '',                               -- SOLD_SITE_USE_ID
2361            '',                               -- SHIP_SITE_USE_ID
2362            '',                               -- RECEIPT_CUSTOMER_SITE_USE_ID
2363            '',                               -- BILL_CUST_ROLE_ID
2364            '',                               -- DRAWEE_CUST_ROLE_ID
2365            '',                               -- SHIP_CUST_ROLE_ID
2366            '',                               -- SOLD_CUST_ROLE_ID
2367            '',                               -- BILL_CUSTOMER_ID
2368            '',                               -- DRAWEE_CUSTOMER_ID
2369            '',                               -- PAYING_CUSTOMER_ID
2370            '',                               -- SOLD_CUSTOMER_ID
2371            '',                               -- SHIP_CUSTOMER_ID
2372            '',                               -- REMIT_ADDRESS_ID
2373            '',                               -- RECEIPT_BATCH_ID
2374            '',                               -- RECEIVABLE_APPLICATION_ID
2375            '',                               -- CUSTOMER_BANK_BRANCH_ID
2376            '',                               -- ISSUER_BANK_BRANCH_ID
2377            '',                               -- BATCH_SOURCE_ID
2378            '',                               -- BATCH_ID
2379            '',                               -- TERM_ID
2380            'N',                              -- SELECT_FLAG
2381            'L',                              -- LEVEL_FLAG
2382            '',                               -- FROM_TO_FLAG
2383            NVL(dist.amount_cr,0)
2384              -NVL(dist.amount_dr,0),         -- AMOUNT
2385            NULL       -- PAIRED_CCID
2386          --{BUG#4356088
2387          ,gt.event_type_code
2388          ,gt.event_class_code
2389          ,gt.entity_code
2390          --BUG#4645389
2391          ,tlt.tax_line_id       --tax_line_id
2392          ,'N'                    --MFAR_ADDITIONAL_ENTRY
2393          --}
2394       FROM xla_events_gt                  gt,
2395            ar_distributions_all           dist,
2396            ar_adjustments_all             adj,
2397            gl_sets_of_books               sob,
2398            ra_customer_trx_all            trxt,
2399            ra_customer_trx_lines_all      tlt,
2400            ra_cust_trx_line_gl_dist_all   gldt,
2401            oe_system_parameters_all       osp
2402      WHERE gt.event_type_code             = 'ADJ_CREATE'
2403        AND gt.application_id              = p_application_id
2404 	   AND adj.event_id                   = gt.event_id
2405        AND adj.customer_trx_id            = trxt.customer_trx_id
2406        AND dist.source_table              = 'ADJ'
2407        AND dist.source_id                 = adj.adjustment_id
2408 --{Pass adj distribution for the REC
2409 --       AND dist.source_type              <> 'REC'
2410 --}
2411 -- Need to add PSA upgrade impact
2412        AND DECODE(adj.upgrade_method,
2413                     '11IMFAR',DECODE(dist.source_table_secondary,'UPMFAJMIAR','Y','N'),
2414                     'Y')                  = 'Y'
2415        AND dist.ref_customer_trx_line_id  = tlt.customer_trx_line_id(+)
2416        AND dist.ref_cust_trx_line_gl_dist_id = gldt.cust_trx_line_gl_dist_id(+)
2417        AND adj.set_of_books_id            = sob.set_of_books_id
2418        AND adj.org_id                     = osp.org_id(+);
2419    local_log(procedure_name => 'load_line_data_adj',
2420              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_adj()-');
2421 EXCEPTION
2422 --  WHEN NO_DATA_FOUND THEN NULL;
2423   WHEN OTHERS THEN
2424    local_log(procedure_name => 'load_line_data_adj',
2425              p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_adj '||
2426                                arp_global.CRLF ||'Error      :'|| SQLERRM);
2427     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
2428     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
2429          'Procedure :arp_xla_extract_main_pkg.load_line_data_adj'|| arp_global.CRLF||
2430          'Error     :'||SQLERRM);
2431     FND_MSG_PUB.ADD;
2432   RAISE;
2433 END load_line_data_adj;
2434 
2435 --------------------------------------------------------
2436 
2437 
2438 /*-----------------------------------------------------------------+
2439  | Procedure Name : load_line_data_app_to_trx                      |
2440  | Description    : Extract the to application line attached to    |
2441  |                  the applied to transaction event               |
2442  +-----------------------------------------------------------------+
2443  | History        :                                                |
2444  | 23-FEB-2004     Herve Yu    Created due to bug#3419926          |
2445  +-----------------------------------------------------------------*/
2446 PROCEDURE load_line_data_app_to_trx(p_application_id  IN NUMBER DEFAULT 222)
2447 IS
2448 BEGIN
2449    local_log(procedure_name => 'load_line_data_app_to_trx',
2450              p_msg_text     => 'arp_xla_extract_main_pkg.load_line_data_app_to_trx ()+');
2451     -- Insert line level data in Line GT with
2452     -- selected_flag = Y
2453     -- level_flag    = L
2454     -- from_to_flag  = T
2455     INSERT INTO ar_xla_lines_extract (
2456         EVENT_ID
2457        ,LINE_NUMBER
2458        ,LANGUAGE
2459        ,LEDGER_ID
2460        ,SOURCE_ID
2461        ,SOURCE_TABLE
2462        ,LINE_ID
2463        ,TAX_CODE_ID
2464        ,LOCATION_SEGMENT_ID
2465        ,BASE_CURRENCY_CODE
2466        ,EXCHANGE_RATE_TYPE
2467        ,EXCHANGE_RATE
2468        ,EXCHANGE_DATE
2469        ,ACCTD_AMOUNT
2470        ,TAXABLE_ACCTD_AMOUNT
2471        ,ORG_ID
2472        ,HEADER_TABLE_ID
2473        ,POSTING_ENTITY
2474        ,CASH_RECEIPT_ID
2475        ,CUSTOMER_TRX_ID
2476        ,CUSTOMER_TRX_LINE_ID
2477        ,CUST_TRX_LINE_GL_DIST_ID
2478        ,CUST_TRX_LINE_SALESREP_ID
2479        ,INVENTORY_ITEM_ID
2480        ,SALES_TAX_ID
2481        ,SO_ORGANIZATION_ID
2482        ,TAX_EXEMPTION_ID
2483        ,UOM_CODE
2484        ,WAREHOUSE_ID
2485        ,AGREEMENT_ID
2486        ,CUSTOMER_BANK_ACCT_ID
2487        ,DRAWEE_BANK_ACCOUNT_ID
2488        ,REMITTANCE_BANK_ACCT_ID
2489        ,DISTRIBUTION_SET_ID
2490        ,PAYMENT_SCHEDULE_ID
2491        ,RECEIPT_METHOD_ID
2492        ,RECEIVABLES_TRX_ID
2493        ,ED_ADJ_RECEIVABLES_TRX_ID
2494        ,UNED_RECEIVABLES_TRX_ID
2495        ,SET_OF_BOOKS_ID
2496        ,SALESREP_ID
2497        ,BILL_SITE_USE_ID
2498        ,DRAWEE_SITE_USE_ID
2499        ,PAYING_SITE_USE_ID
2500        ,SOLD_SITE_USE_ID
2501        ,SHIP_SITE_USE_ID
2502        ,RECEIPT_CUSTOMER_SITE_USE_ID
2503        ,BILL_CUST_ROLE_ID
2504        ,DRAWEE_CUST_ROLE_ID
2505        ,SHIP_CUST_ROLE_ID
2506        ,SOLD_CUST_ROLE_ID
2507        ,BILL_CUSTOMER_ID
2508        ,DRAWEE_CUSTOMER_ID
2509        ,PAYING_CUSTOMER_ID
2510        ,SOLD_CUSTOMER_ID
2511        ,SHIP_CUSTOMER_ID
2512        ,REMIT_ADDRESS_ID
2513        ,RECEIPT_BATCH_ID
2514        ,RECEIVABLE_APPLICATION_ID
2515        ,CUSTOMER_BANK_BRANCH_ID
2516        ,ISSUER_BANK_BRANCH_ID
2517        ,BATCH_SOURCE_ID
2518        ,BATCH_ID
2519        ,TERM_ID
2520        ,SELECT_FLAG
2521        ,LEVEL_FLAG
2522        ,FROM_TO_FLAG
2523        ,FROM_AMOUNT
2524        ,AMOUNT
2525        ,FROM_ACCTD_AMOUNT
2526        --{BUG#4356088
2527        ,event_type_code
2528        ,event_class_code
2529        ,entity_code
2530        --BUG#4645389
2531        ,tax_line_id
2532        --BUG#5366837
2533        ,additional_char1
2534          ,MFAR_ADDITIONAL_ENTRY
2535        )
2536         SELECT /*+LEADING(gt) USE_NL(gt, app)*/
2537            gt.event_id,                      -- EVENT_ID
2538            dist.line_id,                     -- LINE_NUMBER
2539            '',                               -- LANGUAGE
2540            sob.set_of_books_id,              -- LEDGER_ID
2541            dist.source_id,                   -- SOURCE_ID
2542            dist.source_table,                -- SOURCE_TABLE
2543            dist.line_id,                     -- LINE_ID
2544            dist.tax_code_id,                 -- TAX_CODE_ID
2545            dist.location_segment_id,         -- LOCATION_SEGMENT_ID
2546            sob.currency_code,                -- BASE_CURRENCY
2547            trxt.exchange_rate_type,          -- EXCHANGE_RATE_TYPE
2548            trxt.exchange_rate,               -- EXCHANGE_RATE
2549            -- bug 7535858 Default Exch Date as Trx Date for Base Currency Line for ALC Calculation
2550            decode(trxt.invoice_currency_code,sob.currency_code,
2551                     trxt.trx_date, trxt.exchange_date),         -- EXCHANGE_DATE
2552            -- trxt.exchange_date,               -- EXCHANGE_DATE
2553            NVL(dist.acctd_amount_cr,0) -
2554                 NVL(dist.acctd_amount_dr,0),      -- ACCTD_AMOUNT
2555            NVL(dist.taxable_accounted_cr,0) -
2556                 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
2557            app.org_id,                       -- ORG_ID
2558            app.receivable_application_id,    -- HEADER_TABLE_ID
2559            'APP',                            -- POSTING_ENTITY
2560            NULL,                             -- CASH_RECEIPT_ID
2561            trxt.customer_trx_id,             -- CUSTOMER_TRX_ID
2562            tlt.customer_trx_line_id,         -- CUSTOMER_TRX_LINE_ID
2563            gldt.cust_trx_line_gl_dist_id,    -- CUST_TRX_LINE_GL_DIST_ID
2564            gldt.cust_trx_line_salesrep_id,   --  CUST_TRX_LINE_SALESREP_ID
2565            tlt.inventory_item_id,            -- INVENTORY_ITEM_ID
2566            tlt.sales_tax_id,                 -- SALES_TAX_ID
2567            osp.master_organization_id,       -- SO_ORGANIZATION_ID
2568            tlt.tax_exemption_id,             -- TAX_EXEMPTION_ID
2569            tlt.uom_code,                     -- UOM_CODE
2570            tlt.warehouse_id,                 -- WAREHOUSE_ID
2571            trxt.agreement_id,                -- AGREEMENT_ID
2572            trxt.customer_bank_account_id,    -- CUSTOMER_BANK_ACCT_ID
2573            trxt.drawee_bank_account_id,      -- DRAWEE_BANK_ACCOUNT_ID
2574            trxt.remit_bank_acct_use_id,  -- REMITTANCE_BANK_ACCT_ID
2575            NULL,                             -- DISTRIBUTION_SET_ID
2576            psch.payment_schedule_id,         -- PAYMENT_SCHEDULE_ID
2577            trxt.receipt_method_id,           -- RECEIPT_METHOD_ID
2578            NULL,                             -- RECEIVABLES_TRX_ID
2579            arp_xla_extract_main_pkg.ed_uned_trx('EDISC',app.org_id),       -- ED_ADJ_RECEIVABLES_TRX_ID
2580            arp_xla_extract_main_pkg.ed_uned_trx('UNEDISC',app.org_id),     -- UNED_RECEIVABLES_TRX_ID
2581            trxt.set_of_books_id,             -- SET_OF_BOOKS_ID
2582            trxt.primary_salesrep_id,         -- SALESREP_ID
2583            trxt.bill_to_site_use_id,         -- BILL_SITE_USE_ID
2584            trxt.drawee_site_use_id,          -- DRAWEE_SITE_USE_ID
2585            trxt.paying_site_use_id,          -- PAYING_SITE_USE_ID
2586            trxt.sold_to_site_use_id,         -- SOLD_SITE_USE_ID
2587            trxt.ship_to_site_use_id,         -- SHIP_SITE_USE_ID
2588            NULL,                             -- RECEIPT_CUSTOMER_SITE_USE_ID
2589            trxt.bill_to_contact_id,          -- BILL_CUST_ROLE_ID
2590            trxt.drawee_contact_id,           -- DRAWEE_CUST_ROLE_ID
2591            trxt.ship_to_contact_id,          -- SHIP_CUST_ROLE_ID
2592            trxt.sold_to_contact_id,          -- SOLD_CUST_ROLE_ID
2593            trxt.bill_to_customer_id,         -- BILL_CUSTOMER_ID
2594            trxt.drawee_id,                   -- DRAWEE_CUSTOMER_ID
2595            trxt.paying_customer_id,          -- PAYING_CUSTOMER_ID
2596            trxt.sold_to_customer_id,         -- SOLD_CUSTOMER_ID
2597            trxt.ship_to_customer_id,         -- SHIP_CUSTOMER_ID
2598            trxt.remit_to_address_id,         -- REMIT_ADDRESS_ID
2599            NULL,                             -- RECEIPT_BATCH_ID
2600            NULL,                             -- RECEIVABLE_APPLICATION_ID
2601            NULL,                             -- CUSTOMER_BANK_BRANCH_ID
2602            NULL,                             -- ISSUER_BANK_BRANCH_ID
2603            trxt.batch_source_id,             -- BATCH_SOURCE_ID
2604            trxt.batch_id,                    -- BATCH_ID
2605            trxt.term_id,                     -- TERM_ID
2606            'Y',                              -- SELECT_FLAG
2607            'L',                              -- LEVEL_FLAG
2608            'T',                              -- FROM_TO_FLAG
2609 --           NVL(dist.from_amount_cr,0)
2610 --             -NVL(dist.from_amount_dr,0),    -- FROM_AMOUNT,
2611         CASE WHEN (app.upgrade_method IS NULL  AND app.status ='APP') THEN
2612            CASE WHEN (dist.from_amount_dr IS NOT NULL OR dist.from_amount_cr IS NOT NULL) THEN
2613               NVL(dist.from_amount_cr,0)-NVL(dist.from_amount_dr,0)
2614            ELSE
2615              CASE WHEN (dist.source_type NOT IN ('REC','EDISC','UNEDISC')) THEN
2616                 NULL
2617              ELSE
2618                CASE WHEN (app.earned_discount_taken IS NOT NULL AND
2619                     app.earned_discount_taken = NVL(dist.amount_dr,0)-NVL(dist.amount_cr,0) AND
2620                     app.acctd_earned_discount_taken = NVL(dist.acctd_amount_dr,0)-NVL(dist.acctd_amount_cr,0)
2621                     AND dist.source_type = 'REC') THEN
2622                    NULL
2623                ELSE
2624                  CASE WHEN (trxt.invoice_currency_code = cr.currency_code) THEN
2625                     NVL(dist.amount_cr,0)-NVL(dist.amount_dr,0)
2626                  ELSE
2627                    CASE WHEN (app.amount_applied <> 0 AND app.amount_applied_from <> 0) THEN
2628                      NVL(app.amount_applied_from / app.amount_applied * dist.amount_cr,0)-
2629                      NVL(app.amount_applied_from / app.amount_applied * dist.amount_dr,0)
2630                     ELSE  NULL END
2631                  END
2632                END
2633              END
2634            END
2635         ELSE
2636            NVL(dist.from_amount_cr,0)
2637              -NVL(dist.from_amount_dr,0)
2638         END,                     -- FROM_AMOUNT
2639            NVL(dist.amount_cr,0) - NVL(dist.amount_dr,0),          -- AMOUNT
2640 --           NVL(dist.from_acctd_amount_cr,0)
2641 --             -NVL(dist.from_acctd_amount_dr,0) -- FROM_ACCTD_AMOUNT
2642         CASE WHEN (app.upgrade_method IS NULL AND app.status ='APP') THEN
2643            CASE WHEN (dist.from_acctd_amount_dr IS NOT NULL OR dist.from_acctd_amount_cr IS NOT NULL) THEN
2644               NVL(dist.from_acctd_amount_cr,0)-NVL(dist.from_acctd_amount_dr,0)
2645            ELSE
2646              CASE WHEN (dist.source_type NOT IN ('REC','EDISC','UNEDISC')) THEN
2647                 NULL
2648              ELSE
2649                CASE WHEN (app.earned_discount_taken IS NOT NULL AND
2650                     app.earned_discount_taken = NVL(dist.amount_dr,0)-NVL(dist.amount_cr,0) AND
2651                     app.acctd_earned_discount_taken = NVL(dist.acctd_amount_dr,0)-NVL(dist.acctd_amount_cr,0)
2652                     AND dist.source_type = 'REC') THEN
2653                    NULL
2654                ELSE
2655                  CASE WHEN (trxt.invoice_currency_code = sob.currency_code AND
2656                             cr.currency_code          = sob.currency_code ) THEN
2657                     NVL(dist.acctd_amount_cr,0)-NVL(dist.acctd_amount_dr,0)
2658                  ELSE
2659                    CASE WHEN (app.acctd_amount_applied_to <> 0 AND app.acctd_amount_applied_from <> 0) THEN
2660                    NVL(app.acctd_amount_applied_from / app.acctd_amount_applied_to * dist.acctd_amount_cr,0)-
2661                    NVL(app.acctd_amount_applied_from / app.acctd_amount_applied_to * dist.acctd_amount_dr,0)
2662                     ELSE  NULL END
2663                  END
2664                END
2665              END
2666            END
2667         ELSE
2668            NVL(dist.from_acctd_amount_cr,0)
2669              -NVL(dist.from_acctd_amount_dr,0)
2670         END,                     -- FROM_ACCTD_AMOUNT
2671          --{BUG#4356088
2672           gt.event_type_code
2673          ,gt.event_class_code
2674          ,gt.entity_code
2675          --BUG#4645389
2676          ,tlt.tax_line_id       --tax_line_id
2677          --BUG5366837
2678          ,app.upgrade_method
2679          ,'N'                    --MFAR_ADDITIONAL_ENTRY
2680       FROM xla_events_gt                  gt,
2681            ar_receivable_applications_all app,
2682            ar_distributions_all           dist,
2683            gl_sets_of_books               sob,
2684            oe_system_parameters_all       osp,
2685            ra_customer_trx_all            trxt,
2686            ra_customer_trx_lines_all      tlt,
2687            ra_cust_trx_line_gl_dist_all   gldt,
2688            ar_payment_schedules_all       psch,
2689            ar_cash_receipts_all           cr
2690      WHERE gt.event_type_code IN (  'RECP_CREATE'      ,'RECP_UPDATE'      ,
2691                                     'RECP_RATE_ADJUST' ) -- Uptake XLA reversal, 'RECP_REVERSE')
2692 -- Exclude 'RECP_REVERSE' for no extract at line level is reuired for Reversal
2693        AND gt.application_id                 = p_application_id
2694        AND gt.event_id                       = app.event_id
2695        AND (app.upgrade_method              IN ('R12_NLB','R12', 'R12_11IMFAR', 'R12_11ICASH','11I_R12_POST')
2696             OR (app.upgrade_method IS NULL AND app.status = 'APP')  --11i Accrual
2697 			--Need to add PSA upgrade impact
2698 			OR (DECODE(app.upgrade_method,
2699                        '11I_MFAR_UPG'    ,DECODE(dist.source_table_secondary,'UPMFRAMIAR','Y','N'),
2700                         'N')                  = 'Y'))
2701        AND app.set_of_books_id               = sob.set_of_books_id
2702        AND app.org_id                        = osp.org_id(+)
2703        AND app.applied_customer_trx_id       = trxt.customer_trx_id
2704        --5201086
2705        AND app.cash_receipt_id               = cr.cash_receipt_id
2706        AND dist.source_id                    = app.receivable_application_id
2707        AND dist.source_table                 = 'RA'
2708        AND dist.ref_customer_trx_line_id     = tlt.customer_trx_line_id(+)
2709        AND dist.ref_cust_trx_line_gl_dist_id = gldt.cust_trx_line_gl_dist_id(+)
2710        AND trxt.customer_trx_id              = psch.customer_trx_id
2711        AND NVL(psch.terms_sequence_number,1) = 1
2712 --{Pass also the UNAPP UNID ... everything
2713 --       AND dist.source_type                  IN ('REC','EDISC','UNEDISC')
2714 --}
2715 --}
2716 --       AND dist.activity_bucket                       IS NOT NULL
2717     UNION ALL
2718         SELECT /*+LEADING(gt) USE_NL(gt, app)*/
2719            gt.event_id,                      -- EVENT_ID
2720            dist.line_id,                     -- LINE_NUMBER
2721            '',                               -- LANGUAGE
2722            sob.set_of_books_id,              -- LEDGER_ID
2723            dist.source_id,                   -- SOURCE_ID
2724            dist.source_table,                -- SOURCE_TABLE
2725            dist.line_id,                     -- LINE_ID
2726            dist.tax_code_id,                 -- TAX_CODE_ID
2727            dist.location_segment_id,         -- LOCATION_SEGMENT_ID
2728            sob.currency_code,                -- BASE_CURRENCY
2729            trxt.exchange_rate_type,          -- EXCHANGE_RATE_TYPE
2730            trxt.exchange_rate,               -- EXCHANGE_RATE
2731            trxt.exchange_date,               -- EXCHANGE_DATE
2732            NVL(dist.acctd_amount_cr,0) -
2733                 NVL(dist.acctd_amount_dr,0),      -- ACCTD_AMOUNT
2734            NVL(dist.taxable_accounted_cr,0) -
2735                 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
2736            app.org_id,                       -- ORG_ID
2737            app.receivable_application_id,    -- HEADER_TABLE_ID
2738            'APP',                            -- POSTING_ENTITY
2739            NULL,                             -- CASH_RECEIPT_ID
2740            trxt.customer_trx_id,             -- CUSTOMER_TRX_ID
2741            tlt.customer_trx_line_id,         -- CUSTOMER_TRX_LINE_ID
2742            gldt.cust_trx_line_gl_dist_id,    -- CUST_TRX_LINE_GL_DIST_ID
2743            gldt.cust_trx_line_salesrep_id,   --  CUST_TRX_LINE_SALESREP_ID
2744            tlt.inventory_item_id,            -- INVENTORY_ITEM_ID
2745            tlt.sales_tax_id,                 -- SALES_TAX_ID
2746            osp.master_organization_id,       -- SO_ORGANIZATION_ID
2747            tlt.tax_exemption_id,             -- TAX_EXEMPTION_ID
2748            tlt.uom_code,                     -- UOM_CODE
2749            tlt.warehouse_id,                 -- WAREHOUSE_ID
2750            trxt.agreement_id,                -- AGREEMENT_ID
2751            trxt.customer_bank_account_id,    -- CUSTOMER_BANK_ACCT_ID
2752            trxt.drawee_bank_account_id,      -- DRAWEE_BANK_ACCOUNT_ID
2753            trxt.remit_bank_acct_use_id,  -- REMITTANCE_BANK_ACCT_ID
2754            NULL,                             -- DISTRIBUTION_SET_ID
2755            psch.payment_schedule_id,         -- PAYMENT_SCHEDULE_ID
2756            trxt.receipt_method_id,           -- RECEIPT_METHOD_ID
2757            NULL,                             -- RECEIVABLES_TRX_ID
2758            NULL,                             -- ED_ADJ_RECEIVABLES_TRX_ID
2759            NULL,                             -- UNED_RECEIVABLES_TRX_ID
2760            trxt.set_of_books_id,             -- SET_OF_BOOKS_ID
2761            trxt.primary_salesrep_id,         -- SALESREP_ID
2762            trxt.bill_to_site_use_id,         -- BILL_SITE_USE_ID
2763            trxt.drawee_site_use_id,          -- DRAWEE_SITE_USE_ID
2764            trxt.paying_site_use_id,          -- PAYING_SITE_USE_ID
2765            trxt.sold_to_site_use_id,         -- SOLD_SITE_USE_ID
2766            trxt.ship_to_site_use_id,         -- SHIP_SITE_USE_ID
2767            NULL,                             -- RECEIPT_CUSTOMER_SITE_USE_ID
2768            trxt.bill_to_contact_id,          -- BILL_CUST_ROLE_ID
2769            trxt.drawee_contact_id,           -- DRAWEE_CUST_ROLE_ID
2770            trxt.ship_to_contact_id,          -- SHIP_CUST_ROLE_ID
2771            trxt.sold_to_contact_id,          -- SOLD_CUST_ROLE_ID
2772            trxt.bill_to_customer_id,         -- BILL_CUSTOMER_ID
2773            trxt.drawee_id,                   -- DRAWEE_CUSTOMER_ID
2774            trxt.paying_customer_id,          -- PAYING_CUSTOMER_ID
2775            trxt.sold_to_customer_id,         -- SOLD_CUSTOMER_ID
2776            trxt.ship_to_customer_id,         -- SHIP_CUSTOMER_ID
2777            trxt.remit_to_address_id,         -- REMIT_ADDRESS_ID
2778            NULL,                             -- RECEIPT_BATCH_ID
2779            NULL,                             -- RECEIVABLE_APPLICATION_ID
2780            NULL,                             -- CUSTOMER_BANK_BRANCH_ID
2781            NULL,                             -- ISSUER_BANK_BRANCH_ID
2782            trxt.batch_source_id,             -- BATCH_SOURCE_ID
2783            trxt.batch_id,                    -- BATCH_ID
2784            trxt.term_id,                     -- TERM_ID
2785            'Y',                              -- SELECT_FLAG
2786            'L',                              -- LEVEL_FLAG
2787            'T',                              -- FROM_TO_FLAG
2788 --           NVL(dist.from_amount_cr,0) -NVL(dist.from_amount_dr,0),    -- FROM_AMOUNT,
2789          CASE WHEN (dist.from_amount_cr IS NULL AND dist.from_amount_dr IS NULL) THEN
2790            NVL(dist.amount_cr,0) - NVL(dist.amount_dr,0)
2791          ELSE
2792            NVL(dist.from_amount_cr,0) - NVL(dist.from_amount_dr,0)
2793          END,                                                     -- FROM_AMOUNT
2794            NVL(dist.amount_cr,0) -NVL(dist.amount_dr,0),          -- AMOUNT
2795 --           NVL(dist.from_acctd_amount_cr,0) -NVL(dist.from_acctd_amount_dr,0) -- FROM_ACCTD_AMOUNT
2796          CASE WHEN (dist.from_acctd_amount_cr IS NULL AND dist.from_acctd_amount_dr IS NULL) THEN
2797            NVL(dist.acctd_amount_cr,0) - NVL(dist.acctd_amount_dr,0)
2798          ELSE
2799            NVL(dist.from_acctd_amount_cr,0) - NVL(dist.from_acctd_amount_dr,0)
2800          END,                                                     -- FROM_ACCTD_MOUNT
2801          --{BUG#4356088
2802           gt.event_type_code
2803          ,gt.event_class_code
2804          ,gt.entity_code
2805          --BUG#4645389
2806          ,tlt.tax_line_id       --tax_line_id
2807          --BUG#5366837
2808          ,app.upgrade_method
2809          ,'N'                    --MFAR_ADDITIONAL_ENTRY
2810       FROM xla_events_gt                  gt,
2811            ar_receivable_applications_all app,
2812            ar_distributions_all           dist,
2813            gl_sets_of_books               sob,
2814            oe_system_parameters_all       osp,
2815            ra_customer_trx_all            trxt,
2816            ra_customer_trx_lines_all      tlt,
2817            ra_cust_trx_line_gl_dist_all   gldt,
2818            ar_payment_schedules_all       psch
2819      WHERE gt.event_type_code  IN (  'CM_CREATE','CM_UPDATE' )
2820        AND gt.application_id                 = p_application_id
2821        AND gt.event_id                       = app.event_id
2822        AND (app.upgrade_method IN ('R12_NLB','R12', 'R12_11IMFAR', 'R12_11ICASH','11I_R12_POST')
2823             OR (app.upgrade_method IS NULL AND app.status = 'APP')
2824             OR (DECODE(app.upgrade_method,
2825                        '11I_MFAR_UPG'    ,DECODE(dist.source_table_secondary,'UPMFRAMIAR','Y','N'),
2826                         'N')                 = 'Y'))
2827        AND dist.source_table                 = 'RA'
2828        AND dist.source_id                    = app.receivable_application_id
2829        AND app.set_of_books_id               = sob.set_of_books_id
2830        AND app.org_id                        = osp.org_id(+)
2831        AND app.applied_customer_trx_id       = trxt.customer_trx_id
2832        AND dist.ref_customer_trx_line_id     = tlt.customer_trx_line_id(+)
2833        AND dist.ref_cust_trx_line_gl_dist_id = gldt.cust_trx_line_gl_dist_id(+)
2834        AND trxt.customer_trx_id              = psch.customer_trx_id
2835        AND NVL(psch.terms_sequence_number,1) = 1
2836 -- {Pass every distributions REC EDISC UNEDISC UNAPP UNID
2837 --       AND dist.source_type                  IN ('REC','EDISC','UNEDISC')
2838 -- }
2839 --       AND dist.activity_bucket                       IS NOT NULL
2840 /* Bug 6119725 Begin Changes */
2841          AND (( dist.ref_cust_trx_line_gl_dist_id IS NOT NULL
2842                         AND dist.ref_cust_trx_line_gl_dist_id IN (SELECT cust_trx_line_gl_dist_id
2843                                                        FROM ra_cust_trx_line_gl_dist_all ctlgd
2844                                                        WHERE ctlgd.customer_trx_id =  app.applied_customer_trx_id)) -- Select only TO rows which belong to Invoice
2845           OR  ((dist.ref_cust_trx_line_gl_dist_id IS NULL
2846                 AND 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))
2847                 AND (((sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0)))*-1) <> 0)
2848                    OR
2849                     ((sign((app.amount_applied+nvl(app.earned_discount_taken,0)+nvl(app.unearned_discount_taken,0)))*-1 = 0)
2850                         AND dist.amount_dr is not null)))))
2851 
2852 /* Bug 6119725 End Changes */
2853 
2854 UNION
2855 --HYUCMACT
2856        SELECT /*+LEADING(gt) USE_NL(gt, app)*/
2857            gt.event_id,                      -- EVENT_ID
2858            dist.line_id,                     -- LINE_NUMBER
2859            '',                               -- LANGUAGE
2860            sob.set_of_books_id,              -- LEDGER_ID
2861            dist.source_id,                   -- SOURCE_ID
2862            dist.source_table,                -- SOURCE_TABLE
2863            dist.line_id,                     -- LINE_ID
2864            dist.tax_code_id,                 -- TAX_CODE_ID
2865            dist.location_segment_id,         -- LOCATION_SEGMENT_ID
2866            sob.currency_code,                -- BASE_CURRENCY
2867            trx.EXCHANGE_RATE_TYPE,               -- EXCHANGE_RATE_TYPE
2868            trx.EXCHANGE_RATE,               -- EXCHANGE_RATE
2869            trx.EXCHANGE_DATE,               -- EXCHANGE_DATE
2870            NVL(dist.acctd_amount_cr,0) -
2871                 NVL(dist.acctd_amount_dr,0),      -- ACCTD_AMOUNT
2872            NVL(dist.taxable_accounted_cr,0) -
2873                 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
2874            app.org_id,                       -- ORG_ID
2875            app.receivable_application_id,    -- HEADER_TABLE_ID
2876            'APP',                            -- POSTING_ENTITY
2877            NULL,                             -- CASH_RECEIPT_ID
2878            app.customer_trx_id,              -- CUSTOMER_TRX_ID
2879            NULL,         -- CUSTOMER_TRX_LINE_ID
2880            NULL,         -- CUST_TRX_LINE_GL_DIST_ID
2881            NULL,         --  CUST_TRX_LINE_SALESREP_ID
2882            NULL,         -- INVENTORY_ITEM_ID
2883            NULL,         -- SALES_TAX_ID
2884            NULL,         -- SO_ORGANIZATION_ID
2885            NULL,         -- TAX_EXEMPTION_ID
2886            NULL,         -- UOM_CODE
2887            NULL,         -- WAREHOUSE_ID
2888            NULL,         -- AGREEMENT_ID
2889            NULL,         -- CUSTOMER_BANK_ACCT_ID
2890            NULL,         -- DRAWEE_BANK_ACCOUNT_ID
2891            NULL,         -- REMITTANCE_BANK_ACCT_ID
2892            NULL,         -- DISTRIBUTION_SET_ID
2893            NULL,         -- PAYMENT_SCHEDULE_ID
2894            NULL,         -- RECEIPT_METHOD_ID
2895            app.receivables_trx_id,         -- RECEIVABLES_TRX_ID
2896            NULL,         -- ED_ADJ_RECEIVABLES_TRX_ID
2897            NULL,         -- UNED_RECEIVABLES_TRX_ID
2898            app.set_of_books_id,         -- SET_OF_BOOKS_ID
2899            NULL,         -- SALESREP_ID
2900            trx.BILL_TO_SITE_USE_ID,         -- BILL_SITE_USE_ID
2901            NULL,         -- DRAWEE_SITE_USE_ID
2902            NULL,         -- PAYING_SITE_USE_ID
2903            trx.SOLD_TO_SITE_USE_ID,         -- SOLD_SITE_USE_ID
2904            trx.SHIP_TO_SITE_USE_ID,         -- SHIP_SITE_USE_ID
2905            NULL,         -- RECEIPT_CUSTOMER_SITE_USE_ID
2906            NULL,         -- BILL_CUST_ROLE_ID
2907            NULL,         -- DRAWEE_CUST_ROLE_ID
2908            NULL,         -- SHIP_CUST_ROLE_ID
2909            NULL,         -- SOLD_CUST_ROLE_ID
2910            trx.BILL_TO_CUSTOMER_ID,         -- BILL_CUSTOMER_ID
2911            NULL,         -- DRAWEE_CUSTOMER_ID
2912            NULL,         -- PAYING_CUSTOMER_ID
2913            trx.SOLD_TO_CUSTOMER_ID,         -- SOLD_CUSTOMER_ID
2914            trx.SHIP_TO_CUSTOMER_ID,         -- SHIP_CUSTOMER_ID
2915            NULL,         -- REMIT_ADDRESS_ID
2916            NULL,         -- RECEIPT_BATCH_ID
2917            app.receivable_application_id,    -- RECEIVABLE_APPLICATION_ID
2918            NULL,                             -- CUSTOMER_BANK_BRANCH_ID
2919            NULL,                             -- ISSUER_BANK_BRANCH_ID
2920            NULL,                     -- BATCH_SOURCE_ID
2921            NULL,                     -- BATCH_ID
2922            NULL,                     -- TERM_ID
2923            'Y',                              -- SELECT_FLAG
2924            'L',                              -- LEVEL_FLAG
2925            'T',                              -- FROM_TO_FLAG
2926            NVL(dist.amount_cr,0) - NVL(dist.amount_dr,0),  -- FROM_AMOUNT
2927            NVL(dist.amount_cr,0) -NVL(dist.amount_dr,0),             -- AMOUNT
2928            NVL(dist.acctd_amount_cr,0) - NVL(dist.acctd_amount_dr,0), -- FROM_ACCTD_MOUNT
2929           gt.event_type_code
2930          ,gt.event_class_code
2931          ,gt.entity_code
2932          ,NULL       --tax_line_id
2933          --BUG#5366837
2934          ,app.upgrade_method
2935          ,'N'                    --MFAR_ADDITIONAL_ENTRY
2936       FROM xla_events_gt                  gt,
2937            ar_receivable_applications_all app,
2938            ar_distributions_all           dist,
2939            gl_sets_of_books               sob,
2940            ra_customer_trx_all            trx
2941      WHERE gt.event_type_code  IN (  'CM_CREATE','CM_UPDATE' )
2942        AND gt.application_id                 = p_application_id
2943        AND gt.event_id                       = app.event_id
2944        AND dist.source_table                 = 'RA'
2945        AND dist.source_id                    = app.receivable_application_id
2946        AND app.status                        = 'ACTIVITY'
2947        AND app.set_of_books_id               = sob.set_of_books_id
2948        AND trx.customer_trx_id               = app.customer_trx_id
2949        AND dist.source_type                  = 'ACTIVITY';
2950 
2951 
2952 
2953 --BUG#5366837 Cash Basis
2954     INSERT INTO ar_xla_lines_extract (
2955         EVENT_ID
2956        ,LINE_NUMBER
2957        ,LANGUAGE
2958        ,LEDGER_ID
2959        ,SOURCE_ID
2960        ,SOURCE_TABLE
2961        ,LINE_ID
2962        ,TAX_CODE_ID
2963        ,LOCATION_SEGMENT_ID
2964        ,BASE_CURRENCY_CODE
2965        ,EXCHANGE_RATE_TYPE
2966        ,EXCHANGE_RATE
2967        ,EXCHANGE_DATE
2968        ,ACCTD_AMOUNT
2969        ,TAXABLE_ACCTD_AMOUNT
2970        ,ORG_ID
2971        ,HEADER_TABLE_ID
2972        ,POSTING_ENTITY
2973        ,CASH_RECEIPT_ID
2974        ,CUSTOMER_TRX_ID
2975        ,CUSTOMER_TRX_LINE_ID
2976        ,CUST_TRX_LINE_GL_DIST_ID
2977        ,CUST_TRX_LINE_SALESREP_ID
2978        ,INVENTORY_ITEM_ID
2979        ,SALES_TAX_ID
2980        ,SO_ORGANIZATION_ID
2981        ,TAX_EXEMPTION_ID
2982        ,UOM_CODE
2983        ,WAREHOUSE_ID
2984        ,AGREEMENT_ID
2985        ,CUSTOMER_BANK_ACCT_ID
2986        ,DRAWEE_BANK_ACCOUNT_ID
2987        ,REMITTANCE_BANK_ACCT_ID
2988        ,DISTRIBUTION_SET_ID
2989        ,PAYMENT_SCHEDULE_ID
2990        ,RECEIPT_METHOD_ID
2991        ,RECEIVABLES_TRX_ID
2992        ,ED_ADJ_RECEIVABLES_TRX_ID
2993        ,UNED_RECEIVABLES_TRX_ID
2994        ,SET_OF_BOOKS_ID
2995        ,SALESREP_ID
2996        ,BILL_SITE_USE_ID
2997        ,DRAWEE_SITE_USE_ID
2998        ,PAYING_SITE_USE_ID
2999        ,SOLD_SITE_USE_ID
3000        ,SHIP_SITE_USE_ID
3001        ,RECEIPT_CUSTOMER_SITE_USE_ID
3002        ,BILL_CUST_ROLE_ID
3003        ,DRAWEE_CUST_ROLE_ID
3004        ,SHIP_CUST_ROLE_ID
3005        ,SOLD_CUST_ROLE_ID
3006        ,BILL_CUSTOMER_ID
3007        ,DRAWEE_CUSTOMER_ID
3008        ,PAYING_CUSTOMER_ID
3009        ,SOLD_CUSTOMER_ID
3010        ,SHIP_CUSTOMER_ID
3011        ,REMIT_ADDRESS_ID
3012        ,RECEIPT_BATCH_ID
3013        ,RECEIVABLE_APPLICATION_ID
3014        ,CUSTOMER_BANK_BRANCH_ID
3015        ,ISSUER_BANK_BRANCH_ID
3016        ,BATCH_SOURCE_ID
3017        ,BATCH_ID
3018        ,TERM_ID
3019        ,SELECT_FLAG
3020        ,LEVEL_FLAG
3021        ,FROM_TO_FLAG
3022        ,FROM_AMOUNT
3023        ,AMOUNT
3024        ,FROM_ACCTD_AMOUNT
3025        ,event_type_code
3026        ,event_class_code
3027        ,entity_code
3028        ,tax_line_id
3029        ,ADDITIONAL_CHAR1
3030          ,MFAR_ADDITIONAL_ENTRY
3031        )
3032         SELECT /*+LEADING(gt) USE_NL(gt, app)*/
3033             gt.event_id                      -- EVENT_ID
3034            ,acb.cash_basis_distribution_id   -- LINE_NUMBER
3035            ,''                               -- LANGUAGE
3036            ,sob.set_of_books_id              -- LEDGER_ID
3037            ,app.receivable_application_id    -- SOURCE_ID
3038            ,'RA'                             -- SOURCE_TABLE
3039            ,acb.cash_basis_distribution_id   -- LINE_ID
3040            ,NULL                             -- TAX_CODE_ID
3041            ,NULL                             -- LOCATION_SEGMENT_ID
3042            ,sob.currency_code                -- BASE_CURRENCY
3043            ,trxt.exchange_rate_type          -- EXCHANGE_RATE_TYPE
3044            ,trxt.exchange_rate               -- EXCHANGE_RATE
3045            ,trxt.exchange_date               -- EXCHANGE_DATE
3046            ,acb.acctd_amount                 -- ACCTD_AMOUNT
3047            ,NULL                             -- TAXABLE_ACCTD_AMOUNT
3048            ,app.org_id                       -- ORG_ID
3049            ,app.receivable_application_id    -- HEADER_TABLE_ID
3050            ,'APP'                            -- POSTING_ENTITY
3051            ,NULL                             -- CASH_RECEIPT_ID
3052            ,trxt.customer_trx_id             -- CUSTOMER_TRX_ID
3053            ,tlt.customer_trx_line_id         -- CUSTOMER_TRX_LINE_ID
3054            ,gldt.cust_trx_line_gl_dist_id    -- CUST_TRX_LINE_GL_DIST_ID
3055            ,gldt.cust_trx_line_salesrep_id   --  CUST_TRX_LINE_SALESREP_ID
3056            ,tlt.inventory_item_id            -- INVENTORY_ITEM_ID
3057            ,tlt.sales_tax_id                 -- SALES_TAX_ID
3058            ,osp.master_organization_id       -- SO_ORGANIZATION_ID
3059            ,tlt.tax_exemption_id             -- TAX_EXEMPTION_ID
3060            ,tlt.uom_code                     -- UOM_CODE
3061            ,tlt.warehouse_id                 -- WAREHOUSE_ID
3062            ,trxt.agreement_id                -- AGREEMENT_ID
3063            ,trxt.customer_bank_account_id    -- CUSTOMER_BANK_ACCT_ID
3064            ,trxt.drawee_bank_account_id      -- DRAWEE_BANK_ACCOUNT_ID
3065            ,trxt.remit_bank_acct_use_id  -- REMITTANCE_BANK_ACCT_ID
3066            ,NULL                             -- DISTRIBUTION_SET_ID
3067            ,psch.payment_schedule_id         -- PAYMENT_SCHEDULE_ID
3068            ,trxt.receipt_method_id           -- RECEIPT_METHOD_ID
3069            ,NULL                             -- RECEIVABLES_TRX_ID
3070            ,NULL                             -- ED_ADJ_RECEIVABLES_TRX_ID
3071            ,NULL                             -- UNED_RECEIVABLES_TRX_ID
3072            ,trxt.set_of_books_id             -- SET_OF_BOOKS_ID
3073            ,trxt.primary_salesrep_id         -- SALESREP_ID
3074            ,trxt.bill_to_site_use_id         -- BILL_SITE_USE_ID
3075            ,trxt.drawee_site_use_id          -- DRAWEE_SITE_USE_ID
3076            ,trxt.paying_site_use_id          -- PAYING_SITE_USE_ID
3077            ,trxt.sold_to_site_use_id         -- SOLD_SITE_USE_ID
3078            ,trxt.ship_to_site_use_id         -- SHIP_SITE_USE_ID
3079            ,NULL                             -- RECEIPT_CUSTOMER_SITE_USE_ID
3080            ,trxt.bill_to_contact_id          -- BILL_CUST_ROLE_ID
3081            ,trxt.drawee_contact_id           -- DRAWEE_CUST_ROLE_ID
3082            ,trxt.ship_to_contact_id          -- SHIP_CUST_ROLE_ID
3083            ,trxt.sold_to_contact_id          -- SOLD_CUST_ROLE_ID
3084            ,trxt.bill_to_customer_id         -- BILL_CUSTOMER_ID
3085            ,trxt.drawee_id                   -- DRAWEE_CUSTOMER_ID
3086            ,trxt.paying_customer_id          -- PAYING_CUSTOMER_ID
3087            ,trxt.sold_to_customer_id         -- SOLD_CUSTOMER_ID
3088            ,trxt.ship_to_customer_id         -- SHIP_CUSTOMER_ID
3089            ,trxt.remit_to_address_id         -- REMIT_ADDRESS_ID
3090            ,NULL                             -- RECEIPT_BATCH_ID
3091            ,NULL                             -- RECEIVABLE_APPLICATION_ID
3092            ,NULL                             -- CUSTOMER_BANK_BRANCH_ID
3093            ,NULL                             -- ISSUER_BANK_BRANCH_ID
3094            ,trxt.batch_source_id             -- BATCH_SOURCE_ID
3095            ,trxt.batch_id                    -- BATCH_ID
3096            ,trxt.term_id                     -- TERM_ID
3097            ,'Y'                              -- SELECT_FLAG
3098            ,'L'                              -- LEVEL_FLAG
3099            ,'T'                              -- FROM_TO_FLAG
3100            ,acb.from_amount                  -- FROM_AMOUNT
3101            ,acb.amount                       -- AMOUNT
3102            ,acb.from_acctd_amount            -- FROM_ACCTD_AMOUNT
3103            ,gt.event_type_code
3104            ,gt.event_class_code
3105            ,gt.entity_code
3106            ,tlt.tax_line_id                  --tax_line_id
3107            ,app.upgrade_method
3108          ,'N'                    --MFAR_ADDITIONAL_ENTRY
3109       FROM xla_events_gt                  gt,
3110            ar_receivable_applications_all app,
3111            AR_CASH_BASIS_DISTS_ALL        acb,
3112            gl_sets_of_books               sob,
3113            oe_system_parameters_all       osp,
3114            ra_customer_trx_all            trxt,
3115            ra_customer_trx_lines_all      tlt,
3116            ra_cust_trx_line_gl_dist_all   gldt,
3117            ar_payment_schedules_all       psch,
3118            ar_system_parameters_all        ars
3119      WHERE gt.event_type_code IN (  'RECP_CREATE'      ,'RECP_UPDATE',
3120                                     'RECP_RATE_ADJUST' ) --Uptake XLA Reversal, 'RECP_REVERSE')
3121        AND gt.application_id                 = p_application_id
3122        AND gt.event_id                       = app.event_id
3123        AND app.receivable_application_id     = acb.receivable_application_id
3124        AND app.upgrade_method                = 'R12_11ICASH_POST'
3125        AND acb.receivable_application_id     = app.receivable_application_id
3126        AND app.set_of_books_id               = sob.set_of_books_id
3127        AND app.org_id                        = osp.org_id(+)
3128        AND app.applied_customer_trx_id       = trxt.customer_trx_id
3129        AND acb.REF_CUSTOMER_TRX_LINE_ID      = tlt.customer_trx_line_id(+)
3130        AND acb.ref_cust_trx_line_gl_dist_id  = gldt.cust_trx_line_gl_dist_id(+)
3131        AND trxt.customer_trx_id              = psch.customer_trx_id
3132        AND NVL(psch.terms_sequence_number,1) = 1
3133        AND ars.org_id                        = app.org_id
3134        AND ars.ACCOUNTING_METHOD             = 'CASH'
3135     UNION ALL
3136         SELECT /*+LEADING(gt) USE_NL(gt, app)*/
3137             gt.event_id                      -- EVENT_ID
3138            ,acb.cash_basis_distribution_id   -- LINE_NUMBER
3139            ,''                               -- LANGUAGE
3140            ,sob.set_of_books_id              -- LEDGER_ID
3141            ,app.receivable_application_id    -- SOURCE_ID
3142            ,'RA'                             -- SOURCE_TABLE
3143            ,acb.cash_basis_distribution_id   -- LINE_ID
3144            ,NULL                             -- TAX_CODE_ID
3145            ,NULL                             -- LOCATION_SEGMENT_ID
3146            ,sob.currency_code                -- BASE_CURRENCY
3147            ,trxt.exchange_rate_type          -- EXCHANGE_RATE_TYPE
3148            ,trxt.exchange_rate               -- EXCHANGE_RATE
3149            ,trxt.exchange_date               -- EXCHANGE_DATE
3150            ,acb.acctd_amount                 -- ACCTD_AMOUNT
3151            ,NULL                             -- TAXABLE_ACCTD_AMOUNT
3152            ,app.org_id                       -- ORG_ID
3153            ,app.receivable_application_id    -- HEADER_TABLE_ID
3154            ,'APP'                            -- POSTING_ENTITY
3155            ,NULL                             -- CASH_RECEIPT_ID
3156            ,trxt.customer_trx_id             -- CUSTOMER_TRX_ID
3157            ,tlt.customer_trx_line_id         -- CUSTOMER_TRX_LINE_ID
3158            ,gldt.cust_trx_line_gl_dist_id    -- CUST_TRX_LINE_GL_DIST_ID
3159            ,gldt.cust_trx_line_salesrep_id   --  CUST_TRX_LINE_SALESREP_ID
3160            ,tlt.inventory_item_id            -- INVENTORY_ITEM_ID
3161            ,tlt.sales_tax_id                 -- SALES_TAX_ID
3162            ,osp.master_organization_id       -- SO_ORGANIZATION_ID
3163            ,tlt.tax_exemption_id             -- TAX_EXEMPTION_ID
3164            ,tlt.uom_code                     -- UOM_CODE
3165            ,tlt.warehouse_id                 -- WAREHOUSE_ID
3166            ,trxt.agreement_id                -- AGREEMENT_ID
3167            ,trxt.customer_bank_account_id    -- CUSTOMER_BANK_ACCT_ID
3168            ,trxt.drawee_bank_account_id      -- DRAWEE_BANK_ACCOUNT_ID
3169            ,trxt.remit_bank_acct_use_id      -- REMITTANCE_BANK_ACCT_ID
3170            ,NULL                             -- DISTRIBUTION_SET_ID
3171            ,psch.payment_schedule_id         -- PAYMENT_SCHEDULE_ID
3172            ,trxt.receipt_method_id           -- RECEIPT_METHOD_ID
3173            ,NULL                             -- RECEIVABLES_TRX_ID
3174            ,NULL                             -- ED_ADJ_RECEIVABLES_TRX_ID
3175            ,NULL                             -- UNED_RECEIVABLES_TRX_ID
3176            ,trxt.set_of_books_id             -- SET_OF_BOOKS_ID
3177            ,trxt.primary_salesrep_id         -- SALESREP_ID
3178            ,trxt.bill_to_site_use_id         -- BILL_SITE_USE_ID
3179            ,trxt.drawee_site_use_id          -- DRAWEE_SITE_USE_ID
3180            ,trxt.paying_site_use_id          -- PAYING_SITE_USE_ID
3181            ,trxt.sold_to_site_use_id         -- SOLD_SITE_USE_ID
3182            ,trxt.ship_to_site_use_id         -- SHIP_SITE_USE_ID
3183            ,NULL                             -- RECEIPT_CUSTOMER_SITE_USE_ID
3184            ,trxt.bill_to_contact_id          -- BILL_CUST_ROLE_ID
3185            ,trxt.drawee_contact_id           -- DRAWEE_CUST_ROLE_ID
3186            ,trxt.ship_to_contact_id          -- SHIP_CUST_ROLE_ID
3187            ,trxt.sold_to_contact_id          -- SOLD_CUST_ROLE_ID
3188            ,trxt.bill_to_customer_id         -- BILL_CUSTOMER_ID
3189            ,trxt.drawee_id                   -- DRAWEE_CUSTOMER_ID
3190            ,trxt.paying_customer_id          -- PAYING_CUSTOMER_ID
3191            ,trxt.sold_to_customer_id         -- SOLD_CUSTOMER_ID
3192            ,trxt.ship_to_customer_id         -- SHIP_CUSTOMER_ID
3193            ,trxt.remit_to_address_id         -- REMIT_ADDRESS_ID
3194            ,NULL                             -- RECEIPT_BATCH_ID
3195            ,NULL                             -- RECEIVABLE_APPLICATION_ID
3196            ,NULL                             -- CUSTOMER_BANK_BRANCH_ID
3197            ,NULL                             -- ISSUER_BANK_BRANCH_ID
3198            ,trxt.batch_source_id             -- BATCH_SOURCE_ID
3199            ,trxt.batch_id                    -- BATCH_ID
3200            ,trxt.term_id                     -- TERM_ID
3201            ,'Y'                              -- SELECT_FLAG
3202            ,'L'                              -- LEVEL_FLAG
3203            ,'T'                              -- FROM_TO_FLAG
3204            ,NULL                             -- FROM_AMOUNT,
3205            ,acb.amount                       -- AMOUNT
3206            ,acb.from_acctd_Amount            -- FROM_ACCTD_AMOUNT
3207            ,gt.event_type_code
3208            ,gt.event_class_code
3209            ,gt.entity_code
3210            ,tlt.tax_line_id                  -- tax_line_id
3211            ,app.upgrade_method
3212          ,'N'                    --MFAR_ADDITIONAL_ENTRY
3213       FROM xla_events_gt                  gt,
3214            ar_receivable_applications_all app,
3215            AR_CASH_BASIS_DISTS_ALL        acb,
3216            gl_sets_of_books               sob,
3217            oe_system_parameters_all       osp,
3218            ra_customer_trx_all            trxt,
3219            ra_customer_trx_lines_all      tlt,
3220            ra_cust_trx_line_gl_dist_all   gldt,
3221            ar_payment_schedules_all       psch,
3222            ar_system_parameters_all        ars
3223      WHERE gt.event_type_code IN (  'CM_CREATE'        ,'CM_UPDATE'    )
3224        AND gt.application_id                 = p_application_id
3225        AND gt.event_id                       = app.event_id
3226        AND app.upgrade_method                = 'R12_11ICASH_POST'
3227        AND acb.receivable_application_id     = app.receivable_application_id
3228        AND app.set_of_books_id               = sob.set_of_books_id
3229        AND app.org_id                        = osp.org_id(+)
3230        AND app.applied_customer_trx_id       = trxt.customer_trx_id
3231        AND acb.ref_customer_trx_line_id     = tlt.customer_trx_line_id(+)
3232        AND acb.ref_cust_trx_line_gl_dist_id = gldt.cust_trx_line_gl_dist_id(+)
3233        AND trxt.customer_trx_id              = psch.customer_trx_id
3234        AND NVL(psch.terms_sequence_number,1) = 1
3235        AND ars.org_id                        = app.org_id
3236        AND ars.ACCOUNTING_METHOD             = 'CASH'
3237        AND acb.ref_cust_trx_line_gl_dist_id  NOT IN
3238            (SELECT cust_trx_line_gl_dist_id
3239               FROM ra_cust_trx_line_gl_dist_all
3240              WHERE customer_trx_id =  gt.source_id_int_1); --Excluding the receivable distribution of the CM
3241 
3242 
3243 
3244    local_log(procedure_name => 'load_line_data_app_to_trx',
3245              p_msg_text     => 'arp_xla_extract_main_pkg.load_line_data_app_to_trx ()-');
3246 EXCEPTION
3247 --  WHEN NO_DATA_FOUND THEN NULL;
3248   WHEN OTHERS THEN
3249    local_log(procedure_name => 'load_line_data_app_to_trx',
3250              p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_app_to_trx '||
3251              arp_global.CRLF || 'Error      :'|| SQLERRM);
3252     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
3253     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
3254          'Procedure :arp_xla_extract_main_pkg.load_line_data_app_to_trx'|| arp_global.CRLF||
3255          'Error     :'||SQLERRM);
3256     FND_MSG_PUB.ADD;
3257   RAISE;
3258 END load_line_data_app_to_trx;
3259 
3260 
3261 --This is no longer usefull as we pass the UNID and the UNAPP as well
3262 -- Leave it for now
3263 PROCEDURE load_line_data_app_unid(p_application_id IN NUMBER DEFAULT 222)
3264 IS
3265 BEGIN
3266    local_log(procedure_name => 'load_line_data_app_unid',
3267              p_msg_text     => 'arp_xla_extract_main_pkg.load_line_data_app_unid ()+');
3268     -- Insert line level data in Line GT with
3269     -- selected_flag = Y
3270     -- level_flag    = L
3271     -- from_to_flag  = T
3272     INSERT INTO ar_xla_lines_extract (
3273         EVENT_ID
3274        ,LINE_NUMBER
3275        ,LANGUAGE
3276        ,LEDGER_ID
3277        ,SOURCE_ID
3278        ,SOURCE_TABLE
3279        ,LINE_ID
3280        ,TAX_CODE_ID
3281        ,LOCATION_SEGMENT_ID
3282        ,BASE_CURRENCY_CODE
3283        ,EXCHANGE_RATE_TYPE
3284        ,EXCHANGE_RATE
3285        ,EXCHANGE_DATE
3286        ,ACCTD_AMOUNT
3287        ,TAXABLE_ACCTD_AMOUNT
3288        ,ORG_ID
3289        ,HEADER_TABLE_ID
3290        ,POSTING_ENTITY
3291        ,CASH_RECEIPT_ID
3292        ,CUSTOMER_TRX_ID
3293        ,CUSTOMER_TRX_LINE_ID
3294        ,CUST_TRX_LINE_GL_DIST_ID
3295        ,CUST_TRX_LINE_SALESREP_ID
3296        ,INVENTORY_ITEM_ID
3297        ,SALES_TAX_ID
3298        ,SO_ORGANIZATION_ID
3299        ,TAX_EXEMPTION_ID
3300        ,UOM_CODE
3301        ,WAREHOUSE_ID
3302        ,AGREEMENT_ID
3303        ,CUSTOMER_BANK_ACCT_ID
3304        ,DRAWEE_BANK_ACCOUNT_ID
3305        ,REMITTANCE_BANK_ACCT_ID
3306        ,DISTRIBUTION_SET_ID
3307        ,PAYMENT_SCHEDULE_ID
3308        ,RECEIPT_METHOD_ID
3309        ,RECEIVABLES_TRX_ID
3310        ,ED_ADJ_RECEIVABLES_TRX_ID
3311        ,UNED_RECEIVABLES_TRX_ID
3312        ,SET_OF_BOOKS_ID
3313        ,SALESREP_ID
3314        ,BILL_SITE_USE_ID
3315        ,DRAWEE_SITE_USE_ID
3316        ,PAYING_SITE_USE_ID
3317        ,SOLD_SITE_USE_ID
3318        ,SHIP_SITE_USE_ID
3319        ,RECEIPT_CUSTOMER_SITE_USE_ID
3320        ,BILL_CUST_ROLE_ID
3321        ,DRAWEE_CUST_ROLE_ID
3322        ,SHIP_CUST_ROLE_ID
3323        ,SOLD_CUST_ROLE_ID
3324        ,BILL_CUSTOMER_ID
3325        ,DRAWEE_CUSTOMER_ID
3326        ,PAYING_CUSTOMER_ID
3327        ,SOLD_CUSTOMER_ID
3328        ,SHIP_CUSTOMER_ID
3329        ,REMIT_ADDRESS_ID
3330        ,RECEIPT_BATCH_ID
3331        ,RECEIVABLE_APPLICATION_ID
3332        ,CUSTOMER_BANK_BRANCH_ID
3333        ,ISSUER_BANK_BRANCH_ID
3334        ,BATCH_SOURCE_ID
3335        ,BATCH_ID
3336        ,TERM_ID
3337        ,SELECT_FLAG
3338        ,LEVEL_FLAG
3339        ,FROM_TO_FLAG
3340        ,FROM_AMOUNT
3341        ,AMOUNT
3342        ,FROM_ACCTD_AMOUNT
3343        --{BUG#4356088
3344        ,event_type_code
3345        ,event_class_code
3346        ,entity_code
3347        --}
3348          ,MFAR_ADDITIONAL_ENTRY
3349        )
3350         SELECT /*+LEADING(gt) USE_NL(gt, app)*/
3351            gt.event_id,                      -- EVENT_ID
3352            dist.line_id,                     -- LINE_NUMBER
3353            '',                               -- LANGUAGE
3354            sob.set_of_books_id,              -- LEDGER_ID
3355            dist.source_id,                   -- SOURCE_ID
3356            dist.source_table,                -- SOURCE_TABLE
3357            dist.line_id,                     -- LINE_ID
3358            dist.tax_code_id,                 -- TAX_CODE_ID
3359            dist.location_segment_id,         -- LOCATION_SEGMENT_ID
3360            sob.currency_code,                -- BASE_CURRENCY
3361            NULL,          -- EXCHANGE_RATE_TYPE
3362            NULL,               -- EXCHANGE_RATE
3363            NULL,               -- EXCHANGE_DATE
3364            NVL(dist.acctd_amount_cr,0) -
3365                 NVL(dist.acctd_amount_dr,0),      -- ACCTD_AMOUNT
3366            NVL(dist.taxable_accounted_cr,0) -
3367                 NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
3368            app.org_id,                       -- ORG_ID
3369            app.receivable_application_id,    -- HEADER_TABLE_ID
3370            'APP',                            -- POSTING_ENTITY
3371            NULL,                             -- CASH_RECEIPT_ID
3372            NULL,             -- CUSTOMER_TRX_ID
3373            NULL,         -- CUSTOMER_TRX_LINE_ID
3374            NULL,    -- CUST_TRX_LINE_GL_DIST_ID
3375            NULL,   --  CUST_TRX_LINE_SALESREP_ID
3376            NULL,            -- INVENTORY_ITEM_ID
3377            NULL,                 -- SALES_TAX_ID
3378            NULL,       -- SO_ORGANIZATION_ID
3379            NULL,             -- TAX_EXEMPTION_ID
3380            NULL,                     -- UOM_CODE
3381            NULL,                 -- WAREHOUSE_ID
3382            NULL,                -- AGREEMENT_ID
3383            NULL,    -- CUSTOMER_BANK_ACCT_ID
3384            NULL,      -- DRAWEE_BANK_ACCOUNT_ID
3385            NULL,  -- REMITTANCE_BANK_ACCT_ID
3386            NULL,                             -- DISTRIBUTION_SET_ID
3387            NULL,         -- PAYMENT_SCHEDULE_ID
3388            NULL,           -- RECEIPT_METHOD_ID
3389            NULL,                             -- RECEIVABLES_TRX_ID
3390            NULL,                             -- ED_ADJ_RECEIVABLES_TRX_ID
3391            NULL,                             -- UNED_RECEIVABLES_TRX_ID
3392            NULL,             -- SET_OF_BOOKS_ID
3393            NULL,         -- SALESREP_ID
3394            NULL,         -- BILL_SITE_USE_ID
3395            NULL,          -- DRAWEE_SITE_USE_ID
3396            NULL,          -- PAYING_SITE_USE_ID
3397            NULL,         -- SOLD_SITE_USE_ID
3398            NULL,         -- SHIP_SITE_USE_ID
3399            NULL,                             -- RECEIPT_CUSTOMER_SITE_USE_ID
3400            NULL,          -- BILL_CUST_ROLE_ID
3401            NULL,           -- DRAWEE_CUST_ROLE_ID
3402            NULL,          -- SHIP_CUST_ROLE_ID
3403            NULL,          -- SOLD_CUST_ROLE_ID
3404            NULL,         -- BILL_CUSTOMER_ID
3405            NULL,                   -- DRAWEE_CUSTOMER_ID
3406            NULL,          -- PAYING_CUSTOMER_ID
3407            NULL,         -- SOLD_CUSTOMER_ID
3408            NULL,         -- SHIP_CUSTOMER_ID
3409            NULL,         -- REMIT_ADDRESS_ID
3410            NULL,                             -- RECEIPT_BATCH_ID
3411            NULL,                             -- RECEIVABLE_APPLICATION_ID
3412            NULL,                             -- CUSTOMER_BANK_BRANCH_ID
3413            NULL,                             -- ISSUER_BANK_BRANCH_ID
3414            NULL,             -- BATCH_SOURCE_ID
3415            NULL,                    -- BATCH_ID
3416            NULL,                     -- TERM_ID
3417            'Y',                              -- SELECT_FLAG
3418            'L',                              -- LEVEL_FLAG
3419            'T',                              -- FROM_TO_FLAG
3420            NVL(dist.from_amount_cr,0)
3421              -NVL(dist.from_amount_dr,0),    -- FROM_AMOUNT,
3422            NVL(dist.amount_cr,0)
3423              -NVL(dist.amount_dr,0),          -- AMOUNT
3424            NVL(dist.from_acctd_amount_cr,0)
3425              -NVL(dist.from_acctd_amount_dr,0) -- FROM_ACCTD_AMOUNT
3426          --{BUG#4356088
3427          ,gt.event_type_code
3428          ,gt.event_class_code
3429          ,gt.entity_code
3430          --}
3431          ,'N'                    --MFAR_ADDITIONAL_ENTRY
3432       FROM xla_events_gt                  gt,
3433            ar_receivable_applications_all app,
3434            ar_distributions_all           dist,  --ar_distributions_all dist,
3435            gl_sets_of_books               sob
3436      WHERE gt.event_type_code IN (  'RECP_CREATE'      ,'RECP_UPDATE'      ,
3437                                     'RECP_RATE_ADJUST' ) --Uptake XLA reversal,'RECP_REVERSE')
3438 -- Exclude 'RECP_REVERSE' for no extract at line level is reuired for Reversal
3439        AND gt.application_id                 = p_application_id
3440        AND gt.event_id                       = app.event_id
3441        AND dist.source_table                 = 'RA'
3442        AND dist.source_id                    = app.receivable_application_id
3443        AND app.set_of_books_id               = sob.set_of_books_id
3444        AND dist.source_type                  = 'UNID';
3445 
3446    local_log(procedure_name => 'load_line_data_app_unid',
3447              p_msg_text     => 'arp_xla_extract_main_pkg.load_line_data_app_unid ()-');
3448 
3449 EXCEPTION
3450 --  WHEN NO_DATA_FOUND THEN NULL;
3451   WHEN OTHERS THEN
3452    local_log(procedure_name => 'load_line_data_app_unid',
3453              p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_app_unid '||
3454              arp_global.CRLF || 'Error      :'|| SQLERRM);
3455     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
3456     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
3457          'Procedure :arp_xla_extract_main_pkg.load_line_data_app_to_trx'|| arp_global.CRLF||
3458          'Error     :'||SQLERRM);
3459     FND_MSG_PUB.ADD;
3460   RAISE;
3461 END load_line_data_app_unid;
3462 -------------------------------------------------------------------------------
3463 /*-----------------------------------------------------------------+
3464  | Procedure Name : load_line_data_crh                             |
3465  | Description    : Extract line data for cash receipt and         |
3466  |                  misc cash receipt events                       |
3467  +-----------------------------------------------------------------+
3468  | History        :                                                |
3469  | 23-FEB-2004     Herve Yu    Created due to bug#3419926          |
3470  +-----------------------------------------------------------------*/
3471 PROCEDURE load_line_data_crh(p_application_id IN NUMBER DEFAULT 222)
3472 IS
3473 BEGIN
3474    local_log(procedure_name => 'load_line_data_crh',
3475              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_date_crh ()+');
3476       -- Line data CR in Line GT
3477       -- Selected_flag = N
3478       -- Level_flag    = L
3479    INSERT INTO ar_xla_lines_extract (
3480         EVENT_ID
3481        ,LINE_NUMBER
3482        ,LANGUAGE
3483        ,LEDGER_ID
3484        ,SOURCE_ID
3485        ,SOURCE_TABLE
3486        ,LINE_ID
3487        ,TAX_CODE_ID
3488        ,LOCATION_SEGMENT_ID
3489        ,BASE_CURRENCY_CODE
3490        ,EXCHANGE_RATE_TYPE
3491        ,EXCHANGE_RATE
3492        ,EXCHANGE_DATE
3493        ,ACCTD_AMOUNT
3494        ,TAXABLE_ACCTD_AMOUNT
3495        ,ORG_ID
3496        ,HEADER_TABLE_ID
3497        ,POSTING_ENTITY
3498        ,CASH_RECEIPT_ID
3499        ,CUSTOMER_TRX_ID
3500        ,CUSTOMER_TRX_LINE_ID
3501        ,CUST_TRX_LINE_GL_DIST_ID
3502        ,CUST_TRX_LINE_SALESREP_ID
3503        ,INVENTORY_ITEM_ID
3504        ,SALES_TAX_ID
3505        ,SO_ORGANIZATION_ID
3506        ,TAX_EXEMPTION_ID
3507        ,UOM_CODE
3508        ,WAREHOUSE_ID
3509        ,AGREEMENT_ID
3510        ,CUSTOMER_BANK_ACCT_ID
3511        ,DRAWEE_BANK_ACCOUNT_ID
3512        ,REMITTANCE_BANK_ACCT_ID
3513        ,DISTRIBUTION_SET_ID
3514        ,PAYMENT_SCHEDULE_ID
3515        ,RECEIPT_METHOD_ID
3516        ,RECEIVABLES_TRX_ID
3517        ,ED_ADJ_RECEIVABLES_TRX_ID
3518        ,UNED_RECEIVABLES_TRX_ID
3519        ,SET_OF_BOOKS_ID
3520        ,SALESREP_ID
3521        ,BILL_SITE_USE_ID
3522        ,DRAWEE_SITE_USE_ID
3523        ,PAYING_SITE_USE_ID
3524        ,SOLD_SITE_USE_ID
3525        ,SHIP_SITE_USE_ID
3526        ,RECEIPT_CUSTOMER_SITE_USE_ID
3527        ,BILL_CUST_ROLE_ID
3528        ,DRAWEE_CUST_ROLE_ID
3529        ,SHIP_CUST_ROLE_ID
3530        ,SOLD_CUST_ROLE_ID
3531        ,BILL_CUSTOMER_ID
3532        ,DRAWEE_CUSTOMER_ID
3533        ,PAYING_CUSTOMER_ID
3534        ,SOLD_CUSTOMER_ID
3535        ,SHIP_CUSTOMER_ID
3536        ,REMIT_ADDRESS_ID
3537        ,RECEIPT_BATCH_ID
3538        ,RECEIVABLE_APPLICATION_ID
3539        ,CUSTOMER_BANK_BRANCH_ID
3540        ,ISSUER_BANK_BRANCH_ID
3541        ,BATCH_SOURCE_ID
3542        ,BATCH_ID
3543        ,TERM_ID
3544        ,SELECT_FLAG
3545        ,LEVEL_FLAG
3546        ,FROM_TO_FLAG
3547        ,CRH_STATUS
3548        ,CRH_PRV_STATUS
3549        ,AMOUNT
3550        --{BUG#4356088
3551        ,event_type_code
3552        ,event_class_code
3553        ,entity_code
3554        --}
3555          ,MFAR_ADDITIONAL_ENTRY
3556        )
3557         SELECT /*+LEADING(gt) USE_NL(gt,crh)*/
3558            gt.event_id,                      -- EVENT_ID
3559            dist.line_id,                     -- LINE_NUMBER
3560            '',                               -- LANGUAGE
3561            sob.set_of_books_id,              -- LEDGER_ID
3562            dist.source_id,                   -- SOURCE_ID
3563            dist.source_table,                -- SOURCE_TABLE
3564            dist.line_id,                     -- LINE_ID
3565            dist.tax_code_id,                 -- TAX_CODE_ID
3566            dist.location_segment_id,         -- LOCATION_SEGMENT_ID
3567            sob.currency_code,                -- BASE_CURRENCY
3568            crh.exchange_rate_type,            -- EXCHANGE_RATE_TYPE
3569            crh.exchange_rate     ,            -- EXCHANGE_RATE
3570            crh.exchange_date     ,            -- EXCHANGE_DATE
3571            NVL(dist.acctd_amount_cr,0)
3572              - NVL(dist.acctd_amount_dr,0) ,      -- ACCTD_AMOUNT
3573            NVL(dist.taxable_accounted_cr,0)
3574              - NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
3575            crh.org_id,                       -- ORG_ID
3576            crh.cash_receipt_history_id,      -- HEADER_TABLE_ID
3577            'CRH',                            -- POSTING_ENTITY
3578            crh.cash_receipt_id,               -- CASH_RECEIPT_ID
3579            NULL,                             -- CUSTOMER_TRX_ID
3580            NULL,                             -- CUSTOMER_TRX_LINE_ID
3581            NULL,                             -- CUST_TRX_LINE_GL_DIST_ID
3582            NULL,                             -- CUST_TRX_LINE_SALESREP_ID
3583            NULL,                             -- INVENTORY_ITEM_ID
3584            NULL,                             -- SALES_TAX_ID
3585            NULL,                             -- SO_ORGANIZATION_ID
3586            NULL,                             -- TAX_EXEMPTION_ID
3587            NULL,                             -- UOM_CODE
3588            NULL,                             -- WAREHOUSE_ID
3589            NULL,                             -- AGREEMENT_ID
3590            NULL,                             -- CUSTOMER_BANK_ACCT_ID
3591            NULL,                             -- DRAWEE_BANK_ACCOUNT_ID
3592            NULL,                             -- REMITTANCE_BANK_ACCT_ID
3593            NULL,                             -- DISTRIBUTION_SET_ID
3594            NULL,                             -- PAYMENT_SCHEDULE_ID
3595            NULL,                             -- RECEIPT_METHOD_ID
3596            NULL,                             -- RECEIVABLES_TRX_ID
3597            NULL,                             -- ED_ADJ_RECEIVABLES_TRX_ID
3598            NULL,                             -- UNED_RECEIVABLES_TRX_ID
3599            sob.set_of_books_id,              -- SET_OF_BOOKS_ID
3600            NULL,                               -- SALESREP_ID
3601            NULL,                               -- BILL_SITE_USE_ID
3602            NULL,                               -- DRAWEE_SITE_USE_ID
3603            NULL,                               -- PAYING_SITE_USE_ID
3604            NULL,                               -- SOLD_SITE_USE_ID
3605            NULL,                               -- SHIP_SITE_USE_ID
3606            NULL,                               -- RECEIPT_CUSTOMER_SITE_USE_ID
3607            NULL,                               -- BILL_CUST_ROLE_ID
3608            NULL,                               -- DRAWEE_CUST_ROLE_ID
3609            NULL,                               -- SHIP_CUST_ROLE_ID
3610            NULL,                               -- SOLD_CUST_ROLE_ID
3611            NULL,                               -- BILL_CUSTOMER_ID
3612            NULL,                               -- DRAWEE_CUSTOMER_ID
3613            NULL,                               -- PAYING_CUSTOMER_ID
3614            NULL,                               -- SOLD_CUSTOMER_ID
3615            NULL,                               -- SHIP_CUSTOMER_ID
3616            NULL,                               -- REMIT_ADDRESS_ID
3617            NULL,                               -- RECEIPT_BATCH_ID
3618            NULL,                               -- RECEIVABLE_APPLICATION_ID
3619            NULL,                               -- CUSTOMER_BANK_BRANCH_ID
3620            NULL,                               -- ISSUER_BANK_BRANCH_ID
3621            NULL,                               -- BATCH_SOURCE_ID
3622            NULL,                               -- BATCH_ID
3623            NULL,                               -- TERM_ID
3624            'N',                              -- SELECT_FLAG
3625            'L',                              -- LEVEL_FLAG
3626            '' ,                               -- FROM_TO_FLAG
3627            crh.status,                        -- CRH_STATUS
3628            pcrh.status,                       -- CRH_PRV_STATUS
3629            NVL(dist.amount_cr,0)
3630              - NVL(dist.amount_dr,0)          -- AMOUNT
3631          --{BUG#4356088
3632          ,gt.event_type_code
3633          ,gt.event_class_code
3634          ,gt.entity_code
3635          ,'N'                    --MFAR_ADDITIONAL_ENTRY
3636          --}
3637       FROM xla_events_gt                  gt,
3638            ar_cash_receipts_all           cr,
3639            ar_cash_receipt_history_all    crh,
3640            ar_distributions_all           dist,
3641            gl_sets_of_books               sob,
3642            ar_cash_receipt_history_all    pcrh
3643      WHERE gt.event_type_code IN (  'RECP_CREATE'          ,'RECP_UPDATE'        ,
3644                                     'MISC_RECP_CREATE'     ,'MISC_RECP_UPDATE'   ,
3645                                     --Uptake XLA Reversal  'RECP_REVERSE'         ,'MISC_RECP_REVERSE'  ,
3646                                     --5201086
3647                                     'RECP_RATE_ADJUST'     ,'MISC_RECP_RATE_ADJUST')
3648        AND gt.application_id                   = p_application_id
3649        AND gt.event_id                         = crh.event_id
3650        AND crh.cash_receipt_id                 = cr.cash_receipt_id
3651        AND dist.source_table                   = 'CRH'
3652        AND dist.source_id                      = crh.cash_receipt_history_id
3653        AND cr.set_of_books_id                  = sob.set_of_books_id
3654        AND crh.prv_stat_cash_receipt_hist_id   = pcrh.cash_receipt_history_id(+);
3655 --RateAdj
3656 --       AND crh.status                          = rateadj.status(+)
3657 --       AND crh.cash_receipt_id                 = rateadj.cash_receipt_id(+);
3658 
3659 
3660 --Extrating REVERSE
3661 -- Needs to return 1 distribution row in case of Cash Receipt life cycle
3662 --       AND DECODE(crh.status,'REVERSED','X',dist.source_type) =
3663 --                                   DECODE(crh.status,'CLEARED','CASH',
3664 --                                          'CONFIRMED','CONFIRMATION',
3665 --                                          'REMITTED','REMITTANCE',
3666 --                                         'REVERSED','Y');
3667 
3668 --{Insertion of UNAPP and UNID
3669 --Note all the UNAPP and UNID are inserted here
3670    INSERT INTO ar_xla_lines_extract (
3671         EVENT_ID
3672        ,LINE_NUMBER
3673        ,LANGUAGE
3674        ,LEDGER_ID
3675        ,SOURCE_ID
3676        ,SOURCE_TABLE
3677        ,LINE_ID
3678        ,TAX_CODE_ID
3679        ,LOCATION_SEGMENT_ID
3680        ,BASE_CURRENCY_CODE
3681        ,EXCHANGE_RATE_TYPE
3682        ,EXCHANGE_RATE
3683        ,EXCHANGE_DATE
3684        ,ACCTD_AMOUNT
3685        ,TAXABLE_ACCTD_AMOUNT
3686        ,ORG_ID
3687        ,HEADER_TABLE_ID
3688        ,POSTING_ENTITY
3689        ,CASH_RECEIPT_ID
3690        ,CUSTOMER_TRX_ID
3691        ,CUSTOMER_TRX_LINE_ID
3692        ,CUST_TRX_LINE_GL_DIST_ID
3693        ,CUST_TRX_LINE_SALESREP_ID
3694        ,INVENTORY_ITEM_ID
3695        ,SALES_TAX_ID
3696        ,SO_ORGANIZATION_ID
3697        ,TAX_EXEMPTION_ID
3698        ,UOM_CODE
3699        ,WAREHOUSE_ID
3700        ,AGREEMENT_ID
3701        ,CUSTOMER_BANK_ACCT_ID
3702        ,DRAWEE_BANK_ACCOUNT_ID
3703        ,REMITTANCE_BANK_ACCT_ID
3704        ,DISTRIBUTION_SET_ID
3705        ,PAYMENT_SCHEDULE_ID
3706        ,RECEIPT_METHOD_ID
3707        ,RECEIVABLES_TRX_ID
3708        ,ED_ADJ_RECEIVABLES_TRX_ID
3709        ,UNED_RECEIVABLES_TRX_ID
3710        ,SET_OF_BOOKS_ID
3711        ,SALESREP_ID
3712        ,BILL_SITE_USE_ID
3713        ,DRAWEE_SITE_USE_ID
3714        ,PAYING_SITE_USE_ID
3715        ,SOLD_SITE_USE_ID
3716        ,SHIP_SITE_USE_ID
3717        ,RECEIPT_CUSTOMER_SITE_USE_ID
3718        ,BILL_CUST_ROLE_ID
3719        ,DRAWEE_CUST_ROLE_ID
3720        ,SHIP_CUST_ROLE_ID
3721        ,SOLD_CUST_ROLE_ID
3722        ,BILL_CUSTOMER_ID
3723        ,DRAWEE_CUSTOMER_ID
3724        ,PAYING_CUSTOMER_ID
3725        ,SOLD_CUSTOMER_ID
3726        ,SHIP_CUSTOMER_ID
3727        ,REMIT_ADDRESS_ID
3728        ,RECEIPT_BATCH_ID
3729        ,RECEIVABLE_APPLICATION_ID
3730        ,CUSTOMER_BANK_BRANCH_ID
3731        ,ISSUER_BANK_BRANCH_ID
3732        ,BATCH_SOURCE_ID
3733        ,BATCH_ID
3734        ,TERM_ID
3735        ,SELECT_FLAG
3736        ,LEVEL_FLAG
3737        ,FROM_TO_FLAG
3738        ,CRH_STATUS
3739        ,CRH_PRV_STATUS
3740        ,AMOUNT
3741        --{BUG#4356088
3742        ,event_type_code
3743        ,event_class_code
3744        ,entity_code
3745        --}
3746          ,MFAR_ADDITIONAL_ENTRY
3747          ,FROM_ACCTD_AMOUNT         --Bug7255483 Added new column for acctd amount
3748        )
3749         SELECT /*+LEADING(gt) USE_NL(gt,cr)*/
3750            gt.event_id,                      -- EVENT_ID
3751            dist.line_id,                     -- LINE_NUMBER
3752            '',                               -- LANGUAGE
3753            sob.set_of_books_id,              -- LEDGER_ID
3754            dist.source_id,                   -- SOURCE_ID
3755            dist.source_table,                -- SOURCE_TABLE
3756            dist.line_id,                     -- LINE_ID
3757            dist.tax_code_id,                 -- TAX_CODE_ID
3758            dist.location_segment_id,         -- LOCATION_SEGMENT_ID
3759            sob.currency_code,                -- BASE_CURRENCY
3760 --5201086
3761            crh.exchange_rate_type,            -- EXCHANGE_RATE_TYPE
3762            crh.exchange_rate     ,            -- EXCHANGE_RATE
3763            crh.exchange_date     ,            -- EXCHANGE_DATE
3764            NVL(dist.acctd_amount_cr,0)
3765              - NVL(dist.acctd_amount_dr,0),      -- ACCTD_AMOUNT
3766            NVL(dist.taxable_accounted_cr,0)
3767              - NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
3768            cr.org_id,                       -- ORG_ID
3769            app.receivable_application_id,    -- HEADER_TABLE_ID
3770 --{Although the UNAPP and UNID are distributions created from RA the posting entity is CRH
3771 -- but the source_table will be RA
3772            'CRH',                            -- POSTING_ENTITY
3773 --}
3774            cr.cash_receipt_id,               -- CASH_RECEIPT_ID
3775            NULL,                             -- CUSTOMER_TRX_ID
3776            NULL,                             -- CUSTOMER_TRX_LINE_ID
3777            NULL,                             -- CUST_TRX_LINE_GL_DIST_ID
3778            NULL,                             -- CUST_TRX_LINE_SALESREP_ID
3779            NULL,                             -- INVENTORY_ITEM_ID
3780            NULL,                             -- SALES_TAX_ID
3781            NULL,                             -- SO_ORGANIZATION_ID
3782            NULL,                             -- TAX_EXEMPTION_ID
3783            NULL,                             -- UOM_CODE
3784            NULL,                             -- WAREHOUSE_ID
3785            NULL,                             -- AGREEMENT_ID
3786            NULL,                             -- CUSTOMER_BANK_ACCT_ID
3787            NULL,                             -- DRAWEE_BANK_ACCOUNT_ID
3788            NULL,                             -- REMITTANCE_BANK_ACCT_ID
3789            NULL,                             -- DISTRIBUTION_SET_ID
3790            NULL,                             -- PAYMENT_SCHEDULE_ID
3791            NULL,                             -- RECEIPT_METHOD_ID
3792            app.receivables_trx_id,           -- RECEIVABLES_TRX_ID
3793            NULL,                             -- ED_ADJ_RECEIVABLES_TRX_ID
3794            NULL,                             -- UNED_RECEIVABLES_TRX_ID
3795            sob.set_of_books_id,              -- SET_OF_BOOKS_ID
3796            NULL,                               -- SALESREP_ID
3797            NULL,                               -- BILL_SITE_USE_ID
3798            NULL,                               -- DRAWEE_SITE_USE_ID
3799            NULL,                               -- PAYING_SITE_USE_ID
3800            NULL,                               -- SOLD_SITE_USE_ID
3801            NULL,                               -- SHIP_SITE_USE_ID
3802            NULL,                               -- RECEIPT_CUSTOMER_SITE_USE_ID
3803            NULL,                               -- BILL_CUST_ROLE_ID
3804            NULL,                               -- DRAWEE_CUST_ROLE_ID
3805            NULL,                               -- SHIP_CUST_ROLE_ID
3806            NULL,                               -- SOLD_CUST_ROLE_ID
3807            NULL,                               -- BILL_CUSTOMER_ID
3808            NULL,                               -- DRAWEE_CUSTOMER_ID
3809            NULL,                               -- PAYING_CUSTOMER_ID
3810            NULL,                               -- SOLD_CUSTOMER_ID
3811            NULL,                               -- SHIP_CUSTOMER_ID
3812            NULL,                               -- REMIT_ADDRESS_ID
3813            NULL,                               -- RECEIPT_BATCH_ID
3814            app.receivable_application_id,      -- RECEIVABLE_APPLICATION_ID
3815            NULL,                               -- CUSTOMER_BANK_BRANCH_ID
3816            NULL,                               -- ISSUER_BANK_BRANCH_ID
3817            NULL,                               -- BATCH_SOURCE_ID
3818            NULL,                               -- BATCH_ID
3819            NULL,                               -- TERM_ID
3820            'N',                              -- SELECT_FLAG
3821            'L',                              -- LEVEL_FLAG
3822            '' ,                               -- FROM_TO_FLAG
3823            app.status,                        -- CRH_STATUS
3824            '',                               -- CRH_PRV_STATUS
3825            NVL(dist.amount_cr,0)
3826              - NVL(dist.amount_dr,0)           -- AMOUNT
3827          --{BUG#4356088
3828          ,gt.event_type_code
3829          ,gt.event_class_code
3830          ,gt.entity_code
3831          ,'N'                    --MFAR_ADDITIONAL_ENTRY
3832          --}
3833          --Bug7255483 Added value for new column in the view
3834          ,DECODE(NVL(app.receivables_trx_id,0), -16,
3835                  NVL(dist.from_acctd_amount_cr,0) - NVL(dist.from_acctd_amount_dr,0),to_number(NULL))
3836       FROM xla_events_gt                  gt,
3837            ar_cash_receipts_all           cr,
3838            ar_cash_receipt_history_all    crh,
3839            ar_receivable_applications_all app,
3840            ar_distributions_all           dist,
3841            gl_sets_of_books               sob
3842      WHERE gt.event_type_code IN (  'RECP_CREATE'          ,'RECP_UPDATE' ,
3843                                     'RECP_RATE_ADJUST'     ) --Uptake XLA Reversal,'RECP_REVERSE'   )
3844        AND gt.application_id              = p_application_id
3845        AND cr.cash_receipt_id             = gt.source_id_int_1
3846        AND gt.event_id                    = app.event_id
3847        AND app.status                    IN ('UNAPP','UNID',
3848                      --{BUG#4960533
3849                       'OTHER ACC',
3850                       'ACC','BANK_CHARGES','ACTIVITY','SHORT_TERM_DEBT')
3851                      --}
3852        AND dist.source_table              = 'RA'
3853        AND dist.source_id                 = app.receivable_application_id
3854        AND cr.set_of_books_id             = sob.set_of_books_id
3855    --  AND gt.event_id                    = crh.event_id(+)
3856        AND app.event_id                    = crh.event_id(+)
3857        AND app.cash_receipt_history_id     = crh.cash_receipt_history_id (+)
3858        AND crh.status(+)                  NOT IN ('REVERSED');
3859 
3860 
3861 
3862 
3863    local_log(procedure_name => 'load_line_data_crh',
3864              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_date_crh ()-');
3865 EXCEPTION
3866 --  WHEN NO_DATA_FOUND THEN NULL;
3867   WHEN OTHERS THEN
3868    local_log(procedure_name => 'load_line_data_crh',
3869              p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_crh '||
3870                                 arp_global.CRLF || 'Error      :'|| SQLERRM);
3871     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
3872     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
3873          'Procedure :arp_xla_extract_main_pkg.load_line_data_crh'|| arp_global.CRLF||
3874          'Error     :'||SQLERRM);
3875     FND_MSG_PUB.ADD;
3876   RAISE;
3877 END load_line_data_crh;
3878 
3879 --------------------------------------------------------
3880 /*-----------------------------------------------------------------+
3881  | Procedure Name : mfar_hook                                      |
3882  | Description    : Extract line data for Cash Receipt events in MF|
3883  +-----------------------------------------------------------------+
3884  | History        :                                                |
3885  +-----------------------------------------------------------------*/
3886 
3887 PROCEDURE mfar_hook(p_ledger_id IN NUMBER)
3888 IS
3889  CURSOR c IS
3890  SELECT NULL
3891    FROM gl_ledgers             gl,
3892         xla_acctg_method_rules mr,
3893         xla_product_rules_tl   pr
3894   WHERE gl.ledger_id = p_ledger_id
3895     AND mr.application_id = 222
3896     AND mr.accounting_method_code = gl.SLA_ACCOUNTING_METHOD_CODE
3897     AND mr.product_rule_code      = pr.product_rule_code
3898     AND mr.product_rule_code      = 'MFAR_ACCRUAL_ACCOUNT'
3899     AND pr.language = USERENV('LANG')
3900     AND SYSDATE BETWEEN mr.start_date_active AND NVL(mr.end_date_active, SYSDATE);
3901   l_res        VARCHAR2(1);
3902   l_execution  VARCHAR2(1) := 'N';
3903 BEGIN
3904   local_log(procedure_name => 'mfar_hook',
3905             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_hook ()+');
3906   IF NVL(FND_PROFILE.value('AR_MFAR_ACTIVATED'), 'N') = 'N' THEN
3907     l_execution := 'N';
3908   ELSE
3909     l_execution := 'Y';
3910   END IF;
3911 
3912   IF l_execution = 'Y' THEN
3913      -- Get all the applications of receipts being processed
3914      mfar_app_dist_cr;
3915      -- Get all CRH being currently post
3916      mfar_crh_dist;
3917      -- Create the times of additional distributions for CRH
3918      mfar_produit_app_by_crh;
3919      --Create additional_distribution_for_ra
3920      mfar_get_ra;
3921      --Avoid contention between Cash Receipt and MCD
3922      DELETE FROM ar_crh_app_gt;
3923      -- Get all Misc Cash Distributions for the Misc receipts
3924      mfar_mcd_dist_cr;
3925      -- Create the times of addition distribution for MCD
3926      mfar_produit_mcd_by_crh;
3927   END IF;
3928   local_log(procedure_name => 'mfar_hook',
3929             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_hook ()-');
3930 EXCEPTION
3931 --  WHEN NO_DATA_FOUND THEN NULL;
3932   WHEN OTHERS THEN
3933    local_log(procedure_name => 'mfar_hook',
3934              p_msg_text     => 'EXCEPTION OTHERS in mfar_hook '||
3935                  arp_global.CRLF || 'Error      :'|| SQLERRM);
3936     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
3937     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
3938          'Procedure :arp_xla_extract_main_pkg.mfar_hook'|| arp_global.CRLF||
3939          'Error     :'||SQLERRM);
3940     FND_MSG_PUB.ADD;
3941   RAISE;
3942 END mfar_hook;
3943 
3944 
3945 PROCEDURE mfar_app_dist_cr IS
3946 BEGIN
3947   local_log(procedure_name => 'mfar_app_dist_cr',
3948             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_app_dist_cr ()+');
3949 --
3950 -- For a RECP_CREATE and RECP_UPDATE events
3951 -- All application distributions are necessary for the MFAR CRH building
3952 --
3953 INSERT INTO ar_crh_app_gt (
3954  entity_id
3955 ,receivable_application_id
3956 ,cash_receipt_history_id
3957 ,cash_receipt_history_status
3958 ,line_id
3959 ,amount
3960 ,acctd_amount
3961 ,from_amount
3962 ,from_acctd_amount
3963 ,third_party_id
3964 ,third_party_site_id
3965 ,third_party_type
3966 ,from_currency_code
3967 ,from_exchange_rate
3968 ,from_exchange_type
3969 ,from_exchange_date
3970 ,to_currency_code
3971 ,to_exchange_rate
3972 ,to_exchange_type
3973 ,to_exchange_date
3974 ,ref_customer_trx_line_id
3975 ,ref_cust_trx_line_gl_dist_id
3976 ,code_combination_id
3977 ,ref_code_combination_id
3978 ,ref_dist_ccid
3979 ,activity_bucket
3980 ,source_type
3981 ,source_table
3982 ,ra_post_indicator
3983 ,crh_post_indicator
3984 ,customer_trx_id
3985 ,inventory_item_id
3986 ,sales_tax_id
3987 ,tax_line_id
3988 ,bill_to_customer_id
3989 ,bill_to_site_use_id
3990 ,sold_to_customer_id
3991 ,sold_to_site_use_id
3992 ,ship_to_customer_id
3993 ,ship_to_site_use_id)
3994 SELECT xla.entity_id                           --entity_id
3995       ,ra.receivable_application_id            --receivable_application_id
3996       ,crh.cash_receipt_history_id             --cash_receipt_history_id
3997       ,crh.status                              --cash_receipt_history_status
3998       ,ard.line_id                             --line_id
3999       ,NVL(ard.amount_cr,0)-
4000            NVL(ard.amount_dr,0)                --amount
4001       ,NVL(ard.acctd_amount_cr,0)-
4002            NVL(ard.acctd_amount_dr,0)          --acctd_amount
4003       ,NVL(ard.from_amount_cr,0)-
4004            NVL(ard.from_amount_dr,0)           --from_amount
4005       ,NVL(ard.from_acctd_amount_cr,0)-
4006            NVL(ard.from_acctd_amount_dr,0)     --from_acctd_amount
4007       ,ard.third_party_id                      --third_party_id
4008       ,ard.third_party_sub_id                  --third_party_site_id
4009       ,DECODE(ard.third_party_id,NULL,NULL,'C') --third_party_type
4010       ,cr.currency_code                        --from_currency_code
4011       ,crh.exchange_rate                       --from_exchange_rate
4012       ,crh.exchange_rate_type                  --from_exchange_type
4013       ,crh.exchange_date                       --from_exchange_date
4014       ,ct.invoice_currency_code                --to_currency_code
4015       ,ct.exchange_rate                        --to_exchange_rate
4016       ,ct.exchange_rate_type                   --to_exchange_type
4017       ,ct.exchange_date                        --to_exchange_date
4018       ,ard.ref_customer_trx_line_id            --ref_customer_trx_line_id
4019       ,ard.ref_cust_trx_line_gl_dist_id        --ref_cust_trx_line_gl_dist_id
4020       ,ard.code_combination_id                 --code_combination_id
4021       ,ctlgd.code_combination_id               --ref_code_combination_id
4022       ,ard.ref_dist_ccid                       --ref_dist_ccid
4023       ,ard.activity_bucket                     --activity_bucket
4024       ,ard.source_type                         --source_type
4025       ,source_table                            --source_table
4026       ,DECODE(ra.posting_control_id,-3,'N','Y')   --ra_post_indicator
4027       ,DECODE(crh.posting_control_id,-3,'N','Y')  --crh_post_indicator
4028       ,ra.applied_customer_trx_id              --customer_trx_id
4029       ,ctl.inventory_item_id
4030       ,ctl.sales_tax_id
4031       ,ctl.tax_line_id
4032       ,ct.bill_to_customer_id
4033       ,ct.bill_to_site_use_id
4034       ,ct.sold_to_customer_id
4035       ,ct.sold_to_site_use_id
4036       ,ct.ship_to_customer_id
4037       ,ct.ship_to_site_use_id
4038   FROM ar_cash_receipt_history_all    crh
4039       ,ar_cash_receipts_all           cr
4040       ,ar_receivable_applications_all ra
4041       ,ar_distributions_all           ard
4042       ,ra_customer_trx_all            ct
4043       ,ra_cust_trx_line_gl_dist_all   ctlgd
4044       ,ra_customer_trx_lines_all      ctl
4045       ,(SELECT entity_id,
4046                source_id_int_1
4047           FROM xla_events_gt
4048          WHERE application_id  = 222
4049            AND event_type_code IN ('RECP_CREATE','RECP_UPDATE')
4050          GROUP BY entity_id,
4051                   source_id_int_1)    xla
4052  WHERE xla.source_id_int_1              = crh.cash_receipt_id
4053    AND crh.cash_receipt_history_id      = ra.cash_receipt_history_id
4054    AND crh.cash_receipt_id              = cr.cash_receipt_id
4055    AND crh.cash_receipt_id              = ra.cash_receipt_id
4056    AND ra.status                        = 'APP'
4057    AND ra.receivable_application_id     = ard.source_id
4058    -- Add MFAR UPG impacts
4059    AND DECODE(ra.upgrade_method,
4060               '11I_MFAR_UPG',DECODE(ard.source_table_secondary,'UPMFRAMIAR','Y','N'),
4061               'R12_11ICASH' ,'N',
4062               '11I_R12_POST','N',
4063                         'Y')            = 'Y'
4064    AND ra.applied_customer_trx_id       = ct.customer_trx_id
4065    AND ard.source_table                 = 'RA'
4066    AND ard.ref_customer_trx_line_id     = ctl.customer_trx_line_id(+)
4067    AND ard.ref_cust_trx_line_gl_dist_id = ctlgd.cust_trx_line_gl_dist_id(+);
4068 
4069   local_log(procedure_name => 'mfar_app_dist_cr',
4070             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_app_dist_cr ()-');
4071 EXCEPTION
4072 --  WHEN NO_DATA_FOUND THEN NULL;
4073   WHEN OTHERS THEN
4074    local_log(procedure_name => 'mfar_app_dist_cr',
4075              p_msg_text     => 'EXCEPTION OTHERS in mfar_app_dist_cr '||
4076                  arp_global.CRLF || 'Error      :'|| SQLERRM);
4077     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
4078     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
4079          'Procedure :arp_xla_extract_main_pkg.mfar_app_dist_cr'|| arp_global.CRLF||
4080          'Error     :'||SQLERRM);
4081     FND_MSG_PUB.ADD;
4082   RAISE;
4083 END;
4084 
4085 PROCEDURE mfar_crh_dist IS
4086 BEGIN
4087   local_log(procedure_name => 'mfar_crh_dist',
4088             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_crh_dist ()+');
4089 -- All CRH distribution part of the current posting will serve for the
4090 -- Additional distribution building
4091 INSERT INTO ar_crh_gt (
4092  cash_receipt_id        ,
4093  cash_receipt_history_id,
4094  source_type            ,
4095  posting_control_id     ,
4096  amount                 ,
4097  acctd_amount           ,
4098  code_combination_id    ,
4099  exchange_date          ,
4100  exchange_rate          ,
4101  exchange_rate_type     ,
4102  third_party_id         ,
4103  third_party_sub_id     ,
4104  third_party_flag       ,
4105  event_id               ,
4106  entity_id              ,
4107  ledger_id              ,
4108  base_currency_code     ,
4109  org_id                 ,
4110  status                 )
4111 SELECT crh.cash_receipt_id
4112       ,crh.cash_receipt_history_id
4113       ,ard.source_type
4114       ,crh.posting_control_id
4115       ,NVL(ard.amount_cr,0)-NVL(ard.amount_dr,0)
4116       ,NVL(ard.acctd_amount_cr,0)-NVL(ard.acctd_amount_dr,0)
4117       ,ard.code_combination_id
4118       ,crh.exchange_date
4119       ,crh.exchange_rate
4120       ,crh.exchange_rate_type
4121       ,ard.third_party_id
4122       ,ard.third_party_sub_id
4123       ,DECODE(third_party_id,NULL,'N','Y')
4124       ,gt.event_id
4125       ,gt.entity_id
4126       ,cr.set_of_books_id                        -- ledger_id
4127       ,lg.currency_code
4128       ,crh.org_id
4129       ,DECODE(ard.source_type,'CASH'        ,'CLEARED',
4130                               'REMITTANCE'  ,'REMITTED',
4131                               'CONFIRMATION','CONFIRMED','CASH')
4132   FROM xla_events_gt                gt,
4133        ar_cash_receipt_history_all  crh,
4134        ar_cash_receipts_all         cr,
4135        ar_distributions_all         ard,
4136        gl_ledgers                   lg
4137  WHERE gt.application_id  = 222
4138    AND gt.event_type_code IN ('RECP_CREATE','RECP_UPDATE','MISC_RECP_CREATE','MISC_RECP_UPDATE')
4139    AND gt.event_id        = crh.event_id
4140    AND crh.postable_flag  = 'Y'
4141    AND crh.cash_receipt_id= cr.cash_receipt_id
4142    AND ard.source_id      = crh.cash_receipt_history_id
4143    AND ard.source_table   = 'CRH'
4144    AND ard.source_type   IN ('CASH','REMITTANCE','CONFIRMATION')
4145    AND cr.set_of_books_id = lg.ledger_id;
4146   local_log(procedure_name => 'mfar_crh_dist',
4147             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_app_dist_cr ()-');
4148 EXCEPTION
4149 --  WHEN NO_DATA_FOUND THEN NULL;
4150   WHEN OTHERS THEN
4151    local_log(procedure_name => 'mfar_crh_dist',
4152              p_msg_text     => 'EXCEPTION OTHERS in mfar_crh_dist '||
4153                  arp_global.CRLF || 'Error      :'|| SQLERRM);
4154     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
4155     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
4156          'Procedure :arp_xla_extract_main_pkg.mfar_crh_dist'|| arp_global.CRLF||
4157          'Error     :'||SQLERRM);
4158     FND_MSG_PUB.ADD;
4159   RAISE;
4160 END;
4161 
4162 
4163 PROCEDURE mfar_produit_app_by_crh  IS
4164 BEGIN
4165   local_log(procedure_name => 'mfar_produit_app_by_crh',
4166             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_produit_app_by_crh ()+');
4167 --
4168 -- Build the MFAR distribution for CRH
4169 --
4170 INSERT INTO ar_xla_lines_extract
4171 (EVENT_ID
4172 ,LINE_NUMBER
4173 ,MFAR_ADDITIONAL_ENTRY
4174 ,LEDGER_ID
4175 ,BASE_CURRENCY_CODE
4176 ,ORG_ID
4177 ,LINE_ID
4178 ,SOURCE_ID
4179 ,SOURCE_TABLE
4180 ,HEADER_TABLE_ID
4181 ,POSTING_ENTITY
4182 ,XLA_ENTITY_ID
4183 --
4184 ,DIST_CCID
4185 ,REF_DIST_CCID
4186 ,REF_CTLGD_CCID
4187 --
4188 ,FROM_CURRENCY_CODE
4189 ,FROM_EXCHANGE_RATE
4190 ,FROM_EXCHANGE_RATE_TYPE
4191 ,FROM_EXCHANGE_DATE
4192 ,FROM_AMOUNT
4193 ,FROM_ACCTD_AMOUNT
4194 --
4195 ,TO_CURRENCY_CODE
4196 ,EXCHANGE_RATE
4197 ,EXCHANGE_RATE_TYPE
4198 ,EXCHANGE_DATE
4199 ,AMOUNT
4200 ,ACCTD_AMOUNT
4201 --
4202 ,RECEIVABLE_APPLICATION_ID
4203 ,CASH_RECEIPT_ID
4204 ,CUSTOMER_TRX_ID
4205 ,CUSTOMER_TRX_LINE_ID
4206 ,CUST_TRX_LINE_GL_DIST_ID
4207 --
4208 ,INVENTORY_ITEM_ID
4209 ,SALES_TAX_ID
4210 ,SET_OF_BOOKS_ID
4211 ,BILL_SITE_USE_ID
4212 ,SOLD_SITE_USE_ID
4213 ,SHIP_SITE_USE_ID
4214 ,BILL_CUSTOMER_ID
4215 ,SOLD_CUSTOMER_ID
4216 ,SHIP_CUSTOMER_ID
4217 ,TAX_LINE_ID
4218 --
4219 ,SELECT_FLAG
4220 ,LEVEL_FLAG
4221 ,FROM_TO_FLAG
4222 ,CRH_STATUS
4223 ,APP_CRH_STATUS
4224 --
4225 ,EVENT_TYPE_CODE
4226 ,EVENT_CLASS_CODE
4227 ,ENTITY_CODE
4228 --
4229 ,third_party_id
4230 ,third_party_site_id
4231 ,third_party_type
4232 ,source_type     )
4233 SELECT
4234        crh.event_id                              --event_id
4235       ,-1 * ar_mfar_extract_s.nextval            --LINE_NUMBER
4236       ,'Y'                                       --MFAR_ADDITIONAL_ENTRY
4237       ,crh.ledger_id                             --LEDGER_ID
4238       ,crh.base_currency_code                    --BASE_CURRENCY_CODE
4239       ,crh.org_id                                --ORG_ID
4240       ,app.line_id                               --LINE_ID
4241       ,app.receivable_application_id             --SOURCE_ID
4242       ,'RA'                                      --SOURCE_TABLE
4243       ,crh.cash_receipt_id                       --HEADER_TABLE_ID
4244       ,'RECEIPT_HISTORY'                         --POSTING_ENTITY
4245       ,crh.entity_id                             --xla_entity_id
4246       --
4247       ,app.code_combination_id                   --DIST_CCID
4248       ,app.ref_dist_ccid                         --ref_dist_ccid
4249       ,app.ref_code_combination_id               --REF_CTLGD_CCID
4250       --
4251       ,app.from_currency_code                    --from_currency_code
4252       ,app.from_exchange_rate                    --from_exchange_rate
4253       ,app.from_exchange_type                    --FROM_EXCHANGE_RATE_TYPE
4254       ,app.from_exchange_date                    --from_exchange_date
4255       ,SIGN(crh.amount)*app.from_amount          --from_amount
4256       ,SIGN(crh.acctd_amount)*app.from_acctd_amount     --from_acctd_amount
4257       --
4258       ,app.to_currency_code                      --to_currency_code
4259       ,app.to_exchange_rate                      --exchange_rate
4260       ,app.to_exchange_type                      --EXCHANGE_RATE_TYPE
4261       ,app.to_exchange_date                      --EXCHANGE_DATE
4262       ,SIGN(crh.amount)*app.amount               --amount
4263       ,SIGN(crh.acctd_amount)*app.acctd_amount   --acctd_amount
4264       --
4265       ,app.receivable_application_id             --RECEIVABLE_APPLICATION_ID
4266       ,crh.cash_receipt_id                       --CASH_RECEIPT_ID
4267       ,app.customer_trx_id                       --CUSTOMER_TRX_ID
4268       ,app.ref_customer_trx_line_id              --CUSTOMER_TRX_LINE_ID
4269       ,app.ref_cust_trx_line_gl_dist_id          --CUST_TRX_LINE_GL_DIST_ID
4270       --
4271       ,app.inventory_item_id                     --INVENTORY_ITEM_ID
4272       ,app.sales_tax_id                          --SALES_TAX_ID
4273       ,crh.ledger_id                             --SET_OF_BOOKS_ID
4274       ,app.bill_to_site_use_id                      --BILL_SITE_USE_ID
4275       ,app.sold_to_site_use_id                      --SOLD_SITE_USE_ID
4276       ,app.ship_to_site_use_id                      --SHIP_SITE_USE_ID
4277       ,app.bill_to_customer_id                      --BILL_CUSTOMER_ID
4278       ,app.sold_to_customer_id                      --SOLD_CUSTOMER_ID
4279       ,app.ship_to_customer_id                      --SHIP_CUSTOMER_ID
4280       ,app.tax_line_id                           --TAX_LINE_ID
4281       --
4282       ,'Y'                                       --SELECT_FLAG
4283       ,'L'                                       --LEVEL_FLAG
4284       ,'T'                                       --FROM_TO_FLAG
4285       ,crh.status                                --CRH_STATUS
4286       ,app.cash_receipt_history_status           --APP_CRH_STATUS
4287       --
4288       ,gt.event_type_code                        --EVENT_TYPE_CODE
4289       ,gt.event_class_code                       --EVENT_CLASS_CODE
4290       ,gt.entity_code                            --ENTITY_CODE
4291       --
4292       ,app.third_party_id                        --third_party_id
4293       ,app.third_party_site_id                   --third_party_site_id
4294       ,app.third_party_type                      --third_party_type
4295       ,app.source_type                           --source_type
4296   FROM ar_crh_gt                                           crh,
4297        ar_crh_app_gt                                       app,
4298        (SELECT 'CLEARED'    AS status   FROM DUAL UNION
4299         SELECT 'REMITTED'   AS status   FROM DUAL UNION
4300         SELECT 'CONFIRMED'  AS status   FROM DUAL     )    state,
4301        xla_events_gt                                       gt
4302  WHERE crh.entity_id     = app.entity_id
4303    AND app.source_table  = 'RA'
4304    AND DECODE(state.status,'CLEARED'   ,DECODE(crh.status,'CLEARED'  ,'Y','N'),
4305                            'REMITTED'  ,DECODE(crh.status,'REMITTED' ,'Y','N'),
4306                            'CONFIRMED' ,DECODE(crh.status,'CONFIRMED','Y','N'),'N') = 'Y'
4307    AND DECODE(state.status,'CLEARED'   ,DECODE(app.cash_receipt_history_status,
4308                                                           'CLEARED'  ,'Y',
4309                                                           'REMITTED' ,'Y',
4310                                                           'CONFIRMED','Y','N'),
4311                            'REMITTED'  ,DECODE(app.cash_receipt_history_status,
4312                                                           'REMITTED' ,'Y',
4313                                                           'CONFIRMED','Y','N'),
4314                            'CONFIRMED' ,DECODE(app.cash_receipt_history_status,
4315                                                           'CONFIRMED','Y','N'),'N') = 'Y'
4316    AND crh.event_id = gt.event_id;
4317 
4318   local_log(procedure_name => 'mfar_produit_app_by_crh',
4319             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_produit_app_by_crh ()-');
4320 EXCEPTION
4321 --  WHEN NO_DATA_FOUND THEN NULL;
4322   WHEN OTHERS THEN
4323    local_log(procedure_name => 'mfar_crh_dist',
4324              p_msg_text     => 'EXCEPTION OTHERS in mfar_produit_app_by_crh '||
4325                  arp_global.CRLF || 'Error      :'|| SQLERRM);
4326     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
4327     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
4328          'Procedure :arp_xla_extract_main_pkg.mfar_produit_app_by_crh'|| arp_global.CRLF||
4329          'Error     :'||SQLERRM);
4330     FND_MSG_PUB.ADD;
4331   RAISE;
4332 END;
4333 
4334 
4335 
4336 PROCEDURE mfar_get_ra IS
4337 BEGIN
4338   local_log(procedure_name => 'mfar_get_ra',
4339             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_get_ra ()+');
4340 INSERT INTO ar_xla_lines_extract
4341 (EVENT_ID
4342 ,LINE_NUMBER
4343 ,MFAR_ADDITIONAL_ENTRY
4344 ,LEDGER_ID
4345 ,BASE_CURRENCY_CODE
4346 ,ORG_ID
4347 ,LINE_ID
4348 ,SOURCE_ID
4349 ,SOURCE_TABLE
4350 ,HEADER_TABLE_ID
4351 ,POSTING_ENTITY
4352 ,XLA_ENTITY_ID
4353 --
4354 ,DIST_CCID
4355 ,REF_DIST_CCID
4356 ,REF_CTLGD_CCID
4357 --
4358 ,FROM_CURRENCY_CODE
4359 ,FROM_EXCHANGE_RATE
4360 ,FROM_EXCHANGE_RATE_TYPE
4361 ,FROM_EXCHANGE_DATE
4362 ,FROM_AMOUNT
4363 ,FROM_ACCTD_AMOUNT
4364 --
4365 ,TO_CURRENCY_CODE
4366 ,EXCHANGE_RATE
4367 ,EXCHANGE_RATE_TYPE
4368 ,EXCHANGE_DATE
4369 ,AMOUNT
4370 ,ACCTD_AMOUNT
4371 --
4372 ,RECEIVABLE_APPLICATION_ID
4373 ,CASH_RECEIPT_ID
4374 ,CUSTOMER_TRX_ID
4375 ,CUSTOMER_TRX_LINE_ID
4376 ,CUST_TRX_LINE_GL_DIST_ID
4377 --
4378 ,INVENTORY_ITEM_ID
4379 ,SALES_TAX_ID
4380 ,SET_OF_BOOKS_ID
4381 ,BILL_SITE_USE_ID
4382 ,SOLD_SITE_USE_ID
4383 ,SHIP_SITE_USE_ID
4384 ,BILL_CUSTOMER_ID
4385 ,SOLD_CUSTOMER_ID
4386 ,SHIP_CUSTOMER_ID
4387 ,TAX_LINE_ID
4388 --
4389 ,SELECT_FLAG
4390 ,LEVEL_FLAG
4391 ,FROM_TO_FLAG
4392 ,CRH_STATUS
4393 ,APP_CRH_STATUS
4394 --
4395 ,EVENT_TYPE_CODE
4396 ,EVENT_CLASS_CODE
4397 ,ENTITY_CODE
4398 --
4399 ,third_party_id
4400 ,third_party_site_id
4401 ,third_party_type
4402 ,source_type)
4403 SELECT
4404        gt.event_id                    --EVENT_ID
4405       ,-1 * ar_mfar_extract_s.NEXTVAL --LINE_NUMBER
4406       ,'Y'                            --MFAR_ADDITIONAL_ENTRY
4407       ,trx.set_of_books_id            --LEDGER_ID
4408       ,lg.currency_code               --BASE_CURRENCY_CODE
4409       ,ra.org_id                      --ORG_ID
4410       ,ard.line_id                    --LINE_ID
4411       ,ra.receivable_application_id   --SOURCE_ID
4412       ,'RA'                           --SOURCE_TABLE
4413       ,ra.cash_receipt_id             --HEADER_TABLE_ID
4414       ,'APPLICATION'                  --POSTING_ENTITY
4415       ,gt.entity_id                   --XLA_ENTITY_ID
4416       --
4417       ,ard.code_combination_id        --DIST_CCID
4418       ,ard.ref_dist_ccid              --REF_DIST_CCID
4419       ,ctlgd.code_Combination_id      --REF_CTLGD_CCID
4420       --
4421       ,cr.currency_code               --FROM_CURRENCY_CODE
4422       ,crh.exchange_rate              --FROM_EXCHANGE_RATE
4423       ,crh.exchange_rate_type         --FROM_EXCHANGE_RATE_TYPE
4424       ,crh.exchange_date              --FROM_EXCHANGE_DATE
4425       ,-1 * (NVL(ard.from_amount_cr,0)-NVL(ard.from_amount_dr,0))             --FROM_AMOUNT
4426       ,-1 * (NVL(ard.from_acctd_amount_cr,0)-NVL(ard.from_acctd_amount_dr,0)) --FROM_ACCTD_AMOUNT
4427       --
4428       ,trx.invoice_currency_code      --TO_CURRENCY_CODE
4429       ,trx.exchange_rate              --EXCHANGE_RATE
4430       ,trx.exchange_rate_type         --EXCHANGE_RATE_TYPE
4431       ,trx.exchange_date              --EXCHANGE_DATE
4432       ,-1 * (NVL(ard.amount_cr,0)-NVL(ard.amount_dr,0))               --AMOUNT
4433       ,-1 * (NVL(ard.acctd_amount_cr,0)-NVL(ard.acctd_amount_dr,0))   --ACCTD_AMOUNT
4434       --
4435       ,ra.receivable_application_id   --RECEIVABLE_APPLICATION_ID
4436       ,ra.cash_receipt_id             --CASH_RECEIPT_ID
4437       ,ra.applied_customer_trx_id     --CUSTOMER_TRX_ID
4438       ,ard.ref_customer_trx_line_id   --CUSTOMER_TRX_LINE_ID
4439       ,ard.ref_cust_trx_line_gl_dist_id  --CUST_TRX_LINE_GL_DIST_ID
4440       --
4441       ,ctl.inventory_item_id             --INVENTORY_ITEM_ID
4442       ,ctl.sales_tax_id                  --SALES_TAX_ID
4443       ,trx.set_of_books_id               --SET_OF_BOOKS_ID
4444       ,trx.bill_to_site_use_id           --BILL_SITE_USE_ID
4445       ,trx.sold_to_site_use_id           --SOLD_SITE_USE_ID
4446       ,trx.ship_to_site_use_id           --SHIP_SITE_USE_ID
4447       ,trx.bill_to_customer_id           --BILL_CUSTOMER_ID
4448       ,trx.sold_to_customer_id           --SOLD_CUSTOMER_ID
4449       ,trx.ship_to_customer_id           --SHIP_CUSTOMER_ID
4450       ,ctl.tax_line_id                   --TAX_LINE_ID
4451       --
4452       ,'Y'                               --SELECT_FLAG
4453       ,'L'                               --LEVEL_FLAG
4454       ,'T'                               --FROM_TO_FLAG
4455       ,crhlatest.status                  --CRH_STATUS
4456       ,crh.status                        --APP_CRH_STATUS
4457       --
4458       ,gt.event_type_code                --EVENT_TYPE_CODE
4459       ,gt.event_class_code               --EVENT_CLASS_CODE
4460       ,gt.entity_code                    --ENTITY_CODE
4461       --
4462       ,ard.third_party_id                --third_party_id
4463       ,ard.third_party_sub_id           --third_party_site_id
4464       ,DECODE(ard.third_party_id,NULL,NULL,'C')          --third_party_type
4465       ,ard.source_type                   --source_type
4466   FROM xla_events_gt                      gt,
4467        ar_receivable_applications_all     ra,
4468        ar_cash_receipt_history_all        crh,
4469        ar_distributions_all               ard,
4470        ra_customer_trx_all                trx,
4471        ra_cust_trx_line_gl_dist_all       ctlgd,
4472        ra_customer_trx_lines_all          ctl,
4473        ar_cash_receipts_all               cr,
4474        gl_ledgers                         lg,
4475        ar_cash_receipt_history_all        crhlatest
4476  WHERE gt.application_id                = 222
4477    AND gt.event_type_code               IN ('RECP_CREATE','RECP_UPDATE')
4478    AND gt.event_id                      = ra.event_id
4479    AND ra.status                        = 'APP'
4480    AND ard.source_id                    = ra.receivable_application_id
4481    AND ard.source_table                 = 'RA'
4482    AND ra.cash_receipt_history_id       = crh.cash_receipt_history_id
4483    AND ra.cash_receipt_id               = cr.cash_receipt_id
4484    AND trx.set_of_books_id              = lg.ledger_id
4485    AND crh.cash_receipt_id              = cr.cash_receipt_id
4486    AND crh.posting_control_id           <> -3
4487    AND crh.cash_receipt_id              = crhlatest.cash_receipt_id
4488    AND ard.ref_cust_trx_line_gl_dist_id = ctlgd.cust_trx_line_gl_dist_id(+)
4489    AND ard.ref_customer_trx_line_id     = ctl.customer_trx_line_id(+)
4490    AND ra.applied_customer_trx_id      = trx.customer_trx_id
4491    AND crhlatest.cash_receipt_id       = cr.cash_receipt_id
4492    AND crhlatest.cash_receipt_history_id =
4493      ( SELECT MAX(a.cash_receipt_history_id)
4494          FROM ar_cash_receipt_history_all a
4495         WHERE a.cash_receipt_id = cr.cash_receipt_id
4496           AND a.posting_control_id    <> -3);
4497   local_log(procedure_name => 'mfar_get_ra',
4498             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_get_ra ()-');
4499 EXCEPTION
4500 --  WHEN NO_DATA_FOUND THEN NULL;
4501   WHEN OTHERS THEN
4502    local_log(procedure_name => 'mfar_get_ra',
4503              p_msg_text     => 'EXCEPTION OTHERS in mfar_get_ra '||
4504                  arp_global.CRLF || 'Error      :'|| SQLERRM);
4505     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
4506     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
4507          'Procedure :arp_xla_extract_main_pkg.mfar_get_ra'|| arp_global.CRLF||
4508          'Error     :'||SQLERRM);
4509     FND_MSG_PUB.ADD;
4510   RAISE;
4511 END;
4512 
4513 
4514 
4515 PROCEDURE mfar_mcd_dist_cr IS
4516 BEGIN
4517   local_log(procedure_name => 'mfar_mcd_dist_cr',
4518             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_mcd_dist_cr ()+');
4519 INSERT INTO ar_crh_app_gt (
4520  entity_id
4521 ,receivable_application_id
4522 ,cash_receipt_history_id
4523 ,cash_receipt_history_status
4524 ,line_id
4525 ,amount
4526 ,acctd_amount
4527 ,from_amount
4528 ,from_acctd_amount
4529 ,third_party_id
4530 ,third_party_site_id
4531 ,third_party_type
4532 ,from_currency_code
4533 ,from_exchange_rate
4534 ,from_exchange_type
4535 ,from_exchange_date
4536 ,to_currency_code
4537 ,to_exchange_rate
4538 ,to_exchange_type
4539 ,to_exchange_date
4540 ,ref_customer_trx_line_id
4541 ,ref_cust_trx_line_gl_dist_id
4542 ,code_combination_id
4543 ,ref_code_combination_id
4544 ,ref_dist_ccid
4545 ,activity_bucket
4546 ,source_type
4547 ,source_table
4548 ,ra_post_indicator
4549 ,crh_post_indicator
4550 ,customer_trx_id
4551 ,inventory_item_id
4552 ,sales_tax_id
4553 ,tax_line_id
4554 ,bill_to_customer_id
4555 ,bill_to_site_use_id
4556 ,sold_to_customer_id
4557 ,sold_to_site_use_id
4558 ,ship_to_customer_id
4559 ,ship_to_site_use_id)
4560 SELECT xla.entity_id                           --entity_id
4561       ,mcd.misc_cash_distribution_id           --receivable_application_id
4562       ,NULL                                    --cash_receipt_history_id
4563       ,NULL                                    --cash_receipt_history_status
4564       ,ard.line_id                             --line_id
4565       ,NVL(ard.amount_cr,0)-
4566            NVL(ard.amount_dr,0)                --amount
4567       ,NVL(ard.acctd_amount_cr,0)-
4568            NVL(ard.acctd_amount_dr,0)          --acctd_amount
4569       ,NVL(ard.from_amount_cr,0)-
4570            NVL(ard.from_amount_dr,0)           --from_amount
4571       ,NVL(ard.from_acctd_amount_cr,0)-
4572            NVL(ard.from_acctd_amount_dr,0)     --from_acctd_amount
4573       ,NULL                                    --third_party_id
4574       ,NULL                                    --third_party_site_id
4575       ,NULL                                    --third_party_type
4576       ,cr.currency_code                        --from_currency_code
4577       ,NVL(crh.exchange_rate,cr.exchange_rate) --from_exchange_rate
4578       ,NVL(crh.exchange_rate_type,cr.exchange_rate_type) --from_exchange_type
4579       ,NVL(crh.exchange_date,cr.exchange_date) --from_exchange_date
4580       ,NULL                                    --to_currency_code
4581       ,NULL                                    --to_exchange_rate
4582       ,NULL                                    --to_exchange_type
4583       ,NULL                                    --to_exchange_date
4584       ,NULL                                    --ref_customer_trx_line_id
4585       ,NULL                                    --ref_cust_trx_line_gl_dist_id
4586       ,ard.code_combination_id                 --code_combination_id
4587       ,NULL                                    --ref_code_combination_id
4588       ,ard.ref_dist_ccid                       --ref_dist_ccid
4589       ,ard.activity_bucket                     --activity_bucket
4590       ,ard.source_type                         --source_type
4591       ,ard.source_table                        --source_table
4592       ,NULL                                    --ra_post_indicator
4593       ,NULL                                    --crh_post_indicator
4594       ,NULL                                    --customer_trx_id
4595       ,NULL
4596       ,NULL
4597       ,NULL
4598       ,NULL
4599       ,NULL
4600       ,NULL
4601       ,NULL
4602       ,NULL
4603       ,NULL
4604   FROM ar_cash_receipts_all           cr
4605       ,ar_misc_cash_distributions_all mcd
4606       ,ar_cash_receipt_history_all    crh
4607       ,ar_distributions_all           ard
4608       ,(SELECT entity_id,
4609                source_id_int_1
4610           FROM xla_events_gt
4611          WHERE application_id  = 222
4612            AND event_type_code IN ('MISC_RECP_CREATE','MISC_RECP_UPDATE')
4613          GROUP BY entity_id,
4614                   source_id_int_1)    xla
4615  WHERE xla.source_id_int_1              = cr.cash_receipt_id
4616    AND cr.cash_receipt_id               = mcd.cash_receipt_id
4617    AND mcd.event_id                    <> NVL((select event_id from ar_cash_receipt_history_all crh1 where
4618                                             crh1.cash_receipt_id = cr.cash_receipt_id and
4619                                             crh1.status='REVERSED' and crh1.current_record_flag = 'Y'),0)
4620    AND mcd.cash_receipt_history_id      = crh.cash_receipt_history_id(+)
4621    AND mcd.misc_cash_distribution_id    = ard.source_id
4622    AND ard.source_table                 = 'MCD';
4623   local_log(procedure_name => 'mfar_mcd_dist_cr',
4624             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_mcd_dist_cr ()-');
4625 EXCEPTION
4626 --  WHEN NO_DATA_FOUND THEN NULL;
4627   WHEN OTHERS THEN
4628    local_log(procedure_name => 'mfar_mcd_dist_cr',
4629              p_msg_text     => 'EXCEPTION OTHERS in mfar_mcd_dist_cr '||
4630                  arp_global.CRLF || 'Error      :'|| SQLERRM);
4631     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
4632     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
4633          'Procedure :arp_xla_extract_main_pkg.mfar_mcd_dist_cr'|| arp_global.CRLF||
4634          'Error     :'||SQLERRM);
4635     FND_MSG_PUB.ADD;
4636   RAISE;
4637 END;
4638 
4639 PROCEDURE mfar_produit_mcd_by_crh  IS
4640 BEGIN
4641   local_log(procedure_name => 'mfar_produit_mcd_by_crh',
4642             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_produit_mcd_by_crh ()+');
4643 
4644 INSERT INTO ar_xla_lines_extract
4645 (EVENT_ID
4646 ,LINE_NUMBER
4647 ,MFAR_ADDITIONAL_ENTRY
4648 ,LEDGER_ID
4649 ,BASE_CURRENCY_CODE
4650 ,ORG_ID
4651 ,LINE_ID
4652 ,SOURCE_ID
4653 ,SOURCE_TABLE
4654 ,HEADER_TABLE_ID
4655 ,POSTING_ENTITY
4656 ,XLA_ENTITY_ID
4657 --
4658 ,DIST_CCID
4659 ,REF_DIST_CCID
4660 ,REF_CTLGD_CCID
4661 --
4662 ,FROM_CURRENCY_CODE
4663 ,FROM_EXCHANGE_RATE
4664 ,FROM_EXCHANGE_RATE_TYPE
4665 ,FROM_EXCHANGE_DATE
4666 ,FROM_AMOUNT
4667 ,FROM_ACCTD_AMOUNT
4668 --
4669 ,TO_CURRENCY_CODE
4670 ,EXCHANGE_RATE
4671 ,EXCHANGE_RATE_TYPE
4672 ,EXCHANGE_DATE
4673 ,AMOUNT
4674 ,ACCTD_AMOUNT
4675 --
4676 ,RECEIVABLE_APPLICATION_ID
4677 ,CASH_RECEIPT_ID
4678 ,CUSTOMER_TRX_ID
4679 ,CUSTOMER_TRX_LINE_ID
4680 ,CUST_TRX_LINE_GL_DIST_ID
4681 --
4682 ,INVENTORY_ITEM_ID
4683 ,SALES_TAX_ID
4684 ,SET_OF_BOOKS_ID
4685 ,BILL_SITE_USE_ID
4686 ,SOLD_SITE_USE_ID
4687 ,SHIP_SITE_USE_ID
4688 ,BILL_CUSTOMER_ID
4689 ,SOLD_CUSTOMER_ID
4690 ,SHIP_CUSTOMER_ID
4691 ,TAX_LINE_ID
4692 --
4693 ,SELECT_FLAG
4694 ,LEVEL_FLAG
4695 ,FROM_TO_FLAG
4696 ,CRH_STATUS
4697 ,APP_CRH_STATUS
4698 --
4699 ,EVENT_TYPE_CODE
4700 ,EVENT_CLASS_CODE
4701 ,ENTITY_CODE)
4702 SELECT
4703        crh.event_id                              --event_id
4704       ,-1 * ar_mfar_extract_s.NEXTVAL            --LINE_NUMBER
4705       ,'Y'                                       --MFAR_ADDITIONAL_ENTRY
4706       ,crh.ledger_id                             --LEDGER_ID
4707       ,crh.base_currency_code                    --BASE_CURRENCY_CODE
4708       ,crh.org_id                                --ORG_ID
4709       ,mcd.line_id                               --LINE_ID
4710       ,mcd.receivable_application_id             --SOURCE_ID --This misc_cash_dist_id only
4711       ,'MCD'                                     --SOURCE_TABLE
4712       ,crh.cash_receipt_id                       --HEADER_TABLE_ID
4713       ,'MISC_RECEIPT_HISTORY'                    --POSTING_ENTITY
4714       ,crh.entity_id                             --xla_entity_id
4715       --
4716       ,mcd.code_combination_id                   --DIST_CCID
4717       ,mcd.code_combination_id                   --ref_dist_ccid
4718       ,mcd.code_combination_id                   --REF_CTLGD_CCID
4719       --
4720       ,mcd.from_currency_code                    --from_currency_code
4721       ,mcd.from_exchange_rate                    --from_exchange_rate
4722       ,mcd.from_exchange_type                    --FROM_EXCHANGE_RATE_TYPE
4723       ,mcd.from_exchange_date                    --from_exchange_date
4724       ,SIGN(crh.amount)*abs(mcd.from_amount)          --from_amount
4725       ,SIGN(crh.acctd_amount)*abs(mcd.from_acctd_amount)     --from_acctd_amount
4726       --
4727       ,mcd.from_currency_code                    --to_currency_code
4728       ,mcd.from_exchange_rate                    --exchange_rate
4729       ,mcd.from_exchange_type                    --EXCHANGE_RATE_TYPE
4730       ,mcd.from_exchange_date                    --EXCHANGE_DATE
4731       ,SIGN(crh.amount)*abs(mcd.amount)               --amount
4732       ,SIGN(crh.acctd_amount)*abs(mcd.acctd_amount)   --acctd_amount
4733       --
4734       ,mcd.receivable_application_id             --RECEIVABLE_APPLICATION_ID --MISC_CASH_DIST_ID
4735       ,crh.cash_receipt_id                       --CASH_RECEIPT_ID
4736       ,NULL                                      --CUSTOMER_TRX_ID
4737       ,NULL                                      --CUSTOMER_TRX_LINE_ID
4738       ,NULL                                      --CUST_TRX_LINE_GL_DIST_ID
4739       --
4740       ,NULL                                      --INVENTORY_ITEM_ID
4741       ,NULL                                      --SALES_TAX_ID
4742       ,crh.ledger_id                             --SET_OF_BOOKS_ID
4743       ,NULL                                      --BILL_SITE_USE_ID
4744       ,NULL                                      --SOLD_SITE_USE_ID
4745       ,NULL                                      --SHIP_SITE_USE_ID
4746       ,NULL                                      --BILL_CUSTOMER_ID
4747       ,NULL                                      --SOLD_CUSTOMER_ID
4748       ,NULL                                      --SHIP_CUSTOMER_ID
4749       ,NULL                                      --TAX_LINE_ID
4750       --
4751       ,'Y'                                       --SELECT_FLAG
4752       ,'L'                                       --LEVEL_FLAG
4753       ,'T'                                       --FROM_TO_FLAG
4754       ,crh.status                                --CRH_STATUS
4755       ,NULL                                      --APP_CRH_STATUS
4756       --
4757       ,gt.event_type_code                        --EVENT_TYPE_CODE
4758       ,gt.event_class_code                       --EVENT_CLASS_CODE
4759       ,gt.entity_code                            --ENTITY_CODE
4760   FROM ar_crh_gt                                           crh,
4761        ar_crh_app_gt                                       mcd,
4762        xla_events_gt                                       gt
4763  WHERE crh.entity_id     = mcd.entity_id
4764    AND mcd.source_table  = 'MCD'
4765    AND crh.event_id      = gt.event_id;
4766   local_log(procedure_name => 'mfar_produit_mcd_by_crh',
4767             p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.mfar_produit_mcd_by_crh ()-');
4768 EXCEPTION
4769 --  WHEN NO_DATA_FOUND THEN NULL;
4770   WHEN OTHERS THEN
4771    local_log(procedure_name => 'mfar_mcd_dist_cr',
4772              p_msg_text     => 'EXCEPTION OTHERS in mfar_produit_mcd_by_crh '||
4773                  arp_global.CRLF || 'Error      :'|| SQLERRM);
4774     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
4775     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
4776          'Procedure :arp_xla_extract_main_pkg.mfar_produit_mcd_by_crh'|| arp_global.CRLF||
4777          'Error     :'||SQLERRM);
4778     FND_MSG_PUB.ADD;
4779   RAISE;
4780 END;
4781 
4782 
4783 
4784 PROCEDURE load_line_data_crh_mf(p_application_id IN NUMBER DEFAULT 222) IS
4785 BEGIN
4786   NULL;
4787 END;
4788 
4789 --------------------------------------------------------
4790 
4791 /*-----------------------------------------------------------------+
4792  | Procedure Name : Load_line_data_th                              |
4793  | Description    : Extract line data for Bill Receivable events   |
4794  +-----------------------------------------------------------------+
4795  | History        :                                                |
4796  | 23-FEB-2004     Herve Yu    Created due to bug#3419926          |
4797  +-----------------------------------------------------------------*/
4798 PROCEDURE load_line_data_th(P_APPLICATION_ID IN NUMBER DEFAULT 222)
4799 IS
4800 BEGIN
4801    local_log(procedure_name => 'load_line_data_th',
4802              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_th()+');
4803 
4804     INSERT INTO ar_xla_lines_extract (
4805         EVENT_ID
4806        ,LINE_NUMBER
4807        ,LANGUAGE
4808        ,LEDGER_ID
4809        ,SOURCE_ID
4810        ,SOURCE_TABLE
4811        ,LINE_ID
4812        ,TAX_CODE_ID
4813        ,LOCATION_SEGMENT_ID
4814        ,BASE_CURRENCY_CODE
4815        ,EXCHANGE_RATE_TYPE
4816        ,EXCHANGE_RATE
4817        ,EXCHANGE_DATE
4818        ,ACCTD_AMOUNT
4819        ,TAXABLE_ACCTD_AMOUNT
4820        ,ORG_ID
4821        ,HEADER_TABLE_ID
4822        ,POSTING_ENTITY
4823        ,CASH_RECEIPT_ID
4824        ,CUSTOMER_TRX_ID
4825        ,CUSTOMER_TRX_LINE_ID
4826        ,CUST_TRX_LINE_GL_DIST_ID
4827        ,CUST_TRX_LINE_SALESREP_ID
4828        ,INVENTORY_ITEM_ID
4829        ,SALES_TAX_ID
4830        ,SO_ORGANIZATION_ID
4831        ,TAX_EXEMPTION_ID
4832        ,UOM_CODE
4833        ,WAREHOUSE_ID
4834        ,AGREEMENT_ID
4835        ,CUSTOMER_BANK_ACCT_ID
4836        ,DRAWEE_BANK_ACCOUNT_ID
4837        ,REMITTANCE_BANK_ACCT_ID
4838        ,DISTRIBUTION_SET_ID
4839        ,PAYMENT_SCHEDULE_ID
4840        ,RECEIPT_METHOD_ID
4841        ,RECEIVABLES_TRX_ID
4842        ,ED_ADJ_RECEIVABLES_TRX_ID
4843        ,UNED_RECEIVABLES_TRX_ID
4844        ,SET_OF_BOOKS_ID
4845        ,SALESREP_ID
4846        ,BILL_SITE_USE_ID
4847        ,DRAWEE_SITE_USE_ID
4848        ,PAYING_SITE_USE_ID
4849        ,SOLD_SITE_USE_ID
4850        ,SHIP_SITE_USE_ID
4851        ,RECEIPT_CUSTOMER_SITE_USE_ID
4852        ,BILL_CUST_ROLE_ID
4853        ,DRAWEE_CUST_ROLE_ID
4854        ,SHIP_CUST_ROLE_ID
4855        ,SOLD_CUST_ROLE_ID
4856        ,BILL_CUSTOMER_ID
4857        ,DRAWEE_CUSTOMER_ID
4858        ,PAYING_CUSTOMER_ID
4859        ,SOLD_CUSTOMER_ID
4860        ,SHIP_CUSTOMER_ID
4861        ,REMIT_ADDRESS_ID
4862        ,RECEIPT_BATCH_ID
4863        ,RECEIVABLE_APPLICATION_ID
4864        ,CUSTOMER_BANK_BRANCH_ID
4865        ,ISSUER_BANK_BRANCH_ID
4866        ,BATCH_SOURCE_ID
4867        ,BATCH_ID
4868        ,TERM_ID
4869        ,SELECT_FLAG
4870        ,LEVEL_FLAG
4871        ,FROM_TO_FLAG
4872        ,FROM_AMOUNT
4873        ,AMOUNT
4874        ,FROM_ACCTD_AMOUNT
4875        ,PAIRED_CCID
4876        --{BUG#4356088
4877        ,event_type_code
4878        ,event_class_code
4879        ,entity_code
4880        --BUG#4645389
4881        ,tax_line_id
4882        --}
4883 ,MFAR_ADDITIONAL_ENTRY
4884        )
4885         SELECT /*+LEADING(gt) USE_NL(gt,th)*/
4886            gt.event_id,                      -- EVENT_ID
4887            ar_mfar_extract_s.NEXTVAL,        --LINE_NUMBER
4888            '',                               -- LANGUAGE
4889            sob.set_of_books_id,              -- LEDGER_ID
4890            dist.source_id,                   -- SOURCE_ID
4891            dist.source_table,                -- SOURCE_TABLE
4892            dist.line_id,                     -- LINE_ID
4893            dist.tax_code_id,                 -- TAX_CODE_ID
4894            dist.location_segment_id,         -- LOCATION_SEGMENT_ID
4895            sob.currency_code,                -- BASE_CURRENCY
4896            trx.exchange_rate_type     ,      -- EXCHANGE_RATE_TYPE
4897            trx.exchange_rate     ,           -- EXCHANGE_RATE
4898            trx.exchange_date     ,           -- EXCHANGE_DATE
4899            NVL(dist.acctd_amount_cr,0) -
4900                NVL(dist.acctd_amount_dr,0),      -- ACCTD_AMOUNT
4901            NVL(dist.taxable_accounted_cr,0) -
4902                NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
4903            th.org_id,                        -- ORG_ID
4904            th.transaction_history_id,        -- HEADER_ID
4905            'TH',                             -- POSTING_ENTITY
4906            '',                               -- CASH_RECEIPT_ID
4907            th.customer_trx_id,               -- CUSTOMER_TRX_ID
4908            dist.ref_customer_trx_line_id,    -- CUSTOMER_TRX_LINE_ID
4909            dist.ref_cust_trx_line_gl_dist_id,--CUST_TRX_LINE_GL_DIST_ID
4910            gld.cust_trx_line_salesrep_id,    -- CUST_TRX_LINE_SALESREP_ID
4911            tl.inventory_item_id,             --INVENTORY_ITEM_ID
4912            tl.sales_tax_id,                  --SALES_TAX_ID
4913            osp.master_organization_id,       --SO_ORGANIZATION_ID
4914            tl.tax_exemption_id,              --TAX_EXEMPTION_ID
4915            tl.uom_code,                      --UOM_CODE
4916            tl.warehouse_id,                  --WAREHOUSE_ID
4917            trx.agreement_id,                 --AGREEMENT_ID
4918            trx.customer_bank_account_id,     --CUSTOMER_BANK_ACCT_ID
4919            '',                               --DRAWEE_BANK_ACCOUNT_ID
4920            trx.remit_bank_acct_use_id,   --REMITTANCE_BANK_ACCT_ID
4921            '',                               --DISTRIBUTION_SET_ID
4922            psch.payment_schedule_id,         --PAYMENT_SCHEDULE_ID
4923            '',                               --RECEIPT_METHOD_ID
4924            '',                               --RECEIVABLES_TRX_ID
4925            '',                               --ED_ADJ_RECEIVABLES_TRX_ID
4926            '',                               --UNED_RECEIVABLES_TRX_ID
4927            sob.set_of_books_id,              --SET_OF_BOOKS_ID
4928            trx.primary_salesrep_id,          --SALESREP_ID
4929            trx.bill_to_site_use_id,          --BILL_SITE_USE_ID
4930            trx.drawee_site_use_id,           --DRAWEE_SITE_USE_ID
4931            trx.paying_site_use_id,           --PAYING_SITE_USE_ID
4932            trx.sold_to_site_use_id,          --SOLD_SITE_USE_ID
4933            trx.ship_to_site_use_id,          --SHIP_SITE_USE_ID
4934            '',                               --RECEIPT_CUSTOMER_SITE_USE_ID
4935            trx.bill_to_contact_id,           --BILL_CUST_ROLE_ID
4936            trx.drawee_contact_id,            --DRAWEE_CUST_ROLE_ID
4937            trx.ship_to_contact_id,           --SHIP_CUST_ROLE_ID
4938            trx.sold_to_contact_id,           --SOLD_CUST_ROLE_ID
4939            trx.bill_to_customer_id,          --BILL_CUSTOMER_ID
4940            trx.drawee_id,                    --DRAWEE_CUSTOMER_ID
4941            trx.paying_customer_id,           --PAYING_CUSTOMER_ID
4942            trx.sold_to_customer_id,          --SOLD_CUSTOMER_ID
4943            trx.ship_to_customer_id,          --SHIP_CUSTOMER_ID
4944            '',                               --REMIT_ADDRESS_ID
4945            '',                               --RECEIPT_BATCH_ID
4946            '',                               --RECEIVABLE_APPLICATION_ID
4947            '',                               --CUSTOMER_BANK_BRANCH_ID
4948            '',                               --ISSUER_BANK_BRANCH_ID
4949            trx.batch_source_id,              --BATCH_SOURCE_ID
4950            trx.batch_id,                     --BATCH_ID
4951            trx.term_id,                      --TERM_ID
4952            'N',                              --SELECT_FLAG
4953            'L',                              --LEVEL_FLAG
4954            '',                               --FROM_TO_FLAG
4955            NVL(dist.from_amount_cr,0)
4956              -NVL(dist.from_amount_dr,0),    -- FROM_AMOUNT,
4957            NVL(dist.amount_cr,0)
4958              -NVL(dist.amount_dr,0),         -- AMOUNT
4959            NVL(dist.from_acctd_amount_cr,0)
4960              -NVL(dist.from_acctd_amount_dr,0), -- FROM_ACCTD_AMOUNT
4961            NULL                           -- PAIRED_CCID
4962          --{BUG#4356088
4963          ,gt.event_type_code
4964          ,gt.event_class_code
4965          ,gt.entity_code
4966          --BUG#4645389
4967          ,tl.tax_line_id       --tax_line_id
4968          ,'N'
4969       FROM xla_events_gt                  gt,
4970            ar_transaction_history_all     th,
4971            ra_customer_trx_all            trx,
4972            ra_customer_trx_lines_all      tl,
4973            ra_cust_trx_line_gl_dist_all   gld,
4974            oe_system_parameters_all       osp,
4975            ar_distributions_all           dist,
4976            gl_sets_of_books               sob,
4977            ar_payment_schedules_all       psch
4978      WHERE gt.event_type_code             IN ('BILL_CREATE'  ,
4979                                               'BILL_UPDATE'  ,
4980                                               'BILL_REVERSE'   )
4981        AND gt.application_id              = p_application_id
4982        AND gt.event_id                    = th.event_id
4983        AND dist.source_table              = 'TH'
4984        AND dist.source_id                 = th.transaction_history_id
4985        AND th.customer_trx_id             = trx.customer_trx_id
4986 --       AND trx.customer_trx_id            = tl.customer_trx_id
4987 --       AND trx.customer_trx_id            = gld.customer_trx_id
4988        AND th.org_id                      = osp.org_id(+)
4989        /*Pass double entries accounting*/
4990        --AND (    ( dist.source_type = 'REC' AND dist.source_table_secondary = 'CTL')
4991        --      OR ( dist.source_type <> 'REC'))
4992        AND dist.ref_customer_trx_line_id  = tl.customer_trx_line_id(+)
4993        AND dist.ref_cust_trx_line_gl_dist_id = gld.cust_trx_line_gl_dist_id(+)
4994        AND trx.set_of_books_id            = sob.set_of_books_id
4995        AND trx.customer_trx_id            = psch.customer_trx_id
4996        AND NVL(psch.terms_sequence_number,1) = 1;
4997    local_log(procedure_name => 'load_line_data_th',
4998              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.load_line_data_th()-');
4999 EXCEPTION
5000 --  WHEN NO_DATA_FOUND THEN NULL;
5001   WHEN OTHERS THEN
5002    local_log(procedure_name => 'load_line_data_th',
5003              p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_th '||
5004               arp_global.CRLF ||  'Error      :'|| SQLERRM);
5005     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5006     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5007          'Procedure :arp_xla_extract_main_pkg.load_line_data_th'|| arp_global.CRLF||
5008          'Error     :'||SQLERRM);
5009     FND_MSG_PUB.ADD;
5010   RAISE;
5011 END load_line_data_th;
5012 
5013 
5014 PROCEDURE load_line_data_mcd(p_application_id  IN NUMBER DEFAULT 222)
5015 IS
5016 BEGIN
5017    local_log(procedure_name => 'load_line_data_mcd',
5018              p_msg_text     => 'arp_xla_extract_main_pkg.load_line_data_mcd()+');
5019     -- Insert line level data in Line GT with
5020     -- selected_flag = N
5021     -- level_flag    = L
5022     -- From_to_flag  = NULL
5023     INSERT INTO ar_xla_lines_extract (
5024         EVENT_ID
5025        ,LINE_NUMBER
5026        ,LANGUAGE
5027        ,LEDGER_ID
5028        ,SOURCE_ID
5029        ,SOURCE_TABLE
5030        ,LINE_ID
5031        ,TAX_CODE_ID
5032        ,LOCATION_SEGMENT_ID
5033        ,BASE_CURRENCY_CODE
5034        ,EXCHANGE_RATE_TYPE
5035        ,EXCHANGE_RATE
5036        ,EXCHANGE_DATE
5037        ,ACCTD_AMOUNT
5038        ,TAXABLE_ACCTD_AMOUNT
5039        ,ORG_ID
5040        ,HEADER_TABLE_ID
5041        ,POSTING_ENTITY
5042        ,CASH_RECEIPT_ID
5043        ,CUSTOMER_TRX_ID
5044        ,CUSTOMER_TRX_LINE_ID
5045        ,CUST_TRX_LINE_GL_DIST_ID
5046        ,CUST_TRX_LINE_SALESREP_ID
5047        ,INVENTORY_ITEM_ID
5048        ,SALES_TAX_ID
5049        ,SO_ORGANIZATION_ID
5050        ,TAX_EXEMPTION_ID
5051        ,UOM_CODE
5052        ,WAREHOUSE_ID
5053        ,AGREEMENT_ID
5054        ,CUSTOMER_BANK_ACCT_ID
5055        ,DRAWEE_BANK_ACCOUNT_ID
5056        ,REMITTANCE_BANK_ACCT_ID
5057        ,DISTRIBUTION_SET_ID
5058        ,PAYMENT_SCHEDULE_ID
5059        ,RECEIPT_METHOD_ID
5060        ,RECEIVABLES_TRX_ID
5061        ,ED_ADJ_RECEIVABLES_TRX_ID
5062        ,UNED_RECEIVABLES_TRX_ID
5063        ,SET_OF_BOOKS_ID
5064        ,SALESREP_ID
5065        ,BILL_SITE_USE_ID
5066        ,DRAWEE_SITE_USE_ID
5067        ,PAYING_SITE_USE_ID
5068        ,SOLD_SITE_USE_ID
5069        ,SHIP_SITE_USE_ID
5070        ,RECEIPT_CUSTOMER_SITE_USE_ID
5071        ,BILL_CUST_ROLE_ID
5072        ,DRAWEE_CUST_ROLE_ID
5073        ,SHIP_CUST_ROLE_ID
5074        ,SOLD_CUST_ROLE_ID
5075        ,BILL_CUSTOMER_ID
5076        ,DRAWEE_CUSTOMER_ID
5077        ,PAYING_CUSTOMER_ID
5078        ,SOLD_CUSTOMER_ID
5079        ,SHIP_CUSTOMER_ID
5080        ,REMIT_ADDRESS_ID
5081        ,RECEIPT_BATCH_ID
5082        ,RECEIVABLE_APPLICATION_ID
5083        ,CUSTOMER_BANK_BRANCH_ID
5084        ,ISSUER_BANK_BRANCH_ID
5085        ,BATCH_SOURCE_ID
5086        ,BATCH_ID
5087        ,TERM_ID
5088        ,SELECT_FLAG
5089        ,LEVEL_FLAG
5090        ,FROM_TO_FLAG
5091        ,FROM_AMOUNT
5092        ,AMOUNT
5093        ,FROM_ACCTD_AMOUNT
5094        ,reversal_code
5095        ,MFAR_ADDITIONAL_ENTRY
5096        )
5097       -- FROM document type Cash Receipt
5098        SELECT /*+LEADING(gt) USE_NL(gt,mcd)*/
5099            gt.event_id,                        -- EVENT_ID
5100            dist.line_id,                       -- LINE_NUMBER
5101            '',                                 -- LANGUAGE
5102            sob.set_of_books_id,                -- LEDGER_ID
5103            dist.source_id,                     -- SOURCE_ID
5104            dist.source_table,                  -- SOURCE_TABLE
5105            dist.line_id,                       -- LINE_ID
5106            dist.tax_code_id,                   -- TAX_CODE_ID
5107            dist.location_segment_id,           -- LOCATION_SEGMENT_ID
5108            sob.currency_code,                  -- BASE_CURRENCY
5109            NVL(crh.exchange_rate_type,cr.exchange_rate_type), -- EXCHANGE_RATE_TYPE
5110            NVL(crh.exchange_rate,cr.exchange_rate)     ,      -- EXCHANGE_RATE
5111            NVL(crh.exchange_date,cr.exchange_date)     ,      -- EXCHANGE_DATE
5112            NVL(dist.acctd_amount_cr,0)
5113              - NVL(dist.acctd_amount_dr,0),      -- ACCTD_AMOUNT
5114            NVL(dist.taxable_accounted_cr,0)
5115              - NVL(dist.taxable_accounted_dr,0), -- TAXABLE_ACCTD_AMOUNT
5116            mcd.org_id,                         -- ORG_ID
5117            mcd.cash_receipt_id,      -- HEADER_ID
5118            'MCD',                              -- POSTING_ENTITY
5119            cr.cash_receipt_id,                 -- CASH_RECEIPT_ID
5120            NULL,                               -- CUSTOMER_TRX_ID
5121            NULL,                               -- CUSTOMER_TRX_LINE_ID
5122            NULL,                               -- CUST_TRX_LINE_GL_DIST_ID
5123            NULL,                               -- CUST_TRX_LINE_SALESREP_ID
5124            NULL,                               -- INVENTORY_ITEM_ID
5125            NULL,                               -- SALES_TAX_ID
5126            NULL,                               -- SO_ORGANIZATION_ID
5127            NULL,                               -- TAX_EXEMPTION_ID
5128            NULL,                               -- UOM_CODE
5129            NULL,                               -- WAREHOUSE_ID
5130            NULL,                               -- AGREEMENT_ID
5131            cr.customer_bank_account_id,        -- CUSTOMER_BANK_ACCT_ID
5132            NULL,                               -- DRAWEE_BANK_ACCOUNT_ID
5133            cr.remit_bank_acct_use_id,      -- REMITTANCE_BANK_ACCT_ID
5134            cr.distribution_set_id,             -- DISTRIBUTION_SET_ID
5135            NULL,                               -- PAYMENT_SCHEDULE_ID
5136            cr.receipt_method_id,               -- RECEIPT_METHOD_ID
5137            cr.receivables_trx_id,              -- RECEIVABLES_TRX_ID
5138            NULL,                               -- ED_ADJ_RECEIVABLES_TRX_ID
5139            NULL,                               -- UNED_RECEIVABLES_TRX_ID
5140            cr.set_of_books_id,                 -- SET_OF_BOOKS_ID
5141            NULL,                               -- SALESREP_ID
5142            cr.customer_site_use_id,            -- BILL_SITE_USE_ID
5143            NULL,                               -- DRAWEE_SITE_USE_ID
5144            cr.customer_site_use_id,            -- PAYING_SITE_USE_ID  -- synch with PAYING_CUSTOMER_ID
5145            NULL,                               -- SOLD_SITE_USE_ID
5146            NULL,                               -- SHIP_SITE_USE_ID
5147            cr.customer_site_use_id,            -- RECEIPT_CUSTOMER_SITE_USE_ID
5148            NULL,                               -- BILL_CUST_ROLE_ID
5149            NULL,                               -- DRAWEE_CUST_ROLE_ID
5150            NULL,                               -- SHIP_CUST_ROLE_ID
5151            NULL,                               -- SOLD_CUST_ROLE_ID
5152            NULL,                               -- BILL_CUSTOMER_ID
5153            NULL,                               -- DRAWEE_CUSTOMER_ID
5154            cr.pay_from_customer,               -- PAYING_CUSTOMER_ID
5155            NULL,                               -- SOLD_CUSTOMER_ID
5156            NULL,                               -- SHIP_CUSTOMER_ID
5157            NULL,                               -- REMIT_ADDRESS_ID
5158            cr.SELECTED_REMITTANCE_BATCH_ID,    -- RECEIPT_BATCH_ID
5159            NULL,                              -- RECEIVABLE_APPLICATION_ID
5160            cr.customer_bank_branch_id,         -- CUSTOMER_BANK_BRANCH_ID
5161            cr.issuer_bank_branch_id,           -- ISSUER_BANK_BRANCH_ID
5162            NULL,                               -- BATCH_SOURCE_ID
5163            NULL,                               -- BATCH_ID
5164            NULL,                               -- TERM_ID
5165            'N',                                -- SELECT_FLAG
5166            'L',                                -- LEVEL_FLAG
5167            '',                                -- FROM_TO_FLAG
5168            NVL(dist.from_amount_cr,0)
5169              -NVL(dist.from_amount_dr,0),      -- FROM_AMOUNT,
5170            NVL(dist.amount_cr,0)
5171              -NVL(dist.amount_dr,0),           -- AMOUNT
5172            NVL(dist.from_acctd_amount_cr,0)
5173              -NVL(dist.from_acctd_amount_dr,0) -- AMOUNT
5174            ,DECODE(gt.event_type_code,'MISC_RECP_REVERSE' ,'Y','N') --reversal_code
5175            ,'N'
5176         FROM xla_events_gt                  gt,
5177              ar_misc_cash_distributions_all mcd,
5178              ar_distributions_all           dist,
5179              gl_sets_of_books               sob,
5180              ar_cash_receipts_all           cr,
5181              --5201086
5182              ar_cash_receipt_history_all    crh
5183      WHERE gt.event_type_code IN (  'MISC_RECP_CREATE','MISC_RECP_RATE_ADJUST',
5184                                     'MISC_RECP_UPDATE') --Uptake XLA Reversal 'MISC_RECP_REVERSE' )
5185 --'MISC_RECP_REVERSE' REVERSAL only needs header level source
5186        AND gt.event_id                    = mcd.event_id
5187        AND gt.application_id              = p_application_id
5188        AND dist.source_table              = 'MCD'
5189        AND dist.source_id                 = mcd.misc_cash_distribution_id
5190        AND mcd.set_of_books_id            = sob.set_of_books_id
5191        AND mcd.cash_receipt_id            = cr.cash_receipt_id
5192        AND mcd.cash_receipt_history_id    = crh.cash_receipt_history_id(+);
5193 --       AND dist.source_type               = 'MISCCASH';
5194 
5195    local_log(procedure_name => 'load_line_data_mcd',
5196              p_msg_text     => 'arp_xla_extract_main_pkg.load_line_data_mcd()-');
5197 EXCEPTION
5198 --  WHEN NO_DATA_FOUND THEN NULL;
5199   WHEN OTHERS THEN
5200    local_log(procedure_name => 'load_line_data_mcd',
5201              p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.load_line_data_mcd '||
5202                 arp_global.CRLF ||  'Error      :'|| SQLERRM);
5203     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5204     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5205          'Procedure :arp_xla_extract_main_pkg.load_line_data_mcd'|| arp_global.CRLF||
5206          'Error     :'||SQLERRM);
5207     FND_MSG_PUB.ADD;
5208   RAISE;
5209 END load_line_data_mcd;
5210 
5211 
5212 -------------------------
5213 -- Extraction program  --
5214 -------------------------
5215 /*------------------------------------------------------+
5216  | Procedure name : Extract                             |
5217  +------------------------------------------------------+
5218  | Parameter : accounting mode                          |
5219  |              D for Draft                             |
5220  |              F for final                             |
5221  |                                                      |
5222  | Purpose : Extract the AR accounting lines based      |
5223  |           on xla events passed by XLA_EVENTS_GT      |
5224  |           This routine is launched by XLA accounting |
5225  |           program in extract phase                   |
5226  |                                                      |
5227  | Modification history                                 |
5228  | 23-FEB-2004  H. Yu  bug#3419926 restructuration      |
5229  +------------------------------------------------------*/
5230 --BUG#4387467
5231 PROCEDURE extract(p_application_id     IN NUMBER
5232                  ,p_accounting_mode    IN VARCHAR2)
5233 IS
5234 CURSOR c_sob IS
5235 SELECT set_of_books_id
5236   FROM ar_xla_lines_extract   gt
5237  WHERE posting_entity  = 'CR'
5238    AND select_flag     = 'Y'
5239    AND level_flag      = 'H'
5240    AND set_of_books_id IS NOT NULL;
5241 l_sob_id    NUMBER;
5242 BEGIN
5243    local_log(procedure_name => 'extract',
5244              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.extract()+');
5245    local_log(procedure_name => 'extract',
5246              p_msg_text     => '     p_application_id  :'|| p_application_id );
5247    local_log(procedure_name => 'extract',
5248              p_msg_text     => '     p_accounting_mode :'|| p_accounting_mode);
5249 
5250     upgrade_11i_r12_post;
5251 
5252     -- Posting transaction
5253     load_header_data_ctlgd(p_application_id => p_application_id);
5254     load_line_data_ctlgd(p_application_id => p_application_id);
5255     load_line_data_app_from_cm(p_application_id => p_application_id);
5256 
5257     -- Posting Cash Receipt or Misc cash receipt
5258     Load_header_data_crh(p_application_id => p_application_id);
5259 
5260     Load_line_data_crh(p_application_id => p_application_id);
5261 
5262     -- Posting from Cash Receipt
5263     load_line_data_app_from_cr(p_application_id => p_application_id);
5264 
5265     -- Posting Cash Receipt or Credit Memo
5266     -- Only execute once for both Cash receipt and Credit Memo
5267     -- If executed twice then duplication of data.
5268     load_line_data_app_to_trx(p_application_id => p_application_id);
5269 
5270     -- Mis Cash Receipt Distributions
5271     load_line_data_mcd(p_application_id => p_application_id);
5272 
5273     -- Posting Adjustment
5274     Load_header_data_adj(p_application_id => p_application_id);
5275     Load_line_data_adj(p_application_id => p_application_id);
5276 
5277     -- Posting Bill Receivable
5278     Load_header_data_th(p_application_id => p_application_id);
5279     Load_line_data_th(p_application_id => p_application_id);
5280 
5281     --{Execute MFAR extract if neceessary
5282     OPEN c_sob;
5283     FETCH c_sob INTO l_sob_id;
5284     IF c_sob%NOTFOUND THEN
5285       l_sob_id := -9999;
5286     END IF;
5287     CLOSE c_sob;
5288 
5289     IF l_sob_id <> -9999 THEN
5290       mfar_hook(p_ledger_id => l_sob_id) ;
5291     END IF;
5292     --}
5293 
5294    --{Conditional run for JL callout
5295    IF JL_BR_AR_BANK_ACCT_PKG.check_if_upgrade_occs THEN
5296       local_log(procedure_name => 'extract',
5297                 p_msg_text     => ' JL Callout JL_BR_AR_BANK_ACCT_PKG.load_occurrences_header_data');
5298       JL_BR_AR_BANK_ACCT_PKG.load_occurrences_header_data(p_application_id => p_application_id);
5299    END IF;
5300 
5301    --}
5302 --   IF fnd_profile.value('AR_EXTRACT_DIAG') = 'Y' THEN
5303    IF PG_DEBUG = 'Y' THEN
5304      diag_data;
5305    END IF;
5306 --   END IF;
5307 
5308    local_log(procedure_name => 'extract',
5309              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.extract()-');
5310 EXCEPTION
5311 --  WHEN NO_DATA_FOUND THEN NULL;
5312   WHEN OTHERS THEN
5313    local_log(procedure_name => 'extract',
5314              p_msg_text     => 'EXCEPTION OTHERS in arp_xla_extract_main_pkg.extract '|| arp_global.CRLF ||
5315                                'Error      :'|| SQLERRM);
5316     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5317     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5318          'Procedure :arp_xla_extract_main_pkg.extract'|| arp_global.CRLF||
5319          'Error     :'||SQLERRM);
5320     FND_MSG_PUB.ADD;
5321     APP_EXCEPTION.RAISE_EXCEPTION;
5322 END extract;
5323 
5324 --Old extract for testing purposes
5325 PROCEDURE extract(p_accounting_mode IN VARCHAR2) IS
5326 BEGIN
5327  extract(p_application_id  => 222
5328         ,p_accounting_mode => p_accounting_mode);
5329 END;
5330 
5331 -----------------
5332 -- Post processing with XLA no more posting control id
5333 -- In posting Entity, we can either use a dummy id in the column posting
5334 -- control when the posting is successful.
5335 -- As we use the posting control id in AR posting entity to indicate if
5336 -- a document has been posted or not.
5337 -- For now we still use the posting control id sequence to stamp the posted
5338 -- documents, we can think of how to avoid maintaining this id going forward.
5339 -----------------
5340 -- The table in which the posting_control_id is present in AR are:
5341 -- AR_MC_CASH_BASIS_DISTS_ALL     Obsolete unified Accrual and Cash basis accounting
5342 -- AR_CASH_BASIS_DISTS_ALL        Obsolete unified Accrual and Cash basis accounting
5343 -- RA_CUSTOMER_TRX_ALL            Do not post
5344 -- AR_RATE_ADJUSTMENTS_ALL        Do not post
5345 -- AR_CASH_RECEIPT_HISTORY_ALL     A  Those 4 A entities will post together
5346 -- AR_MC_CASH_RECEIPT_HIST         A  (Misc) Cash Receipt
5347 -- AR_MISC_CASH_DISTRIBUTIONS_ALL  A
5348 -- AR_MC_MISC_CASH_DISTS           A
5349 -- RA_CUST_TRX_LINE_GL_DIST_ALL    B  Those 2 B entities will post tpgether
5350 -- RA_MC_TRX_LINE_GL_DIST          B  (Transactions)
5351 -- AR_ADJUSTMENTS_ALL              C  Those 2 C entities will post together
5352 -- AR_MC_ADJUSTMENTS               C  (Adjustments)
5353 -- AR_RECEIVABLE_APPLICATIONS_ALL  D  Those 2 D entities will post together
5354 -- AR_MC_RECEIVABLE_APPS           D  (Applications)
5355 -- AR_TRANSACTION_HISTORY_ALL      E  Those 2 E entities will post together
5356 -- AR_MC_TRANSACTION_HISTORY       E  (Bill Receivables)
5357 --                                    Question are there any side effect
5358 --                                    from BR on TRX ?
5359 ------------------
5360 /*------------------------------------------------------+
5361  | Procedure name : flag_the_posting_id                 |
5362  +------------------------------------------------------+
5363  | Parameter : accounting mode                          |
5364  |              D for Draft                             |
5365  |              F for final                             |
5366  |                                                      |
5367  | Purpose : Stamping the posting control id in AR      |
5368  |           AR posting entities only for Final mode.   |
5369  |           This is used in the post acctg process     |
5370  |                                                      |
5371  | Modification history                                 |
5372  | 23-FEB-2004  H. Yu  Bug#3419926                      |
5373  +------------------------------------------------------*/
5374 --BUG#4387467
5375 PROCEDURE postaccounting
5376   (p_application_id         IN  NUMBER,
5377    p_ledger_id              IN  NUMBER,
5378    p_process_category       IN  VARCHAR2,
5379    p_end_date               IN  DATE,
5380    p_accounting_mode        IN  VARCHAR2,
5381    p_valuation_method       IN  VARCHAR2,
5382    p_security_id_int_1      IN  NUMBER,
5383    p_security_id_int_2      IN  NUMBER,
5384    p_security_id_int_3      IN  NUMBER,
5385    p_security_id_char_1     IN  NUMBER,
5386    p_security_id_char_2     IN  NUMBER,
5387    p_security_id_char_3     IN  NUMBER,
5388    p_report_request_id      IN  NUMBER)
5389 IS
5390 BEGIN
5391   NULL;
5392 END;
5393 
5394 --BUG#4387467
5395 PROCEDURE postprocessing
5396 (p_application_id        IN NUMBER
5397 ,p_accounting_mode       IN VARCHAR2)
5398 IS
5399   l_pst_id     NUMBER;
5400   l_date       DATE;
5401 BEGIN
5402    local_log(procedure_name => 'postprocessing',
5403              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.postprocessing()+');
5404 
5405     IF  p_accounting_mode = 'F' THEN
5406 
5407       SELECT ar_posting_control_s.NEXTVAL
5408         INTO l_pst_id
5409         FROM DUAL;
5410 
5411       SELECT trunc(sysdate) INTO l_date FROM SYS.DUAL;
5412       --
5413       -- CRH
5414       -- GL Posting entiting are
5415       --   AR_CASH_RECEIPT_HISTORY_ALL,
5416       --   AR_MISC_CASH_DISTRIBUTIONS_ALL,
5417       --
5418       UPDATE ar_cash_receipt_history_all
5419          SET posting_control_id = l_pst_id,
5420              gl_posted_date     = l_date
5421        WHERE posting_control_id = -3
5422          AND (cash_receipt_id, event_id) IN
5423            (SELECT ev.source_id_int_1, ev.event_id
5424               FROM xla_post_acctg_events_v ev
5425              WHERE ev.application_id    = p_application_id
5426                AND ev.process_status_code = 'P'
5427                AND ev.event_type_code   IN
5428                 ('RECP_CREATE'        ,
5429                  'RECP_UPDATE'        ,
5430                  'RECP_RATE_ADJUST'   ,
5431                  'RECP_REVERSE'       ,
5432                  'MISC_RECP_CREATE'   ,
5433                  'MISC_RECP_UPDATE'   ,
5434                  'MISC_RECP_RATE_ADJUST',
5435                  'MISC_RECP_REVERSE'    ));
5436 
5437       UPDATE AR_MISC_CASH_DISTRIBUTIONS_ALL
5438          SET posting_control_id = l_pst_id,
5439              gl_posted_date     = l_date
5440        WHERE posting_control_id = -3
5441          AND (cash_receipt_id, event_id) IN
5442              (SELECT ev.source_id_int_1, ev.event_id
5443                 FROM xla_post_acctg_events_v ev
5444                WHERE ev.application_id    = p_application_id
5445                  AND ev.process_status_code = 'P'
5446                  AND ev.event_type_code   IN
5447                 ('MISC_RECP_CREATE'   ,
5448                  'MISC_RECP_UPDATE'   ,
5449                  'MISC_RECP_RATE_ADJUST',
5450                  'MISC_RECP_REVERSE'  ));
5451 
5452       --
5453       -- CTLGD
5454       -- GL Posting entiting are
5455       --   RA_CUST_TRX_LINE_GL_DIST_ALL,
5456       --
5457       UPDATE /*+ INDEX(ra_cust_trx_line_gl_dist_all ra_cust_trx_line_gl_dist_n6) */
5458              ra_cust_trx_line_gl_dist_all
5459          SET posting_control_id = l_pst_id,
5460              gl_posted_date     = l_date
5461        WHERE posting_control_id = -3
5462          AND (customer_trx_id, event_id) IN
5463              (SELECT ev.source_id_int_1, ev.event_id
5464                 FROM xla_post_acctg_events_v ev
5465                WHERE ev.application_id    = p_application_id
5466                  AND ev.process_status_code = 'P'
5467                  AND ev.event_type_code   IN
5468                 ('INV_CREATE'     , 'INV_UPDATE'     ,
5469                  'CM_CREATE'      , 'CM_UPDATE'      ,
5470                  'DM_CREATE'      , 'DM_UPDATE'      ,
5471                  'DEP_CREATE'     , 'DEP_UPDATE' ,
5472                  'GUAR_CREATE'    , 'GUAR_UPDATE'    ,
5473                  'CB_CREATE'      ));
5474 
5475       --
5476       -- ADJ
5477       -- GL Posting entiting are
5478       --   AR_ADJUSTMENTS_ALL,
5479       --
5480       UPDATE ar_adjustments_all
5481          SET posting_control_id = l_pst_id,
5482              gl_posted_date     = l_date
5483        WHERE posting_control_id = -3
5484          AND adjustment_id IN
5485              (SELECT ev.source_id_int_1
5486                 FROM xla_post_acctg_events_v ev
5487                WHERE ev.application_id    = p_application_id
5488                  AND ev.process_status_code = 'P'
5489                  AND ev.event_type_code   = 'ADJ_CREATE');
5490 
5491       --
5492       -- APP
5493       -- GL Posting entiting are
5494       --   AR_RECEIVABLE_APPLICATIONS_ALL,
5495       --
5496       UPDATE ar_receivable_applications_all
5497          SET posting_control_id = l_pst_id,
5498              gl_posted_date     = l_date
5499        WHERE posting_control_id = -3
5500          AND event_id IN
5501              (SELECT ev.event_id
5502                 FROM xla_post_acctg_events_v ev
5503                WHERE ev.application_id    = p_application_id
5504                  AND ev.process_status_code = 'P'
5505                  AND ev.event_type_code   IN
5506                   ('CM_CREATE'      ,'CM_UPDATE'      ,
5507                    'RECP_CREATE'    ,'RECP_UPDATE'    ,
5508                    'RECP_RATE_ADJUST','RECP_REVERSE'  ,
5509                    'MISC_RECP_RATE_ADJUST','MISC_RECP_REVERSE'  ));
5510 
5511       --
5512       -- TH
5513       -- GL Posting entiting are
5514       --   AR_TRANSACTION_HISTORY_ALL,
5515       --
5516       UPDATE AR_TRANSACTION_HISTORY_ALL
5517          SET posting_control_id = l_pst_id,
5518              gl_posted_date     = l_date
5519        WHERE posting_control_id = -3
5520          AND postable_flag='Y'
5521          AND event_id IN
5522              (SELECT ev.event_id
5523                 FROM xla_post_acctg_events_v ev
5524                WHERE ev.application_id    = p_application_id
5525                  AND ev.process_status_code = 'P'
5526                  AND ev.event_type_code   IN
5527                  ( 'BILL_CREATE'    ,
5528                    'BILL_UPDATE'    ,
5529                    'BILL_REVERSE'   ));
5530 
5531     END IF;
5532    local_log(procedure_name => 'postprocessing',
5533              p_msg_text     => 'ARP_XLA_EXTRACT_MAIN_PKG.postprocessing()-');
5534 EXCEPTION
5535 --  WHEN NO_DATA_FOUND THEN NULL;
5536   WHEN OTHERS THEN
5537    local_log(procedure_name => 'postprocessing',
5538              p_msg_text     =>'EXCEPTION OTHERS in arp_xla_extract_main_pkg.postprocessing '|| arp_global.CRLF ||
5539        'Error      :'|| SQLERRM);
5540     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5541     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5542          'Procedure :arp_xla_extract_main_pkg.postprocessing '|| arp_global.CRLF||
5543          'Error     :'||SQLERRM);
5544     FND_MSG_PUB.ADD;
5545     APP_EXCEPTION.RAISE_EXCEPTION;
5546 END postprocessing;
5547 
5548 
5549 
5550 PROCEDURE flag_the_posting_id(p_accounting_mode IN VARCHAR2)
5551 IS
5552 BEGIN
5553    local_log(procedure_name => 'flag_the_posting_id',
5554              p_msg_text     =>'arp_xla_extract_main_pkg.flag_the_posting_id()+');
5555 
5556     postprocessing(p_application_id    => 222
5557                   ,p_accounting_mode   => p_accounting_mode);
5558 
5559    local_log(procedure_name => 'flag_the_posting_id',
5560              p_msg_text     =>'ARP_XLA_EXTRACT_MAIN_PKG.flag_the_posting_id()-');
5561 END flag_the_posting_id;
5562 
5563 
5564 /*-----------------------------------------------------------+
5565  | Procedure name : lock_documents_for_xla                   |
5566  +-----------------------------------------------------------+
5567  | Parameter : None                                          |
5568  |                                                           |
5569  | Purpose : Locking the records concerned in a              |
5570  |           particular accounting program process.          |
5571  |                                                           |
5572  | Modification history                                      |
5573  | 23-FEB-2004   H. Yu   Bug#3419926 Redesign of acct events |
5574  +-----------------------------------------------------------*/
5575 PROCEDURE preaccounting
5576 ( p_application_id     IN NUMBER
5577  ,p_ledger_id          IN NUMBER
5578  ,p_process_category   IN VARCHAR2
5579  ,p_end_date           IN DATE
5580  ,p_accounting_mode    IN VARCHAR2
5581  ,p_valuation_method   IN VARCHAR2
5582  ,p_security_id_int_1  IN NUMBER
5583  ,p_security_id_int_2  IN NUMBER
5584  ,p_security_id_int_3  IN NUMBER
5585  ,p_security_id_char_1 IN VARCHAR2
5586  ,p_security_id_char_2 IN VARCHAR2
5587  ,p_security_id_char_3 IN VARCHAR2
5588  ,p_report_request_id  IN NUMBER)
5589 IS
5590 BEGIN
5591    local_log(procedure_name =>'preaccounting',
5592              p_msg_text     =>'arp_xla_extract_main_pkg.preaccounting()+');
5593 
5594    local_log(procedure_name =>'preaccounting',
5595              p_msg_text     =>'  p_application_id    :'||p_application_id);
5596    local_log(procedure_name =>'preaccounting',
5597              p_msg_text     =>'  p_ledger_id         :'||p_ledger_id);
5598    local_log(procedure_name =>'preaccounting',
5599              p_msg_text     =>'  p_process_category  :'||p_process_category);
5600    local_log(procedure_name =>'preaccounting',
5601              p_msg_text     =>'  p_end_date          :'||p_end_date);
5602    local_log(procedure_name =>'preaccounting',
5603              p_msg_text     =>'  p_accounting_mode   :'||p_accounting_mode);
5604    local_log(procedure_name =>'preaccounting',
5605              p_msg_text     =>'  p_valuation_method  :'||p_valuation_method);
5606    local_log(procedure_name =>'preaccounting',
5607              p_msg_text     =>'  p_security_id_int_1 :'||p_security_id_int_1);
5608    local_log(procedure_name =>'preaccounting',
5609              p_msg_text     =>'  p_security_id_int_2 :'||p_security_id_int_2);
5610    local_log(procedure_name =>'preaccounting',
5611              p_msg_text     =>'  p_security_id_int_3 :'||p_security_id_int_3);
5612    local_log(procedure_name =>'preaccounting',
5613              p_msg_text     =>'  p_security_id_char_1:'||p_security_id_char_1);
5614    local_log(procedure_name =>'preaccounting',
5615              p_msg_text     =>'  p_security_id_char_2:'||p_security_id_char_2);
5616    local_log(procedure_name =>'preaccounting',
5617              p_msg_text     =>'  p_security_id_char_3:'||p_security_id_char_3);
5618    local_log(procedure_name =>'preaccounting',
5619              p_msg_text     =>'  p_report_request_id :'||p_report_request_id);
5620 
5621 --{
5622 --BUG#5366837
5623 --No need to run this code anymore as we upgrade unposted cash basis data and upgrade PSA dist to AR for adj - app -crh
5624 --For transaction although not upgraded MFAR AAD will build the correct accounting
5625 --{Unification of Cash Basis Accounting
5626 -- local_log(procedure_name =>'preaccounting',
5627 --           p_msg_text     =>'  call unification of cash basis : ar_upgrade_cash_accrual.create_cash_distributions');
5628 --
5629 --       ar_upgrade_cash_accrual.create_distributions;
5630 --
5631 -- local_log(procedure_name =>'preaccounting',
5632 --           p_msg_text     =>'  locking distribution rows');
5633 --}
5634 
5635        -- CTLGD
5636         SELECT 'lock'
5637           BULK COLLECT INTO l_lock
5638           FROM xla_entity_events_v          eve,
5639                ra_cust_trx_line_gl_dist_all ctlgd
5640          WHERE eve.request_id           = p_report_request_id
5641            AND eve.application_id       = p_application_id
5642            AND eve.entity_code          = 'TRANSACTIONS'
5643            AND eve.event_id             = ctlgd.event_id
5644            AND ctlgd.posting_control_id = -3
5645            AND ctlgd.account_set_flag   = 'N'
5646         FOR UPDATE OF ctlgd.cust_trx_line_gl_dist_id;
5647 
5648         -- ADJ
5649         SELECT 'lock'
5650           BULK COLLECT INTO l_lock
5651           FROM xla_entity_events_v          eve,
5652 		       ar_adjustments_all           adj
5653          WHERE eve.request_id           = p_report_request_id
5654            AND eve.application_id       = p_application_id
5655            AND eve.entity_code          = 'ADJUSTMENTS'
5656            AND eve.event_id             = adj.event_id
5657            AND adj.posting_control_id   = -3
5658            AND NVL(adj.postable,'Y')    = 'Y'
5659         FOR UPDATE OF adjustment_id;
5660 
5661         -- APP
5662         SELECT 'lock'
5663           BULK COLLECT INTO l_lock
5664           FROM xla_entity_events_v            eve,
5665                ar_receivable_applications_all app
5666          WHERE eve.request_id             = p_report_request_id
5667            AND eve.application_id         = p_application_id
5668            AND eve.entity_code           IN ('RECEIPTS','TRANSACTIONS')
5669            AND eve.event_id               = app.event_id
5670            AND app.posting_control_id     = -3
5671            AND NVL(app.postable,'Y')      ='Y'
5672            AND NVL(app.confirmed_flag,'Y')='Y'
5673         FOR UPDATE OF receivable_application_id;
5674 
5675         -- CRH MCD
5676         SELECT 'lock'
5677           BULK COLLECT INTO l_lock
5678           FROM xla_entity_events_v         eve,
5679                ar_cash_receipt_history_all crh
5680          WHERE eve.request_id           = p_report_request_id
5681            AND eve.application_id       = p_application_id
5682            AND eve.entity_code          = 'RECEIPTS'
5683            AND eve.event_id             = crh.event_id
5684            AND crh.posting_control_id   = -3
5685         FOR UPDATE OF crh.cash_receipt_history_id;
5686 
5687         SELECT 'lock'
5688           BULK COLLECT INTO l_lock
5689           FROM xla_entity_events_v            eve,
5690                ar_misc_cash_distributions_all mcd
5691          WHERE eve.request_id           = p_report_request_id
5692            AND eve.application_id       = p_application_id
5693            AND eve.entity_code          = 'RECEIPTS'
5694            AND eve.event_id             = mcd.event_id
5695            AND mcd.posting_control_id   = -3
5696         FOR UPDATE OF misc_cash_distribution_id;
5697 
5698         --TRH
5699         SELECT 'lock'
5700           BULK COLLECT INTO l_lock
5701           FROM xla_entity_events_v            eve,
5702                ar_transaction_history_all     trh
5703          WHERE eve.request_id           = p_report_request_id
5704            AND eve.application_id       = p_application_id
5705            AND eve.entity_code          = 'BILLS_RECEIVABLE'
5706            AND eve.event_id             = trh.event_id
5707            AND trh.postable_flag        = 'Y'
5708            AND trh.posting_control_id   = -3
5709         FOR UPDATE OF trh.transaction_history_id;
5710 
5711    local_log(procedure_name =>'preaccounting',
5712              p_msg_text     =>'arp_xla_extract_main_pkg.preaccounting -');
5713 EXCEPTION
5714 --  WHEN NO_DATA_FOUND THEN NULL;
5715   WHEN OTHERS THEN
5716    local_log(procedure_name =>'preaccounting',
5717              p_msg_text     =>'EXCEPTION OTHERS in arp_xla_extract_main_pkg.lock_documents_for_xla '||
5718              arp_global.CRLF || 'Error      :'|| SQLERRM);
5719     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5720     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5721          'Procedure :arp_xla_extract_main_pkg.lock_documents_for_xla'|| arp_global.CRLF||
5722          'Error     :'||SQLERRM);
5723     FND_MSG_PUB.ADD;
5724     APP_EXCEPTION.RAISE_EXCEPTION;
5725 END preaccounting;
5726 
5727 
5728 -- This routine is no longer usefull
5729 -- Keep this routine in order not to break the current code
5730 PROCEDURE lock_documents_for_xla IS
5731 BEGIN
5732   NULL;
5733 END;
5734 
5735 /*------------------------------------------------------+
5736  | Procedure name : locking_status                      |
5737  +------------------------------------------------------+
5738  | Parameter : Workflow rule function subscription      |
5739  |             standard parameters.                     |
5740  |                                                      |
5741  | Purpose : Allow the procedure lock_documents_for_xla |
5742  |           to be called in Workflow 2.6               |
5743  |                                                      |
5744  | Modification history                                 |
5745  +------------------------------------------------------*/
5746 FUNCTION locking_status(p_subscription_guid IN RAW,
5747                         p_event             IN OUT NOCOPY wf_event_t)
5748 RETURN VARCHAR2
5749 IS
5750   l_application_id   NUMBER;
5751 BEGIN
5752   l_application_id  := p_event.GetValueForParameter('APPLICATION_ID');
5753   IF l_application_id = 222 THEN
5754     lock_documents_for_xla;
5755   END IF;
5756   RETURN 'SUCCESS';
5757 EXCEPTION
5758   WHEN OTHERS THEN
5759     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5760     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5761 'Procedure:arp_xla_extract_main_pkg.lock_documents_for_xla
5762 Error:'||SQLERRM);
5763     FND_MSG_PUB.ADD;
5764 --    APP_EXCEPTION.RAISE_EXCEPTION;
5765     RETURN 'ERROR';
5766 END locking_status;
5767 
5768 
5769 /*------------------------------------------------------+
5770  | Procedure name : extract_status                      |
5771  +------------------------------------------------------+
5772  | Parameter : Workflow rule function subscription      |
5773  |             standard parameters.                     |
5774  |                                                      |
5775  | Purpose : Allow the procedure extract                |
5776  |           to be called in Workflow 2.6               |
5777  |                                                      |
5778  | Modification history                                 |
5779  +------------------------------------------------------*/
5780 FUNCTION extract_status(p_subscription_guid IN RAW,
5781                         p_event             IN OUT NOCOPY wf_event_t)
5782 RETURN VARCHAR2
5783 IS
5784   l_mode            VARCHAR2(30);
5785   l_application_id  NUMBER;
5786 BEGIN
5787   l_application_id  := p_event.GetValueForParameter('APPLICATION_ID');
5788   IF l_application_id = 222 THEN
5789     l_mode := p_event.GetValueForParameter('ACCOUNTING_MODE');
5790     extract(p_accounting_mode => l_mode);
5791   END IF;
5792   RETURN 'SUCCESS';
5793 EXCEPTION
5794   WHEN OTHERS THEN
5795     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5796     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5797 'Procedure:arp_xla_extract_main_pkg.extract
5798 Mode:'||l_mode||'
5799 Error:'||SQLERRM);
5800     FND_MSG_PUB.ADD;
5801 --    APP_EXCEPTION.RAISE_EXCEPTION;
5802     RETURN 'ERROR';
5803 END extract_status;
5804 
5805 
5806 /*------------------------------------------------------+
5807  | Procedure name : posting_ctl_status                  |
5808  +------------------------------------------------------+
5809  | Parameter : Workflow rule function subscription      |
5810  |             standard parameters.                     |
5811  |                                                      |
5812  | Purpose : Allow the procedure flag_the_posting_id    |
5813  |           to be called in Workflow 2.6               |
5814  |                                                      |
5815  | Modification history                                 |
5816  +------------------------------------------------------*/
5817 FUNCTION posting_ctl_status(p_subscription_guid IN RAW,
5818                             p_event             IN OUT NOCOPY wf_event_t)
5819 RETURN VARCHAR2
5820 IS
5821   l_key              VARCHAR2(240) := p_event.GetEventKey();
5822   l_mode             VARCHAR2(30);
5823   l_application_id   NUMBER;
5824   l_mode_exception   EXCEPTION;
5825 BEGIN
5826   l_application_id  := p_event.GetValueForParameter('APPLICATION_ID');
5827   IF l_application_id = 222 THEN
5828     l_mode := p_event.GetValueForParameter('ACCOUNTING_MODE');
5829     IF l_mode NOT IN ('D','F') THEN
5830       RAISE l_mode_exception;
5831     END IF;
5832     flag_the_posting_id(p_accounting_mode => l_mode);
5833   END IF;
5834   RETURN 'SUCCESS';
5835 EXCEPTION
5836   WHEN l_mode_exception THEN
5837     -- As the error message is only useful for debugging and it has
5838     -- no functional impact. For now, the FND_GENERIC_MESSAGE is used
5839     -- We might need to end up seeded messages later.
5840     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5841     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5842 'Procedure:arp_xla_extract_main_pkg.posting_ctl_status
5843 Error: accounting is '||l_mode||' - mode should be D (Draft) or F (Final)');
5844     FND_MSG_PUB.ADD;
5845 --    APP_EXCEPTION.RAISE_EXCEPTION;
5846     RETURN 'ERROR';
5847   WHEN OTHERS THEN
5848     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
5849     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
5850 'Procedure:arp_xla_extract_main_pkg.posting_ctl_status
5851 Mode:'||l_mode||'
5852 Error:'||SQLERRM);
5853     FND_MSG_PUB.ADD;
5854     APP_EXCEPTION.RAISE_EXCEPTION;
5855     RETURN 'ERROR';
5856 END posting_ctl_status;
5857 
5858 
5859 --{Get GL segment info
5860 PROCEDURE  get_segment_value
5861 (p_segment_name    IN VARCHAR2,
5862  p_coa_id          IN NUMBER,
5863  p_ccid            IN NUMBER,
5864  x_segment_value   OUT NOCOPY VARCHAR2)
5865 IS
5866  l_c           INTEGER;
5867  l_exec        INTEGER;
5868  l_fetch_row   INTEGER;
5869  l_stmt        VARCHAR2(2000);
5870  l_xla_user    VARCHAR2(30);
5871 BEGIN
5872 --local_log('arp_xla_extract_main_pkg',' get_segment_value +');
5873     l_stmt :=
5874 ' SELECT '||p_segment_name||'
5875   FROM gl_code_combinations
5876  WHERE chart_of_accounts_id = :coa_id
5877    AND code_combination_id  = :ccid ';
5878 --local_log('arp_xla_extract_main_pkg',' l_stmt :'||l_stmt);
5879     l_c  := DBMS_SQL.OPEN_CURSOR;
5880     DBMS_SQL.PARSE(l_c, l_stmt, DBMS_SQL.NATIVE);
5881     DBMS_SQL.BIND_VARIABLE(l_c,':coa_id',p_coa_id);
5882     DBMS_SQL.BIND_VARIABLE(l_c,':ccid',p_ccid);
5883     DBMS_SQL.DEFINE_COLUMN(l_c,1,x_segment_value,30);
5884     l_exec := DBMS_SQL.EXECUTE(l_c);
5885     l_fetch_row := DBMS_SQL.FETCH_ROWS(l_c);
5886     DBMS_SQL.COLUMN_VALUE(l_c, 1, x_segment_value);
5887     DBMS_SQL.CLOSE_CURSOR(l_c);
5888 --local_log('arp_xla_extract_main_pkg',' get_segment_value -');
5889 END;
5890 
5891 
5892 FUNCTION the_segment_value(p_coa_id     IN NUMBER,
5893                        p_qual_code  IN VARCHAR2,
5894                        p_ccid       IN NUMBER)
5895 RETURN VARCHAR2
5896 IS
5897   l_segment_name     VARCHAR2(30);
5898   l_segment_value    VARCHAR2(25);
5899   l_hash_value       NUMBER;
5900   CURSOR c IS
5901   SELECT application_column_name
5902     FROM FND_SEGMENT_ATTRIBUTE_VALUES
5903    WHERE id_flex_num            = p_coa_id
5904      AND segment_attribute_type = p_qual_code
5905      AND id_flex_code           = 'GL#'
5906      AND attribute_value        = 'Y';
5907 BEGIN
5908 
5909   IF p_coa_id    IS NOT NULL AND
5910      p_qual_code IS NOT NULL AND
5911      p_ccid      IS NOT NULL
5912   THEN
5913 
5914     l_hash_value := DBMS_UTILITY.get_hash_value(
5915                                          'COA:'||p_coa_id||'@*?QUAL:'||p_qual_code||'@*?CCID:'||p_ccid||'@*?END:',
5916                                          1000,
5917                                          32768);
5918 
5919 
5920     IF p_qual_code = 'GL_BALANCING' THEN
5921        IF pg_bal_qual.EXISTS(l_hash_value) THEN
5922          l_segment_value := pg_bal_qual(l_hash_value);
5923        ELSE
5924          OPEN c;
5925            FETCH c INTO l_segment_name;
5926          CLOSE c;
5927          get_segment_value(p_segment_name    => l_segment_name,
5928                            p_coa_id          => p_coa_id,
5929                            p_ccid            => p_ccid,
5930                            x_segment_value   => l_segment_value);
5931          pg_bal_qual(l_hash_value) := l_segment_value;
5932        END IF;
5933     ELSIF p_qual_code = 'GL_ACCOUNT' THEN
5934        IF pg_nat_qual.EXISTS(l_hash_value) THEN
5935          l_segment_value := pg_nat_qual(l_hash_value);
5936        ELSE
5937          OPEN c;
5938            FETCH c INTO l_segment_name;
5939          CLOSE c;
5940          get_segment_value(p_segment_name    => l_segment_name,
5941                            p_coa_id          => p_coa_id,
5942                            p_ccid            => p_ccid,
5943                            x_segment_value   => l_segment_value);
5944          pg_nat_qual(l_hash_value) := l_segment_value;
5945        END IF;
5946     END IF;
5947   END IF;
5948 
5949   return(l_segment_value);
5950 
5951 EXCEPTION
5952  WHEN no_data_found  THEN
5953   return(null);
5954  WHEN OTHERS THEN
5955   raise;
5956 END;
5957 
5958 
5959 FUNCTION ed_uned_trx(p_type IN VARCHAR2, p_org_id IN NUMBER) RETURN NUMBER
5960 IS
5961   l_trx_id           NUMBER;
5962   l_hash_value       NUMBER;
5963   CURSOR c IS
5964   SELECT receivables_trx_id
5965     FROM ar_receivables_trx_all
5966    WHERE org_id  = p_org_id
5967      AND type    = p_type;
5968 BEGIN
5969   IF p_org_id    IS NOT NULL AND
5970      p_type      IS NOT NULL
5971   THEN
5972     l_hash_value := DBMS_UTILITY.get_hash_value(
5973                                          'EDUNED:'||p_type||'@*?:'||p_org_id||'@*?END:',
5974                                          1000,
5975                                          32768);
5976     IF p_type = 'EDISC' THEN
5977        IF pg_ed_trx.EXISTS(l_hash_value) THEN
5978          l_trx_id := pg_ed_trx(l_hash_value);
5979        ELSE
5980          OPEN c;
5981            FETCH c INTO l_trx_id;
5982          CLOSE c;
5983          pg_ed_trx(l_hash_value) := l_trx_id;
5984        END IF;
5985     ELSIF p_type = 'UNEDISC' THEN
5986        IF pg_uned_trx.EXISTS(l_hash_value) THEN
5987          l_trx_id := pg_uned_trx(l_hash_value);
5988        ELSE
5989          OPEN c;
5990            FETCH c INTO l_trx_id;
5991          CLOSE c;
5992          pg_uned_trx(l_hash_value) := l_trx_id;
5993        END IF;
5994     END IF;
5995   END IF;
5996   return(l_trx_id);
5997 EXCEPTION
5998  WHEN no_data_found  THEN
5999   return(null);
6000  WHEN OTHERS THEN
6001   raise;
6002 END;
6003 
6004 
6005 -- bug 7319548
6006 FUNCTION get_glr_ccid (ra_id IN NUMBER) RETURN NUMBER
6007 IS
6008  l_ccid NUMBER;
6009 BEGIN
6010 
6011   IF ( g_glr_ccid_cache_tab.EXISTS(ra_id) = FALSE ) THEN
6012 
6013       select ard.code_combination_id
6014              into l_ccid
6015       from ar_distributions_all ard
6016       where ard.source_table = 'RA'
6017       and ard.source_type in ('EXCH_GAIN','EXCH_LOSS')
6018       and ard.source_id = ra_id;
6019 
6020       g_glr_ccid_cache_tab(ra_id) := l_ccid;
6021 
6022    END IF;
6023 
6024    return g_glr_ccid_cache_tab(ra_id);
6025 
6026 EXCEPTION
6027    WHEN NO_DATA_FOUND then return NULL;
6028    WHEN OTHERS THEN
6029    local_log(procedure_name => 'get_glr_ccid',
6030              p_msg_text     =>'EXCEPTION OTHERS in arp_xla_extract_main_pkg.get_glr_ccid '||
6031              arp_global.CRLF ||'Error      :'|| SQLERRM);
6032     FND_MESSAGE.SET_NAME('FND', 'FND_GENERIC_MESSAGE');
6033     FND_MESSAGE.SET_TOKEN('MESSAGE' ,
6034          'Procedure :arp_xla_extract_main_pkg.get_glr_ccid'|| arp_global.CRLF||
6035          'Error     :'||SQLERRM);
6036     FND_MSG_PUB.ADD;
6037   RAISE;
6038 
6039 END get_glr_ccid;
6040 
6041 
6042 
6043 PROCEDURE diag_data
6044 IS
6045 CURSOR c IS
6046  SELECT *
6047    FROM ar_xla_lines_extract;
6048 l_c    c%ROWTYPE;
6049 
6050 
6051 CURSOR c2 IS
6052 SELECT *
6053 FROM xla_events_gt
6054 WHERE application_id = 222;
6055 l      c2%ROWTYPE;
6056 
6057 
6058 l_text   VARCHAR2(4000);
6059 cpt      NUMBER := 0;
6060 BEGIN
6061 --
6062 /*
6063 DELETE FROM ar_xla_event_tmp;
6064 --
6065 DELETE FROM ar_xla_lines_extract_tmp;
6066 --
6067 INSERT INTO ar_xla_event_tmp
6068   (LINE_NUMBER         ,
6069    ENTITY_ID           ,
6070    APPLICATION_ID      ,
6071    LEDGER_ID           ,
6072    LEGAL_ENTITY_ID     ,
6073    ENTITY_CODE         ,
6074    TRANSACTION_NUMBER  ,
6075    SOURCE_ID_INT_1     ,
6076    SOURCE_ID_INT_2     ,
6077    SOURCE_ID_INT_3     ,
6078    SOURCE_ID_INT_4     ,
6079    SOURCE_ID_CHAR_1    ,
6080    SOURCE_ID_CHAR_2    ,
6081    SOURCE_ID_CHAR_3    ,
6082    SOURCE_ID_CHAR_4    ,
6083    EVENT_ID            ,
6084    EVENT_CLASS_CODE    ,
6085    EVENT_TYPE_CODE     ,
6086    EVENT_NUMBER        ,
6087    EVENT_DATE          ,
6088    EVENT_STATUS_CODE   ,
6089    PROCESS_STATUS_CODE ,
6090    EVENT_CREATED_BY    ,
6091    REFERENCE_NUM_1     ,
6092    REFERENCE_NUM_2     ,
6093    REFERENCE_NUM_3     ,
6094    REFERENCE_NUM_4     ,
6095    REFERENCE_CHAR_1    ,
6096    REFERENCE_CHAR_2    ,
6097    REFERENCE_CHAR_3    ,
6098    REFERENCE_CHAR_4    ,
6099    REFERENCE_DATE_1    ,
6100    REFERENCE_DATE_2    ,
6101    REFERENCE_DATE_3    ,
6102    REFERENCE_DATE_4    ,
6103    VALUATION_METHOD    ,
6104    SECURITY_ID_INT_1   ,
6105    SECURITY_ID_INT_2   ,
6106    SECURITY_ID_INT_3   ,
6107    SECURITY_ID_CHAR_1  ,
6108    SECURITY_ID_CHAR_2  ,
6109    SECURITY_ID_CHAR_3  ,
6110    ON_HOLD_FLAG        ,
6111    TRANSACTION_DATE    ,
6112    BUDGETARY_CONTROL_FLAG   )
6113  SELECT
6114    LINE_NUMBER         ,
6115    ENTITY_ID           ,
6116    APPLICATION_ID      ,
6117    LEDGER_ID           ,
6118    LEGAL_ENTITY_ID     ,
6119    ENTITY_CODE         ,
6120    TRANSACTION_NUMBER  ,
6121    SOURCE_ID_INT_1     ,
6122    SOURCE_ID_INT_2     ,
6123    SOURCE_ID_INT_3     ,
6124    SOURCE_ID_INT_4     ,
6125    SOURCE_ID_CHAR_1    ,
6126    SOURCE_ID_CHAR_2    ,
6127    SOURCE_ID_CHAR_3    ,
6128    SOURCE_ID_CHAR_4    ,
6129    EVENT_ID            ,
6130    EVENT_CLASS_CODE    ,
6131    EVENT_TYPE_CODE     ,
6132    EVENT_NUMBER        ,
6133    EVENT_DATE          ,
6134    EVENT_STATUS_CODE   ,
6135    PROCESS_STATUS_CODE ,
6136    EVENT_CREATED_BY    ,
6137    REFERENCE_NUM_1     ,
6138    REFERENCE_NUM_2     ,
6139    REFERENCE_NUM_3     ,
6140    REFERENCE_NUM_4     ,
6141    REFERENCE_CHAR_1    ,
6142    REFERENCE_CHAR_2    ,
6143    REFERENCE_CHAR_3    ,
6144    REFERENCE_CHAR_4    ,
6145    REFERENCE_DATE_1    ,
6146    REFERENCE_DATE_2    ,
6147    REFERENCE_DATE_3    ,
6148    REFERENCE_DATE_4    ,
6149    VALUATION_METHOD    ,
6150    SECURITY_ID_INT_1   ,
6151    SECURITY_ID_INT_2   ,
6152    SECURITY_ID_INT_3   ,
6153    SECURITY_ID_CHAR_1  ,
6154    SECURITY_ID_CHAR_2  ,
6155    SECURITY_ID_CHAR_3  ,
6156    ON_HOLD_FLAG        ,
6157    TRANSACTION_DATE    ,
6158    BUDGETARY_CONTROL_FLAG
6159   FROM xla_events_gt
6160   WHERE application_id = 222;
6161 --
6162 INSERT INTO ar_xla_lines_extract_tmp
6163  ( EVENT_ID                  ,
6164    LINE_NUMBER               ,
6165    LANGUAGE                  ,
6166    LEDGER_ID                 ,
6167    SOURCE_ID                 ,
6168    SOURCE_TABLE              ,
6169    LINE_ID                   ,
6170    TAX_CODE_ID               ,
6171    LOCATION_SEGMENT_ID       ,
6172    BASE_CURRENCY_CODE        ,
6173    EXCHANGE_RATE_TYPE        ,
6174    EXCHANGE_RATE             ,
6175    EXCHANGE_DATE             ,
6176    ACCTD_AMOUNT              ,
6177    TAXABLE_ACCTD_AMOUNT      ,
6178    ORG_ID                    ,
6179    HEADER_TABLE_ID           ,
6180    POSTING_ENTITY            ,
6181    CASH_RECEIPT_ID           ,
6182    CUSTOMER_TRX_ID           ,
6183    CUSTOMER_TRX_LINE_ID      ,
6184    CUST_TRX_LINE_GL_DIST_ID  ,
6185    CUST_TRX_LINE_SALESREP_ID ,
6186    INVENTORY_ITEM_ID         ,
6187    SALES_TAX_ID              ,
6188    SO_ORGANIZATION_ID        ,
6189    TAX_EXEMPTION_ID          ,
6190    UOM_CODE                  ,
6191    WAREHOUSE_ID              ,
6192    AGREEMENT_ID              ,
6193    CUSTOMER_BANK_ACCT_ID     ,
6194    DRAWEE_BANK_ACCOUNT_ID    ,
6195    REMITTANCE_BANK_ACCT_ID   ,
6196    DISTRIBUTION_SET_ID       ,
6197    PAYMENT_SCHEDULE_ID       ,
6198    RECEIPT_METHOD_ID         ,
6199    RECEIVABLES_TRX_ID        ,
6200    ED_ADJ_RECEIVABLES_TRX_ID ,
6201    UNED_RECEIVABLES_TRX_ID   ,
6202    SET_OF_BOOKS_ID           ,
6203    SALESREP_ID               ,
6204    BILL_SITE_USE_ID          ,
6205    DRAWEE_SITE_USE_ID        ,
6206    PAYING_SITE_USE_ID        ,
6207    SOLD_SITE_USE_ID          ,
6208    SHIP_SITE_USE_ID          ,
6209    RECEIPT_CUSTOMER_SITE_USE_ID       ,
6210    BILL_CUST_ROLE_ID         ,
6211    DRAWEE_CUST_ROLE_ID       ,
6212    SHIP_CUST_ROLE_ID         ,
6213    SOLD_CUST_ROLE_ID         ,
6214    BILL_CUSTOMER_ID          ,
6215    DRAWEE_CUSTOMER_ID        ,
6216    PAYING_CUSTOMER_ID        ,
6217    SOLD_CUSTOMER_ID          ,
6218    SHIP_CUSTOMER_ID          ,
6219    REMIT_ADDRESS_ID          ,
6220    RECEIPT_BATCH_ID          ,
6221    RECEIVABLE_APPLICATION_ID ,
6222    CUSTOMER_BANK_BRANCH_ID   ,
6223    ISSUER_BANK_BRANCH_ID     ,
6224    BATCH_SOURCE_ID           ,
6225    BATCH_ID                  ,
6226    TERM_ID                   ,
6227    SELECT_FLAG               ,
6228    LEVEL_FLAG                ,
6229    FROM_TO_FLAG              ,
6230    CRH_STATUS                ,
6231    CRH_PRV_STATUS            ,
6232    AMOUNT                    ,
6233    FROM_AMOUNT               ,
6234    FROM_ACCTD_AMOUNT         ,
6235    PREV_FUND_SEG_REPLACE     ,
6236    APP_CRH_STATUS            ,
6237    PAIRED_CCID               ,
6238    PAIRE_DIST_ID             ,
6239    REF_DIST_CCID             ,
6240    REF_MF_DIST_FLAG          ,
6241    ORIGIN_EXTRACT_TABLE      ,
6242    EVENT_TYPE_CODE           ,
6243    EVENT_CLASS_CODE          ,
6244    ENTITY_CODE               ,
6245    REVERSAL_CODE             ,
6246    BUSINESS_FLOW_CODE        ,
6247    TAX_LINE_ID               ,
6248    ADDITIONAL_CHAR1          ,
6249    ADDITIONAL_CHAR2          ,
6250    ADDITIONAL_CHAR3          ,
6251    ADDITIONAL_CHAR4          ,
6252    ADDITIONAL_CHAR5          ,
6253    ADDITIONAL_ID1            ,
6254    ADDITIONAL_ID2            ,
6255    ADDITIONAL_ID3            ,
6256    ADDITIONAL_ID4            ,
6257    ADDITIONAL_ID5            ,
6258    XLA_ENTITY_ID
6259   ,REF_CTLGD_CCID
6260   ,DIST_CCID
6261   ,FROM_EXCHANGE_RATE
6262   ,FROM_EXCHANGE_RATE_TYPE
6263   ,FROM_EXCHANGE_DATE
6264   ,FROM_CURRENCY_CODE
6265   ,TO_CURRENCY_CODE
6266   ,MFAR_ADDITIONAL_ENTRY
6267   ,third_party_id
6268   ,third_party_site_id
6269   ,third_party_type
6270   ,source_type               )
6271  SELECT
6272    EVENT_ID                  ,
6273    LINE_NUMBER               ,
6274    LANGUAGE                  ,
6275    LEDGER_ID                 ,
6276    SOURCE_ID                 ,
6277    SOURCE_TABLE              ,
6278    LINE_ID                   ,
6279    TAX_CODE_ID               ,
6280    LOCATION_SEGMENT_ID       ,
6281    BASE_CURRENCY_CODE        ,
6282    EXCHANGE_RATE_TYPE        ,
6283    EXCHANGE_RATE             ,
6284    EXCHANGE_DATE             ,
6285    ACCTD_AMOUNT              ,
6286    TAXABLE_ACCTD_AMOUNT      ,
6287    ORG_ID                    ,
6288    HEADER_TABLE_ID           ,
6289    POSTING_ENTITY            ,
6290    CASH_RECEIPT_ID           ,
6291    CUSTOMER_TRX_ID           ,
6292    CUSTOMER_TRX_LINE_ID      ,
6293    CUST_TRX_LINE_GL_DIST_ID  ,
6294    CUST_TRX_LINE_SALESREP_ID ,
6295    INVENTORY_ITEM_ID         ,
6296    SALES_TAX_ID              ,
6297    SO_ORGANIZATION_ID        ,
6298    TAX_EXEMPTION_ID          ,
6299    UOM_CODE                  ,
6300    WAREHOUSE_ID              ,
6301    AGREEMENT_ID              ,
6302    CUSTOMER_BANK_ACCT_ID     ,
6303    DRAWEE_BANK_ACCOUNT_ID    ,
6304    REMITTANCE_BANK_ACCT_ID   ,
6305    DISTRIBUTION_SET_ID       ,
6306    PAYMENT_SCHEDULE_ID       ,
6307    RECEIPT_METHOD_ID         ,
6308    RECEIVABLES_TRX_ID        ,
6309    ED_ADJ_RECEIVABLES_TRX_ID ,
6310    UNED_RECEIVABLES_TRX_ID   ,
6311    SET_OF_BOOKS_ID           ,
6312    SALESREP_ID               ,
6313    BILL_SITE_USE_ID          ,
6314    DRAWEE_SITE_USE_ID        ,
6315    PAYING_SITE_USE_ID        ,
6316    SOLD_SITE_USE_ID          ,
6317    SHIP_SITE_USE_ID          ,
6318    RECEIPT_CUSTOMER_SITE_USE_ID       ,
6319    BILL_CUST_ROLE_ID         ,
6320    DRAWEE_CUST_ROLE_ID       ,
6321    SHIP_CUST_ROLE_ID         ,
6322    SOLD_CUST_ROLE_ID         ,
6323    BILL_CUSTOMER_ID          ,
6324    DRAWEE_CUSTOMER_ID        ,
6325    PAYING_CUSTOMER_ID        ,
6326    SOLD_CUSTOMER_ID          ,
6327    SHIP_CUSTOMER_ID          ,
6328    REMIT_ADDRESS_ID          ,
6329    RECEIPT_BATCH_ID          ,
6330    RECEIVABLE_APPLICATION_ID ,
6331    CUSTOMER_BANK_BRANCH_ID   ,
6332    ISSUER_BANK_BRANCH_ID     ,
6333    BATCH_SOURCE_ID           ,
6334    BATCH_ID                  ,
6335    TERM_ID                   ,
6336    SELECT_FLAG               ,
6337    LEVEL_FLAG                ,
6338    FROM_TO_FLAG              ,
6339    CRH_STATUS                ,
6340    CRH_PRV_STATUS            ,
6341    AMOUNT                    ,
6342    FROM_AMOUNT               ,
6343    FROM_ACCTD_AMOUNT         ,
6344    PREV_FUND_SEG_REPLACE     ,
6345    APP_CRH_STATUS            ,
6346    PAIRED_CCID               ,
6347    PAIRE_DIST_ID             ,
6348    REF_DIST_CCID             ,
6349    REF_MF_DIST_FLAG          ,
6350    ORIGIN_EXTRACT_TABLE      ,
6351    EVENT_TYPE_CODE           ,
6352    EVENT_CLASS_CODE          ,
6353    ENTITY_CODE               ,
6354    REVERSAL_CODE             ,
6355    BUSINESS_FLOW_CODE        ,
6356    TAX_LINE_ID               ,
6357    ADDITIONAL_CHAR1          ,
6358    ADDITIONAL_CHAR2          ,
6359    ADDITIONAL_CHAR3          ,
6360    ADDITIONAL_CHAR4          ,
6361    ADDITIONAL_CHAR5          ,
6362    ADDITIONAL_ID1            ,
6363    ADDITIONAL_ID2            ,
6364    ADDITIONAL_ID3            ,
6365    ADDITIONAL_ID4            ,
6366    ADDITIONAL_ID5
6367   ,XLA_ENTITY_ID
6368   ,REF_CTLGD_CCID
6369   ,DIST_CCID
6370   ,FROM_EXCHANGE_RATE
6371   ,FROM_EXCHANGE_RATE_TYPE
6372   ,FROM_EXCHANGE_DATE
6373   ,FROM_CURRENCY_CODE
6374   ,TO_CURRENCY_CODE
6375   ,MFAR_ADDITIONAL_ENTRY
6376   ,third_party_id
6377   ,third_party_site_id
6378   ,third_party_type
6379   ,source_type
6380 FROM ar_xla_lines_extract;
6381 */
6382 local_log('diag_data','+--------BEGIN READING XLA_EVENTS_GT--------------+');
6383 OPEN c2;
6384 LOOP
6385   FETCH c2 INTO l;
6386   EXIT WHEN c2%NOTFOUND;
6387   cpt := cpt + 1;
6388 local_log('diag_data','|------------------EVENT#'||cpt||'----------------|');
6389 local_log('diag_data','<LINE_NUMBER>'||l.LINE_NUMBER||'</LINE_NUMBER>');
6390 local_log('diag_data','<ENTITY_ID>'||l.ENTITY_ID||'</ENTITY_ID>');
6391 local_log('diag_data','<APPLICATION_ID>'||l.APPLICATION_ID||'</APPLICATION_ID>');
6392 local_log('diag_data','<LEDGER_ID>'||l.LEDGER_ID||'</LEDGER_ID>');
6393 local_log('diag_data','<LEGAL_ENTITY_ID>'||l.LEGAL_ENTITY_ID||'</LEGAL_ENTITY_ID>');
6394 local_log('diag_data','<ENTITY_CODE>'||l.ENTITY_CODE||'</ENTITY_CODE>');
6395 local_log('diag_data','<TRANSACTION_NUMBER>'||l.TRANSACTION_NUMBER||'</TRANSACTION_NUMBER>');
6396 local_log('diag_data','<SOURCE_ID_INT_1>'||l.SOURCE_ID_INT_1||'</SOURCE_ID_INT_1>');
6397 local_log('diag_data','<SOURCE_ID_INT_2>'||l.SOURCE_ID_INT_2||'</SOURCE_ID_INT_2>');
6398 local_log('diag_data','<SOURCE_ID_INT_3>'||l.SOURCE_ID_INT_3||'</SOURCE_ID_INT_3>');
6399 local_log('diag_data','<SOURCE_ID_INT_4>'||l.SOURCE_ID_INT_4||'</SOURCE_ID_INT_4>');
6400 local_log('diag_data','<SOURCE_ID_CHAR_1>'||l.SOURCE_ID_CHAR_1||'</SOURCE_ID_CHAR_1>');
6401 local_log('diag_data','<SOURCE_ID_CHAR_2>'||l.SOURCE_ID_CHAR_2||'</SOURCE_ID_CHAR_2>');
6402 local_log('diag_data','<SOURCE_ID_CHAR_3>'||l.SOURCE_ID_CHAR_3||'</SOURCE_ID_CHAR_3>');
6403 local_log('diag_data','<SOURCE_ID_CHAR_4>'||l.SOURCE_ID_CHAR_4||'</SOURCE_ID_CHAR_4>');
6404 local_log('diag_data','<EVENT_ID>'||l.EVENT_ID||'</EVENT_ID>');
6405 local_log('diag_data','<EVENT_CLASS_CODE>'||l.EVENT_CLASS_CODE||'</EVENT_CLASS_CODE>');
6406 local_log('diag_data','<EVENT_TYPE_CODE>'||l.EVENT_TYPE_CODE||'</EVENT_TYPE_CODE>');
6407 local_log('diag_data','<EVENT_NUMBER>'||l.EVENT_NUMBER||'</EVENT_NUMBER>');
6408 local_log('diag_data','<EVENT_DATE>'||l.EVENT_DATE||'</EVENT_DATE>');
6409 local_log('diag_data','<EVENT_STATUS_CODE>'||l.EVENT_STATUS_CODE||'</EVENT_STATUS_CODE>');
6410 local_log('diag_data','<PROCESS_STATUS_CODE>'||l.PROCESS_STATUS_CODE||'</PROCESS_STATUS_CODE>');
6411 local_log('diag_data','<EVENT_CREATED_BY>'||l.EVENT_CREATED_BY||'</EVENT_CREATED_BY>');
6412 local_log('diag_data','<REFERENCE_NUM_1>'||l.REFERENCE_NUM_1||'</REFERENCE_NUM_1>');
6413 local_log('diag_data','<REFERENCE_NUM_2>'||l.REFERENCE_NUM_2||'</REFERENCE_NUM_2>');
6414 local_log('diag_data','<REFERENCE_NUM_3>'||l.REFERENCE_NUM_3||'</REFERENCE_NUM_3>');
6415 local_log('diag_data','<REFERENCE_NUM_4>'||l.REFERENCE_NUM_4||'</REFERENCE_NUM_4>');
6416 local_log('diag_data','<REFERENCE_CHAR_1>'||l.REFERENCE_CHAR_1||'</REFERENCE_CHAR_1>');
6417 local_log('diag_data','<REFERENCE_CHAR_2>'||l.REFERENCE_CHAR_2||'</REFERENCE_CHAR_2>');
6418 local_log('diag_data','<REFERENCE_CHAR_3>'||l.REFERENCE_CHAR_3||'</REFERENCE_CHAR_3>');
6419 local_log('diag_data','<REFERENCE_CHAR_4>'||l.REFERENCE_CHAR_4||'</REFERENCE_CHAR_4>');
6420 local_log('diag_data','<REFERENCE_DATE_4>'||l.REFERENCE_DATE_4||'</REFERENCE_DATE_4>');
6421 local_log('diag_data','<VALUATION_METHOD>'||l.VALUATION_METHOD||'</VALUATION_METHOD>');
6422 local_log('diag_data','<SECURITY_ID_INT_1>'||l.SECURITY_ID_INT_1||'</SECURITY_ID_INT_1>');
6423 local_log('diag_data','<SECURITY_ID_INT_2>'||l.SECURITY_ID_INT_2||'</SECURITY_ID_INT_2>');
6424 local_log('diag_data','<SECURITY_ID_INT_3>'||l.SECURITY_ID_INT_3||'</SECURITY_ID_INT_3>');
6425 local_log('diag_data','<SECURITY_ID_CHAR_1>'||l.SECURITY_ID_CHAR_1||'</SECURITY_ID_CHAR_1>');
6426 local_log('diag_data','<SECURITY_ID_CHAR_2>'||l.SECURITY_ID_CHAR_2||'</SECURITY_ID_CHAR_2>');
6427 local_log('diag_data','<SECURITY_ID_CHAR_3>'||l.SECURITY_ID_CHAR_3||'</SECURITY_ID_CHAR_3>');
6428 local_log('diag_data','<ON_HOLD_FLAG>'||l.ON_HOLD_FLAG||'</ON_HOLD_FLAG>');
6429 local_log('diag_data','<TRANSACTION_DATE>'||l.TRANSACTION_DATE||'</TRANSACTION_DATE>');
6430 local_log('diag_data','<BUDGETARY_CONTROL_FLAG>'||l.BUDGETARY_CONTROL_FLAG||'</BUDGETARY_CONTROL_FLAG>');
6431 local_log('diag_data','<REFERENCE_DATE_1>'||l.REFERENCE_DATE_1||'</REFERENCE_DATE_1>');
6432 local_log('diag_data','<REFERENCE_DATE_2>'||l.REFERENCE_DATE_2||'</REFERENCE_DATE_2>');
6433 local_log('diag_data','<REFERENCE_DATE_3>'||l.REFERENCE_DATE_3||'</REFERENCE_DATE_3>');
6434 END LOOP;
6435 CLOSE c2;
6436 local_log('diag_data','+--------END READING XLA_EVENTS_GT----------------+');
6437 
6438 
6439 local_log('diag_data','+--------BEGIN READING AR_XLA_LINES_EXTRACT-------+');
6440 cpt := 0;
6441 OPEN c;
6442 LOOP
6443   FETCH c INTO l_c;
6444   EXIT WHEN c%NOTFOUND;
6445 cpt := cpt + 1;
6446 local_log('diag_data','|---------LINE#'||cpt||'--------------------------|');
6447 local_log('diag_data','<BILL_CUSTOMER_ID>'||l_c.BILL_CUSTOMER_ID||'</BILL_CUSTOMER_ID>');
6448 local_log('diag_data','<DRAWEE_CUSTOMER_ID>'||l_c.DRAWEE_CUSTOMER_ID||'</DRAWEE_CUSTOMER_ID>');
6449 local_log('diag_data','<PAYING_CUSTOMER_ID>'||l_c.PAYING_CUSTOMER_ID||'</PAYING_CUSTOMER_ID>');
6450 local_log('diag_data','<SOLD_CUSTOMER_ID>'||l_c.SOLD_CUSTOMER_ID||'</SOLD_CUSTOMER_ID>');
6451 local_log('diag_data','<SHIP_CUSTOMER_ID>'||l_c.SHIP_CUSTOMER_ID||'</SHIP_CUSTOMER_ID>');
6452 local_log('diag_data','<REMIT_ADDRESS_ID>'||l_c.REMIT_ADDRESS_ID||'</REMIT_ADDRESS_ID>');
6453 local_log('diag_data','<RECEIPT_BATCH_ID>'||l_c.RECEIPT_BATCH_ID||'</RECEIPT_BATCH_ID>');
6454 local_log('diag_data','<RECEIVABLE_APPLICATION_ID>'||l_c.RECEIVABLE_APPLICATION_ID||'</RECEIVABLE_APPLICATION_ID>');
6455 local_log('diag_data','<CUSTOMER_BANK_BRANCH_ID>'||l_c.CUSTOMER_BANK_BRANCH_ID||'</CUSTOMER_BANK_BRANCH_ID>');
6456 local_log('diag_data','<ISSUER_BANK_BRANCH_ID>'||l_c.ISSUER_BANK_BRANCH_ID||'</ISSUER_BANK_BRANCH_ID>');
6457 local_log('diag_data','<BATCH_SOURCE_ID>'||l_c.BATCH_SOURCE_ID||'</BATCH_SOURCE_ID>');
6458 local_log('diag_data','<BATCH_ID>'||l_c.BATCH_ID||'</BATCH_ID>');
6459 local_log('diag_data','<TERM_ID>'||l_c.TERM_ID||'</TERM_ID>');
6460 local_log('diag_data','<SELECT_FLAG>'||l_c.SELECT_FLAG||'</SELECT_FLAG>');
6461 local_log('diag_data','<LEVEL_FLAG>'||l_c.LEVEL_FLAG||'</LEVEL_FLAG>');
6462 local_log('diag_data','<FROM_TO_FLAG>'||l_c.FROM_TO_FLAG||'</FROM_TO_FLAG>');
6463 local_log('diag_data','<CRH_STATUS>'||l_c.CRH_STATUS||'</CRH_STATUS>');
6464 local_log('diag_data','<CRH_PRV_STATUS>'||l_c.CRH_PRV_STATUS||'</CRH_PRV_STATUS>');
6465 local_log('diag_data','<AMOUNT>'||l_c.AMOUNT||'</AMOUNT>');
6466 local_log('diag_data','<FROM_AMOUNT>'||l_c.FROM_AMOUNT||'</FROM_AMOUNT>');
6467 local_log('diag_data','<FROM_ACCTD_AMOUNT>'||l_c.FROM_ACCTD_AMOUNT||'</FROM_ACCTD_AMOUNT>');
6468 local_log('diag_data','<PREV_FUND_SEG_REPLACE>'||l_c.PREV_FUND_SEG_REPLACE||'</PREV_FUND_SEG_REPLACE>');
6469 local_log('diag_data','<APP_CRH_STATUS>'||l_c.APP_CRH_STATUS||'</APP_CRH_STATUS>');
6470 local_log('diag_data','<PAIRED_CCID>'||l_c.PAIRED_CCID||'</PAIRED_CCID>');
6471 local_log('diag_data','<PAIRE_DIST_ID>'||l_c.PAIRE_DIST_ID||'</PAIRE_DIST_ID>');
6472 local_log('diag_data','<REF_DIST_CCID>'||l_c.REF_DIST_CCID||'</REF_DIST_CCID>');
6473 local_log('diag_data','<REF_MF_DIST_FLAG>'||l_c.REF_MF_DIST_FLAG||'</REF_MF_DIST_FLAG>');
6474 local_log('diag_data','<ORIGIN_EXTRACT_TABLE>'||l_c.ORIGIN_EXTRACT_TABLE||'</ORIGIN_EXTRACT_TABLE>');
6475 local_log('diag_data','<EVENT_TYPE_CODE>'||l_c.EVENT_TYPE_CODE||'</EVENT_TYPE_CODE>');
6476 local_log('diag_data','<EVENT_CLASS_CODE>'||l_c.EVENT_CLASS_CODE||'</EVENT_CLASS_CODE>');
6477 local_log('diag_data','<ENTITY_CODE>'||l_c.ENTITY_CODE||'</ENTITY_CODE>');
6478 local_log('diag_data','<REVERSAL_CODE>'||l_c.REVERSAL_CODE||'</REVERSAL_CODE>');
6479 local_log('diag_data','<BUSINESS_FLOW_CODE>'||l_c.BUSINESS_FLOW_CODE||'</BUSINESS_FLOW_CODE>');
6480 local_log('diag_data','<TAX_LINE_ID>'||l_c.TAX_LINE_ID||'</TAX_LINE_ID>');
6481 local_log('diag_data','<ADDITIONAL_CHAR1>'||l_c.ADDITIONAL_CHAR1||'</ADDITIONAL_CHAR1>');
6482 local_log('diag_data','<ADDITIONAL_CHAR2>'||l_c.ADDITIONAL_CHAR2||'</ADDITIONAL_CHAR2>');
6483 local_log('diag_data','<ADDITIONAL_CHAR3>'||l_c.ADDITIONAL_CHAR3||'</ADDITIONAL_CHAR3>');
6484 local_log('diag_data','<ADDITIONAL_CHAR4>'||l_c.ADDITIONAL_CHAR4||'</ADDITIONAL_CHAR4>');
6485 local_log('diag_data','<ADDITIONAL_CHAR5>'||l_c.ADDITIONAL_CHAR5||'</ADDITIONAL_CHAR5>');
6486 local_log('diag_data','<ADDITIONAL_ID1>'||l_c.ADDITIONAL_ID1||'</ADDITIONAL_ID1>');
6487 local_log('diag_data','<ADDITIONAL_ID2>'||l_c.ADDITIONAL_ID2||'</ADDITIONAL_ID2>');
6488 local_log('diag_data','<ADDITIONAL_ID3>'||l_c.ADDITIONAL_ID3||'</ADDITIONAL_ID3>');
6489 local_log('diag_data','<ADDITIONAL_ID4>'||l_c.ADDITIONAL_ID4||'</ADDITIONAL_ID4>');
6490 local_log('diag_data','<ADDITIONAL_ID5>'||l_c.ADDITIONAL_ID5||'</ADDITIONAL_ID5>');
6491 local_log('diag_data','<EVENT_ID>'||l_c.EVENT_ID||'</EVENT_ID>');
6492 local_log('diag_data','<LINE_NUMBER>'||l_c.LINE_NUMBER||'</LINE_NUMBER>');
6493 local_log('diag_data','<LANGUAGE>'||l_c.LANGUAGE||'</LANGUAGE>');
6494 local_log('diag_data','<LEDGER_ID>'||l_c.LEDGER_ID||'</LEDGER_ID>');
6495 local_log('diag_data','<SOURCE_ID>'||l_c.SOURCE_ID||'</SOURCE_ID>');
6496 local_log('diag_data','<SOURCE_TABLE>'||l_c.SOURCE_TABLE||'</SOURCE_TABLE>');
6497 local_log('diag_data','<LINE_ID>'||l_c.LINE_ID||'</LINE_ID>');
6498 local_log('diag_data','<TAX_CODE_ID>'||l_c.TAX_CODE_ID||'</TAX_CODE_ID>');
6499 local_log('diag_data','<LOCATION_SEGMENT_ID>'||l_c.LOCATION_SEGMENT_ID||'</LOCATION_SEGMENT_ID>');
6500 local_log('diag_data','<BASE_CURRENCY_CODE>'||l_c.BASE_CURRENCY_CODE||'</BASE_CURRENCY_CODE>');
6501 local_log('diag_data','<EXCHANGE_RATE_TYPE>'||l_c.EXCHANGE_RATE_TYPE||'</EXCHANGE_RATE_TYPE>');
6502 local_log('diag_data','<EXCHANGE_RATE>'||l_c.EXCHANGE_RATE||'</EXCHANGE_RATE>');
6503 local_log('diag_data','<EXCHANGE_DATE>'||l_c.EXCHANGE_DATE||'</EXCHANGE_DATE>');
6504 local_log('diag_data','<ACCTD_AMOUNT>'||l_c.ACCTD_AMOUNT||'</ACCTD_AMOUNT>');
6505 local_log('diag_data','<TAXABLE_ACCTD_AMOUNT>'||l_c.TAXABLE_ACCTD_AMOUNT||'</TAXABLE_ACCTD_AMOUNT>');
6506 local_log('diag_data','<ORG_ID>'||l_c.ORG_ID||'</ORG_ID>');
6507 local_log('diag_data','<HEADER_TABLE_ID>'||l_c.HEADER_TABLE_ID||'</HEADER_TABLE_ID>');
6508 local_log('diag_data','<POSTING_ENTITY>'||l_c.POSTING_ENTITY||'</POSTING_ENTITY>');
6509 local_log('diag_data','<CASH_RECEIPT_ID>'||l_c.CASH_RECEIPT_ID||'</CASH_RECEIPT_ID>');
6510 local_log('diag_data','<CUSTOMER_TRX_ID>'||l_c.CUSTOMER_TRX_ID||'</CUSTOMER_TRX_ID>');
6511 local_log('diag_data','<CUSTOMER_TRX_LINE_ID>'||l_c.CUSTOMER_TRX_LINE_ID||'</CUSTOMER_TRX_LINE_ID>');
6512 local_log('diag_data','<CUST_TRX_LINE_GL_DIST_ID>'||l_c.CUST_TRX_LINE_GL_DIST_ID||'</CUST_TRX_LINE_GL_DIST_ID>');
6513 local_log('diag_data','<CUST_TRX_LINE_SALESREP_ID>'||l_c.CUST_TRX_LINE_SALESREP_ID||'</CUST_TRX_LINE_SALESREP_ID>');
6514 local_log('diag_data','<INVENTORY_ITEM_ID>'||l_c.INVENTORY_ITEM_ID||'</INVENTORY_ITEM_ID>');
6515 local_log('diag_data','<SALES_TAX_ID>'||l_c.SALES_TAX_ID||'</SALES_TAX_ID>');
6516 local_log('diag_data','<SO_ORGANIZATION_ID>'||l_c.SO_ORGANIZATION_ID||'</SO_ORGANIZATION_ID>');
6517 local_log('diag_data','<TAX_EXEMPTION_ID>'||l_c.TAX_EXEMPTION_ID||'</TAX_EXEMPTION_ID>');
6518 local_log('diag_data','<UOM_CODE>'||l_c.UOM_CODE||'</UOM_CODE>');
6519 local_log('diag_data','<WAREHOUSE_ID>'||l_c.WAREHOUSE_ID||'</WAREHOUSE_ID>');
6520 local_log('diag_data','<AGREEMENT_ID>'||l_c.AGREEMENT_ID||'</AGREEMENT_ID>');
6521 local_log('diag_data','<CUSTOMER_BANK_ACCT_ID>'||l_c.CUSTOMER_BANK_ACCT_ID||'</CUSTOMER_BANK_ACCT_ID>');
6522 local_log('diag_data','<DRAWEE_BANK_ACCOUNT_ID>'||l_c.DRAWEE_BANK_ACCOUNT_ID||'</DRAWEE_BANK_ACCOUNT_ID>');
6523 local_log('diag_data','<REMITTANCE_BANK_ACCT_ID>'||l_c.REMITTANCE_BANK_ACCT_ID||'</REMITTANCE_BANK_ACCT_ID>');
6524 local_log('diag_data','<DISTRIBUTION_SET_ID>'||l_c.DISTRIBUTION_SET_ID||'</DISTRIBUTION_SET_ID>');
6525 local_log('diag_data','<PAYMENT_SCHEDULE_ID>'||l_c.PAYMENT_SCHEDULE_ID||'</PAYMENT_SCHEDULE_ID>');
6526 local_log('diag_data','<RECEIPT_METHOD_ID>'||l_c.RECEIPT_METHOD_ID||'</RECEIPT_METHOD_ID>');
6527 local_log('diag_data','<RECEIVABLES_TRX_ID>'||l_c.RECEIVABLES_TRX_ID||'</RECEIVABLES_TRX_ID>');
6528 local_log('diag_data','<ED_ADJ_RECEIVABLES_TRX_ID>'||l_c.ED_ADJ_RECEIVABLES_TRX_ID||'</ED_ADJ_RECEIVABLES_TRX_ID>');
6529 local_log('diag_data','<UNED_RECEIVABLES_TRX_ID>'||l_c.UNED_RECEIVABLES_TRX_ID||'</UNED_RECEIVABLES_TRX_ID>');
6530 local_log('diag_data','<SET_OF_BOOKS_ID>'||l_c.SET_OF_BOOKS_ID||'</SET_OF_BOOKS_ID>');
6531 local_log('diag_data','<SALESREP_ID>'||l_c.SALESREP_ID||'</SALESREP_ID>');
6532 local_log('diag_data','<BILL_SITE_USE_ID>'||l_c.BILL_SITE_USE_ID||'</BILL_SITE_USE_ID>');
6533 local_log('diag_data','<DRAWEE_SITE_USE_ID>'||l_c.DRAWEE_SITE_USE_ID||'</DRAWEE_SITE_USE_ID>');
6534 local_log('diag_data','<PAYING_SITE_USE_ID>'||l_c.PAYING_SITE_USE_ID||'</PAYING_SITE_USE_ID>');
6535 local_log('diag_data','<SOLD_SITE_USE_ID>'||l_c.SOLD_SITE_USE_ID||'</SOLD_SITE_USE_ID>');
6536 local_log('diag_data','<SHIP_SITE_USE_ID>'||l_c.SHIP_SITE_USE_ID||'</SHIP_SITE_USE_ID>');
6537 local_log('diag_data','<RECEIPT_CUSTOMER_SITE_USE_ID>'||l_c.RECEIPT_CUSTOMER_SITE_USE_ID||'</RECEIPT_CUSTOMER_SITE_USE_ID>');
6538 local_log('diag_data','<BILL_CUST_ROLE_ID>'||l_c.BILL_CUST_ROLE_ID||'</BILL_CUST_ROLE_ID>');
6539 local_log('diag_data','<DRAWEE_CUST_ROLE_ID>'||l_c.DRAWEE_CUST_ROLE_ID||'</DRAWEE_CUST_ROLE_ID>');
6540 local_log('diag_data','<SHIP_CUST_ROLE_ID>'||l_c.SHIP_CUST_ROLE_ID||'</SHIP_CUST_ROLE_ID>');
6541 local_log('diag_data','<SOLD_CUST_ROLE_ID>'||l_c.SOLD_CUST_ROLE_ID||'</SOLD_CUST_ROLE_ID>');
6542 END LOOP;
6543 CLOSE c;
6544 local_log('diag_data','+--------END READING AR_XLA_LINES_EXTRACT---------+');
6545 
6546 
6547 END;
6548 
6549 
6550 END arp_xla_extract_main_pkg;