[Home] [Help]
PACKAGE BODY: APPS.IEX_DISPUTE_PUB
Source
1 PACKAGE BODY IEX_DISPUTE_PUB AS
2 /* $Header: iexpdisb.pls 120.7 2008/05/28 14:14:08 gnramasa ship $ */
3
4 G_PKG_NAME CONSTANT VARCHAR2(30):= 'IEX_DISPUTE_PUB';
5 G_FILE_NAME CONSTANT VARCHAR2(12) := 'iexpdisb.pls';
6
7 --PG_DEBUG NUMBER(2) := TO_NUMBER(NVL(FND_PROFILE.value('IEX_DEBUG_LEVEL'), '20'));
8 PG_DEBUG NUMBER; -- := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
9 --Added parameters p_skip_workflow_flag and p_dispute_date
10 --for bug#6347547 by schekuri on 08-Nov-2007
11 -- Bug #6777367 bibeura 28-Jan-2008 Added parameter p_batch_source_name
12 PROCEDURE Create_Dispute(p_api_version IN NUMBER,
13 p_init_msg_list IN VARCHAR2,
14 p_commit IN VARCHAR2,
15 p_disp_header_rec IN IEX_DISPUTE_PUB.DISP_HEADER_REC,
16 p_disp_line_tbl IN IEX_DISPUTE_PUB.DISPUTE_LINE_TBL,
17 x_request_id OUT NOCOPY NUMBER,
18 x_return_status OUT NOCOPY VARCHAR2,
19 x_msg_count OUT NOCOPY NUMBER,
20 x_msg_data OUT NOCOPY VARCHAR2,
21 p_skip_workflow_flag IN VARCHAR2 DEFAULT 'N',
22 p_batch_source_name IN VARCHAR2 DEFAULT NULL,
23 p_dispute_date IN DATE DEFAULT NULL) IS
24
25 l_api_name VARCHAR2(50); -- := 'create_dispute';
26 l_api_version_number NUMBER; -- := 1;
27 l_request_id NUMBER;
28 l_status VARCHAR(20);
29 l_init_msg_list varchar2(10); -- := p_init_msg_list;
30 l_commit varchar2(10); -- := p_commit;
31
32 l_return_status VARCHAR2(10); -- := x_return_status;
33 l_msg_count NUMBER; -- := x_msg_count;
34 l_msg_data VARCHAR2(100); -- := x_msg_data;
35
36 l_disp_header_rec IEX_DISPUTE_PUB.DISP_HEADER_REC; -- := p_disp_header_rec;
37 l_disp_line_tbl IEX_DISPUTE_PUB.DISPUTE_LINE_TBL; -- := p_disp_line_tbl;
38
39 BEGIN
40 l_api_name := 'create_dispute';
41 l_api_version_number := 1;
42 l_init_msg_list := p_init_msg_list;
43 l_commit := p_commit;
44 l_return_status := x_return_status;
45 l_msg_count := x_msg_count;
46 l_msg_data := x_msg_data;
47 l_disp_header_rec := p_disp_header_rec;
48 l_disp_line_tbl := p_disp_line_tbl;
49
50 -- Standard Start of API savepoint
51 SAVEPOINT create_dispute_pub;
52
53 -- Initialize API return status to SUCCESS
54 x_return_status := FND_API.G_RET_STS_SUCCESS;
55
56 -- Standard call to check for call compatibility.
57 IF NOT FND_API.Compatible_API_Call (l_api_version_number,
58 p_api_version,
59 l_api_name,
60 G_PKG_NAME)
61 THEN
62 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
63 END IF;
64
65 -- Initialize message list if p_init_msg_list is set to TRUE.
66 IF FND_API.to_Boolean( p_init_msg_list )
67 THEN
68 FND_MSG_PUB.initialize;
69 END IF;
70
71 -- Debug Message
72 -- IF PG_DEBUG < 10 THEN
73 IF (FND_LOG.LEVEL_EVENT >= PG_DEBUG) THEN
74 IEX_DEBUG_PUB.logMessage('Create_Dispute: ' || 'PVT: ' || l_api_name || ' start');
75 END IF;
76
77 --
78 -- API body
79 --
80 IEX_DISPUTE_PVT.Create_Dispute(p_api_version => l_api_version_number,
81 p_init_msg_list => l_init_msg_list,
82 p_commit => l_commit,
83 p_disp_header_rec => l_disp_header_rec,
84 p_disp_line_tbl => l_disp_line_tbl,
85 p_skip_workflow_flag => p_skip_workflow_flag,
86 p_batch_source_name => p_batch_source_name,
87 p_dispute_date => p_dispute_date,
88 x_request_id => l_request_id,
89 x_return_status => l_return_status ,
90 x_msg_count => l_msg_count,
91 x_msg_data => l_msg_data);
92 x_request_id := l_request_id;
93 x_return_status := l_return_status ;
94 x_msg_count := l_msg_count ;
95 x_msg_data := l_msg_data ;
96
97 -- TEST TO CATCH ERROR HERE
98 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
99 FND_MESSAGE.SET_NAME('IEX', 'IEX_DISPUTE_FAILED');
100 FND_MSG_PUB.Add;
101 x_return_status := FND_API.G_RET_STS_ERROR;
102 RAISE FND_API.G_EXC_ERROR;
103
104 END IF ;
105
106 -- End of API body
107
108 IF FND_API.to_Boolean(p_commit) THEN
109 COMMIT WORK;
110 END IF;
111
112 -- Debug Message
113 -- IF PG_DEBUG < 10 THEN
114 IF (FND_LOG.LEVEL_EVENT >= PG_DEBUG) THEN
115 IEX_DEBUG_PUB.logMessage('Create_Dispute: ' || 'PVT: ' || l_api_name || ' end');
116 END IF;
117
118 -- Standard call to get message count and if count is 1, get message info.
119 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count,
120 p_data => x_msg_data);
121
122
123 EXCEPTION
124 WHEN FND_API.G_EXC_ERROR THEN
125 ROLLBACK TO create_dispute_pub;
126 x_return_status := FND_API.G_RET_STS_ERROR;
127 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
128 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
129 ROLLBACK TO create_dispute_pub;
130 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
131 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
132 WHEN OTHERS THEN
133 ROLLBACK TO create_dispute_pub;
134 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
135 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
136 THEN
137 FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
138 END IF;
139 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
140
141 END create_dispute;
142
143
144 PROCEDURE is_delinquency_dispute(p_api_version IN NUMBER,
145 p_init_msg_list IN VARCHAR2,
146 p_delinquency_id IN NUMBER,
147 x_return_status OUT NOCOPY VARCHAR2,
148 x_msg_count OUT NOCOPY NUMBER,
149 x_msg_data OUT NOCOPY VARCHAR2) IS
150
151 l_api_name VARCHAR2(50); -- := 'is_delinquency_dispute';
152 l_api_version_number NUMBER := 1.0;
153 l_delinquency_id NUMBER; -- := p_delinquency_id;
154 l_count NUMBER := 0 ;
155 l_status VARCHAR(20) ;
156 x varchar2(2000);
157 l_return_status VARCHAR2(10);
158 l_msg_count NUMBER;
159 l_msg_data VARCHAR2(100);
160 l_init_msg_list varchar2(10); -- := p_init_msg_list;
161
162 BEGIN
163
164 l_init_msg_list := p_init_msg_list;
165 l_delinquency_id := p_delinquency_id;
166 l_api_name := 'is_delinquency_dispute';
167 -- Standard Start of API savepoint
168 SAVEPOINT is_delinquency_pvt;
169
170 -- Initialize API return status to SUCCESS
171 x_return_status := FND_API.G_RET_STS_SUCCESS;
172
173 -- Standard call to check for call compatibility.
174 IF NOT FND_API.Compatible_API_Call (l_api_version_number,
175 p_api_version,
176 l_api_name,
177 G_PKG_NAME)
178 THEN
179 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
180 END IF;
181
182 -- Initialize message list if p_init_msg_list is set to TRUE.
183 IF FND_API.to_Boolean( p_init_msg_list )
184 THEN
185 FND_MSG_PUB.initialize;
186 END IF;
187
188 -- Debug Message
189 -- IF PG_DEBUG < 10 THEN
190 IF (FND_LOG.LEVEL_EVENT >= PG_DEBUG) THEN
191 IEX_DEBUG_PUB.logMessage('is_delinquency_dispute: ' || 'PVT: ' || l_api_name || ' start');
192 END IF;
193
194 --
195 -- API body
196 --
197 IEX_DISPUTE_PVT.is_delinquency_dispute(p_api_version => l_api_version_number,
198 p_init_msg_list => l_init_msg_list,
199 p_delinquency_id => l_delinquency_id,
200 x_return_status => l_return_status,
201 x_msg_count => l_msg_count,
202 x_msg_data => l_msg_data );
203
204 x_return_status := l_return_status ;
205 x_msg_count := l_msg_count ;
206 x_msg_data := l_msg_data ;
207
208 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
209 FND_MESSAGE.SET_NAME('IEX', 'IEX_DISPUTE_DELINQUENT_FAILED');
210 FND_MSG_PUB.Add;
211 x_return_status := FND_API.G_RET_STS_ERROR;
212 RAISE FND_API.G_EXC_ERROR;
213
214 END IF ;
215
216 -- End of API body
217
218 -- Debug Message
219 -- IF PG_DEBUG < 10 THEN
220 IF (FND_LOG.LEVEL_EVENT >= PG_DEBUG) THEN
221 IEX_DEBUG_PUB.logMessage('is_delinquency_dispute: ' || 'PVT: ' || l_api_name || ' end');
222 END IF;
223
224 -- Standard call to get message count and if count is 1, get message info.
225 FND_MSG_PUB.Count_And_Get
226 ( p_count => x_msg_count,
227 p_data => x_msg_data
228 );
229
230 EXCEPTION
231 WHEN FND_API.G_EXC_ERROR THEN
232 ROLLBACK TO is_delinquency_pvt;
233 x_return_status := FND_API.G_RET_STS_ERROR;
234 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
235 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
236 ROLLBACK TO is_delinquency_pvt;
237 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
238 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
239 WHEN OTHERS THEN
240 ROLLBACK TO is_delinquency_pvt;
241 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
242 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
243 THEN
244 FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
245 END IF;
246 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
247
248 END is_delinquency_dispute;
249
250 --Start bug 6856035 gnramasa 28th May 08
251 PROCEDURE CANCEL_DISPUTE (p_api_version IN NUMBER,
252 p_commit IN VARCHAR2,
253 p_dispute_id IN NUMBER,
254 p_cancel_comments IN VARCHAR2,
255 x_return_status OUT NOCOPY VARCHAR2,
256 x_msg_count OUT NOCOPY NUMBER,
257 x_msg_data OUT NOCOPY VARCHAR2) IS
258
259 l_api_name VARCHAR2(50); -- := 'cancel_dispute';
260 l_api_version_number NUMBER; -- := 1;
261 l_dispute_id NUMBER;
262 l_status VARCHAR(20);
263 l_commit varchar2(10); -- := p_commit;
264 errmsg VARCHAR2(32767);
265
266 l_return_status VARCHAR2(10); -- := x_return_status;
267 l_msg_count NUMBER; -- := x_msg_count;
268 l_msg_data VARCHAR2(100); -- := x_msg_data;
269
270 BEGIN
271 l_api_name := 'Cancel_dispute';
272 l_api_version_number := 1;
273 l_commit := p_commit;
274 l_return_status := x_return_status;
275 l_msg_count := x_msg_count;
276 l_msg_data := x_msg_data;
277 l_dispute_id := p_dispute_id;
278
279 -- Standard Start of API savepoint
280 SAVEPOINT cancel_dispute_pub;
281
282 -- Initialize API return status to SUCCESS
283 x_return_status := FND_API.G_RET_STS_SUCCESS;
284
285 -- Standard call to check for call compatibility.
286 IF NOT FND_API.Compatible_API_Call (l_api_version_number,
287 p_api_version,
288 l_api_name,
289 G_PKG_NAME)
290 THEN
291 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
292 END IF;
293
294 IF (FND_LOG.LEVEL_EVENT >= PG_DEBUG) THEN
295 IEX_DEBUG_PUB.logMessage('Cancel_Dispute: ' || 'PVT: ' || l_api_name || ' start');
296 END IF;
297
298 --
299 -- API body
300 --
301 IEX_DISPUTE_PVT.Cancel_Dispute( p_api_version => l_api_version_number,
302 p_commit => l_commit,
303 p_dispute_id => l_dispute_id,
304 p_cancel_comments => p_cancel_comments,
305 x_return_status => l_return_status ,
306 x_msg_count => l_msg_count,
307 x_msg_data => l_msg_data);
308
309 x_return_status := l_return_status ;
310 x_msg_count := l_msg_count ;
311 x_msg_data := l_msg_data ;
312
313 -- TEST TO CATCH ERROR HERE
314 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
315 IF (FND_LOG.LEVEL_EVENT >= PG_DEBUG) THEN
316 IEX_DEBUG_PUB.logMessage('CANCEL_DISPUTE: - exception');
317 errmsg := SQLERRM;
318 IEX_DEBUG_PUB.logMessage('CANCEL_DISPUTE: - errmsg='||errmsg);
319 END IF;
320 x_return_status := FND_API.G_RET_STS_ERROR;
321 RAISE FND_API.G_EXC_ERROR;
322
323 END IF ;
324
325 -- End of API body
326
327 IF FND_API.to_Boolean(p_commit) THEN
328 COMMIT WORK;
329 END IF;
330
331 -- Debug Message
332 -- IF PG_DEBUG < 10 THEN
333 IF (FND_LOG.LEVEL_EVENT >= PG_DEBUG) THEN
334 IEX_DEBUG_PUB.logMessage('Cancel_Dispute: ' || 'PVT: ' || l_api_name || ' end');
335 END IF;
336
337 -- Standard call to get message count and if count is 1, get message info.
338 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count,
339 p_data => x_msg_data);
340
341
342 EXCEPTION
343 WHEN FND_API.G_EXC_ERROR THEN
344 ROLLBACK TO cancel_dispute_pub;
345 x_return_status := FND_API.G_RET_STS_ERROR;
346 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
347 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
348 ROLLBACK TO cancel_dispute_pub;
349 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
350 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
351 WHEN OTHERS THEN
352 ROLLBACK TO cancel_dispute_pub;
353 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
354 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
355 THEN
356 FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
357 END IF;
358 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count, p_data => x_msg_data);
359
360 END cancel_dispute;
361 --End bug 6856035 gnramasa 28th May 08
362
363 FUNCTION init_disp_rec RETURN DISP_HEADER_REC
364 AS
365 l_dispute_header_rec IEX_DISPUTE_PUB.DISP_HEADER_REC;
366
367 BEGIN
368 RETURN l_dispute_header_rec;
369
370 END init_disp_rec;
371
372 FUNCTION init_disp_line_tbl RETURN DISPUTE_LINE_TBL
373 AS
374 l_dispute_line_tbl IEX_DISPUTE_PUB.DISPUTE_LINE_TBL;
375
376 BEGIN
377 RETURN l_dispute_line_tbl;
378
379 END init_disp_line_tbl;
380 begin
381 PG_DEBUG := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
382
383 END IEX_DISPUTE_PUB ;