DBA Data[Home] [Help]

PACKAGE BODY: APPS.JA_CN_PS_FA_EXP_PKG

Source


1 PACKAGE BODY JA_CN_PS_FA_EXP_PKG AS
2 --$Header: JACNFPAB.pls 120.3 2010/10/08 06:40:58 wuliu noship $
3 --+=======================================================================+
4 --|               Copyright (c) 1998 Oracle Corporation                   |
5 --|                       Redwood Shores, CA, USA                         |
6 --|                         All rights reserved.                          |
7 --+=======================================================================+
8 --| FILENAME                                                              |
9 --|     JACNFPAB.pls                                                      |
10 --|                                                                       |
11 --| DESCRIPTION                                                           |
12 --|     Use this package to export Fixed Asset Information                |
13 --|     for Public Sector                                                 |
14 --|                                                                       |
15 --| PROCEDURE LIST                                                        |
16 --|      PROCEDURE Export_Fixed_Asset                                     |
17 --|      PROCEDURE Submit_Request                                         |
18 --|                                                                       |
19 --| HISTORY                                                               |
20 --|     16/AUG/2010 Wuhua Liu       Created                               |
21 --|     08/OCT/2010 Wuhua Liu       bug#10183952 JA_CN_DEPRN_METHOD when  |
22 --|                                 run fixed assets export               |
23 --+======================================================================*/
24 --==========================================================================
25 --  PROCEDURE NAME:
26 --
27 --   Export_Fixed_Asset                        Public
28 --
29 --  DESCRIPTION:
30 --
31 --    This procedure is to export report of fixed assets for public sector.
32 --
33 --  PARAMETERS:
34 --      Out: pv_errbuf                    NOCOPY VARCHAR2
35 --           pv_retcode                   NOCOPY VARCHAR2
36 --      In:  pn_legal_entity_id           NUMBER identifier of legal entity
37 --           pn_ledger_id                 NUMBER identifier of ledger
38 --           pv_accounting_year           VARCHAR2 accounting year
39 --           pv_period_from               VARCHAR2 period from
40 --           pv_period_to                 VARCHAR2 period to
41 --           pn_coa_id                    NUMBER identifier of COA
42 --
43 --
44 --  DESIGN REFERENCES:
45 --    TDD_1213_FIN_GL_P_CNAOV2_FA.doc
46 --
47 --  CHANGE HISTORY:
48 --      16-Aug-2010   Wuhua Liu  created
49 --==========================================================================
50 PROCEDURE Export_Fixed_Asset
51 ( pv_errbuf          OUT NOCOPY VARCHAR2
52 , pv_retcode         OUT NOCOPY VARCHAR2
53 , pn_legal_entity_id IN         NUMBER
54 , pn_ledger_id       IN         NUMBER
55 , pv_accounting_year IN         VARCHAR2
56 , pv_period_from     IN         VARCHAR2
57 , pv_period_to       IN         VARCHAR2
58 , pn_coa_id          IN         NUMBER
59 )
60 AS
61 lv_procedure_name      VARCHAR2(40) := 'Export_Fixed_Assets';
62 ln_dbg_level           NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
63 ln_proc_level          NUMBER := FND_LOG.LEVEL_PROCEDURE;
64 ln_statement_level     NUMBER := FND_LOG.LEVEL_STATEMENT;
65 lv_fa_element          VARCHAR2(1000);
66 lv_bsv_flag            VARCHAR2(10);
67 
68 BEGIN
69   --logging for debug
70   IF (ln_proc_level >= ln_dbg_level)
71   THEN
72     FND_LOG.STRING( ln_proc_level
73                   , GV_MODULE_PREFIX || '.' || lv_procedure_name || '.begin'
74                   , 'Enter procedure');
75 
76     -- logging the parameters
77     FND_LOG.STRING( ln_proc_level
78                   , lv_procedure_name || '.parameters'
79                   , 'pn_legal_entity_id=' || pn_legal_entity_id || ','
80                     || 'pn_ledger_id=' || pn_ledger_id || ','
81                     || 'pv_accounting_year=' || pv_accounting_year || ','
82                     || 'pv_period_from=' || pv_period_from || ','
83                     || 'pv_period_to=' || pv_period_to || ','
84                     || 'pn_coa_id='  || pn_coa_id );
85     END IF; --(l_proc_level>=l_dbg_level)
86 
87     FND_FILE.put_line( FND_FILE.log
88                      , lv_procedure_name || '.parameters:'
89                        || 'pn_legal_entity_id=' || pn_legal_entity_id || ','
90                        || 'pn_ledger_id=' || pn_ledger_id || ','
91                        || 'pv_accounting_year=' || pv_accounting_year || ','
92                        || 'pv_period_from=' || pv_period_from || ','
93                        || 'pv_period_to=' || pv_period_to || ','
94                        || 'pn_coa_id=' || pn_coa_id );
95   --populate the bsv values
96   lv_bsv_flag := JA_CN_UTILITY.Populate_Ledger_Le_Bsv_Gt(p_Ledger_Id       => pn_ledger_id
97                                                         ,p_Legal_Entity_Id => pn_legal_entity_id
98                                                         );
99 
100   -- Export the XML header tag
101   FND_FILE.put_line( FND_FILE.output
102                    , '<?xml version="1.0" encoding="'
103                      || JA_CN_UTILITY.Get_XML_Encoding || '"?>');
104   lv_fa_element := '<' ||
105                      Ja_Cn_Utility.Get_XML_Tag( 'FIXED_ASSETS'
106                                               , Ja_Cn_Utility.GV_REQUIRED_NO
107                                               , Ja_Cn_Utility.GV_MODULE_FA)
108                     || '   xsi:schemaLocation="http://sxbw.audit.gov.cn/'
109                     || 'AccountingSoftwareDataInterfaceStandard/'
110                     || '2010/PSGA/XMLSchema '
111                     || Ja_Cn_Utility.Get_XML_Tag( 'FIXED_ASSETS'
112                                                 , Ja_Cn_Utility.GV_REQUIRED_NO
113                                                 , Ja_Cn_Utility.GV_MODULE_FA)
114                     || '.xsd" xmlns:'
115                     || Ja_Cn_Utility.Get_XML_Tag('PUBLIC_SECTOR')
116                     || '="http://sxbw.audit.gov.cn/'
117                     || 'AccountingSoftwareDataInterfaceStandard/'
118                     || '2010/PSGA/XMLSchema" '
119                     || 'xmlns="http://sxbw.audit.gov.cn/'
120                     || 'AccountingSoftwareDataInterfaceStandard/'
121                     || '2010/PSGA/XMLSchema" '
122                     || 'xmlns:xsi="http://www.w3.org/2001/'
123                     || 'XMLSchema-instance">';
124     FND_FILE.put_line( FND_FILE.output
125                      , lv_fa_element);
126     -- call the procedures to export the reports seperately here begin
127     -- Export Basic Information of FA
128     Ja_Cn_Utility.Print_Concurrent_Steps_For_Log
129     ( pv_step_number => '2.1'
130     , pv_report_name => 'BASIC_INFO_OF_FIXED_ASSET'
131     , pv_module_name => Ja_Cn_Utility.GV_MODULE_FA
132     );
133     JA_CN_PS_FA_BI_EXP_PKG.Add_Basic_Information( pn_legal_entity_id
134                                                 , pn_ledger_id
135                                                 , pv_accounting_year
136                                                 , pv_period_from
137                                                 , pv_period_to
138                                                 );
139     -- Export Asset Category Setting
140     Ja_Cn_Utility.Print_Concurrent_Steps_For_Log
141     ( pv_step_number => '2.2'
142     , pv_report_name => 'FIXED_ASSET_CATEGORY_SETTING'
143     , pv_module_name => Ja_Cn_Utility.GV_MODULE_FA
144     );
145     JA_CN_FA_ACS_EXPORT_PKG.Add_Asset_Category( pn_legal_entity_id
146                                               , pn_ledger_id
147                                               , pv_accounting_year
148                                               , pv_period_from
149                                               , pv_period_to
150                                               );
151     -- Export FA Modification Method
152     Ja_Cn_Utility.Print_Concurrent_Steps_For_Log
153     ( pv_step_number => '2.3'
154     , pv_report_name => 'MODIFICATION_METHOD'
155     , pv_module_name => Ja_Cn_Utility.GV_MODULE_FA
156     );
157     JA_CN_FA_MM_EXPORT_PKG.Add_FA_Modification_Method( pn_legal_entity_id
158                                                      , pn_ledger_id
159                                                      , pv_accounting_year
160                                                      , pv_period_from
161                                                      , pv_period_to
162                                                      );
163     -- Export FA Usage (usage status)
164     Ja_Cn_Utility.Print_Concurrent_Steps_For_Log
165     ( pv_step_number => '2.4'
166     , pv_report_name => 'ASSET_USAGE'
167     , pv_module_name => Ja_Cn_Utility.GV_MODULE_FA
168     );
169     JA_CN_FA_AU_EXPORT_PKG.Add_FA_Usage( pn_legal_entity_id
170                                        , pn_ledger_id
171                                        , pv_accounting_year
172                                        , pv_period_from
173                                        , pv_period_to
174                                        , pn_coa_id
175                                        );
176     -- Export FA Asset Card information
177     Ja_Cn_Utility.Print_Concurrent_Steps_For_Log
178     ( pv_step_number => '2.6'
179     , pv_report_name => 'FIXED_ASSET_CARD'
180     , pv_module_name => Ja_Cn_Utility.GV_MODULE_FA
181     );
182     JA_CN_PS_FA_AC_EXP_PKG.Add_FA_Asset_Card( pn_legal_entity_id
183                                             , pn_ledger_id
184                                             , pv_accounting_year
185                                             , pv_period_from
186                                             , pv_period_to
187                                             , pn_coa_id
188                                             );
189     -- Export FA Asset Card --Real Asset Information
190      Ja_Cn_Utility.Print_Concurrent_Steps_For_Log
191      ( pv_step_number => '2.7'
192      , pv_report_name => 'FIXED_ASSET_CARD-REAL_ASE_INFO'
193      , pv_module_name => Ja_Cn_Utility.GV_MODULE_FA
194      );
195     JA_CN_FA_RAI_EXPORT_PKG.Add_FA_Real_Asset_Info( pn_legal_entity_id
196                                                   , pn_ledger_id
197                                                   , pv_accounting_year
198                                                   , pv_period_from
199                                                   , pv_period_to
200                                                   );
201     -- Export FA Asset Card Usage Information
202     Ja_Cn_Utility.Print_Concurrent_Steps_For_Log
203     ( pv_step_number => '2.8'
204     , pv_report_name => 'FIXED_ASSET_CARD_USAGE_INFO'
205     , pv_module_name => Ja_Cn_Utility.GV_MODULE_FA
206     );
207     JA_CN_PS_FA_ACUI_EXP_PKG.Add_FA_Usage_Info( pn_legal_entity_id
208                                               , pn_ledger_id
209                                               , pv_accounting_year
210                                               , pv_period_from
211                                               , pv_period_to
212                                               );
213     -- Export FA Decrease Information
214      Ja_Cn_Utility.Print_Concurrent_Steps_For_Log
215      ( pv_step_number => '2.9'
216      , pv_report_name => 'FIXED_ASSET_DECREASE_INFO'
217      , pv_module_name => Ja_Cn_Utility.GV_MODULE_FA
218      );
219     JA_CN_FA_ADI_EXPORT_PKG.Add_Asset_Decreasing_Info( pn_legal_entity_id
220                                                      , pn_ledger_id
221                                                      , pv_accounting_year
222                                                      , pv_period_from
223                                                      , pv_period_to
224                                                      );
225     -- Export FA Decrease Information -- Real Asset Information
226     Ja_Cn_Utility.Print_Concurrent_Steps_For_Log
227     ( pv_step_number => '2.10'
228     , pv_report_name => 'FIXED_ASSET_DECR_INFO-REAL_ASE'
229     , pv_module_name => Ja_Cn_Utility.GV_MODULE_FA
230     );
231     JA_CN_FA_ADIRA_EXPORT_PKG.Add_Asset_Decreasing_Real_Info
232     ( pn_legal_entity_id
233     , pn_ledger_id
234     , pv_accounting_year
235     , pv_period_from
236     , pv_period_to
237     );
238     -- Export FA Modification Information
239      Ja_Cn_Utility.Print_Concurrent_Steps_For_Log
240      ( pv_step_number => '2.11'
241      , pv_report_name => 'FIXED_ASSET_MODIFICATION_INFO'
242      , pv_module_name => Ja_Cn_Utility.GV_MODULE_FA
243      );
244     JA_CN_PS_FA_MI_EXP_PKG.Add_Asset_Modification_Info( pn_legal_entity_id
245                                                       , pn_ledger_id
246                                                       , pv_accounting_year
247                                                       , pv_period_from
248                                                       , pv_period_to
249                                                       );
250     -- Export the XML tail tag
251     FND_FILE.put_line( FND_FILE.output
252                      , Ja_Cn_Utility.Get_XML_Tag( 'FIXED_ASSETS'
253                                                 , Ja_Cn_Utility.GV_TAG_TYPE_END
254                                                 , Ja_Cn_Utility.GV_MODULE_FA)
255                      );
256      --logging for debug
257   IF (ln_proc_level >= ln_dbg_level)
258   THEN
259     FND_LOG.STRING( ln_proc_level
260                   , GV_MODULE_PREFIX || '.' || lv_procedure_name || '.end'
261                   , 'Exit procedure');
262   END IF; -- (ln_proc_level>=ln_dbg_level)
263 
264 EXCEPTION
265   WHEN OTHERS THEN
266     IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL)
267     THEN
268       FND_LOG.STRING( FND_LOG.LEVEL_UNEXPECTED
269                     , GV_MODULE_PREFIX || '.' || lv_procedure_name
270                       || '.Other_Exception '
271                     , SQLCODE || SQLERRM);
272     END IF; -- (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL)
273     FND_FILE.put_line( FND_FILE.log
274                      , lv_procedure_name || SQLCODE || SQLERRM);
275     pv_retcode := 2;
276 END Export_Fixed_Asset;
277 --==========================================================================
278 --  PROCEDURE NAME:
279 --
280 --   Submit_Request                        Public
281 --
282 --  DESCRIPTION:
283 --
284 --    This procedure is to export report of fixed assets for public sector.
285 --
286 --  PARAMETERS:
287 --      Out: pv_errbuf                    NOCOPY VARCHAR2
288 --           pv_retcode                   NOCOPY VARCHAR2
289 --      In:  pn_coa_id                    NUMBER identifier of COA
290 --           pn_legal_entity_id           NUMBER identifier of legal entity
291 --           pn_ledger_id                 NUMBER identifier of ledger
292 --           pv_accounting_year           VARCHAR2 accounting year
293 --           pv_period_from               VARCHAR2 period from
294 --           pv_period_to                 VARCHAR2 period to
295 --           pv_source_char_set           VARCHAR2 source character set
296 --           pv_dest_char_set             VARCHAR2 destination character set
297 --
298 --  DESIGN REFERENCES:
299 --    TDD_1213_FIN_GL_P_CNAOV2_FA.doc
300 --
301 --  CHANGE HISTORY:
302 --      16-Aug-2010   Wuhua Liu  created
303 --      08-Oct-2010   Wuhua Liu  bug#10183952
304 --==========================================================================
305 PROCEDURE Submit_Request
306 ( pv_errbuf          OUT NOCOPY VARCHAR2
307 , pv_retcode         OUT NOCOPY VARCHAR2
308 , pn_legal_entity_id IN         NUMBER
309 , pn_ledger_id       IN         NUMBER
310 , pv_accounting_year IN         VARCHAR2
311 , pv_period_from     IN         VARCHAR2
312 , pv_period_to       IN         VARCHAR2
313 , pn_coa_id          IN         NUMBER
314 , pv_source_char_set IN         VARCHAR2
315 , pv_dest_char_set   IN         VARCHAR2
316 )
317 AS
318 NO_DATA EXCEPTION;
319 lv_procedure_name  VARCHAR2(40) := 'Submit_Request';
320 ln_dbg_level       NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
321 ln_proc_level      NUMBER := FND_LOG.LEVEL_PROCEDURE;
322 ln_statement_level NUMBER := FND_LOG.LEVEL_STATEMENT;
323 lv_error_status    BOOLEAN;
324 lv_period_from     VARCHAR2(100);
325 lv_period_to       VARCHAR2(100);
326 
327 ln_reqid_gle           NUMBER;
328 lv_gle_req_phase       fnd_lookup_values.meaning%TYPE;
329 lv_gle_req_status      fnd_lookup_values.meaning%TYPE;
330 lv_gle_req_status_code fnd_lookup_values.lookup_code%TYPE;
331 
332 lv_error_flag       VARCHAR2(1);
333 ln_waiting_interval NUMBER := 10;
334 lv_dev_phase        VARCHAR2(100);
335 lv_dev_status       VARCHAR2(100);
336 lv_message          VARCHAR2(1000);
337 
338 ln_reqid_cvt        NUMBER;
339 lv_cvt_req_status   VARCHAR2(100);
340 ln_reqid_chg        NUMBER;
341 lv_chg_req_status   VARCHAR2(100);
342 lv_output_file_name VARCHAR2(100);
343 
344 BEGIN
345   --logging for debug
346   IF (ln_proc_level >= ln_dbg_level)
347   THEN
348     FND_LOG.STRING( ln_proc_level
349                   , GV_MODULE_PREFIX || '.' || lv_procedure_name || '.begin'
350                   , 'Enter procedure');
351 
352     -- logging the parameters
353     FND_LOG.STRING( ln_proc_level
354                   , lv_procedure_name || '.parameters'
355                   , 'pn_legal_entity_id=' || pn_legal_entity_id || ','
356                     || 'pn_ledger_id=' || pn_ledger_id || ','
357                     || 'pv_accounting_year=' || pv_accounting_year || ','
358                     || 'pv_period_from=' || pv_period_from || ','
359                     || 'pv_period_to=' || pv_period_to || ','
360                     || 'pn_coa_id='  || pn_coa_id || ','
361                     || 'pv_source_char_set=' || pv_source_char_set || ','
362                     || 'pv_dest_char_set=' || pv_dest_char_set);
363     END IF; --(l_proc_level>=l_dbg_level)
364 
365     FND_FILE.put_line( FND_FILE.log
366                      , lv_procedure_name || '.parameters:'
367                        || 'pn_legal_entity_id=' || pn_legal_entity_id || ','
368                        || 'pn_ledger_id=' || pn_ledger_id || ','
369                        || 'pv_accounting_year=' || pv_accounting_year || ','
370                        || 'pv_period_from=' || pv_period_from || ','
371                        || 'pv_period_to=' || pv_period_to || ','
372                        || 'pn_coa_id=' || pn_coa_id || ','
373                        || 'pv_source_char_set=' || pv_source_char_set || ','
374                        || 'pv_dest_char_set=' || pv_dest_char_set);
375 
376     --Step1: Check system option
377     FND_FILE.PUT_LINE( FND_FILE.LOG
378                      , 'Step 1: Check System Option');
379     IF NOT (Ja_Cn_Utility.Check_Profile())
380     THEN
381       pv_retcode := 1;
382       pv_errbuf  := '';
383       RETURN;
384     END IF; --(Ja_Cn_Utility.Check_Profile())
385 
386     IF NOT (Check_kff(pn_coa_id))
387     THEN
388       pv_retcode := 1;
389       pv_errbuf  := '';
390       RETURN;
391     END IF; --(Check_kff(pn_coa_id))
392 
393     /** no need to check for public sector
394     --bug#10183952
395     IF NOT (Check_Depreciation_Assignment(pn_legal_entity_id))
396     THEN
397       pv_retcode := 1;
398       pv_errbuf  := '';
399       RETURN;
400     END IF; --(Check_Depreciation_Assignment(pn_legal_entity_id))
401     **/
402     IF (pv_period_from IS NULL)
403     THEN
404       BEGIN
405         SELECT PERIOD_NAME
406           INTO lv_period_from
407           FROM (SELECT PERIOD_NAME
408                   FROM GL_PERIOD_STATUSES
409                  WHERE APPLICATION_ID = 101
410                    AND LEDGER_ID = pn_ledger_id
411                    AND PERIOD_YEAR = pv_accounting_year
412                    AND CLOSING_STATUS <> 'N'
413                    AND CLOSING_STATUS <> 'F'
414                  ORDER BY START_DATE)
415          WHERE ROWNUM = 1;
416       EXCEPTION
417         WHEN OTHERS THEN
418           NULL;
419       END;
420     ELSE
421       lv_period_from := pv_period_from;
422     END IF; --(pv_period_from IS NULL)
423 
424     IF (pv_period_to IS NULL)
425     THEN
426       BEGIN
427         SELECT PERIOD_NAME
428           INTO lv_period_to
429           FROM (SELECT PERIOD_NAME
430                   FROM GL_PERIOD_STATUSES
431                  WHERE APPLICATION_ID = 101
432                    AND LEDGER_ID = pn_ledger_id
433                    AND PERIOD_YEAR = pv_accounting_year
434                    AND CLOSING_STATUS <> 'N'
435                    AND CLOSING_STATUS <> 'F'
436                  ORDER BY START_DATE DESC)
437          WHERE ROWNUM = 1;
438       EXCEPTION
439         WHEN OTHERS THEN
440           NULL;
441       END;
442     ELSE
443       lv_period_to := pv_period_to;
444     END IF; --(pv_period_to IS NULL)
445 
446     --Step2: Submit FA Export program
447     FND_FILE.PUT_LINE( FND_FILE.LOG
448                      , 'Step 2: Submit FA Export program');
449     ln_reqid_gle := FND_REQUEST.Submit_Request
450                    ( application => 'JA'
451                    , program     => 'JACNFPGP'
452                    , argument1   => pn_legal_entity_id
453                    , argument2   => pn_ledger_id
454                    , argument3   => pv_accounting_year
455                    , argument4   => lv_period_from
456                    , argument5   => lv_period_to
457                    , argument6   => pn_coa_id
458                    );
459     COMMIT;
460     --Waiting for the 'Export Report for Fixed Assets' completed
461     --get its status
462 
463     IF (ln_reqid_gle <> 0)
464     THEN
465       IF (FND_CONCURRENT.Wait_For_Request
466          ( request_id => ln_reqid_gle
467          , interval   => ln_waiting_interval
468          , phase      => lv_gle_req_phase
469          , status     => lv_gle_req_status
470          , dev_phase  => lv_dev_phase
471          , dev_status => lv_dev_status
472          , message    => lv_message
473          )
474           )
475        THEN
476         --To get lookup code for current status
477         SELECT lookup_code
478           INTO lv_gle_req_status_code
479           FROM fnd_lookup_values
480          WHERE lookup_type = 'CP_STATUS_CODE'
481            AND view_application_id = 0
482            AND security_group_id = 0
483            AND meaning = lv_gle_req_status
484            AND enabled_flag = 'Y'
485            AND language = USERENV('LANG');
486 
487         --Completed with Normal
488         IF (lv_gle_req_status_code = 'C')
489         THEN
490           --Step3: Submit characrter set conversion program
491           --to convert charaterset of output file
492           FND_FILE.PUT_LINE( FND_FILE.LOG
493                            , 'Step 3: Submit Characrter Set Conversion program
494                            ');
495           Ja_Cn_Utility.Submit_XML_Charset_Conversion
496           ( p_xml_request_id      => ln_reqid_gle
497           , p_source_charset      => JA_CN_UTILITY.Get_XML_Encoding
498           , p_destination_charset => pv_dest_char_set
499           , p_source_separator    => NULL
500           , x_charset_request_id  => ln_reqid_cvt
501           , x_result_flag         => lv_cvt_req_status
502           );
503           IF (lv_cvt_req_status = 'Success')
504           THEN
505             --Step4: Submit "Change File Name" concurrent program
506             --to change name of output file
507             FND_FILE.PUT_LINE( FND_FILE.LOG
508                              , 'Step 4: Submit File Name Renaming program');
509             lv_output_file_name := Ja_Cn_Utility.Generate_File_name
510                                   ( pv_module_name     =>
511                                       JA_CN_UTILITY.GV_MODULE_FA
512                                   , pv_accounting_year => pv_accounting_year
513                                   , pv_ledger_id       => pn_ledger_id
514                                   , pv_from_period     => pv_period_from
515                                   , pv_to_period       => pv_period_to
516                                   );
517             --logging the variables
518             IF (ln_statement_level >= ln_dbg_level)
519             THEN
520               FND_LOG.STRING( ln_statement_level
521                             , lv_procedure_name
522                             , 'lv_output_file_name:' || lv_output_file_name);
523             END IF; --(ln_statement_level >= ln_dbg_level)
524             FND_FILE.put_line( FND_FILE.log
525                              , lv_procedure_name || '.variable:'
526                                || 'lv_output_file_name ='
527                                || lv_output_file_name);
528             JA_CN_UTILITY.Change_Output_Filename
529             ( p_xml_request_id       => ln_reqid_gle
530             , p_destination_charset  => pv_dest_char_set
531             , p_destination_filename => lv_output_file_name
532             , x_filename_request_id  => ln_reqid_chg
533             , x_result_flag          => lv_chg_req_status
534             );
535             IF (lv_chg_req_status = 'Success')
536             THEN
537               NULL;
538             ELSIF (lv_chg_req_status = 'Warning')
539             THEN
540               lv_error_flag := 'W';
541             ELSIF (lv_chg_req_status = 'Error')
542             THEN
543               lv_error_flag := 'E';
544             END IF; --l_chg_req_status='Success'
545           ELSIF (lv_cvt_req_status = 'Warning')
546           THEN
547             lv_error_flag := 'W';
548           ELSIF (lv_cvt_req_status = 'Error')
549           THEN
550             lv_error_flag := 'E';
551           END IF; --l_cvt_req_status='Success'
552 
553           --Completed with 'Warning'
554         ELSIF (lv_gle_req_status_code = 'G')
555         THEN
556           lv_error_flag := 'W';
557           --Completed with 'Error'
558         ELSIF (lv_gle_req_status_code = 'E')
559         THEN
560           lv_error_flag := 'E';
561         END IF; --FND_CONCURRENT.Wait_For_Request(request_id   => l_reqid_comb
562       ELSE
563         lv_error_flag := 'E';
564       END IF; --FND_CONCURRENT.Wait_For_Request
565     ELSE
566       lv_error_flag := 'E';
567     END IF; --ln_reqid_gle<>0
568 
569     --If any of above  concurrent porgrams is Warning/Failed,
570     --set current export program to status 'Warning'/'Error' accordingly.
571     IF (lv_error_flag = 'W')
572     THEN
573       lv_error_status := FND_CONCURRENT.Set_Completion_Status
574                          ( status  => 'WARNING'
575                          , message => ''
576                          );
577     ELSIF (lv_error_flag = 'E')
578     THEN
579       lv_error_status := FND_CONCURRENT.Set_Completion_Status
580                          ( status  => 'ERROR'
581                          , message => ''
582                          );
583     END IF; --lv_error_flag='W'
584 
585     --logging for debug
586     IF (ln_proc_level >= ln_dbg_level) THEN
587       FND_LOG.STRING( ln_proc_level
588                     , GV_MODULE_PREFIX || '.' || lv_procedure_name || '.end'
589                     , 'Exit procedure');
590     END IF; -- (ln_proc_level>=ln_dbg_level)
591 
592     --logging for debug
593     IF (ln_proc_level >= ln_dbg_level)
594     THEN
595       FND_LOG.STRING( ln_proc_level
596                     , GV_MODULE_PREFIX || '.' || lv_procedure_name || '.end'
597                     , 'Exit procedure');
598     END IF; -- (ln_proc_level>=ln_dbg_level)
599 
600 EXCEPTION
601   WHEN OTHERS THEN
602     IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL)
603     THEN
604       FND_LOG.STRING( FND_LOG.LEVEL_UNEXPECTED
605                     , GV_MODULE_PREFIX || '.' || lv_procedure_name
606                       || '.Other_Exception '
607                     , SQLCODE || SQLERRM);
608       END IF; -- (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL)
609       FND_FILE.put_line( FND_FILE.log
610                        , lv_procedure_name || SQLCODE || SQLERRM);
611 END Submit_Request;
612  --==========================================================================
613 --  FUNCTION NAME:
614 --
615 --    Check_kff                       Public
616 --
617 --  DESCRIPTION:
618 --
619 --    This function is to check the Key flex field config.
620 --    for public sector
621 --
622 --  PARAMETERS:
623 --      In:  pn_coa_id  NUMBER Identifier of Chart of Account.
624 --
625 --  DESIGN REFERENCES:
626 --    TDD_1213_FIN_GL_P_CNAOV2_FA.doc
627 --
628 --  CHANGE HISTORY:
629 --
630 --           16-AUG-2010   Wuhua Liu  created
631 FUNCTION Check_kff
632 ( pn_coa_id NUMBER)
633 RETURN BOOLEAN
634 IS
635 lv_false_flag VARCHAR2(1) := 'N';
636 lv_error_msg  VARCHAR2(2000);
637 ln_dbg_level  NUMBER := FND_LOG.g_current_runtime_level;
638 ln_proc_level NUMBER := FND_LOG.Level_Procedure;
639 lv_proc_name  VARCHAR2(100) := 'Check_kff';
640 ln_row_count  NUMBER := 0;
641 
642 CURSOR kff_cur
643 ( ln_coa_id NUMBER)
644 IS
645 SELECT
646   context_code
647 , attribute_column
648 FROM
649   ja_cn_dff_assignments_v
650 WHERE chart_of_accounts_id = pn_coa_id
651   AND (lookup_code = 'FAAU' OR lookup_code = 'FAUM');
652 
653 BEGIN
654   --log for debug
655   IF (ln_proc_level >= ln_dbg_level) THEN
656     Fnd_Log.STRING(ln_proc_level,
657                      GV_MODULE_PREFIX || '.' || lv_proc_name || '.begin',
658                      'Enter function');
659     END IF; --(l_proc_level >= l_dbg_level)
660 
661     FOR v_row IN kff_cur(pn_coa_id) LOOP
662       ln_row_count := ln_row_count + 1;
663       IF (v_row.context_code IS NULL OR v_row.attribute_column IS NULL) THEN
664         --Raise error message for caller
665         lv_false_flag := 'Y';
666         Fnd_Message.Set_Name(Application => 'JA',
667                              NAME        => 'JA_CN_FLEXFIELD_ASSIGN_NOT_SET');
668         lv_error_msg := Fnd_Message.Get;
669 
670         --Output error message
671         Fnd_File.Put_Line(Fnd_File.Output, lv_error_msg);
672       END IF; --(v_row.context_code IS NULL OR v_row.attribute_column IS NULL)
673     END LOOP;
674 
675     IF (ln_row_count = 0) THEN
676       lv_false_flag := 'Y';
677       Fnd_Message.Set_Name(Application => 'JA',
678                            NAME        => 'JA_CN_FLEXFIELD_ASSIGN_NOT_SET');
679       lv_error_msg := Fnd_Message.Get;
680       --Output error message
681       Fnd_File.Put_Line(Fnd_File.Output, lv_error_msg);
682     END IF; --ln_row_count = 0
683 
684     IF lv_false_flag = 'N' THEN
685       --log for debug
686       IF (ln_proc_level >= ln_dbg_level) THEN
687         Fnd_Log.STRING(ln_proc_level,
688                        GV_MODULE_PREFIX || '.' || lv_proc_name || '.end',
689                        'Exit function');
690       END IF; --( ln_proc_level >= ln_dbg_level )
691       RETURN TRUE;
692     ELSE
693       --log for debug
694       IF (ln_proc_level >= ln_dbg_level) THEN
695         Fnd_Log.STRING(ln_proc_level,
696                        GV_MODULE_PREFIX || '.' || lv_proc_name || '.end',
697                        'Exit function');
698       END IF; --( ln_proc_level >= ln_dbg_level )
699       RETURN FALSE;
700     END IF; --lv_false_flage='N'
701 
702   EXCEPTION
703 
704     WHEN OTHERS THEN
705       IF (ln_proc_level >= ln_dbg_level) THEN
706         Fnd_Log.STRING(ln_proc_level,
707                        GV_MODULE_PREFIX || '.' || lv_proc_name ||
708                        '. Other_Exception ',
709                        SQLCODE || ':' || SQLERRM);
710       END IF; --(ln_proc_level >= ln_dbg_level)
711 
712   END Check_kff;
713 --==========================================================================
714 --  FUNCTION NAME:
715 --
716 --    Check_Depreciation_Assignment                       Public
717 --
718 --  DESCRIPTION:
719 --
720 --    This function is to check the Depreciation Assignment .
721 --    for public sector
722 --
723 --  PARAMETERS:
724 --      In:  pn_legal_entity_id  NUMBER Identifier of Legal Entity.
725 --
726 --  DESIGN REFERENCES:
727 --    TDD_1213_FIN_GL_P_CNAOV2_FA.doc
728 --
729 --  CHANGE HISTORY:
730 --
731 --           16-AUG-2010   Wuhua Liu  created
732   FUNCTION Check_Depreciation_Assignment(pn_legal_entity_id NUMBER)
733     RETURN BOOLEAN IS
734     ln_row_count       NUMBER := 0;
735     lv_Error_Msg       VARCHAR2(2000);
736     ln_dbg_level       NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
737     ln_proc_level      NUMBER := FND_LOG.LEVEL_PROCEDURE;
738     ln_statement_level NUMBER := FND_LOG.LEVEL_STATEMENT;
739     lv_procedure_name  VARCHAR2(40) := 'Check_Depreciation_Assignment';
740 
741   BEGIN
742 
743     IF (ln_proc_level >= ln_dbg_level) THEN
744       FND_LOG.STRING( ln_proc_level
745                     , GV_MODULE_PREFIX || '.' || lv_procedure_name
746                       || '.begin'
747                     , 'Enter procedure');
748       -- logging the parameters
749       FND_LOG.STRING( ln_proc_level
750                     , lv_procedure_name || '.parameters'
751                     , 'pn_legal_entity_id=' || pn_legal_entity_id);
752     END IF; --l_proc_level>=l_dbg_level
753 
754     SELECT
755       COUNT(*)
756     INTO
757       ln_row_count
758     FROM
759       ja_cn_dep_meth_assignment
760      WHERE legal_entity_id = pn_legal_entity_id;
761 
762     IF (ln_row_count = 0) THEN
763       Fnd_Message.Set_Name( Application => 'JA'
764                           , NAME        => 'JA_CN_NO_DEPRN_METHOD');
765       lv_Error_Msg := Fnd_Message.Get;
766       --Output error message
767       Fnd_File.Put_Line( Fnd_File.Output
768                        , lv_Error_Msg);
769       --logging for debug
770       IF (ln_proc_level >= ln_dbg_level) THEN
771         FND_LOG.STRING( ln_proc_level
772                        ,GV_MODULE_PREFIX || '.' || lv_procedure_name
773                         || '.end'
774                        , 'Exit procedure');
775       END IF; -- (ln_proc_level>=ln_dbg_level)
776       RETURN FALSE;
777     ELSE
778       --logging for debug
779       IF (ln_proc_level >= ln_dbg_level) THEN
780         FND_LOG.STRING( ln_proc_level
781                       , GV_MODULE_PREFIX || '.' || lv_procedure_name
782                         || '.end'
783                       , 'Exit procedure');
784       END IF; -- (ln_proc_level>=ln_dbg_level)
785       RETURN TRUE;
786     END IF; --(IF(ln_row_count = 0))
787 
788 EXCEPTION
789   WHEN OTHERS THEN
790     IF (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL)
791     THEN
792     FND_LOG.STRING( FND_LOG.LEVEL_UNEXPECTED
793                   , GV_MODULE_PREFIX || '.' || lv_procedure_name
794                     || '.Other_Exception '
795                   , SQLCODE || SQLERRM);
796       END IF; -- (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL)
797       FND_FILE.put_line( FND_FILE.log
798                        , lv_procedure_name || SQLCODE || SQLERRM);
799 
800 END Check_Depreciation_Assignment;
801 END JA_CN_PS_FA_EXP_PKG;
802 
803