[Home] [Help]
PACKAGE BODY: APPS.PA_INTERFACE_UTILS_PUB
Source
1 package body PA_INTERFACE_UTILS_PUB as
2 --$Header: PAPMUTPB.pls 120.5.12010000.3 2008/11/10 08:53:57 jcgeorge ship $
3 G_PKG_NAME CONSTANT VARCHAR2(30) := 'PA_INTERFACE_UTILS_PUB';
4
5 PROCEDURE get_messages
6 (p_encoded IN VARCHAR2 := FND_API.G_FALSE,
7 p_msg_index IN NUMBER := FND_API.G_MISS_NUM,
8 p_msg_count IN NUMBER := 1,
9 p_msg_data IN VARCHAR2 := FND_API.G_MISS_CHAR,
10 p_data OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
11 p_msg_index_out OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
12 ) IS
13
14 --l_encoded BOOLEAN;
15 l_data VARCHAR2(2000);
16 l_msg_index NUMBER;
17
18 BEGIN
19
20 IF p_msg_index = FND_API.G_MISS_NUM THEN
21 l_msg_index := FND_MSG_PUB.G_NEXT;
22 ELSE
23 l_msg_index := p_msg_index;
24 END IF;
25
26 /* The comments put in to fix 1276810 in the previous version have been
27 removed to fix bug 962199. They are not needed since changes have been
28 made in FND_MESSGAE package (File: AFNLMSGB.pls version 115.7) */
29
30 -- bug 1276810: remove the call to FND_MESSAGE.GET,
31 -- use FND_MSG_PUB.get to get the message text
32 -- for both single (p_msg_count = 1) and multiple
33 -- messages. changed in rel 11.5.
34
35 /* IF p_msg_count = 1 THEN
36 FND_MESSAGE.SET_ENCODED (p_msg_data);
37 p_data := FND_MESSAGE.GET;
38 ELSE */
39
40 FND_MSG_PUB.get (
41 p_msg_index => l_msg_index,
42 p_encoded => p_encoded,
43 p_data => p_data,
44 p_msg_index_out => p_msg_index_out );
45 -- END IF;
46
47 EXCEPTION
48 WHEN OTHERS THEN
49 p_data := NULL ;
50 p_msg_index_out := NULL ;
51
52 -- Did not include RAISE because this API is used to retrive error msg data
53 -- In case of Exception ,just return the data as NULL .
54 END get_messages;
55
56 FUNCTION get_bg_id RETURN NUMBER IS
57 X_business_group_id NUMBER(15);
58 BEGIN
59 SELECT business_group_id
60 INTO X_business_group_id
61 FROM pa_implementations;
62
63 RETURN(X_business_group_id);
64
65 END get_bg_id;
66
67 /** Bug 1940353 - Added one IN parameter p_resp_appl_id in this procedure **/
68
69 PROCEDURE Set_Global_Info
70 (p_api_version_number IN NUMBER,
71 p_responsibility_id IN NUMBER := G_PA_MISS_NUM,
72 p_user_id IN NUMBER := G_PA_MISS_NUM,
73 p_resp_appl_id IN NUMBER := 275,
74 p_advanced_proj_sec_flag IN VARCHAR2 := 'N', --bug 2471668
75 p_calling_mode IN VARCHAR2 := 'AMG', --bug 2783845
76 p_operating_unit_id IN NUMBER := G_PA_MISS_NUM, -- 4363092 Added for MOAC Changes
77 p_msg_count OUT NOCOPY NUMBER, /*Added the nocopy check for 4537865 */
78 p_msg_data OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
79 p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
80 ) IS
81
82 -- This procedure sets the global values for User_id,login_id and
83 -- also populates the server side env variable CLIENT_INFO
84 -- with the relevant org id (for multi org purposes)
85
86 l_api_version_number CONSTANT NUMBER := 1.0;
87 l_api_name CONSTANT VARCHAR2(30):= 'Set_Global_Info';
88 l_value_conversion_error BOOLEAN := FALSE;
89 l_return_status VARCHAR2(1);
90 l_dummy VARCHAR2(1);
91 l_temp_num NUMBER ;
92
93 /** Bug 1940353 - Modified the cursor l_resp_csr to check the combination of
94 resposibility and application id. Commented out the cursor l_resp_appl_csr **/
95
96 CURSOR l_resp_csr IS
97 SELECT 'x'
98 FROM fnd_responsibility
99 WHERE responsibility_id = p_responsibility_id
100 AND application_id = p_resp_appl_id;
101
102 /* Bug 1940353 - Commented the following cursor.
103
104 CURSOR l_resp_appl_csr IS
105 SELECT application_id
106 FROM fnd_responsibility
107 WHERE responsibility_id = p_responsibility_id;
108 */
109
110
111 CURSOR l_user_csr IS
112 SELECT 'x'
113 FROM fnd_user
114 WHERE user_id = p_user_id;
115 l_resp_csr_rec l_resp_csr%ROWTYPE;
116 /* Bug 1940353 - l_resp_appl_csr_rec l_resp_appl_csr%ROWTYPE; */
117
118 -- 4363092 MOAC Changes
119 l_msg_data varchar2(2000);
120 l_msg_count number;
121 l_ou_id number;
122 -- 4363092 end
123
124 BEGIN
125 -- Standard Api compatibility call
126 IF NOT FND_API.Compatible_API_Call ( l_api_version_number ,
127 p_api_version_number ,
128 l_api_name ,
129 G_PKG_NAME )
130 THEN
131 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
132 END IF;
133
134 p_return_status := FND_API.G_RET_STS_SUCCESS;
135
136
137 -- Ensure the responsibility id passed is valid
138 IF p_responsibility_id IS NULL or p_responsibility_id =
139 G_PA_MISS_NUM THEN
140 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR)
141 THEN
142 FND_MESSAGE.SET_NAME('PA','PA_RESP_ID_REQD');
143 FND_MSG_PUB.add;
144 END IF;
145
146 RAISE FND_API.G_EXC_ERROR;
147 END IF;
148
149 OPEN l_resp_csr;
150 FETCH l_resp_csr INTO l_dummy;
151 IF l_resp_csr%NOTFOUND THEN
152 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
153 FND_MESSAGE.SET_NAME('PA','PA_RESP_ID_INVALID');
154 FND_MSG_PUB.add;
155 END IF;
156 CLOSE l_resp_csr;
157 RAISE FND_API.G_EXC_ERROR;
158 ELSE
159 CLOSE l_resp_csr;
160 END IF;
161
162 -- Ensure the user id passed is valid
163 IF p_user_id IS NULL or p_user_id =
164 G_PA_MISS_NUM THEN
165 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR)
166 THEN
167 FND_MESSAGE.SET_NAME('PA','PA_USER_ID_REQD');
168 FND_MSG_PUB.add;
169 END IF;
170
171 RAISE FND_API.G_EXC_ERROR;
172 END IF;
173
174
175 OPEN l_user_csr ;
176 FETCH l_user_csr INTO l_dummy;
177 IF l_user_csr%NOTFOUND THEN
178 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
179 FND_MESSAGE.SET_NAME('PA','PA_USER_ID_INVALID');
180 FND_MSG_PUB.add;
181 END IF;
182 CLOSE l_user_csr;
183 RAISE FND_API.G_EXC_ERROR;
184 ELSE
185 CLOSE l_user_csr;
186 END IF;
187
188 -- 07-NOV-97, jwhite ---------------------------------------------------
189
190 -- Based on the Responsibility, Intialize the Application
191
192 /* Bug 1940353 Begin-- Commented the following code(cursor Open, Fetch and Close).
193 the newly added parameter p_resp_appl_id is passed to Apps_initialize procedure */
194
195 /* OPEN l_resp_appl_csr;
196 FETCH l_resp_appl_csr INTO l_resp_appl_csr_rec;
197 FND_GLOBAL.Apps_Initialize
198 ( user_id => p_user_id
199 , resp_id => p_responsibility_id
200 , resp_appl_id => l_resp_appl_csr_rec.application_id
201 );
202 CLOSE l_resp_appl_csr;
203 */
204
205 FND_GLOBAL.Apps_Initialize
206 ( user_id => p_user_id
207 , resp_id => p_responsibility_id
208 , resp_appl_id => p_resp_appl_id
209 );
210
211 /* Bug 1940353 End */
212
213 -- 4363092 MOAC Changes, Added code to do MO initialization and set the context to 'S'
214
215 l_ou_id := p_operating_unit_id;
216
217 PA_MOAC_UTILS.MO_INIT_SET_CONTEXT
218 (
219 p_org_id => l_ou_id
220 , p_product_code => 'PA'
221 , p_msg_count => l_msg_count
222 , p_msg_data => l_msg_data
223 , p_return_status => l_return_status
224 );
225
226 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
227 RAISE FND_API.G_EXC_ERROR ;
228 END IF ;
229
230 -- 4363092 end
231
232 /*
233 Changed the call to the procedure Apps_Initalize to get the application Id
234 according to the responsibility and to avoide the hardcoding of the application id
235 FND_GLOBAL.Apps_Initialize
236 (user_id => p_user_id
237 , resp_id => p_responsibility_id
238 , resp_appl_id => 275
239 );
240 */
241
242 --bug 2471668
243 --Advanced Security model changes
244 --Initialize the global flag G_ADVANCED_PROJ_SEC_FLAG
245 G_ADVANCED_PROJ_SEC_FLAG := p_advanced_proj_sec_flag;
246 --bug 2471668
247
248 -- Make Sure AMG Licensed
249 /* Commented out the AMG licensing. Please refer bug 2988747 for more info.
250 IF p_calling_mode <> 'PUBLISH' --bug 2783845
251 THEN
252 IF ( FND_PROFILE.Value('PA_AMG_LICENSED') IS NULL OR
253 FND_PROFILE.Value('PA_AMG_LICENSED') <> 'Y')
254 THEN
255 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR)
256 THEN
257 FND_MESSAGE.SET_NAME('PA','PA_AMG_NOT_LICENSED');
258 FND_MSG_PUB.add;
259 END IF;
260
261 RAISE FND_API.G_EXC_ERROR;
262 END IF;
263 END IF;
264 */ --End bug 2988747
265
266 -- 11,13-NOV-97, jwhite:
267 -- Set HR Globals for Security Access
268 HR_SECURITY_UTILS.Set_Custom_Schema;
269 -- -----------------------------------------------------------------------------
270
271 create_amg_mapping_msg;
272
273 EXCEPTION
274
275 WHEN FND_API.G_EXC_ERROR
276 THEN
277
278 p_return_status := FND_API.G_RET_STS_ERROR;
279
280 FND_MSG_PUB.Count_And_Get
281 ( p_count => p_msg_count ,
282 p_data => p_msg_data );
283
284 WHEN FND_API.G_EXC_UNEXPECTED_ERROR
285 THEN
286 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
287
288 FND_MSG_PUB.Count_And_Get
289 ( p_count => p_msg_count ,
290 p_data => p_msg_data );
291
292 WHEN OTHERS
293 THEN
294
295 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
296
297 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
298 THEN
299 FND_MSG_PUB.add_exc_msg
300 ( p_pkg_name => G_PKG_NAME
301 , p_procedure_name => l_api_name );
302
303 END IF;
304
305 FND_MSG_PUB.Count_And_Get
306 ( p_count => p_msg_count ,
307 p_data => p_msg_data );
308
309 END Set_global_info;
310
311 PROCEDURE GET_DEFAULTS (p_def_char OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
312 p_def_num OUT NOCOPY NUMBER, /*Added the nocopy check for 4537865 */
313 p_def_date OUT NOCOPY DATE, /*Added the nocopy check for 4537865 */
314 p_return_status OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
315 p_msg_count OUT NOCOPY NUMBER, /*Added the nocopy check for 4537865 */
316 p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
317 ) IS
318
319 l_api_name CONSTANT VARCHAR2(30):= 'Get_Defaults';
320 BEGIN
321
322 p_return_status := FND_API.G_RET_STS_SUCCESS;
323
324 p_def_char := G_PA_MISS_CHAR;
325 p_def_num := G_PA_MISS_NUM;
326 p_def_date := G_PA_MISS_DATE;
327
328 EXCEPTION
329
330 WHEN FND_API.G_EXC_ERROR
331 THEN
332
333 p_return_status := FND_API.G_RET_STS_ERROR;
334
335 -- 4537865
336 p_def_char := NULL ;
337 p_def_num:= NULL ;
338 p_def_date := NULL ;
339
340 FND_MSG_PUB.Count_And_Get
341 ( p_count => p_msg_count ,
342 p_data => p_msg_data );
343
344 WHEN FND_API.G_EXC_UNEXPECTED_ERROR
345 THEN
346 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
347
348 -- 4537865
349 p_def_char := NULL ;
350 p_def_num:= NULL ;
351 p_def_date := NULL ;
352
353 FND_MSG_PUB.Count_And_Get
354 ( p_count => p_msg_count ,
355 p_data => p_msg_data );
356
357 WHEN OTHERS
358 THEN
359
360 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
361
362 -- 4537865
363 p_def_char := NULL ;
364 p_def_num:= NULL ;
365 p_def_date := NULL ;
366
367 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
368 THEN
369 FND_MSG_PUB.add_exc_msg
370 ( p_pkg_name => G_PKG_NAME
371 , p_procedure_name => l_api_name );
372
373 END IF;
374
375 FND_MSG_PUB.Count_And_Get
376 ( p_count => p_msg_count ,
377 p_data => p_msg_data );
378
379 END GET_DEFAULTS;
380
381
382 PROCEDURE Get_Accum_Period_Info
383 ( p_api_version_number IN NUMBER,
384 p_project_id IN NUMBER,
385 p_last_accum_period OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
386 p_last_accum_start_date OUT NOCOPY DATE, /*Added the nocopy check for 4537865 */
387 p_last_accum_end_date OUT NOCOPY DATE, /*Added the nocopy check for 4537865 */
388 p_current_reporting_period OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
389 p_current_period_start_date OUT NOCOPY DATE, /*Added the nocopy check for 4537865 */
390 p_current_period_end_date OUT NOCOPY DATE, /*Added the nocopy check for 4537865 */
391 p_return_status OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
392 p_msg_count OUT NOCOPY NUMBER, /*Added the nocopy check for 4537865 */
393 p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
394 ) IS
395 --
396 -- Cursor to select the previous accumulation period
397 -- for the given project
398 --
399 CURSOR l_proj_csr IS
400 SELECT accum_period
401 FROM pa_project_accum_headers
402 WHERE project_id = p_project_id
403 AND task_id = 0
404 AND resource_list_member_id = 0;
405
406 l_api_version_number CONSTANT NUMBER := 1.0;
407 l_api_name CONSTANT VARCHAR2(30):= 'Get_Accum_Period_Info';
408 l_prev_accum_period VARCHAR2(20) := NULL;
409 l_impl_option VARCHAR2(30);
410 l_current_pa_period VARCHAR2(20);
411 l_current_gl_period VARCHAR2(20);
412 l_current_pa_start_date DATE;
413 l_current_pa_end_date DATE;
414 l_current_gl_start_date DATE;
415 l_current_gl_end_date DATE;
416 l_current_year NUMBER;
417 l_err_stack VARCHAR2(630);
418 l_err_stage VARCHAR2(30);
419 l_err_code NUMBER;
420
421
422 BEGIN
423
424 IF NOT FND_API.Compatible_API_Call ( l_api_version_number ,
425 p_api_version_number ,
426 l_api_name ,
427 G_PKG_NAME ) THEN
428 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
429 END IF;
430
431 p_return_status := FND_API.G_RET_STS_SUCCESS;
432
433 --
434 -- Get the reporting period type, either 'PA' or 'GL'
435 --
436 PA_ACCUM_UTILS.Get_Impl_Option(
437 x_impl_option => l_impl_option,
438 x_err_stack => l_err_stack,
439 x_err_stage => l_err_stage,
440 x_err_code => l_err_code );
441
442
443 OPEN l_proj_csr;
444 FETCH l_proj_csr INTO l_prev_accum_period;
445
446 IF (l_proj_csr%NOTFOUND or l_prev_accum_period IS NULL) THEN
447
448 p_last_accum_period := NULL;
449 p_last_accum_start_date := NULL;
450 p_last_accum_end_date := NULL;
451
452 ELSE
453
454 p_last_accum_period := l_prev_accum_period;
455
456 IF (l_impl_option = 'PA') THEN
457
458 SELECT pa_start_date, pa_end_date
459 INTO p_last_accum_start_date, p_last_accum_end_date
460 FROM pa_periods_v
461 WHERE period_name = l_prev_accum_period;
462
463 ELSIF (l_impl_option = 'GL') THEN
464
465 SELECT distinct gl_start_date, gl_end_date
466 INTO p_last_accum_start_date, p_last_accum_end_date
467 FROM pa_periods_v
468 WHERE gl_period_name = l_prev_accum_period;
469
470 END IF;
471
472 END IF;
473
474 CLOSE l_proj_csr;
475
476 PA_ACCUM_UTILS.Get_Current_Period_Info (
477 x_current_pa_period => l_current_pa_period,
478 x_current_gl_period => l_current_gl_period,
479 x_current_pa_start_date => l_current_pa_start_date,
480 x_current_pa_end_date => l_current_pa_end_date,
481 x_current_gl_start_date => l_current_gl_start_date,
482 x_current_gl_end_date => l_current_gl_end_date,
483 x_current_year => l_current_year,
484 x_err_stack => l_err_stack,
485 x_err_stage => l_err_stage,
486 x_err_code => l_err_code );
487
488 IF (l_impl_option = 'GL') THEN
489
490 p_current_reporting_period := l_current_gl_period;
491 p_current_period_start_date := l_current_gl_start_date;
492 p_current_period_end_date := l_current_gl_end_date;
493
494 ELSIF (l_impl_option = 'PA') THEN
495
496 p_current_reporting_period := l_current_pa_period;
497 p_current_period_start_date := l_current_pa_start_date;
498 p_current_period_end_date := l_current_pa_end_date;
499
500 END IF;
501
502 -- Standard call to get message count and if count is 1, get message info
503 FND_MSG_PUB.Count_And_Get
504 ( p_count => p_msg_count,
505 p_data => p_msg_data
506 );
507
508 EXCEPTION
509
510 WHEN FND_API.G_EXC_ERROR THEN
511 p_return_status := FND_API.G_RET_STS_ERROR;
512
513 -- RESET OUT PARAMS : 4537865
514 p_last_accum_period := NULL ;
515 p_last_accum_start_date := NULL ;
516 p_last_accum_end_date := NULL ;
517 p_current_reporting_period := NULL ;
518 p_current_period_start_date := NULL ;
519 p_current_period_end_date := NULL;
520
521 FND_MSG_PUB.Count_And_Get (
522 p_count => p_msg_count,
523 p_data => p_msg_data );
524
525 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
526 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
527
528 -- RESET OUT PARAMS : 4537865
529 p_last_accum_period := NULL ;
530 p_last_accum_start_date := NULL ;
531 p_last_accum_end_date := NULL ;
532 p_current_reporting_period := NULL ;
533 p_current_period_start_date := NULL ;
534 p_current_period_end_date := NULL;
535
536 FND_MSG_PUB.Count_And_Get (
537 p_count => p_msg_count,
538 p_data => p_msg_data );
539
540 WHEN OTHERS THEN
541 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
542
543
544 -- RESET OUT PARAMS : 4537865
545 p_last_accum_period := NULL ;
546 p_last_accum_start_date := NULL ;
547 p_last_accum_end_date := NULL ;
548 p_current_reporting_period := NULL ;
549 p_current_period_start_date := NULL ;
550 p_current_period_end_date := NULL;
551
552 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
553
554 FND_MSG_PUB.add_exc_msg (
555 p_pkg_name => G_PKG_NAME,
556 p_procedure_name => l_api_name );
557
558 END IF;
559
560 FND_MSG_PUB.Count_And_Get (
561 p_count => p_msg_count,
562 p_data => p_msg_data );
563
564 END Get_Accum_Period_Info;
565
566 PROCEDURE Get_Release_info (
567 p_current_release OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
568 p_return_status OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
569 p_msg_count OUT NOCOPY NUMBER, /*Added the nocopy check for 4537865 */
570 p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
571 ) IS
572
573 -- This procedure returns information on which Applications Release
574 -- you are running against.
575 -- For example under Rel 10.7 the procedure returns the value
576 -- '10.7.0' and under Rel 11 the procedure returns the value
577 -- '11.0.28' . The release information is returned in the OUT parameter
578 -- p_current_release.
579
580 l_api_name CONSTANT VARCHAR2(30):= 'Get_Release_info';
581 l_rel_name VARCHAR2(60);
582 l_other VARCHAR2(60);
583 l_ret_val BOOLEAN;
584
585 BEGIN
586 l_ret_val := FND_RELEASE.get_release
587 (RELEASE_NAME => l_rel_name,
588 OTHER_RELEASE_INFO => l_other);
589
590 IF l_ret_val THEN
591 p_current_release := l_rel_name;
592 ELSE
593 RAISE FND_API.G_EXC_ERROR;
594 END IF;
595
596 p_return_status := FND_API.G_RET_STS_SUCCESS;
597
598 EXCEPTION
599
600 WHEN FND_API.G_EXC_ERROR
601 THEN
602
603 p_return_status := FND_API.G_RET_STS_ERROR;
604
605 -- RESET OUT PARAMS : 4537865
606 p_current_release := NULL ;
607
608 FND_MSG_PUB.Count_And_Get
609 ( p_count => p_msg_count ,
610 p_data => p_msg_data );
611
612 WHEN FND_API.G_EXC_UNEXPECTED_ERROR
613 THEN
614 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
615
616 -- RESET OUT PARAMS : 4537865
617 p_current_release := NULL ;
618
619 FND_MSG_PUB.Count_And_Get
620 ( p_count => p_msg_count ,
621 p_data => p_msg_data );
622
623 WHEN OTHERS
624 THEN
625
626 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
627
628 -- RESET OUT PARAMS : 4537865
629 p_current_release := NULL ;
630
631 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
632 THEN
633 FND_MSG_PUB.add_exc_msg
634 ( p_pkg_name => G_PKG_NAME
635 , p_procedure_name => l_api_name );
636
637 END IF;
638
639 FND_MSG_PUB.Count_And_Get
640 ( p_count => p_msg_count ,
641 p_data => p_msg_data );
642
643 END Get_Release_info;
644
645 -------------------------------------------------------------
646 -- Name :create_amg_mapping_msg
647 -- Type :PL/SQL Procedure
648 --Description :This procedure will populate the pl/sql table
649 -- using old message code and new message
650 -- with message context.
651 --
652 -- Called Subprograms:
653 --
654 -- History :03/17/98 Sakthivel Balasubramanian Created
655 --
656 -- Message format : create_amg_mapping_message ()
657 -------------------------------------------------------------
658 PROCEDURE create_amg_mapping_msg
659 IS
660
661 i NUMBER := 1;
662
663 BEGIN
664
665 -- PAPMPRPB.pls procedure create_project
666
667 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_CUSTOMER_NOT_OVERRIDABLE';
668 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_CUST_NOT_OVERRIDABLE_AMG';
669 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
670
671 i := i + 1;
672 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_DESCRIPTION_NOT_OVERRIDABLE';
673 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_DESC_NOT_OVERRIDABLE_AMG';
674 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
675
676 i := i + 1;
677 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_GET_CUSTOMER_INFO_FAILED';
678 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_GET_CUST_INFO_FAILED_AMG';
679 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
680
681 i := i + 1;
682 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PR_EPR_PROJ_NAME_NOT_UNIQUE';
683 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_NAME_NOT_UNIQUE_A_AMG';
684 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDP';
685
686
687 i := i + 1;
688 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PR_EPR_PROJ_NUM_NOT_UNIQUE';
689 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_NUM_NOT_UNIQUE_A_AMG';
690 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDP';
691
692 i := i+1;
693 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_SOURCE_TEMPLATE_IS_MISSING';
694 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_SOURCE_TEMP_IS_MISSING_AMG';
695 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
696
697 i := i + 1;
698 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PR_EPR_PROJ_NAME_NOT_UNIQUE';
699 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_NAME_NOT_UNIQUE_M_AMG';
700 pa_pm_message_amg_tbl(i).p_msg_context := 'MODP';
701
702 i := i + 1;
703 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PR_EPR_PROJ_NUM_NOT_UNIQUE';
704 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_NUM_NOT_UNIQUE_M_AMG';
705 pa_pm_message_amg_tbl(i).p_msg_context := 'MODP';
706
707 i := i+1;
708 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PR_INVALID_COMPLETION_DATE';
709 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_INVALID_COMP_DATE_AMG';
710 pa_pm_message_amg_tbl(i).p_msg_context := 'TASK';
711
712 i := i+1;
713 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_CHANGE_TASK_NUM_OK_FAILED';
714 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_CHANGE_TK_NUM_OK_FAIL_AMG';
715 pa_pm_message_amg_tbl(i).p_msg_context := 'MODT';
716
717 i := i+1;
718 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_CHECK_ADD_SUBTASK_FAILED';
719 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_CHECK_ADD_ST_FAILED_AMG';
720 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDT';
721
722 i := i+1;
723 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_CHECK_DEL_PROJECT_FAILED';
724 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_CHECK_DEL_PR_FAILED_AMG';
725 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
726
727 i := i+1;
728 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_CHECK_DELETE_TASK_FAILED';
729 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_CHECK_DEL_TK_FAILED_AMG';
730 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
731
732 -- 4096218
733 i := i + 1;
734 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PS_TASK_HAS_PROG';
735 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PS_TASK_HAS_PROG_AMG' ;
736 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
737
738 i := i+1;
739 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_ROLE_TYPE_NOT_OVERRIDABLE';
740 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_ROLE_TYPE_NOT_OVER_AMG';
741 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
742
743 i := i+1;
744 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_CLASS_CAT_NOT_OVERRIDABLE';
745 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_CLASS_CAT_NOT_OVER_AMG';
746 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
747
748 i := i+1;
749 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TK_OUTSIDE_PROJECT_RANGE';
750 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TK_OUTSIDE_PROJ_RANGE_AMG';
751 pa_pm_message_amg_tbl(i).p_msg_context := 'TASK';
752
753 i := i+1;
754 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJECT_REF_AND_ID_MISSING';
755 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_REF_AND_ID_MISSING_AMG';
756 pa_pm_message_amg_tbl(i).p_msg_context := 'GENERAL';
757
758 i := i+1;
759 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TOP_TASK_CHILD_NO_DELETE';
760 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TOP_TK_CHILD_NO_DEL_AMG';
761 pa_pm_message_amg_tbl(i).p_msg_context := 'TASK';
762
763 i := i+1;
764 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_INV_IND_RATE_SCH_ID_REQD';
765 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_INV_IND_RT_SCH_ID_REQD_AMG';
766 pa_pm_message_amg_tbl(i).p_msg_context := 'GENERAL';
767
768 i := i+1;
769 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_INVALID_NON_LABOR_SCH_TYPE';
770 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_INV_NON_LAB_SCH_TYPE_AMG';
771 pa_pm_message_amg_tbl(i).p_msg_context := 'GENERAL';
772
773 i := i+1;
774 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_NON_LBR_ORG_ID_NOT_VALID';
775 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_NON_LBR_ORG_ID_NT_VALID_AMG';
776 pa_pm_message_amg_tbl(i).p_msg_context := 'GENERAL';
777
778 i := i+1;
779 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_REV_IND_RATE_SCH_ID_REQD';
780 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_REV_IND_RT_SCH_ID_REQD_AMG';
781 pa_pm_message_amg_tbl(i).p_msg_context := 'GENERAL';
782
783 i := i+1;
784 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PARENT_COMPLETION_EARLIER';
785 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PARENT_COMPL_EARLIER_AMG';
786 pa_pm_message_amg_tbl(i).p_msg_context := 'TASK';
787
788 i := i+1;
789 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_RESOURCE_LIST_IS_MISSING';
790 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_RES_LIST_IS_MISSING_AMG';
791 pa_pm_message_amg_tbl(i).p_msg_context := 'BUDG';
792
793 i := i+1;
794 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_BUGDET_LINE_INDEX_MISSING';
795 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_BUGD_LINE_INDEX_MISS_AMG';
796 pa_pm_message_amg_tbl(i).p_msg_context := 'GENERAL';
797
798 i := i+1;
799 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_BUDGET_PERIOD_IS_INVALID';
800 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_BUDGET_PERIOD_IS_INV_AMG';
801 pa_pm_message_amg_tbl(i).p_msg_context := 'BUDG';
802
803 i := i+1;
804 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_CALC_BURDENED_COST_FAILED';
805 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_CALC_BURD_COST_FAILED_AMG';
806 pa_pm_message_amg_tbl(i).p_msg_context := 'BUDG';
807
808 i := i+1;
809 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_GET_DRAFT_VERSION_FAILED';
810 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_GET_DRAFT_VER_FAILED_AMG';
811 pa_pm_message_amg_tbl(i).p_msg_context := 'BUDG';
812
813 i := i+1;
814 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_BUDGET_LINE_ALREADY_EXISTS';
815 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_BUD_LINE_ALREADY_EXISTS_AMG';
816 pa_pm_message_amg_tbl(i).p_msg_context := 'BUDG';
817
818 i := i+1;
819 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TASK_IS_NOT_TOP_OR_LOWEST';
820 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TASK_IS_NOT_TOP_OR_LOW_AMG';
821 pa_pm_message_amg_tbl(i).p_msg_context := 'TASK';
822
823 -- lower level API's
824
825 i := i + 1;
826 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PR_EPR_PROJ_NAME_NOT_UNIQUE';
827 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_NAME_NOT_UNIQUE_AMG';
828 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
829
830 i := i + 1; /***Added for 3650505**/
831 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_INVALID_CLASS_CATEGORY';
832 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_INVALID_CLASS_CATEGORY_AMG';
833 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
834
835 /**changed ended for 3650505**/
836
837 i := i + 1;
838 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PR_EPR_PROJ_NUM_NOT_UNIQUE';
839 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_NUM_NOT_UNIQUE_AMG';
840 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
841
842 i := i+1;
843 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_BU_AMT_ALLOC_LT_AMT_ACCRUED';
844 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_BU_AMT_ALLOC_LT_ACCR_AMG';
845 pa_pm_message_amg_tbl(i).p_msg_context := 'BUDG';
846
847 i := i+1;
848 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_BU_UNBALANCED_PROJ_BUDGET';
849 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_BU_UNBAL_PROJ_BUDG_AMG';
850 pa_pm_message_amg_tbl(i).p_msg_context := 'BUDG';
851
852 i := i+1;
853 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_BU_UNBALANCED_TASK_BUDGET';
854 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_BU_UNBAL_TASK_BUDG_AMG';
855 pa_pm_message_amg_tbl(i).p_msg_context := 'BUDG';
856
857 i := i+1;
858 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TASK_FUND_NO_PROJ_EVENTS';
859 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TASK_FUND_NO_PROJ_EVT_AMG';
860 pa_pm_message_amg_tbl(i).p_msg_context := 'BUDG';
861
862 i := i+1;
863 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_NO_TASK_ID';
864 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_NO_TASK_ID_D_AMG';
865 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
866
867 i := i+1;
868 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TASK_BURDEN_SUM_DEST';
869 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TASK_BURDEN_SUM_DEST_D_AMG';
870 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
871
872 i := i+1;
873 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_AP_INV_EXIST';
874 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_AP_INV_EXIST_D_AMG';
875 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
876
877 i := i+1;
878 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_BUDGET_EXIST';
879 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_BUDGET_EXIST_D_AMG';
880 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
881
882 i := i+1;
883 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_CMT_TXN_EXIST';
884 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_CMT_TXN_EXIST_D_AMG';
885 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
886
887 i := i+1;
888 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_COMP_RULE_SET_EXIST';
889 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_RULE_SET_EXIST_D_AMG';
890 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
891
892 i := i+1;
893 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_EVENT_EXIST';
894 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_EVENT_EXIST_D_AMG';
895 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
896
897 i := i+1;
898 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_EXP_ITEM_EXIST';
899 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_EXP_ITEM_EXIST_D_AMG';
900 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
901
902 i := i+1;
903 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_FUND_EXIST';
904 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_FUND_EXIST_D_AMG';
905 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
906
907 i := i+1;
908 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_PO_DIST_EXIST';
909 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_PO_DIST_EXIST_D_AMG';
910 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
911
912 i := i+1;
913 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_PO_REQ_DIST_EXIST';
914 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_PO_REQ_DIST_EXIST_D_AMG';
915 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
916
917 i := i+1;
918 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_NO_TASK_ID';
919 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_NO_TASK_ID_ST_AMG';
920 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
921
922 i := i+1;
923 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_NO_TOP_TASK_ID';
924 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_NO_TOP_TASK_ID_ST_AMG';
925 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
926
927 i := i+1;
928 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_BURDEN_SUM_DEST';
929 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_BURDEN_SUM_DEST_ST_AMG';
930 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
931
932 i := i+1;
933 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_ASSET_ASSIGNMT_EXIST';
934 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_ASSETASSIG_EXIST_ST_AMG';
935 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
936
937 i := i+1;
938 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_BUDGET_EXIST';
939 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_BUDGET_EXIST_ST_AMG';
940 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
941
942 i := i+1;
943 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_BURDEN_SCH_OVRIDE_EXIST';
944 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_BUR_SCHOVR_EXIST_ST_AMG';
945 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
946
947 i := i+1;
948 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_JOB_BILL_RATE_O_EXIST';
949 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_JBILL_RATE_EXIST_ST_AMG';
950 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
951
952 i := i+1;
953 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_LABOR_MULTIPLIER_EXIST';
954 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_LAB_MULT_EXIST_ST_AMG';
955 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
956
957 i := i+1;
958 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_NL_BILL_RATE_O_EXIST';
959 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_NLBIL_RAT_EXIST_ST_AMG';
960 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
961
962 i := i+1;
963 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_PCT_COMPL_EXIST';
964 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_PCT_COMPL_EXIST_ST_AMG';
965 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
966
967 i := i+1;
968 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_PCT_COMPL_EXIST';
969 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_PCT_COMPL_EXIST_D_AMG';
970 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
971
972 i := i+1;
973 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_TXN_CONST_EXIST';
974 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_TXN_CONST_EXIST_ST_AMG';
975 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
976
977 i := i+1;
978 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_JOB_BILL_TITLE_O_EXIST';
979 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_JBILLTITLE_EXIST_ST_AMG';
980 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
981
982 i := i+1;
983 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_JOB_ASSIGNMENT_O_EXIST';
984 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_JOBASSIG_O_EXIST_ST_AMG';
985 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
986
987 i := i+1;
988 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_EXP_ITEM_EXIST';
989 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_EXP_ITEM_EXIST_ST_AMG';
990 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
991
992 i := i+1;
993 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_PO_DIST_EXIST';
994 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_PO_DIST_EXIST_ST_AMG';
995 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
996
997 i := i+1;
998 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_PO_REQ_DIST_EXIST';
999 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_PO_REQDIST_EXIST_ST_AMG';
1000 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
1001
1002 i := i+1;
1003 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_AP_INV_EXIST';
1004 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_AP_INV_EXIST_ST_AMG';
1005 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
1006
1007 i := i+1;
1008 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_AP_INV_DIST_EXIST';
1009 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_APINV_DIST_EXIST_ST_AMG';
1010 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
1011
1012 i := i+1;
1013 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_NO_PROJ_ID';
1014 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_NO_PROJ_ID_D_AMG';
1015 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1016
1017 i := i+1;
1018 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_AP_INV_DIST_EXIST';
1019 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_INV_DIST_EXIST_D_AMG';
1020 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1021
1022 i := i+1;
1023 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_AP_INV_EXIST';
1024 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_AP_INV_EXIST_D_AMG';
1025 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1026
1027 i := i+1;
1028 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_BUDGET_EXIST';
1029 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_BUDGET_EXIST_D_AMG';
1030 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1031
1032 i := i+1;
1033 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_BURDEN_SUM_DEST';
1034 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_BURDEN_SUM_DEST_D_AMG';
1035 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1036
1037 i := i+1;
1038 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_CMT_TXN_EXIST';
1039 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_CMT_TXN_EXIST_D_AMG';
1040 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1041
1042 i := i+1;
1043 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_COMP_RULE_SET_EXIST';
1044 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_COM_RUL_SET_EXIST_D_AMG';
1045 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1046
1047 i := i+1;
1048 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_CREATED_REF_EXIST';
1049 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_CREATED_REF_EXIST_D_AMG';
1050 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1051
1052 i := i+1;
1053 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_EVENT_EXIST';
1054 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_EVENT_EXIST_D_AMG';
1055 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1056
1057 i := i+1;
1058 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_EXP_ITEM_EXIST';
1059 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_EXP_ITEM_EXIST_D_AMG';
1060 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1061
1062 i := i+1;
1063 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_FUND_EXIST';
1064 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_FUND_EXIST_D_AMG';
1065 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1066
1067 i := i+1;
1068 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_IN_USE_EXTERNAL';
1069 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_IN_USE_EXTERNAL_D_AMG';
1070 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1071
1072 i := i+1;
1073 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_PO_DIST_EXIST';
1074 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_PO_DIST_EXIST_D_AMG';
1075 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1076
1077 i := i+1;
1078 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_PO_REQ_DIST_EXIST';
1079 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_PORDIST_EXIST_D_AMG';
1080 pa_pm_message_amg_tbl(i).p_msg_context := 'DELP';
1081
1082 i := i+1;
1083 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TASK_IN_USE_EXTERNAL';
1084 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TASK_IN_USE_EXTERNAL_D_AMG';
1085 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
1086
1087 i := i+1;
1088 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_AP_INV_DIST_EXIST';
1089 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_AP_INV_DIST_EXIST_D_AMG';
1090 pa_pm_message_amg_tbl(i).p_msg_context := 'DELT';
1091
1092 i := i+1;
1093 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TASK_BURDEN_SUM_DEST';
1094 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TASK_BURDEN_SUM_ST_AMG';
1095 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
1096
1097 i := i+1;
1098 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_EMP_BILL_RATE_O_EXIST';
1099 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_EBILLRATE_EXIST_ST_AMG';
1100 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
1101
1102 i := i+1;
1103 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_LABOR_COST_MUL_EXIST';
1104 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_LCOST_MUL_EXIST_ST_AMG';
1105 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
1106
1107 i := i+1;
1108 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_TXN_CONT_EXIST';
1109 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_TXN_CONT_EXIST_ST_AMG';
1110 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
1111
1112 /* Added this part of code as fix for bug 1538208 */
1113 /* start of fix */
1114 i := i+1;
1115 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_TSK_CC_PROJ_EXIST';
1116 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_TSK_CC_PROJ_ST_EXIST_AMG';
1117 pa_pm_message_amg_tbl(i).p_msg_context := 'ADDST';
1118 /* End of fix */
1119 i := i+1;
1120 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_NO_ORIG_PROJ_ID';
1121 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_NO_ORIG_PROJ_ID_AMG';
1122 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
1123
1124 i := i+1;
1125 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_NO_PROJ_CREATED';
1126 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_NO_PROJ_CREATED_AMG';
1127 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
1128
1129 i := i+1;
1130 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PR_NO_PROJ_NAME';
1131 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_NO_PROJ_NAME_AMG';
1132 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
1133
1134 i := i+1;
1135 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PR_NO_PROJ_NUM';
1136 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_NO_PROJ_NUM_AMG';
1137 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
1138
1139 i := i+1;
1140 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PR_START_DATE_NEEDED';
1141 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_START_DATE_NEEDED_AMG';
1142 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
1143
1144 i := i+1;
1145 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJ_ORG_NOT_ACTIVE';
1146 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PROJ_ORG_NOT_ACTIVE_AMG';
1147 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
1148
1149 i := i+1;
1150 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_SU_INVALID_DATES';
1151 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_SU_INVALID_DATES_AMG';
1152 pa_pm_message_amg_tbl(i).p_msg_context := 'PROJ';
1153
1154 i := i+1;
1155 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_FUNCTION_SECURITY_ENFORCED';
1156 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_FUNC_SECURITY_ENFORCED_AMG';
1157 pa_pm_message_amg_tbl(i).p_msg_context := 'GENERAL';
1158
1159 i := i+1;
1160 pa_pm_message_amg_tbl(i).p_old_message_code := 'PA_PROJECT_SECURITY_ENFORCED';
1161 pa_pm_message_amg_tbl(i).p_new_message_code := 'PA_PR_SECURITY_ENFORCED_AMG';
1162 pa_pm_message_amg_tbl(i).p_msg_context := 'GENERAL';
1163
1164 RETURN;
1165
1166 END create_amg_mapping_msg;
1167
1168 -----------------------------------------------------------
1169 -- Name :Get_new_message_code
1170 -- Type :PL/SQL Procedure
1171 --Description :This objective of this API is to get new
1172 -- message code mapped with old message code
1173 -- and message context.
1174 --
1175 -- Called Subprograms:
1176 --
1177 -- History :03/17/98 Sakthivel Balasubramanian Created
1178 --
1179 -- Message format : get_new_message_code()
1180 -----------------------------------------------------------
1181
1182 FUNCTION get_new_message_code
1183 ( p_message_code IN VARCHAR2 :=FND_API.G_FALSE
1184 ,p_msg_context IN VARCHAR2 := FND_API.G_FALSE
1185 ) RETURN VARCHAR2
1186 IS
1187 p_new_message_code VARCHAR2(50);
1188 i NUMBER :=1;
1189 tot_num_record NUMBER :=0;
1190 BEGIN
1191
1192 IF pa_pm_message_amg_tbl.EXISTS(1) THEN
1193 tot_num_record := pa_pm_message_amg_tbl.COUNT;
1194 END IF;
1195
1196 FOR i IN 1.. tot_num_record
1197 LOOP
1198
1199 IF pa_pm_message_amg_tbl(i).p_old_message_code = p_message_code
1200 AND pa_pm_message_amg_tbl(i).p_msg_context = p_msg_context
1201 THEN
1202 p_new_message_code := pa_pm_message_amg_tbl(i).p_new_message_code;
1203 exit;
1204 END IF;
1205
1206 END LOOP;
1207
1208 IF p_new_message_code IS NULL
1209 THEN
1210 --FND_MESSAGE.SET_NAME('PA','PA_PR_NO_NEW_MESSAGE_CODE');
1211 /* We just need to return the message. map_new_amg_msg will add this message to stack
1212 Dicussed with Sakthi.
1213 FND_MESSAGE.SET_NAME('PA', p_message_code);
1214 FND_MSG_PUB.add;
1215 APP_EXCEPTION.RAISE_EXCEPTION;
1216 */
1217 RETURN p_message_code;
1218 ELSE
1219 RETURN (p_new_message_code);
1220 END IF;
1221
1222 END get_new_message_code;
1223
1224 ------------------------------------------------------------------
1225 -- Name :map_new_amg_msg
1226 -- Type :PL/SQL Procedure
1227 -- Description :This procedure will map old message with pl/sql
1228 -- table and display new meaningful
1229 -- message to user.
1230 --
1231 -- Called Subprograms:
1232 --
1233 -- History :03/17/98 Sakthivel Balasubramanian Created
1234 --
1235 -- Message format :
1236 --map_new_amg_msg ( 'Message_Code','CHANGE/SPLIT', 'Y/N',
1237 -- 'GENERAL/ADDP/MODP/DELP/PROJ/ADDB/MODB/DELB/BUDG/
1238 -- ADDT/MODT/DELT/TASK/ADDST/MODST/DELST',
1239 -- '','','','','');
1240 ------------------------------------------------------------------
1241
1242 PROCEDURE map_new_amg_msg
1243 ( p_old_message_code IN VARCHAR2 :=FND_API.G_FALSE
1244 ,p_msg_attribute IN VARCHAR2 := FND_API.G_FALSE
1245 ,p_resize_flag IN VARCHAR2 := FND_API.G_FALSE
1246 ,p_msg_context IN VARCHAR2 := FND_API.G_FALSE
1247 ,p_attribute1 IN VARCHAR2 := FND_API.G_FALSE
1248 ,p_attribute2 IN VARCHAR2 := FND_API.G_FALSE
1249 ,p_attribute3 IN VARCHAR2 := FND_API.G_FALSE
1250 ,p_attribute4 IN VARCHAR2 := FND_API.G_FALSE
1251 ,p_attribute5 IN VARCHAR2 := FND_API.G_FALSE
1252 )
1253 IS
1254 p_new_message_code VARCHAR2(50);
1255 i BINARY_INTEGER := 1000;
1256 l_msg_count_index NUMBER;
1257 l_msg_count NUMBER;
1258 l_data VARCHAR2(2000);
1259 BEGIN
1260
1261 -- p_old_message_code is mandatory
1262 --Added below if condition for bug 4762153
1263 IF p_msg_attribute = 'NOCHANGE'
1264 THEN
1265 p_new_message_code := p_old_message_code;
1266 END IF;
1267 IF p_msg_attribute = 'CHANGE' AND p_resize_flag = 'N'
1268 THEN
1269 p_new_message_code := p_old_message_code || '_AMG';
1270 ELSIF p_msg_attribute = 'CHANGE' AND p_resize_flag = 'Y'
1271 THEN
1272 --get the new error message code associated to the old
1273 --message code and p_msg_context
1274 p_new_message_code := get_new_message_code(p_old_message_code,
1275 p_msg_context);
1276 ELSIF p_msg_attribute = 'SPLIT' AND p_resize_flag = 'Y'
1277 THEN
1278 --get the new error message code associated to the old
1279 --message code and p_msg_context
1280 p_new_message_code := get_new_message_code(p_old_message_code,
1281 p_msg_context);
1282 ELSIF p_msg_attribute = 'SPLIT' AND p_resize_flag = 'N'
1283 THEN
1284 IF p_msg_context in ('ADDP','ADDB','ADDT')
1285 THEN
1286 p_new_message_code := p_old_message_code || '_A'||'_AMG';
1287 ELSIF p_msg_context in ('MODP','MODB','MODT')
1288 THEN
1289 p_new_message_code := p_old_message_code || '_M'||'_AMG';
1290 ELSIF p_msg_context in ('DELP','DELB','DELT')
1291 THEN
1292 p_new_message_code := p_old_message_code || '_D'||'_AMG';
1293 ELSIF p_msg_context in ('ADDST','MODST','DELST')
1294 THEN
1295 IF p_msg_context = 'ADDST'
1296 THEN
1297 p_new_message_code := p_old_message_code || '_ST'||'_AMG';
1298 ELSIF p_msg_context = 'MODST'
1299 THEN
1300 p_new_message_code := p_old_message_code || '_MT'||'_AMG';
1301 ELSIF p_msg_context = 'DELST'
1302 THEN
1303 p_new_message_code := p_old_message_code || '_DT'||'_AMG';
1304 END IF;
1305 END IF;
1306 END IF;
1307
1308 FND_MESSAGE.SET_NAME('PA',p_new_message_code);
1309
1310 -- <Bug#2840688>
1311 IF (p_new_message_code <> p_old_message_code)
1312 THEN
1313 -- <Bug#2840688>
1314
1315 -- ***********START MODIFICATIONS FOR THE AGREEMENT AND FUNDING AMG API's
1316
1317 IF p_msg_context in ('AGREEMENT')
1318 THEN
1319 FND_MESSAGE.SET_TOKEN('AGREEMENT', p_attribute1);
1320 -- p_attribute1 = agreement_reference
1321 END IF;
1322
1323 IF p_msg_context in ('FUNDING')
1324 THEN
1325 FND_MESSAGE.SET_TOKEN('FUNDING', p_attribute2);
1326 -- p_attribute2 = funding_reference
1327 END IF;
1328
1329 -- **********END MODIFICATIONS FOR THE AGREEMENT AND FUNDING AMG API's
1330
1331 -- ***********START MODIFICATIONS FOR THE EVENT AMG API's
1332 IF p_msg_context in ('EVENT')
1333 THEN
1334 FND_MESSAGE.SET_TOKEN('EVENT', p_attribute1);
1335 END IF;
1336
1337 -- **********END MODIFICATIONS FOR THE EVENT AMG API's
1338 /* Added EVENT check for bug#3009144 */
1339 IF p_msg_context not in ('GENERAL','AGREEMENT','FUNDING','EVENT')
1340 THEN
1341 FND_MESSAGE.SET_TOKEN('PROJECT', p_attribute1);
1342 -- p_attribute1 = project_id
1343 END IF;
1344
1345 IF p_msg_context in ('ADDT','MODT','DELT','TASK',
1346 'ADDST','MODST','DELST')
1347 THEN
1348 FND_MESSAGE.SET_TOKEN('TASK', p_attribute2);
1349 -- p_attribute2 = task_id
1350 ELSIF p_msg_context in ('ADDB','MODB','DELB','BUDG')
1351 THEN
1352 FND_MESSAGE.SET_TOKEN('TASK', p_attribute2);
1353 -- p_attribute2 = task_id
1354 FND_MESSAGE.SET_TOKEN('BUDGET_TYPE', p_attribute3);
1355 -- p_attribute3 = budget_type
1356 FND_MESSAGE.SET_TOKEN('SOURCE_NAME', p_attribute4);
1357 -- p_attribute4 = resource_name
1358 FND_MESSAGE.SET_TOKEN('START_DATE', p_attribute5);
1359 -- p_attribute5 = start_date
1360 END IF;
1361
1362 END IF; --<Bug#2840688/>
1363 FND_MSG_PUB.add;
1364 RETURN;
1365
1366 END map_new_amg_msg;
1367
1368 ------------------------------------------------------------------
1369 -- Name :get_task_number_amg
1370 -- Type :PL/SQL Procedure
1371 -- Description :This function will get task number to calling
1372 -- procedure.
1373 --
1374 -- Called Subprograms:
1375 --
1376 -- History :03/17/98 Sakthivel Balasubramanian Created
1377 --
1378 -- Message format :
1379 --
1380 --get_task_number_amg ( task_number, task_reference, task_id);
1381 --
1382 ------------------------------------------------------------------
1383
1384 FUNCTION get_task_number_amg
1385 ( p_task_number IN VARCHAR2 := FND_API.G_MISS_CHAR
1386 ,p_task_reference IN VARCHAR2 := FND_API.G_MISS_CHAR
1387 ,p_task_id IN VARCHAR2 := FND_API.G_MISS_CHAR
1388 )
1389 RETURN VARCHAR2 IS
1390
1391 p_result_task_number VARCHAR2(50);
1392 p_result_task_name VARCHAR2(20);
1393 p_result_task_reference VARCHAR2(25);
1394 CURSOR l_amg_task_csr
1395 (p_pa_task_id pa_tasks.task_id%type)
1396 IS
1397 SELECT task_name,
1398 pm_task_reference
1399 FROM pa_tasks p
1400 WHERE p.task_id = p_pa_task_id;
1401
1402 BEGIN
1403
1404 p_result_task_number := NULL;
1405
1406 IF p_task_number IS NOT NULL and p_task_reference IS NOT NULL
1407 THEN
1408 p_result_task_number := substrb(p_task_number,1,20)||'-'||p_task_reference; --Bug 5733285. Added substrb
1409 ELSIF p_task_id IS NOT NULL AND p_task_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM -- Bug 6518944
1410 THEN
1411 OPEN l_amg_task_csr( p_task_id );
1412 FETCH l_amg_task_csr INTO p_result_task_name, p_result_task_reference;
1413 CLOSE l_amg_task_csr;
1414 p_result_task_number := p_result_task_name||'-'||p_result_task_reference;
1415 END IF;
1416
1417 RETURN(p_result_task_number);
1418
1419 END get_task_number_amg;
1420
1421 END PA_INTERFACE_UTILS_PUB;