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