DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKC_PAV_PVT

Source


1 PACKAGE BODY OKC_PAV_PVT AS
2 /* $Header: OKCSPAVB.pls 120.1 2010/11/16 14:54:29 nvvaidya ship $ */
3 
4 	l_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('AFLOG_ENABLED'),'N');
5   ---------------------------------------------------------------------------
6   -- FUNCTION get_seq_id
7   ---------------------------------------------------------------------------
8   FUNCTION get_seq_id RETURN NUMBER IS
9   BEGIN
10     RETURN(okc_p_util.raw_to_number(sys_guid()));
11   END get_seq_id;
12 
13   ---------------------------------------------------------------------------
14   -- PROCEDURE qc
15   ---------------------------------------------------------------------------
16   PROCEDURE qc IS
17   BEGIN
18     null;
19   END qc;
20 
21   ---------------------------------------------------------------------------
22   -- PROCEDURE change_version
23   ---------------------------------------------------------------------------
24   PROCEDURE change_version IS
25   BEGIN
26     null;
27   END change_version;
28 
29   ---------------------------------------------------------------------------
30   -- PROCEDURE api_copy
31   ---------------------------------------------------------------------------
32   PROCEDURE api_copy IS
33   BEGIN
34     null;
35   END api_copy;
36 
37   FUNCTION get_rec (
38     p_pav_rec                      IN   OKC_PAV_PVT.pav_rec_type,
39     x_no_data_found                OUT NOCOPY BOOLEAN
40   ) RETURN OKC_PAV_PVT.pav_rec_type IS
41     l_pav_rec                      OKC_PAV_PVT.pav_rec_type;
42      BEGIN
43 --SUbstitute name
44    l_pav_rec:= OKC_SPLIT1_PAV_PVT.get_rec(p_pav_rec,x_no_data_found );
45 ---
46    RETURN(l_pav_rec);
47   END get_rec;
48 
49   FUNCTION get_rec (
50     p_pav_rec                      IN OKC_PAV_PVT.pav_rec_type
51   ) RETURN OKC_PAV_PVT.pav_rec_type IS
52     l_row_notfound                 BOOLEAN := TRUE;
53   BEGIN
54     RETURN(get_rec(p_pav_rec, l_row_notfound));
55   END get_rec;
56 
57 
58  ---------------------------------------------------------------------------
59   -- FUNCTION get_rec for: OKC_PRICE_ATT_VALUES_V
60   ---------------------------------------------------------------------------
61   FUNCTION get_rec (
62     p_pavv_rec                     IN pavv_rec_type,
63     x_no_data_found                OUT NOCOPY BOOLEAN
64   ) RETURN pavv_rec_type IS
65       l_pavv_rec                     pavv_rec_type;
66      BEGIN
67 -------------------------------------------
68 l_pavv_rec :=OKC_SPLIT1_PAV_PVT.get_rec(p_pavv_rec  , x_no_data_found);
69 --------------------------------------------
70     RETURN(l_pavv_rec);
71   END get_rec;
72 
73   FUNCTION get_rec (
74     p_pavv_rec                     IN pavv_rec_type
75   ) RETURN pavv_rec_type IS
76     l_row_notfound                 BOOLEAN := TRUE;
77   BEGIN
78     RETURN(get_rec(p_pavv_rec, l_row_notfound));
79   END get_rec;
80 
81   ------------------------------------------------------------
82   -- FUNCTION null_out_defaults for: OKC_PRICE_ATT_VALUES_V --
83   ------------------------------------------------------------
84   FUNCTION null_out_defaults (
85     p_pavv_rec	IN pavv_rec_type
86   ) RETURN pavv_rec_type IS
87     l_pavv_rec	pavv_rec_type := p_pavv_rec;
88   BEGIN
89 --------------
90 l_pavv_rec :=OKC_SPLIT1_PAV_PVT.null_out_defaults( p_pavv_rec );
91 
92 -------------
93 
94     RETURN(l_pavv_rec);
95   END null_out_defaults;
96 
97 
98  ---------------------------------------------------------------------------------------
99   --Attribute Level Validattion Procedures Starts(Modification on TAPI generated Code.)--
100   ---------------------------------------------------------------------------------------
101   ---------------------------------------------------------------------------
102   -- PROCEDURE Validate_id
103   ---------------------------------------------------------------------------
104   PROCEDURE validate_id(
105     p_pavv_rec          IN pavv_rec_type,
106     x_return_status 	OUT NOCOPY VARCHAR2) IS
107     l_return_status	VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
108   BEGIN
109     IF p_pavv_rec.id = OKC_API.G_MISS_NUM OR
110        p_pavv_rec.id IS NULL
111     THEN
112       OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'id');
113       l_return_status := OKC_API.G_RET_STS_ERROR;
114     END IF;
115     x_return_status := l_return_status;
116   EXCEPTION
117     WHEN OTHERS THEN
118       -- store SQL error message on message stack for caller
119       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
120       -- notify caller of an UNEXPECTED error
121       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
122   END validate_id;
123   ---------------------------------------------------------------------------
124   -- PROCEDURE Validate_Attributes
125   ---------------------------------------------------------------------------
126   ----------------------------------------------------
127   -- Validate_Attributes for:OKC_PRICE_ATT_VALUES_V --
128   ----------------------------------------------------
129   FUNCTION Validate_Attributes (
130     p_pavv_rec IN  pavv_rec_type
131   ) RETURN VARCHAR2 IS
132     x_return_status	VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
133     l_return_status	VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
134   BEGIN
135      ---------------------------------------------------------------------------------------
136   --Attribute Level Validation Procedure Calls Starts(Modification on TAPI generated Code.)--
137   ---------------------------------------------------------------------------------------
138     OKC_UTIL.ADD_VIEW('OKC_PRICE_ATT_VALUES_V', l_return_status);
139     IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
140       IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN  -- need to leave
141         x_return_status := l_return_status;
142         RAISE G_EXCEPTION_HALT_VALIDATION;
143       ELSE
144         x_return_status := l_return_status;   -- record that there was an error
145       END IF;
146     END IF;
147 
148     VALIDATE_id(p_pavv_rec, l_return_status);
149     IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
150       IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN  -- need to leave
151         x_return_status := l_return_status;
152         RAISE G_EXCEPTION_HALT_VALIDATION;
153       ELSE
154         x_return_status := l_return_status;   -- record that there was an error
155       END IF;
156     END IF;
157 
158 RETURN(x_return_status);
159   EXCEPTION
160     WHEN G_EXCEPTION_HALT_VALIDATION THEN
161       return(x_return_status);
162     WHEN OTHERS THEN
163       -- store SQL error message on message stack for caller
164       OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
165       -- notify caller of an UNEXPECTED error
166       x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
167       return(x_return_status);
168   ---------------------------------------------------------------------------------------
169   --Attribute Level Validation Procedure Calls Ends(Modification on TAPI generated Code.)--
170   ---------------------------------------------------------------------------------------
171 
172   END Validate_Attributes;
173 
174   ---------------------------------------------------------------------------
175   -- PROCEDURE Validate_Record
176   ---------------------------------------------------------------------------
177   ------------------------------------------------
178   -- Validate_Record for:OKC_PRICE_ATT_VALUES_V --
179   ------------------------------------------------
180   FUNCTION Validate_Record (
181     p_pavv_rec IN pavv_rec_type
182   ) RETURN VARCHAR2 IS
183     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
184     ------------------------------------
185     -- FUNCTION validate_foreign_keys --
186     ------------------------------------
187     FUNCTION validate_foreign_keys (
188       p_pavv_rec IN pavv_rec_type
189     ) RETURN VARCHAR2 IS
190       item_not_found_error          EXCEPTION;
191       CURSOR okc_chrv_pk_csr (p_id                 IN NUMBER) IS
192       SELECT
193               'x'
194         FROM Okc_K_Headers_B
195        WHERE okc_k_headers_b.id   = p_id;
196       l_okc_chrv_pk                  okc_chrv_pk_csr%ROWTYPE;
197       CURSOR okc_clev_pk_csr (p_id                 IN NUMBER) IS
198       SELECT
199               'x'
200         FROM Okc_K_Lines_B
201        WHERE okc_k_lines_b.id     = p_id;
202       l_okc_clev_pk                  okc_clev_pk_csr%ROWTYPE;
203       l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
204       l_row_notfound                 BOOLEAN := TRUE;
205     BEGIN
206       IF (p_pavv_rec.CHR_ID IS NOT NULL)
207       THEN
208         OPEN okc_chrv_pk_csr(p_pavv_rec.CHR_ID);
209         FETCH okc_chrv_pk_csr INTO l_okc_chrv_pk;
210         l_row_notfound := okc_chrv_pk_csr%NOTFOUND;
211         CLOSE okc_chrv_pk_csr;
212         IF (l_row_notfound) THEN
213           OKC_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'CHR_ID');
214           RAISE item_not_found_error;
215         END IF;
216       END IF;
217       IF (p_pavv_rec.CLE_ID IS NOT NULL)
218       THEN
219         OPEN okc_clev_pk_csr(p_pavv_rec.CLE_ID);
220         FETCH okc_clev_pk_csr INTO l_okc_clev_pk;
221         l_row_notfound := okc_clev_pk_csr%NOTFOUND;
222         CLOSE okc_clev_pk_csr;
223         IF (l_row_notfound) THEN
224           OKC_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'CLE_ID');
225           RAISE item_not_found_error;
226         END IF;
227       END IF;
228       RETURN (l_return_status);
229     EXCEPTION
230       WHEN item_not_found_error THEN
231         l_return_status := OKC_API.G_RET_STS_ERROR;
232         RETURN (l_return_status);
233     END validate_foreign_keys;
234   BEGIN
235     l_return_status := validate_foreign_keys (p_pavv_rec);
236     RETURN (l_return_status);
237   END Validate_Record;
238 
239   ---------------------------------------------------------------------------
240   -- PROCEDURE Migrate
241   ---------------------------------------------------------------------------
242   PROCEDURE migrate (
243     p_from	IN pavv_rec_type,
244     p_to	IN OUT NOCOPY pav_rec_type
245   ) IS
246   BEGIN
247  ---------------
248 
249  OKC_SPLIT2_PAV_PVT.migrate(p_from , p_to);
250 ------------
251   END migrate;
252 
253 
254 
255   PROCEDURE migrate (
256     p_from	IN pav_rec_type,
257     p_to	IN OUT NOCOPY pavv_rec_type
258   ) IS
259   BEGIN
260     p_to.id := p_from.id;
261     p_to.flex_title := p_from.flex_title;
262     p_to.pricing_context := p_from.pricing_context;
263     p_to.pricing_attribute1 := p_from.pricing_attribute1;
264     p_to.chr_id := p_from.chr_id;
265     p_to.pricing_attribute2 := p_from.pricing_attribute2;
266     p_to.cle_id := p_from.cle_id;
267     p_to.pricing_attribute3 := p_from.pricing_attribute3;
268     p_to.pricing_attribute4 := p_from.pricing_attribute4;
269     p_to.pricing_attribute5 := p_from.pricing_attribute5;
270     p_to.pricing_attribute6 := p_from.pricing_attribute6;
271     p_to.pricing_attribute7 := p_from.pricing_attribute7;
272     p_to.pricing_attribute8 := p_from.pricing_attribute8;
273     p_to.pricing_attribute9 := p_from.pricing_attribute9;
274     p_to.pricing_attribute10 := p_from.pricing_attribute10;
275     p_to.pricing_attribute11 := p_from.pricing_attribute11;
276     p_to.pricing_attribute12 := p_from.pricing_attribute12;
277     p_to.pricing_attribute13 := p_from.pricing_attribute13;
278     p_to.pricing_attribute14 := p_from.pricing_attribute14;
279     p_to.pricing_attribute15 := p_from.pricing_attribute15;
280     p_to.pricing_attribute16 := p_from.pricing_attribute16;
281     p_to.pricing_attribute17 := p_from.pricing_attribute17;
282     p_to.pricing_attribute18 := p_from.pricing_attribute18;
283     p_to.pricing_attribute19 := p_from.pricing_attribute19;
284     p_to.pricing_attribute20 := p_from.pricing_attribute20;
285     p_to.pricing_attribute21 := p_from.pricing_attribute21;
286     p_to.pricing_attribute22 := p_from.pricing_attribute22;
287     p_to.pricing_attribute23 := p_from.pricing_attribute23;
288     p_to.pricing_attribute24 := p_from.pricing_attribute24;
289     p_to.pricing_attribute25 := p_from.pricing_attribute25;
290     p_to.pricing_attribute26 := p_from.pricing_attribute26;
291     p_to.pricing_attribute27 := p_from.pricing_attribute27;
292     p_to.pricing_attribute28 := p_from.pricing_attribute28;
293     p_to.pricing_attribute29 := p_from.pricing_attribute29;
294     p_to.pricing_attribute30 := p_from.pricing_attribute30;
295     p_to.pricing_attribute31 := p_from.pricing_attribute31;
296     p_to.pricing_attribute32 := p_from.pricing_attribute32;
297     p_to.pricing_attribute33 := p_from.pricing_attribute33;
298     p_to.pricing_attribute34 := p_from.pricing_attribute34;
299     p_to.pricing_attribute35 := p_from.pricing_attribute35;
300     p_to.pricing_attribute36 := p_from.pricing_attribute36;
301     p_to.pricing_attribute37 := p_from.pricing_attribute37;
302     p_to.pricing_attribute38 := p_from.pricing_attribute38;
303     p_to.pricing_attribute39 := p_from.pricing_attribute39;
304     p_to.pricing_attribute40 := p_from.pricing_attribute40;
305     p_to.pricing_attribute41 := p_from.pricing_attribute41;
306     p_to.pricing_attribute42 := p_from.pricing_attribute42;
307     p_to.pricing_attribute43 := p_from.pricing_attribute43;
308     p_to.pricing_attribute44 := p_from.pricing_attribute44;
309     p_to.pricing_attribute45 := p_from.pricing_attribute45;
310     p_to.pricing_attribute46 := p_from.pricing_attribute46;
311     p_to.pricing_attribute47 := p_from.pricing_attribute47;
312     p_to.pricing_attribute48 := p_from.pricing_attribute48;
313     p_to.pricing_attribute49 := p_from.pricing_attribute49;
314     p_to.pricing_attribute50 := p_from.pricing_attribute50;
315     p_to.pricing_attribute51 := p_from.pricing_attribute51;
316     p_to.pricing_attribute52 := p_from.pricing_attribute52;
317     p_to.pricing_attribute53 := p_from.pricing_attribute53;
318     p_to.pricing_attribute54 := p_from.pricing_attribute54;
319     p_to.pricing_attribute55 := p_from.pricing_attribute55;
320     p_to.pricing_attribute56 := p_from.pricing_attribute56;
321     p_to.pricing_attribute57 := p_from.pricing_attribute57;
322     p_to.pricing_attribute58 := p_from.pricing_attribute58;
323     p_to.pricing_attribute59 := p_from.pricing_attribute59;
324     p_to.pricing_attribute60 := p_from.pricing_attribute60;
325     p_to.pricing_attribute61 := p_from.pricing_attribute61;
326     p_to.pricing_attribute62 := p_from.pricing_attribute62;
327     p_to.pricing_attribute63 := p_from.pricing_attribute63;
328     p_to.pricing_attribute64 := p_from.pricing_attribute64;
329     p_to.pricing_attribute65 := p_from.pricing_attribute65;
330     p_to.pricing_attribute66 := p_from.pricing_attribute66;
331     p_to.pricing_attribute67 := p_from.pricing_attribute67;
332     p_to.pricing_attribute68 := p_from.pricing_attribute68;
333     p_to.pricing_attribute69 := p_from.pricing_attribute69;
334     p_to.pricing_attribute70 := p_from.pricing_attribute70;
335     p_to.pricing_attribute71 := p_from.pricing_attribute71;
336     p_to.pricing_attribute72 := p_from.pricing_attribute72;
337     p_to.pricing_attribute73 := p_from.pricing_attribute73;
338     p_to.pricing_attribute74 := p_from.pricing_attribute74;
339     p_to.pricing_attribute75 := p_from.pricing_attribute75;
340     p_to.pricing_attribute76 := p_from.pricing_attribute76;
341     p_to.pricing_attribute77 := p_from.pricing_attribute77;
342     p_to.pricing_attribute78 := p_from.pricing_attribute78;
343     p_to.pricing_attribute79 := p_from.pricing_attribute79;
344     p_to.pricing_attribute80 := p_from.pricing_attribute80;
345     p_to.pricing_attribute81 := p_from.pricing_attribute81;
346     p_to.pricing_attribute82 := p_from.pricing_attribute82;
347     p_to.pricing_attribute83 := p_from.pricing_attribute83;
348     p_to.pricing_attribute84 := p_from.pricing_attribute84;
349     p_to.pricing_attribute85 := p_from.pricing_attribute85;
350     p_to.pricing_attribute86 := p_from.pricing_attribute86;
351     p_to.pricing_attribute87 := p_from.pricing_attribute87;
352     p_to.pricing_attribute88 := p_from.pricing_attribute88;
353     p_to.pricing_attribute89 := p_from.pricing_attribute89;
354     p_to.pricing_attribute90 := p_from.pricing_attribute90;
355     p_to.pricing_attribute91 := p_from.pricing_attribute91;
356     p_to.pricing_attribute92 := p_from.pricing_attribute92;
357     p_to.pricing_attribute93 := p_from.pricing_attribute93;
358     p_to.pricing_attribute94 := p_from.pricing_attribute94;
359     p_to.pricing_attribute95 := p_from.pricing_attribute95;
360     p_to.pricing_attribute96 := p_from.pricing_attribute96;
361     p_to.pricing_attribute97 := p_from.pricing_attribute97;
362     p_to.pricing_attribute98 := p_from.pricing_attribute98;
363     p_to.pricing_attribute99 := p_from.pricing_attribute99;
364     p_to.pricing_attribute100 := p_from.pricing_attribute100;
365     p_to.qualifier_context := p_from.qualifier_context;
366     p_to.qualifier_attribute1 := p_from.qualifier_attribute1;
367     p_to.qualifier_attribute2 := p_from.qualifier_attribute2;
368     p_to.created_by := p_from.created_by;
369     p_to.qualifier_attribute3 := p_from.qualifier_attribute3;
370     p_to.creation_date := p_from.creation_date;
371     p_to.qualifier_attribute4 := p_from.qualifier_attribute4;
372     p_to.qualifier_attribute5 := p_from.qualifier_attribute5;
373     p_to.last_updated_by := p_from.last_updated_by;
374     p_to.qualifier_attribute6 := p_from.qualifier_attribute6;
375     p_to.last_update_date := p_from.last_update_date;
376     p_to.qualifier_attribute7 := p_from.qualifier_attribute7;
377     p_to.qualifier_attribute8 := p_from.qualifier_attribute8;
378     p_to.qualifier_attribute9 := p_from.qualifier_attribute9;
379     p_to.qualifier_attribute10 := p_from.qualifier_attribute10;
380     p_to.qualifier_attribute11 := p_from.qualifier_attribute11;
381     p_to.qualifier_attribute12 := p_from.qualifier_attribute12;
382     p_to.qualifier_attribute13 := p_from.qualifier_attribute13;
383     p_to.qualifier_attribute14 := p_from.qualifier_attribute14;
384     p_to.qualifier_attribute15 := p_from.qualifier_attribute15;
385     p_to.qualifier_attribute16 := p_from.qualifier_attribute16;
386     p_to.qualifier_attribute17 := p_from.qualifier_attribute17;
387     p_to.qualifier_attribute18 := p_from.qualifier_attribute18;
388     p_to.qualifier_attribute19 := p_from.qualifier_attribute19;
389     p_to.qualifier_attribute20 := p_from.qualifier_attribute20;
390     p_to.qualifier_attribute21 := p_from.qualifier_attribute21;
391     p_to.qualifier_attribute22 := p_from.qualifier_attribute22;
392     p_to.qualifier_attribute23 := p_from.qualifier_attribute23;
393     p_to.qualifier_attribute24 := p_from.qualifier_attribute24;
394     p_to.qualifier_attribute25 := p_from.qualifier_attribute25;
395     p_to.qualifier_attribute26 := p_from.qualifier_attribute26;
396     p_to.qualifier_attribute27 := p_from.qualifier_attribute27;
397     p_to.qualifier_attribute28 := p_from.qualifier_attribute28;
398     p_to.qualifier_attribute29 := p_from.qualifier_attribute29;
399     p_to.qualifier_attribute30 := p_from.qualifier_attribute30;
400     p_to.qualifier_attribute31 := p_from.qualifier_attribute31;
401     p_to.qualifier_attribute32 := p_from.qualifier_attribute32;
402     p_to.qualifier_attribute33 := p_from.qualifier_attribute33;
403     p_to.qualifier_attribute34 := p_from.qualifier_attribute34;
404     p_to.qualifier_attribute35 := p_from.qualifier_attribute35;
405     p_to.qualifier_attribute36 := p_from.qualifier_attribute36;
406     p_to.qualifier_attribute37 := p_from.qualifier_attribute37;
407     p_to.qualifier_attribute38 := p_from.qualifier_attribute38;
408     p_to.qualifier_attribute39 := p_from.qualifier_attribute39;
409     p_to.qualifier_attribute40 := p_from.qualifier_attribute40;
410     p_to.qualifier_attribute41 := p_from.qualifier_attribute41;
411     p_to.qualifier_attribute42 := p_from.qualifier_attribute42;
412     p_to.qualifier_attribute43 := p_from.qualifier_attribute43;
413     p_to.qualifier_attribute44 := p_from.qualifier_attribute44;
414     p_to.qualifier_attribute45 := p_from.qualifier_attribute45;
415     p_to.qualifier_attribute46 := p_from.qualifier_attribute46;
416     p_to.qualifier_attribute47 := p_from.qualifier_attribute47;
417     p_to.qualifier_attribute48 := p_from.qualifier_attribute48;
418     p_to.qualifier_attribute49 := p_from.qualifier_attribute49;
419     p_to.qualifier_attribute50 := p_from.qualifier_attribute50;
420     p_to.qualifier_attribute51 := p_from.qualifier_attribute51;
421     p_to.qualifier_attribute52 := p_from.qualifier_attribute52;
422     p_to.qualifier_attribute53 := p_from.qualifier_attribute53;
423     p_to.qualifier_attribute54 := p_from.qualifier_attribute54;
424     p_to.qualifier_attribute55 := p_from.qualifier_attribute55;
425     p_to.qualifier_attribute56 := p_from.qualifier_attribute56;
426     p_to.qualifier_attribute57 := p_from.qualifier_attribute57;
427     p_to.qualifier_attribute58 := p_from.qualifier_attribute58;
428     p_to.qualifier_attribute59 := p_from.qualifier_attribute59;
429     p_to.qualifier_attribute60 := p_from.qualifier_attribute60;
430     p_to.qualifier_attribute61 := p_from.qualifier_attribute61;
431     p_to.qualifier_attribute62 := p_from.qualifier_attribute62;
432     p_to.qualifier_attribute63 := p_from.qualifier_attribute63;
433     p_to.qualifier_attribute64 := p_from.qualifier_attribute64;
434     p_to.qualifier_attribute65 := p_from.qualifier_attribute65;
435     p_to.qualifier_attribute66 := p_from.qualifier_attribute66;
436     p_to.qualifier_attribute67 := p_from.qualifier_attribute67;
437     p_to.qualifier_attribute68 := p_from.qualifier_attribute68;
438     p_to.qualifier_attribute69 := p_from.qualifier_attribute69;
439     p_to.qualifier_attribute70 := p_from.qualifier_attribute70;
440     p_to.qualifier_attribute71 := p_from.qualifier_attribute71;
441     p_to.qualifier_attribute72 := p_from.qualifier_attribute72;
442     p_to.qualifier_attribute73 := p_from.qualifier_attribute73;
443     p_to.qualifier_attribute74 := p_from.qualifier_attribute74;
444     p_to.qualifier_attribute75 := p_from.qualifier_attribute75;
445     p_to.qualifier_attribute76 := p_from.qualifier_attribute76;
446     p_to.qualifier_attribute77 := p_from.qualifier_attribute77;
447     p_to.qualifier_attribute78 := p_from.qualifier_attribute78;
448     p_to.qualifier_attribute79 := p_from.qualifier_attribute79;
449     p_to.qualifier_attribute80 := p_from.qualifier_attribute80;
450     p_to.qualifier_attribute81 := p_from.qualifier_attribute81;
451     p_to.qualifier_attribute82 := p_from.qualifier_attribute82;
452     p_to.qualifier_attribute83 := p_from.qualifier_attribute83;
453     p_to.qualifier_attribute84 := p_from.qualifier_attribute84;
454     p_to.qualifier_attribute85 := p_from.qualifier_attribute85;
455     p_to.qualifier_attribute86 := p_from.qualifier_attribute86;
456     p_to.qualifier_attribute87 := p_from.qualifier_attribute87;
457     p_to.qualifier_attribute88 := p_from.qualifier_attribute88;
458     p_to.qualifier_attribute89 := p_from.qualifier_attribute89;
459     p_to.qualifier_attribute90 := p_from.qualifier_attribute90;
460     p_to.qualifier_attribute91 := p_from.qualifier_attribute91;
461     p_to.qualifier_attribute92 := p_from.qualifier_attribute92;
462     p_to.qualifier_attribute93 := p_from.qualifier_attribute93;
463     p_to.qualifier_attribute94 := p_from.qualifier_attribute94;
464     p_to.qualifier_attribute95 := p_from.qualifier_attribute95;
465     p_to.qualifier_attribute96 := p_from.qualifier_attribute96;
466     p_to.qualifier_attribute97 := p_from.qualifier_attribute97;
467     p_to.qualifier_attribute98 := p_from.qualifier_attribute98;
468     p_to.qualifier_attribute99 := p_from.qualifier_attribute99;
469     p_to.qualifier_attribute100 := p_from.qualifier_attribute100;
470     p_to.last_update_login := p_from.last_update_login;
471     p_to.program_application_id := p_from.program_application_id;
472     p_to.program_id := p_from.program_id;
473     p_to.program_update_date:= p_from.program_update_date;
474     p_to.request_id := p_from.request_id;
475     p_to.object_version_number := p_from.object_version_number;
476     END migrate;
477 
478   ---------------------------------------------------------------------------
479   -- PROCEDURE validate_row
480   ---------------------------------------------------------------------------
481   ---------------------------------------------
482   -- validate_row for:OKC_PRICE_ATT_VALUES_V --
483   ---------------------------------------------
484   PROCEDURE validate_row(
485     p_api_version                  IN NUMBER,
486     p_init_msg_list                IN VARCHAR2 ,
487     x_return_status                OUT NOCOPY VARCHAR2,
488     x_msg_count                    OUT NOCOPY NUMBER,
489     x_msg_data                     OUT NOCOPY VARCHAR2,
490     p_pavv_rec                     IN pavv_rec_type) IS
491 
492     l_api_version                 CONSTANT NUMBER := 1;
493     l_api_name                     CONSTANT VARCHAR2(30) := 'V_validate_row';
494     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
495     l_pavv_rec                     pavv_rec_type := p_pavv_rec;
496     l_pav_rec                      pav_rec_type;
497   BEGIN
498     l_return_status := OKC_API.START_ACTIVITY(l_api_name,
499                                               G_PKG_NAME,
500                                               p_init_msg_list,
501                                               l_api_version,
502                                               p_api_version,
503                                               '_PVT',
504                                               x_return_status);
505     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
506       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
507     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
508       RAISE OKC_API.G_EXCEPTION_ERROR;
509     END IF;
510     --- Validate all non-missing attributes (Item Level Validation)
511     l_return_status := Validate_Attributes(l_pavv_rec);
512     --- If any errors happen abort API
513     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
514       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
515     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
516       RAISE OKC_API.G_EXCEPTION_ERROR;
517     END IF;
518     l_return_status := Validate_Record(l_pavv_rec);
519     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
520       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
521     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
522       RAISE OKC_API.G_EXCEPTION_ERROR;
523     END IF;
524     OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
525   EXCEPTION
526     WHEN OKC_API.G_EXCEPTION_ERROR THEN
527       x_return_status := OKC_API.HANDLE_EXCEPTIONS
528       (
529         l_api_name,
530         G_PKG_NAME,
531         'OKC_API.G_RET_STS_ERROR',
532         x_msg_count,
533         x_msg_data,
534         '_PVT'
535       );
536     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
537       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
538       (
539         l_api_name,
540         G_PKG_NAME,
541         'OKC_API.G_RET_STS_UNEXP_ERROR',
542         x_msg_count,
543         x_msg_data,
544         '_PVT'
545       );
546     WHEN OTHERS THEN
547       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
548       (
549         l_api_name,
550         G_PKG_NAME,
551         'OTHERS',
552         x_msg_count,
553         x_msg_data,
554         '_PVT'
555       );
556   END validate_row;
557   ------------------------------------------
558   -- PL/SQL TBL validate_row for:PAVV_TBL --
559   ------------------------------------------
560   PROCEDURE validate_row(
561     p_api_version                  IN NUMBER,
562     p_init_msg_list                IN VARCHAR2 ,
563     x_return_status                OUT NOCOPY VARCHAR2,
564     x_msg_count                    OUT NOCOPY NUMBER,
565     x_msg_data                     OUT NOCOPY VARCHAR2,
566     p_pavv_tbl                     IN pavv_tbl_type) IS
567 
568     l_api_version                 CONSTANT NUMBER := 1;
569     l_api_name                     CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
570     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
571     i                              NUMBER := 0;
572   BEGIN
573     OKC_API.init_msg_list(p_init_msg_list);
574     -- Make sure PL/SQL table has records in it before passing
575     IF (p_pavv_tbl.COUNT > 0) THEN
576       i := p_pavv_tbl.FIRST;
577       LOOP
578         validate_row (
579           p_api_version                  => p_api_version,
580           p_init_msg_list                => OKC_API.G_FALSE,
581           x_return_status                => x_return_status,
582           x_msg_count                    => x_msg_count,
583           x_msg_data                     => x_msg_data,
584           p_pavv_rec                     => p_pavv_tbl(i));
585         EXIT WHEN (i = p_pavv_tbl.LAST);
586         i := p_pavv_tbl.NEXT(i);
587       END LOOP;
588     END IF;
589   EXCEPTION
590     WHEN OKC_API.G_EXCEPTION_ERROR THEN
591       x_return_status := OKC_API.HANDLE_EXCEPTIONS
592       (
593         l_api_name,
594         G_PKG_NAME,
595         'OKC_API.G_RET_STS_ERROR',
596         x_msg_count,
597         x_msg_data,
598         '_PVT'
599       );
600     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
601       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
602       (
603         l_api_name,
604         G_PKG_NAME,
605         'OKC_API.G_RET_STS_UNEXP_ERROR',
606         x_msg_count,
607         x_msg_data,
608         '_PVT'
609       );
610     WHEN OTHERS THEN
611       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
612       (
613         l_api_name,
614         G_PKG_NAME,
615         'OTHERS',
616         x_msg_count,
617         x_msg_data,
618         '_PVT'
619       );
620   END validate_row;
621 
622   ---------------------------------------------------------------------------
623   -- PROCEDURE insert_row
624   ---------------------------------------------------------------------------
625   -----------------------------------------
626   -- insert_row for:OKC_PRICE_ATT_VALUES --
627   -----------------------------------------
628   PROCEDURE insert_row(
629     p_init_msg_list                IN VARCHAR2 ,
630     x_return_status                OUT NOCOPY VARCHAR2,
631     x_msg_count                    OUT NOCOPY NUMBER,
632     x_msg_data                     OUT NOCOPY VARCHAR2,
633     p_pav_rec                      IN pav_rec_type,
634     x_pav_rec                      OUT NOCOPY pav_rec_type) IS
635 
636     l_api_version                 CONSTANT NUMBER := 1;
637     l_api_name                     CONSTANT VARCHAR2(30) := 'VALUES_insert_row';
638     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
639     l_pav_rec                      pav_rec_type := p_pav_rec;
640     l_def_pav_rec                  pav_rec_type;
641     ---------------------------------------------
642     -- Set_Attributes for:OKC_PRICE_ATT_VALUES --
643     ---------------------------------------------
644     FUNCTION Set_Attributes (
645       p_pav_rec IN  pav_rec_type,
646       x_pav_rec OUT NOCOPY pav_rec_type
647     ) RETURN VARCHAR2 IS
648       l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
649     BEGIN
650       x_pav_rec := p_pav_rec;
651       RETURN(l_return_status);
652     END Set_Attributes;
653   BEGIN
654     l_return_status := OKC_API.START_ACTIVITY(l_api_name,
655                                               p_init_msg_list,
656                                               '_PVT',
657                                               x_return_status);
658     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
659       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
660     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
661       RAISE OKC_API.G_EXCEPTION_ERROR;
662     END IF;
663     --- Setting item attributes
664     l_return_status := Set_Attributes(
665       p_pav_rec,                         -- IN
666       l_pav_rec);                        -- OUT
667     --- If any errors happen abort API
668     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
669       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
670     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
671       RAISE OKC_API.G_EXCEPTION_ERROR;
672     END IF;
673     INSERT INTO OKC_PRICE_ATT_VALUES(
674         id,
675         flex_title,
676         pricing_context,
677         pricing_attribute1,
678         chr_id,
679         pricing_attribute2,
680         cle_id,
681         pricing_attribute3,
682         pricing_attribute4,
683         pricing_attribute5,
684         pricing_attribute6,
685         pricing_attribute7,
686         pricing_attribute8,
687         pricing_attribute9,
688         pricing_attribute10,
689         pricing_attribute11,
690         pricing_attribute12,
691         pricing_attribute13,
692         pricing_attribute14,
693         pricing_attribute15,
694         pricing_attribute16,
695         pricing_attribute17,
696         pricing_attribute18,
697         pricing_attribute19,
698         pricing_attribute20,
699         pricing_attribute21,
700         pricing_attribute22,
701         pricing_attribute23,
702         pricing_attribute24,
703         pricing_attribute25,
704         pricing_attribute26,
705         pricing_attribute27,
706         pricing_attribute28,
707         pricing_attribute29,
708         pricing_attribute30,
709         pricing_attribute31,
710         pricing_attribute32,
711         pricing_attribute33,
712         pricing_attribute34,
713         pricing_attribute35,
714         pricing_attribute36,
715         pricing_attribute37,
716         pricing_attribute38,
717         pricing_attribute39,
718         pricing_attribute40,
719         pricing_attribute41,
720         pricing_attribute42,
721         pricing_attribute43,
722         pricing_attribute44,
723         pricing_attribute45,
724         pricing_attribute46,
725         pricing_attribute47,
726         pricing_attribute48,
727         pricing_attribute49,
728         pricing_attribute50,
729         pricing_attribute51,
730         pricing_attribute52,
731         pricing_attribute53,
732         pricing_attribute54,
733         pricing_attribute55,
734         pricing_attribute56,
735         pricing_attribute57,
736         pricing_attribute58,
737         pricing_attribute59,
738         pricing_attribute60,
739         pricing_attribute61,
740         pricing_attribute62,
741         pricing_attribute63,
742         pricing_attribute64,
743         pricing_attribute65,
744         pricing_attribute66,
745         pricing_attribute67,
746         pricing_attribute68,
747         pricing_attribute69,
748         pricing_attribute70,
749         pricing_attribute71,
750         pricing_attribute72,
751         pricing_attribute73,
752         pricing_attribute74,
753         pricing_attribute75,
754         pricing_attribute76,
755         pricing_attribute77,
756         pricing_attribute78,
757         pricing_attribute79,
758         pricing_attribute80,
759         pricing_attribute81,
760         pricing_attribute82,
761         pricing_attribute83,
762         pricing_attribute84,
763         pricing_attribute85,
764         pricing_attribute86,
765         pricing_attribute87,
766         pricing_attribute88,
767         pricing_attribute89,
768         pricing_attribute90,
769         pricing_attribute91,
770         pricing_attribute92,
771         pricing_attribute93,
772         pricing_attribute94,
773         pricing_attribute95,
774         pricing_attribute96,
775         pricing_attribute97,
776         pricing_attribute98,
777         pricing_attribute99,
778         pricing_attribute100,
779         qualifier_context,
780         qualifier_attribute1,
781         qualifier_attribute2,
782         created_by,
783         qualifier_attribute3,
784         creation_date,
785         qualifier_attribute4,
786         qualifier_attribute5,
787         last_updated_by,
788         qualifier_attribute6,
789         last_update_date,
790         qualifier_attribute7,
791         qualifier_attribute8,
792         qualifier_attribute9,
793         qualifier_attribute10,
794         qualifier_attribute11,
795         qualifier_attribute12,
796         qualifier_attribute13,
797         qualifier_attribute14,
798         qualifier_attribute15,
799         qualifier_attribute16,
800         qualifier_attribute17,
801         qualifier_attribute18,
802         qualifier_attribute19,
803         qualifier_attribute20,
804         qualifier_attribute21,
805         qualifier_attribute22,
806         qualifier_attribute23,
807         qualifier_attribute24,
808         qualifier_attribute25,
809         qualifier_attribute26,
810         qualifier_attribute27,
811         qualifier_attribute28,
812         qualifier_attribute29,
813         qualifier_attribute30,
814         qualifier_attribute31,
815         qualifier_attribute32,
816         qualifier_attribute33,
817         qualifier_attribute34,
818         qualifier_attribute35,
819         qualifier_attribute36,
820         qualifier_attribute37,
821         qualifier_attribute38,
822         qualifier_attribute39,
823         qualifier_attribute40,
824         qualifier_attribute41,
825         qualifier_attribute42,
826         qualifier_attribute43,
827         qualifier_attribute44,
828         qualifier_attribute45,
829         qualifier_attribute46,
830         qualifier_attribute47,
831         qualifier_attribute48,
832         qualifier_attribute49,
833         qualifier_attribute50,
834         qualifier_attribute51,
835         qualifier_attribute52,
836         qualifier_attribute53,
837         qualifier_attribute54,
838         qualifier_attribute55,
839         qualifier_attribute56,
840         qualifier_attribute57,
841         qualifier_attribute58,
842         qualifier_attribute59,
843         qualifier_attribute60,
844         qualifier_attribute61,
845         qualifier_attribute62,
846         qualifier_attribute63,
847         qualifier_attribute64,
848         qualifier_attribute65,
849         qualifier_attribute66,
850         qualifier_attribute67,
851         qualifier_attribute68,
852         qualifier_attribute69,
853         qualifier_attribute70,
854         qualifier_attribute71,
855         qualifier_attribute72,
856         qualifier_attribute73,
857         qualifier_attribute74,
858         qualifier_attribute75,
859         qualifier_attribute76,
860         qualifier_attribute77,
861         qualifier_attribute78,
862         qualifier_attribute79,
863         qualifier_attribute80,
864         qualifier_attribute81,
865         qualifier_attribute82,
866         qualifier_attribute83,
867         qualifier_attribute84,
868         qualifier_attribute85,
869         qualifier_attribute86,
870         qualifier_attribute87,
871         qualifier_attribute88,
872         qualifier_attribute89,
873         qualifier_attribute90,
874         qualifier_attribute91,
875         qualifier_attribute92,
876         qualifier_attribute93,
877         qualifier_attribute94,
878         qualifier_attribute95,
879         qualifier_attribute96,
880         qualifier_attribute97,
881         qualifier_attribute98,
882         qualifier_attribute99,
883         qualifier_attribute100,
884         last_update_login,
885         program_application_id,
886         program_id,
887         program_update_date,
888         request_id,
889        object_version_number)
890        VALUES (
891         l_pav_rec.id,
892         l_pav_rec.flex_title,
893         l_pav_rec.pricing_context,
894         l_pav_rec.pricing_attribute1,
895         l_pav_rec.chr_id,
896         l_pav_rec.pricing_attribute2,
897         l_pav_rec.cle_id,
898         l_pav_rec.pricing_attribute3,
899         l_pav_rec.pricing_attribute4,
900         l_pav_rec.pricing_attribute5,
901         l_pav_rec.pricing_attribute6,
902         l_pav_rec.pricing_attribute7,
903         l_pav_rec.pricing_attribute8,
904         l_pav_rec.pricing_attribute9,
905         l_pav_rec.pricing_attribute10,
906         l_pav_rec.pricing_attribute11,
907         l_pav_rec.pricing_attribute12,
908         l_pav_rec.pricing_attribute13,
909         l_pav_rec.pricing_attribute14,
910         l_pav_rec.pricing_attribute15,
911         l_pav_rec.pricing_attribute16,
912         l_pav_rec.pricing_attribute17,
913         l_pav_rec.pricing_attribute18,
914         l_pav_rec.pricing_attribute19,
915         l_pav_rec.pricing_attribute20,
916         l_pav_rec.pricing_attribute21,
917         l_pav_rec.pricing_attribute22,
918         l_pav_rec.pricing_attribute23,
919         l_pav_rec.pricing_attribute24,
920         l_pav_rec.pricing_attribute25,
921         l_pav_rec.pricing_attribute26,
922         l_pav_rec.pricing_attribute27,
923         l_pav_rec.pricing_attribute28,
924         l_pav_rec.pricing_attribute29,
925         l_pav_rec.pricing_attribute30,
926         l_pav_rec.pricing_attribute31,
927         l_pav_rec.pricing_attribute32,
928         l_pav_rec.pricing_attribute33,
929         l_pav_rec.pricing_attribute34,
930         l_pav_rec.pricing_attribute35,
931         l_pav_rec.pricing_attribute36,
932         l_pav_rec.pricing_attribute37,
933         l_pav_rec.pricing_attribute38,
934         l_pav_rec.pricing_attribute39,
935         l_pav_rec.pricing_attribute40,
936         l_pav_rec.pricing_attribute41,
937         l_pav_rec.pricing_attribute42,
938         l_pav_rec.pricing_attribute43,
939         l_pav_rec.pricing_attribute44,
940         l_pav_rec.pricing_attribute45,
941         l_pav_rec.pricing_attribute46,
942         l_pav_rec.pricing_attribute47,
943         l_pav_rec.pricing_attribute48,
944         l_pav_rec.pricing_attribute49,
945         l_pav_rec.pricing_attribute50,
946         l_pav_rec.pricing_attribute51,
947         l_pav_rec.pricing_attribute52,
948         l_pav_rec.pricing_attribute53,
949         l_pav_rec.pricing_attribute54,
950         l_pav_rec.pricing_attribute55,
951         l_pav_rec.pricing_attribute56,
952         l_pav_rec.pricing_attribute57,
953         l_pav_rec.pricing_attribute58,
954         l_pav_rec.pricing_attribute59,
955         l_pav_rec.pricing_attribute60,
956         l_pav_rec.pricing_attribute61,
957         l_pav_rec.pricing_attribute62,
958         l_pav_rec.pricing_attribute63,
959         l_pav_rec.pricing_attribute64,
960         l_pav_rec.pricing_attribute65,
961         l_pav_rec.pricing_attribute66,
962         l_pav_rec.pricing_attribute67,
963         l_pav_rec.pricing_attribute68,
964         l_pav_rec.pricing_attribute69,
965         l_pav_rec.pricing_attribute70,
966         l_pav_rec.pricing_attribute71,
967         l_pav_rec.pricing_attribute72,
968         l_pav_rec.pricing_attribute73,
969         l_pav_rec.pricing_attribute74,
970         l_pav_rec.pricing_attribute75,
971         l_pav_rec.pricing_attribute76,
972         l_pav_rec.pricing_attribute77,
973         l_pav_rec.pricing_attribute78,
974         l_pav_rec.pricing_attribute79,
975         l_pav_rec.pricing_attribute80,
976         l_pav_rec.pricing_attribute81,
977         l_pav_rec.pricing_attribute82,
978         l_pav_rec.pricing_attribute83,
979         l_pav_rec.pricing_attribute84,
980         l_pav_rec.pricing_attribute85,
981         l_pav_rec.pricing_attribute86,
982         l_pav_rec.pricing_attribute87,
983         l_pav_rec.pricing_attribute88,
984         l_pav_rec.pricing_attribute89,
985         l_pav_rec.pricing_attribute90,
986         l_pav_rec.pricing_attribute91,
987         l_pav_rec.pricing_attribute92,
988         l_pav_rec.pricing_attribute93,
989         l_pav_rec.pricing_attribute94,
990         l_pav_rec.pricing_attribute95,
991         l_pav_rec.pricing_attribute96,
992         l_pav_rec.pricing_attribute97,
993         l_pav_rec.pricing_attribute98,
994         l_pav_rec.pricing_attribute99,
995         l_pav_rec.pricing_attribute100,
996         l_pav_rec.qualifier_context,
997         l_pav_rec.qualifier_attribute1,
998         l_pav_rec.qualifier_attribute2,
999         l_pav_rec.created_by,
1000         l_pav_rec.qualifier_attribute3,
1001         l_pav_rec.creation_date,
1002         l_pav_rec.qualifier_attribute4,
1003         l_pav_rec.qualifier_attribute5,
1004         l_pav_rec.last_updated_by,
1005         l_pav_rec.qualifier_attribute6,
1006         l_pav_rec.last_update_date,
1007         l_pav_rec.qualifier_attribute7,
1008         l_pav_rec.qualifier_attribute8,
1009         l_pav_rec.qualifier_attribute9,
1010         l_pav_rec.qualifier_attribute10,
1011         l_pav_rec.qualifier_attribute11,
1012         l_pav_rec.qualifier_attribute12,
1013         l_pav_rec.qualifier_attribute13,
1014         l_pav_rec.qualifier_attribute14,
1015         l_pav_rec.qualifier_attribute15,
1016         l_pav_rec.qualifier_attribute16,
1017         l_pav_rec.qualifier_attribute17,
1018         l_pav_rec.qualifier_attribute18,
1019         l_pav_rec.qualifier_attribute19,
1020         l_pav_rec.qualifier_attribute20,
1021         l_pav_rec.qualifier_attribute21,
1022         l_pav_rec.qualifier_attribute22,
1023         l_pav_rec.qualifier_attribute23,
1024         l_pav_rec.qualifier_attribute24,
1025         l_pav_rec.qualifier_attribute25,
1026         l_pav_rec.qualifier_attribute26,
1027         l_pav_rec.qualifier_attribute27,
1028         l_pav_rec.qualifier_attribute28,
1029         l_pav_rec.qualifier_attribute29,
1030         l_pav_rec.qualifier_attribute30,
1031         l_pav_rec.qualifier_attribute31,
1032         l_pav_rec.qualifier_attribute32,
1033         l_pav_rec.qualifier_attribute33,
1034         l_pav_rec.qualifier_attribute34,
1035         l_pav_rec.qualifier_attribute35,
1036         l_pav_rec.qualifier_attribute36,
1037         l_pav_rec.qualifier_attribute37,
1038         l_pav_rec.qualifier_attribute38,
1039         l_pav_rec.qualifier_attribute39,
1040         l_pav_rec.qualifier_attribute40,
1041         l_pav_rec.qualifier_attribute41,
1042         l_pav_rec.qualifier_attribute42,
1043         l_pav_rec.qualifier_attribute43,
1044         l_pav_rec.qualifier_attribute44,
1045         l_pav_rec.qualifier_attribute45,
1046         l_pav_rec.qualifier_attribute46,
1047         l_pav_rec.qualifier_attribute47,
1048         l_pav_rec.qualifier_attribute48,
1049         l_pav_rec.qualifier_attribute49,
1050         l_pav_rec.qualifier_attribute50,
1051         l_pav_rec.qualifier_attribute51,
1052         l_pav_rec.qualifier_attribute52,
1053         l_pav_rec.qualifier_attribute53,
1054         l_pav_rec.qualifier_attribute54,
1055         l_pav_rec.qualifier_attribute55,
1056         l_pav_rec.qualifier_attribute56,
1057         l_pav_rec.qualifier_attribute57,
1058         l_pav_rec.qualifier_attribute58,
1059         l_pav_rec.qualifier_attribute59,
1060         l_pav_rec.qualifier_attribute60,
1061         l_pav_rec.qualifier_attribute61,
1062         l_pav_rec.qualifier_attribute62,
1063         l_pav_rec.qualifier_attribute63,
1064         l_pav_rec.qualifier_attribute64,
1065         l_pav_rec.qualifier_attribute65,
1066         l_pav_rec.qualifier_attribute66,
1067         l_pav_rec.qualifier_attribute67,
1068         l_pav_rec.qualifier_attribute68,
1069         l_pav_rec.qualifier_attribute69,
1070         l_pav_rec.qualifier_attribute70,
1071         l_pav_rec.qualifier_attribute71,
1072         l_pav_rec.qualifier_attribute72,
1073         l_pav_rec.qualifier_attribute73,
1074         l_pav_rec.qualifier_attribute74,
1075         l_pav_rec.qualifier_attribute75,
1076         l_pav_rec.qualifier_attribute76,
1077         l_pav_rec.qualifier_attribute77,
1078         l_pav_rec.qualifier_attribute78,
1079         l_pav_rec.qualifier_attribute79,
1080         l_pav_rec.qualifier_attribute80,
1081         l_pav_rec.qualifier_attribute81,
1082         l_pav_rec.qualifier_attribute82,
1083         l_pav_rec.qualifier_attribute83,
1084         l_pav_rec.qualifier_attribute84,
1085         l_pav_rec.qualifier_attribute85,
1086         l_pav_rec.qualifier_attribute86,
1087         l_pav_rec.qualifier_attribute87,
1088         l_pav_rec.qualifier_attribute88,
1089         l_pav_rec.qualifier_attribute89,
1090         l_pav_rec.qualifier_attribute90,
1091         l_pav_rec.qualifier_attribute91,
1092         l_pav_rec.qualifier_attribute92,
1093         l_pav_rec.qualifier_attribute93,
1094         l_pav_rec.qualifier_attribute94,
1095         l_pav_rec.qualifier_attribute95,
1096         l_pav_rec.qualifier_attribute96,
1097         l_pav_rec.qualifier_attribute97,
1098         l_pav_rec.qualifier_attribute98,
1099         l_pav_rec.qualifier_attribute99,
1100         l_pav_rec.qualifier_attribute100,
1101         l_pav_rec.last_update_login,
1102         decode(FND_GLOBAL.PROG_APPL_ID,-1,NULL,FND_GLOBAL.PROG_APPL_ID),
1103         decode(FND_GLOBAL.CONC_PROGRAM_ID,-1,NULL,FND_GLOBAL.CONC_PROGRAM_ID),
1104         decode(FND_GLOBAL.CONC_REQUEST_ID,-1,NULL,SYSDATE),
1105         decode(FND_GLOBAL.CONC_REQUEST_ID,-1,NULL,FND_GLOBAL.CONC_REQUEST_ID),
1106         l_pav_rec.object_version_number);
1107 -- Set OUT values
1108     x_pav_rec := l_pav_rec;
1109     OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1110   EXCEPTION
1111     WHEN OKC_API.G_EXCEPTION_ERROR THEN
1112       x_return_status := OKC_API.HANDLE_EXCEPTIONS
1113       (
1114         l_api_name,
1115         G_PKG_NAME,
1116         'OKC_API.G_RET_STS_ERROR',
1117         x_msg_count,
1118         x_msg_data,
1119         '_PVT'
1120       );
1121     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1122       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1123       (
1124         l_api_name,
1125         G_PKG_NAME,
1126         'OKC_API.G_RET_STS_UNEXP_ERROR',
1127         x_msg_count,
1128         x_msg_data,
1129         '_PVT'
1130       );
1131     WHEN OTHERS THEN
1132       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1133       (
1134         l_api_name,
1135         G_PKG_NAME,
1136         'OTHERS',
1137         x_msg_count,
1138         x_msg_data,
1139         '_PVT'
1140       );
1141   END insert_row;
1142   -------------------------------------------
1143   -- insert_row for:OKC_PRICE_ATT_VALUES_V --
1144   -------------------------------------------
1145   PROCEDURE insert_row(
1146     p_api_version                  IN NUMBER,
1147     p_init_msg_list                IN VARCHAR2 ,
1148     x_return_status                OUT NOCOPY VARCHAR2,
1149     x_msg_count                    OUT NOCOPY NUMBER,
1150     x_msg_data                     OUT NOCOPY VARCHAR2,
1151     p_pavv_rec                     IN pavv_rec_type,
1152     x_pavv_rec                     OUT NOCOPY pavv_rec_type) IS
1153 
1154     l_api_version                 CONSTANT NUMBER := 1;
1155     l_api_name                     CONSTANT VARCHAR2(30) := 'V_insert_row';
1156     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1157     l_pavv_rec                     pavv_rec_type;
1158     l_def_pavv_rec                 pavv_rec_type;
1159     l_pav_rec                      pav_rec_type;
1160     lx_pav_rec                     pav_rec_type;
1161     -------------------------------
1162     -- FUNCTION fill_who_columns --
1163     -------------------------------
1164     FUNCTION fill_who_columns (
1165       p_pavv_rec	IN pavv_rec_type
1166     ) RETURN pavv_rec_type IS
1167       l_pavv_rec	pavv_rec_type := p_pavv_rec;
1168     BEGIN
1169       l_pavv_rec.CREATION_DATE := SYSDATE;
1170       l_pavv_rec.CREATED_BY := FND_GLOBAL.USER_ID;
1171       l_pavv_rec.LAST_UPDATE_DATE := l_pavv_rec.CREATION_DATE;
1172       l_pavv_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1173       l_pavv_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
1174       RETURN(l_pavv_rec);
1175     END fill_who_columns;
1176     -----------------------------------------------
1177     -- Set_Attributes for:OKC_PRICE_ATT_VALUES_V --
1178     -----------------------------------------------
1179     FUNCTION Set_Attributes (
1180       p_pavv_rec IN  pavv_rec_type,
1181       x_pavv_rec OUT NOCOPY pavv_rec_type
1182     ) RETURN VARCHAR2 IS
1183       l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1184     BEGIN
1185       x_pavv_rec := p_pavv_rec;
1186       x_pavv_rec.OBJECT_VERSION_NUMBER := 1;
1187      RETURN(l_return_status);
1188     END Set_Attributes;
1189   BEGIN
1190     l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1191                                               G_PKG_NAME,
1192                                               p_init_msg_list,
1193                                               l_api_version,
1194                                               p_api_version,
1195                                               '_PVT',
1196                                               x_return_status);
1197     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1198       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1199     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1200       RAISE OKC_API.G_EXCEPTION_ERROR;
1201     END IF;
1202     l_pavv_rec := null_out_defaults(p_pavv_rec);
1203     -- Set primary key value
1204     l_pavv_rec.ID := get_seq_id;
1205     --- Setting item attributes
1206     l_return_status := Set_Attributes(
1207       l_pavv_rec,                        -- IN
1208       l_def_pavv_rec);                   -- OUT
1209     --- If any errors happen abort API
1210     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1211       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1212     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1213       RAISE OKC_API.G_EXCEPTION_ERROR;
1214     END IF;
1215     l_def_pavv_rec := fill_who_columns(l_def_pavv_rec);
1216     --- Validate all non-missing attributes (Item Level Validation)
1217     l_return_status := Validate_Attributes(l_def_pavv_rec);
1218     --- If any errors happen abort API
1219     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1220       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1221     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1222       RAISE OKC_API.G_EXCEPTION_ERROR;
1223     END IF;
1224     l_return_status := Validate_Record(l_def_pavv_rec);
1225     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1226       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1227     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1228       RAISE OKC_API.G_EXCEPTION_ERROR;
1229     END IF;
1230     --------------------------------------
1231     -- Move VIEW record to "Child" records
1232     --------------------------------------
1233     migrate(l_def_pavv_rec, l_pav_rec);
1234     --------------------------------------------
1235     -- Call the INSERT_ROW for each child record
1236     --------------------------------------------
1237     insert_row(
1238       p_init_msg_list,
1239       x_return_status,
1240       x_msg_count,
1241       x_msg_data,
1242       l_pav_rec,
1243       lx_pav_rec
1244     );
1245     IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1246       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1247     ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
1248       RAISE OKC_API.G_EXCEPTION_ERROR;
1249     END IF;
1250     migrate(lx_pav_rec, l_def_pavv_rec);
1251     -- Set OUT values
1252     x_pavv_rec := l_def_pavv_rec;
1253     OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1254   EXCEPTION
1255     WHEN OKC_API.G_EXCEPTION_ERROR THEN
1256       x_return_status := OKC_API.HANDLE_EXCEPTIONS
1257       (
1258         l_api_name,
1259         G_PKG_NAME,
1260         'OKC_API.G_RET_STS_ERROR',
1261         x_msg_count,
1262         x_msg_data,
1263         '_PVT'
1264       );
1265     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1266       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1267       (
1268         l_api_name,
1269         G_PKG_NAME,
1270         'OKC_API.G_RET_STS_UNEXP_ERROR',
1271         x_msg_count,
1272         x_msg_data,
1273         '_PVT'
1274       );
1275     WHEN OTHERS THEN
1276       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1277       (
1278         l_api_name,
1279         G_PKG_NAME,
1280         'OTHERS',
1281         x_msg_count,
1282         x_msg_data,
1283         '_PVT'
1284       );
1285   END insert_row;
1286   ----------------------------------------
1287   -- PL/SQL TBL insert_row for:PAVV_TBL --
1288   ----------------------------------------
1289   PROCEDURE insert_row(
1290     p_api_version                  IN NUMBER,
1291     p_init_msg_list                IN VARCHAR2 ,
1292     x_return_status                OUT NOCOPY VARCHAR2,
1293     x_msg_count                    OUT NOCOPY NUMBER,
1294     x_msg_data                     OUT NOCOPY VARCHAR2,
1295     p_pavv_tbl                     IN pavv_tbl_type,
1296     x_pavv_tbl                     OUT NOCOPY pavv_tbl_type) IS
1297 
1298     l_api_version                 CONSTANT NUMBER := 1;
1299     l_api_name                     CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1300     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1301     i                              NUMBER := 0;
1302   BEGIN
1303     OKC_API.init_msg_list(p_init_msg_list);
1304     -- Make sure PL/SQL table has records in it before passing
1305     IF (p_pavv_tbl.COUNT > 0) THEN
1306       i := p_pavv_tbl.FIRST;
1307       LOOP
1308         insert_row (
1309           p_api_version                  => p_api_version,
1310           p_init_msg_list                => OKC_API.G_FALSE,
1311           x_return_status                => x_return_status,
1312           x_msg_count                    => x_msg_count,
1313           x_msg_data                     => x_msg_data,
1314           p_pavv_rec                     => p_pavv_tbl(i),
1315           x_pavv_rec                     => x_pavv_tbl(i));
1316         EXIT WHEN (i = p_pavv_tbl.LAST);
1317         i := p_pavv_tbl.NEXT(i);
1318       END LOOP;
1319     END IF;
1320   EXCEPTION
1321     WHEN OKC_API.G_EXCEPTION_ERROR THEN
1322       x_return_status := OKC_API.HANDLE_EXCEPTIONS
1323       (
1324         l_api_name,
1325         G_PKG_NAME,
1326         'OKC_API.G_RET_STS_ERROR',
1327         x_msg_count,
1328         x_msg_data,
1329         '_PVT'
1330       );
1331     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1332       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1333       (
1334         l_api_name,
1335         G_PKG_NAME,
1336         'OKC_API.G_RET_STS_UNEXP_ERROR',
1337         x_msg_count,
1338         x_msg_data,
1339         '_PVT'
1340       );
1341     WHEN OTHERS THEN
1342       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1343       (
1344         l_api_name,
1345         G_PKG_NAME,
1346         'OTHERS',
1347         x_msg_count,
1348         x_msg_data,
1349         '_PVT'
1350       );
1351   END insert_row;
1352 
1353   ---------------------------------------------------------------------------
1354   -- PROCEDURE lock_row
1355   ---------------------------------------------------------------------------
1356   ---------------------------------------
1357   -- lock_row for:OKC_PRICE_ATT_VALUES --
1358   ---------------------------------------
1359   PROCEDURE lock_row(
1360     p_init_msg_list                IN VARCHAR2 ,
1361     x_return_status                OUT NOCOPY VARCHAR2,
1362     x_msg_count                    OUT NOCOPY NUMBER,
1363     x_msg_data                     OUT NOCOPY VARCHAR2,
1364     p_pav_rec                      IN pav_rec_type) IS
1365 
1366     E_Resource_Busy               EXCEPTION;
1367     PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
1368     CURSOR lock_csr (p_pav_rec IN pav_rec_type) IS
1369     SELECT OBJECT_VERSION_NUMBER
1370       FROM OKC_PRICE_ATT_VALUES
1371      WHERE ID = p_pav_rec.id
1372        AND OBJECT_VERSION_NUMBER = p_pav_rec.object_version_number
1373     FOR UPDATE OF OBJECT_VERSION_NUMBER NOWAIT;
1374 
1375  CURSOR  lchk_csr (p_pav_rec IN pav_rec_type) IS
1376     SELECT OBJECT_VERSION_NUMBER
1377       FROM OKC_PRICE_ATT_VALUES
1378     WHERE ID = p_pav_rec.id;
1379 
1380     l_api_version                 CONSTANT NUMBER := 1;
1381     l_api_name                     CONSTANT VARCHAR2(30) := 'VALUES_lock_row';
1382     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1383     l_object_version_number       OKC_PRICE_ATT_VALUES.OBJECT_VERSION_NUMBER%TYPE;
1384    lc_object_version_number      OKC_PRICE_ATT_VALUES.OBJECT_VERSION_NUMBER%TYPE;
1385 
1386     l_row_notfound                BOOLEAN := FALSE;
1387     lc_row_notfound               BOOLEAN := FALSE;
1388   BEGIN
1389     l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1390                                               p_init_msg_list,
1391                                               '_PVT',
1392                                               x_return_status);
1393     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1394       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1395     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1396       RAISE OKC_API.G_EXCEPTION_ERROR;
1397     END IF;
1398     BEGIN
1399       OPEN lock_csr(p_pav_rec);
1400       FETCH lock_csr INTO l_object_version_number;
1401       l_row_notfound := lock_csr%NOTFOUND;
1402       CLOSE lock_csr;
1403     EXCEPTION
1404       WHEN E_Resource_Busy THEN
1405         IF (lock_csr%ISOPEN) THEN
1406           CLOSE lock_csr;
1407         END IF;
1408         OKC_API.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
1409         RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
1410     END;
1411     IF ( l_row_notfound ) THEN
1412       OPEN lchk_csr(p_pav_rec);
1413       FETCH lchk_csr INTO lc_object_version_number;
1414       lc_row_notfound := lchk_csr%NOTFOUND;
1415       CLOSE lchk_csr;
1416     END IF;
1417     IF ( lc_row_notfound ) THEN
1418       OKC_API.set_message(G_APP_NAME,'OKC_FORM_RECORD_DELETED');
1419       RAISE OKC_API.G_EXCEPTION_ERROR;
1420     ELSIF lc_object_version_number > p_pav_rec.object_version_number THEN
1421       OKC_API.set_message(G_APP_NAME,'OKC_FORM_RECORD_CHANGED');
1422       RAISE OKC_API.G_EXCEPTION_ERROR;
1423     ELSIF lc_object_version_number <> p_pav_rec.object_version_number THEN
1424       OKC_API.set_message(G_APP_NAME,'OKC_FORM_RECORD_CHANGED');
1425       RAISE OKC_API.G_EXCEPTION_ERROR;
1426     ELSIF lc_object_version_number = -1 THEN
1427       OKC_API.set_message(G_FND_APP,G_RECORD_LOGICALLY_DELETED);
1428       RAISE OKC_API.G_EXCEPTION_ERROR;
1429     END IF;
1430 
1431     OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1432   EXCEPTION
1433     WHEN OKC_API.G_EXCEPTION_ERROR THEN
1434       x_return_status := OKC_API.HANDLE_EXCEPTIONS
1435       (
1436         l_api_name,
1437         G_PKG_NAME,
1438         'OKC_API.G_RET_STS_ERROR',
1439         x_msg_count,
1440         x_msg_data,
1441         '_PVT'
1442       );
1443     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1444       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1445       (
1446         l_api_name,
1447         G_PKG_NAME,
1448         'OKC_API.G_RET_STS_UNEXP_ERROR',
1449         x_msg_count,
1450         x_msg_data,
1451         '_PVT'
1452       );
1453     WHEN OTHERS THEN
1454       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1455       (
1456         l_api_name,
1457         G_PKG_NAME,
1458         'OTHERS',
1459         x_msg_count,
1460         x_msg_data,
1461         '_PVT'
1462       );
1463   END lock_row;
1464   -----------------------------------------
1465   -- lock_row for:OKC_PRICE_ATT_VALUES_V --
1466   -----------------------------------------
1467   PROCEDURE lock_row(
1468     p_api_version                  IN NUMBER,
1469     p_init_msg_list                IN VARCHAR2 ,
1470     x_return_status                OUT NOCOPY VARCHAR2,
1471     x_msg_count                    OUT NOCOPY NUMBER,
1472     x_msg_data                     OUT NOCOPY VARCHAR2,
1473     p_pavv_rec                     IN pavv_rec_type) IS
1474 
1475     l_api_version                 CONSTANT NUMBER := 1;
1476     l_api_name                     CONSTANT VARCHAR2(30) := 'V_lock_row';
1477     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1478     l_pav_rec                      pav_rec_type;
1479   BEGIN
1480     l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1481                                               G_PKG_NAME,
1482                                               p_init_msg_list,
1483                                               l_api_version,
1484                                               p_api_version,
1485                                               '_PVT',
1486                                               x_return_status);
1487     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1488       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1489     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1490       RAISE OKC_API.G_EXCEPTION_ERROR;
1491     END IF;
1492     --------------------------------------
1493     -- Move VIEW record to "Child" records
1494     --------------------------------------
1495     migrate(p_pavv_rec, l_pav_rec);
1496     --------------------------------------------
1497     -- Call the LOCK_ROW for each child record
1498     --------------------------------------------
1499     lock_row(
1500       p_init_msg_list,
1501       x_return_status,
1502       x_msg_count,
1503       x_msg_data,
1504       l_pav_rec
1505     );
1506     IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1507       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1508     ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
1509       RAISE OKC_API.G_EXCEPTION_ERROR;
1510     END IF;
1511     OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1512   EXCEPTION
1513     WHEN OKC_API.G_EXCEPTION_ERROR THEN
1514       x_return_status := OKC_API.HANDLE_EXCEPTIONS
1515       (
1516         l_api_name,
1517         G_PKG_NAME,
1518         'OKC_API.G_RET_STS_ERROR',
1519         x_msg_count,
1520         x_msg_data,
1521         '_PVT'
1522       );
1523     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1524       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1525       (
1526         l_api_name,
1527         G_PKG_NAME,
1528         'OKC_API.G_RET_STS_UNEXP_ERROR',
1529         x_msg_count,
1530         x_msg_data,
1531         '_PVT'
1532       );
1533     WHEN OTHERS THEN
1534       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1535       (
1536         l_api_name,
1537         G_PKG_NAME,
1538         'OTHERS',
1539         x_msg_count,
1540         x_msg_data,
1541         '_PVT'
1542       );
1543   END lock_row;
1544   --------------------------------------
1545   -- PL/SQL TBL lock_row for:PAVV_TBL --
1546   --------------------------------------
1547   PROCEDURE lock_row(
1548     p_api_version                  IN NUMBER,
1549     p_init_msg_list                IN VARCHAR2 ,
1550     x_return_status                OUT NOCOPY VARCHAR2,
1551     x_msg_count                    OUT NOCOPY NUMBER,
1552     x_msg_data                     OUT NOCOPY VARCHAR2,
1553     p_pavv_tbl                     IN pavv_tbl_type) IS
1554 
1555     l_api_version                 CONSTANT NUMBER := 1;
1556     l_api_name                     CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
1557     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1558     i                              NUMBER := 0;
1559   BEGIN
1560     OKC_API.init_msg_list(p_init_msg_list);
1561     -- Make sure PL/SQL table has records in it before passing
1562     IF (p_pavv_tbl.COUNT > 0) THEN
1563       i := p_pavv_tbl.FIRST;
1564       LOOP
1565         lock_row (
1566           p_api_version                  => p_api_version,
1567           p_init_msg_list                => OKC_API.G_FALSE,
1568           x_return_status                => x_return_status,
1569           x_msg_count                    => x_msg_count,
1570           x_msg_data                     => x_msg_data,
1571           p_pavv_rec                     => p_pavv_tbl(i));
1572         EXIT WHEN (i = p_pavv_tbl.LAST);
1573         i := p_pavv_tbl.NEXT(i);
1574       END LOOP;
1575     END IF;
1576   EXCEPTION
1577     WHEN OKC_API.G_EXCEPTION_ERROR THEN
1578       x_return_status := OKC_API.HANDLE_EXCEPTIONS
1579       (
1580         l_api_name,
1581         G_PKG_NAME,
1582         'OKC_API.G_RET_STS_ERROR',
1583         x_msg_count,
1584         x_msg_data,
1585         '_PVT'
1586       );
1587     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1588       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1589       (
1590         l_api_name,
1591         G_PKG_NAME,
1592         'OKC_API.G_RET_STS_UNEXP_ERROR',
1593         x_msg_count,
1594         x_msg_data,
1595         '_PVT'
1596       );
1597     WHEN OTHERS THEN
1598       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1599       (
1600         l_api_name,
1601         G_PKG_NAME,
1602         'OTHERS',
1603         x_msg_count,
1604         x_msg_data,
1605         '_PVT'
1606       );
1607   END lock_row;
1608 
1609   ---------------------------------------------------------------------------
1610   -- PROCEDURE update_row
1611   ---------------------------------------------------------------------------
1612   -----------------------------------------
1613   -- update_row for:OKC_PRICE_ATT_VALUES --
1614   -----------------------------------------
1615   PROCEDURE update_row(
1616     p_init_msg_list                IN VARCHAR2 ,
1617     x_return_status                OUT NOCOPY VARCHAR2,
1618     x_msg_count                    OUT NOCOPY NUMBER,
1619     x_msg_data                     OUT NOCOPY VARCHAR2,
1620     p_pav_rec                      IN pav_rec_type,
1621     x_pav_rec                      OUT NOCOPY pav_rec_type) IS
1622 
1623     l_api_version                 CONSTANT NUMBER := 1;
1624     l_api_name                     CONSTANT VARCHAR2(30) := 'VALUES_update_row';
1625     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1626     l_pav_rec                      pav_rec_type := p_pav_rec;
1627     l_def_pav_rec                  pav_rec_type;
1628     l_row_notfound                 BOOLEAN := TRUE;
1629     ----------------------------------
1630     -- FUNCTION populate_new_record --
1631     ----------------------------------
1632     FUNCTION populate_new_record (
1633       p_pav_rec	IN pav_rec_type,
1634       x_pav_rec	OUT NOCOPY pav_rec_type
1635     ) RETURN VARCHAR2 IS
1636       l_pav_rec                      pav_rec_type;
1637       l_row_notfound                 BOOLEAN := TRUE;
1638       l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1639     BEGIN
1640       x_pav_rec := p_pav_rec;
1641       -- Get current database values
1642       l_pav_rec := get_rec(p_pav_rec, l_row_notfound);
1643       IF (l_row_notfound) THEN
1644         l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
1645       END IF;
1646       IF (x_pav_rec.id = OKC_API.G_MISS_NUM)
1647       THEN
1648         x_pav_rec.id := l_pav_rec.id;
1649       END IF;
1650       IF (x_pav_rec.flex_title = OKC_API.G_MISS_CHAR)
1651       THEN
1652         x_pav_rec.flex_title := l_pav_rec.flex_title;
1653       END IF;
1654       IF (x_pav_rec.pricing_context = OKC_API.G_MISS_CHAR)
1655       THEN
1656         x_pav_rec.pricing_context := l_pav_rec.pricing_context;
1657       END IF;
1658       IF (x_pav_rec.pricing_attribute1 = OKC_API.G_MISS_CHAR)
1659       THEN
1660         x_pav_rec.pricing_attribute1 := l_pav_rec.pricing_attribute1;
1661       END IF;
1662       IF (x_pav_rec.chr_id = OKC_API.G_MISS_NUM)
1663       THEN
1664         x_pav_rec.chr_id := l_pav_rec.chr_id;
1665       END IF;
1666       IF (x_pav_rec.pricing_attribute2 = OKC_API.G_MISS_CHAR)
1667       THEN
1668         x_pav_rec.pricing_attribute2 := l_pav_rec.pricing_attribute2;
1669       END IF;
1670       IF (x_pav_rec.cle_id = OKC_API.G_MISS_NUM)
1671       THEN
1672         x_pav_rec.cle_id := l_pav_rec.cle_id;
1673       END IF;
1674       IF (x_pav_rec.pricing_attribute3 = OKC_API.G_MISS_CHAR)
1675       THEN
1676         x_pav_rec.pricing_attribute3 := l_pav_rec.pricing_attribute3;
1677       END IF;
1678       IF (x_pav_rec.pricing_attribute4 = OKC_API.G_MISS_CHAR)
1679       THEN
1680         x_pav_rec.pricing_attribute4 := l_pav_rec.pricing_attribute4;
1681       END IF;
1682       IF (x_pav_rec.pricing_attribute5 = OKC_API.G_MISS_CHAR)
1683       THEN
1684         x_pav_rec.pricing_attribute5 := l_pav_rec.pricing_attribute5;
1685       END IF;
1686       IF (x_pav_rec.pricing_attribute6 = OKC_API.G_MISS_CHAR)
1687       THEN
1688         x_pav_rec.pricing_attribute6 := l_pav_rec.pricing_attribute6;
1689       END IF;
1690       IF (x_pav_rec.pricing_attribute7 = OKC_API.G_MISS_CHAR)
1691       THEN
1692         x_pav_rec.pricing_attribute7 := l_pav_rec.pricing_attribute7;
1693       END IF;
1694       IF (x_pav_rec.pricing_attribute8 = OKC_API.G_MISS_CHAR)
1695       THEN
1696         x_pav_rec.pricing_attribute8 := l_pav_rec.pricing_attribute8;
1697       END IF;
1698       IF (x_pav_rec.pricing_attribute9 = OKC_API.G_MISS_CHAR)
1699       THEN
1700         x_pav_rec.pricing_attribute9 := l_pav_rec.pricing_attribute9;
1701       END IF;
1702       IF (x_pav_rec.pricing_attribute10 = OKC_API.G_MISS_CHAR)
1703       THEN
1704         x_pav_rec.pricing_attribute10 := l_pav_rec.pricing_attribute10;
1705       END IF;
1706       IF (x_pav_rec.pricing_attribute11 = OKC_API.G_MISS_CHAR)
1707       THEN
1708         x_pav_rec.pricing_attribute11 := l_pav_rec.pricing_attribute11;
1709       END IF;
1710       IF (x_pav_rec.pricing_attribute12 = OKC_API.G_MISS_CHAR)
1711       THEN
1712         x_pav_rec.pricing_attribute12 := l_pav_rec.pricing_attribute12;
1713       END IF;
1714       IF (x_pav_rec.pricing_attribute13 = OKC_API.G_MISS_CHAR)
1715       THEN
1716         x_pav_rec.pricing_attribute13 := l_pav_rec.pricing_attribute13;
1717       END IF;
1718       IF (x_pav_rec.pricing_attribute14 = OKC_API.G_MISS_CHAR)
1719       THEN
1720         x_pav_rec.pricing_attribute14 := l_pav_rec.pricing_attribute14;
1721       END IF;
1722       IF (x_pav_rec.pricing_attribute15 = OKC_API.G_MISS_CHAR)
1723       THEN
1724         x_pav_rec.pricing_attribute15 := l_pav_rec.pricing_attribute15;
1725       END IF;
1726       IF (x_pav_rec.pricing_attribute16 = OKC_API.G_MISS_CHAR)
1727       THEN
1728         x_pav_rec.pricing_attribute16 := l_pav_rec.pricing_attribute16;
1729       END IF;
1730       IF (x_pav_rec.pricing_attribute17 = OKC_API.G_MISS_CHAR)
1731       THEN
1732         x_pav_rec.pricing_attribute17 := l_pav_rec.pricing_attribute17;
1733       END IF;
1734       IF (x_pav_rec.pricing_attribute18 = OKC_API.G_MISS_CHAR)
1735       THEN
1736         x_pav_rec.pricing_attribute18 := l_pav_rec.pricing_attribute18;
1737       END IF;
1738       IF (x_pav_rec.pricing_attribute19 = OKC_API.G_MISS_CHAR)
1739       THEN
1740         x_pav_rec.pricing_attribute19 := l_pav_rec.pricing_attribute19;
1741       END IF;
1742       IF (x_pav_rec.pricing_attribute20 = OKC_API.G_MISS_CHAR)
1743       THEN
1744         x_pav_rec.pricing_attribute20 := l_pav_rec.pricing_attribute20;
1745       END IF;
1746       IF (x_pav_rec.pricing_attribute21 = OKC_API.G_MISS_CHAR)
1747       THEN
1748         x_pav_rec.pricing_attribute21 := l_pav_rec.pricing_attribute21;
1749       END IF;
1750       IF (x_pav_rec.pricing_attribute22 = OKC_API.G_MISS_CHAR)
1751       THEN
1752         x_pav_rec.pricing_attribute22 := l_pav_rec.pricing_attribute22;
1753       END IF;
1754       IF (x_pav_rec.pricing_attribute23 = OKC_API.G_MISS_CHAR)
1755       THEN
1756         x_pav_rec.pricing_attribute23 := l_pav_rec.pricing_attribute23;
1757       END IF;
1758       IF (x_pav_rec.pricing_attribute24 = OKC_API.G_MISS_CHAR)
1759       THEN
1760         x_pav_rec.pricing_attribute24 := l_pav_rec.pricing_attribute24;
1761       END IF;
1762       IF (x_pav_rec.pricing_attribute25 = OKC_API.G_MISS_CHAR)
1763       THEN
1764         x_pav_rec.pricing_attribute25 := l_pav_rec.pricing_attribute25;
1765       END IF;
1766       IF (x_pav_rec.pricing_attribute26 = OKC_API.G_MISS_CHAR)
1767       THEN
1768         x_pav_rec.pricing_attribute26 := l_pav_rec.pricing_attribute26;
1769       END IF;
1770       IF (x_pav_rec.pricing_attribute27 = OKC_API.G_MISS_CHAR)
1771       THEN
1772         x_pav_rec.pricing_attribute27 := l_pav_rec.pricing_attribute27;
1773       END IF;
1774       IF (x_pav_rec.pricing_attribute28 = OKC_API.G_MISS_CHAR)
1775       THEN
1776         x_pav_rec.pricing_attribute28 := l_pav_rec.pricing_attribute28;
1777       END IF;
1778       IF (x_pav_rec.pricing_attribute29 = OKC_API.G_MISS_CHAR)
1779       THEN
1780         x_pav_rec.pricing_attribute29 := l_pav_rec.pricing_attribute29;
1781       END IF;
1782       IF (x_pav_rec.pricing_attribute30 = OKC_API.G_MISS_CHAR)
1783       THEN
1784         x_pav_rec.pricing_attribute30 := l_pav_rec.pricing_attribute30;
1785       END IF;
1786       IF (x_pav_rec.pricing_attribute31 = OKC_API.G_MISS_CHAR)
1787       THEN
1788         x_pav_rec.pricing_attribute31 := l_pav_rec.pricing_attribute31;
1789       END IF;
1790       IF (x_pav_rec.pricing_attribute32 = OKC_API.G_MISS_CHAR)
1791       THEN
1792         x_pav_rec.pricing_attribute32 := l_pav_rec.pricing_attribute32;
1793       END IF;
1794       IF (x_pav_rec.pricing_attribute33 = OKC_API.G_MISS_CHAR)
1795       THEN
1796         x_pav_rec.pricing_attribute33 := l_pav_rec.pricing_attribute33;
1797       END IF;
1798       IF (x_pav_rec.pricing_attribute34 = OKC_API.G_MISS_CHAR)
1799       THEN
1800         x_pav_rec.pricing_attribute34 := l_pav_rec.pricing_attribute34;
1801       END IF;
1802       IF (x_pav_rec.pricing_attribute35 = OKC_API.G_MISS_CHAR)
1803       THEN
1804         x_pav_rec.pricing_attribute35 := l_pav_rec.pricing_attribute35;
1805       END IF;
1806       IF (x_pav_rec.pricing_attribute36 = OKC_API.G_MISS_CHAR)
1807       THEN
1808         x_pav_rec.pricing_attribute36 := l_pav_rec.pricing_attribute36;
1809       END IF;
1810       IF (x_pav_rec.pricing_attribute37 = OKC_API.G_MISS_CHAR)
1811       THEN
1812         x_pav_rec.pricing_attribute37 := l_pav_rec.pricing_attribute37;
1813       END IF;
1814       IF (x_pav_rec.pricing_attribute38 = OKC_API.G_MISS_CHAR)
1815       THEN
1816         x_pav_rec.pricing_attribute38 := l_pav_rec.pricing_attribute38;
1817       END IF;
1818       IF (x_pav_rec.pricing_attribute39 = OKC_API.G_MISS_CHAR)
1819       THEN
1820         x_pav_rec.pricing_attribute39 := l_pav_rec.pricing_attribute39;
1821       END IF;
1822       IF (x_pav_rec.pricing_attribute40 = OKC_API.G_MISS_CHAR)
1823       THEN
1824         x_pav_rec.pricing_attribute40 := l_pav_rec.pricing_attribute40;
1825       END IF;
1826       IF (x_pav_rec.pricing_attribute41 = OKC_API.G_MISS_CHAR)
1827       THEN
1828         x_pav_rec.pricing_attribute41 := l_pav_rec.pricing_attribute41;
1829       END IF;
1830       IF (x_pav_rec.pricing_attribute42 = OKC_API.G_MISS_CHAR)
1831       THEN
1832         x_pav_rec.pricing_attribute42 := l_pav_rec.pricing_attribute42;
1833       END IF;
1834       IF (x_pav_rec.pricing_attribute43 = OKC_API.G_MISS_CHAR)
1835       THEN
1836         x_pav_rec.pricing_attribute43 := l_pav_rec.pricing_attribute43;
1837       END IF;
1838       IF (x_pav_rec.pricing_attribute44 = OKC_API.G_MISS_CHAR)
1839       THEN
1840         x_pav_rec.pricing_attribute44 := l_pav_rec.pricing_attribute44;
1841       END IF;
1842       IF (x_pav_rec.pricing_attribute45 = OKC_API.G_MISS_CHAR)
1843       THEN
1844         x_pav_rec.pricing_attribute45 := l_pav_rec.pricing_attribute45;
1845       END IF;
1846       IF (x_pav_rec.pricing_attribute46 = OKC_API.G_MISS_CHAR)
1847       THEN
1848         x_pav_rec.pricing_attribute46 := l_pav_rec.pricing_attribute46;
1849       END IF;
1850       IF (x_pav_rec.pricing_attribute47 = OKC_API.G_MISS_CHAR)
1851       THEN
1852         x_pav_rec.pricing_attribute47 := l_pav_rec.pricing_attribute47;
1853       END IF;
1854       IF (x_pav_rec.pricing_attribute48 = OKC_API.G_MISS_CHAR)
1855       THEN
1856         x_pav_rec.pricing_attribute48 := l_pav_rec.pricing_attribute48;
1857       END IF;
1858       IF (x_pav_rec.pricing_attribute49 = OKC_API.G_MISS_CHAR)
1859       THEN
1860         x_pav_rec.pricing_attribute49 := l_pav_rec.pricing_attribute49;
1861       END IF;
1862       IF (x_pav_rec.pricing_attribute50 = OKC_API.G_MISS_CHAR)
1863       THEN
1864         x_pav_rec.pricing_attribute50 := l_pav_rec.pricing_attribute50;
1865       END IF;
1866       IF (x_pav_rec.pricing_attribute51 = OKC_API.G_MISS_CHAR)
1867       THEN
1868         x_pav_rec.pricing_attribute51 := l_pav_rec.pricing_attribute51;
1869       END IF;
1870       IF (x_pav_rec.pricing_attribute52 = OKC_API.G_MISS_CHAR)
1871       THEN
1872         x_pav_rec.pricing_attribute52 := l_pav_rec.pricing_attribute52;
1873       END IF;
1874       IF (x_pav_rec.pricing_attribute53 = OKC_API.G_MISS_CHAR)
1875       THEN
1876         x_pav_rec.pricing_attribute53 := l_pav_rec.pricing_attribute53;
1877       END IF;
1878       IF (x_pav_rec.pricing_attribute54 = OKC_API.G_MISS_CHAR)
1879       THEN
1880         x_pav_rec.pricing_attribute54 := l_pav_rec.pricing_attribute54;
1881       END IF;
1882       IF (x_pav_rec.pricing_attribute55 = OKC_API.G_MISS_CHAR)
1883       THEN
1884         x_pav_rec.pricing_attribute55 := l_pav_rec.pricing_attribute55;
1885       END IF;
1886       IF (x_pav_rec.pricing_attribute56 = OKC_API.G_MISS_CHAR)
1887       THEN
1888         x_pav_rec.pricing_attribute56 := l_pav_rec.pricing_attribute56;
1889       END IF;
1890       IF (x_pav_rec.pricing_attribute57 = OKC_API.G_MISS_CHAR)
1891       THEN
1892         x_pav_rec.pricing_attribute57 := l_pav_rec.pricing_attribute57;
1893       END IF;
1894       IF (x_pav_rec.pricing_attribute58 = OKC_API.G_MISS_CHAR)
1895       THEN
1896         x_pav_rec.pricing_attribute58 := l_pav_rec.pricing_attribute58;
1897       END IF;
1898       IF (x_pav_rec.pricing_attribute59 = OKC_API.G_MISS_CHAR)
1899       THEN
1900         x_pav_rec.pricing_attribute59 := l_pav_rec.pricing_attribute59;
1901       END IF;
1902       IF (x_pav_rec.pricing_attribute60 = OKC_API.G_MISS_CHAR)
1903       THEN
1904         x_pav_rec.pricing_attribute60 := l_pav_rec.pricing_attribute60;
1905       END IF;
1906       IF (x_pav_rec.pricing_attribute61 = OKC_API.G_MISS_CHAR)
1907       THEN
1908         x_pav_rec.pricing_attribute61 := l_pav_rec.pricing_attribute61;
1909       END IF;
1910       IF (x_pav_rec.pricing_attribute62 = OKC_API.G_MISS_CHAR)
1911       THEN
1912         x_pav_rec.pricing_attribute62 := l_pav_rec.pricing_attribute62;
1913       END IF;
1914       IF (x_pav_rec.pricing_attribute63 = OKC_API.G_MISS_CHAR)
1915       THEN
1916         x_pav_rec.pricing_attribute63 := l_pav_rec.pricing_attribute63;
1917       END IF;
1918       IF (x_pav_rec.pricing_attribute64 = OKC_API.G_MISS_CHAR)
1919       THEN
1920         x_pav_rec.pricing_attribute64 := l_pav_rec.pricing_attribute64;
1921       END IF;
1922       IF (x_pav_rec.pricing_attribute65 = OKC_API.G_MISS_CHAR)
1923       THEN
1924         x_pav_rec.pricing_attribute65 := l_pav_rec.pricing_attribute65;
1925       END IF;
1926       IF (x_pav_rec.pricing_attribute66 = OKC_API.G_MISS_CHAR)
1927       THEN
1928         x_pav_rec.pricing_attribute66 := l_pav_rec.pricing_attribute66;
1929       END IF;
1930       IF (x_pav_rec.pricing_attribute67 = OKC_API.G_MISS_CHAR)
1931       THEN
1932         x_pav_rec.pricing_attribute67 := l_pav_rec.pricing_attribute67;
1933       END IF;
1934       IF (x_pav_rec.pricing_attribute68 = OKC_API.G_MISS_CHAR)
1935       THEN
1936         x_pav_rec.pricing_attribute68 := l_pav_rec.pricing_attribute68;
1937       END IF;
1938       IF (x_pav_rec.pricing_attribute69 = OKC_API.G_MISS_CHAR)
1939       THEN
1940         x_pav_rec.pricing_attribute69 := l_pav_rec.pricing_attribute69;
1941       END IF;
1942       IF (x_pav_rec.pricing_attribute70 = OKC_API.G_MISS_CHAR)
1943       THEN
1944         x_pav_rec.pricing_attribute70 := l_pav_rec.pricing_attribute70;
1945       END IF;
1946       IF (x_pav_rec.pricing_attribute71 = OKC_API.G_MISS_CHAR)
1947       THEN
1948         x_pav_rec.pricing_attribute71 := l_pav_rec.pricing_attribute71;
1949       END IF;
1950       IF (x_pav_rec.pricing_attribute72 = OKC_API.G_MISS_CHAR)
1951       THEN
1952         x_pav_rec.pricing_attribute72 := l_pav_rec.pricing_attribute72;
1953       END IF;
1954       IF (x_pav_rec.pricing_attribute73 = OKC_API.G_MISS_CHAR)
1955       THEN
1956         x_pav_rec.pricing_attribute73 := l_pav_rec.pricing_attribute73;
1957       END IF;
1958       IF (x_pav_rec.pricing_attribute74 = OKC_API.G_MISS_CHAR)
1959       THEN
1960         x_pav_rec.pricing_attribute74 := l_pav_rec.pricing_attribute74;
1961       END IF;
1962       IF (x_pav_rec.pricing_attribute75 = OKC_API.G_MISS_CHAR)
1963       THEN
1964         x_pav_rec.pricing_attribute75 := l_pav_rec.pricing_attribute75;
1965       END IF;
1966       IF (x_pav_rec.pricing_attribute76 = OKC_API.G_MISS_CHAR)
1967       THEN
1968         x_pav_rec.pricing_attribute76 := l_pav_rec.pricing_attribute76;
1969       END IF;
1970       IF (x_pav_rec.pricing_attribute77 = OKC_API.G_MISS_CHAR)
1971       THEN
1972         x_pav_rec.pricing_attribute77 := l_pav_rec.pricing_attribute77;
1973       END IF;
1974       IF (x_pav_rec.pricing_attribute78 = OKC_API.G_MISS_CHAR)
1975       THEN
1976         x_pav_rec.pricing_attribute78 := l_pav_rec.pricing_attribute78;
1977       END IF;
1978       IF (x_pav_rec.pricing_attribute79 = OKC_API.G_MISS_CHAR)
1979       THEN
1980         x_pav_rec.pricing_attribute79 := l_pav_rec.pricing_attribute79;
1981       END IF;
1982       IF (x_pav_rec.pricing_attribute80 = OKC_API.G_MISS_CHAR)
1983       THEN
1984         x_pav_rec.pricing_attribute80 := l_pav_rec.pricing_attribute80;
1985       END IF;
1986       IF (x_pav_rec.pricing_attribute81 = OKC_API.G_MISS_CHAR)
1987       THEN
1988         x_pav_rec.pricing_attribute81 := l_pav_rec.pricing_attribute81;
1989       END IF;
1990       IF (x_pav_rec.pricing_attribute82 = OKC_API.G_MISS_CHAR)
1991       THEN
1992         x_pav_rec.pricing_attribute82 := l_pav_rec.pricing_attribute82;
1993       END IF;
1994       IF (x_pav_rec.pricing_attribute83 = OKC_API.G_MISS_CHAR)
1995       THEN
1996         x_pav_rec.pricing_attribute83 := l_pav_rec.pricing_attribute83;
1997       END IF;
1998       IF (x_pav_rec.pricing_attribute84 = OKC_API.G_MISS_CHAR)
1999       THEN
2000         x_pav_rec.pricing_attribute84 := l_pav_rec.pricing_attribute84;
2001       END IF;
2002       IF (x_pav_rec.pricing_attribute85 = OKC_API.G_MISS_CHAR)
2003       THEN
2004         x_pav_rec.pricing_attribute85 := l_pav_rec.pricing_attribute85;
2005       END IF;
2006       IF (x_pav_rec.pricing_attribute86 = OKC_API.G_MISS_CHAR)
2007       THEN
2008         x_pav_rec.pricing_attribute86 := l_pav_rec.pricing_attribute86;
2009       END IF;
2010       IF (x_pav_rec.pricing_attribute87 = OKC_API.G_MISS_CHAR)
2011       THEN
2012         x_pav_rec.pricing_attribute87 := l_pav_rec.pricing_attribute87;
2013       END IF;
2014       IF (x_pav_rec.pricing_attribute88 = OKC_API.G_MISS_CHAR)
2015       THEN
2016         x_pav_rec.pricing_attribute88 := l_pav_rec.pricing_attribute88;
2017       END IF;
2018       IF (x_pav_rec.pricing_attribute89 = OKC_API.G_MISS_CHAR)
2019       THEN
2020         x_pav_rec.pricing_attribute89 := l_pav_rec.pricing_attribute89;
2021       END IF;
2022       IF (x_pav_rec.pricing_attribute90 = OKC_API.G_MISS_CHAR)
2023       THEN
2024         x_pav_rec.pricing_attribute90 := l_pav_rec.pricing_attribute90;
2025       END IF;
2026       IF (x_pav_rec.pricing_attribute91 = OKC_API.G_MISS_CHAR)
2027       THEN
2028         x_pav_rec.pricing_attribute91 := l_pav_rec.pricing_attribute91;
2029       END IF;
2030       IF (x_pav_rec.pricing_attribute92 = OKC_API.G_MISS_CHAR)
2031       THEN
2032         x_pav_rec.pricing_attribute92 := l_pav_rec.pricing_attribute92;
2033       END IF;
2034       IF (x_pav_rec.pricing_attribute93 = OKC_API.G_MISS_CHAR)
2035       THEN
2036         x_pav_rec.pricing_attribute93 := l_pav_rec.pricing_attribute93;
2037       END IF;
2038       IF (x_pav_rec.pricing_attribute94 = OKC_API.G_MISS_CHAR)
2039       THEN
2040         x_pav_rec.pricing_attribute94 := l_pav_rec.pricing_attribute94;
2041       END IF;
2042       IF (x_pav_rec.pricing_attribute95 = OKC_API.G_MISS_CHAR)
2043       THEN
2044         x_pav_rec.pricing_attribute95 := l_pav_rec.pricing_attribute95;
2045       END IF;
2046       IF (x_pav_rec.pricing_attribute96 = OKC_API.G_MISS_CHAR)
2047       THEN
2048         x_pav_rec.pricing_attribute96 := l_pav_rec.pricing_attribute96;
2049       END IF;
2050       IF (x_pav_rec.pricing_attribute97 = OKC_API.G_MISS_CHAR)
2051       THEN
2052         x_pav_rec.pricing_attribute97 := l_pav_rec.pricing_attribute97;
2053       END IF;
2054       IF (x_pav_rec.pricing_attribute98 = OKC_API.G_MISS_CHAR)
2055       THEN
2056         x_pav_rec.pricing_attribute98 := l_pav_rec.pricing_attribute98;
2057       END IF;
2058       IF (x_pav_rec.pricing_attribute99 = OKC_API.G_MISS_CHAR)
2059       THEN
2060         x_pav_rec.pricing_attribute99 := l_pav_rec.pricing_attribute99;
2061       END IF;
2062       IF (x_pav_rec.pricing_attribute100 = OKC_API.G_MISS_CHAR)
2063       THEN
2064         x_pav_rec.pricing_attribute100 := l_pav_rec.pricing_attribute100;
2065       END IF;
2066       IF (x_pav_rec.qualifier_context = OKC_API.G_MISS_CHAR)
2067       THEN
2068         x_pav_rec.qualifier_context := l_pav_rec.qualifier_context;
2069       END IF;
2070       IF (x_pav_rec.qualifier_attribute1 = OKC_API.G_MISS_CHAR)
2071       THEN
2072         x_pav_rec.qualifier_attribute1 := l_pav_rec.qualifier_attribute1;
2073       END IF;
2074       IF (x_pav_rec.qualifier_attribute2 = OKC_API.G_MISS_CHAR)
2075       THEN
2076         x_pav_rec.qualifier_attribute2 := l_pav_rec.qualifier_attribute2;
2077       END IF;
2078       IF (x_pav_rec.created_by = OKC_API.G_MISS_NUM)
2079       THEN
2080         x_pav_rec.created_by := l_pav_rec.created_by;
2081       END IF;
2082       IF (x_pav_rec.qualifier_attribute3 = OKC_API.G_MISS_CHAR)
2083       THEN
2084         x_pav_rec.qualifier_attribute3 := l_pav_rec.qualifier_attribute3;
2085       END IF;
2086       IF (x_pav_rec.creation_date = OKC_API.G_MISS_DATE)
2087       THEN
2088         x_pav_rec.creation_date := l_pav_rec.creation_date;
2089       END IF;
2090       IF (x_pav_rec.qualifier_attribute4 = OKC_API.G_MISS_CHAR)
2091       THEN
2092         x_pav_rec.qualifier_attribute4 := l_pav_rec.qualifier_attribute4;
2093       END IF;
2094       IF (x_pav_rec.qualifier_attribute5 = OKC_API.G_MISS_CHAR)
2095       THEN
2096         x_pav_rec.qualifier_attribute5 := l_pav_rec.qualifier_attribute5;
2097       END IF;
2098       IF (x_pav_rec.last_updated_by = OKC_API.G_MISS_NUM)
2099       THEN
2100         x_pav_rec.last_updated_by := l_pav_rec.last_updated_by;
2101       END IF;
2102       IF (x_pav_rec.qualifier_attribute6 = OKC_API.G_MISS_CHAR)
2103       THEN
2104         x_pav_rec.qualifier_attribute6 := l_pav_rec.qualifier_attribute6;
2105       END IF;
2106       IF (x_pav_rec.last_update_date = OKC_API.G_MISS_DATE)
2107       THEN
2108         x_pav_rec.last_update_date := l_pav_rec.last_update_date;
2109       END IF;
2110       IF (x_pav_rec.qualifier_attribute7 = OKC_API.G_MISS_CHAR)
2111       THEN
2112         x_pav_rec.qualifier_attribute7 := l_pav_rec.qualifier_attribute7;
2113       END IF;
2114       IF (x_pav_rec.qualifier_attribute8 = OKC_API.G_MISS_CHAR)
2115       THEN
2116         x_pav_rec.qualifier_attribute8 := l_pav_rec.qualifier_attribute8;
2117       END IF;
2118       IF (x_pav_rec.qualifier_attribute9 = OKC_API.G_MISS_CHAR)
2119       THEN
2120         x_pav_rec.qualifier_attribute9 := l_pav_rec.qualifier_attribute9;
2121       END IF;
2122       IF (x_pav_rec.qualifier_attribute10 = OKC_API.G_MISS_CHAR)
2123       THEN
2124         x_pav_rec.qualifier_attribute10 := l_pav_rec.qualifier_attribute10;
2125       END IF;
2126       IF (x_pav_rec.qualifier_attribute11 = OKC_API.G_MISS_CHAR)
2127       THEN
2128         x_pav_rec.qualifier_attribute11 := l_pav_rec.qualifier_attribute11;
2129       END IF;
2130       IF (x_pav_rec.qualifier_attribute12 = OKC_API.G_MISS_CHAR)
2131       THEN
2132         x_pav_rec.qualifier_attribute12 := l_pav_rec.qualifier_attribute12;
2133       END IF;
2134       IF (x_pav_rec.qualifier_attribute13 = OKC_API.G_MISS_CHAR)
2135       THEN
2136         x_pav_rec.qualifier_attribute13 := l_pav_rec.qualifier_attribute13;
2137       END IF;
2138       IF (x_pav_rec.qualifier_attribute14 = OKC_API.G_MISS_CHAR)
2139       THEN
2140         x_pav_rec.qualifier_attribute14 := l_pav_rec.qualifier_attribute14;
2141       END IF;
2142       IF (x_pav_rec.qualifier_attribute15 = OKC_API.G_MISS_CHAR)
2143       THEN
2144         x_pav_rec.qualifier_attribute15 := l_pav_rec.qualifier_attribute15;
2145       END IF;
2146       IF (x_pav_rec.qualifier_attribute16 = OKC_API.G_MISS_CHAR)
2147       THEN
2148         x_pav_rec.qualifier_attribute16 := l_pav_rec.qualifier_attribute16;
2149       END IF;
2150       IF (x_pav_rec.qualifier_attribute17 = OKC_API.G_MISS_CHAR)
2151       THEN
2152         x_pav_rec.qualifier_attribute17 := l_pav_rec.qualifier_attribute17;
2153       END IF;
2154       IF (x_pav_rec.qualifier_attribute18 = OKC_API.G_MISS_CHAR)
2155       THEN
2156         x_pav_rec.qualifier_attribute18 := l_pav_rec.qualifier_attribute18;
2157       END IF;
2158       IF (x_pav_rec.qualifier_attribute19 = OKC_API.G_MISS_CHAR)
2159       THEN
2160         x_pav_rec.qualifier_attribute19 := l_pav_rec.qualifier_attribute19;
2161       END IF;
2162       IF (x_pav_rec.qualifier_attribute20 = OKC_API.G_MISS_CHAR)
2163       THEN
2164         x_pav_rec.qualifier_attribute20 := l_pav_rec.qualifier_attribute20;
2165       END IF;
2166       IF (x_pav_rec.qualifier_attribute21 = OKC_API.G_MISS_CHAR)
2167       THEN
2168         x_pav_rec.qualifier_attribute21 := l_pav_rec.qualifier_attribute21;
2169       END IF;
2170       IF (x_pav_rec.qualifier_attribute22 = OKC_API.G_MISS_CHAR)
2171       THEN
2172         x_pav_rec.qualifier_attribute22 := l_pav_rec.qualifier_attribute22;
2173       END IF;
2174       IF (x_pav_rec.qualifier_attribute23 = OKC_API.G_MISS_CHAR)
2175       THEN
2176         x_pav_rec.qualifier_attribute23 := l_pav_rec.qualifier_attribute23;
2177       END IF;
2178       IF (x_pav_rec.qualifier_attribute24 = OKC_API.G_MISS_CHAR)
2179       THEN
2180         x_pav_rec.qualifier_attribute24 := l_pav_rec.qualifier_attribute24;
2181       END IF;
2182       IF (x_pav_rec.qualifier_attribute25 = OKC_API.G_MISS_CHAR)
2183       THEN
2184         x_pav_rec.qualifier_attribute25 := l_pav_rec.qualifier_attribute25;
2185       END IF;
2186       IF (x_pav_rec.qualifier_attribute26 = OKC_API.G_MISS_CHAR)
2187       THEN
2188         x_pav_rec.qualifier_attribute26 := l_pav_rec.qualifier_attribute26;
2189       END IF;
2190       IF (x_pav_rec.qualifier_attribute27 = OKC_API.G_MISS_CHAR)
2191       THEN
2192         x_pav_rec.qualifier_attribute27 := l_pav_rec.qualifier_attribute27;
2193       END IF;
2194       IF (x_pav_rec.qualifier_attribute28 = OKC_API.G_MISS_CHAR)
2195       THEN
2196         x_pav_rec.qualifier_attribute28 := l_pav_rec.qualifier_attribute28;
2197       END IF;
2198       IF (x_pav_rec.qualifier_attribute29 = OKC_API.G_MISS_CHAR)
2199       THEN
2200         x_pav_rec.qualifier_attribute29 := l_pav_rec.qualifier_attribute29;
2201       END IF;
2202       IF (x_pav_rec.qualifier_attribute30 = OKC_API.G_MISS_CHAR)
2203       THEN
2204         x_pav_rec.qualifier_attribute30 := l_pav_rec.qualifier_attribute30;
2205       END IF;
2206       IF (x_pav_rec.qualifier_attribute31 = OKC_API.G_MISS_CHAR)
2207       THEN
2208         x_pav_rec.qualifier_attribute31 := l_pav_rec.qualifier_attribute31;
2209       END IF;
2210       IF (x_pav_rec.qualifier_attribute32 = OKC_API.G_MISS_CHAR)
2211       THEN
2212         x_pav_rec.qualifier_attribute32 := l_pav_rec.qualifier_attribute32;
2213       END IF;
2214       IF (x_pav_rec.qualifier_attribute33 = OKC_API.G_MISS_CHAR)
2215       THEN
2216         x_pav_rec.qualifier_attribute33 := l_pav_rec.qualifier_attribute33;
2217       END IF;
2218       IF (x_pav_rec.qualifier_attribute34 = OKC_API.G_MISS_CHAR)
2219       THEN
2220         x_pav_rec.qualifier_attribute34 := l_pav_rec.qualifier_attribute34;
2221       END IF;
2222       IF (x_pav_rec.qualifier_attribute35 = OKC_API.G_MISS_CHAR)
2223       THEN
2224         x_pav_rec.qualifier_attribute35 := l_pav_rec.qualifier_attribute35;
2225       END IF;
2226       IF (x_pav_rec.qualifier_attribute36 = OKC_API.G_MISS_CHAR)
2227       THEN
2228         x_pav_rec.qualifier_attribute36 := l_pav_rec.qualifier_attribute36;
2229       END IF;
2230       IF (x_pav_rec.qualifier_attribute37 = OKC_API.G_MISS_CHAR)
2231       THEN
2232         x_pav_rec.qualifier_attribute37 := l_pav_rec.qualifier_attribute37;
2233       END IF;
2234       IF (x_pav_rec.qualifier_attribute38 = OKC_API.G_MISS_CHAR)
2235       THEN
2236         x_pav_rec.qualifier_attribute38 := l_pav_rec.qualifier_attribute38;
2237       END IF;
2238       IF (x_pav_rec.qualifier_attribute39 = OKC_API.G_MISS_CHAR)
2239       THEN
2240         x_pav_rec.qualifier_attribute39 := l_pav_rec.qualifier_attribute39;
2241       END IF;
2242       IF (x_pav_rec.qualifier_attribute40 = OKC_API.G_MISS_CHAR)
2243       THEN
2244         x_pav_rec.qualifier_attribute40 := l_pav_rec.qualifier_attribute40;
2245       END IF;
2246       IF (x_pav_rec.qualifier_attribute41 = OKC_API.G_MISS_CHAR)
2247       THEN
2248         x_pav_rec.qualifier_attribute41 := l_pav_rec.qualifier_attribute41;
2249       END IF;
2250       IF (x_pav_rec.qualifier_attribute42 = OKC_API.G_MISS_CHAR)
2251       THEN
2252         x_pav_rec.qualifier_attribute42 := l_pav_rec.qualifier_attribute42;
2253       END IF;
2254       IF (x_pav_rec.qualifier_attribute43 = OKC_API.G_MISS_CHAR)
2255       THEN
2256         x_pav_rec.qualifier_attribute43 := l_pav_rec.qualifier_attribute43;
2257       END IF;
2258       IF (x_pav_rec.qualifier_attribute44 = OKC_API.G_MISS_CHAR)
2259       THEN
2260         x_pav_rec.qualifier_attribute44 := l_pav_rec.qualifier_attribute44;
2261       END IF;
2262       IF (x_pav_rec.qualifier_attribute45 = OKC_API.G_MISS_CHAR)
2263       THEN
2264         x_pav_rec.qualifier_attribute45 := l_pav_rec.qualifier_attribute45;
2265       END IF;
2266       IF (x_pav_rec.qualifier_attribute46 = OKC_API.G_MISS_CHAR)
2267       THEN
2268         x_pav_rec.qualifier_attribute46 := l_pav_rec.qualifier_attribute46;
2269       END IF;
2270       IF (x_pav_rec.qualifier_attribute47 = OKC_API.G_MISS_CHAR)
2271       THEN
2272         x_pav_rec.qualifier_attribute47 := l_pav_rec.qualifier_attribute47;
2273       END IF;
2274       IF (x_pav_rec.qualifier_attribute48 = OKC_API.G_MISS_CHAR)
2275       THEN
2276         x_pav_rec.qualifier_attribute48 := l_pav_rec.qualifier_attribute48;
2277       END IF;
2278       IF (x_pav_rec.qualifier_attribute49 = OKC_API.G_MISS_CHAR)
2279       THEN
2280         x_pav_rec.qualifier_attribute49 := l_pav_rec.qualifier_attribute49;
2281       END IF;
2282       IF (x_pav_rec.qualifier_attribute50 = OKC_API.G_MISS_CHAR)
2283       THEN
2284         x_pav_rec.qualifier_attribute50 := l_pav_rec.qualifier_attribute50;
2285       END IF;
2286       IF (x_pav_rec.qualifier_attribute51 = OKC_API.G_MISS_CHAR)
2287       THEN
2288         x_pav_rec.qualifier_attribute51 := l_pav_rec.qualifier_attribute51;
2289       END IF;
2290       IF (x_pav_rec.qualifier_attribute52 = OKC_API.G_MISS_CHAR)
2291       THEN
2292         x_pav_rec.qualifier_attribute52 := l_pav_rec.qualifier_attribute52;
2293       END IF;
2294       IF (x_pav_rec.qualifier_attribute53 = OKC_API.G_MISS_CHAR)
2295       THEN
2296         x_pav_rec.qualifier_attribute53 := l_pav_rec.qualifier_attribute53;
2297       END IF;
2298       IF (x_pav_rec.qualifier_attribute54 = OKC_API.G_MISS_CHAR)
2299       THEN
2300         x_pav_rec.qualifier_attribute54 := l_pav_rec.qualifier_attribute54;
2301       END IF;
2302       IF (x_pav_rec.qualifier_attribute55 = OKC_API.G_MISS_CHAR)
2303       THEN
2304         x_pav_rec.qualifier_attribute55 := l_pav_rec.qualifier_attribute55;
2305       END IF;
2306       IF (x_pav_rec.qualifier_attribute56 = OKC_API.G_MISS_CHAR)
2307       THEN
2308         x_pav_rec.qualifier_attribute56 := l_pav_rec.qualifier_attribute56;
2309       END IF;
2310       IF (x_pav_rec.qualifier_attribute57 = OKC_API.G_MISS_CHAR)
2311       THEN
2312         x_pav_rec.qualifier_attribute57 := l_pav_rec.qualifier_attribute57;
2313       END IF;
2314       IF (x_pav_rec.qualifier_attribute58 = OKC_API.G_MISS_CHAR)
2315       THEN
2316         x_pav_rec.qualifier_attribute58 := l_pav_rec.qualifier_attribute58;
2317       END IF;
2318       IF (x_pav_rec.qualifier_attribute59 = OKC_API.G_MISS_CHAR)
2319       THEN
2320         x_pav_rec.qualifier_attribute59 := l_pav_rec.qualifier_attribute59;
2321       END IF;
2322       IF (x_pav_rec.qualifier_attribute60 = OKC_API.G_MISS_CHAR)
2323       THEN
2324         x_pav_rec.qualifier_attribute60 := l_pav_rec.qualifier_attribute60;
2325       END IF;
2326       IF (x_pav_rec.qualifier_attribute61 = OKC_API.G_MISS_CHAR)
2327       THEN
2328         x_pav_rec.qualifier_attribute61 := l_pav_rec.qualifier_attribute61;
2329       END IF;
2330       IF (x_pav_rec.qualifier_attribute62 = OKC_API.G_MISS_CHAR)
2331       THEN
2332         x_pav_rec.qualifier_attribute62 := l_pav_rec.qualifier_attribute62;
2333       END IF;
2334       IF (x_pav_rec.qualifier_attribute63 = OKC_API.G_MISS_CHAR)
2335       THEN
2336         x_pav_rec.qualifier_attribute63 := l_pav_rec.qualifier_attribute63;
2337       END IF;
2338       IF (x_pav_rec.qualifier_attribute64 = OKC_API.G_MISS_CHAR)
2339       THEN
2340         x_pav_rec.qualifier_attribute64 := l_pav_rec.qualifier_attribute64;
2341       END IF;
2342       IF (x_pav_rec.qualifier_attribute65 = OKC_API.G_MISS_CHAR)
2343       THEN
2344         x_pav_rec.qualifier_attribute65 := l_pav_rec.qualifier_attribute65;
2345       END IF;
2346       IF (x_pav_rec.qualifier_attribute66 = OKC_API.G_MISS_CHAR)
2347       THEN
2348         x_pav_rec.qualifier_attribute66 := l_pav_rec.qualifier_attribute66;
2349       END IF;
2350       IF (x_pav_rec.qualifier_attribute67 = OKC_API.G_MISS_CHAR)
2351       THEN
2352         x_pav_rec.qualifier_attribute67 := l_pav_rec.qualifier_attribute67;
2353       END IF;
2354       IF (x_pav_rec.qualifier_attribute68 = OKC_API.G_MISS_CHAR)
2355       THEN
2356         x_pav_rec.qualifier_attribute68 := l_pav_rec.qualifier_attribute68;
2357       END IF;
2358       IF (x_pav_rec.qualifier_attribute69 = OKC_API.G_MISS_CHAR)
2359       THEN
2360         x_pav_rec.qualifier_attribute69 := l_pav_rec.qualifier_attribute69;
2361       END IF;
2362       IF (x_pav_rec.qualifier_attribute70 = OKC_API.G_MISS_CHAR)
2363       THEN
2364         x_pav_rec.qualifier_attribute70 := l_pav_rec.qualifier_attribute70;
2365       END IF;
2366       IF (x_pav_rec.qualifier_attribute71 = OKC_API.G_MISS_CHAR)
2367       THEN
2368         x_pav_rec.qualifier_attribute71 := l_pav_rec.qualifier_attribute71;
2369       END IF;
2370       IF (x_pav_rec.qualifier_attribute72 = OKC_API.G_MISS_CHAR)
2371       THEN
2372         x_pav_rec.qualifier_attribute72 := l_pav_rec.qualifier_attribute72;
2373       END IF;
2374       IF (x_pav_rec.qualifier_attribute73 = OKC_API.G_MISS_CHAR)
2375       THEN
2376         x_pav_rec.qualifier_attribute73 := l_pav_rec.qualifier_attribute73;
2377       END IF;
2378       IF (x_pav_rec.qualifier_attribute74 = OKC_API.G_MISS_CHAR)
2379       THEN
2380         x_pav_rec.qualifier_attribute74 := l_pav_rec.qualifier_attribute74;
2381       END IF;
2382       IF (x_pav_rec.qualifier_attribute75 = OKC_API.G_MISS_CHAR)
2383       THEN
2384         x_pav_rec.qualifier_attribute75 := l_pav_rec.qualifier_attribute75;
2385       END IF;
2386       IF (x_pav_rec.qualifier_attribute76 = OKC_API.G_MISS_CHAR)
2387       THEN
2388         x_pav_rec.qualifier_attribute76 := l_pav_rec.qualifier_attribute76;
2389       END IF;
2390       IF (x_pav_rec.qualifier_attribute77 = OKC_API.G_MISS_CHAR)
2391       THEN
2392         x_pav_rec.qualifier_attribute77 := l_pav_rec.qualifier_attribute77;
2393       END IF;
2394       IF (x_pav_rec.qualifier_attribute78 = OKC_API.G_MISS_CHAR)
2395       THEN
2396         x_pav_rec.qualifier_attribute78 := l_pav_rec.qualifier_attribute78;
2397       END IF;
2398       IF (x_pav_rec.qualifier_attribute79 = OKC_API.G_MISS_CHAR)
2399       THEN
2400         x_pav_rec.qualifier_attribute79 := l_pav_rec.qualifier_attribute79;
2401       END IF;
2402       IF (x_pav_rec.qualifier_attribute80 = OKC_API.G_MISS_CHAR)
2403       THEN
2404         x_pav_rec.qualifier_attribute80 := l_pav_rec.qualifier_attribute80;
2405       END IF;
2406       IF (x_pav_rec.qualifier_attribute81 = OKC_API.G_MISS_CHAR)
2407       THEN
2408         x_pav_rec.qualifier_attribute81 := l_pav_rec.qualifier_attribute81;
2409       END IF;
2410       IF (x_pav_rec.qualifier_attribute82 = OKC_API.G_MISS_CHAR)
2411       THEN
2412         x_pav_rec.qualifier_attribute82 := l_pav_rec.qualifier_attribute82;
2413       END IF;
2414       IF (x_pav_rec.qualifier_attribute83 = OKC_API.G_MISS_CHAR)
2415       THEN
2416         x_pav_rec.qualifier_attribute83 := l_pav_rec.qualifier_attribute83;
2417       END IF;
2418       IF (x_pav_rec.qualifier_attribute84 = OKC_API.G_MISS_CHAR)
2419       THEN
2420         x_pav_rec.qualifier_attribute84 := l_pav_rec.qualifier_attribute84;
2421       END IF;
2422       IF (x_pav_rec.qualifier_attribute85 = OKC_API.G_MISS_CHAR)
2423       THEN
2424         x_pav_rec.qualifier_attribute85 := l_pav_rec.qualifier_attribute85;
2425       END IF;
2426       IF (x_pav_rec.qualifier_attribute86 = OKC_API.G_MISS_CHAR)
2427       THEN
2428         x_pav_rec.qualifier_attribute86 := l_pav_rec.qualifier_attribute86;
2429       END IF;
2430       IF (x_pav_rec.qualifier_attribute87 = OKC_API.G_MISS_CHAR)
2431       THEN
2432         x_pav_rec.qualifier_attribute87 := l_pav_rec.qualifier_attribute87;
2433       END IF;
2434       IF (x_pav_rec.qualifier_attribute88 = OKC_API.G_MISS_CHAR)
2435       THEN
2436         x_pav_rec.qualifier_attribute88 := l_pav_rec.qualifier_attribute88;
2437       END IF;
2438       IF (x_pav_rec.qualifier_attribute89 = OKC_API.G_MISS_CHAR)
2439       THEN
2440         x_pav_rec.qualifier_attribute89 := l_pav_rec.qualifier_attribute89;
2441       END IF;
2442       IF (x_pav_rec.qualifier_attribute90 = OKC_API.G_MISS_CHAR)
2443       THEN
2444         x_pav_rec.qualifier_attribute90 := l_pav_rec.qualifier_attribute90;
2445       END IF;
2446       IF (x_pav_rec.qualifier_attribute91 = OKC_API.G_MISS_CHAR)
2447       THEN
2448         x_pav_rec.qualifier_attribute91 := l_pav_rec.qualifier_attribute91;
2449       END IF;
2450       IF (x_pav_rec.qualifier_attribute92 = OKC_API.G_MISS_CHAR)
2451       THEN
2452         x_pav_rec.qualifier_attribute92 := l_pav_rec.qualifier_attribute92;
2453       END IF;
2454       IF (x_pav_rec.qualifier_attribute93 = OKC_API.G_MISS_CHAR)
2455       THEN
2456         x_pav_rec.qualifier_attribute93 := l_pav_rec.qualifier_attribute93;
2457       END IF;
2458       IF (x_pav_rec.qualifier_attribute94 = OKC_API.G_MISS_CHAR)
2459       THEN
2460         x_pav_rec.qualifier_attribute94 := l_pav_rec.qualifier_attribute94;
2461       END IF;
2462       IF (x_pav_rec.qualifier_attribute95 = OKC_API.G_MISS_CHAR)
2463       THEN
2464         x_pav_rec.qualifier_attribute95 := l_pav_rec.qualifier_attribute95;
2465       END IF;
2466       IF (x_pav_rec.qualifier_attribute96 = OKC_API.G_MISS_CHAR)
2467       THEN
2468         x_pav_rec.qualifier_attribute96 := l_pav_rec.qualifier_attribute96;
2469       END IF;
2470       IF (x_pav_rec.qualifier_attribute97 = OKC_API.G_MISS_CHAR)
2471       THEN
2472         x_pav_rec.qualifier_attribute97 := l_pav_rec.qualifier_attribute97;
2473       END IF;
2474       IF (x_pav_rec.qualifier_attribute98 = OKC_API.G_MISS_CHAR)
2475       THEN
2476         x_pav_rec.qualifier_attribute98 := l_pav_rec.qualifier_attribute98;
2477       END IF;
2478       IF (x_pav_rec.qualifier_attribute99 = OKC_API.G_MISS_CHAR)
2479       THEN
2480         x_pav_rec.qualifier_attribute99 := l_pav_rec.qualifier_attribute99;
2481       END IF;
2482       IF (x_pav_rec.qualifier_attribute100 = OKC_API.G_MISS_CHAR)
2483       THEN
2484         x_pav_rec.qualifier_attribute100 := l_pav_rec.qualifier_attribute100;
2485       END IF;
2486       IF (x_pav_rec.last_update_login = OKC_API.G_MISS_NUM)
2487       THEN
2488         x_pav_rec.last_update_login := l_pav_rec.last_update_login;
2489       END IF;
2490    IF (x_pav_rec.program_application_id = OKC_API.G_MISS_NUM)
2491       THEN
2492         x_pav_rec.program_application_id := l_pav_rec.program_application_id;
2493       END IF;
2494    IF (x_pav_rec.program_id = OKC_API.G_MISS_NUM)
2495       THEN
2496         x_pav_rec.program_id := l_pav_rec.program_id;
2497       END IF;
2498    IF (x_pav_rec.program_update_date = OKC_API.G_MISS_DATE)
2499       THEN
2500         x_pav_rec.program_update_date := l_pav_rec.program_update_date;
2501       END IF;
2502    IF (x_pav_rec.request_id = OKC_API.G_MISS_NUM)
2503       THEN
2504         x_pav_rec.request_id := l_pav_rec.request_id;
2505       END IF;
2506    IF (x_pav_rec.object_version_number = OKC_API.G_MISS_NUM)
2507       THEN
2508         x_pav_rec.object_version_number := l_pav_rec.object_version_number;
2509       END IF;
2510  RETURN(l_return_status);
2511     END populate_new_record;
2512     ---------------------------------------------
2513     -- Set_Attributes for:OKC_PRICE_ATT_VALUES --
2514     ---------------------------------------------
2515     FUNCTION Set_Attributes (
2516       p_pav_rec IN  pav_rec_type,
2517       x_pav_rec OUT NOCOPY pav_rec_type
2518     ) RETURN VARCHAR2 IS
2519       l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2520     BEGIN
2521       x_pav_rec := p_pav_rec;
2522       RETURN(l_return_status);
2523     END Set_Attributes;
2524   BEGIN
2525     l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2526                                               p_init_msg_list,
2527                                               '_PVT',
2528                                               x_return_status);
2529     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2530       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2531     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2532       RAISE OKC_API.G_EXCEPTION_ERROR;
2533     END IF;
2534     --- Setting item attributes
2535     l_return_status := Set_Attributes(
2536       p_pav_rec,                         -- IN
2537       l_pav_rec);                        -- OUT
2538     --- If any errors happen abort API
2539     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2540       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2541     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2542       RAISE OKC_API.G_EXCEPTION_ERROR;
2543     END IF;
2544     l_return_status := populate_new_record(l_pav_rec, l_def_pav_rec);
2545     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2546       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2547     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2548       RAISE OKC_API.G_EXCEPTION_ERROR;
2549     END IF;
2550     UPDATE  OKC_PRICE_ATT_VALUES
2551     SET FLEX_TITLE = l_def_pav_rec.flex_title,
2552         PRICING_CONTEXT = l_def_pav_rec.pricing_context,
2553         PRICING_ATTRIBUTE1 = l_def_pav_rec.pricing_attribute1,
2554         CHR_ID = l_def_pav_rec.chr_id,
2555         PRICING_ATTRIBUTE2 = l_def_pav_rec.pricing_attribute2,
2556         CLE_ID = l_def_pav_rec.cle_id,
2557         PRICING_ATTRIBUTE3 = l_def_pav_rec.pricing_attribute3,
2558         PRICING_ATTRIBUTE4 = l_def_pav_rec.pricing_attribute4,
2559         PRICING_ATTRIBUTE5 = l_def_pav_rec.pricing_attribute5,
2560         PRICING_ATTRIBUTE6 = l_def_pav_rec.pricing_attribute6,
2561         PRICING_ATTRIBUTE7 = l_def_pav_rec.pricing_attribute7,
2562         PRICING_ATTRIBUTE8 = l_def_pav_rec.pricing_attribute8,
2563         PRICING_ATTRIBUTE9 = l_def_pav_rec.pricing_attribute9,
2564         PRICING_ATTRIBUTE10 = l_def_pav_rec.pricing_attribute10,
2565         PRICING_ATTRIBUTE11 = l_def_pav_rec.pricing_attribute11,
2566         PRICING_ATTRIBUTE12 = l_def_pav_rec.pricing_attribute12,
2567         PRICING_ATTRIBUTE13 = l_def_pav_rec.pricing_attribute13,
2568         PRICING_ATTRIBUTE14 = l_def_pav_rec.pricing_attribute14,
2569         PRICING_ATTRIBUTE15 = l_def_pav_rec.pricing_attribute15,
2570         PRICING_ATTRIBUTE16 = l_def_pav_rec.pricing_attribute16,
2571         PRICING_ATTRIBUTE17 = l_def_pav_rec.pricing_attribute17,
2572         PRICING_ATTRIBUTE18 = l_def_pav_rec.pricing_attribute18,
2573         PRICING_ATTRIBUTE19 = l_def_pav_rec.pricing_attribute19,
2574         PRICING_ATTRIBUTE20 = l_def_pav_rec.pricing_attribute20,
2575         PRICING_ATTRIBUTE21 = l_def_pav_rec.pricing_attribute21,
2576         PRICING_ATTRIBUTE22 = l_def_pav_rec.pricing_attribute22,
2577         PRICING_ATTRIBUTE23 = l_def_pav_rec.pricing_attribute23,
2578         PRICING_ATTRIBUTE24 = l_def_pav_rec.pricing_attribute24,
2579         PRICING_ATTRIBUTE25 = l_def_pav_rec.pricing_attribute25,
2580         PRICING_ATTRIBUTE26 = l_def_pav_rec.pricing_attribute26,
2581         PRICING_ATTRIBUTE27 = l_def_pav_rec.pricing_attribute27,
2582         PRICING_ATTRIBUTE28 = l_def_pav_rec.pricing_attribute28,
2583         PRICING_ATTRIBUTE29 = l_def_pav_rec.pricing_attribute29,
2584         PRICING_ATTRIBUTE30 = l_def_pav_rec.pricing_attribute30,
2585         PRICING_ATTRIBUTE31 = l_def_pav_rec.pricing_attribute31,
2586         PRICING_ATTRIBUTE32 = l_def_pav_rec.pricing_attribute32,
2587         PRICING_ATTRIBUTE33 = l_def_pav_rec.pricing_attribute33,
2588         PRICING_ATTRIBUTE34 = l_def_pav_rec.pricing_attribute34,
2589         PRICING_ATTRIBUTE35 = l_def_pav_rec.pricing_attribute35,
2590         PRICING_ATTRIBUTE36 = l_def_pav_rec.pricing_attribute36,
2591         PRICING_ATTRIBUTE37 = l_def_pav_rec.pricing_attribute37,
2592         PRICING_ATTRIBUTE38 = l_def_pav_rec.pricing_attribute38,
2593         PRICING_ATTRIBUTE39 = l_def_pav_rec.pricing_attribute39,
2594         PRICING_ATTRIBUTE40 = l_def_pav_rec.pricing_attribute40,
2595         PRICING_ATTRIBUTE41 = l_def_pav_rec.pricing_attribute41,
2596         PRICING_ATTRIBUTE42 = l_def_pav_rec.pricing_attribute42,
2597         PRICING_ATTRIBUTE43 = l_def_pav_rec.pricing_attribute43,
2598         PRICING_ATTRIBUTE44 = l_def_pav_rec.pricing_attribute44,
2599         PRICING_ATTRIBUTE45 = l_def_pav_rec.pricing_attribute45,
2600         PRICING_ATTRIBUTE46 = l_def_pav_rec.pricing_attribute46,
2601         PRICING_ATTRIBUTE47 = l_def_pav_rec.pricing_attribute47,
2602         PRICING_ATTRIBUTE48 = l_def_pav_rec.pricing_attribute48,
2603         PRICING_ATTRIBUTE49 = l_def_pav_rec.pricing_attribute49,
2604         PRICING_ATTRIBUTE50 = l_def_pav_rec.pricing_attribute50,
2605         PRICING_ATTRIBUTE51 = l_def_pav_rec.pricing_attribute51,
2606         PRICING_ATTRIBUTE52 = l_def_pav_rec.pricing_attribute52,
2607         PRICING_ATTRIBUTE53 = l_def_pav_rec.pricing_attribute53,
2608         PRICING_ATTRIBUTE54 = l_def_pav_rec.pricing_attribute54,
2609         PRICING_ATTRIBUTE55 = l_def_pav_rec.pricing_attribute55,
2610         PRICING_ATTRIBUTE56 = l_def_pav_rec.pricing_attribute56,
2611         PRICING_ATTRIBUTE57 = l_def_pav_rec.pricing_attribute57,
2612         PRICING_ATTRIBUTE58 = l_def_pav_rec.pricing_attribute58,
2613         PRICING_ATTRIBUTE59 = l_def_pav_rec.pricing_attribute59,
2614         PRICING_ATTRIBUTE60 = l_def_pav_rec.pricing_attribute60,
2615         PRICING_ATTRIBUTE61 = l_def_pav_rec.pricing_attribute61,
2616         PRICING_ATTRIBUTE62 = l_def_pav_rec.pricing_attribute62,
2617         PRICING_ATTRIBUTE63 = l_def_pav_rec.pricing_attribute63,
2618         PRICING_ATTRIBUTE64 = l_def_pav_rec.pricing_attribute64,
2619         PRICING_ATTRIBUTE65 = l_def_pav_rec.pricing_attribute65,
2620         PRICING_ATTRIBUTE66 = l_def_pav_rec.pricing_attribute66,
2621         PRICING_ATTRIBUTE67 = l_def_pav_rec.pricing_attribute67,
2622         PRICING_ATTRIBUTE68 = l_def_pav_rec.pricing_attribute68,
2623         PRICING_ATTRIBUTE69 = l_def_pav_rec.pricing_attribute69,
2624         PRICING_ATTRIBUTE70 = l_def_pav_rec.pricing_attribute70,
2625         PRICING_ATTRIBUTE71 = l_def_pav_rec.pricing_attribute71,
2626         PRICING_ATTRIBUTE72 = l_def_pav_rec.pricing_attribute72,
2627         PRICING_ATTRIBUTE73 = l_def_pav_rec.pricing_attribute73,
2628         PRICING_ATTRIBUTE74 = l_def_pav_rec.pricing_attribute74,
2629         PRICING_ATTRIBUTE75 = l_def_pav_rec.pricing_attribute75,
2630         PRICING_ATTRIBUTE76 = l_def_pav_rec.pricing_attribute76,
2631         PRICING_ATTRIBUTE77 = l_def_pav_rec.pricing_attribute77,
2632         PRICING_ATTRIBUTE78 = l_def_pav_rec.pricing_attribute78,
2633         PRICING_ATTRIBUTE79 = l_def_pav_rec.pricing_attribute79,
2634         PRICING_ATTRIBUTE80 = l_def_pav_rec.pricing_attribute80,
2635         PRICING_ATTRIBUTE81 = l_def_pav_rec.pricing_attribute81,
2636         PRICING_ATTRIBUTE82 = l_def_pav_rec.pricing_attribute82,
2637         PRICING_ATTRIBUTE83 = l_def_pav_rec.pricing_attribute83,
2638         PRICING_ATTRIBUTE84 = l_def_pav_rec.pricing_attribute84,
2639         PRICING_ATTRIBUTE85 = l_def_pav_rec.pricing_attribute85,
2640         PRICING_ATTRIBUTE86 = l_def_pav_rec.pricing_attribute86,
2641         PRICING_ATTRIBUTE87 = l_def_pav_rec.pricing_attribute87,
2642         PRICING_ATTRIBUTE88 = l_def_pav_rec.pricing_attribute88,
2643         PRICING_ATTRIBUTE89 = l_def_pav_rec.pricing_attribute89,
2644         PRICING_ATTRIBUTE90 = l_def_pav_rec.pricing_attribute90,
2645         PRICING_ATTRIBUTE91 = l_def_pav_rec.pricing_attribute91,
2646         PRICING_ATTRIBUTE92 = l_def_pav_rec.pricing_attribute92,
2647         PRICING_ATTRIBUTE93 = l_def_pav_rec.pricing_attribute93,
2648         PRICING_ATTRIBUTE94 = l_def_pav_rec.pricing_attribute94,
2649         PRICING_ATTRIBUTE95 = l_def_pav_rec.pricing_attribute95,
2650         PRICING_ATTRIBUTE96 = l_def_pav_rec.pricing_attribute96,
2651         PRICING_ATTRIBUTE97 = l_def_pav_rec.pricing_attribute97,
2652         PRICING_ATTRIBUTE98 = l_def_pav_rec.pricing_attribute98,
2653         PRICING_ATTRIBUTE99 = l_def_pav_rec.pricing_attribute99,
2654         PRICING_ATTRIBUTE100 = l_def_pav_rec.pricing_attribute100,
2655         QUALIFIER_CONTEXT = l_def_pav_rec.qualifier_context,
2656         QUALIFIER_ATTRIBUTE1 = l_def_pav_rec.qualifier_attribute1,
2657         QUALIFIER_ATTRIBUTE2 = l_def_pav_rec.qualifier_attribute2,
2658         CREATED_BY = l_def_pav_rec.created_by,
2659         QUALIFIER_ATTRIBUTE3 = l_def_pav_rec.qualifier_attribute3,
2660         CREATION_DATE = l_def_pav_rec.creation_date,
2661         QUALIFIER_ATTRIBUTE4 = l_def_pav_rec.qualifier_attribute4,
2662         QUALIFIER_ATTRIBUTE5 = l_def_pav_rec.qualifier_attribute5,
2663         LAST_UPDATED_BY = l_def_pav_rec.last_updated_by,
2664         QUALIFIER_ATTRIBUTE6 = l_def_pav_rec.qualifier_attribute6,
2665         LAST_UPDATE_DATE = l_def_pav_rec.last_update_date,
2666         QUALIFIER_ATTRIBUTE7 = l_def_pav_rec.qualifier_attribute7,
2667         QUALIFIER_ATTRIBUTE8 = l_def_pav_rec.qualifier_attribute8,
2668         QUALIFIER_ATTRIBUTE9 = l_def_pav_rec.qualifier_attribute9,
2669         QUALIFIER_ATTRIBUTE10 = l_def_pav_rec.qualifier_attribute10,
2670         QUALIFIER_ATTRIBUTE11 = l_def_pav_rec.qualifier_attribute11,
2671         QUALIFIER_ATTRIBUTE12 = l_def_pav_rec.qualifier_attribute12,
2672         QUALIFIER_ATTRIBUTE13 = l_def_pav_rec.qualifier_attribute13,
2673         QUALIFIER_ATTRIBUTE14 = l_def_pav_rec.qualifier_attribute14,
2674         QUALIFIER_ATTRIBUTE15 = l_def_pav_rec.qualifier_attribute15,
2675         QUALIFIER_ATTRIBUTE16 = l_def_pav_rec.qualifier_attribute16,
2676         QUALIFIER_ATTRIBUTE17 = l_def_pav_rec.qualifier_attribute17,
2677         QUALIFIER_ATTRIBUTE18 = l_def_pav_rec.qualifier_attribute18,
2678         QUALIFIER_ATTRIBUTE19 = l_def_pav_rec.qualifier_attribute19,
2679         QUALIFIER_ATTRIBUTE20 = l_def_pav_rec.qualifier_attribute20,
2680         QUALIFIER_ATTRIBUTE21 = l_def_pav_rec.qualifier_attribute21,
2681         QUALIFIER_ATTRIBUTE22 = l_def_pav_rec.qualifier_attribute22,
2682         QUALIFIER_ATTRIBUTE23 = l_def_pav_rec.qualifier_attribute23,
2683         QUALIFIER_ATTRIBUTE24 = l_def_pav_rec.qualifier_attribute24,
2684         QUALIFIER_ATTRIBUTE25 = l_def_pav_rec.qualifier_attribute25,
2685         QUALIFIER_ATTRIBUTE26 = l_def_pav_rec.qualifier_attribute26,
2686         QUALIFIER_ATTRIBUTE27 = l_def_pav_rec.qualifier_attribute27,
2687         QUALIFIER_ATTRIBUTE28 = l_def_pav_rec.qualifier_attribute28,
2688         QUALIFIER_ATTRIBUTE29 = l_def_pav_rec.qualifier_attribute29,
2689         QUALIFIER_ATTRIBUTE30 = l_def_pav_rec.qualifier_attribute30,
2690         QUALIFIER_ATTRIBUTE31 = l_def_pav_rec.qualifier_attribute31,
2691         QUALIFIER_ATTRIBUTE32 = l_def_pav_rec.qualifier_attribute32,
2692         QUALIFIER_ATTRIBUTE33 = l_def_pav_rec.qualifier_attribute33,
2693         QUALIFIER_ATTRIBUTE34 = l_def_pav_rec.qualifier_attribute34,
2694         QUALIFIER_ATTRIBUTE35 = l_def_pav_rec.qualifier_attribute35,
2695         QUALIFIER_ATTRIBUTE36 = l_def_pav_rec.qualifier_attribute36,
2696         QUALIFIER_ATTRIBUTE37 = l_def_pav_rec.qualifier_attribute37,
2697         QUALIFIER_ATTRIBUTE38 = l_def_pav_rec.qualifier_attribute38,
2698         QUALIFIER_ATTRIBUTE39 = l_def_pav_rec.qualifier_attribute39,
2699         QUALIFIER_ATTRIBUTE40 = l_def_pav_rec.qualifier_attribute40,
2700         QUALIFIER_ATTRIBUTE41 = l_def_pav_rec.qualifier_attribute41,
2701         QUALIFIER_ATTRIBUTE42 = l_def_pav_rec.qualifier_attribute42,
2702         QUALIFIER_ATTRIBUTE43 = l_def_pav_rec.qualifier_attribute43,
2703         QUALIFIER_ATTRIBUTE44 = l_def_pav_rec.qualifier_attribute44,
2704         QUALIFIER_ATTRIBUTE45 = l_def_pav_rec.qualifier_attribute45,
2705         QUALIFIER_ATTRIBUTE46 = l_def_pav_rec.qualifier_attribute46,
2706         QUALIFIER_ATTRIBUTE47 = l_def_pav_rec.qualifier_attribute47,
2707         QUALIFIER_ATTRIBUTE48 = l_def_pav_rec.qualifier_attribute48,
2708         QUALIFIER_ATTRIBUTE49 = l_def_pav_rec.qualifier_attribute49,
2709         QUALIFIER_ATTRIBUTE50 = l_def_pav_rec.qualifier_attribute50,
2710         QUALIFIER_ATTRIBUTE51 = l_def_pav_rec.qualifier_attribute51,
2711         QUALIFIER_ATTRIBUTE52 = l_def_pav_rec.qualifier_attribute52,
2712         QUALIFIER_ATTRIBUTE53 = l_def_pav_rec.qualifier_attribute53,
2713         QUALIFIER_ATTRIBUTE54 = l_def_pav_rec.qualifier_attribute54,
2714         QUALIFIER_ATTRIBUTE55 = l_def_pav_rec.qualifier_attribute55,
2715         QUALIFIER_ATTRIBUTE56 = l_def_pav_rec.qualifier_attribute56,
2716         QUALIFIER_ATTRIBUTE57 = l_def_pav_rec.qualifier_attribute57,
2717         QUALIFIER_ATTRIBUTE58 = l_def_pav_rec.qualifier_attribute58,
2718         QUALIFIER_ATTRIBUTE59 = l_def_pav_rec.qualifier_attribute59,
2719         QUALIFIER_ATTRIBUTE60 = l_def_pav_rec.qualifier_attribute60,
2720         QUALIFIER_ATTRIBUTE61 = l_def_pav_rec.qualifier_attribute61,
2721         QUALIFIER_ATTRIBUTE62 = l_def_pav_rec.qualifier_attribute62,
2722         QUALIFIER_ATTRIBUTE63 = l_def_pav_rec.qualifier_attribute63,
2723         QUALIFIER_ATTRIBUTE64 = l_def_pav_rec.qualifier_attribute64,
2724         QUALIFIER_ATTRIBUTE65 = l_def_pav_rec.qualifier_attribute65,
2725         QUALIFIER_ATTRIBUTE66 = l_def_pav_rec.qualifier_attribute66,
2726         QUALIFIER_ATTRIBUTE67 = l_def_pav_rec.qualifier_attribute67,
2727         QUALIFIER_ATTRIBUTE68 = l_def_pav_rec.qualifier_attribute68,
2728         QUALIFIER_ATTRIBUTE69 = l_def_pav_rec.qualifier_attribute69,
2729         QUALIFIER_ATTRIBUTE70 = l_def_pav_rec.qualifier_attribute70,
2730         QUALIFIER_ATTRIBUTE71 = l_def_pav_rec.qualifier_attribute71,
2731         QUALIFIER_ATTRIBUTE72 = l_def_pav_rec.qualifier_attribute72,
2732         QUALIFIER_ATTRIBUTE73 = l_def_pav_rec.qualifier_attribute73,
2733         QUALIFIER_ATTRIBUTE74 = l_def_pav_rec.qualifier_attribute74,
2734         QUALIFIER_ATTRIBUTE75 = l_def_pav_rec.qualifier_attribute75,
2735         QUALIFIER_ATTRIBUTE76 = l_def_pav_rec.qualifier_attribute76,
2736         QUALIFIER_ATTRIBUTE77 = l_def_pav_rec.qualifier_attribute77,
2737         QUALIFIER_ATTRIBUTE78 = l_def_pav_rec.qualifier_attribute78,
2738         QUALIFIER_ATTRIBUTE79 = l_def_pav_rec.qualifier_attribute79,
2739         QUALIFIER_ATTRIBUTE80 = l_def_pav_rec.qualifier_attribute80,
2740         QUALIFIER_ATTRIBUTE81 = l_def_pav_rec.qualifier_attribute81,
2741         QUALIFIER_ATTRIBUTE82 = l_def_pav_rec.qualifier_attribute82,
2742         QUALIFIER_ATTRIBUTE83 = l_def_pav_rec.qualifier_attribute83,
2743         QUALIFIER_ATTRIBUTE84 = l_def_pav_rec.qualifier_attribute84,
2744         QUALIFIER_ATTRIBUTE85 = l_def_pav_rec.qualifier_attribute85,
2745         QUALIFIER_ATTRIBUTE86 = l_def_pav_rec.qualifier_attribute86,
2746         QUALIFIER_ATTRIBUTE87 = l_def_pav_rec.qualifier_attribute87,
2747         QUALIFIER_ATTRIBUTE88 = l_def_pav_rec.qualifier_attribute88,
2748         QUALIFIER_ATTRIBUTE89 = l_def_pav_rec.qualifier_attribute89,
2749         QUALIFIER_ATTRIBUTE90 = l_def_pav_rec.qualifier_attribute90,
2750         QUALIFIER_ATTRIBUTE91 = l_def_pav_rec.qualifier_attribute91,
2751         QUALIFIER_ATTRIBUTE92 = l_def_pav_rec.qualifier_attribute92,
2752         QUALIFIER_ATTRIBUTE93 = l_def_pav_rec.qualifier_attribute93,
2753         QUALIFIER_ATTRIBUTE94 = l_def_pav_rec.qualifier_attribute94,
2754         QUALIFIER_ATTRIBUTE95 = l_def_pav_rec.qualifier_attribute95,
2755         QUALIFIER_ATTRIBUTE96 = l_def_pav_rec.qualifier_attribute96,
2756         QUALIFIER_ATTRIBUTE97 = l_def_pav_rec.qualifier_attribute97,
2757         QUALIFIER_ATTRIBUTE98 = l_def_pav_rec.qualifier_attribute98,
2758         QUALIFIER_ATTRIBUTE99 = l_def_pav_rec.qualifier_attribute99,
2759         QUALIFIER_ATTRIBUTE100 = l_def_pav_rec.qualifier_attribute100,
2760         LAST_UPDATE_LOGIN = l_def_pav_rec.last_update_login,
2761  REQUEST_ID = NVL(decode(FND_GLOBAL.CONC_REQUEST_ID,-1,NULL,FND_GLOBAL.CONC_REQUEST_ID),l_def_pav_rec.request_id),
2762 PROGRAM_APPLICATION_ID = NVL(decode(FND_GLOBAL.PROG_APPL_ID,-1,NULL,FND_GLOBAL.PROG_APPL_ID),l_def_pav_rec.program_application_id),
2763 PROGRAM_ID = NVL(decode(FND_GLOBAL.CONC_PROGRAM_ID,-1,NULL,FND_GLOBAL.CONC_PROGRAM_ID),l_def_pav_rec.program_id),
2764 PROGRAM_UPDATE_DATE = decode(decode(FND_GLOBAL.CONC_REQUEST_ID,-1,NULL,SYSDATE),NULL,l_def_pav_rec.program_update_date,SYSDATE),
2765  OBJECT_VERSION_NUMBER = l_def_pav_rec.object_version_number
2766      WHERE ID = l_def_pav_rec.id;
2767 
2768     x_pav_rec := l_def_pav_rec;
2769     OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2770   EXCEPTION
2771     WHEN OKC_API.G_EXCEPTION_ERROR THEN
2772       x_return_status := OKC_API.HANDLE_EXCEPTIONS
2773       (
2774         l_api_name,
2775         G_PKG_NAME,
2776         'OKC_API.G_RET_STS_ERROR',
2777         x_msg_count,
2778         x_msg_data,
2779         '_PVT'
2780       );
2781     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2782       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2783       (
2784         l_api_name,
2785         G_PKG_NAME,
2786         'OKC_API.G_RET_STS_UNEXP_ERROR',
2787         x_msg_count,
2788         x_msg_data,
2789         '_PVT'
2790       );
2791     WHEN OTHERS THEN
2792       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2793       (
2794         l_api_name,
2795         G_PKG_NAME,
2796         'OTHERS',
2797         x_msg_count,
2798         x_msg_data,
2799         '_PVT'
2800       );
2801   END update_row;
2802   -------------------------------------------
2803   -- update_row for:OKC_PRICE_ATT_VALUES_V --
2804   -------------------------------------------
2805   PROCEDURE update_row(
2806     p_api_version                  IN NUMBER,
2807     p_init_msg_list                IN VARCHAR2 ,
2808     x_return_status                OUT NOCOPY VARCHAR2,
2809     x_msg_count                    OUT NOCOPY NUMBER,
2810     x_msg_data                     OUT NOCOPY VARCHAR2,
2811     p_pavv_rec                     IN pavv_rec_type,
2812     x_pavv_rec                     OUT NOCOPY pavv_rec_type) IS
2813 
2814     l_api_version                 CONSTANT NUMBER := 1;
2815     l_api_name                     CONSTANT VARCHAR2(30) := 'V_update_row';
2816     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2817     l_pavv_rec                     pavv_rec_type := p_pavv_rec;
2818     l_def_pavv_rec                 pavv_rec_type;
2819     l_pav_rec                      pav_rec_type;
2820     lx_pav_rec                     pav_rec_type;
2821     -------------------------------
2822     -- FUNCTION fill_who_columns --
2823     -------------------------------
2824     FUNCTION fill_who_columns (
2825       p_pavv_rec	IN pavv_rec_type
2826     ) RETURN pavv_rec_type IS
2827       l_pavv_rec	pavv_rec_type := p_pavv_rec;
2828     BEGIN
2829       l_pavv_rec.LAST_UPDATE_DATE := SYSDATE;
2830       l_pavv_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
2831       l_pavv_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
2832       RETURN(l_pavv_rec);
2833     END fill_who_columns;
2834     ----------------------------------
2835     -- FUNCTION populate_new_record --
2836     ----------------------------------
2837     FUNCTION populate_new_record (
2838       p_pavv_rec	IN pavv_rec_type,
2839       x_pavv_rec	OUT NOCOPY pavv_rec_type
2840     ) RETURN VARCHAR2 IS
2841       l_pavv_rec                     pavv_rec_type;
2842       l_row_notfound                 BOOLEAN := TRUE;
2843       l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2844     BEGIN
2845       x_pavv_rec := p_pavv_rec;
2846       -- Get current database values
2847       l_pavv_rec := get_rec(p_pavv_rec, l_row_notfound);
2848       IF (l_row_notfound) THEN
2849         l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2850       END IF;
2851       IF (x_pavv_rec.id = OKC_API.G_MISS_NUM)
2852       THEN
2853         x_pavv_rec.id := l_pavv_rec.id;
2854       END IF;
2855       IF (x_pavv_rec.chr_id = OKC_API.G_MISS_NUM)
2856       THEN
2857         x_pavv_rec.chr_id := l_pavv_rec.chr_id;
2858       END IF;
2859       IF (x_pavv_rec.cle_id = OKC_API.G_MISS_NUM)
2860       THEN
2861         x_pavv_rec.cle_id := l_pavv_rec.cle_id;
2862       END IF;
2863       IF (x_pavv_rec.flex_title = OKC_API.G_MISS_CHAR)
2864       THEN
2865         x_pavv_rec.flex_title := l_pavv_rec.flex_title;
2866       END IF;
2867       IF (x_pavv_rec.pricing_context = OKC_API.G_MISS_CHAR)
2868       THEN
2869         x_pavv_rec.pricing_context := l_pavv_rec.pricing_context;
2870       END IF;
2871       IF (x_pavv_rec.pricing_attribute1 = OKC_API.G_MISS_CHAR)
2872       THEN
2873         x_pavv_rec.pricing_attribute1 := l_pavv_rec.pricing_attribute1;
2874       END IF;
2875       IF (x_pavv_rec.pricing_attribute2 = OKC_API.G_MISS_CHAR)
2876       THEN
2877         x_pavv_rec.pricing_attribute2 := l_pavv_rec.pricing_attribute2;
2878       END IF;
2879       IF (x_pavv_rec.pricing_attribute3 = OKC_API.G_MISS_CHAR)
2880       THEN
2881         x_pavv_rec.pricing_attribute3 := l_pavv_rec.pricing_attribute3;
2882       END IF;
2883       IF (x_pavv_rec.pricing_attribute4 = OKC_API.G_MISS_CHAR)
2884       THEN
2885         x_pavv_rec.pricing_attribute4 := l_pavv_rec.pricing_attribute4;
2886       END IF;
2887       IF (x_pavv_rec.pricing_attribute5 = OKC_API.G_MISS_CHAR)
2888       THEN
2889         x_pavv_rec.pricing_attribute5 := l_pavv_rec.pricing_attribute5;
2890       END IF;
2891       IF (x_pavv_rec.pricing_attribute6 = OKC_API.G_MISS_CHAR)
2892       THEN
2893         x_pavv_rec.pricing_attribute6 := l_pavv_rec.pricing_attribute6;
2894       END IF;
2895       IF (x_pavv_rec.pricing_attribute7 = OKC_API.G_MISS_CHAR)
2896       THEN
2897         x_pavv_rec.pricing_attribute7 := l_pavv_rec.pricing_attribute7;
2898       END IF;
2899       IF (x_pavv_rec.pricing_attribute8 = OKC_API.G_MISS_CHAR)
2900       THEN
2901         x_pavv_rec.pricing_attribute8 := l_pavv_rec.pricing_attribute8;
2902       END IF;
2903       IF (x_pavv_rec.pricing_attribute9 = OKC_API.G_MISS_CHAR)
2904       THEN
2905         x_pavv_rec.pricing_attribute9 := l_pavv_rec.pricing_attribute9;
2906       END IF;
2907       IF (x_pavv_rec.pricing_attribute10 = OKC_API.G_MISS_CHAR)
2908       THEN
2909         x_pavv_rec.pricing_attribute10 := l_pavv_rec.pricing_attribute10;
2910       END IF;
2911       IF (x_pavv_rec.pricing_attribute11 = OKC_API.G_MISS_CHAR)
2912       THEN
2913         x_pavv_rec.pricing_attribute11 := l_pavv_rec.pricing_attribute11;
2914       END IF;
2915       IF (x_pavv_rec.pricing_attribute12 = OKC_API.G_MISS_CHAR)
2916       THEN
2917         x_pavv_rec.pricing_attribute12 := l_pavv_rec.pricing_attribute12;
2918       END IF;
2919       IF (x_pavv_rec.pricing_attribute13 = OKC_API.G_MISS_CHAR)
2920       THEN
2921         x_pavv_rec.pricing_attribute13 := l_pavv_rec.pricing_attribute13;
2922       END IF;
2923       IF (x_pavv_rec.pricing_attribute14 = OKC_API.G_MISS_CHAR)
2924       THEN
2925         x_pavv_rec.pricing_attribute14 := l_pavv_rec.pricing_attribute14;
2926       END IF;
2927       IF (x_pavv_rec.pricing_attribute15 = OKC_API.G_MISS_CHAR)
2928       THEN
2929         x_pavv_rec.pricing_attribute15 := l_pavv_rec.pricing_attribute15;
2930       END IF;
2931       IF (x_pavv_rec.pricing_attribute16 = OKC_API.G_MISS_CHAR)
2932       THEN
2933         x_pavv_rec.pricing_attribute16 := l_pavv_rec.pricing_attribute16;
2934       END IF;
2935       IF (x_pavv_rec.pricing_attribute17 = OKC_API.G_MISS_CHAR)
2936       THEN
2937         x_pavv_rec.pricing_attribute17 := l_pavv_rec.pricing_attribute17;
2938       END IF;
2939       IF (x_pavv_rec.pricing_attribute18 = OKC_API.G_MISS_CHAR)
2940       THEN
2941         x_pavv_rec.pricing_attribute18 := l_pavv_rec.pricing_attribute18;
2942       END IF;
2943       IF (x_pavv_rec.pricing_attribute19 = OKC_API.G_MISS_CHAR)
2944       THEN
2945         x_pavv_rec.pricing_attribute19 := l_pavv_rec.pricing_attribute19;
2946       END IF;
2947       IF (x_pavv_rec.pricing_attribute20 = OKC_API.G_MISS_CHAR)
2948       THEN
2949         x_pavv_rec.pricing_attribute20 := l_pavv_rec.pricing_attribute20;
2950       END IF;
2951       IF (x_pavv_rec.pricing_attribute21 = OKC_API.G_MISS_CHAR)
2952       THEN
2953         x_pavv_rec.pricing_attribute21 := l_pavv_rec.pricing_attribute21;
2954       END IF;
2955       IF (x_pavv_rec.pricing_attribute22 = OKC_API.G_MISS_CHAR)
2956       THEN
2957         x_pavv_rec.pricing_attribute22 := l_pavv_rec.pricing_attribute22;
2958       END IF;
2959       IF (x_pavv_rec.pricing_attribute23 = OKC_API.G_MISS_CHAR)
2960       THEN
2961         x_pavv_rec.pricing_attribute23 := l_pavv_rec.pricing_attribute23;
2962       END IF;
2963       IF (x_pavv_rec.pricing_attribute24 = OKC_API.G_MISS_CHAR)
2964       THEN
2965         x_pavv_rec.pricing_attribute24 := l_pavv_rec.pricing_attribute24;
2966       END IF;
2967       IF (x_pavv_rec.pricing_attribute25 = OKC_API.G_MISS_CHAR)
2968       THEN
2969         x_pavv_rec.pricing_attribute25 := l_pavv_rec.pricing_attribute25;
2970       END IF;
2971       IF (x_pavv_rec.pricing_attribute26 = OKC_API.G_MISS_CHAR)
2972       THEN
2973         x_pavv_rec.pricing_attribute26 := l_pavv_rec.pricing_attribute26;
2974       END IF;
2975       IF (x_pavv_rec.pricing_attribute27 = OKC_API.G_MISS_CHAR)
2976       THEN
2977         x_pavv_rec.pricing_attribute27 := l_pavv_rec.pricing_attribute27;
2978       END IF;
2979       IF (x_pavv_rec.pricing_attribute28 = OKC_API.G_MISS_CHAR)
2980       THEN
2981         x_pavv_rec.pricing_attribute28 := l_pavv_rec.pricing_attribute28;
2982       END IF;
2983       IF (x_pavv_rec.pricing_attribute29 = OKC_API.G_MISS_CHAR)
2984       THEN
2985         x_pavv_rec.pricing_attribute29 := l_pavv_rec.pricing_attribute29;
2986       END IF;
2987       IF (x_pavv_rec.pricing_attribute30 = OKC_API.G_MISS_CHAR)
2988       THEN
2989         x_pavv_rec.pricing_attribute30 := l_pavv_rec.pricing_attribute30;
2990       END IF;
2991       IF (x_pavv_rec.pricing_attribute31 = OKC_API.G_MISS_CHAR)
2992       THEN
2993         x_pavv_rec.pricing_attribute31 := l_pavv_rec.pricing_attribute31;
2994       END IF;
2995       IF (x_pavv_rec.pricing_attribute32 = OKC_API.G_MISS_CHAR)
2996       THEN
2997         x_pavv_rec.pricing_attribute32 := l_pavv_rec.pricing_attribute32;
2998       END IF;
2999       IF (x_pavv_rec.pricing_attribute33 = OKC_API.G_MISS_CHAR)
3000       THEN
3001         x_pavv_rec.pricing_attribute33 := l_pavv_rec.pricing_attribute33;
3002       END IF;
3003       IF (x_pavv_rec.pricing_attribute34 = OKC_API.G_MISS_CHAR)
3004       THEN
3005         x_pavv_rec.pricing_attribute34 := l_pavv_rec.pricing_attribute34;
3006       END IF;
3007       IF (x_pavv_rec.pricing_attribute35 = OKC_API.G_MISS_CHAR)
3008       THEN
3009         x_pavv_rec.pricing_attribute35 := l_pavv_rec.pricing_attribute35;
3010       END IF;
3011       IF (x_pavv_rec.pricing_attribute36 = OKC_API.G_MISS_CHAR)
3012       THEN
3013         x_pavv_rec.pricing_attribute36 := l_pavv_rec.pricing_attribute36;
3014       END IF;
3015       IF (x_pavv_rec.pricing_attribute37 = OKC_API.G_MISS_CHAR)
3016       THEN
3017         x_pavv_rec.pricing_attribute37 := l_pavv_rec.pricing_attribute37;
3018       END IF;
3019       IF (x_pavv_rec.pricing_attribute38 = OKC_API.G_MISS_CHAR)
3020       THEN
3021         x_pavv_rec.pricing_attribute38 := l_pavv_rec.pricing_attribute38;
3022       END IF;
3023       IF (x_pavv_rec.pricing_attribute39 = OKC_API.G_MISS_CHAR)
3024       THEN
3025         x_pavv_rec.pricing_attribute39 := l_pavv_rec.pricing_attribute39;
3026       END IF;
3027       IF (x_pavv_rec.pricing_attribute40 = OKC_API.G_MISS_CHAR)
3028       THEN
3029         x_pavv_rec.pricing_attribute40 := l_pavv_rec.pricing_attribute40;
3030       END IF;
3031       IF (x_pavv_rec.pricing_attribute41 = OKC_API.G_MISS_CHAR)
3032       THEN
3033         x_pavv_rec.pricing_attribute41 := l_pavv_rec.pricing_attribute41;
3034       END IF;
3035       IF (x_pavv_rec.pricing_attribute42 = OKC_API.G_MISS_CHAR)
3036       THEN
3037         x_pavv_rec.pricing_attribute42 := l_pavv_rec.pricing_attribute42;
3038       END IF;
3039       IF (x_pavv_rec.pricing_attribute43 = OKC_API.G_MISS_CHAR)
3040       THEN
3041         x_pavv_rec.pricing_attribute43 := l_pavv_rec.pricing_attribute43;
3042       END IF;
3043       IF (x_pavv_rec.pricing_attribute44 = OKC_API.G_MISS_CHAR)
3044       THEN
3045         x_pavv_rec.pricing_attribute44 := l_pavv_rec.pricing_attribute44;
3046       END IF;
3047       IF (x_pavv_rec.pricing_attribute45 = OKC_API.G_MISS_CHAR)
3048       THEN
3049         x_pavv_rec.pricing_attribute45 := l_pavv_rec.pricing_attribute45;
3050       END IF;
3051       IF (x_pavv_rec.pricing_attribute46 = OKC_API.G_MISS_CHAR)
3052       THEN
3053         x_pavv_rec.pricing_attribute46 := l_pavv_rec.pricing_attribute46;
3054       END IF;
3055       IF (x_pavv_rec.pricing_attribute47 = OKC_API.G_MISS_CHAR)
3056       THEN
3057         x_pavv_rec.pricing_attribute47 := l_pavv_rec.pricing_attribute47;
3058       END IF;
3059       IF (x_pavv_rec.pricing_attribute48 = OKC_API.G_MISS_CHAR)
3060       THEN
3061         x_pavv_rec.pricing_attribute48 := l_pavv_rec.pricing_attribute48;
3062       END IF;
3063       IF (x_pavv_rec.pricing_attribute49 = OKC_API.G_MISS_CHAR)
3064       THEN
3065         x_pavv_rec.pricing_attribute49 := l_pavv_rec.pricing_attribute49;
3066       END IF;
3067       IF (x_pavv_rec.pricing_attribute50 = OKC_API.G_MISS_CHAR)
3068       THEN
3069         x_pavv_rec.pricing_attribute50 := l_pavv_rec.pricing_attribute50;
3070       END IF;
3071       IF (x_pavv_rec.pricing_attribute51 = OKC_API.G_MISS_CHAR)
3072       THEN
3073         x_pavv_rec.pricing_attribute51 := l_pavv_rec.pricing_attribute51;
3074       END IF;
3075       IF (x_pavv_rec.pricing_attribute52 = OKC_API.G_MISS_CHAR)
3076       THEN
3077         x_pavv_rec.pricing_attribute52 := l_pavv_rec.pricing_attribute52;
3078       END IF;
3079       IF (x_pavv_rec.pricing_attribute53 = OKC_API.G_MISS_CHAR)
3080       THEN
3081         x_pavv_rec.pricing_attribute53 := l_pavv_rec.pricing_attribute53;
3082       END IF;
3083       IF (x_pavv_rec.pricing_attribute54 = OKC_API.G_MISS_CHAR)
3084       THEN
3085         x_pavv_rec.pricing_attribute54 := l_pavv_rec.pricing_attribute54;
3086       END IF;
3087       IF (x_pavv_rec.pricing_attribute55 = OKC_API.G_MISS_CHAR)
3088       THEN
3089         x_pavv_rec.pricing_attribute55 := l_pavv_rec.pricing_attribute55;
3090       END IF;
3091       IF (x_pavv_rec.pricing_attribute56 = OKC_API.G_MISS_CHAR)
3092       THEN
3093         x_pavv_rec.pricing_attribute56 := l_pavv_rec.pricing_attribute56;
3094       END IF;
3095       IF (x_pavv_rec.pricing_attribute57 = OKC_API.G_MISS_CHAR)
3096       THEN
3097         x_pavv_rec.pricing_attribute57 := l_pavv_rec.pricing_attribute57;
3098       END IF;
3099       IF (x_pavv_rec.pricing_attribute58 = OKC_API.G_MISS_CHAR)
3100       THEN
3101         x_pavv_rec.pricing_attribute58 := l_pavv_rec.pricing_attribute58;
3102       END IF;
3103       IF (x_pavv_rec.pricing_attribute59 = OKC_API.G_MISS_CHAR)
3104       THEN
3105         x_pavv_rec.pricing_attribute59 := l_pavv_rec.pricing_attribute59;
3106       END IF;
3107       IF (x_pavv_rec.pricing_attribute60 = OKC_API.G_MISS_CHAR)
3108       THEN
3109         x_pavv_rec.pricing_attribute60 := l_pavv_rec.pricing_attribute60;
3110       END IF;
3111       IF (x_pavv_rec.pricing_attribute61 = OKC_API.G_MISS_CHAR)
3112       THEN
3113         x_pavv_rec.pricing_attribute61 := l_pavv_rec.pricing_attribute61;
3114       END IF;
3115       IF (x_pavv_rec.pricing_attribute62 = OKC_API.G_MISS_CHAR)
3116       THEN
3117         x_pavv_rec.pricing_attribute62 := l_pavv_rec.pricing_attribute62;
3118       END IF;
3119       IF (x_pavv_rec.pricing_attribute63 = OKC_API.G_MISS_CHAR)
3120       THEN
3121         x_pavv_rec.pricing_attribute63 := l_pavv_rec.pricing_attribute63;
3122       END IF;
3123       IF (x_pavv_rec.pricing_attribute64 = OKC_API.G_MISS_CHAR)
3124       THEN
3125         x_pavv_rec.pricing_attribute64 := l_pavv_rec.pricing_attribute64;
3126       END IF;
3127       IF (x_pavv_rec.pricing_attribute65 = OKC_API.G_MISS_CHAR)
3128       THEN
3129         x_pavv_rec.pricing_attribute65 := l_pavv_rec.pricing_attribute65;
3130       END IF;
3131       IF (x_pavv_rec.pricing_attribute66 = OKC_API.G_MISS_CHAR)
3132       THEN
3133         x_pavv_rec.pricing_attribute66 := l_pavv_rec.pricing_attribute66;
3134       END IF;
3135       IF (x_pavv_rec.pricing_attribute67 = OKC_API.G_MISS_CHAR)
3136       THEN
3137         x_pavv_rec.pricing_attribute67 := l_pavv_rec.pricing_attribute67;
3138       END IF;
3139       IF (x_pavv_rec.pricing_attribute68 = OKC_API.G_MISS_CHAR)
3140       THEN
3141         x_pavv_rec.pricing_attribute68 := l_pavv_rec.pricing_attribute68;
3142       END IF;
3143       IF (x_pavv_rec.pricing_attribute69 = OKC_API.G_MISS_CHAR)
3144       THEN
3145         x_pavv_rec.pricing_attribute69 := l_pavv_rec.pricing_attribute69;
3146       END IF;
3147       IF (x_pavv_rec.pricing_attribute70 = OKC_API.G_MISS_CHAR)
3148       THEN
3149         x_pavv_rec.pricing_attribute70 := l_pavv_rec.pricing_attribute70;
3150       END IF;
3151       IF (x_pavv_rec.pricing_attribute71 = OKC_API.G_MISS_CHAR)
3152       THEN
3153         x_pavv_rec.pricing_attribute71 := l_pavv_rec.pricing_attribute71;
3154       END IF;
3155       IF (x_pavv_rec.pricing_attribute72 = OKC_API.G_MISS_CHAR)
3156       THEN
3157         x_pavv_rec.pricing_attribute72 := l_pavv_rec.pricing_attribute72;
3158       END IF;
3159       IF (x_pavv_rec.pricing_attribute73 = OKC_API.G_MISS_CHAR)
3160       THEN
3161         x_pavv_rec.pricing_attribute73 := l_pavv_rec.pricing_attribute73;
3162       END IF;
3163       IF (x_pavv_rec.pricing_attribute74 = OKC_API.G_MISS_CHAR)
3164       THEN
3165         x_pavv_rec.pricing_attribute74 := l_pavv_rec.pricing_attribute74;
3166       END IF;
3167       IF (x_pavv_rec.pricing_attribute75 = OKC_API.G_MISS_CHAR)
3168       THEN
3169         x_pavv_rec.pricing_attribute75 := l_pavv_rec.pricing_attribute75;
3170       END IF;
3171       IF (x_pavv_rec.pricing_attribute76 = OKC_API.G_MISS_CHAR)
3172       THEN
3173         x_pavv_rec.pricing_attribute76 := l_pavv_rec.pricing_attribute76;
3174       END IF;
3175       IF (x_pavv_rec.pricing_attribute77 = OKC_API.G_MISS_CHAR)
3176       THEN
3177         x_pavv_rec.pricing_attribute77 := l_pavv_rec.pricing_attribute77;
3178       END IF;
3179       IF (x_pavv_rec.pricing_attribute78 = OKC_API.G_MISS_CHAR)
3180       THEN
3181         x_pavv_rec.pricing_attribute78 := l_pavv_rec.pricing_attribute78;
3182       END IF;
3183       IF (x_pavv_rec.pricing_attribute79 = OKC_API.G_MISS_CHAR)
3184       THEN
3185         x_pavv_rec.pricing_attribute79 := l_pavv_rec.pricing_attribute79;
3186       END IF;
3187       IF (x_pavv_rec.pricing_attribute80 = OKC_API.G_MISS_CHAR)
3188       THEN
3189         x_pavv_rec.pricing_attribute80 := l_pavv_rec.pricing_attribute80;
3190       END IF;
3191       IF (x_pavv_rec.pricing_attribute81 = OKC_API.G_MISS_CHAR)
3192       THEN
3193         x_pavv_rec.pricing_attribute81 := l_pavv_rec.pricing_attribute81;
3194       END IF;
3195       IF (x_pavv_rec.pricing_attribute82 = OKC_API.G_MISS_CHAR)
3196       THEN
3197         x_pavv_rec.pricing_attribute82 := l_pavv_rec.pricing_attribute82;
3198       END IF;
3199       IF (x_pavv_rec.pricing_attribute83 = OKC_API.G_MISS_CHAR)
3200       THEN
3201         x_pavv_rec.pricing_attribute83 := l_pavv_rec.pricing_attribute83;
3202       END IF;
3203       IF (x_pavv_rec.pricing_attribute84 = OKC_API.G_MISS_CHAR)
3204       THEN
3205         x_pavv_rec.pricing_attribute84 := l_pavv_rec.pricing_attribute84;
3206       END IF;
3207       IF (x_pavv_rec.pricing_attribute85 = OKC_API.G_MISS_CHAR)
3208       THEN
3209         x_pavv_rec.pricing_attribute85 := l_pavv_rec.pricing_attribute85;
3210       END IF;
3211       IF (x_pavv_rec.pricing_attribute86 = OKC_API.G_MISS_CHAR)
3212       THEN
3213         x_pavv_rec.pricing_attribute86 := l_pavv_rec.pricing_attribute86;
3214       END IF;
3215       IF (x_pavv_rec.pricing_attribute87 = OKC_API.G_MISS_CHAR)
3216       THEN
3217         x_pavv_rec.pricing_attribute87 := l_pavv_rec.pricing_attribute87;
3218       END IF;
3219       IF (x_pavv_rec.pricing_attribute88 = OKC_API.G_MISS_CHAR)
3220       THEN
3221         x_pavv_rec.pricing_attribute88 := l_pavv_rec.pricing_attribute88;
3222       END IF;
3223       IF (x_pavv_rec.pricing_attribute89 = OKC_API.G_MISS_CHAR)
3224       THEN
3225         x_pavv_rec.pricing_attribute89 := l_pavv_rec.pricing_attribute89;
3226       END IF;
3227       IF (x_pavv_rec.pricing_attribute90 = OKC_API.G_MISS_CHAR)
3228       THEN
3229         x_pavv_rec.pricing_attribute90 := l_pavv_rec.pricing_attribute90;
3230       END IF;
3231       IF (x_pavv_rec.pricing_attribute91 = OKC_API.G_MISS_CHAR)
3232       THEN
3233         x_pavv_rec.pricing_attribute91 := l_pavv_rec.pricing_attribute91;
3234       END IF;
3235       IF (x_pavv_rec.pricing_attribute92 = OKC_API.G_MISS_CHAR)
3236       THEN
3237         x_pavv_rec.pricing_attribute92 := l_pavv_rec.pricing_attribute92;
3238       END IF;
3239       IF (x_pavv_rec.pricing_attribute93 = OKC_API.G_MISS_CHAR)
3240       THEN
3241         x_pavv_rec.pricing_attribute93 := l_pavv_rec.pricing_attribute93;
3242       END IF;
3243       IF (x_pavv_rec.pricing_attribute94 = OKC_API.G_MISS_CHAR)
3244       THEN
3245         x_pavv_rec.pricing_attribute94 := l_pavv_rec.pricing_attribute94;
3246       END IF;
3247       IF (x_pavv_rec.pricing_attribute95 = OKC_API.G_MISS_CHAR)
3248       THEN
3249         x_pavv_rec.pricing_attribute95 := l_pavv_rec.pricing_attribute95;
3250       END IF;
3251       IF (x_pavv_rec.pricing_attribute96 = OKC_API.G_MISS_CHAR)
3252       THEN
3253         x_pavv_rec.pricing_attribute96 := l_pavv_rec.pricing_attribute96;
3254       END IF;
3255       IF (x_pavv_rec.pricing_attribute97 = OKC_API.G_MISS_CHAR)
3256       THEN
3257         x_pavv_rec.pricing_attribute97 := l_pavv_rec.pricing_attribute97;
3258       END IF;
3259       IF (x_pavv_rec.pricing_attribute98 = OKC_API.G_MISS_CHAR)
3260       THEN
3261         x_pavv_rec.pricing_attribute98 := l_pavv_rec.pricing_attribute98;
3262       END IF;
3263       IF (x_pavv_rec.pricing_attribute99 = OKC_API.G_MISS_CHAR)
3264       THEN
3265         x_pavv_rec.pricing_attribute99 := l_pavv_rec.pricing_attribute99;
3266       END IF;
3267       IF (x_pavv_rec.pricing_attribute100 = OKC_API.G_MISS_CHAR)
3268       THEN
3269         x_pavv_rec.pricing_attribute100 := l_pavv_rec.pricing_attribute100;
3270       END IF;
3271       IF (x_pavv_rec.qualifier_context = OKC_API.G_MISS_CHAR)
3272       THEN
3273         x_pavv_rec.qualifier_context := l_pavv_rec.qualifier_context;
3274       END IF;
3275       IF (x_pavv_rec.qualifier_attribute1 = OKC_API.G_MISS_CHAR)
3276       THEN
3277         x_pavv_rec.qualifier_attribute1 := l_pavv_rec.qualifier_attribute1;
3278       END IF;
3279       IF (x_pavv_rec.qualifier_attribute2 = OKC_API.G_MISS_CHAR)
3280       THEN
3281         x_pavv_rec.qualifier_attribute2 := l_pavv_rec.qualifier_attribute2;
3282       END IF;
3283       IF (x_pavv_rec.qualifier_attribute3 = OKC_API.G_MISS_CHAR)
3284       THEN
3285         x_pavv_rec.qualifier_attribute3 := l_pavv_rec.qualifier_attribute3;
3286       END IF;
3287       IF (x_pavv_rec.qualifier_attribute4 = OKC_API.G_MISS_CHAR)
3288       THEN
3289         x_pavv_rec.qualifier_attribute4 := l_pavv_rec.qualifier_attribute4;
3290       END IF;
3291       IF (x_pavv_rec.qualifier_attribute5 = OKC_API.G_MISS_CHAR)
3292       THEN
3293         x_pavv_rec.qualifier_attribute5 := l_pavv_rec.qualifier_attribute5;
3294       END IF;
3295       IF (x_pavv_rec.qualifier_attribute6 = OKC_API.G_MISS_CHAR)
3296       THEN
3297         x_pavv_rec.qualifier_attribute6 := l_pavv_rec.qualifier_attribute6;
3298       END IF;
3299       IF (x_pavv_rec.qualifier_attribute7 = OKC_API.G_MISS_CHAR)
3300       THEN
3301         x_pavv_rec.qualifier_attribute7 := l_pavv_rec.qualifier_attribute7;
3302       END IF;
3303       IF (x_pavv_rec.qualifier_attribute8 = OKC_API.G_MISS_CHAR)
3304       THEN
3305         x_pavv_rec.qualifier_attribute8 := l_pavv_rec.qualifier_attribute8;
3306       END IF;
3307       IF (x_pavv_rec.qualifier_attribute9 = OKC_API.G_MISS_CHAR)
3308       THEN
3309         x_pavv_rec.qualifier_attribute9 := l_pavv_rec.qualifier_attribute9;
3310       END IF;
3311       IF (x_pavv_rec.qualifier_attribute10 = OKC_API.G_MISS_CHAR)
3312       THEN
3313         x_pavv_rec.qualifier_attribute10 := l_pavv_rec.qualifier_attribute10;
3314       END IF;
3315       IF (x_pavv_rec.qualifier_attribute11 = OKC_API.G_MISS_CHAR)
3316       THEN
3317         x_pavv_rec.qualifier_attribute11 := l_pavv_rec.qualifier_attribute11;
3318       END IF;
3319       IF (x_pavv_rec.qualifier_attribute12 = OKC_API.G_MISS_CHAR)
3320       THEN
3321         x_pavv_rec.qualifier_attribute12 := l_pavv_rec.qualifier_attribute12;
3322       END IF;
3323       IF (x_pavv_rec.qualifier_attribute13 = OKC_API.G_MISS_CHAR)
3324       THEN
3325         x_pavv_rec.qualifier_attribute13 := l_pavv_rec.qualifier_attribute13;
3326       END IF;
3327       IF (x_pavv_rec.qualifier_attribute14 = OKC_API.G_MISS_CHAR)
3328       THEN
3329         x_pavv_rec.qualifier_attribute14 := l_pavv_rec.qualifier_attribute14;
3330       END IF;
3331       IF (x_pavv_rec.qualifier_attribute15 = OKC_API.G_MISS_CHAR)
3332       THEN
3333         x_pavv_rec.qualifier_attribute15 := l_pavv_rec.qualifier_attribute15;
3334       END IF;
3335       IF (x_pavv_rec.qualifier_attribute16 = OKC_API.G_MISS_CHAR)
3336       THEN
3337         x_pavv_rec.qualifier_attribute16 := l_pavv_rec.qualifier_attribute16;
3338       END IF;
3339       IF (x_pavv_rec.qualifier_attribute17 = OKC_API.G_MISS_CHAR)
3340       THEN
3341         x_pavv_rec.qualifier_attribute17 := l_pavv_rec.qualifier_attribute17;
3342       END IF;
3343       IF (x_pavv_rec.qualifier_attribute18 = OKC_API.G_MISS_CHAR)
3344       THEN
3345         x_pavv_rec.qualifier_attribute18 := l_pavv_rec.qualifier_attribute18;
3346       END IF;
3347       IF (x_pavv_rec.qualifier_attribute19 = OKC_API.G_MISS_CHAR)
3348       THEN
3349         x_pavv_rec.qualifier_attribute19 := l_pavv_rec.qualifier_attribute19;
3350       END IF;
3351       IF (x_pavv_rec.qualifier_attribute20 = OKC_API.G_MISS_CHAR)
3352       THEN
3353         x_pavv_rec.qualifier_attribute20 := l_pavv_rec.qualifier_attribute20;
3354       END IF;
3355       IF (x_pavv_rec.qualifier_attribute21 = OKC_API.G_MISS_CHAR)
3356       THEN
3357         x_pavv_rec.qualifier_attribute21 := l_pavv_rec.qualifier_attribute21;
3358       END IF;
3359       IF (x_pavv_rec.qualifier_attribute22 = OKC_API.G_MISS_CHAR)
3360       THEN
3361         x_pavv_rec.qualifier_attribute22 := l_pavv_rec.qualifier_attribute22;
3362       END IF;
3363       IF (x_pavv_rec.qualifier_attribute23 = OKC_API.G_MISS_CHAR)
3364       THEN
3365         x_pavv_rec.qualifier_attribute23 := l_pavv_rec.qualifier_attribute23;
3366       END IF;
3367       IF (x_pavv_rec.qualifier_attribute24 = OKC_API.G_MISS_CHAR)
3368       THEN
3369         x_pavv_rec.qualifier_attribute24 := l_pavv_rec.qualifier_attribute24;
3370       END IF;
3371       IF (x_pavv_rec.qualifier_attribute25 = OKC_API.G_MISS_CHAR)
3372       THEN
3373         x_pavv_rec.qualifier_attribute25 := l_pavv_rec.qualifier_attribute25;
3374       END IF;
3375       IF (x_pavv_rec.qualifier_attribute26 = OKC_API.G_MISS_CHAR)
3376       THEN
3377         x_pavv_rec.qualifier_attribute26 := l_pavv_rec.qualifier_attribute26;
3378       END IF;
3379       IF (x_pavv_rec.qualifier_attribute27 = OKC_API.G_MISS_CHAR)
3380       THEN
3381         x_pavv_rec.qualifier_attribute27 := l_pavv_rec.qualifier_attribute27;
3382       END IF;
3383       IF (x_pavv_rec.qualifier_attribute28 = OKC_API.G_MISS_CHAR)
3384       THEN
3385         x_pavv_rec.qualifier_attribute28 := l_pavv_rec.qualifier_attribute28;
3386       END IF;
3387       IF (x_pavv_rec.qualifier_attribute29 = OKC_API.G_MISS_CHAR)
3388       THEN
3389         x_pavv_rec.qualifier_attribute29 := l_pavv_rec.qualifier_attribute29;
3390       END IF;
3391       IF (x_pavv_rec.qualifier_attribute30 = OKC_API.G_MISS_CHAR)
3392       THEN
3393         x_pavv_rec.qualifier_attribute30 := l_pavv_rec.qualifier_attribute30;
3394       END IF;
3395       IF (x_pavv_rec.qualifier_attribute31 = OKC_API.G_MISS_CHAR)
3396       THEN
3397         x_pavv_rec.qualifier_attribute31 := l_pavv_rec.qualifier_attribute31;
3398       END IF;
3399       IF (x_pavv_rec.qualifier_attribute32 = OKC_API.G_MISS_CHAR)
3400       THEN
3401         x_pavv_rec.qualifier_attribute32 := l_pavv_rec.qualifier_attribute32;
3402       END IF;
3403       IF (x_pavv_rec.qualifier_attribute33 = OKC_API.G_MISS_CHAR)
3404       THEN
3405         x_pavv_rec.qualifier_attribute33 := l_pavv_rec.qualifier_attribute33;
3406       END IF;
3407       IF (x_pavv_rec.qualifier_attribute34 = OKC_API.G_MISS_CHAR)
3408       THEN
3409         x_pavv_rec.qualifier_attribute34 := l_pavv_rec.qualifier_attribute34;
3410       END IF;
3411       IF (x_pavv_rec.qualifier_attribute35 = OKC_API.G_MISS_CHAR)
3412       THEN
3413         x_pavv_rec.qualifier_attribute35 := l_pavv_rec.qualifier_attribute35;
3414       END IF;
3415       IF (x_pavv_rec.qualifier_attribute36 = OKC_API.G_MISS_CHAR)
3416       THEN
3417         x_pavv_rec.qualifier_attribute36 := l_pavv_rec.qualifier_attribute36;
3418       END IF;
3419       IF (x_pavv_rec.qualifier_attribute37 = OKC_API.G_MISS_CHAR)
3420       THEN
3421         x_pavv_rec.qualifier_attribute37 := l_pavv_rec.qualifier_attribute37;
3422       END IF;
3423       IF (x_pavv_rec.qualifier_attribute38 = OKC_API.G_MISS_CHAR)
3424       THEN
3425         x_pavv_rec.qualifier_attribute38 := l_pavv_rec.qualifier_attribute38;
3426       END IF;
3427       IF (x_pavv_rec.qualifier_attribute39 = OKC_API.G_MISS_CHAR)
3428       THEN
3429         x_pavv_rec.qualifier_attribute39 := l_pavv_rec.qualifier_attribute39;
3430       END IF;
3431       IF (x_pavv_rec.qualifier_attribute40 = OKC_API.G_MISS_CHAR)
3432       THEN
3433         x_pavv_rec.qualifier_attribute40 := l_pavv_rec.qualifier_attribute40;
3434       END IF;
3435       IF (x_pavv_rec.qualifier_attribute41 = OKC_API.G_MISS_CHAR)
3436       THEN
3437         x_pavv_rec.qualifier_attribute41 := l_pavv_rec.qualifier_attribute41;
3438       END IF;
3439       IF (x_pavv_rec.qualifier_attribute42 = OKC_API.G_MISS_CHAR)
3440       THEN
3441         x_pavv_rec.qualifier_attribute42 := l_pavv_rec.qualifier_attribute42;
3442       END IF;
3443       IF (x_pavv_rec.qualifier_attribute43 = OKC_API.G_MISS_CHAR)
3444       THEN
3445         x_pavv_rec.qualifier_attribute43 := l_pavv_rec.qualifier_attribute43;
3446       END IF;
3447       IF (x_pavv_rec.qualifier_attribute44 = OKC_API.G_MISS_CHAR)
3448       THEN
3449         x_pavv_rec.qualifier_attribute44 := l_pavv_rec.qualifier_attribute44;
3450       END IF;
3451       IF (x_pavv_rec.qualifier_attribute45 = OKC_API.G_MISS_CHAR)
3452       THEN
3453         x_pavv_rec.qualifier_attribute45 := l_pavv_rec.qualifier_attribute45;
3454       END IF;
3455       IF (x_pavv_rec.qualifier_attribute46 = OKC_API.G_MISS_CHAR)
3456       THEN
3457         x_pavv_rec.qualifier_attribute46 := l_pavv_rec.qualifier_attribute46;
3458       END IF;
3459       IF (x_pavv_rec.qualifier_attribute47 = OKC_API.G_MISS_CHAR)
3460       THEN
3461         x_pavv_rec.qualifier_attribute47 := l_pavv_rec.qualifier_attribute47;
3462       END IF;
3463       IF (x_pavv_rec.qualifier_attribute48 = OKC_API.G_MISS_CHAR)
3464       THEN
3465         x_pavv_rec.qualifier_attribute48 := l_pavv_rec.qualifier_attribute48;
3466       END IF;
3467       IF (x_pavv_rec.qualifier_attribute49 = OKC_API.G_MISS_CHAR)
3468       THEN
3469         x_pavv_rec.qualifier_attribute49 := l_pavv_rec.qualifier_attribute49;
3470       END IF;
3471       IF (x_pavv_rec.qualifier_attribute50 = OKC_API.G_MISS_CHAR)
3472       THEN
3473         x_pavv_rec.qualifier_attribute50 := l_pavv_rec.qualifier_attribute50;
3474       END IF;
3475       IF (x_pavv_rec.qualifier_attribute51 = OKC_API.G_MISS_CHAR)
3476       THEN
3477         x_pavv_rec.qualifier_attribute51 := l_pavv_rec.qualifier_attribute51;
3478       END IF;
3479       IF (x_pavv_rec.qualifier_attribute52 = OKC_API.G_MISS_CHAR)
3480       THEN
3481         x_pavv_rec.qualifier_attribute52 := l_pavv_rec.qualifier_attribute52;
3482       END IF;
3483       IF (x_pavv_rec.qualifier_attribute53 = OKC_API.G_MISS_CHAR)
3484       THEN
3485         x_pavv_rec.qualifier_attribute53 := l_pavv_rec.qualifier_attribute53;
3486       END IF;
3487       IF (x_pavv_rec.qualifier_attribute54 = OKC_API.G_MISS_CHAR)
3488       THEN
3489         x_pavv_rec.qualifier_attribute54 := l_pavv_rec.qualifier_attribute54;
3490       END IF;
3491       IF (x_pavv_rec.qualifier_attribute55 = OKC_API.G_MISS_CHAR)
3492       THEN
3493         x_pavv_rec.qualifier_attribute55 := l_pavv_rec.qualifier_attribute55;
3494       END IF;
3495       IF (x_pavv_rec.qualifier_attribute56 = OKC_API.G_MISS_CHAR)
3496       THEN
3497         x_pavv_rec.qualifier_attribute56 := l_pavv_rec.qualifier_attribute56;
3498       END IF;
3499       IF (x_pavv_rec.qualifier_attribute57 = OKC_API.G_MISS_CHAR)
3500       THEN
3501         x_pavv_rec.qualifier_attribute57 := l_pavv_rec.qualifier_attribute57;
3502       END IF;
3503       IF (x_pavv_rec.qualifier_attribute58 = OKC_API.G_MISS_CHAR)
3504       THEN
3505         x_pavv_rec.qualifier_attribute58 := l_pavv_rec.qualifier_attribute58;
3506       END IF;
3507       IF (x_pavv_rec.qualifier_attribute59 = OKC_API.G_MISS_CHAR)
3508       THEN
3509         x_pavv_rec.qualifier_attribute59 := l_pavv_rec.qualifier_attribute59;
3510       END IF;
3511       IF (x_pavv_rec.qualifier_attribute60 = OKC_API.G_MISS_CHAR)
3512       THEN
3513         x_pavv_rec.qualifier_attribute60 := l_pavv_rec.qualifier_attribute60;
3514       END IF;
3515       IF (x_pavv_rec.qualifier_attribute61 = OKC_API.G_MISS_CHAR)
3516       THEN
3517         x_pavv_rec.qualifier_attribute61 := l_pavv_rec.qualifier_attribute61;
3518       END IF;
3519       IF (x_pavv_rec.qualifier_attribute62 = OKC_API.G_MISS_CHAR)
3520       THEN
3521         x_pavv_rec.qualifier_attribute62 := l_pavv_rec.qualifier_attribute62;
3522       END IF;
3523       IF (x_pavv_rec.qualifier_attribute63 = OKC_API.G_MISS_CHAR)
3524       THEN
3525         x_pavv_rec.qualifier_attribute63 := l_pavv_rec.qualifier_attribute63;
3526       END IF;
3527       IF (x_pavv_rec.qualifier_attribute64 = OKC_API.G_MISS_CHAR)
3528       THEN
3529         x_pavv_rec.qualifier_attribute64 := l_pavv_rec.qualifier_attribute64;
3530       END IF;
3531       IF (x_pavv_rec.qualifier_attribute65 = OKC_API.G_MISS_CHAR)
3532       THEN
3533         x_pavv_rec.qualifier_attribute65 := l_pavv_rec.qualifier_attribute65;
3534       END IF;
3535       IF (x_pavv_rec.qualifier_attribute66 = OKC_API.G_MISS_CHAR)
3536       THEN
3537         x_pavv_rec.qualifier_attribute66 := l_pavv_rec.qualifier_attribute66;
3538       END IF;
3539       IF (x_pavv_rec.qualifier_attribute67 = OKC_API.G_MISS_CHAR)
3540       THEN
3541         x_pavv_rec.qualifier_attribute67 := l_pavv_rec.qualifier_attribute67;
3542       END IF;
3543       IF (x_pavv_rec.qualifier_attribute68 = OKC_API.G_MISS_CHAR)
3544       THEN
3545         x_pavv_rec.qualifier_attribute68 := l_pavv_rec.qualifier_attribute68;
3546       END IF;
3547       IF (x_pavv_rec.qualifier_attribute69 = OKC_API.G_MISS_CHAR)
3548       THEN
3549         x_pavv_rec.qualifier_attribute69 := l_pavv_rec.qualifier_attribute69;
3550       END IF;
3551       IF (x_pavv_rec.qualifier_attribute70 = OKC_API.G_MISS_CHAR)
3552       THEN
3553         x_pavv_rec.qualifier_attribute70 := l_pavv_rec.qualifier_attribute70;
3554       END IF;
3555       IF (x_pavv_rec.qualifier_attribute71 = OKC_API.G_MISS_CHAR)
3556       THEN
3557         x_pavv_rec.qualifier_attribute71 := l_pavv_rec.qualifier_attribute71;
3558       END IF;
3559       IF (x_pavv_rec.qualifier_attribute72 = OKC_API.G_MISS_CHAR)
3560       THEN
3561         x_pavv_rec.qualifier_attribute72 := l_pavv_rec.qualifier_attribute72;
3562       END IF;
3563       IF (x_pavv_rec.qualifier_attribute73 = OKC_API.G_MISS_CHAR)
3564       THEN
3565         x_pavv_rec.qualifier_attribute73 := l_pavv_rec.qualifier_attribute73;
3566       END IF;
3567       IF (x_pavv_rec.qualifier_attribute74 = OKC_API.G_MISS_CHAR)
3568       THEN
3569         x_pavv_rec.qualifier_attribute74 := l_pavv_rec.qualifier_attribute74;
3570       END IF;
3571       IF (x_pavv_rec.qualifier_attribute75 = OKC_API.G_MISS_CHAR)
3572       THEN
3573         x_pavv_rec.qualifier_attribute75 := l_pavv_rec.qualifier_attribute75;
3574       END IF;
3575       IF (x_pavv_rec.qualifier_attribute76 = OKC_API.G_MISS_CHAR)
3576       THEN
3577         x_pavv_rec.qualifier_attribute76 := l_pavv_rec.qualifier_attribute76;
3578       END IF;
3579       IF (x_pavv_rec.qualifier_attribute77 = OKC_API.G_MISS_CHAR)
3580       THEN
3581         x_pavv_rec.qualifier_attribute77 := l_pavv_rec.qualifier_attribute77;
3582       END IF;
3583       IF (x_pavv_rec.qualifier_attribute78 = OKC_API.G_MISS_CHAR)
3584       THEN
3585         x_pavv_rec.qualifier_attribute78 := l_pavv_rec.qualifier_attribute78;
3586       END IF;
3587       IF (x_pavv_rec.qualifier_attribute79 = OKC_API.G_MISS_CHAR)
3588       THEN
3589         x_pavv_rec.qualifier_attribute79 := l_pavv_rec.qualifier_attribute79;
3590       END IF;
3591       IF (x_pavv_rec.qualifier_attribute80 = OKC_API.G_MISS_CHAR)
3592       THEN
3593         x_pavv_rec.qualifier_attribute80 := l_pavv_rec.qualifier_attribute80;
3594       END IF;
3595       IF (x_pavv_rec.qualifier_attribute81 = OKC_API.G_MISS_CHAR)
3596       THEN
3597         x_pavv_rec.qualifier_attribute81 := l_pavv_rec.qualifier_attribute81;
3598       END IF;
3599       IF (x_pavv_rec.qualifier_attribute82 = OKC_API.G_MISS_CHAR)
3600       THEN
3601         x_pavv_rec.qualifier_attribute82 := l_pavv_rec.qualifier_attribute82;
3602       END IF;
3603       IF (x_pavv_rec.qualifier_attribute83 = OKC_API.G_MISS_CHAR)
3604       THEN
3605         x_pavv_rec.qualifier_attribute83 := l_pavv_rec.qualifier_attribute83;
3606       END IF;
3607       IF (x_pavv_rec.qualifier_attribute84 = OKC_API.G_MISS_CHAR)
3608       THEN
3609         x_pavv_rec.qualifier_attribute84 := l_pavv_rec.qualifier_attribute84;
3610       END IF;
3611       IF (x_pavv_rec.qualifier_attribute85 = OKC_API.G_MISS_CHAR)
3612       THEN
3613         x_pavv_rec.qualifier_attribute85 := l_pavv_rec.qualifier_attribute85;
3614       END IF;
3615       IF (x_pavv_rec.qualifier_attribute86 = OKC_API.G_MISS_CHAR)
3616       THEN
3617         x_pavv_rec.qualifier_attribute86 := l_pavv_rec.qualifier_attribute86;
3618       END IF;
3619       IF (x_pavv_rec.qualifier_attribute87 = OKC_API.G_MISS_CHAR)
3620       THEN
3621         x_pavv_rec.qualifier_attribute87 := l_pavv_rec.qualifier_attribute87;
3622       END IF;
3623       IF (x_pavv_rec.qualifier_attribute88 = OKC_API.G_MISS_CHAR)
3624       THEN
3625         x_pavv_rec.qualifier_attribute88 := l_pavv_rec.qualifier_attribute88;
3626       END IF;
3627       IF (x_pavv_rec.qualifier_attribute89 = OKC_API.G_MISS_CHAR)
3628       THEN
3629         x_pavv_rec.qualifier_attribute89 := l_pavv_rec.qualifier_attribute89;
3630       END IF;
3631       IF (x_pavv_rec.qualifier_attribute90 = OKC_API.G_MISS_CHAR)
3632       THEN
3633         x_pavv_rec.qualifier_attribute90 := l_pavv_rec.qualifier_attribute90;
3634       END IF;
3635       IF (x_pavv_rec.qualifier_attribute91 = OKC_API.G_MISS_CHAR)
3636       THEN
3637         x_pavv_rec.qualifier_attribute91 := l_pavv_rec.qualifier_attribute91;
3638       END IF;
3639       IF (x_pavv_rec.qualifier_attribute92 = OKC_API.G_MISS_CHAR)
3640       THEN
3641         x_pavv_rec.qualifier_attribute92 := l_pavv_rec.qualifier_attribute92;
3642       END IF;
3643       IF (x_pavv_rec.qualifier_attribute93 = OKC_API.G_MISS_CHAR)
3644       THEN
3645         x_pavv_rec.qualifier_attribute93 := l_pavv_rec.qualifier_attribute93;
3646       END IF;
3647       IF (x_pavv_rec.qualifier_attribute94 = OKC_API.G_MISS_CHAR)
3648       THEN
3649         x_pavv_rec.qualifier_attribute94 := l_pavv_rec.qualifier_attribute94;
3650       END IF;
3651       IF (x_pavv_rec.qualifier_attribute95 = OKC_API.G_MISS_CHAR)
3652       THEN
3653         x_pavv_rec.qualifier_attribute95 := l_pavv_rec.qualifier_attribute95;
3654       END IF;
3655       IF (x_pavv_rec.qualifier_attribute96 = OKC_API.G_MISS_CHAR)
3656       THEN
3657         x_pavv_rec.qualifier_attribute96 := l_pavv_rec.qualifier_attribute96;
3658       END IF;
3659       IF (x_pavv_rec.qualifier_attribute97 = OKC_API.G_MISS_CHAR)
3660       THEN
3661         x_pavv_rec.qualifier_attribute97 := l_pavv_rec.qualifier_attribute97;
3662       END IF;
3663       IF (x_pavv_rec.qualifier_attribute98 = OKC_API.G_MISS_CHAR)
3664       THEN
3665         x_pavv_rec.qualifier_attribute98 := l_pavv_rec.qualifier_attribute98;
3666       END IF;
3667       IF (x_pavv_rec.qualifier_attribute99 = OKC_API.G_MISS_CHAR)
3668       THEN
3669         x_pavv_rec.qualifier_attribute99 := l_pavv_rec.qualifier_attribute99;
3670       END IF;
3671       IF (x_pavv_rec.qualifier_attribute100 = OKC_API.G_MISS_CHAR)
3672       THEN
3673         x_pavv_rec.qualifier_attribute100 := l_pavv_rec.qualifier_attribute100;
3674       END IF;
3675       IF (x_pavv_rec.created_by = OKC_API.G_MISS_NUM)
3676       THEN
3677         x_pavv_rec.created_by := l_pavv_rec.created_by;
3678       END IF;
3679       IF (x_pavv_rec.creation_date = OKC_API.G_MISS_DATE)
3680       THEN
3681         x_pavv_rec.creation_date := l_pavv_rec.creation_date;
3682       END IF;
3683       IF (x_pavv_rec.last_updated_by = OKC_API.G_MISS_NUM)
3684       THEN
3685         x_pavv_rec.last_updated_by := l_pavv_rec.last_updated_by;
3686       END IF;
3687       IF (x_pavv_rec.last_update_date = OKC_API.G_MISS_DATE)
3688       THEN
3689         x_pavv_rec.last_update_date := l_pavv_rec.last_update_date;
3690       END IF;
3691       IF (x_pavv_rec.last_update_login = OKC_API.G_MISS_NUM)
3692       THEN
3693         x_pavv_rec.last_update_login := l_pavv_rec.last_update_login;
3694       END IF;
3695      IF (x_pavv_rec.program_application_id = OKC_API.G_MISS_NUM)
3696       THEN
3697         x_pavv_rec.program_application_id := l_pavv_rec.program_application_id;
3698       END IF;
3699      IF (x_pavv_rec.program_id = OKC_API.G_MISS_NUM)
3700       THEN
3701         x_pavv_rec.program_id := l_pavv_rec.program_id;
3702       END IF;
3703      IF (x_pavv_rec.program_update_date = OKC_API.G_MISS_DATE)
3704       THEN
3705         x_pavv_rec.program_update_date := l_pavv_rec.program_update_date;
3706       END IF;
3707     IF (x_pavv_rec.request_id = OKC_API.G_MISS_NUM)
3708       THEN
3709         x_pavv_rec.request_id := l_pavv_rec.request_id;
3710       END IF;
3711       IF (x_pavv_rec.object_version_number = OKC_API.G_MISS_NUM)
3712       THEN
3713         x_pavv_rec.object_version_number := l_pavv_rec.object_version_number;
3714       END IF;
3715       RETURN(l_return_status);
3716     END populate_new_record;
3717     -----------------------------------------------
3718     -- Set_Attributes for:OKC_PRICE_ATT_VALUES_V --
3719     -----------------------------------------------
3720     FUNCTION Set_Attributes (
3721       p_pavv_rec IN  pavv_rec_type,
3722       x_pavv_rec OUT NOCOPY pavv_rec_type
3723     ) RETURN VARCHAR2 IS
3724       l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3725     BEGIN
3726       x_pavv_rec := p_pavv_rec;
3727       x_pavv_rec.OBJECT_VERSION_NUMBER := NVL(x_pavv_rec.OBJECT_VERSION_NUMBER,0) + 1;
3728      RETURN(l_return_status);
3729     END Set_Attributes;
3730   BEGIN
3731     l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3732                                               G_PKG_NAME,
3733                                               p_init_msg_list,
3734                                               l_api_version,
3735                                               p_api_version,
3736                                               '_PVT',
3737                                               x_return_status);
3738     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3739       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3740     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3741       RAISE OKC_API.G_EXCEPTION_ERROR;
3742     END IF;
3743     --- Setting item attributes
3744     l_return_status := Set_Attributes(
3745       p_pavv_rec,                        -- IN
3746       l_pavv_rec);                       -- OUT
3747     --- If any errors happen abort API
3748     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3749       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3750     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3751       RAISE OKC_API.G_EXCEPTION_ERROR;
3752     END IF;
3753     l_return_status := populate_new_record(l_pavv_rec, l_def_pavv_rec);
3754     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3755       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3756     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3757       RAISE OKC_API.G_EXCEPTION_ERROR;
3758     END IF;
3759     l_def_pavv_rec := fill_who_columns(l_def_pavv_rec);
3760     --- Validate all non-missing attributes (Item Level Validation)
3761     l_return_status := Validate_Attributes(l_def_pavv_rec);
3762     --- If any errors happen abort API
3763     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3764       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3765     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3766       RAISE OKC_API.G_EXCEPTION_ERROR;
3767     END IF;
3768     l_return_status := Validate_Record(l_def_pavv_rec);
3769     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3770       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3771     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3772       RAISE OKC_API.G_EXCEPTION_ERROR;
3773     END IF;
3774 
3775     --------------------------------------
3776     -- Move VIEW record to "Child" records
3777     --------------------------------------
3778     migrate(l_def_pavv_rec, l_pav_rec);
3779     --------------------------------------------
3780     -- Call the UPDATE_ROW for each child record
3781     --------------------------------------------
3782     update_row(
3783       p_init_msg_list,
3784       x_return_status,
3785       x_msg_count,
3786       x_msg_data,
3787       l_pav_rec,
3788       lx_pav_rec
3789     );
3790     IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3791       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3792     ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
3793       RAISE OKC_API.G_EXCEPTION_ERROR;
3794     END IF;
3795     migrate(lx_pav_rec, l_def_pavv_rec);
3796     x_pavv_rec := l_def_pavv_rec;
3797     OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3798   EXCEPTION
3799     WHEN OKC_API.G_EXCEPTION_ERROR THEN
3800       x_return_status := OKC_API.HANDLE_EXCEPTIONS
3801       (
3802         l_api_name,
3803         G_PKG_NAME,
3804         'OKC_API.G_RET_STS_ERROR',
3805         x_msg_count,
3806         x_msg_data,
3807         '_PVT'
3808       );
3809     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3810       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3811       (
3812         l_api_name,
3813         G_PKG_NAME,
3814         'OKC_API.G_RET_STS_UNEXP_ERROR',
3815         x_msg_count,
3816         x_msg_data,
3817         '_PVT'
3818       );
3819     WHEN OTHERS THEN
3820       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3821       (
3822         l_api_name,
3823         G_PKG_NAME,
3824         'OTHERS',
3825         x_msg_count,
3826         x_msg_data,
3827         '_PVT'
3828       );
3829   END update_row;
3830   ----------------------------------------
3831   -- PL/SQL TBL update_row for:PAVV_TBL --
3832   ----------------------------------------
3833   PROCEDURE update_row(
3834     p_api_version                  IN NUMBER,
3835     p_init_msg_list                IN VARCHAR2 ,
3836     x_return_status                OUT NOCOPY VARCHAR2,
3837     x_msg_count                    OUT NOCOPY NUMBER,
3838     x_msg_data                     OUT NOCOPY VARCHAR2,
3839     p_pavv_tbl                     IN pavv_tbl_type,
3840     x_pavv_tbl                     OUT NOCOPY pavv_tbl_type) IS
3841 
3842     l_api_version                 CONSTANT NUMBER := 1;
3843     l_api_name                     CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
3844     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3845     i                              NUMBER := 0;
3846   BEGIN
3847     OKC_API.init_msg_list(p_init_msg_list);
3848     -- Make sure PL/SQL table has records in it before passing
3849     IF (p_pavv_tbl.COUNT > 0) THEN
3850       i := p_pavv_tbl.FIRST;
3851       LOOP
3852         update_row (
3853           p_api_version                  => p_api_version,
3854           p_init_msg_list                => OKC_API.G_FALSE,
3855           x_return_status                => x_return_status,
3856           x_msg_count                    => x_msg_count,
3857           x_msg_data                     => x_msg_data,
3858           p_pavv_rec                     => p_pavv_tbl(i),
3859           x_pavv_rec                     => x_pavv_tbl(i));
3860         EXIT WHEN (i = p_pavv_tbl.LAST);
3861         i := p_pavv_tbl.NEXT(i);
3862       END LOOP;
3863     END IF;
3864   EXCEPTION
3865     WHEN OKC_API.G_EXCEPTION_ERROR THEN
3866       x_return_status := OKC_API.HANDLE_EXCEPTIONS
3867       (
3868         l_api_name,
3869         G_PKG_NAME,
3870         'OKC_API.G_RET_STS_ERROR',
3871         x_msg_count,
3872         x_msg_data,
3873         '_PVT'
3874       );
3875     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3876       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3877       (
3878         l_api_name,
3879         G_PKG_NAME,
3880         'OKC_API.G_RET_STS_UNEXP_ERROR',
3881         x_msg_count,
3882         x_msg_data,
3883         '_PVT'
3884       );
3885     WHEN OTHERS THEN
3886       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3887       (
3888         l_api_name,
3889         G_PKG_NAME,
3890         'OTHERS',
3891         x_msg_count,
3892         x_msg_data,
3893         '_PVT'
3894       );
3895   END update_row;
3896 
3897   ---------------------------------------------------------------------------
3898   -- PROCEDURE delete_row
3899   ---------------------------------------------------------------------------
3900   -----------------------------------------
3901   -- delete_row for:OKC_PRICE_ATT_VALUES --
3902   -----------------------------------------
3903   PROCEDURE delete_row(
3904     p_init_msg_list                IN VARCHAR2 ,
3905     x_return_status                OUT NOCOPY VARCHAR2,
3906     x_msg_count                    OUT NOCOPY NUMBER,
3907     x_msg_data                     OUT NOCOPY VARCHAR2,
3908     p_pav_rec                      IN pav_rec_type) IS
3909 
3910     l_api_version                 CONSTANT NUMBER := 1;
3911     l_api_name                     CONSTANT VARCHAR2(30) := 'VALUES_delete_row';
3912     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3913     l_pav_rec                      pav_rec_type:= p_pav_rec;
3914     l_row_notfound                 BOOLEAN := TRUE;
3915   BEGIN
3916     l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3917                                               p_init_msg_list,
3918                                               '_PVT',
3919                                               x_return_status);
3920     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3921       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3922     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3923       RAISE OKC_API.G_EXCEPTION_ERROR;
3924     END IF;
3925     DELETE FROM OKC_PRICE_ATT_VALUES
3926      WHERE ID = l_pav_rec.id;
3927 
3928     OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3929   EXCEPTION
3930     WHEN OKC_API.G_EXCEPTION_ERROR THEN
3931       x_return_status := OKC_API.HANDLE_EXCEPTIONS
3932       (
3933         l_api_name,
3934         G_PKG_NAME,
3935         'OKC_API.G_RET_STS_ERROR',
3936         x_msg_count,
3937         x_msg_data,
3938         '_PVT'
3939       );
3940     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3941       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3942       (
3943         l_api_name,
3944         G_PKG_NAME,
3945         'OKC_API.G_RET_STS_UNEXP_ERROR',
3946         x_msg_count,
3947         x_msg_data,
3948         '_PVT'
3949       );
3950     WHEN OTHERS THEN
3951       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3952       (
3953         l_api_name,
3954         G_PKG_NAME,
3955         'OTHERS',
3956         x_msg_count,
3957         x_msg_data,
3958         '_PVT'
3959       );
3960   END delete_row;
3961   -------------------------------------------
3962   -- delete_row for:OKC_PRICE_ATT_VALUES_V --
3963   -------------------------------------------
3964   PROCEDURE delete_row(
3965     p_api_version                  IN NUMBER,
3966     p_init_msg_list                IN VARCHAR2 ,
3967     x_return_status                OUT NOCOPY VARCHAR2,
3968     x_msg_count                    OUT NOCOPY NUMBER,
3969     x_msg_data                     OUT NOCOPY VARCHAR2,
3970     p_pavv_rec                     IN pavv_rec_type) IS
3971 
3972     l_api_version                 CONSTANT NUMBER := 1;
3973     l_api_name                     CONSTANT VARCHAR2(30) := 'V_delete_row';
3974     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3975     l_pavv_rec                     pavv_rec_type := p_pavv_rec;
3976     l_pav_rec                      pav_rec_type;
3977   BEGIN
3978     l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3979                                               G_PKG_NAME,
3980                                               p_init_msg_list,
3981                                               l_api_version,
3982                                               p_api_version,
3983                                               '_PVT',
3984                                               x_return_status);
3985     IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3986       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3987     ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3988       RAISE OKC_API.G_EXCEPTION_ERROR;
3989     END IF;
3990     --------------------------------------
3991     -- Move VIEW record to "Child" records
3992     --------------------------------------
3993     migrate(l_pavv_rec, l_pav_rec);
3994     --------------------------------------------
3995     -- Call the DELETE_ROW for each child record
3996     --------------------------------------------
3997     delete_row(
3998       p_init_msg_list,
3999       x_return_status,
4000       x_msg_count,
4001       x_msg_data,
4002       l_pav_rec
4003     );
4004     IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
4005       RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
4006     ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
4007       RAISE OKC_API.G_EXCEPTION_ERROR;
4008     END IF;
4009     OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
4010   EXCEPTION
4011     WHEN OKC_API.G_EXCEPTION_ERROR THEN
4012       x_return_status := OKC_API.HANDLE_EXCEPTIONS
4013       (
4014         l_api_name,
4015         G_PKG_NAME,
4016         'OKC_API.G_RET_STS_ERROR',
4017         x_msg_count,
4018         x_msg_data,
4019         '_PVT'
4020       );
4021     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4022       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4023       (
4024         l_api_name,
4025         G_PKG_NAME,
4026         'OKC_API.G_RET_STS_UNEXP_ERROR',
4027         x_msg_count,
4028         x_msg_data,
4029         '_PVT'
4030       );
4031     WHEN OTHERS THEN
4032       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4033       (
4034         l_api_name,
4035         G_PKG_NAME,
4036         'OTHERS',
4037         x_msg_count,
4038         x_msg_data,
4039         '_PVT'
4040       );
4041   END delete_row;
4042   ----------------------------------------
4043   -- PL/SQL TBL delete_row for:PAVV_TBL --
4044   ----------------------------------------
4045   PROCEDURE delete_row(
4046     p_api_version                  IN NUMBER,
4047     p_init_msg_list                IN VARCHAR2 ,
4048     x_return_status                OUT NOCOPY VARCHAR2,
4049     x_msg_count                    OUT NOCOPY NUMBER,
4050     x_msg_data                     OUT NOCOPY VARCHAR2,
4051     p_pavv_tbl                     IN pavv_tbl_type) IS
4052 
4053     l_api_version                 CONSTANT NUMBER := 1;
4054     l_api_name                     CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
4055     l_return_status                VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
4056     i                              NUMBER := 0;
4057   BEGIN
4058     OKC_API.init_msg_list(p_init_msg_list);
4059     -- Make sure PL/SQL table has records in it before passing
4060     IF (p_pavv_tbl.COUNT > 0) THEN
4061       i := p_pavv_tbl.FIRST;
4062       LOOP
4063         delete_row (
4064           p_api_version                  => p_api_version,
4065           p_init_msg_list                => OKC_API.G_FALSE,
4066           x_return_status                => x_return_status,
4067           x_msg_count                    => x_msg_count,
4068           x_msg_data                     => x_msg_data,
4069           p_pavv_rec                     => p_pavv_tbl(i));
4070         EXIT WHEN (i = p_pavv_tbl.LAST);
4071         i := p_pavv_tbl.NEXT(i);
4072       END LOOP;
4073     END IF;
4074   EXCEPTION
4075     WHEN OKC_API.G_EXCEPTION_ERROR THEN
4076       x_return_status := OKC_API.HANDLE_EXCEPTIONS
4077       (
4078         l_api_name,
4079         G_PKG_NAME,
4080         'OKC_API.G_RET_STS_ERROR',
4081         x_msg_count,
4082         x_msg_data,
4083         '_PVT'
4084       );
4085     WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4086       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4087       (
4088         l_api_name,
4089         G_PKG_NAME,
4090         'OKC_API.G_RET_STS_UNEXP_ERROR',
4091         x_msg_count,
4092         x_msg_data,
4093         '_PVT'
4094       );
4095     WHEN OTHERS THEN
4096       x_return_status :=OKC_API.HANDLE_EXCEPTIONS
4097       (
4098         l_api_name,
4099         G_PKG_NAME,
4100         'OTHERS',
4101         x_msg_count,
4102         x_msg_data,
4103         '_PVT'
4104       );
4105   END delete_row;
4106 
4107 ---------------------------------------------------------------
4108 -- Procedure for mass insert in OKC_PRICE_ATT_VALUES _B and TL tables
4109 ---------------------------------------------------------------
4110 PROCEDURE INSERT_ROW_UPG(x_return_status OUT NOCOPY VARCHAR2,p_pavv_tbl pavv_tbl_type) IS
4111 BEGIN
4112 ----need to substitue
4113  OKC_SPLIT2_PAV_PVT.INSERT_ROW_UPG(x_return_status ,p_pavv_tbl );
4114 
4115 ---------
4116 END INSERT_ROW_UPG;
4117 
4118 
4119    FUNCTION create_version(
4120              p_chr_id         IN NUMBER,
4121              p_major_version  IN NUMBER
4122            ) RETURN VARCHAR2 IS
4123 
4124   l_return_status VARCHAR2(1):= OKC_API.G_RET_STS_SUCCESS;
4125 
4126 BEGIN
4127 INSERT INTO okc_price_att_values_h
4128   (
4129         id,
4130         flex_title,
4131         pricing_context,
4132         pricing_attribute1,
4133         chr_id,
4134         pricing_attribute2,
4135         cle_id,
4136         pricing_attribute3,
4137         pricing_attribute4,
4138         pricing_attribute5,
4139         pricing_attribute6,
4140         pricing_attribute7,
4141         pricing_attribute8,
4142         pricing_attribute9,
4143         pricing_attribute10,
4144         pricing_attribute11,
4145         pricing_attribute12,
4146         pricing_attribute13,
4147         pricing_attribute14,
4148         pricing_attribute15,
4149         pricing_attribute16,
4150         pricing_attribute17,
4151         pricing_attribute18,
4152         pricing_attribute19,
4153         pricing_attribute20,
4154         pricing_attribute21,
4155         pricing_attribute22,
4156         pricing_attribute23,
4157         pricing_attribute24,
4158         pricing_attribute25,
4159         pricing_attribute26,
4160         pricing_attribute27,
4161         pricing_attribute28,
4162         pricing_attribute29,
4163         pricing_attribute30,
4164         pricing_attribute31,
4165         pricing_attribute32,
4166         pricing_attribute33,
4167         pricing_attribute34,
4168         pricing_attribute35,
4169         pricing_attribute36,
4170         pricing_attribute37,
4171         pricing_attribute38,
4172         pricing_attribute39,
4173         pricing_attribute40,
4174         pricing_attribute41,
4175         pricing_attribute42,
4176         pricing_attribute43,
4177         pricing_attribute44,
4178         pricing_attribute45,
4179         pricing_attribute46,
4180         pricing_attribute47,
4181         pricing_attribute48,
4182         pricing_attribute49,
4183         pricing_attribute50,
4184         pricing_attribute51,
4185         pricing_attribute52,
4186         pricing_attribute53,
4187         pricing_attribute54,
4188         pricing_attribute55,
4189         pricing_attribute56,
4190         pricing_attribute57,
4191         pricing_attribute58,
4192         pricing_attribute59,
4193         pricing_attribute60,
4194         pricing_attribute61,
4195         pricing_attribute62,
4196         pricing_attribute63,
4197         pricing_attribute64,
4198         pricing_attribute65,
4199         pricing_attribute66,
4200         pricing_attribute67,
4201         pricing_attribute68,
4202         pricing_attribute69,
4203         pricing_attribute70,
4204         pricing_attribute71,
4205         pricing_attribute72,
4206         pricing_attribute73,
4207         pricing_attribute74,
4208         pricing_attribute75,
4209         pricing_attribute76,
4210         pricing_attribute77,
4211         pricing_attribute78,
4212         pricing_attribute79,
4213         pricing_attribute80,
4214         pricing_attribute81,
4215         pricing_attribute82,
4216         pricing_attribute83,
4217         pricing_attribute84,
4218         pricing_attribute85,
4219         pricing_attribute86,
4220         pricing_attribute87,
4221         pricing_attribute88,
4222         pricing_attribute89,
4223         pricing_attribute90,
4224         pricing_attribute91,
4225         pricing_attribute92,
4226         pricing_attribute93,
4227         pricing_attribute94,
4228         pricing_attribute95,
4229         pricing_attribute96,
4230         pricing_attribute97,
4231         pricing_attribute98,
4232         pricing_attribute99,
4233         pricing_attribute100,
4234         qualifier_context,
4235         qualifier_attribute1,
4236         qualifier_attribute2,
4237         created_by,
4238         qualifier_attribute3,
4239         creation_date,
4240         qualifier_attribute4,
4241         qualifier_attribute5,
4242         last_updated_by,
4243         qualifier_attribute6,
4244         last_update_date,
4245         qualifier_attribute7,
4246         qualifier_attribute8,
4247         qualifier_attribute9,
4248         qualifier_attribute10,
4249         qualifier_attribute11,
4250         qualifier_attribute12,
4251         qualifier_attribute13,
4252         qualifier_attribute14,
4253         qualifier_attribute15,
4254         qualifier_attribute16,
4255         qualifier_attribute17,
4256         qualifier_attribute18,
4257         qualifier_attribute19,
4258         qualifier_attribute20,
4259         qualifier_attribute21,
4260         qualifier_attribute22,
4261         qualifier_attribute23,
4262         qualifier_attribute24,
4263         qualifier_attribute25,
4264         qualifier_attribute26,
4265         qualifier_attribute27,
4266         qualifier_attribute28,
4267         qualifier_attribute29,
4268         qualifier_attribute30,
4269         qualifier_attribute31,
4270         qualifier_attribute32,
4271         qualifier_attribute33,
4272         qualifier_attribute34,
4273         qualifier_attribute35,
4274         qualifier_attribute36,
4275         qualifier_attribute37,
4276         qualifier_attribute38,
4277         qualifier_attribute39,
4278         qualifier_attribute40,
4279         qualifier_attribute41,
4280         qualifier_attribute42,
4281         qualifier_attribute43,
4282         qualifier_attribute44,
4283         qualifier_attribute45,
4284         qualifier_attribute46,
4285         qualifier_attribute47,
4286         qualifier_attribute48,
4287         qualifier_attribute49,
4288         qualifier_attribute50,
4289         qualifier_attribute51,
4290         qualifier_attribute52,
4291         qualifier_attribute53,
4292         qualifier_attribute54,
4293         qualifier_attribute55,
4294         qualifier_attribute56,
4295         qualifier_attribute57,
4296         qualifier_attribute58,
4297         qualifier_attribute59,
4298         qualifier_attribute60,
4299         qualifier_attribute61,
4300         qualifier_attribute62,
4301         qualifier_attribute63,
4302         qualifier_attribute64,
4303         qualifier_attribute65,
4304         qualifier_attribute66,
4305         qualifier_attribute67,
4306         qualifier_attribute68,
4307         qualifier_attribute69,
4308         qualifier_attribute70,
4309         qualifier_attribute71,
4310         qualifier_attribute72,
4311         qualifier_attribute73,
4312         qualifier_attribute74,
4313         qualifier_attribute75,
4314         qualifier_attribute76,
4315         qualifier_attribute77,
4316         qualifier_attribute78,
4317         qualifier_attribute79,
4318         qualifier_attribute80,
4319         qualifier_attribute81,
4320         qualifier_attribute82,
4321         qualifier_attribute83,
4322         qualifier_attribute84,
4323         qualifier_attribute85,
4324         qualifier_attribute86,
4325         qualifier_attribute87,
4326         qualifier_attribute88,
4327         qualifier_attribute89,
4328         qualifier_attribute90,
4329         qualifier_attribute91,
4330         qualifier_attribute92,
4331         qualifier_attribute93,
4332         qualifier_attribute94,
4333         qualifier_attribute95,
4334         qualifier_attribute96,
4335         qualifier_attribute97,
4336         qualifier_attribute98,
4337         qualifier_attribute99,
4338         qualifier_attribute100,
4339         last_update_login,
4340         program_application_id,
4341         program_id,
4342         program_update_date,
4343         request_id,
4344        object_version_number,
4345        major_version
4346       )
4347 
4348 SELECT
4349 
4350         id,
4351         flex_title,
4352         pricing_context,
4353         pricing_attribute1,
4354         chr_id,
4355         pricing_attribute2,
4356         cle_id,
4357         pricing_attribute3,
4358         pricing_attribute4,
4359         pricing_attribute5,
4360         pricing_attribute6,
4361         pricing_attribute7,
4362         pricing_attribute8,
4363         pricing_attribute9,
4364         pricing_attribute10,
4365         pricing_attribute11,
4366         pricing_attribute12,
4367         pricing_attribute13,
4368         pricing_attribute14,
4369         pricing_attribute15,
4370         pricing_attribute16,
4371         pricing_attribute17,
4372         pricing_attribute18,
4373         pricing_attribute19,
4374         pricing_attribute20,
4375         pricing_attribute21,
4376         pricing_attribute22,
4377         pricing_attribute23,
4378         pricing_attribute24,
4379         pricing_attribute25,
4380         pricing_attribute26,
4381         pricing_attribute27,
4382         pricing_attribute28,
4383         pricing_attribute29,
4384         pricing_attribute30,
4385         pricing_attribute31,
4386         pricing_attribute32,
4387         pricing_attribute33,
4388         pricing_attribute34,
4389         pricing_attribute35,
4390         pricing_attribute36,
4391         pricing_attribute37,
4392         pricing_attribute38,
4393         pricing_attribute39,
4394         pricing_attribute40,
4395         pricing_attribute41,
4396         pricing_attribute42,
4397         pricing_attribute43,
4398         pricing_attribute44,
4399         pricing_attribute45,
4400         pricing_attribute46,
4401         pricing_attribute47,
4402         pricing_attribute48,
4403         pricing_attribute49,
4404         pricing_attribute50,
4405         pricing_attribute51,
4406         pricing_attribute52,
4407         pricing_attribute53,
4408         pricing_attribute54,
4409         pricing_attribute55,
4410         pricing_attribute56,
4411         pricing_attribute57,
4412         pricing_attribute58,
4413         pricing_attribute59,
4414         pricing_attribute60,
4415         pricing_attribute61,
4416         pricing_attribute62,
4417         pricing_attribute63,
4418         pricing_attribute64,
4419         pricing_attribute65,
4420         pricing_attribute66,
4421         pricing_attribute67,
4422         pricing_attribute68,
4423         pricing_attribute69,
4424         pricing_attribute70,
4425         pricing_attribute71,
4426         pricing_attribute72,
4427         pricing_attribute73,
4428         pricing_attribute74,
4429         pricing_attribute75,
4430         pricing_attribute76,
4431         pricing_attribute77,
4432         pricing_attribute78,
4433         pricing_attribute79,
4434         pricing_attribute80,
4435         pricing_attribute81,
4436         pricing_attribute82,
4437         pricing_attribute83,
4438         pricing_attribute84,
4439         pricing_attribute85,
4440         pricing_attribute86,
4441         pricing_attribute87,
4442         pricing_attribute88,
4443         pricing_attribute89,
4444         pricing_attribute90,
4445         pricing_attribute91,
4446         pricing_attribute92,
4447         pricing_attribute93,
4448         pricing_attribute94,
4449         pricing_attribute95,
4450         pricing_attribute96,
4451         pricing_attribute97,
4452         pricing_attribute98,
4453         pricing_attribute99,
4454         pricing_attribute100,
4455         qualifier_context,
4456         qualifier_attribute1,
4457         qualifier_attribute2,
4458         created_by,
4459         qualifier_attribute3,
4460         creation_date,
4461         qualifier_attribute4,
4462         qualifier_attribute5,
4463         last_updated_by,
4464         qualifier_attribute6,
4465         last_update_date,
4466         qualifier_attribute7,
4467         qualifier_attribute8,
4468         qualifier_attribute9,
4469         qualifier_attribute10,
4470         qualifier_attribute11,
4471         qualifier_attribute12,
4472         qualifier_attribute13,
4473         qualifier_attribute14,
4474         qualifier_attribute15,
4475         qualifier_attribute16,
4476         qualifier_attribute17,
4477         qualifier_attribute18,
4478         qualifier_attribute19,
4479         qualifier_attribute20,
4480         qualifier_attribute21,
4481         qualifier_attribute22,
4482         qualifier_attribute23,
4483         qualifier_attribute24,
4484         qualifier_attribute25,
4485         qualifier_attribute26,
4486         qualifier_attribute27,
4487         qualifier_attribute28,
4488         qualifier_attribute29,
4489         qualifier_attribute30,
4490         qualifier_attribute31,
4491         qualifier_attribute32,
4492         qualifier_attribute33,
4493         qualifier_attribute34,
4494         qualifier_attribute35,
4495         qualifier_attribute36,
4496         qualifier_attribute37,
4497         qualifier_attribute38,
4498         qualifier_attribute39,
4499         qualifier_attribute40,
4500         qualifier_attribute41,
4501         qualifier_attribute42,
4502         qualifier_attribute43,
4503         qualifier_attribute44,
4504         qualifier_attribute45,
4505         qualifier_attribute46,
4506         qualifier_attribute47,
4507         qualifier_attribute48,
4508         qualifier_attribute49,
4509         qualifier_attribute50,
4510         qualifier_attribute51,
4511         qualifier_attribute52,
4512         qualifier_attribute53,
4513         qualifier_attribute54,
4514         qualifier_attribute55,
4515         qualifier_attribute56,
4516         qualifier_attribute57,
4517         qualifier_attribute58,
4518         qualifier_attribute59,
4519         qualifier_attribute60,
4520         qualifier_attribute61,
4521         qualifier_attribute62,
4522         qualifier_attribute63,
4523         qualifier_attribute64,
4524         qualifier_attribute65,
4525         qualifier_attribute66,
4526         qualifier_attribute67,
4527         qualifier_attribute68,
4528         qualifier_attribute69,
4529         qualifier_attribute70,
4530         qualifier_attribute71,
4531         qualifier_attribute72,
4532         qualifier_attribute73,
4533         qualifier_attribute74,
4534         qualifier_attribute75,
4535         qualifier_attribute76,
4536         qualifier_attribute77,
4537         qualifier_attribute78,
4538         qualifier_attribute79,
4539         qualifier_attribute80,
4540         qualifier_attribute81,
4541         qualifier_attribute82,
4542         qualifier_attribute83,
4543         qualifier_attribute84,
4544         qualifier_attribute85,
4545         qualifier_attribute86,
4546         qualifier_attribute87,
4547         qualifier_attribute88,
4548         qualifier_attribute89,
4549         qualifier_attribute90,
4550         qualifier_attribute91,
4551         qualifier_attribute92,
4552         qualifier_attribute93,
4553         qualifier_attribute94,
4554         qualifier_attribute95,
4555         qualifier_attribute96,
4556         qualifier_attribute97,
4557         qualifier_attribute98,
4558         qualifier_attribute99,
4559         qualifier_attribute100,
4560         last_update_login,
4561         program_application_id,
4562         program_id,
4563         program_update_date,
4564         request_id,
4565         object_version_number,
4566         p_major_version
4567 FROM    okc_price_att_values
4568 WHERE   chr_id = p_chr_id
4569 UNION     /* bugfix 2138898 - OR is replaced by UNION */
4570 SELECT
4571         id,
4572         flex_title,
4573         pricing_context,
4574         pricing_attribute1,
4575         chr_id,
4576         pricing_attribute2,
4577         cle_id,
4578         pricing_attribute3,
4579         pricing_attribute4,
4580         pricing_attribute5,
4581         pricing_attribute6,
4582         pricing_attribute7,
4583         pricing_attribute8,
4584         pricing_attribute9,
4585         pricing_attribute10,
4586         pricing_attribute11,
4587         pricing_attribute12,
4588         pricing_attribute13,
4589         pricing_attribute14,
4590         pricing_attribute15,
4591         pricing_attribute16,
4592         pricing_attribute17,
4593         pricing_attribute18,
4594         pricing_attribute19,
4595         pricing_attribute20,
4596         pricing_attribute21,
4597         pricing_attribute22,
4598         pricing_attribute23,
4599         pricing_attribute24,
4600         pricing_attribute25,
4601         pricing_attribute26,
4602         pricing_attribute27,
4603         pricing_attribute28,
4604         pricing_attribute29,
4605         pricing_attribute30,
4606         pricing_attribute31,
4607         pricing_attribute32,
4608         pricing_attribute33,
4609         pricing_attribute34,
4610         pricing_attribute35,
4611         pricing_attribute36,
4612         pricing_attribute37,
4613         pricing_attribute38,
4614         pricing_attribute39,
4615         pricing_attribute40,
4616         pricing_attribute41,
4617         pricing_attribute42,
4618         pricing_attribute43,
4619         pricing_attribute44,
4620         pricing_attribute45,
4621         pricing_attribute46,
4622         pricing_attribute47,
4623         pricing_attribute48,
4624         pricing_attribute49,
4625         pricing_attribute50,
4626         pricing_attribute51,
4627         pricing_attribute52,
4628         pricing_attribute53,
4629         pricing_attribute54,
4630         pricing_attribute55,
4631         pricing_attribute56,
4632         pricing_attribute57,
4633         pricing_attribute58,
4634         pricing_attribute59,
4635         pricing_attribute60,
4636         pricing_attribute61,
4637         pricing_attribute62,
4638         pricing_attribute63,
4639         pricing_attribute64,
4640         pricing_attribute65,
4641         pricing_attribute66,
4642         pricing_attribute67,
4643         pricing_attribute68,
4644         pricing_attribute69,
4645         pricing_attribute70,
4646         pricing_attribute71,
4647         pricing_attribute72,
4648         pricing_attribute73,
4649         pricing_attribute74,
4650         pricing_attribute75,
4651         pricing_attribute76,
4652         pricing_attribute77,
4653         pricing_attribute78,
4654         pricing_attribute79,
4655         pricing_attribute80,
4656         pricing_attribute81,
4657         pricing_attribute82,
4658         pricing_attribute83,
4659         pricing_attribute84,
4660         pricing_attribute85,
4661         pricing_attribute86,
4662         pricing_attribute87,
4663         pricing_attribute88,
4664         pricing_attribute89,
4665         pricing_attribute90,
4666         pricing_attribute91,
4667         pricing_attribute92,
4668         pricing_attribute93,
4669         pricing_attribute94,
4670         pricing_attribute95,
4671         pricing_attribute96,
4672         pricing_attribute97,
4673         pricing_attribute98,
4674         pricing_attribute99,
4675         pricing_attribute100,
4676         qualifier_context,
4677         qualifier_attribute1,
4678         qualifier_attribute2,
4679         created_by,
4680         qualifier_attribute3,
4681         creation_date,
4682         qualifier_attribute4,
4683         qualifier_attribute5,
4684         last_updated_by,
4685         qualifier_attribute6,
4686         last_update_date,
4687         qualifier_attribute7,
4688         qualifier_attribute8,
4689         qualifier_attribute9,
4690         qualifier_attribute10,
4691         qualifier_attribute11,
4692         qualifier_attribute12,
4693         qualifier_attribute13,
4694         qualifier_attribute14,
4695         qualifier_attribute15,
4696         qualifier_attribute16,
4697         qualifier_attribute17,
4698         qualifier_attribute18,
4699         qualifier_attribute19,
4700         qualifier_attribute20,
4701         qualifier_attribute21,
4702         qualifier_attribute22,
4703         qualifier_attribute23,
4704         qualifier_attribute24,
4705         qualifier_attribute25,
4706         qualifier_attribute26,
4707         qualifier_attribute27,
4708         qualifier_attribute28,
4709         qualifier_attribute29,
4710         qualifier_attribute30,
4711         qualifier_attribute31,
4712         qualifier_attribute32,
4713         qualifier_attribute33,
4714         qualifier_attribute34,
4715         qualifier_attribute35,
4716         qualifier_attribute36,
4717         qualifier_attribute37,
4718         qualifier_attribute38,
4719         qualifier_attribute39,
4720         qualifier_attribute40,
4721         qualifier_attribute41,
4722         qualifier_attribute42,
4723         qualifier_attribute43,
4724         qualifier_attribute44,
4725         qualifier_attribute45,
4726         qualifier_attribute46,
4727         qualifier_attribute47,
4728         qualifier_attribute48,
4729         qualifier_attribute49,
4730         qualifier_attribute50,
4731         qualifier_attribute51,
4732         qualifier_attribute52,
4733         qualifier_attribute53,
4734         qualifier_attribute54,
4735         qualifier_attribute55,
4736         qualifier_attribute56,
4737         qualifier_attribute57,
4738         qualifier_attribute58,
4739         qualifier_attribute59,
4740         qualifier_attribute60,
4741         qualifier_attribute61,
4742         qualifier_attribute62,
4743         qualifier_attribute63,
4744         qualifier_attribute64,
4745         qualifier_attribute65,
4746         qualifier_attribute66,
4747         qualifier_attribute67,
4748         qualifier_attribute68,
4749         qualifier_attribute69,
4750         qualifier_attribute70,
4751         qualifier_attribute71,
4752         qualifier_attribute72,
4753         qualifier_attribute73,
4754         qualifier_attribute74,
4755         qualifier_attribute75,
4756         qualifier_attribute76,
4757         qualifier_attribute77,
4758         qualifier_attribute78,
4759         qualifier_attribute79,
4760         qualifier_attribute80,
4761         qualifier_attribute81,
4762         qualifier_attribute82,
4763         qualifier_attribute83,
4764         qualifier_attribute84,
4765         qualifier_attribute85,
4766         qualifier_attribute86,
4767         qualifier_attribute87,
4768         qualifier_attribute88,
4769         qualifier_attribute89,
4770         qualifier_attribute90,
4771         qualifier_attribute91,
4772         qualifier_attribute92,
4773         qualifier_attribute93,
4774         qualifier_attribute94,
4775         qualifier_attribute95,
4776         qualifier_attribute96,
4777         qualifier_attribute97,
4778         qualifier_attribute98,
4779         qualifier_attribute99,
4780         qualifier_attribute100,
4781         last_update_login,
4782         program_application_id,
4783         program_id,
4784         program_update_date,
4785         request_id,
4786         object_version_number,
4787         p_major_version
4788 FROM    okc_price_att_values
4789 WHERE   cle_id IN
4790            (SELECT id
4791             FROM OKC_K_LINES_B
4792             WHERE dnz_chr_id = p_chr_id
4793            );
4794 
4795 RETURN l_return_status;
4796   EXCEPTION
4797        -- other appropriate handlers
4798     WHEN OTHERS THEN
4799        -- store SQL error message on message stack
4800              OKC_API.SET_MESSAGE(p_app_name     => okc_version_pvt.G_APP_NAME,
4801                                  p_msg_name     => okc_version_pvt.G_UNEXPECTED_ERROR,
4802                                  p_token1       => okc_version_pvt.G_SQLCODE_TOKEN,
4803                                  p_token1_value => sqlcode,
4804                                  p_token2       => okc_version_pvt.G_SQLERRM_TOKEN,
4805                                  p_token2_value => sqlerrm);
4806 
4807        -- notify  UNEXPECTED error
4808              l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
4809              return l_return_status;
4810 END create_version;
4811 
4812 FUNCTION restore_version(
4813              p_chr_id         IN NUMBER,
4814              p_major_version  IN NUMBER
4815            ) RETURN VARCHAR2 IS
4816 
4817   l_return_status VARCHAR2(1):= OKC_API.G_RET_STS_SUCCESS;
4818 
4819 BEGIN
4820 -------
4821 l_return_status := OKC_SPLIT2_PAV_PVT.restore_version(p_chr_id   => p_chr_id  ,
4822              p_major_version   => p_major_version );
4823 -------
4824 
4825              return l_return_status;
4826 END restore_version;
4827 
4828 
4829 END OKC_PAV_PVT;