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