[Home] [Help]
PACKAGE BODY: APPS.OKE_TERMS_PUB
Source
1 PACKAGE BODY OKE_TERMS_PUB AS
2 /* $Header: OKEPTRMB.pls 115.7 2002/11/20 20:46:43 who ship $ */
3 g_api_type CONSTANT VARCHAR2(4) := '_PUB';
4
5 PROCEDURE create_term(
6 p_api_version IN NUMBER,
7 p_init_msg_list IN VARCHAR2 DEFAULT OKE_API.G_FALSE,
8 x_return_status OUT NOCOPY VARCHAR2,
9 x_msg_count OUT NOCOPY NUMBER,
10 x_msg_data OUT NOCOPY VARCHAR2,
11 p_term_rec IN oke_term_pvt.term_rec_type,
12 x_term_rec OUT NOCOPY oke_term_pvt.term_rec_type) IS
13
14
15 l_term_rec oke_term_pvt.term_rec_type;
16
17 l_api_name CONSTANT VARCHAR2(30) := 'CREATE_TERM';
18 l_api_version CONSTANT NUMBER := 1.0;
19 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
20
21 BEGIN
22
23 -- call START_ACTIVITY to create savepoint, check compatibility
24 -- and initialize message list
25 l_return_status := OKE_API.START_ACTIVITY(
26 p_api_name => l_api_name,
27 p_pkg_name => g_pkg_name,
28 p_init_msg_list => p_init_msg_list,
29 l_api_version => l_api_version,
30 p_api_version => p_api_version,
31 p_api_type => g_api_type,
32 x_return_status => x_return_status);
33
34 -- check if activity started successfully
35 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
36 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
37 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
38 raise OKE_API.G_EXCEPTION_ERROR;
39 End If;
40
41 l_term_rec := p_term_rec;
42
43 -- call procedure in complex API
44
45 OKE_TERM_PVT.Insert_Row(
46 p_api_version => p_api_version,
47 p_init_msg_list => p_init_msg_list,
48 x_return_status => x_return_status,
49 x_msg_count => x_msg_count,
50 x_msg_data => x_msg_data,
51 p_term_rec => l_term_rec,
52 x_term_rec => x_term_rec);
53
54
55 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
56 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
57 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
58 raise OKE_API.G_EXCEPTION_ERROR;
59 End If;
60
61
62 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
63 x_msg_data => x_msg_data);
64 EXCEPTION
65 when OKE_API.G_EXCEPTION_ERROR then
66 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
67 p_api_name => l_api_name,
68 p_pkg_name => g_pkg_name,
69 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
70 x_msg_count => x_msg_count,
71 x_msg_data => x_msg_data,
72 p_api_type => g_api_type);
73
74 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
75 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
76 p_api_name => l_api_name,
77 p_pkg_name => g_pkg_name,
78 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
79 x_msg_count => x_msg_count,
80 x_msg_data => x_msg_data,
81 p_api_type => g_api_type);
82
83 when OTHERS then
84 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
85 p_api_name => l_api_name,
86 p_pkg_name => g_pkg_name,
87 p_exc_name => 'OTHERS',
88 x_msg_count => x_msg_count,
89 x_msg_data => x_msg_data,
90 p_api_type => g_api_type);
91
92 END create_term;
93
94
95
96 PROCEDURE create_term(
97 p_api_version IN NUMBER,
98 p_init_msg_list IN VARCHAR2 DEFAULT OKE_API.G_FALSE,
99 x_return_status OUT NOCOPY VARCHAR2,
100 x_msg_count OUT NOCOPY NUMBER,
101 x_msg_data OUT NOCOPY VARCHAR2,
102 p_term_tbl IN oke_term_pvt.term_tbl_type,
103 x_term_tbl OUT NOCOPY oke_term_pvt.term_tbl_type) IS
104
105 l_api_name CONSTANT VARCHAR2(30) := 'CREATE_TERM';
106 l_api_version CONSTANT NUMBER := 1.0;
107 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
108 l_overall_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
109 i NUMBER;
110 l_term_tbl oke_term_pvt.term_tbl_type;
111 BEGIN
112
113 -- call START_ACTIVITY to create savepoint, check compatibility
114 -- and initialize message list
115 l_return_status := OKE_API.START_ACTIVITY(
116 p_api_name => l_api_name,
117 p_pkg_name => g_pkg_name,
118 p_init_msg_list => p_init_msg_list,
119 l_api_version => l_api_version,
120 p_api_version => p_api_version,
121 p_api_type => g_api_type,
122 x_return_status => x_return_status);
123
124 -- check if activity started successfully
125 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
126 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
127 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
128 raise OKE_API.G_EXCEPTION_ERROR;
129 End If;
130
131 OKE_TERM_PVT.Insert_Row(
132 p_api_version => p_api_version,
133 p_init_msg_list => p_init_msg_list,
134 x_return_status => x_return_status,
135 x_msg_count => x_msg_count,
136 x_msg_data => x_msg_data,
137 p_term_tbl => p_term_tbl,
138 x_term_tbl => x_term_tbl);
139
140
141 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
142 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
143 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
144 raise OKE_API.G_EXCEPTION_ERROR;
145 End If;
146
147 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
148 x_msg_data => x_msg_data);
149 EXCEPTION
150 when OKE_API.G_EXCEPTION_ERROR then
151 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
152 p_api_name => l_api_name,
153 p_pkg_name => g_pkg_name,
154 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
155 x_msg_count => x_msg_count,
156 x_msg_data => x_msg_data,
157 p_api_type => g_api_type);
158
159 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
160 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
161 p_api_name => l_api_name,
162 p_pkg_name => g_pkg_name,
163 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
164 x_msg_count => x_msg_count,
165 x_msg_data => x_msg_data,
166 p_api_type => g_api_type);
167
168 when OTHERS then
169 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
170 p_api_name => l_api_name,
171 p_pkg_name => g_pkg_name,
172 p_exc_name => 'OTHERS',
173 x_msg_count => x_msg_count,
174 x_msg_data => x_msg_data,
175 p_api_type => g_api_type);
176
177 END create_term;
178
179 /* not supported
180
181
182 PROCEDURE update_term(
183 p_api_version IN NUMBER,
184 p_init_msg_list IN VARCHAR2 DEFAULT OKE_API.G_FALSE,
185 x_return_status OUT NOCOPY VARCHAR2,
186 x_msg_count OUT NOCOPY NUMBER,
187 x_msg_data OUT NOCOPY VARCHAR2,
188 p_term_rec IN oke_term_pvt.term_rec_type,
189 x_term_rec OUT NOCOPY oke_term_pvt.term_rec_type) IS
190
191 l_api_name CONSTANT VARCHAR2(30) := 'UPDATE_TERM';
192 l_api_version CONSTANT NUMBER := 1.0;
193 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
194 BEGIN
195 -- call START_ACTIVITY to create savepoint, check compatibility
196 -- and initialize message list
197
198
199 l_return_status := OKE_API.START_ACTIVITY(
200 p_api_name => l_api_name,
201 p_pkg_name => g_pkg_name,
202 p_init_msg_list => p_init_msg_list,
203 l_api_version => l_api_version,
204 p_api_version => p_api_version,
205 p_api_type => g_api_type,
206 x_return_status => x_return_status);
207
208 -- check if activity started successfully
209 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
210 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
211 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
212 raise OKE_API.G_EXCEPTION_ERROR;
213 End If;
214
215 -- call complex api
216
217 OKE_TERM_PVT.Update_Row(
218 p_api_version => p_api_version,
219 p_init_msg_list => p_init_msg_list,
220 x_return_status => x_return_status,
221 x_msg_count => x_msg_count,
222 x_msg_data => x_msg_data,
223 p_term_rec => p_term_rec,
224 x_term_rec => x_term_rec);
225
226
227 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
228 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
229 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
230 raise OKE_API.G_EXCEPTION_ERROR;
231 End If;
232
233 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
234 x_msg_data => x_msg_data);
235
236 EXCEPTION
237 when OKE_API.G_EXCEPTION_ERROR then
238 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
239 p_api_name => l_api_name,
240 p_pkg_name => g_pkg_name,
241 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
242 x_msg_count => x_msg_count,
243 x_msg_data => x_msg_data,
244 p_api_type => g_api_type);
245
246 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
247 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
248 p_api_name => l_api_name,
249 p_pkg_name => g_pkg_name,
250 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
251 x_msg_count => x_msg_count,
252 x_msg_data => x_msg_data,
253 p_api_type => g_api_type);
254
255 when OTHERS then
256 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
257 p_api_name => l_api_name,
258 p_pkg_name => g_pkg_name,
259 p_exc_name => 'OTHERS',
260 x_msg_count => x_msg_count,
261 x_msg_data => x_msg_data,
262 p_api_type => g_api_type);
263
264 END update_term;
265
266
267 PROCEDURE update_term(
268 p_api_version IN NUMBER,
269 p_init_msg_list IN VARCHAR2 DEFAULT OKE_API.G_FALSE,
270 x_return_status OUT NOCOPY VARCHAR2,
271 x_msg_count OUT NOCOPY NUMBER,
272 x_msg_data OUT NOCOPY VARCHAR2,
273 p_term_tbl IN oke_term_pvt.term_tbl_type,
274 x_term_tbl OUT NOCOPY oke_term_pvt.term_tbl_type) IS
275
276 l_api_name CONSTANT VARCHAR2(30) := 'UPDATE_TERM';
277 l_api_version CONSTANT NUMBER := 1.0;
278 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
279 l_overall_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
280 i NUMBER;
281 BEGIN
282 -- call START_ACTIVITY to create savepoint, check compatibility
283 -- and initialize message list
284
285 l_return_status := OKE_API.START_ACTIVITY(
286 p_api_name => l_api_name,
287 p_pkg_name => g_pkg_name,
288 p_init_msg_list => p_init_msg_list,
289 l_api_version => l_api_version,
290 p_api_version => p_api_version,
291 p_api_type => g_api_type,
292 x_return_status => x_return_status);
293
294 -- check if activity started successfully
295 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
296 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
297 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
298 raise OKE_API.G_EXCEPTION_ERROR;
299
300 End If;
301
302 OKE_TERM_PVT.Update_Row(
303 p_api_version => p_api_version,
304 p_init_msg_list => p_init_msg_list,
305 x_return_status => x_return_status,
306 x_msg_count => x_msg_count,
307 x_msg_data => x_msg_data,
308 p_term_tbl => p_term_tbl,
309 x_term_tbl => x_term_tbl);
310
311
312
313 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
314 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
315 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
316 raise OKE_API.G_EXCEPTION_ERROR;
317 End If;
318
319 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
320 x_msg_data => x_msg_data);
321
322 EXCEPTION
323 when OKE_API.G_EXCEPTION_ERROR then
324 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
325 p_api_name => l_api_name,
326 p_pkg_name => g_pkg_name,
327 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
328 x_msg_count => x_msg_count,
329 x_msg_data => x_msg_data,
330 p_api_type => g_api_type);
331
332 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
333 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
334 p_api_name => l_api_name,
335 p_pkg_name => g_pkg_name,
336 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
337 x_msg_count => x_msg_count,
338 x_msg_data => x_msg_data,
339 p_api_type => g_api_type);
340
341 when OTHERS then
342 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
343 p_api_name => l_api_name,
344 p_pkg_name => g_pkg_name,
345 p_exc_name => 'OTHERS',
346 x_msg_count => x_msg_count,
347 x_msg_data => x_msg_data,
348 p_api_type => g_api_type);
349
350 END update_term;
351
352
353
354 PROCEDURE validate_term(
355 p_api_version IN NUMBER,
356 p_init_msg_list IN VARCHAR2 DEFAULT OKE_API.G_FALSE,
357 x_return_status OUT NOCOPY VARCHAR2,
358 x_msg_count OUT NOCOPY NUMBER,
359 x_msg_data OUT NOCOPY VARCHAR2,
360 p_term_rec IN oke_term_pvt.term_rec_type) IS
361
362 l_term_rec oke_term_pvt.term_rec_type;
363 l_api_name CONSTANT VARCHAR2(30) := 'VALIDATE_TERM';
364 l_api_version CONSTANT NUMBER := 1.0;
365 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
366
367 BEGIN
368 -- call START_ACTIVITY to create savepoint, check compatibility
369 -- and initialize message list
370 l_return_status := OKE_API.START_ACTIVITY(
371 p_api_name => l_api_name,
372 p_pkg_name => g_pkg_name,
373 p_init_msg_list => p_init_msg_list,
374 l_api_version => l_api_version,
375 p_api_version => p_api_version,
376 p_api_type => g_api_type,
377 x_return_status => x_return_status);
378
379 -- check if activity started successfully
380 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
381 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
382 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
383 raise OKE_API.G_EXCEPTION_ERROR;
384 End If;
385
386 -- call BEFORE user hook
387 l_term_rec := p_term_rec;
388
389 -- call complex API
390
391 OKE_TERM_PVT.Validate_Row(
392 p_api_version => p_api_version,
393 p_init_msg_list => p_init_msg_list,
394 x_return_status => x_return_status,
395 x_msg_count => x_msg_count,
396 x_msg_data => x_msg_data,
397 p_term_rec => p_term_rec);
398
399
400 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
401 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
402 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
403 raise OKE_API.G_EXCEPTION_ERROR;
404 End If;
405
406 -- end activity
407 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
408 x_msg_data => x_msg_data);
409 EXCEPTION
410 when OKE_API.G_EXCEPTION_ERROR then
411 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
412 p_api_name => l_api_name,
413 p_pkg_name => g_pkg_name,
414 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
415 x_msg_count => x_msg_count,
416 x_msg_data => x_msg_data,
417 p_api_type => g_api_type);
418
419 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
420 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
421 p_api_name => l_api_name,
422 p_pkg_name => g_pkg_name,
423 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
424 x_msg_count => x_msg_count,
425 x_msg_data => x_msg_data,
426 p_api_type => g_api_type);
427
428 when OTHERS then
429 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
430 p_api_name => l_api_name,
431 p_pkg_name => g_pkg_name,
432 p_exc_name => 'OTHERS',
433 x_msg_count => x_msg_count,
434 x_msg_data => x_msg_data,
435 p_api_type => g_api_type);
436
437 END validate_term;
438
439 PROCEDURE validate_term(
440 p_api_version IN NUMBER,
441 p_init_msg_list IN VARCHAR2 DEFAULT OKE_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_term_tbl IN oke_term_pvt.term_tbl_type) IS
446
447 l_api_name CONSTANT VARCHAR2(30) := 'VALIDATE_TERM';
448
449 l_api_version CONSTANT NUMBER := 1.0;
450 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
451 l_overall_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
452 i NUMBER;
453 l_term_tbl oke_term_pvt.term_tbl_type := p_term_tbl;
454 BEGIN
455 -- call START_ACTIVITY to create savepoint, check compatibility
456 -- and initialize message list
457 l_return_status := OKE_API.START_ACTIVITY(
458 p_api_name => l_api_name,
459 p_pkg_name => g_pkg_name,
460 p_init_msg_list => p_init_msg_list,
461 l_api_version => l_api_version,
462 p_api_version => p_api_version,
463 p_api_type => g_api_type,
464 x_return_status => x_return_status);
465
466 -- check if activity started successfully
467 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
468 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
469 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
470 raise OKE_API.G_EXCEPTION_ERROR;
471 End If;
472
473
474 OKE_TERM_PVT.Validate_Row(
475 p_api_version => p_api_version,
476 p_init_msg_list => p_init_msg_list,
477 x_return_status => x_return_status,
478 x_msg_count => x_msg_count,
479 x_msg_data => x_msg_data,
480 p_term_tbl => p_term_tbl);
481
482
483 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
484 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
485 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
486 raise OKE_API.G_EXCEPTION_ERROR;
487 End If;
488
489 -- end activity
490 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
491 x_msg_data => x_msg_data);
492 EXCEPTION
493 when OKE_API.G_EXCEPTION_ERROR then
494 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
495 p_api_name => l_api_name,
496 p_pkg_name => g_pkg_name,
497 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
498 x_msg_count => x_msg_count,
499 x_msg_data => x_msg_data,
500 p_api_type => g_api_type);
501
502 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
503 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
504 p_api_name => l_api_name,
505 p_pkg_name => g_pkg_name,
506 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
507 x_msg_count => x_msg_count,
508 x_msg_data => x_msg_data,
509 p_api_type => g_api_type);
510
511 when OTHERS then
512 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
513 p_api_name => l_api_name,
514 p_pkg_name => g_pkg_name,
515 p_exc_name => 'OTHERS',
516 x_msg_count => x_msg_count,
517 x_msg_data => x_msg_data,
518 p_api_type => g_api_type);
519
520 END validate_term;
521
522 */
523
524
525 PROCEDURE delete_term(
526
527 p_api_version IN NUMBER,
528 p_init_msg_list IN VARCHAR2 DEFAULT OKE_API.G_FALSE,
529 x_return_status OUT NOCOPY VARCHAR2,
530 x_msg_count OUT NOCOPY NUMBER,
531 x_msg_data OUT NOCOPY VARCHAR2,
532 p_term_rec IN oke_term_pvt.term_rec_type) IS
533
534 l_term_rec oke_term_pvt.term_rec_type;
535 l_api_name CONSTANT VARCHAR2(30) := 'DELETE_TERM';
536 l_api_version CONSTANT NUMBER := 1.0;
537 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
538 BEGIN
539
540 -- call START_ACTIVITY to create savepoint, check compatibility
541 -- and initialize message list
542 l_return_status := OKE_API.START_ACTIVITY(
543 p_api_name => l_api_name,
544 p_pkg_name => g_pkg_name,
545 p_init_msg_list => p_init_msg_list,
546 l_api_version => l_api_version,
547 p_api_version => p_api_version,
548 p_api_type => g_api_type,
549 x_return_status => x_return_status);
550
551 -- check if activity started successfully
552 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
553 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
554 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
555 raise OKE_API.G_EXCEPTION_ERROR;
556 End If;
557
558 l_term_rec := p_term_rec;
559
560 -- call complex api
561
562 OKE_TERM_PVT.delete_row(
563 p_api_version => p_api_version,
564 p_init_msg_list => p_init_msg_list,
565 x_return_status => x_return_status,
566 x_msg_count => x_msg_count,
567 x_msg_data => x_msg_data,
568 p_term_rec => p_term_rec);
569
570
571 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
572 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
573 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
574 raise OKE_API.G_EXCEPTION_ERROR;
575 End If;
576
577 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
578 x_msg_data => x_msg_data);
579 EXCEPTION
580 when OKE_API.G_EXCEPTION_ERROR then
581 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
582 p_api_name => l_api_name,
583 p_pkg_name => g_pkg_name,
584 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
585 x_msg_count => x_msg_count,
586 x_msg_data => x_msg_data,
587 p_api_type => g_api_type);
588
589 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
590 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
591 p_api_name => l_api_name,
592 p_pkg_name => g_pkg_name,
593 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
594 x_msg_count => x_msg_count,
595 x_msg_data => x_msg_data,
596 p_api_type => g_api_type);
597
598 when OTHERS then
599 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
600 p_api_name => l_api_name,
601 p_pkg_name => g_pkg_name,
602 p_exc_name => 'OTHERS',
603 x_msg_count => x_msg_count,
604 x_msg_data => x_msg_data,
605 p_api_type => g_api_type);
606
607 END delete_term;
608
609 PROCEDURE delete_term(
610 p_api_version IN NUMBER,
611 p_init_msg_list IN VARCHAR2 DEFAULT OKE_API.G_FALSE,
612 x_return_status OUT NOCOPY VARCHAR2,
613 x_msg_count OUT NOCOPY NUMBER,
614 x_msg_data OUT NOCOPY VARCHAR2,
615 p_term_tbl IN oke_term_pvt.term_tbl_type) IS
616
617 l_api_name CONSTANT VARCHAR2(30) := 'DELETE_TERM';
618 l_api_version CONSTANT NUMBER := 1.0;
619 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
620 l_overall_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
621 i NUMBER;
622 BEGIN
623
624 -- call START_ACTIVITY to create savepoint, check compatibility
625 -- and initialize message list
626 l_return_status := OKE_API.START_ACTIVITY(
627 p_api_name => l_api_name,
628 p_pkg_name => g_pkg_name,
629 p_init_msg_list => p_init_msg_list,
630 l_api_version => l_api_version,
631 p_api_version => p_api_version,
632 p_api_type => g_api_type,
633 x_return_status => x_return_status);
634
635 -- check if activity started successfully
636 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
637 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
638 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
639 raise OKE_API.G_EXCEPTION_ERROR;
640 End If;
641
642
643 OKE_TERM_PVT.Delete_Row(
644 p_api_version => p_api_version,
645 p_init_msg_list => p_init_msg_list,
646 x_return_status => x_return_status,
647 x_msg_count => x_msg_count,
648 x_msg_data => x_msg_data,
649 p_term_tbl => p_term_tbl);
650
651
652
653 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
654 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
655 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
656 raise OKE_API.G_EXCEPTION_ERROR;
657 End If;
658
659 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
660 x_msg_data => x_msg_data);
661 EXCEPTION
662 when OKE_API.G_EXCEPTION_ERROR then
663 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
664 p_api_name => l_api_name,
665 p_pkg_name => g_pkg_name,
666 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
667 x_msg_count => x_msg_count,
668 x_msg_data => x_msg_data,
669 p_api_type => g_api_type);
670
671 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
672 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
673 p_api_name => l_api_name,
674 p_pkg_name => g_pkg_name,
675 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
676 x_msg_count => x_msg_count,
677 x_msg_data => x_msg_data,
678 p_api_type => g_api_type);
679
680 when OTHERS then
681 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
682 p_api_name => l_api_name,
683 p_pkg_name => g_pkg_name,
684 p_exc_name => 'OTHERS',
685 x_msg_count => x_msg_count,
686 x_msg_data => x_msg_data,
687 p_api_type => g_api_type);
688
689 END delete_term;
690
691
692 PROCEDURE delete_term(
693
694 p_api_version IN NUMBER,
695 p_init_msg_list IN VARCHAR2 DEFAULT OKE_API.G_FALSE,
696 x_return_status OUT NOCOPY VARCHAR2,
697 x_msg_count OUT NOCOPY NUMBER,
698 x_msg_data OUT NOCOPY VARCHAR2,
699 p_chr_id IN NUMBER,
700 p_cle_id IN NUMBER,
701 p_trm_cd IN OKE_K_TERMS.TERM_CODE%TYPE,
702 p_trm_val_pk1 IN OKE_K_TERMS.TERM_VALUE_PK1%TYPE,
703 p_trm_val_pk2 IN OKE_K_TERMS.TERM_VALUE_PK2%TYPE) IS
704
705 l_term_rec oke_term_pvt.term_rec_type;
706 l_api_name CONSTANT VARCHAR2(30) := 'DELETE_TERM';
707 l_api_version CONSTANT NUMBER := 1.0;
708 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
709 l_check_num1 NUMBER;
710 l_check_num2 NUMBER;
711
712 BEGIN
713
714 -- call START_ACTIVITY to create savepoint, check compatibility
715 -- and initialize message list
716 l_return_status := OKE_API.START_ACTIVITY(
717 p_api_name => l_api_name,
718 p_pkg_name => g_pkg_name,
719 p_init_msg_list => p_init_msg_list,
720 l_api_version => l_api_version,
721 p_api_version => p_api_version,
722 p_api_type => g_api_type,
723 x_return_status => x_return_status);
724
725 -- check if activity started successfully
726 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
727 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
728 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
729 raise OKE_API.G_EXCEPTION_ERROR;
730 End If;
731
732 If (p_cle_id IS NOT NULL) Then
733 OKE_TERM_PVT.delete_row(
734 p_api_version => p_api_version,
735 p_init_msg_list => p_init_msg_list,
736 x_return_status => x_return_status,
737 x_msg_count => x_msg_count,
738 x_msg_data => x_msg_data,
739 p_cle_id => p_cle_id,
740 p_trm_cd => p_trm_cd,
741 p_trm_val_pk1 => p_trm_val_pk1,
742 p_trm_val_pk2 => p_trm_val_pk2);
743
744
745 Else
746 OKE_TERM_PVT.delete_row(
747 p_api_version => p_api_version,
748 p_init_msg_list => p_init_msg_list,
749 x_return_status => x_return_status,
750 x_msg_count => x_msg_count,
751 x_msg_data => x_msg_data,
752 p_chr_id => p_chr_id,
753 p_trm_cd => p_trm_cd,
754 p_trm_val_pk1 => p_trm_val_pk1,
755 p_trm_val_pk2 => p_trm_val_pk2);
756
757 End If;
758
759
760
761 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
762 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
763 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
764 raise OKE_API.G_EXCEPTION_ERROR;
765 End If;
766
767
768 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
769 x_msg_data => x_msg_data);
770 EXCEPTION
771 when OKE_API.G_EXCEPTION_ERROR then
772 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
773 p_api_name => l_api_name,
774 p_pkg_name => g_pkg_name,
775 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
776 x_msg_count => x_msg_count,
777 x_msg_data => x_msg_data,
778 p_api_type => g_api_type);
779
780 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
781 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
782 p_api_name => l_api_name,
783 p_pkg_name => g_pkg_name,
784 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
785 x_msg_count => x_msg_count,
786 x_msg_data => x_msg_data,
787 p_api_type => g_api_type);
788
789 when OTHERS then
790 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
791 p_api_name => l_api_name,
792 p_pkg_name => g_pkg_name,
793 p_exc_name => 'OTHERS',
794 x_msg_count => x_msg_count,
795 x_msg_data => x_msg_data,
796 p_api_type => g_api_type);
797
798 END delete_term;
799
800
801 PROCEDURE copy_term(
802 p_api_version IN NUMBER,
803 p_init_msg_list IN VARCHAR2 DEFAULT OKE_API.G_FALSE,
804 x_return_status OUT NOCOPY VARCHAR2,
805 x_msg_count OUT NOCOPY NUMBER,
806 x_msg_data OUT NOCOPY VARCHAR2,
807 p_from_level IN VARCHAR2,
808 p_to_level IN VARCHAR2,
809 p_from_chr_id IN NUMBER,
810 p_to_chr_id IN NUMBER,
811 p_from_cle_id IN NUMBER,
812 p_to_cle_id IN NUMBER
813 ) IS
814
815
816 l_term_tbl oke_term_pvt.term_tbl_type;
817 l_term_rec oke_term_pvt.term_rec_type;
818 l_api_name CONSTANT VARCHAR2(30) := 'COPY_TERM';
819 l_api_version CONSTANT NUMBER := 1.0;
820 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
821 l_rec_num NUMBER:=0;
822
823 x_term_tbl oke_term_pvt.term_tbl_type;
824
825 CURSOR term_cle_csr (p_id IN NUMBER) IS
826 SELECT
827 b.K_HEADER_ID ,
828 b.K_LINE_ID ,
829 b.TERM_CODE ,
830 b.TERM_VALUE_PK1 ,
831 b.TERM_VALUE_PK2 ,
832 b.CREATION_DATE ,
833 b.CREATED_BY ,
834 b.LAST_UPDATE_DATE ,
835 b.LAST_UPDATED_BY ,
836 b.LAST_UPDATE_LOGIN ,
837 b.ATTRIBUTE_CATEGORY ,
838 b.ATTRIBUTE1 ,
839 b.ATTRIBUTE2 ,
840 b.ATTRIBUTE3 ,
841 b.ATTRIBUTE4 ,
842 b.ATTRIBUTE5 ,
843 b.ATTRIBUTE6 ,
844 b.ATTRIBUTE7 ,
845 b.ATTRIBUTE8 ,
846 b.ATTRIBUTE9 ,
847 b.ATTRIBUTE10 ,
848 b.ATTRIBUTE11 ,
849 b.ATTRIBUTE12 ,
850 b.ATTRIBUTE13 ,
851 b.ATTRIBUTE14 ,
852 b.ATTRIBUTE15
853 FROM OKE_K_TERMS b
854 WHERE b.K_LINE_ID = p_id;
855
856 CURSOR term_chr_csr (p_id IN NUMBER) IS
857 SELECT
858 b.K_HEADER_ID ,
859 b.K_LINE_ID ,
860 b.TERM_CODE ,
861 b.TERM_VALUE_PK1 ,
862 b.TERM_VALUE_PK2 ,
863 b.CREATION_DATE ,
864 b.CREATED_BY ,
865 b.LAST_UPDATE_DATE ,
866 b.LAST_UPDATED_BY ,
867 b.LAST_UPDATE_LOGIN ,
868 b.ATTRIBUTE_CATEGORY ,
869 b.ATTRIBUTE1 ,
870 b.ATTRIBUTE2 ,
871 b.ATTRIBUTE3 ,
872 b.ATTRIBUTE4 ,
873 b.ATTRIBUTE5 ,
874 b.ATTRIBUTE6 ,
875 b.ATTRIBUTE7 ,
876 b.ATTRIBUTE8 ,
877 b.ATTRIBUTE9 ,
878 b.ATTRIBUTE10 ,
879 b.ATTRIBUTE11 ,
880 b.ATTRIBUTE12 ,
881 b.ATTRIBUTE13 ,
882 b.ATTRIBUTE14 ,
883 b.ATTRIBUTE15
884 FROM OKE_K_TERMS b
885 WHERE (b.K_HEADER_ID = p_id) AND (b.K_LINE_ID IS NULL);
886
887
888 BEGIN
889
890
891 -- call START_ACTIVITY to create savepoint, check compatibility
892 -- and initialize message list
893 l_return_status := OKE_API.START_ACTIVITY(
894 p_api_name => l_api_name,
895 p_pkg_name => g_pkg_name,
896 p_init_msg_list => p_init_msg_list,
897 l_api_version => l_api_version,
898 p_api_version => p_api_version,
899 p_api_type => g_api_type,
900 x_return_status => x_return_status);
901
902 -- check if activity started successfully
903 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
904 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
905 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
906 raise OKE_API.G_EXCEPTION_ERROR;
907 End If;
908
909
910
911 IF( p_from_level='H' ) THEN
912
913 OPEN term_chr_csr (p_from_chr_id);
914 LOOP
915 FETCH term_chr_csr INTO
916 l_term_rec.K_HEADER_ID ,
917 l_term_rec.K_LINE_ID ,
918 l_term_rec.TERM_CODE ,
919 l_term_rec.TERM_VALUE_PK1 ,
920 l_term_rec.TERM_VALUE_PK2 ,
921 l_term_rec.CREATION_DATE ,
922 l_term_rec.CREATED_BY ,
923 l_term_rec.LAST_UPDATE_DATE ,
924 l_term_rec.LAST_UPDATED_BY ,
925 l_term_rec.LAST_UPDATE_LOGIN ,
926 l_term_rec.ATTRIBUTE_CATEGORY ,
927 l_term_rec.ATTRIBUTE1 ,
928 l_term_rec.ATTRIBUTE2 ,
929 l_term_rec.ATTRIBUTE3 ,
930 l_term_rec.ATTRIBUTE4 ,
931 l_term_rec.ATTRIBUTE5 ,
932 l_term_rec.ATTRIBUTE6 ,
933 l_term_rec.ATTRIBUTE7 ,
934 l_term_rec.ATTRIBUTE8 ,
935 l_term_rec.ATTRIBUTE9 ,
936 l_term_rec.ATTRIBUTE10 ,
937 l_term_rec.ATTRIBUTE11 ,
938 l_term_rec.ATTRIBUTE12 ,
939 l_term_rec.ATTRIBUTE13 ,
940 l_term_rec.ATTRIBUTE14 ,
941 l_term_rec.ATTRIBUTE15 ;
942 EXIT WHEN term_chr_csr%NOTFOUND;
943
944 l_rec_num := l_rec_num+1;
945
946 IF(p_to_chr_id IS NULL)AND(p_to_cle_id IS NULL) THEN
947 raise OKE_API.G_EXCEPTION_ERROR;
948 END IF;
949
950 IF(p_to_chr_id IS NULL) THEN
951 l_term_rec.K_HEADER_ID := l_term_rec.K_HEADER_ID ;
952 l_term_rec.K_LINE_ID := p_to_cle_id;
953 ELSE
954 IF(p_to_cle_id IS NULL) THEN
955 l_term_rec.K_HEADER_ID := p_to_chr_id;
956 l_term_rec.K_LINE_ID := NULL;
957 ELSE
958 l_term_rec.K_HEADER_ID := p_to_chr_id;
959 l_term_rec.K_LINE_ID := p_to_cle_id;
960 END IF;
961 END IF;
962
963 l_term_tbl(l_rec_num) := l_term_rec;
964
965
966 END LOOP;
967 CLOSE term_chr_csr;
968
969 OKE_TERM_PVT.Insert_Row(
970 p_api_version => p_api_version,
971 p_init_msg_list => p_init_msg_list,
972 x_return_status => x_return_status,
973 x_msg_count => x_msg_count,
974 x_msg_data => x_msg_data,
975 p_term_tbl => l_term_tbl,
976 x_term_tbl => x_term_tbl);
977
978 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
979 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
980 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
981 raise OKE_API.G_EXCEPTION_ERROR;
982 End If;
983
984
985 ELSIF( p_from_level='L' ) THEN
986
987 OPEN term_cle_csr (p_from_cle_id);
988 LOOP
989 FETCH term_cle_csr INTO
990 l_term_rec.K_HEADER_ID ,
991 l_term_rec.K_LINE_ID ,
992 l_term_rec.TERM_CODE ,
993 l_term_rec.TERM_VALUE_PK1 ,
994 l_term_rec.TERM_VALUE_PK2 ,
995 l_term_rec.CREATION_DATE ,
996 l_term_rec.CREATED_BY ,
997 l_term_rec.LAST_UPDATE_DATE ,
998 l_term_rec.LAST_UPDATED_BY ,
999 l_term_rec.LAST_UPDATE_LOGIN ,
1000 l_term_rec.ATTRIBUTE_CATEGORY ,
1001 l_term_rec.ATTRIBUTE1 ,
1002 l_term_rec.ATTRIBUTE2 ,
1003 l_term_rec.ATTRIBUTE3 ,
1004 l_term_rec.ATTRIBUTE4 ,
1005 l_term_rec.ATTRIBUTE5 ,
1006 l_term_rec.ATTRIBUTE6 ,
1007 l_term_rec.ATTRIBUTE7 ,
1008 l_term_rec.ATTRIBUTE8 ,
1009 l_term_rec.ATTRIBUTE9 ,
1010 l_term_rec.ATTRIBUTE10 ,
1011 l_term_rec.ATTRIBUTE11 ,
1012 l_term_rec.ATTRIBUTE12 ,
1013 l_term_rec.ATTRIBUTE13 ,
1014 l_term_rec.ATTRIBUTE14 ,
1015 l_term_rec.ATTRIBUTE15 ;
1016 EXIT WHEN term_cle_csr%NOTFOUND;
1017
1018 l_rec_num := l_rec_num+1;
1019
1020 IF(p_to_chr_id IS NULL)AND(p_to_cle_id IS NULL) THEN
1021 raise OKE_API.G_EXCEPTION_ERROR;
1022 END IF;
1023
1024 IF(p_to_chr_id IS NULL) THEN
1025 l_term_rec.K_HEADER_ID := l_term_rec.K_HEADER_ID ;
1026 l_term_rec.K_LINE_ID := p_to_cle_id;
1027 ELSE
1028 IF(p_to_cle_id IS NULL) THEN
1029 l_term_rec.K_HEADER_ID := p_to_chr_id;
1030 l_term_rec.K_LINE_ID := NULL;
1031 ELSE
1032 l_term_rec.K_HEADER_ID := p_to_chr_id;
1033 l_term_rec.K_LINE_ID := p_to_cle_id;
1034 END IF;
1035 END IF;
1036
1037 l_term_tbl(l_rec_num) := l_term_rec;
1038
1039
1040 END LOOP;
1041 CLOSE term_cle_csr;
1042
1043
1044 OKE_TERM_PVT.Insert_Row(
1045 p_api_version => p_api_version,
1046 p_init_msg_list => p_init_msg_list,
1047 x_return_status => x_return_status,
1048 x_msg_count => x_msg_count,
1049 x_msg_data => x_msg_data,
1050 p_term_tbl => l_term_tbl,
1051 x_term_tbl => x_term_tbl);
1052
1053 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
1054 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
1055 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
1056 raise OKE_API.G_EXCEPTION_ERROR;
1057 End If;
1058
1059 ELSE
1060 raise OKE_API.G_EXCEPTION_ERROR;
1061 END IF;
1062
1063 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
1064 x_msg_data => x_msg_data);
1065 EXCEPTION
1066 when OKE_API.G_EXCEPTION_ERROR then
1067 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
1068 p_api_name => l_api_name,
1069 p_pkg_name => g_pkg_name,
1070 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
1071 x_msg_count => x_msg_count,
1072 x_msg_data => x_msg_data,
1073 p_api_type => g_api_type);
1074
1075 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
1076 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
1077 p_api_name => l_api_name,
1078 p_pkg_name => g_pkg_name,
1079 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
1080 x_msg_count => x_msg_count,
1081 x_msg_data => x_msg_data,
1082 p_api_type => g_api_type);
1083
1084 when OTHERS then
1085 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
1086 p_api_name => l_api_name,
1087 p_pkg_name => g_pkg_name,
1088 p_exc_name => 'OTHERS',
1089 x_msg_count => x_msg_count,
1090 x_msg_data => x_msg_data,
1091 p_api_type => g_api_type);
1092
1093 END copy_term;
1094
1095
1096
1097 PROCEDURE lock_term(
1098 p_api_version IN NUMBER,
1099 p_init_msg_list IN VARCHAR2 DEFAULT OKE_API.G_FALSE,
1100 x_return_status OUT NOCOPY VARCHAR2,
1101 x_msg_count OUT NOCOPY NUMBER,
1102 x_msg_data OUT NOCOPY VARCHAR2,
1103 p_term_rec IN OKE_TERM_PVT.term_rec_type) IS
1104
1105
1106 l_del_rec oke_deliverable_pvt.del_rec_type;
1107 l_api_name CONSTANT VARCHAR2(30) := 'LOCK_TERM';
1108 l_api_version CONSTANT NUMBER := 1.0;
1109 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
1110
1111 BEGIN
1112 l_return_status := OKE_API.START_ACTIVITY(
1113 p_api_name => l_api_name,
1114 p_pkg_name => g_pkg_name,
1115 p_init_msg_list => p_init_msg_list,
1116 l_api_version => l_api_version,
1117 p_api_version => p_api_version,
1118 p_api_type => g_api_type,
1119 x_return_status => x_return_status);
1120
1121 -- check if activity started successfully
1122 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
1123 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
1124 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
1125 raise OKE_API.G_EXCEPTION_ERROR;
1126 End If;
1127
1128 OKE_TERM_PVT.Lock_Row(
1129 p_api_version => p_api_version,
1130 p_init_msg_list => p_init_msg_list,
1131 x_return_status => x_return_status,
1132 x_msg_count => x_msg_count,
1133 x_msg_data => x_msg_data,
1134 p_term_rec => p_term_rec);
1135
1136 -- check return status
1137 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
1138 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
1139 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
1140 raise OKE_API.G_EXCEPTION_ERROR;
1141 End If;
1142
1143 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
1144 x_msg_data => x_msg_data);
1145 EXCEPTION
1146 when OKE_API.G_EXCEPTION_ERROR then
1147 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
1148 p_api_name => l_api_name,
1149 p_pkg_name => g_pkg_name,
1150 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
1151 x_msg_count => x_msg_count,
1152 x_msg_data => x_msg_data,
1153 p_api_type => g_api_type);
1154
1155 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
1156 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
1157 p_api_name => l_api_name,
1158 p_pkg_name => g_pkg_name,
1159 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
1160 x_msg_count => x_msg_count,
1161 x_msg_data => x_msg_data,
1162 p_api_type => g_api_type);
1163
1164 when OTHERS then
1165 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
1166 p_api_name => l_api_name,
1167 p_pkg_name => g_pkg_name,
1168 p_exc_name => 'OTHERS',
1169 x_msg_count => x_msg_count,
1170 x_msg_data => x_msg_data,
1171 p_api_type => g_api_type);
1172
1173 END lock_term;
1174
1175 PROCEDURE lock_term(
1176 p_api_version IN NUMBER,
1177 p_init_msg_list IN VARCHAR2 DEFAULT OKE_API.G_FALSE,
1178 x_return_status OUT NOCOPY VARCHAR2,
1179 x_msg_count OUT NOCOPY NUMBER,
1180 x_msg_data OUT NOCOPY VARCHAR2,
1181 p_term_tbl IN oke_term_pvt.term_tbl_type) IS
1182
1183 l_api_name CONSTANT VARCHAR2(30) := 'LOCK_TERM';
1184 l_api_version CONSTANT NUMBER := 1.0;
1185 l_return_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
1186 l_overall_status VARCHAR2(1) := OKE_API.G_RET_STS_SUCCESS;
1187 i NUMBER;
1188 BEGIN
1189
1190 -- call START_ACTIVITY to create savepoint, check compatibility
1191 -- and initialize message list
1192 l_return_status := OKE_API.START_ACTIVITY(
1193 p_api_name => l_api_name,
1194 p_pkg_name => g_pkg_name,
1195 p_init_msg_list => p_init_msg_list,
1196 l_api_version => l_api_version,
1197 p_api_version => p_api_version,
1198 p_api_type => g_api_type,
1199 x_return_status => x_return_status);
1200
1201 -- check if activity started successfully
1202 If (l_return_status = OKE_API.G_RET_STS_UNEXP_ERROR) then
1203 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
1204 Elsif (l_return_status = OKE_API.G_RET_STS_ERROR) then
1205 raise OKE_API.G_EXCEPTION_ERROR;
1206 End If;
1207
1208 If (p_term_tbl.COUNT > 0) Then
1209 i := p_term_tbl.FIRST;
1210 LOOP
1211 -- call procedure in complex API
1212 OKE_TERM_PVT.lock_row(
1213 p_api_version => p_api_version,
1214 p_init_msg_list => p_init_msg_list,
1215 x_return_status => x_return_status,
1216 x_msg_count => x_msg_count,
1217 x_msg_data => x_msg_data,
1218 p_term_rec => p_term_tbl(i));
1219
1220 -- store the highest degree of error
1221 If x_return_status <> OKE_API.G_RET_STS_SUCCESS Then
1222 If l_overall_status <> OKE_API.G_RET_STS_UNEXP_ERROR Then
1223 l_overall_status := x_return_status;
1224 End If;
1225 End If;
1226 EXIT WHEN (i = p_term_tbl.LAST);
1227 i := p_term_tbl.NEXT(i);
1228 END LOOP;
1229 -- return overall status
1230 x_return_status := l_overall_status;
1231 End If;
1232
1233 If x_return_status = OKE_API.G_RET_STS_UNEXP_ERROR Then
1234 raise OKE_API.G_EXCEPTION_UNEXPECTED_ERROR;
1235 Elsif x_return_status = OKE_API.G_RET_STS_ERROR Then
1236 raise OKE_API.G_EXCEPTION_ERROR;
1237 End If;
1238
1239 -- end activity
1240
1241 OKE_API.END_ACTIVITY( x_msg_count => x_msg_count,
1242 x_msg_data => x_msg_data);
1243 EXCEPTION
1244 when OKE_API.G_EXCEPTION_ERROR then
1245 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
1246 p_api_name => l_api_name,
1247 p_pkg_name => g_pkg_name,
1248 p_exc_name => 'OKE_API.G_RET_STS_ERROR',
1249 x_msg_count => x_msg_count,
1250 x_msg_data => x_msg_data,
1251 p_api_type => g_api_type);
1252
1253 when OKE_API.G_EXCEPTION_UNEXPECTED_ERROR then
1254 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
1255 p_api_name => l_api_name,
1256 p_pkg_name => g_pkg_name,
1257 p_exc_name => 'OKE_API.G_RET_STS_UNEXP_ERROR',
1258 x_msg_count => x_msg_count,
1259 x_msg_data => x_msg_data,
1260 p_api_type => g_api_type);
1261
1262 when OTHERS then
1263 x_return_status := OKE_API.HANDLE_EXCEPTIONS(
1264 p_api_name => l_api_name,
1265 p_pkg_name => g_pkg_name,
1266 p_exc_name => 'OTHERS',
1267 x_msg_count => x_msg_count,
1268 x_msg_data => x_msg_data,
1269 p_api_type => g_api_type);
1270
1271 END lock_term;
1272
1273 END OKE_TERMS_PUB;
1274