[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;