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