DBA Data[Home] [Help]

PACKAGE BODY: APPS.JA_CN_FA_ADI_EXPORT_PKG

Source


1 PACKAGE BODY JA_CN_FA_ADI_EXPORT_PKG AS
2 --$Header: JACNADIB.pls 120.3 2010/07/01 03:11:42 choli noship $
3 --+=======================================================================+
4 --|               Copyright (c) 1998 Oracle Corporation                   |
5 --|                       Redwood Shores, CA, USA                         |
6 --|                         All rights reserved.                          |
7 --+=======================================================================+
8 --| FILENAME                                                              |
9 --|     JACNADIB.pls                                                      |
10 --|                                                                       |
11 --| DESCRIPTION                                                           |
12 --|     Use this package to export Fixed Assets Decreasing Information    |
13 --|                                                                       |
14 --| PROCEDURE LIST                                                        |
15 --|      PROCEDURE Add_Asset_Decreasing_Info                              |
16 --|                                                                       |
17 --|                                                                       |
18 --| HISTORY                                                               |
19 --|     23-Apr-2010   Chongwu Li  created                                 |
20   --+======================================================================*/
21 GV_MODULE_PREFIX VARCHAR2(100) := 'JA_CN_FA_ADI_EXPORT_PKG';
22 
23   --==========================================================================
24   --  PROCEDURE NAME:
25   --
26   --    Add_Asset_Decreasing_Info                       Public
27   --
28   --  DESCRIPTION:
29   --
30   --    This procedure is to export Fixed Assets Decreasing Information
31   --
32   --  PARAMETERS:
33   --      In:  pn_legal_entity_id     legal_entity ID
34   --           pn_ledger_id           ledger ID
35   --           pv_accounting_year     accounting year
36   --           pv_period_from         period from
37   --           pv_period_to           period to
38   --  DESIGN REFERENCES:
39   --    CNAO_V2_FA_TD.doc
40   --
41   --  CHANGE HISTORY:
42   --
43   --          23-Apr-2010   Chongwu Li  created
44 
45 PROCEDURE Add_Asset_Decreasing_Info(pn_legal_entity_id NUMBER
46                                    ,pn_ledger_id       NUMBER
47                                    ,pv_accounting_year VARCHAR2
48                                    ,pv_period_from VARCHAR2
49                                    ,pv_period_to VARCHAR2) IS
50 lv_procedure_name       VARCHAR2(40) := 'Add_Asset_Decreasing_Info';
51 ln_dbg_level            NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
52 ln_proc_level           NUMBER := FND_LOG.LEVEL_PROCEDURE;
53 ln_statement_level      NUMBER := FND_LOG.LEVEL_STATEMENT;
54 ln_row_count            NUMBER;
55 ld_start_date           DATE;
56 ld_end_date             DATE;
57 lv_period_name          VARCHAR2(100);
58 ln_factor               NUMBER;
59 ld_dp_close_date        DATE;
60 ln_retired_unit         NUMBER;
61 ln_assigned_unit        NUMBER;
62 ln_total_unit           NUMBER;
63 ln_last_deprn_reserve   NUMBER;
64 ln_deprn_amount         NUMBER;
65 ln_last_impai_reserve   NUMBER;
66 ln_impai_amount         NUMBER;
67 --lv_bsv_flag             VARCHAR2(10);
68     -- to get Asset Decreasing Info
69 CURSOR asset_decreasing_cur(ln_legal_entity_id NUMBER
70                            ,ln_ledger_id NUMBER
71                            ,ld_date_from DATE
72                            ,ld_date_to DATE) IS
73   SELECT DISTINCT fth.transaction_header_id,
74                   greatest(greatest(fdp.calendar_period_open_date,
75                                     least(sysdate,
76                                           fdp.calendar_period_close_date)),
77                            fdp.calendar_period_open_date) transaction_date,
78                   fth.transaction_type_code,
79                   fa.asset_id,
80                   fa.asset_number,
81                   fa.description,
82                   fth.transaction_name,
83                   fth.book_type_code
84     FROM fa_retirements          fr,
85          fa_transaction_headers  fth,
86          fa_additions            fa,
87          fa_books                fb,
88          fa_book_controls_sec    fbcs,
89          fa_distribution_history fdh,
90          fa_deprn_periods        fdp
91          --gl_code_combinations    gcc
92    WHERE (fth.transaction_type_code = 'FULL RETIREMENT' OR
93          fth.transaction_type_code = 'PARTIAL RETIREMENT')
94      AND fth.asset_id = fa.asset_id
95      AND fr.asset_id = fth.asset_id
96      AND fdh.asset_id = fa.asset_id
97      AND fa.asset_id = fb.asset_id
98      AND fb.transaction_header_id_out = fr.transaction_header_id_in
99      AND fa.asset_type = 'CAPITALIZED'
100      AND fth.book_type_code = fbcs.book_type_code
101      --AND fdh.book_type_code = fbcs.book_type_code
102      AND fth.book_type_code = fdp.book_type_code
103      AND (fbcs.book_class = 'CORPORATE' OR fbcs.book_class = 'TAX')
104      AND fbcs.gl_posting_allowed_flag = 'YES'
105      --AND fdh.code_combination_id = gcc.code_combination_id
106      AND fth.date_effective BETWEEN fdp.period_open_date AND
107          nvl(fdp.period_close_date, SYSDATE)
108      AND fth.book_type_code = fdp.book_type_code
109      AND fdh.date_effective < nvl(fdp.period_close_date, SYSDATE)
110      AND (fdh.date_ineffective > fdp.period_open_date OR
111          fdh.date_ineffective IS NULL)
112      --AND gcc.segment1 IN (SELECT segment_value
113      --                       FROM gl_ledger_norm_seg_vals
114      --                     WHERE legal_entity_id = ln_legal_entity_id
115      --                        AND ledger_id = ln_ledger_id)
116      AND  EXISTS
117           (SELECT jclllbg.bal_seg_value
118              FROM   ja_cn_ledger_le_bsv_gt jclllbg
119             WHERE   JA_CN_CFS_DATA_CLT_PKG.get_balancing_segment(fdh.code_combination_id) =
120                     jclllbg.bal_seg_value
121               AND   jclllbg.Ledger_Id = ln_ledger_id
122               AND   jclllbg.Legal_Entity_Id = ln_legal_entity_id)
123      AND fbcs.set_of_books_id = ln_ledger_id
124      AND greatest(greatest(fdp.calendar_period_open_date,
125                            least(SYSDATE, fdp.calendar_period_close_date))) BETWEEN
126          ld_date_from AND ld_date_to
127    ORDER BY transaction_date, fth.transaction_header_id;
128 
129 CURSOR asset_retire_cur(ln_asset_id NUMBER
130                         ,ln_transaction_header_id NUMBER
131                         ,lv_book_type_code VARCHAR2) IS
132       SELECT fr.date_retired,
133              fr.units,
134              fr.cost_retired / fb.cost retired_factor,
135              fr.cost_retired,
136              fr.proceeds_of_sale,
137              fr.cost_of_removal,
138              fds.period_counter,
139              fb.salvage_value,
140              (SELECT fbb.salvage_value
141                 FROM fa_books fbb
142                WHERE fbb.asset_id = ln_asset_id
143                  AND fbb.book_type_code = lv_book_type_code
144                  AND fbb.transaction_header_id_in =
145                      fb.transaction_header_id_out) salvage_before,
146              fds.deprn_reserve,
147              fds.deprn_amount,
148              fds.impairment_reserve,
149              fds.impairment_amount
150         FROM fa_retirements   fr,
151              fa_books         fb,
152              fa_books         fbb,
153              fa_deprn_summary fds,
154              fa_deprn_periods fdp
155        WHERE fr.asset_id = ln_asset_id
156          AND fr.transaction_header_id_in = ln_transaction_header_id
157          AND fds.book_type_code = lv_book_type_code
158          AND fb.asset_id = fr.asset_id
159          AND fb.asset_id = fbb.asset_id
160          AND fds.asset_id = fr.asset_id
161          AND fb.book_type_code = fbb.book_type_code
162          AND fr.book_type_code = fb.book_type_code
163          AND fds.book_type_code = fr.book_type_code
164          AND fdp.book_type_code = fds.book_type_code
165          AND fb.transaction_header_id_out = fbb.transaction_header_id_out
166          AND fb.transaction_header_id_out = fr.transaction_header_id_in
167          AND fr.date_retired BETWEEN fdp.calendar_period_open_date AND
168              fdp.calendar_period_close_date
169          AND fds.period_counter = fdp.period_counter;
170 
171 BEGIN
172     --logging for debug
173   FND_FILE.PUT_LINE(FND_FILE.log, lv_procedure_name);
174   IF (ln_proc_level >= ln_dbg_level)
175   THEN
176     FND_LOG.STRING(ln_proc_level,
177                      GV_MODULE_PREFIX || '.' || lv_procedure_name ||
178                      '.begin',
179                      'Enter procedure');
180     FND_LOG.STRING(ln_proc_level,
181                    lv_procedure_name ||
182                    '.parameters',
183                    'pn_legal_entity_id=' || pn_legal_entity_id || ',' ||
184                    'pn_ledger_id=' || pn_ledger_id || ',' ||
185                    'pv_accounting_year=' || pv_accounting_year || ',' ||
186                    'pv_period_from=' || pv_period_from || ',' ||
187                    'pv_period_to=' || pv_period_to);
188 
189   END IF; --ln_proc_level>=ln_dbg_level
190   FND_FILE.put_line(FND_FILE.log, lv_procedure_name ||
191                    '.parameters:' ||
192                    'pn_legal_entity_id=' || pn_legal_entity_id || ',' ||
193                    'pn_ledger_id=' || pn_ledger_id || ',' ||
194                    'pv_accounting_year=' || pv_accounting_year || ',' ||
195                    'pv_period_from=' || pv_period_from || ',' ||
196                    'pv_period_to=' || pv_period_to);
197   --Fetch start data and end date
198   SELECT start_date
199       INTO ld_start_date
200       FROM GL_PERIOD_STATUSES
201      WHERE ledger_id = pn_ledger_id
202        AND application_id = 101
203        AND period_name = pv_period_from
204        AND period_year = pv_accounting_year;
205 
206   SELECT end_date
207       INTO ld_end_date
208       FROM GL_PERIOD_STATUSES
209      WHERE ledger_id = pn_ledger_id
210        AND application_id = 101
211        AND period_name = pv_period_to
212        AND period_year = pv_accounting_year;
213 
214 
215   --logging the variables
216   IF (ln_statement_level >= ln_dbg_level)
217   THEN
218     FND_LOG.STRING(ln_statement_level,
219                    lv_procedure_name,
220                    'ld_start_date=' || ld_start_date || ',' ||
221                    'ld_end_date=' || ld_end_date);
222   END IF;  --(ln_statement_level >= ln_dbg_level)
223   FND_FILE.put_line(FND_FILE.log, lv_procedure_name ||
224                    '.variable:' ||
225                    'ld_start_date=' || ld_start_date || ',' ||
226                    'ld_end_date=' || ld_end_date);
227 
228 
229   ln_row_count := 0;
230   FOR v_row IN asset_decreasing_cur(pn_legal_entity_id
231                                    ,pn_ledger_id
232                                    ,ld_start_date
233                                    ,ld_end_date)
234     LOOP
235       ln_row_count := ln_row_count + 1;
236       SELECT period_num
237         INTO lv_period_name
238         FROM gl_period_statuses gp
239        WHERE period_year = pv_accounting_year
240          AND application_id = 101
241          AND ledger_id = pn_ledger_id
242          AND gp.adjustment_period_flag = 'N'
243          AND v_row.transaction_date BETWEEN gp.start_date AND
244              gp.end_date;
245       FND_FILE.put_line(FND_FILE.log, lv_procedure_name ||
246                    '.variable:' ||
247                    'lv_period_name=' || lv_period_name);
248       FND_FILE.put_line(FND_FILE.log, lv_procedure_name ||
249                         'transaction_header_id' || v_row.transaction_header_id
250                         ||' transaction_date' ||v_row.transaction_date);
251       SELECT max(fdp.period_close_date)
252         INTO ld_dp_close_date
253         FROM fa_deprn_periods fdp
254        WHERE greatest(greatest(fdp.calendar_period_open_date,
255                            least(SYSDATE, fdp.calendar_period_close_date)),
256                   fdp.calendar_period_open_date) <= v_row.transaction_date;
257       --get the total unit at the transaction time
258       SELECT  SUM(fdh.units_assigned)
259       INTO    ln_total_unit
260       FROM    fa_distribution_history fdh
261       WHERE   fdh.asset_id = v_row.asset_id
262       AND     fdh.date_effective < nvl(ld_dp_close_date, SYSDATE)
263       AND     (fdh.date_ineffective > nvl(ld_dp_close_date, SYSDATE) OR
264               fdh.date_ineffective IS NULL);
265       --get the assigned unit at the transaction time
266       SELECT  SUM(fdh.units_assigned)
267       INTO    ln_assigned_unit
268       FROM    fa_distribution_history fdh
269       WHERE   fdh.asset_id = v_row.asset_id
270       AND     fdh.date_effective < nvl(ld_dp_close_date, SYSDATE)
271       AND     (fdh.date_ineffective > nvl(ld_dp_close_date, SYSDATE) OR
272               fdh.date_ineffective IS NULL)
273       AND EXISTS
274           (SELECT jclllbg.bal_seg_value
275            FROM   ja_cn_ledger_le_bsv_gt jclllbg
276            WHERE  JA_CN_CFS_DATA_CLT_PKG.get_balancing_segment(fdh.code_combination_id) =
277                                                                jclllbg.bal_seg_value
278            AND    jclllbg.Ledger_Id = pn_ledger_id
279            AND    jclllbg.Legal_Entity_Id = pn_legal_entity_id);
280       -- calculate the assignment factor
281       IF(ln_total_unit IS NOT NULL AND ln_total_unit <> 0)
282       THEN
283         ln_factor := ln_assigned_unit/ln_total_unit;
284       ELSE
285         ln_factor := 1;
286       END IF; --(IF(ln_total_unit IS NOT NULL AND ln_total_unit <> 0))
287       FND_FILE.put_line(FND_FILE.log, lv_procedure_name ||
288                         'ln_factor = ' || ln_factor || ' for transaction_header_id' || v_row.transaction_header_id);
289       FOR v_retire_row IN asset_retire_cur(v_row.asset_id
290                                           ,v_row.transaction_header_id
291                                           ,v_row.book_type_code)
292 
293       -- Only one row should be returned here.
294       LOOP
295         FND_FILE.put_line(FND_FILE.log, lv_procedure_name ||
296                         'v_retire_row.period_counter = ' || v_retire_row.period_counter
297                         || ' for transaction_header_id' || v_row.transaction_header_id
298                         || ' for asset_id' || v_row.asset_id);
299 
300         ln_retired_unit := NVL(v_retire_row.units, v_retire_row.retired_factor * ln_total_unit);
301 
302         SELECT fds.deprn_reserve, fds.impairment_reserve
303           INTO ln_last_deprn_reserve, ln_last_impai_reserve
304           FROM fa_deprn_summary fds
305          WHERE fds.asset_id = v_row.asset_id
306            AND fds.book_type_code = v_row.book_type_code
307            AND fds.period_counter = (SELECT MAX(period_counter)
308                                        FROM fa_deprn_summary
309                                       WHERE asset_id = v_row.asset_id
310                                         AND book_type_code = v_row.book_type_code
311                                         AND period_counter < v_retire_row.period_counter);
312 
313         ln_deprn_amount := ln_last_deprn_reserve + v_retire_row.deprn_amount - v_retire_row.deprn_reserve;
314         ln_impai_amount := ln_last_impai_reserve + v_retire_row.impairment_amount - v_retire_row.impairment_reserve;
315 
316         Ja_Cn_Utility.Add_Sub_Root_Node('FIXED_ASSET_DECREASE_INFO'
317                                        ,Ja_Cn_Utility.GV_TAG_TYPE_START
318                                        ,Ja_Cn_Utility.GV_MODULE_FA);
319 
320         Ja_Cn_Utility.Add_Child_Node('DECRE_TRANSACTION_NUMBER'
321                                     ,v_row.transaction_header_id
322                                     ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
323                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
324                                     ,Ja_Cn_Utility.GV_MODULE_FA);
325         Ja_Cn_Utility.Add_Fixed_Child_Node('TRANSACTION_DATE'
326                                           ,to_char(v_row.transaction_date, 'YYYYMMDD')
327                                           ,8
328                                           ,Ja_Cn_Utility.GV_REQUIRED_YES
329                                           ,Ja_Cn_Utility.GV_MODULE_FA);
330         Ja_Cn_Utility.Add_Child_Node('ACCOUNTING_PERIOD'
331                                     ,lv_period_name
332                                     ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
333                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
334                                     ,Ja_Cn_Utility.GV_MODULE_FA);
335         Ja_Cn_Utility.Add_Child_Node('MODIFICATION_METHOD_CODE'
336                                     ,v_row.transaction_type_code
337                                     ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
338                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
339                                     ,Ja_Cn_Utility.GV_MODULE_FA);
340         Ja_Cn_Utility.Add_Child_Node('FIXED_ASSET_CARD_NUMBER'
341                                     ,v_row.asset_number
342                                     ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
343                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
344                                     ,Ja_Cn_Utility.GV_MODULE_FA);
345         Ja_Cn_Utility.Add_Child_Node('FIXED_ASSET_NAME'
346                                     ,v_row.description
347                                     ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
348                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
349                                     ,Ja_Cn_Utility.GV_MODULE_FA);
350         Ja_Cn_Utility.Add_Child_Node('FIXED_ASSET_NUMBER'
351                                     ,v_row.asset_number
352                                     ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
353                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
354                                     ,Ja_Cn_Utility.GV_MODULE_FA);
355         Ja_Cn_Utility.Add_Child_Node('DECREASED_QUANTITY'
356                                     ,ja_cn_utility.get_rounding_value(ln_retired_unit * ln_factor
357                                                                      ,pn_legal_entity_id)
358                                     ,Ja_Cn_Utility.GV_TYPE_NUMBER
359                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
360                                     ,Ja_Cn_Utility.GV_MODULE_FA);
361         Ja_Cn_Utility.Add_Child_Node('DECREASED_ORIGINAL_VALUE'
362                                     ,ja_cn_utility.get_rounding_value(v_retire_row.cost_retired * ln_factor
363                                                                      ,pn_legal_entity_id)
364                                     ,Ja_Cn_Utility.GV_TYPE_NUMBER
365                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
366                                     ,Ja_Cn_Utility.GV_MODULE_FA);
367         Ja_Cn_Utility.Add_Child_Node('DECREASED_ACCUM_DEPRECIATION'
368                                     ,ja_cn_utility.get_rounding_value(ln_deprn_amount * ln_factor
369                                                                      ,pn_legal_entity_id)
370                                     ,Ja_Cn_Utility.GV_TYPE_NUMBER
371                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
372                                     ,Ja_Cn_Utility.GV_MODULE_FA);
373         Ja_Cn_Utility.Add_Child_Node('DECREASED_ACCUM_IMPAIRMENT'
374                                     ,ja_cn_utility.get_rounding_value(ln_impai_amount * ln_factor
375                                                                      ,pn_legal_entity_id)
376                                     ,Ja_Cn_Utility.GV_TYPE_NUMBER
377                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
378                                     ,Ja_Cn_Utility.GV_MODULE_FA);
379         Ja_Cn_Utility.Add_Child_Node('DECREASED_SALVAGE_VALUE'
380                                     ,ja_cn_utility.get_rounding_value((v_retire_row.salvage_value - v_retire_row.salvage_before) * ln_factor
381                                                                      ,pn_legal_entity_id)
382                                     ,Ja_Cn_Utility.GV_TYPE_NUMBER
383                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
384                                     ,Ja_Cn_Utility.GV_MODULE_FA);
385         Ja_Cn_Utility.Add_Child_Node('PROCEEDS_OF_SALE'
386                                     ,ja_cn_utility.get_rounding_value(v_retire_row.proceeds_of_sale * ln_factor
387                                                                      ,pn_legal_entity_id)
388                                     ,Ja_Cn_Utility.GV_TYPE_NUMBER
389                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
390                                     ,Ja_Cn_Utility.GV_MODULE_FA);
391         Ja_Cn_Utility.Add_Child_Node('COST_OF_REMOVAL'
392                                     ,ja_cn_utility.get_rounding_value(v_retire_row.cost_of_removal * ln_factor
393                                                                      ,pn_legal_entity_id)
394                                     ,Ja_Cn_Utility.GV_TYPE_NUMBER
395                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
396                                     ,Ja_Cn_Utility.GV_MODULE_FA);
397         Ja_Cn_Utility.Add_Child_Node('DECREASE_REASON'
398                                     ,v_row.transaction_name
399                                     ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
400                                     ,Ja_Cn_Utility.GV_REQUIRED_YES
401                                     ,Ja_Cn_Utility.GV_MODULE_FA);
402         Ja_Cn_Utility.Add_Sub_Root_Node('FIXED_ASSET_DECREASE_INFO'
403                                        ,Ja_Cn_Utility.GV_TAG_TYPE_END
404                                        ,Ja_Cn_Utility.GV_MODULE_FA);
405       END LOOP;  --v_retire_row IN asset_retire_cur
406   END LOOP;  --v_row IN asset_decreasing_cur
407 
408   IF (ln_row_count = 0)
409   THEN
410       Ja_Cn_Utility.Print_No_Data_Found_For_Log('FIXED_ASSET_DECREASE_INFO'
411                                                ,Ja_Cn_Utility.GV_MODULE_FA);
412       Ja_Cn_Utility.Add_Sub_Root_Node('FIXED_ASSET_DECREASE_INFO'
413                                      ,Ja_Cn_Utility.GV_TAG_TYPE_START
414                                      ,Ja_Cn_Utility.GV_MODULE_FA);
415 
416       Ja_Cn_Utility.Add_Child_Node('DECRE_TRANSACTION_NUMBER'
417                                   ,NULL
418                                   , Ja_Cn_Utility.GV_TYPE_VARCHAR2
419                                   , Ja_Cn_Utility.GV_REQUIRED_YES
420                                   , Ja_Cn_Utility.GV_MODULE_FA);
421       Ja_Cn_Utility.Add_Fixed_Child_Node('TRANSACTION_DATE'
422                                         ,NULL
423                                         ,8
424                                         ,Ja_Cn_Utility.GV_REQUIRED_YES
425                                         , Ja_Cn_Utility.GV_MODULE_FA);
426       Ja_Cn_Utility.Add_Child_Node('ACCOUNTING_PERIOD'
427                                   ,NULL
428                                   ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
429                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
430                                   ,Ja_Cn_Utility.GV_MODULE_FA);
431       Ja_Cn_Utility.Add_Child_Node('MODIFICATION_METHOD_CODE'
432                                   ,NULL
433                                   ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
434                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
435                                   ,Ja_Cn_Utility.GV_MODULE_FA);
436       Ja_Cn_Utility.Add_Child_Node('FIXED_ASSET_CARD_NUMBER'
437                                   ,NULL
438                                   ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
439                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
440                                   ,Ja_Cn_Utility.GV_MODULE_FA);
441       Ja_Cn_Utility.Add_Child_Node('FIXED_ASSET_NAME'
442                                   ,NULL
443                                   ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
444                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
445                                   ,Ja_Cn_Utility.GV_MODULE_FA);
446       Ja_Cn_Utility.Add_Child_Node('FIXED_ASSET_NUMBER'
447                                   ,NULL
448                                   ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
449                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
450                                   ,Ja_Cn_Utility.GV_MODULE_FA);
451       Ja_Cn_Utility.Add_Child_Node('DECREASED_QUANTITY'
452                                   ,NULL
453                                   ,Ja_Cn_Utility.GV_TYPE_NUMBER
454                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
455                                   ,Ja_Cn_Utility.GV_MODULE_FA);
456       Ja_Cn_Utility.Add_Child_Node('DECREASED_ORIGINAL_VALUE'
457                                   ,NULL
458                                   ,Ja_Cn_Utility.GV_TYPE_NUMBER
459                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
460                                   ,Ja_Cn_Utility.GV_MODULE_FA);
461       Ja_Cn_Utility.Add_Child_Node('DECREASED_ACCUM_DEPRECIATION'
462                                   ,NULL
463                                   ,Ja_Cn_Utility.GV_TYPE_NUMBER
464                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
465                                   ,Ja_Cn_Utility.GV_MODULE_FA);
466       Ja_Cn_Utility.Add_Child_Node('DECREASED_ACCUM_IMPAIRMENT'
467                                   ,NULL
468                                   ,Ja_Cn_Utility.GV_TYPE_NUMBER
469                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
470                                   ,Ja_Cn_Utility.GV_MODULE_FA);
471       Ja_Cn_Utility.Add_Child_Node('DECREASED_SALVAGE_VALUE'
472                                   ,NULL
473                                   ,Ja_Cn_Utility.GV_TYPE_NUMBER
474                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
475                                   ,Ja_Cn_Utility.GV_MODULE_FA);
476       Ja_Cn_Utility.Add_Child_Node('PROCEEDS_OF_SALE'
477                                   ,NULL
478                                   ,Ja_Cn_Utility.GV_TYPE_NUMBER
479                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
480                                   ,Ja_Cn_Utility.GV_MODULE_FA);
481       Ja_Cn_Utility.Add_Child_Node('COST_OF_REMOVAL'
482                                   ,NULL
483                                   ,Ja_Cn_Utility.GV_TYPE_NUMBER
484                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
485                                   ,Ja_Cn_Utility.GV_MODULE_FA);
486       Ja_Cn_Utility.Add_Child_Node('DECREASE_REASON'
487                                   ,NULL
488                                   ,Ja_Cn_Utility.GV_TYPE_VARCHAR2
489                                   ,Ja_Cn_Utility.GV_REQUIRED_YES
490                                   ,Ja_Cn_Utility.GV_MODULE_FA);
491       Ja_Cn_Utility.Add_Sub_Root_Node('FIXED_ASSET_DECREASE_INFO'
492                                      ,Ja_Cn_Utility.GV_TAG_TYPE_END
493                                      ,Ja_Cn_Utility.GV_MODULE_FA);
494   END IF;  --ln_row_count = 0
495 
496     --logging for debug
497   IF (ln_proc_level >= ln_dbg_level) THEN
498       FND_LOG.STRING(ln_proc_level,
499                      GV_MODULE_PREFIX || '.' || lv_procedure_name || '.end',
500                      'Exit procedure');
501   END IF; -- (ln_proc_level>=ln_dbg_level)
502 EXCEPTION
503   WHEN OTHERS THEN
504     IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL)
505     THEN
506         FND_LOG.STRING(FND_LOG.LEVEL_UNEXPECTED,
507                        GV_MODULE_PREFIX || '.' || lv_procedure_name ||
508                        '.Other_Exception ',
509                        SQLCODE || SQLERRM);
510     END IF; -- (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL)
511     FND_FILE.put_line(FND_FILE.log, lv_procedure_name || SQLCODE || SQLERRM);
512     RAISE;
513 END Add_Asset_Decreasing_Info;
514 
515 END JA_CN_FA_ADI_EXPORT_PKG;