DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGI_IMP_IAC_IMPORT_CUST_PKG

Source


1 PACKAGE BODY igi_imp_iac_import_cust_pkg AS
2 -- $Header: igiimiab.pls 120.6.12000000.1 2007/08/01 16:21:04 npandya ship $
3 
4 --===========================FND_LOG.START=====================================
5 
6 g_state_level NUMBER	     :=	FND_LOG.LEVEL_STATEMENT;
7 g_proc_level  NUMBER	     :=	FND_LOG.LEVEL_PROCEDURE;
8 g_event_level NUMBER	     :=	FND_LOG.LEVEL_EVENT;
9 g_excep_level NUMBER	     :=	FND_LOG.LEVEL_EXCEPTION;
10 g_error_level NUMBER	     :=	FND_LOG.LEVEL_ERROR;
11 g_unexp_level NUMBER	     :=	FND_LOG.LEVEL_UNEXPECTED;
12 g_path        VARCHAR2(100)  := 'IGI.PLSQL.igiimiab.igi_imp_iac_import_cust_pkg.';
13 
14 --===========================FND_LOG.END=====================================
15    --
16    -- Implementation Customized Import Data Process
17    --
18    PROCEDURE Import_Cust_Data_Process ( errbuf            OUT NOCOPY VARCHAR2
19                                       , retcode           OUT NOCOPY NUMBER
20                                       , p_full_file_name  IN  VARCHAR2
21                                      ) IS
22 
23       l_full_file_name VARCHAR2(1000);
24       l_message        VARCHAR2(1000);
25 
26       -- 07/07/2003, mh, added for web adi check
27       l_adi_enabled   VARCHAR2(3);
28 
29       e_iac_not_enabled EXCEPTION;
30       -- 07/07/2003, mh, added for web adi check
31       e_web_adi_enabled    EXCEPTION;
32       l_path_name VARCHAR2(150) := g_path||'import_cust_data_process';
33    BEGIN
34 
35       l_full_file_name := p_full_file_name;
36 
37       -- Check if IAC is switched on
38       IF NOT igi_gen.is_req_installed('IAC') THEN
39          RAISE e_iac_not_enabled;
40       END IF;
41 
42       -- 07/07/2003, mh, added for web adi check
43       -- Check if the profile option to use WebADI for import/export
44       -- is set to 'Y'
45       l_adi_enabled := fnd_profile.value('IGI_IMP_IAC_USE_WEB_ADI');
46 
47       IF (l_adi_enabled = 'Y') THEN
48          RAISE e_web_adi_enabled;
49       END IF;
50 
51       -- Delete old records from the intermediate table
52       DELETE FROM igi_imp_iac_intermediate;
53       COMMIT;
54 
55       -- Write file name to log file
56       FND_MESSAGE.Set_Name('IGI','IGI_IMP_IAC_FILE_LOG');
57       FND_MESSAGE.Set_Token('FILE_NAME',l_full_file_name);
58       igi_iac_debug_pkg.debug_other_msg(p_level => g_state_level,
59 		      p_full_path => l_path_name,
60 		      p_remove_from_stack => FALSE);
61       l_message := FND_MESSAGE.Get;
62       FND_FILE.Put_Line(FND_FILE.Log,l_message);
63 
64       -- Invoking SQL*Loader to upload the file to the intermediate table.
65       igi_imp_iac_import_pkg.spawn_loader( l_full_file_name
66                                          );
67 
68       -- Invoke the validate and update PL/SQL Program
69       igi_imp_iac_import_pkg.validate_update_imp_data( l_full_file_name
70                                                      , ''
71                                                      , ''
72                                                      );
73 
74       COMMIT;
75 
76    EXCEPTION
77 
78       WHEN e_iac_not_enabled THEN
79          FND_MESSAGE.Set_Name('IGI','IGI_IAC_NOT_INSTALLED');
80          igi_iac_debug_pkg.debug_other_msg(p_level => g_error_level,
81 		         p_full_path => l_path_name,
82 		         p_remove_from_stack => FALSE);
83          retcode := 2;
84          errbuf := FND_MESSAGE.Get;
85 	 fnd_file.put_line(fnd_file.log, errbuf);
86       WHEN e_web_adi_enabled THEN
87          FND_MESSAGE.Set_Name('IGI','IGI_IMP_IAC_WEB_ADI_ENABLED');
88          igi_iac_debug_pkg.debug_other_msg(p_level => g_error_level,
89 		         p_full_path => l_path_name,
90 		         p_remove_from_stack => FALSE);
91          retcode := 2;
92          errbuf := FND_MESSAGE.Get;
93 	 fnd_file.put_line(fnd_file.log, errbuf);
94       WHEN OTHERS THEN
95          FND_MESSAGE.Retrieve(l_message);
96          igi_iac_debug_pkg.debug_other_msg(p_level => g_error_level,
97 		         p_full_path => l_path_name,
98 		         p_remove_from_stack => FALSE);
99          retcode := 2;
100          errbuf := l_message;
101 	 fnd_file.put_line(fnd_file.log, errbuf);
102 
103    END Import_Cust_Data_Process;
104 
105 END igi_imp_iac_import_cust_pkg;