DBA Data[Home] [Help]

PACKAGE BODY: APPS.QP_RQT_UTIL

Source


1 PACKAGE BODY QP_Rqt_Util AS
2 /* $Header: QPXURQTB.pls 120.2 2005/08/24 07:07:36 prarasto noship $ */
3 
4 --  Global constant holding the package name
5 
6 G_PKG_NAME                    CONSTANT VARCHAR2(30) := 'QP_Rqt_Util';
7 
8 --  Procedure Clear_Dependent_Attr
9 
10 PROCEDURE Clear_Dependent_Attr
11 (   p_attr_id                       IN  NUMBER := FND_API.G_MISS_NUM
12 ,   p_RQT_rec                       IN  QP_Attr_Map_PUB.Rqt_Rec_Type
13 ,   p_old_RQT_rec                   IN  QP_Attr_Map_PUB.Rqt_Rec_Type :=
14                                         QP_Attr_Map_PUB.G_MISS_RQT_REC
15 ,   x_RQT_rec                       OUT NOCOPY /* file.sql.39 change */ QP_Attr_Map_PUB.Rqt_Rec_Type
16 )
17 IS
18 l_index                       NUMBER := 0;
19 l_src_attr_tbl                QP_GLOBALS.NUMBER_Tbl_Type;
20 l_dep_attr_tbl                QP_GLOBALS.NUMBER_Tbl_Type;
21 BEGIN
22 
23     --  Load out record
24 
25     x_RQT_rec := p_RQT_rec;
26 
27     --  If attr_id is missing compare old and new records and for
28     --  every changed attribute clear its dependent fields.
29 
30     IF p_attr_id = FND_API.G_MISS_NUM THEN
31 
32         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute1,p_old_RQT_rec.attribute1)
33         THEN
34             l_index := l_index + 1;
35             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE1;
36         END IF;
37 
38         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute10,p_old_RQT_rec.attribute10)
39         THEN
40             l_index := l_index + 1;
41             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE10;
42         END IF;
43 
44         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute11,p_old_RQT_rec.attribute11)
45         THEN
46             l_index := l_index + 1;
47             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE11;
48         END IF;
49 
50         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute12,p_old_RQT_rec.attribute12)
51         THEN
52             l_index := l_index + 1;
53             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE12;
54         END IF;
55 
56         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute13,p_old_RQT_rec.attribute13)
57         THEN
58             l_index := l_index + 1;
59             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE13;
60         END IF;
61 
62         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute14,p_old_RQT_rec.attribute14)
63         THEN
64             l_index := l_index + 1;
65             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE14;
66         END IF;
67 
68         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute15,p_old_RQT_rec.attribute15)
69         THEN
70             l_index := l_index + 1;
71             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE15;
72         END IF;
73 
74         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute2,p_old_RQT_rec.attribute2)
75         THEN
76             l_index := l_index + 1;
77             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE2;
78         END IF;
79 
80         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute3,p_old_RQT_rec.attribute3)
81         THEN
82             l_index := l_index + 1;
83             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE3;
84         END IF;
85 
86         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute4,p_old_RQT_rec.attribute4)
87         THEN
88             l_index := l_index + 1;
89             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE4;
90         END IF;
91 
92         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute5,p_old_RQT_rec.attribute5)
93         THEN
94             l_index := l_index + 1;
95             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE5;
96         END IF;
97 
98         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute6,p_old_RQT_rec.attribute6)
99         THEN
100             l_index := l_index + 1;
101             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE6;
102         END IF;
103 
104         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute7,p_old_RQT_rec.attribute7)
105         THEN
106             l_index := l_index + 1;
107             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE7;
108         END IF;
109 
110         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute8,p_old_RQT_rec.attribute8)
111         THEN
112             l_index := l_index + 1;
113             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE8;
114         END IF;
115 
116         IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute9,p_old_RQT_rec.attribute9)
117         THEN
118             l_index := l_index + 1;
119             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE9;
120         END IF;
121 
122         IF NOT QP_GLOBALS.Equal(p_RQT_rec.context,p_old_RQT_rec.context)
123         THEN
124             l_index := l_index + 1;
125             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_CONTEXT;
126         END IF;
127 
128         IF NOT QP_GLOBALS.Equal(p_RQT_rec.created_by,p_old_RQT_rec.created_by)
129         THEN
130             l_index := l_index + 1;
131             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_CREATED_BY;
132         END IF;
133 
134         IF NOT QP_GLOBALS.Equal(p_RQT_rec.creation_date,p_old_RQT_rec.creation_date)
135         THEN
136             l_index := l_index + 1;
137             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_CREATION_DATE;
138         END IF;
139 
140         IF NOT QP_GLOBALS.Equal(p_RQT_rec.enabled_flag,p_old_RQT_rec.enabled_flag)
141         THEN
142             l_index := l_index + 1;
143             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ENABLED;
144         END IF;
145 
146         IF NOT QP_GLOBALS.Equal(p_RQT_rec.last_updated_by,p_old_RQT_rec.last_updated_by)
147         THEN
148             l_index := l_index + 1;
149             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_LAST_UPDATED_BY;
150         END IF;
151 
152         IF NOT QP_GLOBALS.Equal(p_RQT_rec.last_update_date,p_old_RQT_rec.last_update_date)
153         THEN
154             l_index := l_index + 1;
155             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_LAST_UPDATE_DATE;
156         END IF;
157 
158         IF NOT QP_GLOBALS.Equal(p_RQT_rec.last_update_login,p_old_RQT_rec.last_update_login)
159         THEN
160             l_index := l_index + 1;
161             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_LAST_UPDATE_LOGIN;
162         END IF;
163 
164         IF NOT QP_GLOBALS.Equal(p_RQT_rec.line_level_global_struct,p_old_RQT_rec.line_level_global_struct)
165         THEN
166             l_index := l_index + 1;
167             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_LINE_LEVEL_GLOBAL_STRUCT;
168         END IF;
169 
170         IF NOT QP_GLOBALS.Equal(p_RQT_rec.line_level_view_name,p_old_RQT_rec.line_level_view_name)
171         THEN
172             l_index := l_index + 1;
173             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_LINE_LEVEL_VIEW_NAME;
174         END IF;
175 
176         IF NOT QP_GLOBALS.Equal(p_RQT_rec.order_level_global_struct,p_old_RQT_rec.order_level_global_struct)
177         THEN
178             l_index := l_index + 1;
179             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ORDER_LEVEL_GLOBAL_STRUCT;
180         END IF;
181 
182         IF NOT QP_GLOBALS.Equal(p_RQT_rec.order_level_view_name,p_old_RQT_rec.order_level_view_name)
183         THEN
184             l_index := l_index + 1;
185             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ORDER_LEVEL_VIEW_NAME;
186         END IF;
187 
188         IF NOT QP_GLOBALS.Equal(p_RQT_rec.program_application_id,p_old_RQT_rec.program_application_id)
189         THEN
190             l_index := l_index + 1;
191             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_PROGRAM_APPLICATION;
192         END IF;
193 
194         IF NOT QP_GLOBALS.Equal(p_RQT_rec.program_id,p_old_RQT_rec.program_id)
195         THEN
196             l_index := l_index + 1;
197             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_PROGRAM;
198         END IF;
199 
200         IF NOT QP_GLOBALS.Equal(p_RQT_rec.program_update_date,p_old_RQT_rec.program_update_date)
201         THEN
202             l_index := l_index + 1;
203             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_PROGRAM_UPDATE_DATE;
204         END IF;
205 
206         IF NOT QP_GLOBALS.Equal(p_RQT_rec.pte_code,p_old_RQT_rec.pte_code)
207         THEN
208             l_index := l_index + 1;
209             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_PTE;
210         END IF;
211 
212         IF NOT QP_GLOBALS.Equal(p_RQT_rec.request_type_code,p_old_RQT_rec.request_type_code)
213         THEN
214             l_index := l_index + 1;
215             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_REQUEST_TYPE;
216         END IF;
217 
218         IF NOT QP_GLOBALS.Equal(p_RQT_rec.request_type_desc,p_old_RQT_rec.request_type_desc)
219         THEN
220             l_index := l_index + 1;
221             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_REQUEST_TYPE_DESC;
222         END IF;
223 
224         IF NOT QP_GLOBALS.Equal(p_RQT_rec.row_id,p_old_RQT_rec.row_id)
225         THEN
226             l_index := l_index + 1;
227             l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ROW;
228         END IF;
229 
230     ELSIF p_attr_id = G_ATTRIBUTE1 THEN
231         l_index := l_index + 1;
232         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE1;
233     ELSIF p_attr_id = G_ATTRIBUTE10 THEN
234         l_index := l_index + 1;
235         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE10;
236     ELSIF p_attr_id = G_ATTRIBUTE11 THEN
237         l_index := l_index + 1;
238         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE11;
239     ELSIF p_attr_id = G_ATTRIBUTE12 THEN
240         l_index := l_index + 1;
241         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE12;
242     ELSIF p_attr_id = G_ATTRIBUTE13 THEN
243         l_index := l_index + 1;
244         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE13;
245     ELSIF p_attr_id = G_ATTRIBUTE14 THEN
246         l_index := l_index + 1;
247         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE14;
248     ELSIF p_attr_id = G_ATTRIBUTE15 THEN
249         l_index := l_index + 1;
250         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE15;
251     ELSIF p_attr_id = G_ATTRIBUTE2 THEN
252         l_index := l_index + 1;
253         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE2;
254     ELSIF p_attr_id = G_ATTRIBUTE3 THEN
255         l_index := l_index + 1;
256         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE3;
257     ELSIF p_attr_id = G_ATTRIBUTE4 THEN
258         l_index := l_index + 1;
259         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE4;
260     ELSIF p_attr_id = G_ATTRIBUTE5 THEN
261         l_index := l_index + 1;
262         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE5;
263     ELSIF p_attr_id = G_ATTRIBUTE6 THEN
264         l_index := l_index + 1;
265         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE6;
266     ELSIF p_attr_id = G_ATTRIBUTE7 THEN
267         l_index := l_index + 1;
268         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE7;
269     ELSIF p_attr_id = G_ATTRIBUTE8 THEN
270         l_index := l_index + 1;
271         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE8;
272     ELSIF p_attr_id = G_ATTRIBUTE9 THEN
273         l_index := l_index + 1;
274         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ATTRIBUTE9;
275     ELSIF p_attr_id = G_CONTEXT THEN
276         l_index := l_index + 1;
277         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_CONTEXT;
278     ELSIF p_attr_id = G_CREATED_BY THEN
279         l_index := l_index + 1;
280         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_CREATED_BY;
281     ELSIF p_attr_id = G_CREATION_DATE THEN
282         l_index := l_index + 1;
283         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_CREATION_DATE;
284     ELSIF p_attr_id = G_ENABLED THEN
285         l_index := l_index + 1;
286         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ENABLED;
287     ELSIF p_attr_id = G_LAST_UPDATED_BY THEN
288         l_index := l_index + 1;
289         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_LAST_UPDATED_BY;
290     ELSIF p_attr_id = G_LAST_UPDATE_DATE THEN
291         l_index := l_index + 1;
292         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_LAST_UPDATE_DATE;
293     ELSIF p_attr_id = G_LAST_UPDATE_LOGIN THEN
294         l_index := l_index + 1;
295         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_LAST_UPDATE_LOGIN;
296     ELSIF p_attr_id = G_LINE_LEVEL_GLOBAL_STRUCT THEN
297         l_index := l_index + 1;
298         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_LINE_LEVEL_GLOBAL_STRUCT;
299     ELSIF p_attr_id = G_LINE_LEVEL_VIEW_NAME THEN
300         l_index := l_index + 1;
301         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_LINE_LEVEL_VIEW_NAME;
302     ELSIF p_attr_id = G_ORDER_LEVEL_GLOBAL_STRUCT THEN
303         l_index := l_index + 1;
304         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ORDER_LEVEL_GLOBAL_STRUCT;
305     ELSIF p_attr_id = G_ORDER_LEVEL_VIEW_NAME THEN
306         l_index := l_index + 1;
307         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ORDER_LEVEL_VIEW_NAME;
308     ELSIF p_attr_id = G_PROGRAM_APPLICATION THEN
309         l_index := l_index + 1;
310         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_PROGRAM_APPLICATION;
311     ELSIF p_attr_id = G_PROGRAM THEN
312         l_index := l_index + 1;
313         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_PROGRAM;
314     ELSIF p_attr_id = G_PROGRAM_UPDATE_DATE THEN
315         l_index := l_index + 1;
316         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_PROGRAM_UPDATE_DATE;
317     ELSIF p_attr_id = G_PTE THEN
318         l_index := l_index + 1;
319         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_PTE;
320     ELSIF p_attr_id = G_REQUEST_TYPE THEN
321         l_index := l_index + 1;
322         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_REQUEST_TYPE;
323     ELSIF p_attr_id = G_REQUEST_TYPE_DESC THEN
324         l_index := l_index + 1;
325         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_REQUEST_TYPE_DESC;
326     ELSIF p_attr_id = G_ROW THEN
327         l_index := l_index + 1;
328         l_src_attr_tbl(l_index) := QP_RQT_UTIL.G_ROW;
329     END IF;
330 
331 END Clear_Dependent_Attr;
332 
333 --  Procedure Apply_Attribute_Changes
334 
335 PROCEDURE Apply_Attribute_Changes
336 (   p_RQT_rec                       IN  QP_Attr_Map_PUB.Rqt_Rec_Type
337 ,   p_old_RQT_rec                   IN  QP_Attr_Map_PUB.Rqt_Rec_Type :=
338                                         QP_Attr_Map_PUB.G_MISS_RQT_REC
339 ,   x_RQT_rec                       OUT NOCOPY /* file.sql.39 change */ QP_Attr_Map_PUB.Rqt_Rec_Type
340 )
341 IS
342 BEGIN
343 
344     --  Load out record
345 
346     x_RQT_rec := p_RQT_rec;
347 
348     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute1,p_old_RQT_rec.attribute1)
349     THEN
350         NULL;
351     END IF;
352 
353     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute10,p_old_RQT_rec.attribute10)
354     THEN
355         NULL;
356     END IF;
357 
358     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute11,p_old_RQT_rec.attribute11)
359     THEN
360         NULL;
361     END IF;
362 
363     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute12,p_old_RQT_rec.attribute12)
364     THEN
365         NULL;
366     END IF;
367 
368     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute13,p_old_RQT_rec.attribute13)
369     THEN
370         NULL;
371     END IF;
372 
373     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute14,p_old_RQT_rec.attribute14)
374     THEN
375         NULL;
376     END IF;
377 
378     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute15,p_old_RQT_rec.attribute15)
379     THEN
380         NULL;
381     END IF;
382 
383     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute2,p_old_RQT_rec.attribute2)
384     THEN
385         NULL;
386     END IF;
387 
388     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute3,p_old_RQT_rec.attribute3)
389     THEN
390         NULL;
391     END IF;
392 
393     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute4,p_old_RQT_rec.attribute4)
394     THEN
395         NULL;
396     END IF;
397 
398     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute5,p_old_RQT_rec.attribute5)
399     THEN
400         NULL;
401     END IF;
402 
403     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute6,p_old_RQT_rec.attribute6)
404     THEN
405         NULL;
406     END IF;
407 
408     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute7,p_old_RQT_rec.attribute7)
409     THEN
410         NULL;
411     END IF;
412 
413     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute8,p_old_RQT_rec.attribute8)
414     THEN
415         NULL;
416     END IF;
417 
418     IF NOT QP_GLOBALS.Equal(p_RQT_rec.attribute9,p_old_RQT_rec.attribute9)
419     THEN
420         NULL;
421     END IF;
422 
423     IF NOT QP_GLOBALS.Equal(p_RQT_rec.context,p_old_RQT_rec.context)
424     THEN
425         NULL;
426     END IF;
427 
428     IF NOT QP_GLOBALS.Equal(p_RQT_rec.created_by,p_old_RQT_rec.created_by)
429     THEN
430         NULL;
431     END IF;
432 
433     IF NOT QP_GLOBALS.Equal(p_RQT_rec.creation_date,p_old_RQT_rec.creation_date)
434     THEN
435         NULL;
436     END IF;
437 
438     IF NOT QP_GLOBALS.Equal(p_RQT_rec.enabled_flag,p_old_RQT_rec.enabled_flag)
439     THEN
440         NULL;
441     END IF;
442 
443     IF NOT QP_GLOBALS.Equal(p_RQT_rec.last_updated_by,p_old_RQT_rec.last_updated_by)
444     THEN
445         NULL;
446     END IF;
447 
448     IF NOT QP_GLOBALS.Equal(p_RQT_rec.last_update_date,p_old_RQT_rec.last_update_date)
449     THEN
450         NULL;
451     END IF;
452 
453     IF NOT QP_GLOBALS.Equal(p_RQT_rec.last_update_login,p_old_RQT_rec.last_update_login)
454     THEN
455         NULL;
456     END IF;
457 
458     IF NOT QP_GLOBALS.Equal(p_RQT_rec.line_level_global_struct,p_old_RQT_rec.line_level_global_struct)
459     THEN
460         NULL;
461     END IF;
462 
463     IF NOT QP_GLOBALS.Equal(p_RQT_rec.line_level_view_name,p_old_RQT_rec.line_level_view_name)
464     THEN
465         NULL;
466     END IF;
467 
468     IF NOT QP_GLOBALS.Equal(p_RQT_rec.order_level_global_struct,p_old_RQT_rec.order_level_global_struct)
469     THEN
470         NULL;
471     END IF;
472 
473     IF NOT QP_GLOBALS.Equal(p_RQT_rec.order_level_view_name,p_old_RQT_rec.order_level_view_name)
474     THEN
475         NULL;
476     END IF;
477 
478     IF NOT QP_GLOBALS.Equal(p_RQT_rec.program_application_id,p_old_RQT_rec.program_application_id)
479     THEN
480         NULL;
481     END IF;
482 
483     IF NOT QP_GLOBALS.Equal(p_RQT_rec.program_id,p_old_RQT_rec.program_id)
484     THEN
485         NULL;
486     END IF;
487 
488     IF NOT QP_GLOBALS.Equal(p_RQT_rec.program_update_date,p_old_RQT_rec.program_update_date)
489     THEN
490         NULL;
491     END IF;
492 
493     IF NOT QP_GLOBALS.Equal(p_RQT_rec.pte_code,p_old_RQT_rec.pte_code)
494     THEN
495         NULL;
496     END IF;
497 
498     IF NOT QP_GLOBALS.Equal(p_RQT_rec.request_type_code,p_old_RQT_rec.request_type_code)
499     THEN
500         NULL;
501     END IF;
502 
503     IF NOT QP_GLOBALS.Equal(p_RQT_rec.request_type_desc,p_old_RQT_rec.request_type_desc)
504     THEN
505         NULL;
506     END IF;
507 
508     IF NOT QP_GLOBALS.Equal(p_RQT_rec.row_id,p_old_RQT_rec.row_id)
509     THEN
510         NULL;
511     END IF;
512 
513 END Apply_Attribute_Changes;
514 
515 --  Function Complete_Record
516 
517 FUNCTION Complete_Record
518 (   p_RQT_rec                       IN  QP_Attr_Map_PUB.Rqt_Rec_Type
519 ,   p_old_RQT_rec                   IN  QP_Attr_Map_PUB.Rqt_Rec_Type
520 ) RETURN QP_Attr_Map_PUB.Rqt_Rec_Type
521 IS
522 l_RQT_rec                     QP_Attr_Map_PUB.Rqt_Rec_Type := p_RQT_rec;
523 BEGIN
524 
525     IF l_RQT_rec.attribute1 = FND_API.G_MISS_CHAR THEN
526         l_RQT_rec.attribute1 := p_old_RQT_rec.attribute1;
527     END IF;
528 
529     IF l_RQT_rec.attribute10 = FND_API.G_MISS_CHAR THEN
530         l_RQT_rec.attribute10 := p_old_RQT_rec.attribute10;
531     END IF;
532 
533     IF l_RQT_rec.attribute11 = FND_API.G_MISS_CHAR THEN
534         l_RQT_rec.attribute11 := p_old_RQT_rec.attribute11;
535     END IF;
536 
537     IF l_RQT_rec.attribute12 = FND_API.G_MISS_CHAR THEN
538         l_RQT_rec.attribute12 := p_old_RQT_rec.attribute12;
539     END IF;
540 
541     IF l_RQT_rec.attribute13 = FND_API.G_MISS_CHAR THEN
542         l_RQT_rec.attribute13 := p_old_RQT_rec.attribute13;
543     END IF;
544 
545     IF l_RQT_rec.attribute14 = FND_API.G_MISS_CHAR THEN
546         l_RQT_rec.attribute14 := p_old_RQT_rec.attribute14;
547     END IF;
548 
549     IF l_RQT_rec.attribute15 = FND_API.G_MISS_CHAR THEN
550         l_RQT_rec.attribute15 := p_old_RQT_rec.attribute15;
551     END IF;
552 
553     IF l_RQT_rec.attribute2 = FND_API.G_MISS_CHAR THEN
554         l_RQT_rec.attribute2 := p_old_RQT_rec.attribute2;
555     END IF;
556 
557     IF l_RQT_rec.attribute3 = FND_API.G_MISS_CHAR THEN
558         l_RQT_rec.attribute3 := p_old_RQT_rec.attribute3;
559     END IF;
560 
561     IF l_RQT_rec.attribute4 = FND_API.G_MISS_CHAR THEN
562         l_RQT_rec.attribute4 := p_old_RQT_rec.attribute4;
563     END IF;
564 
565     IF l_RQT_rec.attribute5 = FND_API.G_MISS_CHAR THEN
566         l_RQT_rec.attribute5 := p_old_RQT_rec.attribute5;
567     END IF;
568 
569     IF l_RQT_rec.attribute6 = FND_API.G_MISS_CHAR THEN
570         l_RQT_rec.attribute6 := p_old_RQT_rec.attribute6;
571     END IF;
572 
573     IF l_RQT_rec.attribute7 = FND_API.G_MISS_CHAR THEN
574         l_RQT_rec.attribute7 := p_old_RQT_rec.attribute7;
575     END IF;
576 
577     IF l_RQT_rec.attribute8 = FND_API.G_MISS_CHAR THEN
578         l_RQT_rec.attribute8 := p_old_RQT_rec.attribute8;
579     END IF;
580 
581     IF l_RQT_rec.attribute9 = FND_API.G_MISS_CHAR THEN
582         l_RQT_rec.attribute9 := p_old_RQT_rec.attribute9;
583     END IF;
584 
585     IF l_RQT_rec.context = FND_API.G_MISS_CHAR THEN
586         l_RQT_rec.context := p_old_RQT_rec.context;
587     END IF;
588 
589     IF l_RQT_rec.created_by = FND_API.G_MISS_NUM THEN
590         l_RQT_rec.created_by := p_old_RQT_rec.created_by;
591     END IF;
592 
593     IF l_RQT_rec.creation_date = FND_API.G_MISS_DATE THEN
594         l_RQT_rec.creation_date := p_old_RQT_rec.creation_date;
595     END IF;
596 
597     IF l_RQT_rec.enabled_flag = FND_API.G_MISS_CHAR THEN
598         l_RQT_rec.enabled_flag := p_old_RQT_rec.enabled_flag;
599     END IF;
600 
601     IF l_RQT_rec.last_updated_by = FND_API.G_MISS_NUM THEN
602         l_RQT_rec.last_updated_by := p_old_RQT_rec.last_updated_by;
603     END IF;
604 
605     IF l_RQT_rec.last_update_date = FND_API.G_MISS_DATE THEN
606         l_RQT_rec.last_update_date := p_old_RQT_rec.last_update_date;
607     END IF;
608 
609     IF l_RQT_rec.last_update_login = FND_API.G_MISS_NUM THEN
610         l_RQT_rec.last_update_login := p_old_RQT_rec.last_update_login;
611     END IF;
612 
613     IF l_RQT_rec.line_level_global_struct = FND_API.G_MISS_CHAR THEN
614         l_RQT_rec.line_level_global_struct := p_old_RQT_rec.line_level_global_struct;
615     END IF;
616 
617     IF l_RQT_rec.line_level_view_name = FND_API.G_MISS_CHAR THEN
618         l_RQT_rec.line_level_view_name := p_old_RQT_rec.line_level_view_name;
619     END IF;
620 
621     IF l_RQT_rec.order_level_global_struct = FND_API.G_MISS_CHAR THEN
622         l_RQT_rec.order_level_global_struct := p_old_RQT_rec.order_level_global_struct;
623     END IF;
624 
625     IF l_RQT_rec.order_level_view_name = FND_API.G_MISS_CHAR THEN
626         l_RQT_rec.order_level_view_name := p_old_RQT_rec.order_level_view_name;
627     END IF;
628 
629     IF l_RQT_rec.program_application_id = FND_API.G_MISS_NUM THEN
630         l_RQT_rec.program_application_id := p_old_RQT_rec.program_application_id;
631     END IF;
632 
633     IF l_RQT_rec.program_id = FND_API.G_MISS_NUM THEN
634         l_RQT_rec.program_id := p_old_RQT_rec.program_id;
635     END IF;
636 
637     IF l_RQT_rec.program_update_date = FND_API.G_MISS_DATE THEN
638         l_RQT_rec.program_update_date := p_old_RQT_rec.program_update_date;
639     END IF;
640 
641     IF l_RQT_rec.pte_code = FND_API.G_MISS_CHAR THEN
642         l_RQT_rec.pte_code := p_old_RQT_rec.pte_code;
643     END IF;
644 
645     IF l_RQT_rec.request_type_code = FND_API.G_MISS_CHAR THEN
646         l_RQT_rec.request_type_code := p_old_RQT_rec.request_type_code;
647     END IF;
648 
649     IF l_RQT_rec.request_type_desc = FND_API.G_MISS_CHAR THEN
650         l_RQT_rec.request_type_desc := p_old_RQT_rec.request_type_desc;
651     END IF;
652 
653     IF l_RQT_rec.row_id = FND_API.G_MISS_CHAR THEN
654         l_RQT_rec.row_id := p_old_RQT_rec.row_id;
655     END IF;
656 
657     RETURN l_RQT_rec;
658 
659 END Complete_Record;
660 
661 --  Function Convert_Miss_To_Null
662 
663 FUNCTION Convert_Miss_To_Null
664 (   p_RQT_rec                       IN  QP_Attr_Map_PUB.Rqt_Rec_Type
665 ) RETURN QP_Attr_Map_PUB.Rqt_Rec_Type
666 IS
667 l_RQT_rec                     QP_Attr_Map_PUB.Rqt_Rec_Type := p_RQT_rec;
668 BEGIN
669 
670     IF l_RQT_rec.attribute1 = FND_API.G_MISS_CHAR THEN
671         l_RQT_rec.attribute1 := NULL;
672     END IF;
673 
674     IF l_RQT_rec.attribute10 = FND_API.G_MISS_CHAR THEN
675         l_RQT_rec.attribute10 := NULL;
676     END IF;
677 
678     IF l_RQT_rec.attribute11 = FND_API.G_MISS_CHAR THEN
679         l_RQT_rec.attribute11 := NULL;
680     END IF;
681 
682     IF l_RQT_rec.attribute12 = FND_API.G_MISS_CHAR THEN
683         l_RQT_rec.attribute12 := NULL;
684     END IF;
685 
686     IF l_RQT_rec.attribute13 = FND_API.G_MISS_CHAR THEN
687         l_RQT_rec.attribute13 := NULL;
688     END IF;
689 
690     IF l_RQT_rec.attribute14 = FND_API.G_MISS_CHAR THEN
691         l_RQT_rec.attribute14 := NULL;
692     END IF;
693 
694     IF l_RQT_rec.attribute15 = FND_API.G_MISS_CHAR THEN
695         l_RQT_rec.attribute15 := NULL;
696     END IF;
697 
698     IF l_RQT_rec.attribute2 = FND_API.G_MISS_CHAR THEN
699         l_RQT_rec.attribute2 := NULL;
700     END IF;
701 
702     IF l_RQT_rec.attribute3 = FND_API.G_MISS_CHAR THEN
703         l_RQT_rec.attribute3 := NULL;
704     END IF;
705 
706     IF l_RQT_rec.attribute4 = FND_API.G_MISS_CHAR THEN
707         l_RQT_rec.attribute4 := NULL;
708     END IF;
709 
710     IF l_RQT_rec.attribute5 = FND_API.G_MISS_CHAR THEN
711         l_RQT_rec.attribute5 := NULL;
712     END IF;
713 
714     IF l_RQT_rec.attribute6 = FND_API.G_MISS_CHAR THEN
715         l_RQT_rec.attribute6 := NULL;
716     END IF;
717 
718     IF l_RQT_rec.attribute7 = FND_API.G_MISS_CHAR THEN
719         l_RQT_rec.attribute7 := NULL;
720     END IF;
721 
722     IF l_RQT_rec.attribute8 = FND_API.G_MISS_CHAR THEN
723         l_RQT_rec.attribute8 := NULL;
724     END IF;
725 
726     IF l_RQT_rec.attribute9 = FND_API.G_MISS_CHAR THEN
727         l_RQT_rec.attribute9 := NULL;
728     END IF;
729 
730     IF l_RQT_rec.context = FND_API.G_MISS_CHAR THEN
731         l_RQT_rec.context := NULL;
732     END IF;
733 
734     IF l_RQT_rec.created_by = FND_API.G_MISS_NUM THEN
735         l_RQT_rec.created_by := NULL;
736     END IF;
737 
738     IF l_RQT_rec.creation_date = FND_API.G_MISS_DATE THEN
739         l_RQT_rec.creation_date := NULL;
740     END IF;
741 
742     IF l_RQT_rec.enabled_flag = FND_API.G_MISS_CHAR THEN
743         l_RQT_rec.enabled_flag := NULL;
744     END IF;
745 
746     IF l_RQT_rec.last_updated_by = FND_API.G_MISS_NUM THEN
747         l_RQT_rec.last_updated_by := NULL;
748     END IF;
749 
750     IF l_RQT_rec.last_update_date = FND_API.G_MISS_DATE THEN
751         l_RQT_rec.last_update_date := NULL;
752     END IF;
753 
754     IF l_RQT_rec.last_update_login = FND_API.G_MISS_NUM THEN
755         l_RQT_rec.last_update_login := NULL;
756     END IF;
757 
758     IF l_RQT_rec.line_level_global_struct = FND_API.G_MISS_CHAR THEN
759         l_RQT_rec.line_level_global_struct := NULL;
760     END IF;
761 
762     IF l_RQT_rec.line_level_view_name = FND_API.G_MISS_CHAR THEN
763         l_RQT_rec.line_level_view_name := NULL;
764     END IF;
765 
766     IF l_RQT_rec.order_level_global_struct = FND_API.G_MISS_CHAR THEN
767         l_RQT_rec.order_level_global_struct := NULL;
768     END IF;
769 
770     IF l_RQT_rec.order_level_view_name = FND_API.G_MISS_CHAR THEN
771         l_RQT_rec.order_level_view_name := NULL;
772     END IF;
773 
774     IF l_RQT_rec.program_application_id = FND_API.G_MISS_NUM THEN
775         l_RQT_rec.program_application_id := NULL;
776     END IF;
777 
778     IF l_RQT_rec.program_id = FND_API.G_MISS_NUM THEN
779         l_RQT_rec.program_id := NULL;
780     END IF;
781 
782     IF l_RQT_rec.program_update_date = FND_API.G_MISS_DATE THEN
783         l_RQT_rec.program_update_date := NULL;
784     END IF;
785 
786     IF l_RQT_rec.pte_code = FND_API.G_MISS_CHAR THEN
787         l_RQT_rec.pte_code := NULL;
788     END IF;
789 
790     IF l_RQT_rec.request_type_code = FND_API.G_MISS_CHAR THEN
791         l_RQT_rec.request_type_code := NULL;
792     END IF;
793 
794     IF l_RQT_rec.request_type_desc = FND_API.G_MISS_CHAR THEN
795         l_RQT_rec.request_type_desc := NULL;
796     END IF;
797 
798     IF l_RQT_rec.row_id = FND_API.G_MISS_CHAR THEN
799         l_RQT_rec.row_id := NULL;
800     END IF;
801 
802     RETURN l_RQT_rec;
803 
804 END Convert_Miss_To_Null;
805 
806 --  Procedure Update_Row
807 
808 PROCEDURE Update_Row
809 (   p_RQT_rec                       IN  QP_Attr_Map_PUB.Rqt_Rec_Type
810 )
811 IS
812 BEGIN
813 
814     UPDATE  QP_PTE_REQUEST_TYPES_b
815     SET     ATTRIBUTE1                     = p_RQT_rec.attribute1
816     ,       ATTRIBUTE10                    = p_RQT_rec.attribute10
817     ,       ATTRIBUTE11                    = p_RQT_rec.attribute11
818     ,       ATTRIBUTE12                    = p_RQT_rec.attribute12
819     ,       ATTRIBUTE13                    = p_RQT_rec.attribute13
820     ,       ATTRIBUTE14                    = p_RQT_rec.attribute14
821     ,       ATTRIBUTE15                    = p_RQT_rec.attribute15
822     ,       ATTRIBUTE2                     = p_RQT_rec.attribute2
823     ,       ATTRIBUTE3                     = p_RQT_rec.attribute3
824     ,       ATTRIBUTE4                     = p_RQT_rec.attribute4
825     ,       ATTRIBUTE5                     = p_RQT_rec.attribute5
826     ,       ATTRIBUTE6                     = p_RQT_rec.attribute6
827     ,       ATTRIBUTE7                     = p_RQT_rec.attribute7
828     ,       ATTRIBUTE8                     = p_RQT_rec.attribute8
829     ,       ATTRIBUTE9                     = p_RQT_rec.attribute9
830     ,       CONTEXT                        = p_RQT_rec.context
831     ,       CREATED_BY                     = p_RQT_rec.created_by
832     ,       CREATION_DATE                  = p_RQT_rec.creation_date
833     ,       ENABLED_FLAG                   = p_RQT_rec.enabled_flag
834     ,       LAST_UPDATED_BY                = p_RQT_rec.last_updated_by
835     ,       LAST_UPDATE_DATE               = p_RQT_rec.last_update_date
836     ,       LAST_UPDATE_LOGIN              = p_RQT_rec.last_update_login
837     ,       LINE_LEVEL_GLOBAL_STRUCT       = p_RQT_rec.line_level_global_struct
838     ,       LINE_LEVEL_VIEW_NAME           = p_RQT_rec.line_level_view_name
839     ,       ORDER_LEVEL_GLOBAL_STRUCT      = p_RQT_rec.order_level_global_struct
840     ,       ORDER_LEVEL_VIEW_NAME          = p_RQT_rec.order_level_view_name
841     ,       PROGRAM_APPLICATION_ID         = p_RQT_rec.program_application_id
842     ,       PROGRAM_ID                     = p_RQT_rec.program_id
843     ,       PROGRAM_UPDATE_DATE            = p_RQT_rec.program_update_date
844     ,       PTE_CODE                       = p_RQT_rec.pte_code
845     ,       REQUEST_TYPE_CODE              = p_RQT_rec.request_type_code
846     WHERE   REQUEST_TYPE_CODE = p_RQT_rec.request_type_code ;
847 
848 
849     UPDATE  QP_PTE_REQUEST_TYPES_tl
850     SET     CREATED_BY                     = p_RQT_rec.created_by
851     ,       CREATION_DATE                  = p_RQT_rec.creation_date
852     ,       LAST_UPDATED_BY                = p_RQT_rec.last_updated_by
853     ,       LAST_UPDATE_DATE               = p_RQT_rec.last_update_date
854     ,       LAST_UPDATE_LOGIN              = p_RQT_rec.last_update_login
855     ,       REQUEST_TYPE_DESC              = p_RQT_rec.request_type_desc
856     ,       SOURCE_LANG                    = userenv('LANG')
857     WHERE   REQUEST_TYPE_CODE = p_RQT_rec.request_type_code and
858             userenv('LANG') in (LANGUAGE, SOURCE_LANG);
859 
860 /*
861     UPDATE  QP_PTE_REQUEST_TYPES_V
862     SET     ATTRIBUTE1                     = p_RQT_rec.attribute1
863     ,       ATTRIBUTE10                    = p_RQT_rec.attribute10
864     ,       ATTRIBUTE11                    = p_RQT_rec.attribute11
865     ,       ATTRIBUTE12                    = p_RQT_rec.attribute12
866     ,       ATTRIBUTE13                    = p_RQT_rec.attribute13
867     ,       ATTRIBUTE14                    = p_RQT_rec.attribute14
868     ,       ATTRIBUTE15                    = p_RQT_rec.attribute15
869     ,       ATTRIBUTE2                     = p_RQT_rec.attribute2
870     ,       ATTRIBUTE3                     = p_RQT_rec.attribute3
871     ,       ATTRIBUTE4                     = p_RQT_rec.attribute4
872     ,       ATTRIBUTE5                     = p_RQT_rec.attribute5
873     ,       ATTRIBUTE6                     = p_RQT_rec.attribute6
874     ,       ATTRIBUTE7                     = p_RQT_rec.attribute7
875     ,       ATTRIBUTE8                     = p_RQT_rec.attribute8
876     ,       ATTRIBUTE9                     = p_RQT_rec.attribute9
877     ,       CONTEXT                        = p_RQT_rec.context
878     ,       CREATED_BY                     = p_RQT_rec.created_by
879     ,       CREATION_DATE                  = p_RQT_rec.creation_date
880     ,       ENABLED_FLAG                   = p_RQT_rec.enabled_flag
881     ,       LAST_UPDATED_BY                = p_RQT_rec.last_updated_by
882     ,       LAST_UPDATE_DATE               = p_RQT_rec.last_update_date
883     ,       LAST_UPDATE_LOGIN              = p_RQT_rec.last_update_login
884     ,       LINE_LEVEL_GLOBAL_STRUCT       = p_RQT_rec.line_level_global_struct
885     ,       LINE_LEVEL_VIEW_NAME           = p_RQT_rec.line_level_view_name
886     ,       ORDER_LEVEL_GLOBAL_STRUCT      = p_RQT_rec.order_level_global_struct
887     ,       ORDER_LEVEL_VIEW_NAME          = p_RQT_rec.order_level_view_name
888     ,       PROGRAM_APPLICATION_ID         = p_RQT_rec.program_application_id
889     ,       PROGRAM_ID                     = p_RQT_rec.program_id
890     ,       PROGRAM_UPDATE_DATE            = p_RQT_rec.program_update_date
891     ,       PTE_CODE                       = p_RQT_rec.pte_code
892     ,       REQUEST_TYPE_CODE              = p_RQT_rec.request_type_code
893     ,       REQUEST_TYPE_DESC              = p_RQT_rec.request_type_desc
894     ,       ROW_ID                         = p_RQT_rec.row_id
895     WHERE   REQUEST_TYPE_CODE = p_RQT_rec.request_type_code
896     ;
897 */
898 
899 EXCEPTION
900 
901     WHEN OTHERS THEN
902 
903         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
904         THEN
905             OE_MSG_PUB.Add_Exc_Msg
906             (   G_PKG_NAME
907             ,   'Update_Row'
908             );
909         END IF;
910 
911         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
912 
913 END Update_Row;
914 
915 --  Procedure Insert_Row
916 
917 PROCEDURE Insert_Row
918 (   p_RQT_rec                       IN  QP_Attr_Map_PUB.Rqt_Rec_Type
919 )
920 IS
921 BEGIN
922 
923 /*
924     INSERT  INTO QP_PTE_REQUEST_TYPES_V
925     (       ATTRIBUTE1
926     ,       ATTRIBUTE10
927     ,       ATTRIBUTE11
928     ,       ATTRIBUTE12
929     ,       ATTRIBUTE13
930     ,       ATTRIBUTE14
931     ,       ATTRIBUTE15
932     ,       ATTRIBUTE2
933     ,       ATTRIBUTE3
934     ,       ATTRIBUTE4
935     ,       ATTRIBUTE5
936     ,       ATTRIBUTE6
937     ,       ATTRIBUTE7
938     ,       ATTRIBUTE8
939     ,       ATTRIBUTE9
940     ,       CONTEXT
941     ,       CREATED_BY
942     ,       CREATION_DATE
943     ,       ENABLED_FLAG
944     ,       LAST_UPDATED_BY
945     ,       LAST_UPDATE_DATE
946     ,       LAST_UPDATE_LOGIN
947     ,       LINE_LEVEL_GLOBAL_STRUCT
948     ,       LINE_LEVEL_VIEW_NAME
949     ,       ORDER_LEVEL_GLOBAL_STRUCT
950     ,       ORDER_LEVEL_VIEW_NAME
951     ,       PROGRAM_APPLICATION_ID
952     ,       PROGRAM_ID
953     ,       PROGRAM_UPDATE_DATE
954     ,       PTE_CODE
955     ,       REQUEST_TYPE_CODE
956     ,       REQUEST_TYPE_DESC
957     ,       ROW_ID
958     )
959     VALUES
960     (       p_RQT_rec.attribute1
961     ,       p_RQT_rec.attribute10
962     ,       p_RQT_rec.attribute11
963     ,       p_RQT_rec.attribute12
964     ,       p_RQT_rec.attribute13
965     ,       p_RQT_rec.attribute14
966     ,       p_RQT_rec.attribute15
967     ,       p_RQT_rec.attribute2
968     ,       p_RQT_rec.attribute3
969     ,       p_RQT_rec.attribute4
970     ,       p_RQT_rec.attribute5
971     ,       p_RQT_rec.attribute6
972     ,       p_RQT_rec.attribute7
973     ,       p_RQT_rec.attribute8
974     ,       p_RQT_rec.attribute9
975     ,       p_RQT_rec.context
976     ,       p_RQT_rec.created_by
977     ,       p_RQT_rec.creation_date
978     ,       p_RQT_rec.enabled_flag
979     ,       p_RQT_rec.last_updated_by
980     ,       p_RQT_rec.last_update_date
981     ,       p_RQT_rec.last_update_login
982     ,       p_RQT_rec.line_level_global_struct
983     ,       p_RQT_rec.line_level_view_name
984     ,       p_RQT_rec.order_level_global_struct
985     ,       p_RQT_rec.order_level_view_name
986     ,       p_RQT_rec.program_application_id
987     ,       p_RQT_rec.program_id
988     ,       p_RQT_rec.program_update_date
989     ,       p_RQT_rec.pte_code
990     ,       p_RQT_rec.request_type_code
991     ,       p_RQT_rec.request_type_desc
992     ,       p_RQT_rec.row_id
993     );
994 
995 */
996     INSERT  INTO QP_PTE_REQUEST_TYPES_B
997     (       ATTRIBUTE1
998     ,       ATTRIBUTE10
999     ,       ATTRIBUTE11
1000     ,       ATTRIBUTE12
1001     ,       ATTRIBUTE13
1002     ,       ATTRIBUTE14
1003     ,       ATTRIBUTE15
1004     ,       ATTRIBUTE2
1005     ,       ATTRIBUTE3
1006     ,       ATTRIBUTE4
1007     ,       ATTRIBUTE5
1008     ,       ATTRIBUTE6
1009     ,       ATTRIBUTE7
1010     ,       ATTRIBUTE8
1011     ,       ATTRIBUTE9
1012     ,       CONTEXT
1013     ,       CREATED_BY
1014     ,       CREATION_DATE
1015     ,       ENABLED_FLAG
1016     ,       LAST_UPDATED_BY
1017     ,       LAST_UPDATE_DATE
1018     ,       LAST_UPDATE_LOGIN
1019     ,       LINE_LEVEL_GLOBAL_STRUCT
1020     ,       LINE_LEVEL_VIEW_NAME
1021     ,       ORDER_LEVEL_GLOBAL_STRUCT
1022     ,       ORDER_LEVEL_VIEW_NAME
1023     ,       PROGRAM_APPLICATION_ID
1024     ,       PROGRAM_ID
1025     ,       PROGRAM_UPDATE_DATE
1026     ,       PTE_CODE
1027     ,       REQUEST_TYPE_CODE
1028     )
1029     VALUES
1030     (       p_RQT_rec.attribute1
1031     ,       p_RQT_rec.attribute10
1032     ,       p_RQT_rec.attribute11
1033     ,       p_RQT_rec.attribute12
1034     ,       p_RQT_rec.attribute13
1035     ,       p_RQT_rec.attribute14
1036     ,       p_RQT_rec.attribute15
1037     ,       p_RQT_rec.attribute2
1038     ,       p_RQT_rec.attribute3
1039     ,       p_RQT_rec.attribute4
1040     ,       p_RQT_rec.attribute5
1041     ,       p_RQT_rec.attribute6
1042     ,       p_RQT_rec.attribute7
1043     ,       p_RQT_rec.attribute8
1044     ,       p_RQT_rec.attribute9
1045     ,       p_RQT_rec.context
1046     ,       p_RQT_rec.created_by
1047     ,       p_RQT_rec.creation_date
1048     ,       p_RQT_rec.enabled_flag
1049     ,       p_RQT_rec.last_updated_by
1050     ,       p_RQT_rec.last_update_date
1051     ,       p_RQT_rec.last_update_login
1052     ,       p_RQT_rec.line_level_global_struct
1053     ,       p_RQT_rec.line_level_view_name
1054     ,       p_RQT_rec.order_level_global_struct
1055     ,       p_RQT_rec.order_level_view_name
1056     ,       p_RQT_rec.program_application_id
1057     ,       p_RQT_rec.program_id
1058     ,       p_RQT_rec.program_update_date
1059     ,       p_RQT_rec.pte_code
1060     ,       p_RQT_rec.request_type_code);
1061 
1062 
1063     INSERT  INTO QP_PTE_REQUEST_TYPES_tl
1064     (       CREATED_BY
1065     ,       CREATION_DATE
1066     ,       LAST_UPDATED_BY
1067     ,       LAST_UPDATE_DATE
1068     ,       LAST_UPDATE_LOGIN
1069     ,       REQUEST_TYPE_CODE
1070     ,       REQUEST_TYPE_DESC
1071     ,       language
1072     ,       source_lang
1073     )
1074     SELECT  p_RQT_rec.created_by
1075     ,       p_RQT_rec.creation_date
1076     ,       p_RQT_rec.last_updated_by
1077     ,       p_RQT_rec.last_update_date
1078     ,       p_RQT_rec.last_update_login
1079     ,       p_RQT_rec.request_type_code
1080     ,       p_RQT_rec.request_type_desc
1081     ,       L.language_code
1082     ,       userenv('LANG')
1083     from  FND_LANGUAGES  L
1084     where  L.INSTALLED_FLAG in ('I', 'B')
1085     and    not exists
1086            ( select NULL
1087              from  qp_pte_request_types_tl T
1088              where  T.request_type_code = p_RQT_rec.request_type_code
1089              and  T.LANGUAGE = L.LANGUAGE_CODE );
1090 
1091     --[prarasto:Pricing Parameters]
1092     QP_Param_Util.Insert_Parameter_Values('REQ',
1093                                            p_RQT_rec.request_type_code);
1094 
1095 EXCEPTION
1096 
1097     WHEN OTHERS THEN
1098 
1099         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1100         THEN
1101             OE_MSG_PUB.Add_Exc_Msg
1102             (   G_PKG_NAME
1103             ,   'Insert_Row'
1104             );
1105         END IF;
1106 
1107         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1108 
1109 END Insert_Row;
1110 
1111 --  Procedure Delete_Row
1112 
1113 PROCEDURE Delete_Row
1114 (   p_request_type_code             IN  VARCHAR2
1115 )
1116 IS
1117 BEGIN
1118 
1119     DELETE  FROM QP_PTE_REQUEST_TYPES_TL
1120     WHERE   REQUEST_TYPE_CODE = p_request_type_code;
1121     --
1122     DELETE  FROM QP_PTE_REQUEST_TYPES_B
1123     WHERE   REQUEST_TYPE_CODE = p_request_type_code;
1124 
1125     --[prarasto:Pricing Parameters]
1126     QP_Param_Util.Delete_Parameter_Values('REQ',
1127                                            p_request_type_code);
1128 
1129 EXCEPTION
1130 
1131     WHEN OTHERS THEN
1132 
1133         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1134         THEN
1135             OE_MSG_PUB.Add_Exc_Msg
1136             (   G_PKG_NAME
1137             ,   'Delete_Row'
1138             );
1139         END IF;
1140 
1141         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1142 
1143 END Delete_Row;
1144 
1145 --  Function Query_Row
1146 
1147 FUNCTION Query_Row
1148 (   p_request_type_code             IN  VARCHAR2
1149 ) RETURN QP_Attr_Map_PUB.Rqt_Rec_Type
1150 IS
1151 BEGIN
1152 
1153     RETURN Query_Rows
1154         (   p_request_type_code           => p_request_type_code
1155         )(1);
1156 
1157 END Query_Row;
1158 
1159 --  Function Query_Rows
1160 
1161 --
1162 
1163 FUNCTION Query_Rows
1164 (   p_request_type_code             IN  VARCHAR2 :=
1165                                         FND_API.G_MISS_CHAR
1166 ,   p_lookup_code                   IN  VARCHAR2 :=
1167                                         FND_API.G_MISS_CHAR
1168 ) RETURN QP_Attr_Map_PUB.Rqt_Tbl_Type
1169 IS
1170 l_RQT_rec                     QP_Attr_Map_PUB.Rqt_Rec_Type;
1171 l_RQT_tbl                     QP_Attr_Map_PUB.Rqt_Tbl_Type;
1172 
1173 CURSOR l_RQT_csr IS
1174     SELECT  ATTRIBUTE1
1175     ,       ATTRIBUTE10
1176     ,       ATTRIBUTE11
1177     ,       ATTRIBUTE12
1178     ,       ATTRIBUTE13
1179     ,       ATTRIBUTE14
1180     ,       ATTRIBUTE15
1181     ,       ATTRIBUTE2
1182     ,       ATTRIBUTE3
1183     ,       ATTRIBUTE4
1184     ,       ATTRIBUTE5
1185     ,       ATTRIBUTE6
1186     ,       ATTRIBUTE7
1187     ,       ATTRIBUTE8
1188     ,       ATTRIBUTE9
1189     ,       CONTEXT
1190     ,       CREATED_BY
1191     ,       CREATION_DATE
1192     ,       ENABLED_FLAG
1193     ,       LAST_UPDATED_BY
1194     ,       LAST_UPDATE_DATE
1195     ,       LAST_UPDATE_LOGIN
1196     ,       LINE_LEVEL_GLOBAL_STRUCT
1197     ,       LINE_LEVEL_VIEW_NAME
1198     ,       ORDER_LEVEL_GLOBAL_STRUCT
1199     ,       ORDER_LEVEL_VIEW_NAME
1200     ,       PROGRAM_APPLICATION_ID
1201     ,       PROGRAM_ID
1202     ,       PROGRAM_UPDATE_DATE
1203     ,       PTE_CODE
1204     ,       REQUEST_TYPE_CODE
1205     ,       REQUEST_TYPE_DESC
1206     --**,       ROW_ID
1207     FROM    QP_PTE_REQUEST_TYPES_V
1208     WHERE ( REQUEST_TYPE_CODE = p_request_type_code
1209     )
1210     --**OR (    LOOKUP_CODE = p_lookup_code
1211     OR (    pte_code = p_lookup_code
1212     );
1213 
1214 BEGIN
1215 
1216     IF
1217     (p_request_type_code IS NOT NULL
1218      AND
1219      p_request_type_code <> FND_API.G_MISS_CHAR)
1220     AND
1221     (p_lookup_code IS NOT NULL
1222      AND
1223      p_lookup_code <> FND_API.G_MISS_CHAR)
1224     THEN
1225             IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1226             THEN
1227                 OE_MSG_PUB.Add_Exc_Msg
1228                 (   G_PKG_NAME
1229                 ,   'Query Rows'
1230                 ,   'Keys are mutually exclusive: request_type_code = '|| p_request_type_code || ', lookup_code = '|| p_lookup_code
1231                 );
1232             END IF;
1233 
1234         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1235 
1236     END IF;
1237 
1238 
1239     --  Loop over fetched records
1240 
1241     FOR l_implicit_rec IN l_RQT_csr LOOP
1242 
1243         l_RQT_rec.attribute1           := l_implicit_rec.ATTRIBUTE1;
1244         l_RQT_rec.attribute10          := l_implicit_rec.ATTRIBUTE10;
1245         l_RQT_rec.attribute11          := l_implicit_rec.ATTRIBUTE11;
1246         l_RQT_rec.attribute12          := l_implicit_rec.ATTRIBUTE12;
1247         l_RQT_rec.attribute13          := l_implicit_rec.ATTRIBUTE13;
1248         l_RQT_rec.attribute14          := l_implicit_rec.ATTRIBUTE14;
1249         l_RQT_rec.attribute15          := l_implicit_rec.ATTRIBUTE15;
1250         l_RQT_rec.attribute2           := l_implicit_rec.ATTRIBUTE2;
1251         l_RQT_rec.attribute3           := l_implicit_rec.ATTRIBUTE3;
1252         l_RQT_rec.attribute4           := l_implicit_rec.ATTRIBUTE4;
1253         l_RQT_rec.attribute5           := l_implicit_rec.ATTRIBUTE5;
1254         l_RQT_rec.attribute6           := l_implicit_rec.ATTRIBUTE6;
1255         l_RQT_rec.attribute7           := l_implicit_rec.ATTRIBUTE7;
1256         l_RQT_rec.attribute8           := l_implicit_rec.ATTRIBUTE8;
1257         l_RQT_rec.attribute9           := l_implicit_rec.ATTRIBUTE9;
1258         l_RQT_rec.context              := l_implicit_rec.CONTEXT;
1259         l_RQT_rec.created_by           := l_implicit_rec.CREATED_BY;
1260         l_RQT_rec.creation_date        := l_implicit_rec.CREATION_DATE;
1261         l_RQT_rec.enabled_flag         := l_implicit_rec.ENABLED_FLAG;
1262         l_RQT_rec.last_updated_by      := l_implicit_rec.LAST_UPDATED_BY;
1263         l_RQT_rec.last_update_date     := l_implicit_rec.LAST_UPDATE_DATE;
1264         l_RQT_rec.last_update_login    := l_implicit_rec.LAST_UPDATE_LOGIN;
1265         l_RQT_rec.line_level_global_struct := l_implicit_rec.LINE_LEVEL_GLOBAL_STRUCT;
1266         l_RQT_rec.line_level_view_name := l_implicit_rec.LINE_LEVEL_VIEW_NAME;
1267         l_RQT_rec.order_level_global_struct := l_implicit_rec.ORDER_LEVEL_GLOBAL_STRUCT;
1268         l_RQT_rec.order_level_view_name := l_implicit_rec.ORDER_LEVEL_VIEW_NAME;
1269         l_RQT_rec.program_application_id := l_implicit_rec.PROGRAM_APPLICATION_ID;
1270         l_RQT_rec.program_id           := l_implicit_rec.PROGRAM_ID;
1271         l_RQT_rec.program_update_date  := l_implicit_rec.PROGRAM_UPDATE_DATE;
1272         l_RQT_rec.pte_code             := l_implicit_rec.PTE_CODE;
1273         l_RQT_rec.request_type_code    := l_implicit_rec.REQUEST_TYPE_CODE;
1274         l_RQT_rec.request_type_desc    := l_implicit_rec.REQUEST_TYPE_DESC;
1275         --**l_RQT_rec.row_id               := l_implicit_rec.ROW_ID;
1276 
1277         l_RQT_tbl(l_RQT_tbl.COUNT + 1) := l_RQT_rec;
1278 
1279     END LOOP;
1280 
1281 
1282     --  PK sent and no rows found
1283 
1284     IF
1285     (p_request_type_code IS NOT NULL
1286      AND
1287      p_request_type_code <> FND_API.G_MISS_CHAR)
1288     AND
1289     (l_RQT_tbl.COUNT = 0)
1290     THEN
1291         RAISE NO_DATA_FOUND;
1292     END IF;
1293 
1294 
1295     --  Return fetched table
1296 
1297     RETURN l_RQT_tbl;
1298 
1299 EXCEPTION
1300 
1301     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1302 
1303         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1304 
1305     WHEN OTHERS THEN
1306 
1307         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1308         THEN
1309             OE_MSG_PUB.Add_Exc_Msg
1310             (   G_PKG_NAME
1311             ,   'Query_Rows'
1312             );
1313         END IF;
1314 
1315         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1316 
1317 END Query_Rows;
1318 
1319 --  Procedure       lock_Row
1320 --
1321 
1322 PROCEDURE Lock_Row
1323 (   x_return_status                 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
1324 ,   p_RQT_rec                       IN  QP_Attr_Map_PUB.Rqt_Rec_Type
1325 ,   x_RQT_rec                       OUT NOCOPY /* file.sql.39 change */ QP_Attr_Map_PUB.Rqt_Rec_Type
1326 )
1327 IS
1328 l_RQT_rec                     QP_Attr_Map_PUB.Rqt_Rec_Type;
1329 BEGIN
1330 
1331     SELECT  ATTRIBUTE1
1332     ,       ATTRIBUTE10
1333     ,       ATTRIBUTE11
1334     ,       ATTRIBUTE12
1335     ,       ATTRIBUTE13
1336     ,       ATTRIBUTE14
1337     ,       ATTRIBUTE15
1338     ,       ATTRIBUTE2
1339     ,       ATTRIBUTE3
1340     ,       ATTRIBUTE4
1341     ,       ATTRIBUTE5
1342     ,       ATTRIBUTE6
1343     ,       ATTRIBUTE7
1344     ,       ATTRIBUTE8
1345     ,       ATTRIBUTE9
1346     ,       CONTEXT
1347     ,       CREATED_BY
1348     ,       CREATION_DATE
1349     ,       ENABLED_FLAG
1350     ,       LAST_UPDATED_BY
1351     ,       LAST_UPDATE_DATE
1352     ,       LAST_UPDATE_LOGIN
1353     ,       LINE_LEVEL_GLOBAL_STRUCT
1354     ,       LINE_LEVEL_VIEW_NAME
1355     ,       ORDER_LEVEL_GLOBAL_STRUCT
1356     ,       ORDER_LEVEL_VIEW_NAME
1357     ,       PROGRAM_APPLICATION_ID
1358     ,       PROGRAM_ID
1359     ,       PROGRAM_UPDATE_DATE
1360     ,       PTE_CODE
1361     ,       REQUEST_TYPE_CODE
1362     ,       REQUEST_TYPE_DESC
1363     --**,       ROW_ID
1364     INTO    l_RQT_rec.attribute1
1365     ,       l_RQT_rec.attribute10
1366     ,       l_RQT_rec.attribute11
1367     ,       l_RQT_rec.attribute12
1368     ,       l_RQT_rec.attribute13
1369     ,       l_RQT_rec.attribute14
1370     ,       l_RQT_rec.attribute15
1371     ,       l_RQT_rec.attribute2
1372     ,       l_RQT_rec.attribute3
1373     ,       l_RQT_rec.attribute4
1374     ,       l_RQT_rec.attribute5
1375     ,       l_RQT_rec.attribute6
1376     ,       l_RQT_rec.attribute7
1377     ,       l_RQT_rec.attribute8
1378     ,       l_RQT_rec.attribute9
1379     ,       l_RQT_rec.context
1380     ,       l_RQT_rec.created_by
1381     ,       l_RQT_rec.creation_date
1382     ,       l_RQT_rec.enabled_flag
1383     ,       l_RQT_rec.last_updated_by
1384     ,       l_RQT_rec.last_update_date
1385     ,       l_RQT_rec.last_update_login
1386     ,       l_RQT_rec.line_level_global_struct
1387     ,       l_RQT_rec.line_level_view_name
1388     ,       l_RQT_rec.order_level_global_struct
1389     ,       l_RQT_rec.order_level_view_name
1390     ,       l_RQT_rec.program_application_id
1391     ,       l_RQT_rec.program_id
1392     ,       l_RQT_rec.program_update_date
1393     ,       l_RQT_rec.pte_code
1394     ,       l_RQT_rec.request_type_code
1395     ,       l_RQT_rec.request_type_desc
1396     --**,       l_RQT_rec.row_id
1397     FROM    QP_PTE_REQUEST_TYPES_V
1398     WHERE   REQUEST_TYPE_CODE = p_RQT_rec.request_type_code
1399         FOR UPDATE NOWAIT;
1400 
1401     --  Row locked. Compare IN attributes to DB attributes.
1402 
1403     IF  QP_GLOBALS.Equal(p_RQT_rec.attribute1,
1404                          l_RQT_rec.attribute1)
1405     AND QP_GLOBALS.Equal(p_RQT_rec.attribute10,
1406                          l_RQT_rec.attribute10)
1407     AND QP_GLOBALS.Equal(p_RQT_rec.attribute11,
1408                          l_RQT_rec.attribute11)
1409     AND QP_GLOBALS.Equal(p_RQT_rec.attribute12,
1410                          l_RQT_rec.attribute12)
1411     AND QP_GLOBALS.Equal(p_RQT_rec.attribute13,
1412                          l_RQT_rec.attribute13)
1413     AND QP_GLOBALS.Equal(p_RQT_rec.attribute14,
1414                          l_RQT_rec.attribute14)
1415     AND QP_GLOBALS.Equal(p_RQT_rec.attribute15,
1416                          l_RQT_rec.attribute15)
1417     AND QP_GLOBALS.Equal(p_RQT_rec.attribute2,
1418                          l_RQT_rec.attribute2)
1419     AND QP_GLOBALS.Equal(p_RQT_rec.attribute3,
1420                          l_RQT_rec.attribute3)
1421     AND QP_GLOBALS.Equal(p_RQT_rec.attribute4,
1422                          l_RQT_rec.attribute4)
1423     AND QP_GLOBALS.Equal(p_RQT_rec.attribute5,
1424                          l_RQT_rec.attribute5)
1425     AND QP_GLOBALS.Equal(p_RQT_rec.attribute6,
1426                          l_RQT_rec.attribute6)
1427     AND QP_GLOBALS.Equal(p_RQT_rec.attribute7,
1428                          l_RQT_rec.attribute7)
1429     AND QP_GLOBALS.Equal(p_RQT_rec.attribute8,
1430                          l_RQT_rec.attribute8)
1431     AND QP_GLOBALS.Equal(p_RQT_rec.attribute9,
1432                          l_RQT_rec.attribute9)
1433     AND QP_GLOBALS.Equal(p_RQT_rec.context,
1434                          l_RQT_rec.context)
1435     AND QP_GLOBALS.Equal(p_RQT_rec.created_by,
1436                          l_RQT_rec.created_by)
1437     AND QP_GLOBALS.Equal(p_RQT_rec.creation_date,
1438                          l_RQT_rec.creation_date)
1439     AND QP_GLOBALS.Equal(p_RQT_rec.enabled_flag,
1440                          l_RQT_rec.enabled_flag)
1441     AND QP_GLOBALS.Equal(p_RQT_rec.last_updated_by,
1442                          l_RQT_rec.last_updated_by)
1443     AND QP_GLOBALS.Equal(p_RQT_rec.last_update_date,
1444                          l_RQT_rec.last_update_date)
1445     AND QP_GLOBALS.Equal(p_RQT_rec.last_update_login,
1446                          l_RQT_rec.last_update_login)
1447     AND QP_GLOBALS.Equal(p_RQT_rec.line_level_global_struct,
1448                          l_RQT_rec.line_level_global_struct)
1449     AND QP_GLOBALS.Equal(p_RQT_rec.line_level_view_name,
1450                          l_RQT_rec.line_level_view_name)
1451     AND QP_GLOBALS.Equal(p_RQT_rec.order_level_global_struct,
1452                          l_RQT_rec.order_level_global_struct)
1453     AND QP_GLOBALS.Equal(p_RQT_rec.order_level_view_name,
1454                          l_RQT_rec.order_level_view_name)
1455     AND QP_GLOBALS.Equal(p_RQT_rec.program_application_id,
1456                          l_RQT_rec.program_application_id)
1457     AND QP_GLOBALS.Equal(p_RQT_rec.program_id,
1458                          l_RQT_rec.program_id)
1459     AND QP_GLOBALS.Equal(p_RQT_rec.program_update_date,
1460                          l_RQT_rec.program_update_date)
1461     AND QP_GLOBALS.Equal(p_RQT_rec.pte_code,
1462                          l_RQT_rec.pte_code)
1463     AND QP_GLOBALS.Equal(p_RQT_rec.request_type_code,
1464                          l_RQT_rec.request_type_code)
1465     AND QP_GLOBALS.Equal(p_RQT_rec.request_type_desc,
1466                          l_RQT_rec.request_type_desc)
1467     --**AND QP_GLOBALS.Equal(p_RQT_rec.row_id,
1468     --**                     l_RQT_rec.row_id)
1469     THEN
1470 
1471         --  Row has not changed. Set out parameter.
1472 
1473         x_RQT_rec                      := l_RQT_rec;
1474 
1475         --  Set return status
1476 
1477         x_return_status                := FND_API.G_RET_STS_SUCCESS;
1478         x_RQT_rec.return_status        := FND_API.G_RET_STS_SUCCESS;
1479 
1480     ELSE
1481 
1482         --  Row has changed by another user.
1483 
1484         x_return_status                := FND_API.G_RET_STS_ERROR;
1485         x_RQT_rec.return_status        := FND_API.G_RET_STS_ERROR;
1486 
1487         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
1488         THEN
1489 
1490             FND_MESSAGE.SET_NAME('QP','OE_LOCK_ROW_CHANGED');
1491             OE_MSG_PUB.Add;
1492 
1493         END IF;
1494 
1495     END IF;
1496 
1497 EXCEPTION
1498 
1499     WHEN NO_DATA_FOUND THEN
1500 
1501         x_return_status                := FND_API.G_RET_STS_ERROR;
1502         x_RQT_rec.return_status        := FND_API.G_RET_STS_ERROR;
1503 
1504         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
1505         THEN
1506 
1507             FND_MESSAGE.SET_NAME('QP','OE_LOCK_ROW_DELETED');
1508             OE_MSG_PUB.Add;
1509 
1510         END IF;
1511     WHEN APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION THEN
1512 
1513         x_return_status                := FND_API.G_RET_STS_ERROR;
1514         x_RQT_rec.return_status        := FND_API.G_RET_STS_ERROR;
1515 
1516         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
1517         THEN
1518 
1519             FND_MESSAGE.SET_NAME('QP','OE_LOCK_ROW_ALREADY_LOCKED');
1520             OE_MSG_PUB.Add;
1521 
1522         END IF;
1523     WHEN OTHERS THEN
1524 
1525         x_return_status                := FND_API.G_RET_STS_UNEXP_ERROR;
1526         x_RQT_rec.return_status        := FND_API.G_RET_STS_UNEXP_ERROR;
1527 
1528         IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1529         THEN
1530             OE_MSG_PUB.Add_Exc_Msg
1531             (   G_PKG_NAME
1532             ,   'Lock_Row'
1533             );
1534         END IF;
1535 
1536 END Lock_Row;
1537 
1538 --  Function Get_Values
1539 
1540 FUNCTION Get_Values
1541 (   p_RQT_rec                       IN  QP_Attr_Map_PUB.Rqt_Rec_Type
1542 ,   p_old_RQT_rec                   IN  QP_Attr_Map_PUB.Rqt_Rec_Type :=
1543                                         QP_Attr_Map_PUB.G_MISS_RQT_REC
1544 ) RETURN QP_Attr_Map_PUB.Rqt_Val_Rec_Type
1545 IS
1546 l_RQT_val_rec                 QP_Attr_Map_PUB.Rqt_Val_Rec_Type;
1547 BEGIN
1548 
1549     IF p_RQT_rec.enabled_flag IS NOT NULL AND
1550         p_RQT_rec.enabled_flag <> FND_API.G_MISS_CHAR AND
1551         NOT QP_GLOBALS.Equal(p_RQT_rec.enabled_flag,
1552         p_old_RQT_rec.enabled_flag)
1553     THEN
1554         l_RQT_val_rec.enabled := QP_Id_To_Value.Enabled
1555         (   p_enabled_flag                => p_RQT_rec.enabled_flag
1556         );
1557     END IF;
1558 
1559     IF p_RQT_rec.pte_code IS NOT NULL AND
1560         p_RQT_rec.pte_code <> FND_API.G_MISS_CHAR AND
1561         NOT QP_GLOBALS.Equal(p_RQT_rec.pte_code,
1562         p_old_RQT_rec.pte_code)
1563     THEN
1564         l_RQT_val_rec.pte := QP_Id_To_Value.Pte
1565         (   p_pte_code                    => p_RQT_rec.pte_code
1566         );
1567     END IF;
1568 
1569     IF p_RQT_rec.request_type_code IS NOT NULL AND
1570         p_RQT_rec.request_type_code <> FND_API.G_MISS_CHAR AND
1571         NOT QP_GLOBALS.Equal(p_RQT_rec.request_type_code,
1572         p_old_RQT_rec.request_type_code)
1573     THEN
1574         l_RQT_val_rec.request_type := QP_Id_To_Value.Request_Type
1575         (   p_request_type_code           => p_RQT_rec.request_type_code
1576         );
1577     END IF;
1578 
1579     IF p_RQT_rec.row_id IS NOT NULL AND
1580         p_RQT_rec.row_id <> FND_API.G_MISS_CHAR AND
1581         NOT QP_GLOBALS.Equal(p_RQT_rec.row_id,
1582         p_old_RQT_rec.row_id)
1583     THEN
1584         l_RQT_val_rec.row := QP_Id_To_Value.Row
1585         (   p_row_id                      => p_RQT_rec.row_id
1586         );
1587     END IF;
1588 
1589     RETURN l_RQT_val_rec;
1590 
1591 END Get_Values;
1592 
1593 --  Function Get_Ids
1594 
1595 FUNCTION Get_Ids
1596 (   p_RQT_rec                       IN  QP_Attr_Map_PUB.Rqt_Rec_Type
1597 ,   p_RQT_val_rec                   IN  QP_Attr_Map_PUB.Rqt_Val_Rec_Type
1598 ) RETURN QP_Attr_Map_PUB.Rqt_Rec_Type
1599 IS
1600 l_RQT_rec                     QP_Attr_Map_PUB.Rqt_Rec_Type;
1601 BEGIN
1602 
1603     --  initialize  return_status.
1604 
1605     l_RQT_rec.return_status := FND_API.G_RET_STS_SUCCESS;
1606 
1607     --  initialize l_RQT_rec.
1608 
1609     l_RQT_rec := p_RQT_rec;
1610 
1611     IF  p_RQT_val_rec.enabled <> FND_API.G_MISS_CHAR
1612     THEN
1613 
1614         IF p_RQT_rec.enabled_flag <> FND_API.G_MISS_CHAR THEN
1615 
1616             l_RQT_rec.enabled_flag := p_RQT_rec.enabled_flag;
1617 
1618             IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
1619             THEN
1620 
1621                 FND_MESSAGE.SET_NAME('QP','FND_BOTH_VAL_AND_ID_EXIST');
1622                 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','enabled');
1623                 OE_MSG_PUB.Add;
1624 
1625             END IF;
1626 
1627         ELSE
1628 
1629             l_RQT_rec.enabled_flag := QP_Value_To_Id.enabled
1630             (   p_enabled                     => p_RQT_val_rec.enabled
1631             );
1632 
1633             IF l_RQT_rec.enabled_flag = FND_API.G_MISS_CHAR THEN
1634                 l_RQT_rec.return_status := FND_API.G_RET_STS_ERROR;
1635             END IF;
1636 
1637         END IF;
1638 
1639     END IF;
1640 
1641     IF  p_RQT_val_rec.pte <> FND_API.G_MISS_CHAR
1642     THEN
1643 
1644         IF p_RQT_rec.pte_code <> FND_API.G_MISS_CHAR THEN
1645 
1646             l_RQT_rec.pte_code := p_RQT_rec.pte_code;
1647 
1648             IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
1649             THEN
1650 
1651                 FND_MESSAGE.SET_NAME('QP','FND_BOTH_VAL_AND_ID_EXIST');
1652                 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','pte');
1653                 OE_MSG_PUB.Add;
1654 
1655             END IF;
1656 
1657         ELSE
1658 
1659             l_RQT_rec.pte_code := QP_Value_To_Id.pte
1660             (   p_pte                         => p_RQT_val_rec.pte
1661             );
1662 
1663             IF l_RQT_rec.pte_code = FND_API.G_MISS_CHAR THEN
1664                 l_RQT_rec.return_status := FND_API.G_RET_STS_ERROR;
1665             END IF;
1666 
1667         END IF;
1668 
1669     END IF;
1670 
1671     IF  p_RQT_val_rec.request_type <> FND_API.G_MISS_CHAR
1672     THEN
1673 
1674         IF p_RQT_rec.request_type_code <> FND_API.G_MISS_CHAR THEN
1675 
1676             l_RQT_rec.request_type_code := p_RQT_rec.request_type_code;
1677 
1678             IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
1679             THEN
1680 
1681                 FND_MESSAGE.SET_NAME('QP','FND_BOTH_VAL_AND_ID_EXIST');
1682                 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','request_type');
1683                 OE_MSG_PUB.Add;
1684 
1685             END IF;
1686 
1687         ELSE
1688 
1689             l_RQT_rec.request_type_code := QP_Value_To_Id.request_type
1690             (   p_request_type                => p_RQT_val_rec.request_type
1691             );
1692 
1693             IF l_RQT_rec.request_type_code = FND_API.G_MISS_CHAR THEN
1694                 l_RQT_rec.return_status := FND_API.G_RET_STS_ERROR;
1695             END IF;
1696 
1697         END IF;
1698 
1699     END IF;
1700 
1701     IF  p_RQT_val_rec.row <> FND_API.G_MISS_CHAR
1702     THEN
1703 
1704         IF p_RQT_rec.row_id <> FND_API.G_MISS_CHAR THEN
1705 
1706             l_RQT_rec.row_id := p_RQT_rec.row_id;
1707 
1708             IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
1709             THEN
1710 
1711                 FND_MESSAGE.SET_NAME('QP','FND_BOTH_VAL_AND_ID_EXIST');
1712                 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','row');
1713                 OE_MSG_PUB.Add;
1714 
1715             END IF;
1716 
1717         ELSE
1718 
1719             l_RQT_rec.row_id := p_RQT_rec.row_id;
1720             --**l_RQT_rec.row_id := QP_Value_To_Id.row
1721             --**(   p_row                         => p_RQT_val_rec.row
1722             --**);
1723 
1724             --**IF l_RQT_rec.row_id = FND_API.G_MISS_CHAR THEN
1725                 --**l_RQT_rec.return_status := FND_API.G_RET_STS_ERROR;
1726             --**END IF;
1727 
1728         END IF;
1729 
1730     END IF;
1731 
1732 
1733     RETURN l_RQT_rec;
1734 
1735 END Get_Ids;
1736 
1737 END QP_Rqt_Util;