DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_PDT_QUALITYS_PVT

Source


1 PACKAGE BODY OKL_PDT_QUALITYS_PVT AS
2   /* $Header: OKLCPQYB.pls 115.5 2002/02/18 20:13:09 pkm ship       $ */
3 
4 
5   PROCEDURE create_pdt_qualitys(
6      p_api_version                  IN  NUMBER
7     ,p_init_msg_list                IN  VARCHAR2 DEFAULT OKC_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_pqyv_rec                     IN  pqyv_rec_type
12     ,p_qvev_tbl                     IN  qvev_tbl_type
13     ,x_pqyv_rec                     OUT NOCOPY pqyv_rec_type
14     ,x_qvev_tbl                     OUT NOCOPY qvev_tbl_type
15     ) IS
16 
17     i                               NUMBER;
18     l_pqyv_rec                      pqyv_rec_type;
19     l_return_status                 VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
20     l_qvev_tbl                      qvev_tbl_type := p_qvev_tbl;
21 
22   BEGIN
23   -- Populate Product Qualities
24     create_pdt_qualitys(
25                          p_api_version   => p_api_version
26                         ,p_init_msg_list => p_init_msg_list
27                         ,x_return_status => x_return_status
28                         ,x_msg_count     => x_msg_count
29                         ,x_msg_data      => x_msg_data
30                         ,p_pqyv_rec      => p_pqyv_rec
31                         ,x_pqyv_rec      => x_pqyv_rec);
32     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
33       RAISE G_EXCEPTION_HALT_VALIDATION;
34     ELSE
35       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
36         l_return_status := x_return_status;
37       END IF;
38     END IF;
39   -- populate the foreign key for the detail
40     IF (l_qvev_tbl.COUNT > 0) THEN
41        i:= l_qvev_tbl.FIRST;
42        LOOP
43          l_qvev_tbl(i).pqy_id := x_pqyv_rec.id;
44          EXIT WHEN(i = l_qvev_tbl.LAST);
45          i := l_qvev_tbl.NEXT(i);
46        END LOOP;
47     END IF;
48 
49 
50     -- populate the detail
51     create_pdt_quality_vals(
52                               p_api_version   => p_api_version
53                              ,p_init_msg_list => p_init_msg_list
54                              ,x_return_status => x_return_status
55                              ,x_msg_count     => x_msg_count
56                              ,x_msg_data      => x_msg_data
57                              ,p_qvev_tbl      => l_qvev_tbl
58                              ,x_qvev_tbl      => x_qvev_tbl);
59     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
60        RAISE G_EXCEPTION_HALT_VALIDATION;
61     ELSE
62       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
63         l_return_status := x_return_status;
64       END IF;
65     END IF;
66 
67     EXCEPTION
68       WHEN G_EXCEPTION_HALT_VALIDATION THEN
69         NULL;
70 
71       WHEN OTHERS THEN
72         OKC_API.SET_MESSAGE(p_app_name          => g_app_name
73                            ,p_msg_name          => g_unexpected_error
74                            ,p_token1            => g_sqlcode_token
75                            ,p_token1_value      => sqlcode
76                            ,p_token2            => g_sqlerrm_token
77                            ,p_token2_value      => sqlerrm);
78         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
79   END create_pdt_qualitys;
80 
81   PROCEDURE create_pdt_qualitys(
82      p_api_version             IN  NUMBER
83     ,p_init_msg_list           IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
84     ,x_return_status           OUT NOCOPY VARCHAR2
85     ,x_msg_count               OUT NOCOPY NUMBER
86     ,x_msg_data                OUT NOCOPY VARCHAR2
87     ,p_pqyv_rec                IN  pqyv_rec_type
88     ,x_pqyv_rec                OUT NOCOPY pqyv_rec_type) IS
89     l_return_status            VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
90   BEGIN
91     okl_pqy_pvt.insert_row(
92                            p_api_version   => p_api_version
93                           ,p_init_msg_list => p_init_msg_list
94                           ,x_return_status => x_return_status
95                           ,x_msg_count     => x_msg_count
96                           ,x_msg_data      => x_msg_data
97                           ,p_pqyv_rec      => p_pqyv_rec
98                           ,x_pqyv_rec      => x_pqyv_rec
99                           );
100 
101     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
102        RAISE G_EXCEPTION_HALT_VALIDATION;
103     ELSE
104       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
105         l_return_status := x_return_status;
106       END IF;
107     END IF;
108       -- Custom code if any
109 
110     EXCEPTION
111       WHEN G_EXCEPTION_HALT_VALIDATION THEN
112         NULL;
113 
114       WHEN OTHERS THEN
115         OKC_API.SET_MESSAGE(p_app_name          => g_app_name
116                            ,p_msg_name          => g_unexpected_error
117                            ,p_token1            => g_sqlcode_token
118                            ,p_token1_value      => sqlcode
119                            ,p_token2            => g_sqlerrm_token
120                            ,p_token2_value      => sqlerrm);
121         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
122   END create_pdt_qualitys;
123 --null;
124   PROCEDURE create_pdt_qualitys(
125      p_api_version               IN  NUMBER
126     ,p_init_msg_list             IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
127     ,x_return_status             OUT NOCOPY VARCHAR2
128     ,x_msg_count                 OUT NOCOPY NUMBER
129     ,x_msg_data                  OUT NOCOPY VARCHAR2
130     ,p_pqyv_tbl                  IN  pqyv_tbl_type
131     ,x_pqyv_tbl                  OUT NOCOPY pqyv_tbl_type) IS
132     l_return_status              VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
133 
134   BEGIN
135     okl_pqy_pvt.insert_row(
136                            p_api_version   => p_api_version
137                           ,p_init_msg_list => p_init_msg_list
138                           ,x_return_status => x_return_status
139                           ,x_msg_count     => x_msg_count
140                           ,x_msg_data      => x_msg_data
141                           ,p_pqyv_tbl      => p_pqyv_tbl
142                           ,x_pqyv_tbl      => x_pqyv_tbl
143                           );
144     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
145        RAISE G_EXCEPTION_HALT_VALIDATION;
146     ELSE
147       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
148         l_return_status := x_return_status;
149       END IF;
150     END IF;
151       -- Custom code if any
152 
153     EXCEPTION
154       WHEN G_EXCEPTION_HALT_VALIDATION THEN
155         NULL;
156 
157       WHEN OTHERS THEN
158         OKC_API.SET_MESSAGE(p_app_name          => g_app_name
159                            ,p_msg_name          => g_unexpected_error
160                            ,p_token1            => g_sqlcode_token
161                            ,p_token1_value      => sqlcode
162                            ,p_token2            => g_sqlerrm_token
163                            ,p_token2_value      => sqlerrm);
164         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
165 
166   END create_pdt_qualitys;
167 
168   -- Object type procedure for update
169   PROCEDURE update_pdt_qualitys(
170     p_api_version           IN  NUMBER,
171     p_init_msg_list         IN  VARCHAR2 DEFAULT OKC_API.G_FALSE,
172     x_return_status         OUT NOCOPY VARCHAR2,
173     x_msg_count             OUT NOCOPY NUMBER,
174     x_msg_data              OUT NOCOPY VARCHAR2,
175     p_pqyv_rec              IN  pqyv_rec_type,
176     p_qvev_tbl              IN  qvev_tbl_type,
177     x_pqyv_rec              OUT NOCOPY pqyv_rec_type,
178     x_qvev_tbl              OUT NOCOPY qvev_tbl_type) IS
179     l_return_status         VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
180   BEGIN
181     -- Update the master
182     update_pdt_qualitys(
183                          p_api_version   => p_api_version
184                         ,p_init_msg_list => p_init_msg_list
185                         ,x_return_status => x_return_status
186                         ,x_msg_count     => x_msg_count
187                         ,x_msg_data      => x_msg_data
188                         ,p_pqyv_rec      => p_pqyv_rec
189                         ,x_pqyv_rec      => x_pqyv_rec
190                         );
191     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
192        RAISE G_EXCEPTION_HALT_VALIDATION;
193     ELSE
194        IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
195           l_return_status := x_return_status;
196        END IF;
197     END IF;
198 
199     -- Update the detail
200     update_pdt_quality_vals(
201                               p_api_version   => p_api_version
202                              ,p_init_msg_list => p_init_msg_list
203                              ,x_return_status => x_return_status
204                              ,x_msg_count     => x_msg_count
205                              ,x_msg_data      => x_msg_data
206                              ,p_qvev_tbl      => p_qvev_tbl
207                              ,x_qvev_tbl      => x_qvev_tbl
208                              );
209 
210     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
211       RAISE G_EXCEPTION_HALT_VALIDATION;
212     ELSE
213       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
214         l_return_status := x_return_status;
215       END IF;
216     END IF;
217 
218   EXCEPTION
219     WHEN G_EXCEPTION_HALT_VALIDATION THEN
220       NULL;
221 
222     WHEN OTHERS THEN
223       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
224                          ,p_msg_name          => g_unexpected_error
225                          ,p_token1            => g_sqlcode_token
226                          ,p_token1_value      => sqlcode
227                          ,p_token2            => g_sqlerrm_token
228                          ,p_token2_value      => sqlerrm);
229     x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
230 
231   END update_pdt_qualitys;
232 
233   PROCEDURE validate_pdt_qualitys(
234      p_api_version           IN  NUMBER
235     ,p_init_msg_list         IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
236     ,x_return_status         OUT NOCOPY VARCHAR2
237     ,x_msg_count             OUT NOCOPY NUMBER
238     ,x_msg_data              OUT NOCOPY VARCHAR2
239     ,p_pqyv_rec              IN  pqyv_rec_type
240     ,p_qvev_tbl              IN  qvev_tbl_type) IS
241 
242     l_return_status         VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
243   BEGIN
244     -- Validate the master
245     validate_pdt_qualitys(
246                            p_api_version   => p_api_version
247                           ,p_init_msg_list => p_init_msg_list
248                           ,x_return_status => x_return_status
249                           ,x_msg_count     => x_msg_count
250                           ,x_msg_data      => x_msg_data
251                           ,p_pqyv_rec      => p_pqyv_rec
252                           );
253 
254     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
255       RAISE G_EXCEPTION_HALT_VALIDATION;
256     ELSE
257       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
258         l_return_status := x_return_status;
259       END IF;
260     END IF;
261 
262     -- Validate the detail
263     validate_pdt_quality_vals(
264                                 p_api_version   => p_api_version
265                                ,p_init_msg_list => p_init_msg_list
266                                ,x_return_status => x_return_status
267                                ,x_msg_count     => x_msg_count
268                                ,x_msg_data      => x_msg_data
269                                ,p_qvev_tbl      => p_qvev_tbl
270                                );
271 
272     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
273       RAISE G_EXCEPTION_HALT_VALIDATION;
274     ELSE
275       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
276         l_return_status := x_return_status;
277       END IF;
278     END IF;
279 
280   EXCEPTION
281     WHEN G_EXCEPTION_HALT_VALIDATION THEN
282       NULL;
283     WHEN OTHERS THEN
284       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
285                          ,p_msg_name          => g_unexpected_error
286                          ,p_token1            => g_sqlcode_token
287                          ,p_token1_value      => sqlcode
288                          ,p_token2            => g_sqlerrm_token
289                          ,p_token2_value      => sqlerrm);
290       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
291 
292   END validate_pdt_qualitys;
293 
294   PROCEDURE lock_pdt_qualitys(
295      p_api_version           IN  NUMBER
296     ,p_init_msg_list         IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
297     ,x_return_status         OUT NOCOPY VARCHAR2
298     ,x_msg_count             OUT NOCOPY NUMBER
299     ,x_msg_data              OUT NOCOPY VARCHAR2
300     ,p_pqyv_rec              IN  pqyv_rec_type) IS
301     l_return_status          VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
302 
303   BEGIN
304     okl_pqy_pvt.lock_row(
305                          p_api_version   => p_api_version
306                         ,p_init_msg_list => p_init_msg_list
307                         ,x_return_status => x_return_status
308                         ,x_msg_count     => x_msg_count
309                         ,x_msg_data      => x_msg_data
310                         ,p_pqyv_rec      => p_pqyv_rec
311                         );
312     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
313       RAISE G_EXCEPTION_HALT_VALIDATION;
314     ELSE
315       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
316         l_return_status := x_return_status;
317       END IF;
318     END IF;
319 
320   EXCEPTION
321     WHEN G_EXCEPTION_HALT_VALIDATION THEN
322       NULL;
323     WHEN OTHERS THEN
324       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
325                          ,p_msg_name          => g_unexpected_error
326                          ,p_token1            => g_sqlcode_token
327                          ,p_token1_value      => sqlcode
328                          ,p_token2            => g_sqlerrm_token
329                          ,p_token2_value      => sqlerrm);
330       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
331   END lock_pdt_qualitys;
332 
333   PROCEDURE lock_pdt_qualitys(
334      p_api_version           IN  NUMBER
335     ,p_init_msg_list         IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
336     ,x_return_status         OUT NOCOPY VARCHAR2
337     ,x_msg_count             OUT NOCOPY NUMBER
338     ,x_msg_data              OUT NOCOPY VARCHAR2
339     ,p_pqyv_tbl              IN  pqyv_tbl_type) IS
340     l_return_status          VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
341 
342   BEGIN
343     okl_pqy_pvt.lock_row(
344                          p_api_version   => p_api_version
345                         ,p_init_msg_list => p_init_msg_list
346                         ,x_return_status => x_return_status
347                         ,x_msg_count     => x_msg_count
348                         ,x_msg_data      => x_msg_data
349                         ,p_pqyv_tbl      => p_pqyv_tbl
350                         );
351     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
352       RAISE G_EXCEPTION_HALT_VALIDATION;
353     ELSE
354       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
355         l_return_status := x_return_status;
356       END IF;
357     END IF;
358 
359   EXCEPTION
360     WHEN G_EXCEPTION_HALT_VALIDATION THEN
361       NULL;
362     WHEN OTHERS THEN
363       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
364                          ,p_msg_name          => g_unexpected_error
365                          ,p_token1            => g_sqlcode_token
366                          ,p_token1_value      => sqlcode
367                          ,p_token2            => g_sqlerrm_token
368                          ,p_token2_value      => sqlerrm);
369       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
370   END lock_pdt_qualitys;
371 
372   PROCEDURE update_pdt_qualitys(
373      p_api_version                IN  NUMBER
374     ,p_init_msg_list              IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
375     ,x_return_status              OUT NOCOPY VARCHAR2
376     ,x_msg_count                  OUT NOCOPY NUMBER
377     ,x_msg_data                   OUT NOCOPY VARCHAR2
378     ,p_pqyv_rec                   IN  pqyv_rec_type
379     ,x_pqyv_rec                   OUT NOCOPY pqyv_rec_type) IS
380     l_return_status               VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
381 
382   BEGIN
383     okl_pqy_pvt.update_row(
384                            p_api_version   => p_api_version
385                           ,p_init_msg_list => p_init_msg_list
386                           ,x_return_status => x_return_status
387                           ,x_msg_count     => x_msg_count
388                           ,x_msg_data      => x_msg_data
389                           ,p_pqyv_rec      => p_pqyv_rec
390                           ,x_pqyv_rec      => x_pqyv_rec
391                           );
392     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
393       RAISE G_EXCEPTION_HALT_VALIDATION;
394     ELSE
395       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
396         l_return_status := x_return_status;
397       END IF;
398     END IF;
399   EXCEPTION
400     WHEN G_EXCEPTION_HALT_VALIDATION THEN
401       NULL;
402     WHEN OTHERS THEN
403       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
404                          ,p_msg_name          => g_unexpected_error
405                          ,p_token1            => g_sqlcode_token
406                          ,p_token1_value      => sqlcode
407                          ,p_token2            => g_sqlerrm_token
408                          ,p_token2_value      => sqlerrm);
409       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
410   END update_pdt_qualitys;
411 
412   PROCEDURE update_pdt_qualitys(
413      p_api_version                IN  NUMBER
414     ,p_init_msg_list              IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
415     ,x_return_status              OUT NOCOPY VARCHAR2
416     ,x_msg_count                  OUT NOCOPY NUMBER
417     ,x_msg_data                   OUT NOCOPY VARCHAR2
418     ,p_pqyv_tbl                   IN  pqyv_tbl_type
419     ,x_pqyv_tbl                   OUT NOCOPY pqyv_tbl_type) IS
420     l_return_status               VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
421   BEGIN
422     okl_pqy_pvt.update_row(
423                            p_api_version   => p_api_version
424                           ,p_init_msg_list => p_init_msg_list
425                           ,x_return_status => x_return_status
426                           ,x_msg_count     => x_msg_count
427                           ,x_msg_data      => x_msg_data
428                           ,p_pqyv_tbl      => p_pqyv_tbl
429                           ,x_pqyv_tbl      => x_pqyv_tbl
430                           );
431     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
432       RAISE G_EXCEPTION_HALT_VALIDATION;
433     ELSE
434       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
435         l_return_status := x_return_status;
436       END IF;
437     END IF;
438   EXCEPTION
439     WHEN G_EXCEPTION_HALT_VALIDATION THEN
440       NULL;
441     WHEN OTHERS THEN
442       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
443                          ,p_msg_name          => g_unexpected_error
444                          ,p_token1            => g_sqlcode_token
445                          ,p_token1_value      => sqlcode
446                          ,p_token2            => g_sqlerrm_token
447                          ,p_token2_value      => sqlerrm);
448       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
449   END update_pdt_qualitys;
450 
451        --Put custom code for cascade delete by developer
452   PROCEDURE delete_pdt_qualitys(
453      p_api_version           IN  NUMBER
454     ,p_init_msg_list         IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
455     ,x_return_status         OUT NOCOPY VARCHAR2
456     ,x_msg_count             OUT NOCOPY NUMBER
457     ,x_msg_data              OUT NOCOPY VARCHAR2
458     ,p_pqyv_rec              IN  pqyv_rec_type) IS
459     i                        NUMBER :=0;
460     l_return_status          VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
461     l_qvev_tbl               qvev_tbl_type;
462 
463     CURSOR qve_csr IS
464       SELECT qve.id
465         FROM OKL_PQY_VALUES qve
466        WHERE qve.pqy_id = p_pqyv_rec.id;
467   BEGIN
468     FOR qve_rec IN qve_csr
469     LOOP
470       i := i + 1;
471       l_qvev_tbl(i).id := qve_rec.id;
472     END LOOP;
473     IF l_qvev_tbl.COUNT > 0 THEN
474       delete_pdt_quality_vals(
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_qvev_tbl      => l_qvev_tbl
481                                );
482 
483       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
484         RAISE G_EXCEPTION_HALT_VALIDATION;
485       ELSE
486         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
487           l_return_status := x_return_status;
488         END IF;
489       END IF;
490     END IF;
491     --Delete the Master
492     okl_pqy_pvt.delete_row(
493                            p_api_version   => p_api_version
494                           ,p_init_msg_list => p_init_msg_list
495                           ,x_return_status => x_return_status
496                           ,x_msg_count     => x_msg_count
497                           ,x_msg_data      => x_msg_data
498                           ,p_pqyv_rec      => p_pqyv_rec
499                           );
500 
501     IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
502       RAISE G_EXCEPTION_HALT_VALIDATION;
503     ELSE
504       IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
505         l_return_status := x_return_status;
506       END IF;
507     END IF;
508   EXCEPTION
509     WHEN G_EXCEPTION_HALT_VALIDATION THEN
510       NULL;
511     WHEN OTHERS THEN
512       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
513                          ,p_msg_name          => g_unexpected_error
514                          ,p_token1            => g_sqlcode_token
515                          ,p_token1_value      => sqlcode
516                          ,p_token2            => g_sqlerrm_token
517                          ,p_token2_value      => sqlerrm);
518 
519       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
520   END delete_pdt_qualitys;
521 
522   PROCEDURE delete_pdt_qualitys(
523      p_api_version           IN  NUMBER
524     ,p_init_msg_list         IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
525     ,x_return_status         OUT NOCOPY VARCHAR2
526     ,x_msg_count             OUT NOCOPY NUMBER
527     ,x_msg_data              OUT NOCOPY VARCHAR2
528     ,p_pqyv_tbl              IN  pqyv_tbl_type) IS
529     i                        NUMBER :=0;
530     l_return_status          VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
531     l_overall_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS; --TCHGS
532   BEGIN
533     --Initialize the return status
534     x_return_status := OKC_API.G_RET_STS_SUCCESS;
535     IF (p_pqyv_tbl.COUNT > 0) THEN
536       i := p_pqyv_tbl.FIRST;
537       LOOP
538         delete_pdt_qualitys(
539                              p_api_version   => p_api_version
540                             ,p_init_msg_list => p_init_msg_list
541                             ,x_return_status => x_return_status
542                             ,x_msg_count     => x_msg_count
543                             ,x_msg_data      => x_msg_data
544                             ,p_pqyv_rec      => p_pqyv_tbl(i)
545                             );
546 		-- TCHGS: Store the highest degree of error
547 		IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
548 		   IF l_overall_status <> OKC_API.G_RET_STS_UNEXP_ERROR THEN
549 		   	  l_overall_status := x_return_status;
550 		   END IF;
551 		END IF;
552        EXIT WHEN (i = p_pqyv_tbl.LAST);
553        i := p_pqyv_tbl.NEXT(i);
554       END LOOP;
555 	  --TCHGS: return overall status
556 	  x_return_status := l_overall_status;
557     END IF;
558       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
559        RAISE G_EXCEPTION_HALT_VALIDATION;
560       ELSE
561         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
562           l_return_status := x_return_status;
563            END IF;
564       END IF;
565   EXCEPTION
566     WHEN G_EXCEPTION_HALT_VALIDATION THEN
567       NULL;
568     WHEN OTHERS THEN
569       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
570                          ,p_msg_name          => g_unexpected_error
571                          ,p_token1            => g_sqlcode_token
572                          ,p_token1_value      => sqlcode
573                          ,p_token2            => g_sqlerrm_token
574                          ,p_token2_value      => sqlerrm);
575         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
576   END delete_pdt_qualitys;
577 
578   PROCEDURE validate_pdt_qualitys(
579      p_api_version                IN  NUMBER
580     ,p_init_msg_list              IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
581     ,x_return_status              OUT NOCOPY VARCHAR2
582     ,x_msg_count                  OUT NOCOPY NUMBER
583     ,x_msg_data                   OUT NOCOPY VARCHAR2
584     ,p_pqyv_rec                   IN  pqyv_rec_type) IS
585     l_return_status               VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
586   BEGIN
587     okl_pqy_pvt.validate_row(
588                              p_api_version   => p_api_version
589                             ,p_init_msg_list => p_init_msg_list
590                             ,x_return_status => x_return_status
591                             ,x_msg_count     => x_msg_count
592                             ,x_msg_data      => x_msg_data
593                             ,p_pqyv_rec      => p_pqyv_rec
594                             );
595       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
596        RAISE G_EXCEPTION_HALT_VALIDATION;
597       ELSE
598         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
599           l_return_status := x_return_status;
600            END IF;
601       END IF;
602   EXCEPTION
603     WHEN G_EXCEPTION_HALT_VALIDATION THEN
604       NULL;
605     WHEN OTHERS THEN
606       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
607                          ,p_msg_name          => g_unexpected_error
608                          ,p_token1            => g_sqlcode_token
609                          ,p_token1_value      => sqlcode
610                          ,p_token2            => g_sqlerrm_token
611                          ,p_token2_value      => sqlerrm);
612         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
613   END validate_pdt_qualitys;
614 
615   PROCEDURE validate_pdt_qualitys(
616       p_api_version               IN  NUMBER,
617       p_init_msg_list             IN  VARCHAR2 DEFAULT OKC_API.G_FALSE,
618       x_return_status             OUT NOCOPY VARCHAR2,
619       x_msg_count                 OUT NOCOPY NUMBER,
620       x_msg_data                  OUT NOCOPY VARCHAR2,
621       p_pqyv_tbl                  IN  pqyv_tbl_type) IS
622     l_return_status               VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
623 
624   BEGIN
625     okl_pqy_pvt.validate_row(
626                              p_api_version   => p_api_version
627                             ,p_init_msg_list => p_init_msg_list
628                             ,x_return_status => x_return_status
629                             ,x_msg_count     => x_msg_count
630                             ,x_msg_data      => x_msg_data
631                             ,p_pqyv_tbl      => p_pqyv_tbl
632                             );
633       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
634        RAISE G_EXCEPTION_HALT_VALIDATION;
635       ELSE
636         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
637           l_return_status := x_return_status;
638            END IF;
639       END IF;
640   EXCEPTION
641     WHEN G_EXCEPTION_HALT_VALIDATION THEN
642       NULL;
643     WHEN OTHERS THEN
644       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
645                          ,p_msg_name          => g_unexpected_error
646                          ,p_token1            => g_sqlcode_token
647                          ,p_token1_value      => sqlcode
648                          ,p_token2            => g_sqlerrm_token
649                          ,p_token2_value      => sqlerrm);
650         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
651   END validate_pdt_qualitys;
652 
653   PROCEDURE create_pdt_quality_vals(
654      p_api_version                    IN  NUMBER
655     ,p_init_msg_list                  IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
656     ,x_return_status                  OUT NOCOPY VARCHAR2
657     ,x_msg_count                      OUT NOCOPY NUMBER
658     ,x_msg_data                       OUT NOCOPY VARCHAR2
659     ,p_qvev_rec                       IN  qvev_rec_type
660     ,x_qvev_rec                       OUT NOCOPY qvev_rec_type) IS
661     l_return_status                   VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
662 
663   BEGIN
664     okl_qve_pvt.insert_row(
665                            p_api_version   => p_api_version
666                           ,p_init_msg_list => p_init_msg_list
667                           ,x_return_status => x_return_status
668                           ,x_msg_count     => x_msg_count
669                           ,x_msg_data      => x_msg_data
670                           ,p_qvev_rec      => p_qvev_rec
671                           ,x_qvev_rec      => x_qvev_rec
672                           );
673       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
674        RAISE G_EXCEPTION_HALT_VALIDATION;
675       ELSE
676         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
677           l_return_status := x_return_status;
678            END IF;
679       END IF;
680   EXCEPTION
681     WHEN G_EXCEPTION_HALT_VALIDATION THEN
682       NULL;
683     WHEN OTHERS THEN
684       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
685                          ,p_msg_name          => g_unexpected_error
686                          ,p_token1            => g_sqlcode_token
687                          ,p_token1_value      => sqlcode
688                          ,p_token2            => g_sqlerrm_token
689                          ,p_token2_value      => sqlerrm);
690         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
691   END create_pdt_quality_vals;
692 
693   PROCEDURE create_pdt_quality_vals(
694      p_api_version                    IN  NUMBER
695     ,p_init_msg_list                  IN  VARCHAR2 DEFAULT OKC_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_qvev_tbl                       IN  qvev_tbl_type
700     ,x_qvev_tbl                       OUT NOCOPY qvev_tbl_type) IS
701     l_return_status                   VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
702 
703   BEGIN
704     okl_qve_pvt.insert_row(
705                            p_api_version   => p_api_version
706                           ,p_init_msg_list => p_init_msg_list
707                           ,x_return_status => x_return_status
708                           ,x_msg_count     => x_msg_count
709                           ,x_msg_data      => x_msg_data
710                           ,p_qvev_tbl      => p_qvev_tbl
711                           ,x_qvev_tbl      => x_qvev_tbl
712                           );
713       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
714        RAISE G_EXCEPTION_HALT_VALIDATION;
715       ELSE
716         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
717           l_return_status := x_return_status;
718            END IF;
719       END IF;
720   EXCEPTION
721     WHEN G_EXCEPTION_HALT_VALIDATION THEN
722       NULL;
723     WHEN OTHERS THEN
724       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
725                          ,p_msg_name          => g_unexpected_error
726                          ,p_token1            => g_sqlcode_token
727                          ,p_token1_value      => sqlcode
728                          ,p_token2            => g_sqlerrm_token
729                          ,p_token2_value      => sqlerrm);
730         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
731   END create_pdt_quality_vals;
732 
733   PROCEDURE lock_pdt_quality_vals(
734      p_api_version                    IN  NUMBER
735     ,p_init_msg_list                  IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
736     ,x_return_status                  OUT NOCOPY VARCHAR2
737     ,x_msg_count                      OUT NOCOPY NUMBER
738     ,x_msg_data                       OUT NOCOPY VARCHAR2
739     ,p_qvev_rec                       IN  qvev_rec_type) IS
740     l_return_status                   VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
741   BEGIN
742     okl_qve_pvt.lock_row(
743                            p_api_version   => p_api_version
744                           ,p_init_msg_list => p_init_msg_list
745                           ,x_return_status => x_return_status
746                           ,x_msg_count     => x_msg_count
747                           ,x_msg_data      => x_msg_data
748                           ,p_qvev_rec      => p_qvev_rec
749                           );
750       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
751        RAISE G_EXCEPTION_HALT_VALIDATION;
752       ELSE
753         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
754           l_return_status := x_return_status;
755            END IF;
756       END IF;
757   EXCEPTION
758     WHEN G_EXCEPTION_HALT_VALIDATION THEN
759       NULL;
760     WHEN OTHERS THEN
761       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
762                          ,p_msg_name          => g_unexpected_error
763                          ,p_token1            => g_sqlcode_token
764                          ,p_token1_value      => sqlcode
765                          ,p_token2            => g_sqlerrm_token
766                          ,p_token2_value      => sqlerrm);
767         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
768 
769   END lock_pdt_quality_vals;
770 
771   PROCEDURE lock_pdt_quality_vals(
772      p_api_version                   IN  NUMBER
773     ,p_init_msg_list                 IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
774     ,x_return_status                 OUT NOCOPY VARCHAR2
775     ,x_msg_count                     OUT NOCOPY NUMBER
776     ,x_msg_data                      OUT NOCOPY VARCHAR2
777     ,p_qvev_tbl                      IN  qvev_tbl_type) IS
778     l_return_status                  VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
779 
780   BEGIN
781     okl_qve_pvt.lock_row(
782                          p_api_version   => p_api_version
783                         ,p_init_msg_list => p_init_msg_list
784                         ,x_return_status => x_return_status
785                         ,x_msg_count     => x_msg_count
786                         ,x_msg_data      => x_msg_data
787                         ,p_qvev_tbl      => p_qvev_tbl
788                         );
789       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
790        RAISE G_EXCEPTION_HALT_VALIDATION;
791       ELSE
792         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
793           l_return_status := x_return_status;
794            END IF;
795       END IF;
796   EXCEPTION
797     WHEN G_EXCEPTION_HALT_VALIDATION THEN
798       NULL;
799     WHEN OTHERS THEN
800       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
801                          ,p_msg_name          => g_unexpected_error
802                          ,p_token1            => g_sqlcode_token
803                          ,p_token1_value      => sqlcode
804                          ,p_token2            => g_sqlerrm_token
805                          ,p_token2_value      => sqlerrm);
806         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
807   END lock_pdt_quality_vals;
808 
809   PROCEDURE update_pdt_quality_vals(
810      p_api_version                    IN  NUMBER
811     ,p_init_msg_list                  IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
812     ,x_return_status                  OUT NOCOPY VARCHAR2
813     ,x_msg_count                      OUT NOCOPY NUMBER
814     ,x_msg_data                       OUT NOCOPY VARCHAR2
815     ,p_qvev_rec                       IN  qvev_rec_type
816     ,x_qvev_rec                       OUT NOCOPY qvev_rec_type) IS
817     l_return_status                   VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
818 
819   BEGIN
820     okl_qve_pvt.update_row(
821                            p_api_version   => p_api_version
822                           ,p_init_msg_list => p_init_msg_list
823                           ,x_return_status => x_return_status
824                           ,x_msg_count     => x_msg_count
825                           ,x_msg_data      => x_msg_data
826                           ,p_qvev_rec      => p_qvev_rec
827                           ,x_qvev_rec      => x_qvev_rec
828                           );
829       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
830        RAISE G_EXCEPTION_HALT_VALIDATION;
831       ELSE
832         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
833           l_return_status := x_return_status;
834            END IF;
835       END IF;
836   EXCEPTION
837     WHEN G_EXCEPTION_HALT_VALIDATION THEN
838       NULL;
839     WHEN OTHERS THEN
840       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
841                          ,p_msg_name          => g_unexpected_error
842                          ,p_token1            => g_sqlcode_token
843                          ,p_token1_value      => sqlcode
844                          ,p_token2            => g_sqlerrm_token
845                          ,p_token2_value      => sqlerrm);
846         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
847   END update_pdt_quality_vals;
848 
849   PROCEDURE update_pdt_quality_vals(
850      p_api_version                    IN  NUMBER
851     ,p_init_msg_list                  IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
852     ,x_return_status                  OUT NOCOPY VARCHAR2
853     ,x_msg_count                      OUT NOCOPY NUMBER
854     ,x_msg_data                       OUT NOCOPY VARCHAR2
855     ,p_qvev_tbl                       IN  qvev_tbl_type
856     ,x_qvev_tbl                       OUT NOCOPY qvev_tbl_type) IS
857     l_return_status                   VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
858 
859   BEGIN
860     okl_qve_pvt.update_row(
861                            p_api_version   => p_api_version
862                           ,p_init_msg_list => p_init_msg_list
863                           ,x_return_status => x_return_status
864                           ,x_msg_count     => x_msg_count
865                           ,x_msg_data      => x_msg_data
866                           ,p_qvev_tbl      => p_qvev_tbl
867                           ,x_qvev_tbl      => x_qvev_tbl
868                           );
869       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
870        RAISE G_EXCEPTION_HALT_VALIDATION;
871       ELSE
872         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
873           l_return_status := x_return_status;
874            END IF;
875       END IF;
876   EXCEPTION
877     WHEN G_EXCEPTION_HALT_VALIDATION THEN
878       NULL;
879     WHEN OTHERS THEN
880       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
881                          ,p_msg_name          => g_unexpected_error
882                          ,p_token1            => g_sqlcode_token
883                          ,p_token1_value      => sqlcode
884                          ,p_token2            => g_sqlerrm_token
885                          ,p_token2_value      => sqlerrm);
886         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
887   END update_pdt_quality_vals;
888 
889        --Put custom code for cascade delete by developer
890   PROCEDURE delete_pdt_quality_vals(
891      p_api_version                    IN  NUMBER
892     ,p_init_msg_list                  IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
893     ,x_return_status                  OUT NOCOPY VARCHAR2
894     ,x_msg_count                      OUT NOCOPY NUMBER
895     ,x_msg_data                       OUT NOCOPY VARCHAR2
896     ,p_qvev_rec                       IN  qvev_rec_type) IS
897     i                                 NUMBER :=0;
898     l_return_status                   VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
899   BEGIN
900     okl_qve_pvt.delete_row(
901                            p_api_version   => p_api_version
902                           ,p_init_msg_list => p_init_msg_list
903                           ,x_return_status => x_return_status
904                           ,x_msg_count     => x_msg_count
905                           ,x_msg_data      => x_msg_data
906                           ,p_qvev_rec      => p_qvev_rec);
907       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
908        RAISE G_EXCEPTION_HALT_VALIDATION;
909       ELSE
910         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
911           l_return_status := x_return_status;
912            END IF;
913       END IF;
914   EXCEPTION
915     WHEN G_EXCEPTION_HALT_VALIDATION THEN
916       NULL;
917     WHEN OTHERS THEN
918       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
919                          ,p_msg_name          => g_unexpected_error
920                          ,p_token1            => g_sqlcode_token
921                          ,p_token1_value      => sqlcode
922                          ,p_token2            => g_sqlerrm_token
923                          ,p_token2_value      => sqlerrm);
924         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
925   END delete_pdt_quality_vals;
926 
927   PROCEDURE delete_pdt_quality_vals(
928      p_api_version                    IN  NUMBER
929     ,p_init_msg_list                  IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
930     ,x_return_status                  OUT NOCOPY VARCHAR2
931     ,x_msg_count                      OUT NOCOPY NUMBER
932     ,x_msg_data                       OUT NOCOPY VARCHAR2
933     ,p_qvev_tbl                       IN  qvev_tbl_type) IS
934 
935     i                                 NUMBER :=0;
936     l_return_status                   VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
937     l_overall_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS; --TCHGS
938   BEGIN
939   --Initialize the return status
940     x_return_status := OKC_API.G_RET_STS_SUCCESS;
941     IF (p_qvev_tbl.COUNT > 0) THEN
942       i := p_qvev_tbl.FIRST;
943       LOOP
944         delete_pdt_quality_vals(
945                                   p_api_version   => p_api_version
946                                  ,p_init_msg_list => p_init_msg_list
947                                  ,x_return_status => x_return_status
948                                  ,x_msg_count     => x_msg_count
949                                  ,x_msg_data      => x_msg_data
950                                  ,p_qvev_rec      => p_qvev_tbl(i));
951 		-- TCHGS: Store the highest degree of error
952 		IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
953 		   IF l_overall_status <> OKC_API.G_RET_STS_UNEXP_ERROR THEN
954 		   	  l_overall_status := x_return_status;
955 		   END IF;
956 		END IF;
957         EXIT WHEN (i = p_qvev_tbl.LAST);
958         i := p_qvev_tbl.NEXT(i);
959        END LOOP;
960 	  --TCHGS: return overall status
961 	  x_return_status := l_overall_status;
962      END IF;
963       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
964        RAISE G_EXCEPTION_HALT_VALIDATION;
965       ELSE
966         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
967           l_return_status := x_return_status;
968            END IF;
969       END IF;
970   EXCEPTION
971     WHEN G_EXCEPTION_HALT_VALIDATION THEN
972       NULL;
973     WHEN OTHERS THEN
974       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
975                          ,p_msg_name          => g_unexpected_error
976                          ,p_token1            => g_sqlcode_token
977                          ,p_token1_value      => sqlcode
978                          ,p_token2            => g_sqlerrm_token
979                          ,p_token2_value      => sqlerrm);
980         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
981   END delete_pdt_quality_vals;
982 
983   PROCEDURE validate_pdt_quality_vals(
984      p_api_version                    IN  NUMBER
985     ,p_init_msg_list                  IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
986     ,x_return_status                  OUT NOCOPY VARCHAR2
987     ,x_msg_count                      OUT NOCOPY NUMBER
988     ,x_msg_data                       OUT NOCOPY VARCHAR2
989     ,p_qvev_rec                       IN  qvev_rec_type) IS
990     l_return_status                   VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
991   BEGIN
992     okl_qve_pvt.validate_row(
993                              p_api_version   => p_api_version
994                             ,p_init_msg_list => p_init_msg_list
995                             ,x_return_status => x_return_status
996                             ,x_msg_count     => x_msg_count
997                             ,x_msg_data      => x_msg_data
998                             ,p_qvev_rec      => p_qvev_rec
999                             );
1000       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
1001        RAISE G_EXCEPTION_HALT_VALIDATION;
1002       ELSE
1003         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
1004           l_return_status := x_return_status;
1005            END IF;
1006       END IF;
1007   EXCEPTION
1008     WHEN G_EXCEPTION_HALT_VALIDATION THEN
1009       NULL;
1010     WHEN OTHERS THEN
1011       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
1012                          ,p_msg_name          => g_unexpected_error
1013                          ,p_token1            => g_sqlcode_token
1014                          ,p_token1_value      => sqlcode
1015                          ,p_token2            => g_sqlerrm_token
1016                          ,p_token2_value      => sqlerrm);
1017         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
1018   END validate_pdt_quality_vals;
1019 
1020   PROCEDURE validate_pdt_quality_vals(
1021      p_api_version                    IN  NUMBER
1022     ,p_init_msg_list                  IN  VARCHAR2 DEFAULT OKC_API.G_FALSE
1023     ,x_return_status                  OUT NOCOPY VARCHAR2
1024     ,x_msg_count                      OUT NOCOPY NUMBER
1025     ,x_msg_data                       OUT NOCOPY VARCHAR2
1026     ,p_qvev_tbl                       IN  qvev_tbl_type) IS
1027     l_return_status                   VARCHAR2(1)   := OKC_API.G_RET_STS_SUCCESS;
1028   BEGIN
1029     okl_qve_pvt.validate_row(
1030                              p_api_version   => p_api_version
1031                             ,p_init_msg_list => p_init_msg_list
1032                             ,x_return_status => x_return_status
1033                             ,x_msg_count     => x_msg_count
1034                             ,x_msg_data      => x_msg_data
1035                             ,p_qvev_tbl      => p_qvev_tbl
1036                             );
1037       IF x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
1038        RAISE G_EXCEPTION_HALT_VALIDATION;
1039       ELSE
1040         IF x_return_status <> OKC_API.G_RET_STS_SUCCESS THEN
1041           l_return_status := x_return_status;
1042            END IF;
1043       END IF;
1044   EXCEPTION
1045     WHEN G_EXCEPTION_HALT_VALIDATION THEN
1046       NULL;
1047     WHEN OTHERS THEN
1048       OKC_API.SET_MESSAGE(p_app_name          => g_app_name
1049                          ,p_msg_name          => g_unexpected_error
1050                          ,p_token1            => g_sqlcode_token
1051                          ,p_token1_value      => sqlcode
1052                          ,p_token2            => g_sqlerrm_token
1053                          ,p_token2_value      => sqlerrm);
1054         x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
1055   END validate_pdt_quality_vals;
1056 
1057 END OKL_PDT_QUALITYS_PVT;