DBA Data[Home] [Help]

PACKAGE BODY: APPS.FA_XLA_EXTRACT_DEPRN_PKG

Source


1 PACKAGE BODY FA_XLA_EXTRACT_DEPRN_PKG AS
2 
3 /*======================================================================+
4 |                Copyright (c) 1997 Oracle Corporation                  |
5 |                       Redwood Shores, CA, USA                         |
6 |                         All rights reserved.                          |
7 +=======================================================================+
8 | Package Name                                                          |
9 |     FA_XLA_EXTRACT_DEPRN_PKG                                          |
10 |                                                                       |
11 | DESCRIPTION                                                           |
12 |     Package generated From FA AAD setups                              |
13 |                                                                       |
14 | HISTORY                                                               |
15 |     Generated at 13-08-2013 at 07:08:18 by user ANONYMOUS             |
16 +=======================================================================*/
17 
18 
19 -- TYPES
20 -- globals / constants
21 
22 G_CURRENT_RUNTIME_LEVEL        NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
23 
24 G_LEVEL_STATEMENT     CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
25 G_LEVEL_PROCEDURE     CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
26 G_LEVEL_EVENT         CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
27 G_LEVEL_EXCEPTION     CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
28 G_LEVEL_ERROR         CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
29 G_LEVEL_UNEXPECTED    CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
30 
31 G_MODULE_NAME         CONSTANT VARCHAR2(50):= 'fa.plsql.fa_xla_extract_deprn_pkg.';
32 
33 
34 --+============================================+
35 --|                                            |
36 --|  PRIVATE  PROCEDURES/FUNCTIONS             |
37 --|                                            |
38 --+============================================+
39 
40 
41 
42 /*======================================================================+
43 |                                                                       |
44 | Private Function                                                      |
45 |    load_header_data                                                        |
46 |                                                                       |
47 +======================================================================*/
48 
49   PROCEDURE load_header_data IS
50 
51      l_procedure_name  varchar2(80) := 'load_header_data';
52 
53   BEGIN
54 
55      IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
56         fnd_log.string(G_LEVEL_PROCEDURE,
57                        G_MODULE_NAME||l_procedure_name||'.begin',
58                        'Beginning of procedure');
59      END IF;
60 
61 
62       if (not fa_xla_extract_util_pkg.G_secondary_special) then
63 
64 
65 
66     insert into fa_xla_ext_headers_b_gt (
67            event_id                                ,
68            DEFAULT_CCID                            ,
69            BOOK_TYPE_CODE                          ,
70            PERIOD_NAME                             ,
71            PERIOD_CLOSE_DATE                       ,
72            PERIOD_COUNTER                          ,
73            ACCOUNTING_DATE                         ,
74            TRANSFER_TO_GL_FLAG                      )
75     select ctlgd.event_id,
76            bc.FLEXBUILDER_DEFAULTS_CCID            ,
77            bc.book_type_code                       ,
78            dp.PERIOD_NAME                          ,
79            dp.CALENDAR_PERIOD_CLOSE_DATE           ,
80            dp.PERIOD_COUNTER                       ,
81            ctlgd.event_date                        ,
82            decode(bc.GL_POSTING_ALLOWED_FLAG       ,
83                  'YES', 'Y','N')         
84       FROM xla_events_gt                 ctlgd,
85            fa_deprn_periods              dp,
86            fa_book_controls              bc 
87      WHERE ctlgd.entity_code         = 'DEPRECIATION'
88        AND ctlgd.event_type_code     = 'DEPRECIATION'
89        AND dp.book_type_code         = ctlgd.source_id_char_1
90        AND dp.period_counter         = ctlgd.source_id_int_2
91        AND bc.book_type_code         = ctlgd.source_id_char_1
92        AND bc.set_of_books_id  = ctlgd.ledger_id ;
93 
94       IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL ) THEN
95          fnd_log.string(G_LEVEL_PROCEDURE,
96                         G_MODULE_NAME||l_procedure_name,
97                         'Rows inserted into headers: ' || to_char(SQL%ROWCOUNT));
98       END IF;
99 
100 
101 
102       end if; 
103 
104       if (fa_xla_extract_util_pkg.G_secondary_special) then
105 
106 
107 
108     insert into fa_xla_ext_headers_b_gt (
109            event_id                                ,
110            DEFAULT_CCID                            ,
111            BOOK_TYPE_CODE                          ,
112            PERIOD_NAME                             ,
113            PERIOD_CLOSE_DATE                       ,
114            PERIOD_COUNTER                          ,
115            ACCOUNTING_DATE                         ,
116            TRANSFER_TO_GL_FLAG                      )
117     select ctlgd.event_id,
118            bc.FLEXBUILDER_DEFAULTS_CCID            ,
119            bc.book_type_code                       ,
120            dp.PERIOD_NAME                          ,
121            dp.CALENDAR_PERIOD_CLOSE_DATE           ,
122            dp.PERIOD_COUNTER                       ,
123            ctlgd.event_date                        ,
124            decode(mcbc.GL_POSTING_ALLOWED_FLAG       ,
125                  'YES', 'Y','N')         
126       FROM xla_events_gt                 ctlgd,
127            fa_deprn_periods              dp,
128            fa_book_controls              bc , 
129            fa_mc_book_controls mcbc , 
130            gl_ledgers le 
131      WHERE ctlgd.entity_code         = 'DEPRECIATION'
132        AND ctlgd.event_type_code     = 'DEPRECIATION'
133        AND dp.book_type_code         = ctlgd.source_id_char_1
134        AND dp.period_counter         = ctlgd.source_id_int_2
135        AND bc.book_type_code         = ctlgd.source_id_char_1
136        AND mcbc.book_type_code   = bc.book_type_code 
137        AND mcbc.set_of_books_id  = ctlgd.ledger_id 
138        AND le.ledger_id          = mcbc.set_of_books_id ;
139 
140       IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL ) THEN
141          fnd_log.string(G_LEVEL_PROCEDURE,
142                         G_MODULE_NAME||l_procedure_name,
143                         'Rows inserted into headers: ' || to_char(SQL%ROWCOUNT));
144       END IF;
145 
146 
147 
148       end if; 
149 
150 
151       IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
152          fnd_log.string(G_LEVEL_PROCEDURE,
153                         G_MODULE_NAME||l_procedure_name||'.end',
154                         'End of procedure');
155       END IF;
156 
157    EXCEPTION
158       WHEN others THEN
159            IF (G_LEVEL_UNEXPECTED >= G_CURRENT_RUNTIME_LEVEL ) THEN
160               fnd_message.set_name('OFA','FA_SHARED_ORACLE_ERR');
161               fnd_message.set_token('ORACLE_ERR',SQLERRM);
162               FND_LOG.MESSAGE (G_LEVEL_UNEXPECTED,G_MODULE_NAME||l_procedure_name,TRUE);
163            END IF;
164            raise;
165 
166    end load_header_data;
167 
168 
169 
170   PROCEDURE Load_header_data_rb IS
171 
172      l_procedure_name  varchar2(80) := 'load_header_data_rb';
173 
174   BEGIN
175 
176      IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
177         fnd_log.string(G_LEVEL_PROCEDURE,
178                        G_MODULE_NAME||l_procedure_name||'.begin',
179                        'Beginning of procedure');
180      END IF;
181 
182      if (NOT fa_xla_extract_util_pkg.G_secondary_special) then
183 
184      INSERT INTO FA_XLA_EXT_HEADERS_B_GT (
185           event_id                                ,
186           period_close_date                       ,
187           reversal_flag                           ,
188           transfer_to_gl_flag                     ,
189           accounting_date                         )
190     SELECT ctlgd.event_id                         ,
191            dp.CALENDAR_PERIOD_CLOSE_DATE          ,
192            'Y'                                  ,
193            decode(bc.GL_POSTING_ALLOWED_FLAG      ,
194                  'YES', 'Y',
195                  'N'),
196            ctlgd.event_date
197       FROM xla_events_gt                 ctlgd,
198            fa_book_controls              bc,
199            fa_deprn_periods              dp,
200            fa_deprn_events               ds
201      WHERE ctlgd.entity_code         = 'DEPRECIATION'
202        AND ctlgd.event_type_code     = 'ROLLBACK_DEPRECIATION'
203        AND ds.asset_id               = ctlgd.source_id_int_1
204        AND ds.book_type_code         = ctlgd.source_id_char_1
205        AND ds.period_counter         = ctlgd.source_id_int_2
206        AND ds.deprn_run_id           = ctlgd.source_id_int_3
207        AND bc.book_type_code         = ctlgd.source_id_char_1
208 --       AND ds.book_type_code         = ctlgd.valuation_method
209        AND ds.reversal_event_id      = ctlgd.event_id
210        AND dp.book_type_code         = ds.book_type_code
211        AND dp.period_counter         = ds.period_counter;
212 
213      end if;
214 
215      IF (fa_xla_extract_util_pkg.G_secondary_special) then
216 
217      INSERT INTO FA_XLA_EXT_HEADERS_B_GT (
218           event_id                                ,
219           period_close_date                       ,
220           reversal_flag                           ,
221           transfer_to_gl_flag                     ,
222           accounting_date                         )
223      SELECT ctlgd.event_id                         ,
224            dp.CALENDAR_PERIOD_CLOSE_DATE          ,
225            'Y'                                  ,
226            decode(bc.GL_POSTING_ALLOWED_FLAG      ,
227                  'YES', 'Y',
228                  'N'),
229            ctlgd.event_date
230       FROM xla_events_gt                 ctlgd,
231            fa_mc_book_controls           bc,
232            fa_deprn_periods              dp,
233            fa_mc_deprn_Summary_h         ds
234      WHERE ctlgd.entity_code         = 'DEPRECIATION'
235        AND ctlgd.event_type_code     = 'ROLLBACK_DEPRECIATION'
236        AND ds.asset_id               = ctlgd.source_id_int_1
237        AND ds.book_type_code         = ctlgd.source_id_char_1
238        AND ds.period_counter         = ctlgd.source_id_int_2
239        AND ds.deprn_run_id           = ctlgd.source_id_int_3
240        AND bc.book_type_code         = ctlgd.source_id_char_1
241        AND bc.set_of_books_id        = ctlgd.ledger_id
242 --       AND ds.book_type_code         = ctlgd.valuation_method
243        AND ds.reversal_event_id      = ctlgd.event_id
244        AND dp.book_type_code         = ds.book_type_code
245        AND dp.period_counter         = ds.period_counter;
246 
247       END IF; -- special secondary condition
248 
249       IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
250          fnd_log.string(G_LEVEL_PROCEDURE,
251                         G_MODULE_NAME||l_procedure_name||'.end',
252                         'End of procedure');
253       END IF;
254 
255    EXCEPTION
256       WHEN others THEN
257            IF (G_LEVEL_UNEXPECTED >= G_CURRENT_RUNTIME_LEVEL ) THEN
258               fnd_message.set_name('OFA','FA_SHARED_ORACLE_ERR');
259               fnd_message.set_token('ORACLE_ERR',SQLERRM);
260               FND_LOG.MESSAGE (G_LEVEL_UNEXPECTED,G_MODULE_NAME||l_procedure_name,TRUE);
261            END IF;
262            raise;
263 
264   END Load_header_data_rb ;
265 
266 
267 
268 /*======================================================================+
269 |                                                                       |
270 | Private Function                                                      |
271 |    load_line_data                                                        |
272 |                                                                       |
273 +======================================================================*/
274 
275   PROCEDURE load_line_data IS
276 
277      l_procedure_name  varchar2(80) := 'load_line_data';
278      l_secondary       number := 0;
279 
280   BEGIN
281 
282      IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
283         fnd_log.string(G_LEVEL_PROCEDURE,
284                        G_MODULE_NAME||l_procedure_name||'.begin',
285                        'Beginning of procedure');
286      END IF;
287 
288      IF (fa_xla_extract_util_pkg.G_secondary_special) THEN
289         l_secondary := 1;
290      END IF;
291 
292 
293       if (not fa_xla_extract_util_pkg.G_secondary_special) then
294 
295 
296 
297     insert into fa_xla_ext_lines_b_gt (
298            EVENT_ID                             ,
299            LINE_NUMBER                          ,
300            DISTRIBUTION_ID                      ,
301            DISTRIBUTION_TYPE_CODE               ,
302            LEDGER_ID                            ,
303            CURRENCY_CODE                        ,
304            CAT_ID                               ,
305            ENTERED_AMOUNT                       ,
306            BONUS_ENTERED_AMOUNT                 ,
307            REVAL_ENTERED_AMOUNT                 ,
308            GENERATED_CCID                       ,
309            GENERATED_OFFSET_CCID                ,
310            BONUS_GENERATED_CCID                 ,
311            BONUS_GENERATED_OFFSET_CCID          ,
312            REVAL_GENERATED_CCID                 ,
313            REVAL_GENERATED_OFFSET_CCID          ,
314            RESERVE_ACCOUNT_CCID                 ,
315            DEPRN_EXPENSE_ACCOUNT_CCID           ,
316            BONUS_RESERVE_ACCT_CCID              ,
317            BONUS_EXPENSE_ACCOUNT_CCID           ,
318            REVAL_AMORT_ACCOUNT_CCID             ,
319            REVAL_RESERVE_ACCOUNT_CCID           ,
320            IMPAIR_EXPENSE_ACCOUNT_CCID          ,
321            IMPAIR_RESERVE_ACCOUNT_CCID          ,
322            CAPITAL_ADJ_ACCOUNT_CCID             ,
323            GENERAL_FUND_ACCOUNT_CCID            ,
324            BOOK_TYPE_CODE                       ,
325            PERIOD_COUNTER                       ,
326            ASSET_ID,
327            BONUS_DEPRN_EXPENSE_ACCT,
328            BONUS_RESERVE_ACCT,
329            DEPRN_RESERVE_ACCT,
330            REVAL_AMORT_ACCT,
331            REVAL_RESERVE_ACCT,
332            DEPRN_RUN_ID,
333            EXPENSE_ACCOUNT_CCID )
334     select /*+ ordered use_hash(CB,BC,LE) swap_join_inputs(CB)  swap_join_inputs(BC) swap_join_inputs(LE) */ ctlgd.EVENT_ID                            ,
335            dd.distribution_id                        as distribution_id,
336            dd.distribution_id                        as dist_id,
337            'DEPRN'                                 ,
338            bc.set_of_books_id                        ,
339            le.currency_code                          ,
340            cb.category_id                            ,
341            dd.deprn_amount
342               - dd.deprn_adjustment_amount           , -- BUG# 5094085 removing bonus subtraction intentionally
343            dd.bonus_deprn_amount
344               - dd.bonus_deprn_adjustment_amount     ,
345            dd.reval_amortization                     ,
346            dd.deprn_expense_ccid                     ,
347            dd.deprn_reserve_ccid                     ,
348            dd.bonus_deprn_expense_ccid               ,
349            dd.bonus_deprn_reserve_ccid               ,
350            dd.reval_amort_ccid                       ,
351            dd.reval_reserve_ccid                     ,
352            cb.RESERVE_ACCOUNT_CCID                   ,
353            cb.DEPRN_EXPENSE_ACCOUNT_CCID             ,
354            cb.BONUS_RESERVE_ACCT_CCID                ,
355            cb.BONUS_EXPENSE_ACCOUNT_CCID             ,
356            cb.REVAL_AMORT_ACCOUNT_CCID               ,
357            cb.REVAL_RESERVE_ACCOUNT_CCID             ,
358            cb.IMPAIR_EXPENSE_ACCOUNT_CCID            ,
359            cb.IMPAIR_RESERVE_ACCOUNT_CCID            ,
360            cb.CAPITAL_ADJ_ACCOUNT_CCID               ,
361            cb.GENERAL_FUND_ACCOUNT_CCID              ,
362            ctlgd.source_id_char_1                    ,
363            dp.period_counter                         ,
364            ad.ASSET_ID,
365            cb.BONUS_DEPRN_EXPENSE_ACCT,
366            cb.BONUS_DEPRN_RESERVE_ACCT,
367            cb.DEPRN_RESERVE_ACCT,
368            cb.REVAL_AMORTIZATION_ACCT,
369            cb.REVAL_RESERVE_ACCT,
370            dd.DEPRN_RUN_ID,
371            dh.CODE_COMBINATION_ID
372       from xla_events_gt             ctlgd,
373            fa_deprn_detail           dd,
374            fa_distribution_history   dh,
375            fa_additions_b            ad,
376            fa_asset_history          ah,
377            fa_category_books         cb,
378            fa_book_controls          bc,
379            gl_ledgers                le,
380            fa_deprn_periods          dp 
381      where ctlgd.entity_code           = 'DEPRECIATION'
382        AND ctlgd.event_type_code       = 'DEPRECIATION'
383        AND dd.asset_id                 = ctlgd.source_id_int_1
384        AND dd.book_type_code           = ctlgd.source_id_char_1
385        AND dd.period_counter           = ctlgd.source_id_int_2
386        AND dd.deprn_run_id             = ctlgd.source_id_int_3
387        AND ad.asset_id                 = ctlgd.source_id_int_1
388        AND dd.distribution_id          = dh.distribution_id
389        AND ah.asset_id                 = ctlgd.source_id_int_1
390        AND AH.Date_Effective           < nvl(DH.Date_ineffective, SYSDATE)
391        AND nvl(DH.Date_ineffective, SYSDATE) <=
392            nvl(AH.Date_ineffective, SYSDATE)
393        AND cb.category_id              = ah.category_id
394        AND cb.book_type_code           = ctlgd.source_id_char_1
395        AND ah.asset_type              in ('CAPITALIZED', 'GROUP')
396        AND ad.asset_type              in ('CAPITALIZED', 'GROUP')
397        AND bc.book_type_code           = ctlgd.source_id_char_1
398        AND le.ledger_id                = bc.set_of_books_id
399        AND dp.book_type_code           = ctlgd.source_id_char_1
400        AND dp.period_counter           = ctlgd.source_id_int_2 ;
401 
402       IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL ) THEN
403          fnd_log.string(G_LEVEL_PROCEDURE,
404                         G_MODULE_NAME||l_procedure_name,
405                         'Rows inserted into lines: ' || to_char(SQL%ROWCOUNT));
406       END IF;
407 
408 
409 
410       end if; 
411 
412       if (fa_xla_extract_util_pkg.G_alc_enabled or
413           fa_xla_extract_util_pkg.G_secondary_special) then
414 
415 
416 
417     insert into fa_xla_ext_lines_b_gt (
418            EVENT_ID                             ,
419            LINE_NUMBER                          ,
420            DISTRIBUTION_ID                      ,
421            DISTRIBUTION_TYPE_CODE               ,
422            LEDGER_ID                            ,
423            CURRENCY_CODE                        ,
424            CAT_ID                               ,
425            ENTERED_AMOUNT                       ,
426            BONUS_ENTERED_AMOUNT                 ,
427            REVAL_ENTERED_AMOUNT                 ,
428            GENERATED_CCID                       ,
429            GENERATED_OFFSET_CCID                ,
430            BONUS_GENERATED_CCID                 ,
431            BONUS_GENERATED_OFFSET_CCID          ,
432            REVAL_GENERATED_CCID                 ,
433            REVAL_GENERATED_OFFSET_CCID          ,
434            RESERVE_ACCOUNT_CCID                 ,
435            DEPRN_EXPENSE_ACCOUNT_CCID           ,
436            BONUS_RESERVE_ACCT_CCID              ,
437            BONUS_EXPENSE_ACCOUNT_CCID           ,
438            REVAL_AMORT_ACCOUNT_CCID             ,
439            REVAL_RESERVE_ACCOUNT_CCID           ,
440            IMPAIR_EXPENSE_ACCOUNT_CCID          ,
441            IMPAIR_RESERVE_ACCOUNT_CCID          ,
442            CAPITAL_ADJ_ACCOUNT_CCID             ,
443            GENERAL_FUND_ACCOUNT_CCID            ,
444            BOOK_TYPE_CODE                       ,
445            PERIOD_COUNTER                       ,
446            ASSET_ID,
447            BONUS_DEPRN_EXPENSE_ACCT,
448            BONUS_RESERVE_ACCT,
449            DEPRN_RESERVE_ACCT,
450            REVAL_AMORT_ACCT,
451            REVAL_RESERVE_ACCT,
452            DEPRN_RUN_ID,
453            EXPENSE_ACCOUNT_CCID )
454     select /*+ ordered use_hash(CB,BC,LE) swap_join_inputs(CB)  swap_join_inputs(BC) swap_join_inputs(LE) */ ctlgd.EVENT_ID                            ,
455            dd.distribution_id                        as distribution_id,
456            dd.distribution_id                        as dist_id,
457            'DEPRN'                                 ,
458            bc.set_of_books_id                        ,
459            le.currency_code                          ,
460            cb.category_id                            ,
461            dd.deprn_amount
462               - dd.deprn_adjustment_amount           , -- BUG# 5094085 removing bonus subtraction intentionally
463            dd.bonus_deprn_amount
464               - dd.bonus_deprn_adjustment_amount     ,
465            dd.reval_amortization                     ,
466            dd.deprn_expense_ccid                     ,
467            dd.deprn_reserve_ccid                     ,
468            dd.bonus_deprn_expense_ccid               ,
469            dd.bonus_deprn_reserve_ccid               ,
470            dd.reval_amort_ccid                       ,
471            dd.reval_reserve_ccid                     ,
472            cb.RESERVE_ACCOUNT_CCID                   ,
473            cb.DEPRN_EXPENSE_ACCOUNT_CCID             ,
474            cb.BONUS_RESERVE_ACCT_CCID                ,
475            cb.BONUS_EXPENSE_ACCOUNT_CCID             ,
476            cb.REVAL_AMORT_ACCOUNT_CCID               ,
477            cb.REVAL_RESERVE_ACCOUNT_CCID             ,
478            cb.IMPAIR_EXPENSE_ACCOUNT_CCID            ,
479            cb.IMPAIR_RESERVE_ACCOUNT_CCID            ,
480            cb.CAPITAL_ADJ_ACCOUNT_CCID               ,
481            cb.GENERAL_FUND_ACCOUNT_CCID              ,
482            ctlgd.source_id_char_1                    ,
483            dp.period_counter                         ,
484            ad.ASSET_ID,
485            cb.BONUS_DEPRN_EXPENSE_ACCT,
486            cb.BONUS_DEPRN_RESERVE_ACCT,
487            cb.DEPRN_RESERVE_ACCT,
488            cb.REVAL_AMORTIZATION_ACCT,
489            cb.REVAL_RESERVE_ACCT,
490            dd.DEPRN_RUN_ID,
491            dh.CODE_COMBINATION_ID
492       from xla_events_gt             ctlgd,
493            fa_mc_deprn_detail           dd,
494            fa_distribution_history   dh,
495            fa_additions_b            ad,
496            fa_asset_history          ah,
497            fa_category_books         cb,
498            fa_mc_book_controls          bc,
499            gl_ledgers                le,
500            fa_deprn_periods          dp 
501      where ctlgd.entity_code           = 'DEPRECIATION'
502        AND ctlgd.event_type_code       = 'DEPRECIATION'
503        AND dd.asset_id                 = ctlgd.source_id_int_1
504        AND dd.book_type_code           = ctlgd.source_id_char_1
505        AND dd.period_counter           = ctlgd.source_id_int_2
506        AND dd.deprn_run_id             = ctlgd.source_id_int_3
507        AND ad.asset_id                 = ctlgd.source_id_int_1
508        AND dd.distribution_id          = dh.distribution_id
509        AND ah.asset_id                 = ctlgd.source_id_int_1
510        AND AH.Date_Effective           < nvl(DH.Date_ineffective, SYSDATE)
511        AND nvl(DH.Date_ineffective, SYSDATE) <=
512            nvl(AH.Date_ineffective, SYSDATE)
513        AND cb.category_id              = ah.category_id
514        AND cb.book_type_code           = ctlgd.source_id_char_1
515        AND ah.asset_type              in ('CAPITALIZED', 'GROUP')
516        AND ad.asset_type              in ('CAPITALIZED', 'GROUP')
517        AND bc.book_type_code           = ctlgd.source_id_char_1
518        AND le.ledger_id                = bc.set_of_books_id
519        AND dp.book_type_code           = ctlgd.source_id_char_1
520        AND dp.period_counter           = ctlgd.source_id_int_2 
521        AND dd.set_of_books_id = bc.set_of_books_id
522        AND le.ledger_category_code = decode(l_secondary,
523                                             0, 'ALC', 
524                                             'SECONDARY');
525 
526       IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL ) THEN
527          fnd_log.string(G_LEVEL_PROCEDURE,
528                         G_MODULE_NAME||l_procedure_name,
529                         'Rows inserted into alc lines: ' || to_char(SQL%ROWCOUNT));
530       END IF;
531 
532 
533 
534       end if; 
535 
536 
537       IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
538          fnd_log.string(G_LEVEL_PROCEDURE,
539                         G_MODULE_NAME||l_procedure_name||'.end',
540                         'End of procedure');
541       END IF;
542 
543    EXCEPTION
544       WHEN others THEN
545            IF (G_LEVEL_UNEXPECTED >= G_CURRENT_RUNTIME_LEVEL ) THEN
546               fnd_message.set_name('OFA','FA_SHARED_ORACLE_ERR');
547               fnd_message.set_token('ORACLE_ERR',SQLERRM);
548               FND_LOG.MESSAGE (G_LEVEL_UNEXPECTED,G_MODULE_NAME||l_procedure_name,TRUE);
549            END IF;
550            raise;
551 
552    end load_line_data;
553 
554 
555 
556 /*======================================================================+
557 |                                                                       |
558 | Private Function                                                      |
559 |    load_mls_data                                                        |
560 |                                                                       |
561 +======================================================================*/
562 
563   PROCEDURE load_mls_data IS
564 
565      l_procedure_name  varchar2(80) := 'load_mls_data';
566 
567   BEGIN
568 
569      IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
570         fnd_log.string(G_LEVEL_PROCEDURE,
571                        G_MODULE_NAME||l_procedure_name||'.begin',
572                        'Beginning of procedure');
573      END IF;
574 
575      return;   
576 
577      IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL ) THEN
578         fnd_log.string(G_LEVEL_PROCEDURE,
579                        G_MODULE_NAME||l_procedure_name,
580                        'Rows inserted into mls: ' || to_char(SQL%ROWCOUNT));
581      END IF;
582 
583 
584 
585       IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
586          fnd_log.string(G_LEVEL_PROCEDURE,
587                         G_MODULE_NAME||l_procedure_name||'.end',
588                         'End of procedure');
589       END IF;
590 
591    EXCEPTION
592       WHEN others THEN
593            IF (G_LEVEL_UNEXPECTED >= G_CURRENT_RUNTIME_LEVEL ) THEN
594               fnd_message.set_name('OFA','FA_SHARED_ORACLE_ERR');
595               fnd_message.set_token('ORACLE_ERR',SQLERRM);
596               FND_LOG.MESSAGE (G_LEVEL_UNEXPECTED,G_MODULE_NAME||l_procedure_name,TRUE);
597            END IF;
598            raise;
599 
600    end load_mls_data;
601 
602 
603 
604 /*======================================================================+
605 |                                                                       |
606 | Private Function                                                      |
607 |    Load_Generated_Ccids                                               |
608 |                                                                       |
609 +======================================================================*/
610 
611  ----------------------------------------------------
612   --
613   --  Account Generator Hook
614   --
615   ----------------------------------------------------
616    PROCEDURE Load_Generated_Ccids
617               (p_log_level_rec IN FA_API_TYPES.log_level_rec_type) IS
618 
619       l_mesg_count               number := 0;
620       l_mesg_len                 number;
621       l_mesg                     varchar2(4000);
622 
623       l_procedure_name  varchar2(80) := 'fa_xla_extract_def_pkg.load_generated_ccids';   -- BMR make this dynamic on type
624 
625       type char_tab_type is table of varchar2(64) index by binary_integer;
626       type num_tab_type  is table of number       index by binary_integer;
627 
628 
629 
630 
631       type deprn_rec_type is record
632         (rowid                       VARCHAR2(64),
633          book_type_code              VARCHAR2(30),
634          distribution_id             NUMBER(15),
635          distribution_ccid           NUMBER(15),
636          deprn_entered_amount        NUMBER,
637          bonus_entered_amount        NUMBER,
638          reval_entered_amount        NUMBER,
639          generated_ccid              NUMBER(15),
640          generated_offset_ccid       NUMBER(15),
641          bonus_generated_ccid        NUMBER(15),
642          bonus_generated_offset_ccid NUMBER(15),
643          reval_generated_ccid        NUMBER(15),
644          reval_generated_offset_ccid NUMBER(15),
645          capital_adj_generated_ccid  NUMBER(15),
646          general_fund_generated_ccid NUMBER(15),
647          -- DEPRN_EXPENSE_ACCOUNT_CCID  NUMBER(15),
648          DEPRN_RESERVE_ACCOUNT_CCID  NUMBER(15),
649          --BONUS_EXP_ACCOUNT_CCID      NUMBER(15),
650          BONUS_RSV_ACCOUNT_CCID      NUMBER(15),
651          REVAL_AMORT_ACCOUNT_CCID    NUMBER(15),
652          REVAL_RSV_ACCOUNT_CCID      NUMBER(15),
653          CAPITAL_ADJ_ACCOUNT_CCID    NUMBER(15),
654          GENERAL_FUND_ACCOUNT_CCID   NUMBER(15),
655          DEPRN_EXPENSE_ACCT          VARCHAR2(25),
656          DEPRN_RESERVE_ACCT          VARCHAR2(25),
657          BONUS_DEPRN_EXPENSE_ACCT    VARCHAR2(25),
658          BONUS_RESERVE_ACCT          VARCHAR2(25),
659          REVAL_AMORT_ACCT            VARCHAR2(25),
660          REVAL_RESERVE_ACCT          VARCHAR2(25),
661          CAPITAL_ADJ_ACCT            VARCHAR2(25),
662          GENERAL_FUND_ACCT           VARCHAR2(25)
663         );
664 
665       type deprn_tbl_type is table of deprn_rec_type index by binary_integer;
666 
667       l_deprn_tbl deprn_tbl_type;
668 
669       l_generated_ccid              num_tab_type;
670       l_generated_offset_ccid       num_tab_type;
671       l_bonus_generated_ccid        num_tab_type;
672       l_bonus_generated_offset_ccid num_tab_type;
673       l_reval_generated_ccid        num_tab_type;
674       l_reval_generated_offset_ccid num_tab_type;
675       l_capital_adj_generated_ccid  num_tab_type;
676       l_general_fund_generated_ccid num_tab_type;
677       l_rowid                       char_tab_type;
678 
679       l_last_book    varchar2(30) := ' ';
680 
681       cursor c_deprn is
682       select /*+ leading(xg) index(xb, FA_XLA_EXT_HEADERS_B_GT_U1) index(xl, FA_XLA_EXT_LINES_B_GT_U1) */
683              xl.rowid,
684              xb.book_type_code,
685              xl.distribution_id,
686              xl.EXPENSE_ACCOUNT_CCID,
687              xl.entered_amount,
688              xl.bonus_entered_amount,
689              xl.reval_entered_amount,
690              nvl(xl.GENERATED_CCID,              da.DEPRN_EXPENSE_ACCOUNT_CCID),
691              nvl(xl.GENERATED_OFFSET_CCID,       da.DEPRN_RESERVE_ACCOUNT_CCID),
692              nvl(xl.BONUS_GENERATED_CCID,        da.BONUS_EXP_ACCOUNT_CCID),
693              nvl(xl.BONUS_GENERATED_OFFSET_CCID, da.BONUS_RSV_ACCOUNT_CCID),
694              nvl(xl.REVAL_GENERATED_CCID,        da.REVAL_AMORT_ACCOUNT_CCID),
695              nvl(xl.REVAL_GENERATED_OFFSET_CCID, da.REVAL_RSV_ACCOUNT_CCID),
696              da.CAPITAL_ADJ_ACCOUNT_CCID,
697              da.GENERAL_FUND_ACCOUNT_CCID,
698     --       xl.DEPRN_EXPENSE_ACCOUNT_CCID,
699              xl.RESERVE_ACCOUNT_CCID,
700     --       xl.BONUS_EXP_ACCOUNT_CCID,
701              xl.BONUS_RESERVE_ACCT_CCID,
702              xl.REVAL_AMORT_ACCOUNT_CCID,
703              xl.REVAL_RESERVE_ACCOUNT_CCID,
704              xl.CAPITAL_ADJ_ACCOUNT_CCID,
705              xl.GENERAL_FUND_ACCOUNT_CCID,
706              xl.deprn_expense_acct,
707              xl.DEPRN_RESERVE_ACCT,
708              xl.bonus_deprn_expense_acct,
709              xl.BONUS_RESERVE_ACCT,
710              xl.REVAL_AMORT_ACCT,
711              xl.REVAL_RESERVE_ACCT,
712              xl.CAPITAL_ADJ_ACCT,
713              xl.GENERAL_FUND_ACCT
714         from xla_events_gt            xg,
715              fa_xla_ext_headers_b_gt  xb,
716              fa_xla_ext_lines_b_gt    xl,
717              fa_distribution_accounts da
718        where xg.event_class_code = 'DEPRECIATION'
719          and xb.event_id         = xg.event_id
720          and xl.event_id         = xg.event_id
721          and xl.distribution_id  = da.distribution_id(+)
722          and xl.book_type_code   = da.book_type_code(+);
723 
724 
725    BEGIN
726 
727       IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
728          fnd_log.string(G_LEVEL_PROCEDURE,
729                         G_MODULE_NAME||l_procedure_name||'.begin',
730                         'Beginning of procedure');
731       END IF;
732 
733       open  c_deprn;
734       fetch c_deprn bulk collect into l_deprn_tbl;
735       close c_deprn;
736 
737       for i in 1..l_deprn_tbl.count loop
738 
739          if (l_last_book <> l_deprn_tbl(i).book_type_code or
740              i = 1) then
741 
742             if not (fa_cache_pkg.fazcbc
743                       (X_BOOK => l_deprn_tbl(i).book_type_code,
744                        P_LOG_LEVEL_REC   => p_log_level_rec)) then
745                null;
746 
747             end if;
748             l_last_book := l_deprn_tbl(i).book_type_code;
749          end if;
750 
751 
752          -- call FAFBGCC if the ccid doesnt exist in distribution accounts
753 
754          if (l_deprn_tbl(i).generated_ccid is null and
755              l_deprn_tbl(i).deprn_entered_amount   <> 0) then
756 
757             if (not FA_GCCID_PKG.fafbgcc
758                       (X_book_type_code  => l_deprn_tbl(i).book_type_code,
759                        X_fn_trx_code     => 'DEPRN_EXPENSE_ACCT',
760                        X_dist_ccid       => l_deprn_tbl(i).distribution_ccid,
761                        X_acct_segval     => l_deprn_tbl(i).deprn_expense_acct,
762                        X_account_ccid    => 0,
763                        X_distribution_id => l_deprn_tbl(i).distribution_id,
764                        X_rtn_ccid        => l_deprn_tbl(i).generated_ccid,
765                        P_LOG_LEVEL_REC   => p_log_level_rec)) then
766                FA_SRVR_MSG.ADD_MESSAGE
767                   (NAME       => 'FA_GET_ACCOUNT_CCID',
768                    CALLING_FN => 'FA_INS_ADJUST_PKG.fadoflx',
769                    P_LOG_LEVEL_REC => p_log_level_rec);
770                l_deprn_tbl(i).generated_ccid := -1;
771             end if;
772          end if;
773 
774          if (l_deprn_tbl(i).generated_offset_ccid is null and
775              l_deprn_tbl(i).deprn_entered_amount <> 0) then
776 
777 
778             if (not FA_GCCID_PKG.fafbgcc
779                       (X_book_type_code  => l_deprn_tbl(i).book_type_code,
780                        X_fn_trx_code     => 'DEPRN_RESERVE_ACCT',
781                        X_dist_ccid       => l_deprn_tbl(i).distribution_ccid,
782                        X_acct_segval     => l_deprn_tbl(i).deprn_reserve_acct,
783                        X_account_ccid    => l_deprn_tbl(i).deprn_reserve_account_ccid,
784                        X_distribution_id => l_deprn_tbl(i).distribution_id,
785                        X_rtn_ccid        => l_deprn_tbl(i).generated_offset_ccid,
786                        P_LOG_LEVEL_REC   => p_log_level_rec)) then
787 
788                FA_SRVR_MSG.ADD_MESSAGE
789                   (NAME       => 'FA_GET_ACCOUNT_CCID',
790                    CALLING_FN => 'FA_INS_ADJUST_PKG.fadoflx',
791                    P_LOG_LEVEL_REC => p_log_level_rec);
792                l_deprn_tbl(i).generated_offset_ccid := -1;
793             end if;
794          end if;
795 
796          if (l_deprn_tbl(i).bonus_generated_ccid is null and
797              l_deprn_tbl(i).bonus_entered_amount <> 0) then
798 
799             if (not FA_GCCID_PKG.fafbgcc
800                       (X_book_type_code  => l_deprn_tbl(i).book_type_code,
801                        X_fn_trx_code     => 'BONUS_DEPRN_EXPENSE_ACCT',
802                        X_dist_ccid       => l_deprn_tbl(i).distribution_ccid,
803                        X_acct_segval     => l_deprn_tbl(i).bonus_deprn_expense_acct,
804                        X_account_ccid    => 0,
805                        X_distribution_id => l_deprn_tbl(i).distribution_id,
806                        X_rtn_ccid        => l_deprn_tbl(i).bonus_generated_ccid,
807                        P_LOG_LEVEL_REC   => p_log_level_rec)) then
808                FA_SRVR_MSG.ADD_MESSAGE
809                   (NAME       => 'FA_GET_ACCOUNT_CCID',
810                    CALLING_FN => 'FA_INS_ADJUST_PKG.fadoflx',
811                    P_LOG_LEVEL_REC => p_log_level_rec);
812                l_deprn_tbl(i).bonus_generated_ccid := -1;
813 
814             end if;
815          end if;
816 
817          if (l_deprn_tbl(i).bonus_generated_offset_ccid is null and
818              l_deprn_tbl(i).bonus_entered_amount <> 0) then
819 
820             if (not FA_GCCID_PKG.fafbgcc
821                       (X_book_type_code  => l_deprn_tbl(i).book_type_code,
822                        X_fn_trx_code     => 'BONUS_DEPRN_RESERVE_ACCT',
823                        X_dist_ccid       => l_deprn_tbl(i).distribution_ccid,
824                        X_acct_segval     => l_deprn_tbl(i).bonus_reserve_acct,
825                        X_account_ccid    => l_deprn_tbl(i).bonus_rsv_account_ccid,
826                        X_distribution_id => l_deprn_tbl(i).distribution_id,
827                        X_rtn_ccid        => l_deprn_tbl(i).bonus_generated_offset_ccid,
828                        P_LOG_LEVEL_REC   => p_log_level_rec)) then
829                FA_SRVR_MSG.ADD_MESSAGE
830                   (NAME       => 'FA_GET_ACCOUNT_CCID',
831                    CALLING_FN => 'FA_INS_ADJUST_PKG.fadoflx',
832                    P_LOG_LEVEL_REC => p_log_level_rec);
833                l_deprn_tbl(i).bonus_generated_offset_ccid := -1;
834 
835             end if;
836          end if;
837 
838 
839          if (l_deprn_tbl(i).reval_generated_ccid is null and
840              l_deprn_tbl(i).reval_entered_amount <> 0) then
841 
842             if (not FA_GCCID_PKG.fafbgcc
843                       (X_book_type_code  => l_deprn_tbl(i).book_type_code,
844                        X_fn_trx_code     => 'REVAL_AMORTIZATION_ACCT',
845                        X_dist_ccid       => l_deprn_tbl(i).distribution_ccid,
846                        X_acct_segval     => l_deprn_tbl(i).reval_amort_acct,
847                        X_account_ccid    => l_deprn_tbl(i).reval_amort_account_ccid,
848                        X_distribution_id => l_deprn_tbl(i).distribution_id,
849                        X_rtn_ccid        => l_deprn_tbl(i).reval_generated_ccid,
850                        P_LOG_LEVEL_REC   => p_log_level_rec)) then
851                FA_SRVR_MSG.ADD_MESSAGE
852                   (NAME       => 'FA_GET_ACCOUNT_CCID',
853                    CALLING_FN => 'FA_INS_ADJUST_PKG.fadoflx',
854                    P_LOG_LEVEL_REC => p_log_level_rec);
855                l_deprn_tbl(i).reval_generated_ccid := -1;
856             end if;
857          end if;
858 
859          if (l_deprn_tbl(i).reval_generated_offset_ccid is null and
860              l_deprn_tbl(i).reval_entered_amount <> 0) then
861 
862             if (not FA_GCCID_PKG.fafbgcc
863                       (X_book_type_code  => l_deprn_tbl(i).book_type_code,
864                        X_fn_trx_code     => 'REVAL_RESERVE_ACCT',
865                        X_dist_ccid       => l_deprn_tbl(i).distribution_ccid,
866                        X_acct_segval     => l_deprn_tbl(i).reval_reserve_acct,
867                        X_account_ccid    => l_deprn_tbl(i).reval_rsv_account_ccid,
868                        X_distribution_id => l_deprn_tbl(i).distribution_id,
869                        X_rtn_ccid        => l_deprn_tbl(i).reval_generated_offset_ccid,
870                        P_LOG_LEVEL_REC   => p_log_level_rec)) then
871                FA_SRVR_MSG.ADD_MESSAGE
872                   (NAME       => 'FA_GET_ACCOUNT_CCID',
873                    CALLING_FN => 'FA_INS_ADJUST_PKG.fadoflx',
874                    P_LOG_LEVEL_REC => p_log_level_rec);
875                l_deprn_tbl(i).reval_generated_offset_ccid := -1;
876 
877             end if;
878          end if;
879 
880          if (l_deprn_tbl(i).capital_adj_generated_ccid is null and
881              l_deprn_tbl(i).deprn_entered_amount <> 0 and
882              fa_xla_extract_util_pkg.G_sorp_enabled) then
883 
884             if (not FA_GCCID_PKG.fafbgcc
885                       (X_book_type_code  => l_deprn_tbl(i).book_type_code,
886                        X_fn_trx_code     => 'CAPITAL_ADJ_ACCT',
887                        X_dist_ccid       => l_deprn_tbl(i).distribution_ccid,
888                        X_acct_segval     => l_deprn_tbl(i).capital_adj_acct,
889                        X_account_ccid    => l_deprn_tbl(i).capital_adj_account_ccid,
890                        X_distribution_id => l_deprn_tbl(i).distribution_id,
891                        X_rtn_ccid        => l_deprn_tbl(i).capital_adj_generated_ccid,
892                        P_LOG_LEVEL_REC   => p_log_level_rec)) then
893 
894                FA_SRVR_MSG.ADD_MESSAGE
895                   (NAME       => 'FA_GET_ACCOUNT_CCID',
896                    CALLING_FN => 'FA_INS_ADJUST_PKG.fadoflx',
897                    P_LOG_LEVEL_REC => p_log_level_rec);
898                l_deprn_tbl(i).capital_adj_generated_ccid := -1;
899             end if;
900          end if;
901 
902          if (l_deprn_tbl(i).general_fund_generated_ccid is null and
903              l_deprn_tbl(i).deprn_entered_amount <> 0 and
904              fa_xla_extract_util_pkg.G_sorp_enabled) then
905 
906             if (not FA_GCCID_PKG.fafbgcc
907                       (X_book_type_code  => l_deprn_tbl(i).book_type_code,
908                        X_fn_trx_code     => 'GENERAL_FUND_ACCT',
909                        X_dist_ccid       => l_deprn_tbl(i).distribution_ccid,
910                        X_acct_segval     => l_deprn_tbl(i).general_fund_acct,
911                        X_account_ccid    => l_deprn_tbl(i).general_fund_account_ccid,
912                        X_distribution_id => l_deprn_tbl(i).distribution_id,
913                        X_rtn_ccid        => l_deprn_tbl(i).general_fund_generated_ccid,
914                        P_LOG_LEVEL_REC   => p_log_level_rec)) then
915 
916                FA_SRVR_MSG.ADD_MESSAGE
917                   (NAME       => 'FA_GET_ACCOUNT_CCID',
918                    CALLING_FN => 'FA_INS_ADJUST_PKG.fadoflx',
919                    P_LOG_LEVEL_REC => p_log_level_rec);
920                l_deprn_tbl(i).general_fund_generated_ccid := -1;
921             end if;
922          end if;
923 
924       end loop;
925 
926       for i in 1.. l_deprn_tbl.count loop
927 
928          l_generated_ccid(i)              := l_deprn_tbl(i).generated_ccid;
929          l_generated_offset_ccid(i)       := l_deprn_tbl(i).generated_offset_ccid;
930          l_bonus_generated_ccid(i)        := l_deprn_tbl(i).bonus_generated_ccid;
931          l_bonus_generated_offset_ccid(i) := l_deprn_tbl(i).bonus_generated_offset_ccid;
932          l_reval_generated_ccid(i)        := l_deprn_tbl(i).reval_generated_ccid;
933          l_reval_generated_offset_ccid(i) := l_deprn_tbl(i).reval_generated_offset_ccid;
934          l_capital_adj_generated_ccid(i)  := l_deprn_tbl(i).capital_adj_generated_ccid;
935          l_general_fund_generated_ccid(i) := l_deprn_tbl(i).general_fund_generated_ccid;
936          l_rowid(i)                       := l_deprn_tbl(i).rowid;
937 
938       end loop;
939 
940       forall i in 1..l_deprn_tbl.count
941       update fa_xla_ext_lines_b_gt
942          set generated_ccid              = l_generated_ccid(i),
943              generated_offset_ccid       = l_generated_offset_ccid(i),
944              bonus_generated_ccid        = l_bonus_generated_ccid(i),
945              bonus_generated_offset_ccid = l_bonus_generated_offset_ccid(i),
946              reval_generated_ccid        = l_reval_generated_ccid(i),
947              reval_generated_offset_ccid = l_reval_generated_offset_ccid(i),
948              capital_adj_generated_ccid =  l_capital_adj_generated_ccid(i),
949              general_fund_generated_ccid = l_general_fund_generated_ccid(i)
950        where rowid                       = l_rowid(i);
951 
952 
953 --
954 
955       IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL) THEN
956          fnd_log.string(G_LEVEL_PROCEDURE,
957                         G_MODULE_NAME||l_procedure_name||'.end',
958                         'End of procedure');
959       END IF;
960 
961    EXCEPTION
962       WHEN others THEN
963            IF (G_LEVEL_UNEXPECTED >= G_CURRENT_RUNTIME_LEVEL) THEN
964               fnd_message.set_name('OFA','FA_SHARED_ORACLE_ERR');
965               fnd_message.set_token('ORACLE_ERR',SQLERRM);
966               FND_LOG.MESSAGE (G_LEVEL_UNEXPECTED,G_MODULE_NAME||l_procedure_name,TRUE);
967            END IF;
968            raise;
969 
970    END load_generated_ccids;
971 
972 
973 
974 /*======================================================================+
975 |                                                                       |
976 | Private Function                                                      |
977 |    Lock_Data                                                          |
978 |                                                                       |
979 +======================================================================*/
980 
981   --------------------------------------------------
982   -- Locking Routine                              --
983   --------------------------------------------------
984 
985   PROCEDURE Lock_Data IS
986 
987      TYPE number_tbl_type IS TABLE OF number INDEX BY BINARY_INTEGER;
988      l_lock               number_tbl_type;
989      l_procedure_name     varchar2(80) := 'lock_data';
990 
991   BEGIN
992 
993      IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
994         fnd_log.string(G_LEVEL_PROCEDURE,
995                        G_MODULE_NAME||l_procedure_name||'.begin',
996                        'Beginning of procedure');
997      END IF;
998 
999  
1000 --
1001      IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
1002         fnd_log.string(G_LEVEL_PROCEDURE,
1003                        G_MODULE_NAME||l_procedure_name||'.end',
1004                        'End of procedure');
1005      END IF;
1006 
1007    EXCEPTION
1008       WHEN others THEN
1009            IF (G_LEVEL_UNEXPECTED >= G_CURRENT_RUNTIME_LEVEL ) THEN
1010               fnd_message.set_name('OFA','FA_SHARED_ORACLE_ERR');
1011               fnd_message.set_token('ORACLE_ERR',SQLERRM);
1012               FND_LOG.MESSAGE (G_LEVEL_UNEXPECTED,G_MODULE_NAME||l_procedure_name,TRUE);
1013            END IF;
1014            raise;
1015 
1016 
1017   END Lock_Data;
1018 
1019 
1020 
1021 /*======================================================================+
1022 |                                                                       |
1023 | Public Function                                                       |
1024 |    Lock_Data                                                          |
1025 |                                                                       |
1026 +======================================================================*/
1027 
1028   --------------------------------------------------
1029   -- Main Load Routine                            --
1030   --------------------------------------------------
1031    PROCEDURE load_data IS
1032 
1033       l_log_level_rec   FA_API_TYPES.log_level_rec_type;
1034       l_use_fafbgcc     varchar2(25);
1035       l_procedure_name  varchar2(80) := 'load_data';   -- BMR make this dynamic on type
1036       error_found       EXCEPTION;
1037 
1038    BEGIN
1039 
1040       IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL) THEN
1041          fnd_log.string(G_LEVEL_PROCEDURE,
1042                         G_MODULE_NAME||l_procedure_name||'.begin',
1043                         'Beginning of procedure');
1044       END IF;
1045 
1046 
1047 
1048          if (fa_xla_extract_util_pkg.G_deprn_exists) then
1049             Lock_Data;
1050             Load_header_data;
1051             Load_line_data;
1052             Load_mls_data;
1053 
1054             
1055 
1056 
1057       fnd_profile.get ('FA_WF_GENERATE_CCIDS', l_use_fafbgcc);
1058       if (nvl(l_use_fafbgcc, 'N') = 'Y') then
1059          if (NOT fa_util_pub.get_log_level_rec (
1060                    x_log_level_rec =>  l_log_level_rec)) then raise error_found;
1061          end if;
1062 
1063          Load_Generated_Ccids
1064             (p_log_level_rec => l_log_level_rec);
1065       end if;
1066 
1067 
1068 
1069 
1070          end if;
1071 
1072          if (fa_xla_extract_util_pkg.G_rollback_deprn_exists) then
1073             Load_header_data_rb;
1074          end if;
1075 
1076 
1077 
1078 
1079       IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL) THEN
1080          fnd_log.string(G_LEVEL_PROCEDURE,
1081                         G_MODULE_NAME||l_procedure_name||'.end',
1082                         'End of procedure');
1083       END IF;
1084 
1085    EXCEPTION
1086       WHEN error_found THEN
1087            IF (G_LEVEL_ERROR >= G_CURRENT_RUNTIME_LEVEL) THEN
1088               FND_LOG.string (G_LEVEL_ERROR,
1089                               G_MODULE_NAME||l_procedure_name,
1090                               'ended in error');
1091            END IF;
1092            raise;
1093 
1094       WHEN others THEN
1095            IF (G_LEVEL_UNEXPECTED >= G_CURRENT_RUNTIME_LEVEL) THEN
1096               fnd_message.set_name('OFA','FA_SHARED_ORACLE_ERR');
1097               fnd_message.set_token('ORACLE_ERR',SQLERRM);
1098               FND_LOG.MESSAGE (G_LEVEL_UNEXPECTED,G_MODULE_NAME||l_procedure_name,TRUE);
1099            END IF;
1100            raise;
1101 
1102    END load_data;
1103 
1104 
1105 
1106 END FA_XLA_EXTRACT_DEPRN_PKG;
1107