[Home] [Help]
PACKAGE BODY: APPS.OKL_CREATE_ADJST_PUB
Source
1 PACKAGE BODY okl_create_adjst_pub AS
2 /* $Header: OKLPOCAB.pls 120.2 2008/04/30 00:40:28 snizam ship $ */
3
4 /*===========================================================================+
5 | PROCEDURE |
6 | create_adjustments_pub |
7 | |
8 | DESCRIPTION |
9 | This is the main routine to create an adjustment in AR |
10 | |
11 | SCOPE - PUBLIC |
12 | |
13 | NOTES |
14 | |
15 | MODIFICATION HISTORY |
16 | Bruno Vaghela 16-AUG-02 Created |
17 | Bruno Vaghela 21-JAN-03 Process now creates a OUTPUT file. |
18 | Syed Nizam 29-APR-08 Bug 6727171 -- Modified error handling |
19 +===========================================================================*/
20
21 PROCEDURE create_adjustments_pub( p_api_version IN NUMBER
22 ,p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE
23 ,x_return_status OUT NOCOPY VARCHAR2
24 ,x_msg_count OUT NOCOPY NUMBER
25 ,x_msg_data OUT NOCOPY VARCHAR2
26 ) IS
27
28 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
29 l_api_version NUMBER := 1;
30 l_init_msg_list VARCHAR2(1);
31 l_msg_count NUMBER;
32 l_msg_data VARCHAR(2000);
33
34 BEGIN
35
36 SAVEPOINT save_Insert_row;
37
38 l_api_version := p_api_version;
39 l_init_msg_list := p_init_msg_list;
40
41 -- customer pre-processing
42
43
44
45 OKL_CREATE_ADJST_PVT.create_adjustments ( p_api_version
46 ,p_init_msg_list
47 ,l_return_status
48 ,l_msg_count
49 ,l_msg_data
50 );
51
52 /* Bug 6727171 Start
53
54 IF x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
55 RAISE G_EXCEPTION_HALT_VALIDATION;
56 ELSE
57 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
58 l_return_status := x_return_status;
59 END IF;
60 END IF;
61 Bug 6727171 End */
62
63 --Bug 6727171 Start
64 IF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
65 RAISE FND_API.G_EXC_ERROR;
66 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
67 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
68 END IF;
69 --Bug 6727171 End
70
71 --Assign value to OUT variables
72
73 x_return_status := l_return_status ;
74 x_msg_count := l_msg_count ;
75 x_msg_data := l_msg_data ;
76
77 EXCEPTION
78
79 WHEN Fnd_Api.G_EXC_ERROR THEN
80 ROLLBACK TO save_Insert_row;
81 x_return_status := Fnd_Api.G_RET_STS_ERROR;
82 x_msg_count := l_msg_count ;
83 x_msg_data := l_msg_data ;
84 Fnd_Msg_Pub.count_and_get(
85 p_count => x_msg_count
86 ,p_data => x_msg_data);
87 WHEN Fnd_Api.G_EXC_UNEXPECTED_ERROR THEN
88 ROLLBACK TO save_Insert_row;
89 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
90 x_msg_count := l_msg_count ;
91 x_msg_data := l_msg_data ;
92 Fnd_Msg_Pub.count_and_get(
93 p_count => x_msg_count
94 ,p_data => x_msg_data);
95 WHEN OTHERS THEN
96 ROLLBACK TO save_Insert_row;
97 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
98 x_msg_count := l_msg_count ;
99 x_msg_data := l_msg_data ;
100 Fnd_Msg_Pub.ADD_EXC_MSG('CREATE_ADJUSTMENTS_PUB','insert_row');
101 Fnd_Msg_Pub.count_and_get(
102 p_count => x_msg_count
103 ,p_data => x_msg_data);
104
105 END create_adjustments_pub;
106
107 /*===========================================================================+
108 | PROCEDURE |
109 | iex_create_adjustments_pub |
110 | |
111 | DESCRIPTION |
112 | This is the main routine to create an adjustment in AR |
113 | specifically for IEX guys. |
114 | |
115 | ARGUMENTS : IN: |
116 | p_api_name |
117 | p_api_version |
118 | p_init_msg_list |
119 | p_commit_flag |
120 | p_psl_id |
121 | p_chk_approval_limits |
122 | : OUT: |
123 | x_new_adj_id |
124 | x_return_status |
125 | x_msg_count |
126 | x_msg_data |
127 | |
128 | SCOPE - PUBLIC |
129 | |
130 | NOTES |
131 | |
132 | MODIFICATION HISTORY |
133 | Bruno Vaghela 09-OCT-02 Created |
134 +===========================================================================*/
135
136 PROCEDURE iex_create_adjustments_pub( p_api_version IN NUMBER
137 ,p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE
138 ,p_commit_flag IN VARCHAR2 DEFAULT OKL_API.G_TRUE
139 ,p_psl_id IN NUMBER
140 ,p_chk_approval_limits IN VARCHAR2 DEFAULT OKL_API.G_TRUE
141 ,x_new_adj_id OUT NOCOPY NUMBER
142 ,x_return_status OUT NOCOPY VARCHAR2
143 ,x_msg_count OUT NOCOPY NUMBER
144 ,x_msg_data OUT NOCOPY VARCHAR2
145 ) IS
146
147 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
148 l_api_version NUMBER := 1;
149 l_init_msg_list VARCHAR2(1);
150 l_msg_count NUMBER;
151 l_msg_data VARCHAR(2000);
152
153 BEGIN
154
155 SAVEPOINT save_Insert_row;
156
157 l_api_version := p_api_version;
158 l_init_msg_list := p_init_msg_list;
159
160 -- customer pre-processing
161
162
163
164 OKL_CREATE_ADJST_PVT.iex_create_adjustments ( p_api_version
165 ,p_init_msg_list
166 ,p_commit_flag
167 ,p_psl_id
168 ,p_chk_approval_limits
169 ,x_new_adj_id
170 ,l_return_status
171 ,l_msg_count
172 ,l_msg_data
173 );
174
175 /*Bug 6727171 Start
176 IF x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
177 RAISE G_EXCEPTION_HALT_VALIDATION;
178 ELSE
179 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
180 l_return_status := x_return_status;
181 END IF;
182 END IF;
183 Bug 6727171 End */
184
185 --Bug 6727171 Start
186 IF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
187 RAISE FND_API.G_EXC_ERROR;
188 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
189 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
190 END IF;
191 --Bug 6727171 End
192
193
194
195 --Assign value to OUT variables
196
197 x_return_status := l_return_status ;
198 x_msg_count := l_msg_count ;
199 x_msg_data := l_msg_data ;
200
201 EXCEPTION
202
203 WHEN Fnd_Api.G_EXC_ERROR THEN
204 ROLLBACK TO save_Insert_row;
205 x_return_status := Fnd_Api.G_RET_STS_ERROR;
206 x_msg_count := l_msg_count ;
207 x_msg_data := l_msg_data ;
208 Fnd_Msg_Pub.count_and_get(
209 p_count => x_msg_count
210 ,p_data => x_msg_data);
211 WHEN Fnd_Api.G_EXC_UNEXPECTED_ERROR THEN
212 ROLLBACK TO save_Insert_row;
213 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
214 x_msg_count := l_msg_count ;
215 x_msg_data := l_msg_data ;
216 Fnd_Msg_Pub.count_and_get(
217 p_count => x_msg_count
218 ,p_data => x_msg_data);
219 WHEN OTHERS THEN
220 ROLLBACK TO save_Insert_row;
221 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
222 x_msg_count := l_msg_count ;
223 x_msg_data := l_msg_data ;
224 Fnd_Msg_Pub.ADD_EXC_MSG('IEX_CREATE_ADJUSTMENTS_PUB','insert_row');
225 Fnd_Msg_Pub.count_and_get(
226 p_count => x_msg_count
227 ,p_data => x_msg_data);
228
229 END iex_create_adjustments_pub;
230
231 PROCEDURE create_adjustments_conc ( errbuf OUT NOCOPY VARCHAR2
232 ,retcode OUT NOCOPY NUMBER )
233 IS
234
235 l_api_version NUMBER := 1;
236 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
237 l_msg_count NUMBER;
238 l_msg_data VARCHAR2(450);
239 l_init_msg_list VARCHAR2(1);
240
241 l_msg_index_out NUMBER :=0;
242 l_error_msg_rec Okl_Accounting_Util.Error_message_Type;
243
244 BEGIN
245
246
247 OKL_CREATE_ADJST_PUB.create_adjustments_pub ( p_api_version => l_api_version
248 ,p_init_msg_list => l_init_msg_list
249 ,x_return_status => l_return_status
250 ,x_msg_count => l_msg_count
251 ,x_msg_data => l_msg_data
252 );
253
254 FND_FILE.PUT_LINE (FND_FILE.LOG, '*****************************************');
255 FND_FILE.PUT_LINE (FND_FILE.LOG, 'OKL Create AR Adjustment Process Program');
256 FND_FILE.PUT_LINE (FND_FILE.LOG, '*****************************************');
257 FND_FILE.PUT_LINE (FND_FILE.LOG, 'Program Run Date:'||sysdate);
258 FND_FILE.PUT_LINE (FND_FILE.LOG, '***********************************************');
259 FND_FILE.PUT_LINE (FND_FILE.LOG, '***********************************************');
260 FND_FILE.PUT_LINE (FND_FILE.LOG, 'Detailed Error Message For Each Processed Line ...');
261 FND_FILE.PUT_LINE (FND_FILE.LOG, '----------------------------------------------------------------------------');
262
263 FND_FILE.PUT_LINE (FND_FILE.OUTPUT, '*****************************************'
264 );
265 FND_FILE.PUT_LINE (FND_FILE.OUTPUT, 'OKL Create AR Adjustment Process Program')
266 ;
267 FND_FILE.PUT_LINE (FND_FILE.OUTPUT, '*****************************************'
268 );
269 FND_FILE.PUT_LINE (FND_FILE.OUTPUT, 'Program Run Date:'||sysdate);
270 FND_FILE.PUT_LINE (FND_FILE.OUTPUT, '******************************************
271 *****');
272 FND_FILE.PUT_LINE (FND_FILE.OUTPUT, '******************************************
273 *****');
274 FND_FILE.PUT_LINE (FND_FILE.OUTPUT, 'Detailed Error Message For Each Processed
275 Line ...');
276 FND_FILE.PUT_LINE (FND_FILE.OUTPUT, '------------------------------------------
277 ----------------------------------');
278
279 BEGIN
280
281 Okl_Accounting_Util.GET_ERROR_MESSAGE(l_error_msg_rec);
282 IF (l_error_msg_rec.COUNT > 0) THEN
283 FOR i IN l_error_msg_rec.FIRST..l_error_msg_rec.LAST
284 LOOP
285 FND_FILE.PUT_LINE(FND_FILE.LOG, l_error_msg_rec(i));
286 FND_FILE.PUT_LINE (FND_FILE.LOG, '----------------------------------------------------------------------------');
287
288 FND_FILE.PUT_LINE(FND_FILE.OUTPUT, l_error_msg_rec(i));
289 FND_FILE.PUT_LINE (FND_FILE.OUTPUT, '------------------------------
290 ----------------------------------------------');
291 END LOOP;
292 END IF;
293 /*
294 FOR i in 1..lx_msg_count LOOP
295 fnd_msg_pub.get (p_msg_index => i,
296 p_encoded => 'F',
297 p_data => lx_msg_data,
298 p_msg_index_out => l_msg_index_out);
299
300 FND_FILE.PUT_LINE (FND_FILE.OUTPUT,to_char(i) || ': ' || lx_msg_data);
301 END LOOP;
302 */
303 EXCEPTION
304 WHEN OTHERS THEN
305 FND_FILE.PUT_LINE (FND_FILE.OUTPUT,'Error '||TO_CHAR(SQLCODE)||': '||SQLERRM);
306
307 FND_FILE.PUT_LINE (FND_FILE.LOG,'Error '||TO_CHAR(SQLCODE)||': '||SQLERRM);
308 END;
309
310
311 EXCEPTION
312 WHEN OTHERS THEN
313 NULL ;
314 END create_adjustments_conc;
315
316 END OKL_CREATE_ADJST_PUB;