DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGIRX_C_IMP_IAC_REP

Source


1 PACKAGE BODY IGIRX_C_IMP_IAC_REP AS
2 --  $Header: igiimxcb.pls 120.3.12000000.1 2007/08/01 16:22:20 npandya noship $
3 
4  -- global variables
5  g_debug_mode     BOOLEAN := FALSE;
6 
7 --===========================FND_LOG.START=====================================
8 
9 g_state_level NUMBER	     :=	FND_LOG.LEVEL_STATEMENT;
10 g_proc_level  NUMBER	     :=	FND_LOG.LEVEL_PROCEDURE;
11 g_event_level NUMBER	     :=	FND_LOG.LEVEL_EVENT;
12 g_excep_level NUMBER	     :=	FND_LOG.LEVEL_EXCEPTION;
13 g_error_level NUMBER	     :=	FND_LOG.LEVEL_ERROR;
14 g_unexp_level NUMBER	     :=	FND_LOG.LEVEL_UNEXPECTED;
15 g_path        VARCHAR2(100)  := 'IGI.PLSQL.igiimxcb.igirx_c_imp_iac_rep.';
16 
17 --===========================FND_LOG.END=====================================
18 
19 
20   FUNCTION Trxns_In_Open_Period(p_dist_source_book in VARCHAR2,
21                                 p_book_type_code in VARCHAR2)
22   RETURN BOOLEAN AS
23 
24            CURSOR C_Fa_Period_Counter
25            IS
26            SELECT  max(period_counter)
27            from fa_deprn_periods
28            where book_type_code=p_dist_source_book;
29 
30            CURSOR C_Imp_Period_Counter
31            IS
32            SELECT period_counter
33            FROM igi_imp_iac_controls
34            where book_type_code=p_book_type_code;
35 
36            CURSOR C_Trxn
37        	   IS
38            SELECT count(*)
39            FROM   fa_transaction_headers ft ,
40                   fa_deprn_periods dp
41            WHERE  ft.book_type_Code        = p_dist_source_book
42            AND    dp.book_type_Code        = p_dist_source_book
43            AND    dp.period_close_Date     IS NULL
44            AND    ft.date_effective        >= dp.period_open_date ;
45 
46 
47        --variables
48 	    l_fa_period_counter      NUMBER;
49        	l_imp_period_counter     NUMBER;
50        	l_count                  NUMBER;
51 	l_path_name VARCHAR2(150):= g_path||'trxns_in_open_period';
52 
53 
54        BEGIN
55 
56              OPEN C_Fa_Period_Counter;
57              FETCH C_Fa_Period_Counter INTO l_fa_period_counter;
58              CLOSE C_Fa_Period_Counter;
59 
60              OPEN C_Imp_Period_Counter;
61              FETCH C_Imp_Period_Counter INTO l_imp_period_counter;
62              CLOSE C_Imp_Period_Counter;
63 
64          IF (l_imp_period_counter<>l_fa_period_counter)
65          THEN
66              RETURN FALSE;
67          ELSE
68         --Check for trxns in open period
69             OPEN  c_trxn;
70             FETCH c_trxn INTO l_count;
71             CLOSE c_trxn;
72 
73 	         IF l_count>0 THEN
74 		        RETURN FALSE;
75 	        ELSE
76 		        RETURN TRUE;
77 	            END IF;
78 
79          END IF;
80 
81     EXCEPTION
82             WHEN OTHERS
83             THEN
84   		igi_iac_debug_pkg.debug_unexpected_msg(p_full_path => l_path_name);
85             RETURN FALSE ;
86    END ;
87 
88 
89 
90  -- ====================================================================
91 -- PROCEDURE imp:
92 -- ====================================================================
93 
94 PROCEDURE imp (
95   errbuf	    out nocopy varchar2,
96   retcode	    out nocopy number,
97   argument1	    in	varchar2,                 -- book_type_code
98   argument2         in  varchar2   default  null,  --category_struct_id
99   argument3         in  varchar2  default  null,  --category_id
100   argument4         in  varchar2  default  null,
101   argument5         in  varchar2  default  null,
102   argument6         in  varchar2  default  null,
103   argument7         in  varchar2  default  null,
104   argument8         in  varchar2  default  null,
105   argument9         in  varchar2  default  null,
106   argument10        in  varchar2  default  null,
107   argument11	    in  varchar2  default  null,
108   argument12        in  varchar2  default  null,
109   argument13        in  varchar2  default  null,
110   argument14        in  varchar2  default  null,
111   argument15        in  varchar2  default  null,
112   argument16        in  varchar2  default  null,
113   argument17        in  varchar2  default  null,
114   argument18        in  varchar2  default  null,
115   argument19        in  varchar2  default  null,
116   argument20        in  varchar2  default  null,
117   argument21	    in  varchar2  default  null,
118   argument22        in  varchar2  default  null,
119   argument23        in  varchar2  default  null,
120   argument24        in  varchar2  default  null,
121   argument25        in  varchar2  default  null,
122   argument26        in  varchar2  default  null,
123   argument27        in  varchar2  default  null,
124   argument28        in  varchar2  default  null,
125   argument29        in  varchar2  default  null,
126   argument30        in  varchar2  default  null,
127   argument31	    in  varchar2  default  null,
128   argument32        in  varchar2  default  null,
129   argument33        in  varchar2  default  null,
130   argument34        in  varchar2  default  null,
131   argument35        in  varchar2  default  null,
132   argument36        in  varchar2  default  null,
133   argument37        in  varchar2  default  null,
134   argument38        in  varchar2  default  null,
135   argument39        in  varchar2  default  null,
136   argument40        in  varchar2  default  null,
137   argument41	    in  varchar2  default  null,
138   argument42        in  varchar2  default  null,
139   argument43        in  varchar2  default  null,
140   argument44        in  varchar2  default  null,
141   argument45        in  varchar2  default  null,
142   argument46        in  varchar2  default  null,
143   argument47        in  varchar2  default  null,
144   argument48        in  varchar2  default  null,
145   argument49        in  varchar2  default  null,
146   argument50        in  varchar2  default  null,
147   argument51	    in  varchar2  default  null,
148   argument52        in  varchar2  default  null,
149   argument53        in  varchar2  default  null,
150   argument54        in  varchar2  default  null,
151   argument55        in  varchar2  default  null,
152   argument56        in  varchar2  default  null,
153   argument57        in  varchar2  default  null,
154   argument58        in  varchar2  default  null,
155   argument59        in  varchar2  default  null,
156   argument60        in  varchar2  default  null,
157   argument61	    in  varchar2  default  null,
158   argument62        in  varchar2  default  null,
159   argument63        in  varchar2  default  null,
160   argument64        in  varchar2  default  null,
161   argument65        in  varchar2  default  null,
162   argument66        in  varchar2  default  null,
163   argument67        in  varchar2  default  null,
164   argument68        in  varchar2  default  null,
165   argument69        in  varchar2  default  null,
166   argument70        in  varchar2  default  null,
167   argument71	    in  varchar2  default  null,
168   argument72        in  varchar2  default  null,
169   argument73        in  varchar2  default  null,
170   argument74        in  varchar2  default  null,
171   argument75        in  varchar2  default  null,
172   argument76        in  varchar2  default  null,
173   argument77        in  varchar2  default  null,
174   argument78        in  varchar2  default  null,
175   argument79        in  varchar2  default  null,
176   argument80        in  varchar2  default  null,
177   argument81	    in  varchar2  default  null,
178   argument82        in  varchar2  default  null,
179   argument83        in  varchar2  default  null,
180   argument84        in  varchar2  default  null,
181   argument85        in  varchar2  default  null,
182   argument86        in  varchar2  default  null,
183   argument87        in  varchar2  default  null,
184   argument88        in  varchar2  default  null,
185   argument89        in  varchar2  default  null,
186   argument90        in  varchar2  default  null,
187   argument91	    in  varchar2  default  null,
188   argument92        in  varchar2  default  null,
189   argument93        in  varchar2  default  null,
190   argument94        in  varchar2  default  null,
191   argument95        in  varchar2  default  null,
192   argument96        in  varchar2  default  null,
193   argument97        in  varchar2  default  null,
194   argument98        in  varchar2  default  null,
195   argument99        in  varchar2  default  null,
196   argument100       in       varchar2 default null) is
197 
198 
199 
200   h_request_id          NUMBER := fnd_global.conc_request_id;
201   l_dist_source_book    VARCHAR2(15);
202   l_path_name VARCHAR2(150) := g_path||'imp';
203 
204   BEGIN
205 
206    igi_iac_debug_pkg.debug_other_string(p_level => g_state_level,
207 		     p_full_path => l_path_name,
208 		     p_string => 'book_type_code:   '||argument1);
209 
210    h_request_id := fnd_global.conc_request_id;
211 
212    	SELECT distribution_source_book INTO l_dist_source_book
213 	FROM fa_book_controls
214 	WHERE
215 	book_type_code=argument1;
216 
217 
218 
219   IF( NOT Trxns_In_Open_Period(l_dist_source_book,argument1))
220       THEN
221        fnd_message.set_name ('IGI','IGI_IMP_IAC_TRXNS_IN_OPEN_PERD');
222        errbuf := fnd_message.get;
223        retcode := 0 ;
224        RETURN ;
225 
226   ELSE
227       igi_iac_debug_pkg.debug_other_string(p_level => g_state_level,
228 		     p_full_path => l_path_name,
229 		     p_string => 'Before calling inner procedure, request id: '||h_request_id);
230 
231    	igirx_imp_iac_rep.imp(
232       	 p_book_type_code     => argument1,
233       	 p_category_struct_id => to_number(argument2),
234        	 p_category_id        => to_number(argument3),
235       	 p_request_id 	    => h_request_id,
236        	 retcode 	    => retcode,
237        	 errbuf 	    => errbuf);
238   END IF;
239 
240    igi_iac_debug_pkg.debug_other_string(p_level => g_state_level,
241 		     p_full_path => l_path_name,
242 		     p_string => 'Reconciliation Implementation Outer wrapper completed successfully');
243    retcode := 0;
244    errbuf := 'Successful!';
245 
246   EXCEPTION
247      WHEN OTHERS THEN
248           retcode := 2;
249   	  FND_MESSAGE.SET_NAME('IGI', 'IGI_IAC_EXCEPTION');
250   	  FND_MESSAGE.SET_TOKEN('PACKAGE','igirx_c_imp_iac_rep');
251   	  FND_MESSAGE.SET_TOKEN('ERROR_MESSAGE','Reconciliation Implementation outer wrapper did not complete successfully');
252   	  igi_iac_debug_pkg.debug_other_msg(p_level => g_error_level,
253 		  			    p_full_path => l_path_name,
254 		  			    p_remove_from_stack => FALSE);
255 	  errbuf := FND_MESSAGE.GET;
256 	  fnd_file.put_line(fnd_file.log, errbuf);
257   END imp;
258 
259 END igirx_c_imp_iac_rep;