[Home] [Help]
PACKAGE BODY: APPS.OKL_TRX_ASSETS_PUB
Source
1 package body OKL_TRX_ASSETS_PUB as
2 /* $Header: OKLPTASB.pls 115.8 2004/04/13 11:24:13 rnaik noship $ */
3
4
5 -- Start of comments
6 --
7 -- Procedure Name : CREATE_TRX_ASSET_HEADER
8 -- Description : creates trx_ass_h for a contract
9 -- Business Rules :
10 -- Parameters :
11 -- Version : 1.0
12 -- End of comments
13 PROCEDURE create_trx_ass_h_Def(p_api_version IN NUMBER,
14 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
15 x_return_status OUT NOCOPY VARCHAR2,
16 x_msg_count OUT NOCOPY NUMBER,
17 x_msg_data OUT NOCOPY VARCHAR2,
18 p_thpv_rec IN thpv_rec_type,
19 x_thpv_rec OUT NOCOPY thpv_rec_type) IS
20
21 l_thpv_rec thpv_rec_type;
22 l_return_status VARCHAR2(3) := FND_API.G_RET_STS_SUCCESS;
23 l_api_name CONSTANT VARCHAR2(30) := 'CREATE_TRX_ASSET_HEADER';
24 l_api_version CONSTANT NUMBER := 1;
25 BEGIN
26 savepoint create_trx_ass_h_pub;
27 -- Standard call to check for call compatibility.
28 IF NOT (FND_API.Compatible_API_Call (l_api_version,
29 p_api_version,
30 l_api_name,
31 G_PKG_NAME)) THEN
32 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33 END IF;
34 -- Initialize message list if p_init_msg_list is set to TRUE.
35 IF (FND_API.to_Boolean( p_init_msg_list )) THEN
36 FND_MSG_PUB.initialize;
37 END IF;
38 l_thpv_rec := p_thpv_rec;
39 g_thpv_rec := l_thpv_rec;
40 -- Customer pre processing section
41 -- Verticle industry pre- processing section
42 -- Business API call section
43 l_thpv_rec.id := p_thpv_rec.id;
44 l_thpv_rec.object_version_number := p_thpv_rec.object_version_number;
45 OKL_TRX_ASSETS_PVT.Create_trx_ass_h_def(p_api_version => p_api_version,
46 p_init_msg_list => p_init_msg_list,
47 x_return_status => l_return_status,
48 x_msg_count => x_msg_count,
49 x_msg_data => x_msg_data,
50 p_tasv_rec => l_thpv_rec,
51 x_tasv_rec => x_thpv_rec);
52 IF (l_return_status = FND_API.G_RET_STS_ERROR ) THEN
53 RAISE FND_API.G_EXC_ERROR;
54 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
55 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
56 END IF;
57 l_thpv_rec := x_thpv_rec;
58 g_thpv_rec := l_thpv_rec;
59 -- Verticle industry post- processing section
60 -- Customer post processing section
61 x_return_status := FND_API.G_RET_STS_SUCCESS;
62 EXCEPTION
63 When FND_API.G_EXC_ERROR then
64 ROLLBACK TO create_trx_ass_h_pub;
65 x_return_status := FND_API.G_RET_STS_ERROR;
66 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
67 p_data => x_msg_data);
68 When FND_API.G_EXC_UNEXPECTED_ERROR then
69 ROLLBACK TO create_trx_ass_h_pub;
70 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
71 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
72 p_data => x_msg_data);
73 When OTHERS then
74 ROLLBACK TO create_trx_ass_h_pub;
75 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
76 FND_MSG_PUB.ADD_EXC_MSG( G_PKG_NAME, 'create_trx_ass_h_Def_pub');
77 FND_MSG_PUB.count_and_get (p_encoded => FND_API.G_FALSE,
78 p_count => x_msg_count,
79 p_data => x_msg_data);
80 END create_trx_ass_h_Def;
81
82 -- Start of comments
83 --
84 -- Procedure Name : CREATE_TRX_ASSET_HEADER
85 -- Description : creates selected product option value for a contract
86 -- Business Rules :
87 -- Parameters :
88 -- Version : 1.0
89 -- End of comments
90
91 PROCEDURE create_trx_ass_h_Def(
92 p_api_version IN NUMBER,
93 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
94 x_return_status OUT NOCOPY VARCHAR2,
95 x_msg_count OUT NOCOPY NUMBER,
96 x_msg_data OUT NOCOPY VARCHAR2,
97 p_thpv_tbl IN thpv_tbl_type,
98 x_thpv_tbl OUT NOCOPY thpv_tbl_type) IS
99 i NUMBER := 0;
100 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
101 BEGIN
102 x_return_status := FND_API.G_RET_STS_SUCCESS;
103 IF p_thpv_tbl.COUNT > 0 THEN
104 i := p_thpv_tbl.FIRST;
105 LOOP
106 create_trx_ass_h_Def(p_api_version => p_api_version,
107 p_init_msg_list => p_init_msg_list,
108 x_return_status => l_return_status,
109 x_msg_count => x_msg_count,
110 x_msg_data => x_msg_data,
111 p_thpv_rec => p_thpv_tbl(i),
112 x_thpv_rec => x_thpv_tbl(i));
113 IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
114 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
115 x_return_status := l_return_status;
116 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
117 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
118 x_return_status := l_return_status;
119 RAISE FND_API.G_EXC_ERROR;
120 ELSE
121 x_return_status := l_return_status;
122 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
123 END IF;
124 END IF;
125 EXIT WHEN (i = p_thpv_tbl.LAST);
126 i := p_thpv_tbl.NEXT(i);
127 END LOOP;
128 END IF;
129 EXCEPTION
130 WHEN FND_API.G_EXC_ERROR THEN
131 ROLLBACK TO create_trx_ass_h_pub;
132 x_return_status := FND_API.G_RET_STS_ERROR;
133 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
134 p_data => x_msg_data);
135 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
136 ROLLBACK TO create_trx_ass_h_pub;
137 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
138 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
139 p_data => x_msg_data);
140 WHEN OTHERS then
141 ROLLBACK TO create_trx_ass_h_pub;
142 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
143 FND_MSG_PUB.ADD_EXC_MSG(G_PKG_NAME, 'create_trx_ass_h_Def_pub');
144 FND_MSG_PUB.count_and_get (p_encoded => FND_API.G_FALSE,
145 p_count => x_msg_count,
146 p_data => x_msg_data);
147 END create_trx_ass_h_Def;
148
149 -- Start of comments
150 --
151 -- Procedure Name : UPDATE_TRX_ASSET_HEADER
152 -- Description : updates trx_ass_h for a contract
153 -- Business Rules :
154 -- Parameters :
155 -- Version : 1.0
156 -- End of comments
157 PROCEDURE update_trx_ass_h_Def(p_api_version IN NUMBER,
158 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
159 x_return_status OUT NOCOPY VARCHAR2,
160 x_msg_count OUT NOCOPY NUMBER,
161 x_msg_data OUT NOCOPY VARCHAR2,
162 p_thpv_rec IN thpv_rec_type,
163 x_thpv_rec OUT NOCOPY thpv_rec_type) IS
164
165 l_thpv_rec thpv_rec_type;
166 l_return_status VARCHAR2(3) := FND_API.G_RET_STS_SUCCESS;
167 l_api_name CONSTANT VARCHAR2(30) := 'UPDATE_TRX_ASSET_HEADER';
168 l_api_version CONSTANT NUMBER := 1;
169 BEGIN
170 savepoint update_trx_ass_h_pub;
171 -- Standard call to check for call compatibility.
172 IF NOT (FND_API.Compatible_API_Call (l_api_version,
173 p_api_version,
174 l_api_name,
175 G_PKG_NAME)) THEN
176 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
177 END IF;
178 -- Initialize message list if p_init_msg_list is set to TRUE.
179 IF (FND_API.to_Boolean( p_init_msg_list )) THEN
180 FND_MSG_PUB.initialize;
181 END IF;
182 l_thpv_rec := p_thpv_rec;
183 g_thpv_rec := l_thpv_rec;
184 -- Customer pre processing section
185 -- Verticle industry pre- processing section
186 -- Business API call section
187 l_thpv_rec.id := p_thpv_rec.id;
188 l_thpv_rec.object_version_number := p_thpv_rec.object_version_number;
189 OKL_TRX_ASSETS_PVT.Update_trx_ass_h_def(p_api_version => p_api_version,
190 p_init_msg_list => p_init_msg_list,
191 x_return_status => l_return_status,
192 x_msg_count => x_msg_count,
193 x_msg_data => x_msg_data,
194 p_tasv_rec => p_thpv_rec,
195 x_tasv_rec => x_thpv_rec);
196 IF (l_return_status = FND_API.G_RET_STS_ERROR ) THEN
197 RAISE FND_API.G_EXC_ERROR;
198 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
199 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
200 END IF;
201 l_thpv_rec := x_thpv_rec;
202 g_thpv_rec := l_thpv_rec;
203 -- Verticle industry post- processing section
204 -- Customer post processing section
205 x_return_status := FND_API.G_RET_STS_SUCCESS;
206 EXCEPTION
207 When FND_API.G_EXC_ERROR then
208 ROLLBACK TO update_trx_ass_h_pub;
209 x_return_status := FND_API.G_RET_STS_ERROR;
210 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
211 p_data => x_msg_data);
212 When FND_API.G_EXC_UNEXPECTED_ERROR then
213 ROLLBACK TO update_trx_ass_h_pub;
214 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
215 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
216 p_data => x_msg_data);
217 When OTHERS then
218 ROLLBACK TO update_trx_ass_h_pub;
219 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
220 FND_MSG_PUB.ADD_EXC_MSG( G_PKG_NAME, 'update_trx_ass_h_Def_pub');
221 FND_MSG_PUB.count_and_get (p_encoded => FND_API.G_FALSE,
222 p_count => x_msg_count,
223 p_data => x_msg_data);
224 END update_trx_ass_h_Def;
225
226 -- Start of comments
227 --
228 -- Procedure Name : UPDATE_TRX_ASSET_HEADER
229 -- Description : updates selected product option value for a contract
230 -- Business Rules :
231 -- Parameters :
232 -- Version : 1.0
233 -- End of comments
234
235 PROCEDURE update_trx_ass_h_Def(
236 p_api_version IN NUMBER,
237 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
238 x_return_status OUT NOCOPY VARCHAR2,
239 x_msg_count OUT NOCOPY NUMBER,
240 x_msg_data OUT NOCOPY VARCHAR2,
241 p_thpv_tbl IN thpv_tbl_type,
242 x_thpv_tbl OUT NOCOPY thpv_tbl_type) IS
243 i NUMBER := 0;
244 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
245 BEGIN
246 x_return_status := FND_API.G_RET_STS_SUCCESS;
247 IF p_thpv_tbl.COUNT > 0 THEN
248 i := p_thpv_tbl.FIRST;
249 LOOP
250 update_trx_ass_h_Def(p_api_version => p_api_version,
251 p_init_msg_list => p_init_msg_list,
252 x_return_status => l_return_status,
253 x_msg_count => x_msg_count,
254 x_msg_data => x_msg_data,
255 p_thpv_rec => p_thpv_tbl(i),
256 x_thpv_rec => x_thpv_tbl(i));
257 IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
258 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
259 x_return_status := l_return_status;
260 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
261 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
262 x_return_status := l_return_status;
263 RAISE FND_API.G_EXC_ERROR;
264 ELSE
265 x_return_status := l_return_status;
266 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
267 END IF;
268 END IF;
269 EXIT WHEN (i = p_thpv_tbl.LAST);
270 i := p_thpv_tbl.NEXT(i);
271 END LOOP;
272 END IF;
273 EXCEPTION
274 WHEN FND_API.G_EXC_ERROR THEN
275 ROLLBACK TO update_trx_ass_h_pub;
276 x_return_status := FND_API.G_RET_STS_ERROR;
277 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
278 p_data => x_msg_data);
279 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
280 ROLLBACK TO update_trx_ass_h_pub;
281 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
282 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
283 p_data => x_msg_data);
284 WHEN OTHERS then
285 ROLLBACK TO update_trx_ass_h_pub;
286 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
287 FND_MSG_PUB.ADD_EXC_MSG(G_PKG_NAME, 'update_trx_ass_h_Def_pub');
288 FND_MSG_PUB.count_and_get (p_encoded => FND_API.G_FALSE,
289 p_count => x_msg_count,
290 p_data => x_msg_data);
291 END update_trx_ass_h_Def;
292
293 -- Start of comments
294 --
295 -- Procedure Name : DELETE_TRX_ASSET_HEADER
296 -- Description : deletes trx_ass_h for a contract
297 -- Business Rules :
298 -- Parameters :
299 -- Version : 1.0
300 -- End of comments
301 PROCEDURE delete_trx_ass_h_Def(p_api_version IN NUMBER,
302 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
303 x_return_status OUT NOCOPY VARCHAR2,
304 x_msg_count OUT NOCOPY NUMBER,
305 x_msg_data OUT NOCOPY VARCHAR2,
306 p_thpv_rec IN thpv_rec_type) IS
307
308 l_thpv_rec thpv_rec_type;
309 l_return_status VARCHAR2(3) := FND_API.G_RET_STS_SUCCESS;
310 l_api_name CONSTANT VARCHAR2(30) := 'DELETE_TRX_ASSET_HEADER';
311 l_api_version CONSTANT NUMBER := 1;
312 BEGIN
313 savepoint delete_trx_ass_h_pub;
314 -- Standard call to check for call compatibility.
315 IF NOT (FND_API.Compatible_API_Call (l_api_version,
316 p_api_version,
317 l_api_name,
318 G_PKG_NAME)) THEN
319 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
320 END IF;
321 -- Initialize message list if p_init_msg_list is set to TRUE.
322 IF (FND_API.to_Boolean( p_init_msg_list )) THEN
323 FND_MSG_PUB.initialize;
324 END IF;
325 l_thpv_rec := p_thpv_rec;
326 g_thpv_rec := l_thpv_rec;
327 -- Customer pre processing section
328 -- Verticle industry pre- processing section
329 -- Business API call section
330 l_thpv_rec.id := p_thpv_rec.id;
331 l_thpv_rec.object_version_number := p_thpv_rec.object_version_number;
332 OKL_TRX_ASSETS_PVT.Delete_trx_ass_h_def(p_api_version => p_api_version,
333 p_init_msg_list => p_init_msg_list,
334 x_return_status => l_return_status,
335 x_msg_count => x_msg_count,
336 x_msg_data => x_msg_data,
337 p_tasv_rec => l_thpv_rec);
338 IF (l_return_status = FND_API.G_RET_STS_ERROR ) THEN
339 RAISE FND_API.G_EXC_ERROR;
340 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
341 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
342 END IF;
343 g_thpv_rec := l_thpv_rec;
344 -- Verticle industry post- processing section
345 -- Customer post processing section
346 x_return_status := FND_API.G_RET_STS_SUCCESS;
347 EXCEPTION
348 When FND_API.G_EXC_ERROR then
349 ROLLBACK TO delete_trx_ass_h_pub;
350 x_return_status := FND_API.G_RET_STS_ERROR;
351 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
352 p_data => x_msg_data);
353 When FND_API.G_EXC_UNEXPECTED_ERROR then
354 ROLLBACK TO delete_trx_ass_h_pub;
355 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
356 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
357 p_data => x_msg_data);
358 When OTHERS then
359 ROLLBACK TO delete_trx_ass_h_pub;
360 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
361 FND_MSG_PUB.ADD_EXC_MSG( G_PKG_NAME, 'delete_trx_ass_h_Def_pub');
362 FND_MSG_PUB.count_and_get (p_encoded => FND_API.G_FALSE,
363 p_count => x_msg_count,
364 p_data => x_msg_data);
365 END delete_trx_ass_h_Def;
366
367 -- Start of comments
368 --
369 -- Procedure Name : DELETE_TRX_ASSET_HEADER
370 -- Description : deletes selected product option value for a contract
371 -- Business Rules :
372 -- Parameters :
373 -- Version : 1.0
374 -- End of comments
375
376 PROCEDURE delete_trx_ass_h_Def(
377 p_api_version IN NUMBER,
378 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
379 x_return_status OUT NOCOPY VARCHAR2,
380 x_msg_count OUT NOCOPY NUMBER,
381 x_msg_data OUT NOCOPY VARCHAR2,
382 p_thpv_tbl IN thpv_tbl_type) IS
383 i NUMBER := 0;
384 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
385 BEGIN
386 x_return_status := FND_API.G_RET_STS_SUCCESS;
387 IF p_thpv_tbl.COUNT > 0 THEN
388 i := p_thpv_tbl.FIRST;
389 LOOP
390 delete_trx_ass_h_Def(p_api_version => p_api_version,
391 p_init_msg_list => p_init_msg_list,
392 x_return_status => l_return_status,
393 x_msg_count => x_msg_count,
394 x_msg_data => x_msg_data,
395 p_thpv_rec => p_thpv_tbl(i));
396 IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
397 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
398 x_return_status := l_return_status;
399 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
400 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
401 x_return_status := l_return_status;
402 RAISE FND_API.G_EXC_ERROR;
403 ELSE
404 x_return_status := l_return_status;
405 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
406 END IF;
407 END IF;
408 EXIT WHEN (i = p_thpv_tbl.LAST);
409 i := p_thpv_tbl.NEXT(i);
410 END LOOP;
411 END IF;
412 EXCEPTION
413 WHEN FND_API.G_EXC_ERROR THEN
414 ROLLBACK TO delete_trx_ass_h_pub;
415 x_return_status := FND_API.G_RET_STS_ERROR;
416 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
417 p_data => x_msg_data);
418 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
419 ROLLBACK TO delete_trx_ass_h_pub;
420 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
421 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
422 p_data => x_msg_data);
423 WHEN OTHERS then
424 ROLLBACK TO delete_trx_ass_h_pub;
425 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
426 FND_MSG_PUB.ADD_EXC_MSG(G_PKG_NAME, 'delete_trx_ass_h_Def_pub');
427 FND_MSG_PUB.count_and_get (p_encoded => FND_API.G_FALSE,
428 p_count => x_msg_count,
429 p_data => x_msg_data);
430 END delete_trx_ass_h_Def;
431
432 -- Start of comments
433 --
434 -- Procedure Name : LOCK_TRX_ASSET_HEADER
435 -- Description : locks trx_ass_h for a contract
436 -- Business Rules :
437 -- Parameters :
438 -- Version : 1.0
439 -- End of comments
440 PROCEDURE lock_trx_ass_h_Def(p_api_version IN NUMBER,
441 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
442 x_return_status OUT NOCOPY VARCHAR2,
443 x_msg_count OUT NOCOPY NUMBER,
444 x_msg_data OUT NOCOPY VARCHAR2,
445 p_thpv_rec IN thpv_rec_type) IS
446
447 l_thpv_rec thpv_rec_type;
448 l_return_status VARCHAR2(3) := FND_API.G_RET_STS_SUCCESS;
449 l_api_name CONSTANT VARCHAR2(30) := 'LOCK_TRX_ASSET_HEADER';
450 l_api_version CONSTANT NUMBER := 1;
451 BEGIN
452 savepoint lock_trx_ass_h_pub;
453 -- Standard call to check for call compatibility.
454 IF NOT (FND_API.Compatible_API_Call (l_api_version,
455 p_api_version,
456 l_api_name,
457 G_PKG_NAME)) THEN
458 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
459 END IF;
460 -- Initialize message list if p_init_msg_list is set to TRUE.
461 IF (FND_API.to_Boolean( p_init_msg_list )) THEN
462 FND_MSG_PUB.initialize;
463 END IF;
464 -- Business API call section
465 l_thpv_rec.id := p_thpv_rec.id;
466 l_thpv_rec.object_version_number := p_thpv_rec.object_version_number;
467 OKL_TRX_ASSETS_PVT.Lock_trx_ass_h_def(p_api_version => p_api_version,
468 p_init_msg_list => p_init_msg_list,
469 x_return_status => l_return_status,
470 x_msg_count => x_msg_count,
471 x_msg_data => x_msg_data,
472 p_tasv_rec => l_thpv_rec);
473 IF (l_return_status = FND_API.G_RET_STS_ERROR ) THEN
474 RAISE FND_API.G_EXC_ERROR;
475 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
476 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
477 END IF;
478 g_thpv_rec := l_thpv_rec;
479 x_return_status := FND_API.G_RET_STS_SUCCESS;
480 EXCEPTION
481 When FND_API.G_EXC_ERROR then
482 ROLLBACK TO lock_trx_ass_h_pub;
483 x_return_status := FND_API.G_RET_STS_ERROR;
484 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
485 p_data => x_msg_data);
486 When FND_API.G_EXC_UNEXPECTED_ERROR then
487 ROLLBACK TO lock_trx_ass_h_pub;
488 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
489 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
490 p_data => x_msg_data);
491 When OTHERS then
492 ROLLBACK TO lock_trx_ass_h_pub;
493 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
494 FND_MSG_PUB.ADD_EXC_MSG( G_PKG_NAME, 'lock_trx_ass_h_Def_pub');
495 FND_MSG_PUB.count_and_get (p_encoded => FND_API.G_FALSE,
496 p_count => x_msg_count,
497 p_data => x_msg_data);
498 END lock_trx_ass_h_Def;
499
500 -- Start of comments
501 --
502 -- Procedure Name : LOCK_TRX_ASSET_HEADER
503 -- Description : locks selected product option value for a contract
504 -- Business Rules :
505 -- Parameters :
506 -- Version : 1.0
507 -- End of comments
508
509 PROCEDURE lock_trx_ass_h_Def(
510 p_api_version IN NUMBER,
511 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
512 x_return_status OUT NOCOPY VARCHAR2,
513 x_msg_count OUT NOCOPY NUMBER,
514 x_msg_data OUT NOCOPY VARCHAR2,
515 p_thpv_tbl IN thpv_tbl_type) IS
516 i NUMBER := 0;
517 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
518 BEGIN
519 x_return_status := FND_API.G_RET_STS_SUCCESS;
520 IF p_thpv_tbl.COUNT > 0 THEN
521 i := p_thpv_tbl.FIRST;
522 LOOP
523 lock_trx_ass_h_Def(p_api_version => p_api_version,
524 p_init_msg_list => p_init_msg_list,
525 x_return_status => l_return_status,
526 x_msg_count => x_msg_count,
527 x_msg_data => x_msg_data,
528 p_thpv_rec => p_thpv_tbl(i));
529 IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
530 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
531 x_return_status := l_return_status;
532 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
533 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
534 x_return_status := l_return_status;
535 RAISE FND_API.G_EXC_ERROR;
536 ELSE
537 x_return_status := l_return_status;
538 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
539 END IF;
540 END IF;
541 EXIT WHEN (i = p_thpv_tbl.LAST);
542 i := p_thpv_tbl.NEXT(i);
543 END LOOP;
544 END IF;
545 EXCEPTION
546 WHEN FND_API.G_EXC_ERROR THEN
547 ROLLBACK TO lock_trx_ass_h_pub;
548 x_return_status := FND_API.G_RET_STS_ERROR;
549 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
550 p_data => x_msg_data);
551 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
552 ROLLBACK TO lock_trx_ass_h_pub;
553 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
554 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
555 p_data => x_msg_data);
556 WHEN OTHERS then
557 ROLLBACK TO lock_trx_ass_h_pub;
558 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
559 FND_MSG_PUB.ADD_EXC_MSG(G_PKG_NAME, 'lock_trx_ass_h_Def_pub');
560 FND_MSG_PUB.count_and_get (p_encoded => FND_API.G_FALSE,
561 p_count => x_msg_count,
562 p_data => x_msg_data);
563 END lock_trx_ass_h_Def;
564
565 -- Start of comments
566 --
567 -- Procedure Name : VALIDATE_TRX_ASSET_HEADER
568 -- Description : validates trx_ass_h for a contract
569 -- Business Rules :
570 -- Parameters :
571 -- Version : 1.0
572 -- End of comments
573 PROCEDURE validate_trx_ass_h_Def(p_api_version IN NUMBER,
574 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
575 x_return_status OUT NOCOPY VARCHAR2,
576 x_msg_count OUT NOCOPY NUMBER,
577 x_msg_data OUT NOCOPY VARCHAR2,
578 p_thpv_rec IN thpv_rec_type) IS
579
580 l_thpv_rec thpv_rec_type;
581 l_return_status VARCHAR2(3) := FND_API.G_RET_STS_SUCCESS;
582 l_api_name CONSTANT VARCHAR2(30) := 'VALIDATE_TRX_ASSET_HEADER';
583 l_api_version CONSTANT NUMBER := 1;
584 BEGIN
585 savepoint validate_trx_ass_h_pub;
586 -- Standard call to check for call compatibility.
587 IF NOT (FND_API.Compatible_API_Call (l_api_version,
588 p_api_version,
589 l_api_name,
590 G_PKG_NAME)) THEN
591 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
592 END IF;
593 -- Initialize message list if p_init_msg_list is set to TRUE.
594 IF (FND_API.to_Boolean( p_init_msg_list )) THEN
595 FND_MSG_PUB.initialize;
596 END IF;
597 l_thpv_rec := p_thpv_rec;
598 g_thpv_rec := l_thpv_rec;
599 -- Customer pre processing section
600 -- Verticle industry pre- processing section
601 -- Business API call section
602 l_thpv_rec.id := p_thpv_rec.id;
603 l_thpv_rec.object_version_number := p_thpv_rec.object_version_number;
604 OKL_TRX_ASSETS_PVT.Validate_trx_ass_h_def(p_api_version => p_api_version,
605 p_init_msg_list => p_init_msg_list,
606 x_return_status => l_return_status,
607 x_msg_count => x_msg_count,
608 x_msg_data => x_msg_data,
609 p_tasv_rec => l_thpv_rec);
610 IF (l_return_status = FND_API.G_RET_STS_ERROR ) THEN
611 RAISE FND_API.G_EXC_ERROR;
612 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
613 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
614 END IF;
615 g_thpv_rec := l_thpv_rec;
616 -- Verticle industry post- processing section
617 -- Customer post processing section
618 x_return_status := FND_API.G_RET_STS_SUCCESS;
619 EXCEPTION
620 When FND_API.G_EXC_ERROR then
621 ROLLBACK TO validate_trx_ass_h_pub;
622 x_return_status := FND_API.G_RET_STS_ERROR;
623 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
624 p_data => x_msg_data);
625 When FND_API.G_EXC_UNEXPECTED_ERROR then
626 ROLLBACK TO validate_trx_ass_h_pub;
627 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
628 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
629 p_data => x_msg_data);
630 When OTHERS then
631 ROLLBACK TO validate_trx_ass_h_pub;
632 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
633 FND_MSG_PUB.ADD_EXC_MSG( G_PKG_NAME, 'validate_trx_ass_h_Def_pub');
634 FND_MSG_PUB.count_and_get (p_encoded => FND_API.G_FALSE,
635 p_count => x_msg_count,
636 p_data => x_msg_data);
637 END validate_trx_ass_h_Def;
638
639 -- Start of comments
640 --
641 -- Procedure Name : VALIDATE_TRX_ASSET_HEADER
642 -- Description : validates selected product option value for a contract
643 -- Business Rules :
644 -- Parameters :
645 -- Version : 1.0
646 -- End of comments
647
648 PROCEDURE validate_trx_ass_h_Def(
649 p_api_version IN NUMBER,
650 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
651 x_return_status OUT NOCOPY VARCHAR2,
652 x_msg_count OUT NOCOPY NUMBER,
653 x_msg_data OUT NOCOPY VARCHAR2,
654 p_thpv_tbl IN thpv_tbl_type) IS
655 i NUMBER := 0;
656 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
657 BEGIN
658 x_return_status := FND_API.G_RET_STS_SUCCESS;
659 IF p_thpv_tbl.COUNT > 0 THEN
660 i := p_thpv_tbl.FIRST;
661 LOOP
662 validate_trx_ass_h_Def(p_api_version => p_api_version,
663 p_init_msg_list => p_init_msg_list,
664 x_return_status => l_return_status,
665 x_msg_count => x_msg_count,
666 x_msg_data => x_msg_data,
667 p_thpv_rec => p_thpv_tbl(i));
668 IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
669 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
670 x_return_status := l_return_status;
671 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
672 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
673 x_return_status := l_return_status;
674 RAISE FND_API.G_EXC_ERROR;
675 ELSE
676 x_return_status := l_return_status;
677 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
678 END IF;
679 END IF;
680 EXIT WHEN (i = p_thpv_tbl.LAST);
681 i := p_thpv_tbl.NEXT(i);
682 END LOOP;
683 END IF;
684 EXCEPTION
685 WHEN FND_API.G_EXC_ERROR THEN
686 ROLLBACK TO validate_trx_ass_h_pub;
687 x_return_status := FND_API.G_RET_STS_ERROR;
688 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
689 p_data => x_msg_data);
690 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
691 ROLLBACK TO validate_trx_ass_h_pub;
692 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
693 FND_MSG_PUB.count_and_get (p_count => x_msg_count,
694 p_data => x_msg_data);
695 WHEN OTHERS then
696 ROLLBACK TO validate_trx_ass_h_pub;
697 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
698 FND_MSG_PUB.ADD_EXC_MSG(G_PKG_NAME, 'validate_trx_ass_h_Def_pub');
699 FND_MSG_PUB.count_and_get (p_encoded => FND_API.G_FALSE,
700 p_count => x_msg_count,
701 p_data => x_msg_data);
702 END validate_trx_ass_h_Def;
703
704 END OKL_TRX_ASSETS_PUB;
705