[Home] [Help]
PACKAGE BODY: APPS.QP_DEFAULT_RQT
Source
1 PACKAGE BODY QP_Default_Rqt AS
2 /* $Header: QPXDRQTB.pls 120.2 2005/07/06 04:30:58 appldev ship $ */
3
4 -- Global constant holding the package name
5
6 G_PKG_NAME CONSTANT VARCHAR2(30) := 'QP_Default_Rqt';
7
8 -- Package global used within the package.
9
10 g_RQT_rec QP_Attr_Map_PUB.Rqt_Rec_Type;
11
12 -- Get functions.
13
14 FUNCTION Get_Enabled
15 RETURN VARCHAR2
16 IS
17 BEGIN
18
19 RETURN NULL;
20
21 END Get_Enabled;
22
23 FUNCTION Get_Line_Level_Global_Struct
24 RETURN VARCHAR2
25 IS
26 BEGIN
27
28 RETURN NULL;
29
30 END Get_Line_Level_Global_Struct;
31
32 FUNCTION Get_Line_Level_View_Name
33 RETURN VARCHAR2
34 IS
35 BEGIN
36
37 RETURN NULL;
38
39 END Get_Line_Level_View_Name;
40
41 FUNCTION Get_Order_Level_Global_Struct
42 RETURN VARCHAR2
43 IS
44 BEGIN
45
46 RETURN NULL;
47
48 END Get_Order_Level_Global_Struct;
49
50 FUNCTION Get_Order_Level_View_Name
51 RETURN VARCHAR2
52 IS
53 BEGIN
54
55 RETURN NULL;
56
57 END Get_Order_Level_View_Name;
58
59 FUNCTION Get_Pte
60 RETURN VARCHAR2
61 IS
62 BEGIN
63
64 RETURN NULL;
65
66 END Get_Pte;
67
68 FUNCTION Get_Request_Type
69 RETURN VARCHAR2
70 IS
71 BEGIN
72
73 RETURN NULL;
74
75 END Get_Request_Type;
76
77 FUNCTION Get_Request_Type_Desc
78 RETURN VARCHAR2
79 IS
80 BEGIN
81
82 RETURN NULL;
83
84 END Get_Request_Type_Desc;
85
86 FUNCTION Get_Row
87 RETURN ROWID
88 IS
89 BEGIN
90
91 RETURN NULL;
92
93 END Get_Row;
94
95 PROCEDURE Get_Flex_Rqt
96 IS
97 BEGIN
98
99 -- In the future call Flex APIs for defaults
100
101 IF g_RQT_rec.attribute1 = FND_API.G_MISS_CHAR THEN
102 g_RQT_rec.attribute1 := NULL;
103 END IF;
104
105 IF g_RQT_rec.attribute10 = FND_API.G_MISS_CHAR THEN
106 g_RQT_rec.attribute10 := NULL;
107 END IF;
108
109 IF g_RQT_rec.attribute11 = FND_API.G_MISS_CHAR THEN
110 g_RQT_rec.attribute11 := NULL;
111 END IF;
112
113 IF g_RQT_rec.attribute12 = FND_API.G_MISS_CHAR THEN
114 g_RQT_rec.attribute12 := NULL;
115 END IF;
116
117 IF g_RQT_rec.attribute13 = FND_API.G_MISS_CHAR THEN
118 g_RQT_rec.attribute13 := NULL;
119 END IF;
120
121 IF g_RQT_rec.attribute14 = FND_API.G_MISS_CHAR THEN
122 g_RQT_rec.attribute14 := NULL;
123 END IF;
124
125 IF g_RQT_rec.attribute15 = FND_API.G_MISS_CHAR THEN
126 g_RQT_rec.attribute15 := NULL;
127 END IF;
128
129 IF g_RQT_rec.attribute2 = FND_API.G_MISS_CHAR THEN
130 g_RQT_rec.attribute2 := NULL;
131 END IF;
132
133 IF g_RQT_rec.attribute3 = FND_API.G_MISS_CHAR THEN
134 g_RQT_rec.attribute3 := NULL;
135 END IF;
136
137 IF g_RQT_rec.attribute4 = FND_API.G_MISS_CHAR THEN
138 g_RQT_rec.attribute4 := NULL;
139 END IF;
140
141 IF g_RQT_rec.attribute5 = FND_API.G_MISS_CHAR THEN
142 g_RQT_rec.attribute5 := NULL;
143 END IF;
144
145 IF g_RQT_rec.attribute6 = FND_API.G_MISS_CHAR THEN
146 g_RQT_rec.attribute6 := NULL;
147 END IF;
148
149 IF g_RQT_rec.attribute7 = FND_API.G_MISS_CHAR THEN
150 g_RQT_rec.attribute7 := NULL;
151 END IF;
152
153 IF g_RQT_rec.attribute8 = FND_API.G_MISS_CHAR THEN
154 g_RQT_rec.attribute8 := NULL;
155 END IF;
156
157 IF g_RQT_rec.attribute9 = FND_API.G_MISS_CHAR THEN
158 g_RQT_rec.attribute9 := NULL;
159 END IF;
160
161 IF g_RQT_rec.context = FND_API.G_MISS_CHAR THEN
162 g_RQT_rec.context := NULL;
163 END IF;
164
165 END Get_Flex_Rqt;
166
167 -- Procedure Attributes
168
169 PROCEDURE Attributes
170 ( p_RQT_rec IN QP_Attr_Map_PUB.Rqt_Rec_Type :=
171 QP_Attr_Map_PUB.G_MISS_RQT_REC
172 , p_iteration IN NUMBER := 1
173 , x_RQT_rec OUT NOCOPY /* file.sql.39 change */ QP_Attr_Map_PUB.Rqt_Rec_Type
174 )
175 IS
176 g_p_RQT_rec QP_Attr_Map_PUB.Rqt_Rec_Type;
177 BEGIN
178
179 -- Check number of iterations.
180
181 IF p_iteration > QP_GLOBALS.G_MAX_DEF_ITERATIONS THEN
182
183 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
184 THEN
185
186 FND_MESSAGE.SET_NAME('QP','OE_DEF_MAX_ITERATION');
187 OE_MSG_PUB.Add;
188
189 END IF;
190
191 RAISE FND_API.G_EXC_ERROR;
192
193 END IF;
194
195 -- Initialize g_RQT_rec
196
197 g_RQT_rec := p_RQT_rec;
198
199 -- Default missing attributes.
200
201 IF g_RQT_rec.enabled_flag = FND_API.G_MISS_CHAR THEN
202
203 g_RQT_rec.enabled_flag := Get_Enabled;
204
205 IF g_RQT_rec.enabled_flag IS NOT NULL THEN
206
207 IF QP_Validate.Enabled(g_RQT_rec.enabled_flag)
208 THEN
209 g_p_RQT_rec := g_RQT_rec;
210 QP_Rqt_Util.Clear_Dependent_Attr
211 ( p_attr_id => QP_Rqt_Util.G_ENABLED
212 , p_RQT_rec => g_p_RQT_rec
213 , x_RQT_rec => g_RQT_rec
214 );
215 ELSE
216 g_RQT_rec.enabled_flag := NULL;
217 END IF;
218
219 END IF;
220
221 END IF;
222
223 IF g_RQT_rec.line_level_global_struct = FND_API.G_MISS_CHAR THEN
224
225 g_RQT_rec.line_level_global_struct := Get_Line_Level_Global_Struct;
226
227 IF g_RQT_rec.line_level_global_struct IS NOT NULL THEN
228
229 IF QP_Validate.Line_Level_Global_Struct(g_RQT_rec.line_level_global_struct)
230 THEN
231 g_p_RQT_rec := g_RQT_rec;
232 QP_Rqt_Util.Clear_Dependent_Attr
233 ( p_attr_id => QP_Rqt_Util.G_LINE_LEVEL_GLOBAL_STRUCT
234 , p_RQT_rec => g_p_RQT_rec
235 , x_RQT_rec => g_RQT_rec
236 );
237 ELSE
238 g_RQT_rec.line_level_global_struct := NULL;
239 END IF;
240
241 END IF;
242
243 END IF;
244
245 IF g_RQT_rec.line_level_view_name = FND_API.G_MISS_CHAR THEN
246
247 g_RQT_rec.line_level_view_name := Get_Line_Level_View_Name;
248
249 IF g_RQT_rec.line_level_view_name IS NOT NULL THEN
250
251 IF QP_Validate.Line_Level_View_Name(g_RQT_rec.line_level_view_name)
252 THEN
253 g_p_RQT_rec := g_RQT_rec;
254 QP_Rqt_Util.Clear_Dependent_Attr
255 ( p_attr_id => QP_Rqt_Util.G_LINE_LEVEL_VIEW_NAME
256 , p_RQT_rec => g_p_RQT_rec
257 , x_RQT_rec => g_RQT_rec
258 );
259 ELSE
260 g_RQT_rec.line_level_view_name := NULL;
261 END IF;
262
263 END IF;
264
265 END IF;
266
267 IF g_RQT_rec.order_level_global_struct = FND_API.G_MISS_CHAR THEN
268
269 g_RQT_rec.order_level_global_struct := Get_Order_Level_Global_Struct;
270
271 IF g_RQT_rec.order_level_global_struct IS NOT NULL THEN
272
273 IF QP_Validate.Order_Level_Global_Struct(g_RQT_rec.order_level_global_struct)
274 THEN
275 g_p_RQT_rec := g_RQT_rec;
276 QP_Rqt_Util.Clear_Dependent_Attr
277 ( p_attr_id => QP_Rqt_Util.G_ORDER_LEVEL_GLOBAL_STRUCT
278 , p_RQT_rec => g_p_RQT_rec
279 , x_RQT_rec => g_RQT_rec
280 );
281 ELSE
282 g_RQT_rec.order_level_global_struct := NULL;
283 END IF;
284
285 END IF;
286
287 END IF;
288
289 IF g_RQT_rec.order_level_view_name = FND_API.G_MISS_CHAR THEN
290
291 g_RQT_rec.order_level_view_name := Get_Order_Level_View_Name;
292
293 IF g_RQT_rec.order_level_view_name IS NOT NULL THEN
294
295 IF QP_Validate.Order_Level_View_Name(g_RQT_rec.order_level_view_name)
296 THEN
297 g_p_RQT_rec := g_RQT_rec;
298 QP_Rqt_Util.Clear_Dependent_Attr
299 ( p_attr_id => QP_Rqt_Util.G_ORDER_LEVEL_VIEW_NAME
300 , p_RQT_rec => g_p_RQT_rec
301 , x_RQT_rec => g_RQT_rec
302 );
303 ELSE
304 g_RQT_rec.order_level_view_name := NULL;
305 END IF;
306
307 END IF;
308
309 END IF;
310
311 IF g_RQT_rec.pte_code = FND_API.G_MISS_CHAR THEN
312
313 g_RQT_rec.pte_code := Get_Pte;
314
315 IF g_RQT_rec.pte_code IS NOT NULL THEN
316
317 IF QP_Validate.Pte(g_RQT_rec.pte_code)
318 THEN
319 g_p_RQT_rec := g_RQT_rec;
320 QP_Rqt_Util.Clear_Dependent_Attr
321 ( p_attr_id => QP_Rqt_Util.G_PTE
322 , p_RQT_rec => g_p_RQT_rec
323 , x_RQT_rec => g_RQT_rec
324 );
325 ELSE
326 g_RQT_rec.pte_code := NULL;
327 END IF;
328
329 END IF;
330
331 END IF;
332
333 IF g_RQT_rec.request_type_code = FND_API.G_MISS_CHAR THEN
334
335 g_RQT_rec.request_type_code := Get_Request_Type;
336
337 IF g_RQT_rec.request_type_code IS NOT NULL THEN
338
339 IF QP_Validate.Request_Type(g_RQT_rec.request_type_code)
340 THEN
341 g_p_RQT_rec := g_RQT_rec;
342 QP_Rqt_Util.Clear_Dependent_Attr
343 ( p_attr_id => QP_Rqt_Util.G_REQUEST_TYPE
344 , p_RQT_rec => g_p_RQT_rec
345 , x_RQT_rec => g_RQT_rec
346 );
347 ELSE
348 g_RQT_rec.request_type_code := NULL;
349 END IF;
350
351 END IF;
352
353 END IF;
354
355 IF g_RQT_rec.request_type_desc = FND_API.G_MISS_CHAR THEN
356
357 g_RQT_rec.request_type_desc := Get_Request_Type_Desc;
358
359 IF g_RQT_rec.request_type_desc IS NOT NULL THEN
360
361 IF QP_Validate.Request_Type_Desc(g_RQT_rec.request_type_desc)
362 THEN
363 g_p_RQT_rec := g_RQT_rec;
364 QP_Rqt_Util.Clear_Dependent_Attr
365 ( p_attr_id => QP_Rqt_Util.G_REQUEST_TYPE_DESC
366 , p_RQT_rec => g_p_RQT_rec
367 , x_RQT_rec => g_RQT_rec
368 );
369 ELSE
370 g_RQT_rec.request_type_desc := NULL;
371 END IF;
372
373 END IF;
374
375 END IF;
376
377 IF g_RQT_rec.row_id = FND_API.G_MISS_CHAR THEN
378
379 g_RQT_rec.row_id := Get_Row;
380
381 IF g_RQT_rec.row_id IS NOT NULL THEN
382
383 IF QP_Validate.Row(g_RQT_rec.row_id)
384 THEN
385 g_p_RQT_rec := g_RQT_rec;
386 QP_Rqt_Util.Clear_Dependent_Attr
387 ( p_attr_id => QP_Rqt_Util.G_ROW
388 , p_RQT_rec => g_p_RQT_rec
389 , x_RQT_rec => g_RQT_rec
390 );
391 ELSE
392 g_RQT_rec.row_id := NULL;
393 END IF;
394
395 END IF;
396
397 END IF;
398
399 IF g_RQT_rec.attribute1 = FND_API.G_MISS_CHAR
400 OR g_RQT_rec.attribute10 = FND_API.G_MISS_CHAR
401 OR g_RQT_rec.attribute11 = FND_API.G_MISS_CHAR
402 OR g_RQT_rec.attribute12 = FND_API.G_MISS_CHAR
403 OR g_RQT_rec.attribute13 = FND_API.G_MISS_CHAR
404 OR g_RQT_rec.attribute14 = FND_API.G_MISS_CHAR
405 OR g_RQT_rec.attribute15 = FND_API.G_MISS_CHAR
406 OR g_RQT_rec.attribute2 = FND_API.G_MISS_CHAR
407 OR g_RQT_rec.attribute3 = FND_API.G_MISS_CHAR
408 OR g_RQT_rec.attribute4 = FND_API.G_MISS_CHAR
409 OR g_RQT_rec.attribute5 = FND_API.G_MISS_CHAR
410 OR g_RQT_rec.attribute6 = FND_API.G_MISS_CHAR
411 OR g_RQT_rec.attribute7 = FND_API.G_MISS_CHAR
412 OR g_RQT_rec.attribute8 = FND_API.G_MISS_CHAR
413 OR g_RQT_rec.attribute9 = FND_API.G_MISS_CHAR
414 OR g_RQT_rec.context = FND_API.G_MISS_CHAR
415 THEN
416
417 Get_Flex_Rqt;
418
419 END IF;
420
421 IF g_RQT_rec.created_by = FND_API.G_MISS_NUM THEN
422
423 g_RQT_rec.created_by := NULL;
424
425 END IF;
426
427 IF g_RQT_rec.creation_date = FND_API.G_MISS_DATE THEN
428
429 g_RQT_rec.creation_date := NULL;
430
431 END IF;
432
433 IF g_RQT_rec.last_updated_by = FND_API.G_MISS_NUM THEN
434
435 g_RQT_rec.last_updated_by := NULL;
436
437 END IF;
438
439 IF g_RQT_rec.last_update_date = FND_API.G_MISS_DATE THEN
440
441 g_RQT_rec.last_update_date := NULL;
442
443 END IF;
444
445 IF g_RQT_rec.last_update_login = FND_API.G_MISS_NUM THEN
446
447 g_RQT_rec.last_update_login := NULL;
448
449 END IF;
450
451 IF g_RQT_rec.program_application_id = FND_API.G_MISS_NUM THEN
452
453 g_RQT_rec.program_application_id := NULL;
454
455 END IF;
456
457 IF g_RQT_rec.program_id = FND_API.G_MISS_NUM THEN
458
459 g_RQT_rec.program_id := NULL;
460
461 END IF;
462
463 IF g_RQT_rec.program_update_date = FND_API.G_MISS_DATE THEN
464
465 g_RQT_rec.program_update_date := NULL;
466
467 END IF;
468
469 -- Redefault if there are any missing attributes.
470
471 IF g_RQT_rec.attribute1 = FND_API.G_MISS_CHAR
472 OR g_RQT_rec.attribute10 = FND_API.G_MISS_CHAR
473 OR g_RQT_rec.attribute11 = FND_API.G_MISS_CHAR
474 OR g_RQT_rec.attribute12 = FND_API.G_MISS_CHAR
475 OR g_RQT_rec.attribute13 = FND_API.G_MISS_CHAR
476 OR g_RQT_rec.attribute14 = FND_API.G_MISS_CHAR
477 OR g_RQT_rec.attribute15 = FND_API.G_MISS_CHAR
478 OR g_RQT_rec.attribute2 = FND_API.G_MISS_CHAR
479 OR g_RQT_rec.attribute3 = FND_API.G_MISS_CHAR
480 OR g_RQT_rec.attribute4 = FND_API.G_MISS_CHAR
481 OR g_RQT_rec.attribute5 = FND_API.G_MISS_CHAR
482 OR g_RQT_rec.attribute6 = FND_API.G_MISS_CHAR
483 OR g_RQT_rec.attribute7 = FND_API.G_MISS_CHAR
484 OR g_RQT_rec.attribute8 = FND_API.G_MISS_CHAR
485 OR g_RQT_rec.attribute9 = FND_API.G_MISS_CHAR
486 OR g_RQT_rec.context = FND_API.G_MISS_CHAR
487 OR g_RQT_rec.created_by = FND_API.G_MISS_NUM
488 OR g_RQT_rec.creation_date = FND_API.G_MISS_DATE
489 OR g_RQT_rec.enabled_flag = FND_API.G_MISS_CHAR
490 OR g_RQT_rec.last_updated_by = FND_API.G_MISS_NUM
491 OR g_RQT_rec.last_update_date = FND_API.G_MISS_DATE
492 OR g_RQT_rec.last_update_login = FND_API.G_MISS_NUM
493 OR g_RQT_rec.line_level_global_struct = FND_API.G_MISS_CHAR
494 OR g_RQT_rec.line_level_view_name = FND_API.G_MISS_CHAR
495 OR g_RQT_rec.order_level_global_struct = FND_API.G_MISS_CHAR
496 OR g_RQT_rec.order_level_view_name = FND_API.G_MISS_CHAR
497 OR g_RQT_rec.program_application_id = FND_API.G_MISS_NUM
498 OR g_RQT_rec.program_id = FND_API.G_MISS_NUM
499 OR g_RQT_rec.program_update_date = FND_API.G_MISS_DATE
500 OR g_RQT_rec.pte_code = FND_API.G_MISS_CHAR
501 OR g_RQT_rec.request_type_code = FND_API.G_MISS_CHAR
502 OR g_RQT_rec.request_type_desc = FND_API.G_MISS_CHAR
503 OR g_RQT_rec.row_id = FND_API.G_MISS_CHAR
504 THEN
505
506 QP_Default_Rqt.Attributes
507 ( p_RQT_rec => g_RQT_rec
508 , p_iteration => p_iteration + 1
509 , x_RQT_rec => x_RQT_rec
510 );
511
512 ELSE
513
514 -- Done defaulting attributes
515
516 x_RQT_rec := g_RQT_rec;
517
518 END IF;
519
520 END Attributes;
521
522 END QP_Default_Rqt;