4: G_PKG_NAME CONSTANT VARCHAR2(30) := 'PA_DELIVERABLE_PROGRESS_PUB';
5:
6: PROCEDURE UPDATE_DELIVERABLE_PROGRESS(
7: p_api_version IN NUMBER := 1.0 ,
8: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
9: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
10: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
11: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
12: p_calling_module IN VARCHAR2 := 'SELF_SERVICE' ,
5:
6: PROCEDURE UPDATE_DELIVERABLE_PROGRESS(
7: p_api_version IN NUMBER := 1.0 ,
8: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
9: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
10: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
11: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
12: p_calling_module IN VARCHAR2 := 'SELF_SERVICE' ,
13: p_action IN VARCHAR2 := 'SAVE' ,
6: PROCEDURE UPDATE_DELIVERABLE_PROGRESS(
7: p_api_version IN NUMBER := 1.0 ,
8: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
9: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
10: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
11: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
12: p_calling_module IN VARCHAR2 := 'SELF_SERVICE' ,
13: p_action IN VARCHAR2 := 'SAVE' ,
14: p_bulk_load_flag IN VARCHAR2 := 'N' ,
7: p_api_version IN NUMBER := 1.0 ,
8: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
9: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
10: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
11: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
12: p_calling_module IN VARCHAR2 := 'SELF_SERVICE' ,
13: p_action IN VARCHAR2 := 'SAVE' ,
14: p_bulk_load_flag IN VARCHAR2 := 'N' ,
15: p_progress_mode IN VARCHAR2 := 'FUTURE' ,
181: pa_debug.write(x_Module=>'PA_DELIVERABLE_PROGRESS_PUB.UPDATE_DELIVERABLE_PROGRESS', x_Msg => 'p_structure_type='||p_structure_type, x_Log_Level=> 3);
182: END IF;
183:
184:
185: IF (p_commit = FND_API.G_TRUE) THEN
186: savepoint UPDATE_DELIVERABLE_PROGRESS;
187: END IF;
188:
189: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version, p_api_version, l_api_name, g_pkg_name) then
185: IF (p_commit = FND_API.G_TRUE) THEN
186: savepoint UPDATE_DELIVERABLE_PROGRESS;
187: END IF;
188:
189: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version, p_api_version, l_api_name, g_pkg_name) then
190: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
191: END IF;
192:
193: IF FND_API.TO_BOOLEAN(nvl(p_init_msg_list,FND_API.G_FALSE)) THEN
186: savepoint UPDATE_DELIVERABLE_PROGRESS;
187: END IF;
188:
189: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version, p_api_version, l_api_name, g_pkg_name) then
190: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
191: END IF;
192:
193: IF FND_API.TO_BOOLEAN(nvl(p_init_msg_list,FND_API.G_FALSE)) THEN
194: FND_MSG_PUB.initialize;
189: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version, p_api_version, l_api_name, g_pkg_name) then
190: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
191: END IF;
192:
193: IF FND_API.TO_BOOLEAN(nvl(p_init_msg_list,FND_API.G_FALSE)) THEN
194: FND_MSG_PUB.initialize;
195: END IF;
196:
197: x_return_status := FND_API.G_RET_STS_SUCCESS;
193: IF FND_API.TO_BOOLEAN(nvl(p_init_msg_list,FND_API.G_FALSE)) THEN
194: FND_MSG_PUB.initialize;
195: END IF;
196:
197: x_return_status := FND_API.G_RET_STS_SUCCESS;
198:
199:
200: --bug 4185364, start
201: -- if action is SAVE then delete al the present and future working records.
287: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
288: ,p_msg_name => 'PA_TP_DLVR_CANT_NTER_PRG_CANCEL');
289: x_msg_data := 'PA_TP_DLVR_CANT_NTER_PRG_CANCEL';
290: x_return_status := 'E';
291: RAISE FND_API.G_EXC_ERROR;
292: END IF;
293: */
294:
295: IF g1_debug_mode = 'Y' THEN
315: ,p_token1 => 'DEL_NAME' -- Bug 6497559
316: ,p_value1 => l_del_name
317: );
318: x_msg_data := 'PA_TP_CANT_NTER_DEL_CANCEL_AMG';
319: x_return_status := FND_API.G_RET_STS_ERROR;
320: RAISE FND_API.G_EXC_ERROR;
321: END IF;
322:
323: IF g1_debug_mode = 'Y' THEN
316: ,p_value1 => l_del_name
317: );
318: x_msg_data := 'PA_TP_CANT_NTER_DEL_CANCEL_AMG';
319: x_return_status := FND_API.G_RET_STS_ERROR;
320: RAISE FND_API.G_EXC_ERROR;
321: END IF;
322:
323: IF g1_debug_mode = 'Y' THEN
324: pa_debug.write(x_Module=>'PA_DELIVERABLE_PROGRESS_PUB.UPDATE_DELIVERABLE_PROGRESS', x_Msg => 'After Checking Deliverable Cancelled/On Hold Status', x_Log_Level=> 3);
360: ,p_msg_name => 'PA_TP_CANT_ENTER_DEL_PROG_AMG'
361: ,p_token1 => 'DEL_NAME' -- Bug 6497559
362: ,p_value1 => l_del_name);
363: x_msg_data := 'PA_TP_CANT_ENTER_DEL_PROG_AMG';
364: x_return_status := FND_API.G_RET_STS_ERROR;
365: RAISE FND_API.G_EXC_ERROR;
366: END IF;
367:
368: IF p_progress_mode <> 'FUTURE'
361: ,p_token1 => 'DEL_NAME' -- Bug 6497559
362: ,p_value1 => l_del_name);
363: x_msg_data := 'PA_TP_CANT_ENTER_DEL_PROG_AMG';
364: x_return_status := FND_API.G_RET_STS_ERROR;
365: RAISE FND_API.G_EXC_ERROR;
366: END IF;
367:
368: IF p_progress_mode <> 'FUTURE'
369: THEN
369: THEN
370: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
371: ,p_msg_name => 'PA_TP_WRONG_PRG_MODE4');
372: x_msg_data := 'PA_TP_WRONG_PRG_MODE4';
373: x_return_status := FND_API.G_RET_STS_ERROR;
374: RAISE FND_API.G_EXC_ERROR;
375: END IF;
376:
377: IF p_as_of_date = PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE OR p_as_of_date IS NULL
370: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
371: ,p_msg_name => 'PA_TP_WRONG_PRG_MODE4');
372: x_msg_data := 'PA_TP_WRONG_PRG_MODE4';
373: x_return_status := FND_API.G_RET_STS_ERROR;
374: RAISE FND_API.G_EXC_ERROR;
375: END IF;
376:
377: IF p_as_of_date = PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE OR p_as_of_date IS NULL
378: THEN
380: ,p_msg_name => 'PA_TP_INV_AOD_AMG'
381: ,p_token1 => 'DEL_NAME' -- Bug 6497559
382: ,p_value1 => l_del_name);
383: x_msg_data := 'PA_TP_INV_AOD';
384: x_return_status := FND_API.G_RET_STS_ERROR;
385: RAISE FND_API.G_EXC_ERROR;
386: END IF;
387:
388: /* FPM Dev CR 3
381: ,p_token1 => 'DEL_NAME' -- Bug 6497559
382: ,p_value1 => l_del_name);
383: x_msg_data := 'PA_TP_INV_AOD';
384: x_return_status := FND_API.G_RET_STS_ERROR;
385: RAISE FND_API.G_EXC_ERROR;
386: END IF;
387:
388: /* FPM Dev CR 3
389: IF p_progress_status_code = PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR OR p_progress_status_code IS NULL
390: THEN
391: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
392: ,p_msg_name => 'PA_TP_INV_PRG_STAT');
393: x_msg_data := 'PA_TP_INV_PRG_STAT';
394: x_return_status := FND_API.G_RET_STS_ERROR;
395: RAISE FND_API.G_EXC_ERROR;
396: END IF;
397: */
398: -- FPM Dev CR 3 : Defaulting Progress Status
391: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
392: ,p_msg_name => 'PA_TP_INV_PRG_STAT');
393: x_msg_data := 'PA_TP_INV_PRG_STAT';
394: x_return_status := FND_API.G_RET_STS_ERROR;
395: RAISE FND_API.G_EXC_ERROR;
396: END IF;
397: */
398: -- FPM Dev CR 3 : Defaulting Progress Status
399: IF p_progress_status_code = PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR OR p_progress_status_code IS NULL
410: ,p_token1 => 'DEL_NAME'
411: ,p_value1 => l_del_name
412: ); -- FPM Dev CR 1 : Changed message
413: x_msg_data := 'PA_TP_INV_DLV_STAT_AMG';
414: x_return_status := FND_API.G_RET_STS_ERROR;
415: RAISE FND_API.G_EXC_ERROR;
416: END IF;
417:
418: IF g1_debug_mode = 'Y' THEN
411: ,p_value1 => l_del_name
412: ); -- FPM Dev CR 1 : Changed message
413: x_msg_data := 'PA_TP_INV_DLV_STAT_AMG';
414: x_return_status := FND_API.G_RET_STS_ERROR;
415: RAISE FND_API.G_EXC_ERROR;
416: END IF;
417:
418: IF g1_debug_mode = 'Y' THEN
419: pa_debug.write(x_Module=>'PA_DELIVERABLE_PROGRESS_PUB.UPDATE_DELIVERABLE_PROGRESS', x_Msg => 'After mode, status, as of date check', x_Log_Level=> 3);
441: ,x_msg_count => l_msg_count
442: ,x_msg_data => l_msg_data
443: );
444:
445: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
446: x_return_status := FND_API.G_RET_STS_ERROR;
447: RAISE FND_API.G_EXC_ERROR;
448: END IF;
449: IF g1_debug_mode = 'Y' THEN
442: ,x_msg_data => l_msg_data
443: );
444:
445: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
446: x_return_status := FND_API.G_RET_STS_ERROR;
447: RAISE FND_API.G_EXC_ERROR;
448: END IF;
449: IF g1_debug_mode = 'Y' THEN
450: pa_debug.write(x_Module=>'PA_DELIVERABLE_PROGRESS_PUB.UPDATE_DELIVERABLE_PROGRESS', x_Msg => 'After Checking Deliverable Status Change allowed', x_Log_Level=> 3);
443: );
444:
445: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
446: x_return_status := FND_API.G_RET_STS_ERROR;
447: RAISE FND_API.G_EXC_ERROR;
448: END IF;
449: IF g1_debug_mode = 'Y' THEN
450: pa_debug.write(x_Module=>'PA_DELIVERABLE_PROGRESS_PUB.UPDATE_DELIVERABLE_PROGRESS', x_Msg => 'After Checking Deliverable Status Change allowed', x_Log_Level=> 3);
451: END IF;
503: ,p_token1 => 'DEL_NAME'
504: ,p_value1 => l_del_name
505: );
506: x_msg_data := 'PA_PERC_COMP_INV_DLV_AMG';
507: x_return_status := FND_API.G_RET_STS_ERROR;
508: RAISE FND_API.G_EXC_ERROR;
509: END IF;
510:
511:
504: ,p_value1 => l_del_name
505: );
506: x_msg_data := 'PA_PERC_COMP_INV_DLV_AMG';
507: x_return_status := FND_API.G_RET_STS_ERROR;
508: RAISE FND_API.G_EXC_ERROR;
509: END IF;
510:
511:
512: /* IF (l_percent_complete < 100 AND l_percent_complete_flag = 'Y') THEN
528: p_msg_name => 'PA_TP_INV_DEL_STATUS',
529: P_TOKEN1 => 'OBJECT_ID',
530: P_VALUE1 => p_object_id);
531: x_msg_data := 'PA_TP_INV_DEL_STATUS';
532: x_return_status := FND_API.G_RET_STS_ERROR;
533: RAISE FND_API.G_EXC_ERROR;
534: END;
535:
536: --l_task_id is validated in pa_status_pub itself
529: P_TOKEN1 => 'OBJECT_ID',
530: P_VALUE1 => p_object_id);
531: x_msg_data := 'PA_TP_INV_DEL_STATUS';
532: x_return_status := FND_API.G_RET_STS_ERROR;
533: RAISE FND_API.G_EXC_ERROR;
534: END;
535:
536: --l_task_id is validated in pa_status_pub itself
537: --l_as_of_date is validated in pa_status_pub
547: p_msg_name => 'PA_INVALID_PROG_STATUS',
548: P_TOKEN1 => 'OBJECT_ID',
549: P_VALUE1 => p_object_id);
550: x_msg_data := 'PA_INVALID_PROG_STATUS';
551: x_return_status := FND_API.G_RET_STS_ERROR;
552: RAISE FND_API.G_EXC_ERROR;
553: END;
554: END IF; --p_calling_module = 'AMG'
555: -- Moved this from below while fixing for 3668168
548: P_TOKEN1 => 'OBJECT_ID',
549: P_VALUE1 => p_object_id);
550: x_msg_data := 'PA_INVALID_PROG_STATUS';
551: x_return_status := FND_API.G_RET_STS_ERROR;
552: RAISE FND_API.G_EXC_ERROR;
553: END;
554: END IF; --p_calling_module = 'AMG'
555: -- Moved this from below while fixing for 3668168
556: -- Changed by rtarway for BUG 3668168
621: ,p_msg_name => 'PA_DELP_STAT_DTES_PC_COMB_AMG'
622: ,p_token1 => 'DEL_NAME' -- Bug 6497559
623: ,p_value1 => l_del_name);
624: x_msg_data := 'PA_DELP_STAT_DTES_PC_COMB_AMG';
625: x_return_status := FND_API.G_RET_STS_ERROR;
626: RAISE FND_API.G_EXC_ERROR;
627: --END IF;
628: END IF;
629: --Added by rtarway for BUG 3668168, Else if
622: ,p_token1 => 'DEL_NAME' -- Bug 6497559
623: ,p_value1 => l_del_name);
624: x_msg_data := 'PA_DELP_STAT_DTES_PC_COMB_AMG';
625: x_return_status := FND_API.G_RET_STS_ERROR;
626: RAISE FND_API.G_EXC_ERROR;
627: --END IF;
628: END IF;
629: --Added by rtarway for BUG 3668168, Else if
630: ELSIF l_percent_complete_flag = 'N'
641: ,p_value3 => PA_TASK_UTILS.get_project_name(p_project_id)
642: ,p_token4 => 'PROJECT_NUMBER'
643: ,p_value4 => PA_TASK_UTILS.get_project_number(p_project_id));
644: x_msg_data := 'PA_TP_PCC_DISABL_AMG';
645: x_return_status := FND_API.G_RET_STS_ERROR;
646: RAISE FND_API.G_EXC_ERROR;
647: END IF;
648: -- Added by rtarway , date validation check
649: IF l_del_status2 = 'DLVR_NOT_STARTED' AND NOT( l_actual_finish_date IS NULL ) OR
642: ,p_token4 => 'PROJECT_NUMBER'
643: ,p_value4 => PA_TASK_UTILS.get_project_number(p_project_id));
644: x_msg_data := 'PA_TP_PCC_DISABL_AMG';
645: x_return_status := FND_API.G_RET_STS_ERROR;
646: RAISE FND_API.G_EXC_ERROR;
647: END IF;
648: -- Added by rtarway , date validation check
649: IF l_del_status2 = 'DLVR_NOT_STARTED' AND NOT( l_actual_finish_date IS NULL ) OR
650: l_del_status2 = 'DLVR_IN_PROGRESS' AND NOT ( l_actual_finish_date IS NULL ) OR
655: ,p_msg_name => 'PA_DELP_STAT_DTES_PC_COMB_AMG'
656: ,p_token1 => 'DEL_NAME' -- Bug 6497559
657: ,p_value1 => l_del_name);
658: x_msg_data := 'PA_DELP_STAT_DTES_PC_COMB_AMG';
659: x_return_status := FND_API.G_RET_STS_ERROR;
660: RAISE FND_API.G_EXC_ERROR;
661: END IF;
662: END IF;
663:
656: ,p_token1 => 'DEL_NAME' -- Bug 6497559
657: ,p_value1 => l_del_name);
658: x_msg_data := 'PA_DELP_STAT_DTES_PC_COMB_AMG';
659: x_return_status := FND_API.G_RET_STS_ERROR;
660: RAISE FND_API.G_EXC_ERROR;
661: END IF;
662: END IF;
663:
664: -- 3982374 Calling deliverable status change validation to check deliverable status
676: ,x_msg_count => l_msg_count
677: ,x_msg_data => l_msg_data
678: );
679:
680: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
681: x_return_status := FND_API.G_RET_STS_ERROR;
682: RAISE FND_API.G_EXC_ERROR;
683: END IF;
684: IF g1_debug_mode = 'Y' THEN
677: ,x_msg_data => l_msg_data
678: );
679:
680: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
681: x_return_status := FND_API.G_RET_STS_ERROR;
682: RAISE FND_API.G_EXC_ERROR;
683: END IF;
684: IF g1_debug_mode = 'Y' THEN
685: pa_debug.write(x_Module=>'PA_DELIVERABLE_PROGRESS_PUB.UPDATE_DELIVERABLE_PROGRESS', x_Msg => 'After Checking Deliverable Status Change allowed', x_Log_Level=> 3);
678: );
679:
680: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS ) THEN
681: x_return_status := FND_API.G_RET_STS_ERROR;
682: RAISE FND_API.G_EXC_ERROR;
683: END IF;
684: IF g1_debug_mode = 'Y' THEN
685: pa_debug.write(x_Module=>'PA_DELIVERABLE_PROGRESS_PUB.UPDATE_DELIVERABLE_PROGRESS', x_Msg => 'After Checking Deliverable Status Change allowed', x_Log_Level=> 3);
686: END IF;
704: p_msg_name => 'PA_TP_INV_DEL_STATUS',
705: P_TOKEN1 => 'OBJECT_ID',
706: P_VALUE1 => p_object_id);
707: x_msg_data := 'PA_TP_INV_DEL_STATUS';
708: x_return_status := FND_API.G_RET_STS_ERROR;
709: RAISE FND_API.G_EXC_ERROR;
710: END;
711:
712: --l_task_id is validated in pa_status_pub itself
705: P_TOKEN1 => 'OBJECT_ID',
706: P_VALUE1 => p_object_id);
707: x_msg_data := 'PA_TP_INV_DEL_STATUS';
708: x_return_status := FND_API.G_RET_STS_ERROR;
709: RAISE FND_API.G_EXC_ERROR;
710: END;
711:
712: --l_task_id is validated in pa_status_pub itself
713: --l_as_of_date is validated in pa_status_pub
723: p_msg_name => 'PA_INVALID_PROG_STATUS',
724: P_TOKEN1 => 'OBJECT_ID',
725: P_VALUE1 => p_object_id);
726: x_msg_data := 'PA_INVALID_PROG_STATUS';
727: x_return_status := FND_API.G_RET_STS_ERROR;
728: RAISE FND_API.G_EXC_ERROR;
729: END;
730: END IF; --p_calling_module = 'AMG'
731: */
724: P_TOKEN1 => 'OBJECT_ID',
725: P_VALUE1 => p_object_id);
726: x_msg_data := 'PA_INVALID_PROG_STATUS';
727: x_return_status := FND_API.G_RET_STS_ERROR;
728: RAISE FND_API.G_EXC_ERROR;
729: END;
730: END IF; --p_calling_module = 'AMG'
731: */
732: --Commented by rtarway, 3668168
788: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
789: p_msg_name => 'PA_TP_INV_AOD2');
790:
791: x_msg_data := 'PA_TP_WRONG_DEL_PRG_MODE3';
792: x_return_status := FND_API.G_RET_STS_ERROR;
793: RAISE FND_API.G_EXC_ERROR;
794: --Commented by rtarway for Correction flow
795: -- FPM Dev CR 1 : Added the following IF condition
796: /*ELSIF trunc(p_as_of_date) <= trunc(NVL( l_last_progress_date, p_as_of_date-1)) AND l_progress_exists_on_aod = 'PUBLISHED' THEN
789: p_msg_name => 'PA_TP_INV_AOD2');
790:
791: x_msg_data := 'PA_TP_WRONG_DEL_PRG_MODE3';
792: x_return_status := FND_API.G_RET_STS_ERROR;
793: RAISE FND_API.G_EXC_ERROR;
794: --Commented by rtarway for Correction flow
795: -- FPM Dev CR 1 : Added the following IF condition
796: /*ELSIF trunc(p_as_of_date) <= trunc(NVL( l_last_progress_date, p_as_of_date-1)) AND l_progress_exists_on_aod = 'PUBLISHED' THEN
797: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
796: /*ELSIF trunc(p_as_of_date) <= trunc(NVL( l_last_progress_date, p_as_of_date-1)) AND l_progress_exists_on_aod = 'PUBLISHED' THEN
797: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
798: ,p_msg_name => 'PA_TP_INV_AOD2');
799: x_msg_data := 'PA_TP_INV_AOD2';
800: x_return_status := FND_API.G_RET_STS_ERROR;
801: RAISE FND_API.G_EXC_ERROR;*/
802: --End Commented by rtarway for Correction flow
803: ELSE
804: --Validate as of date
797: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
798: ,p_msg_name => 'PA_TP_INV_AOD2');
799: x_msg_data := 'PA_TP_INV_AOD2';
800: x_return_status := FND_API.G_RET_STS_ERROR;
801: RAISE FND_API.G_EXC_ERROR;*/
802: --End Commented by rtarway for Correction flow
803: ELSE
804: --Validate as of date
805: -- Bug 3627315 : Check valid as of date should not be called from AMG or Task Progress Details page
816: --Message Changed by rtarway during Correction flow changes
817: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
818: ,p_msg_name => 'PA_TP_INV_AOD2');
819: x_msg_data := 'PA_TP_INV_AOD2';
820: x_return_status := FND_API.G_RET_STS_ERROR;
821: RAISE FND_API.G_EXC_ERROR;
822:
823: END IF;*/
824: --
817: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
818: ,p_msg_name => 'PA_TP_INV_AOD2');
819: x_msg_data := 'PA_TP_INV_AOD2';
820: x_return_status := FND_API.G_RET_STS_ERROR;
821: RAISE FND_API.G_EXC_ERROR;
822:
823: END IF;*/
824: --
825: --bug 4185364, not needed
1048: );
1049:
1050: -- FPM Dev CR 3 : Raising Error
1051: IF Fnd_Msg_Pub.count_msg > 0 THEN
1052: RAISE FND_API.G_EXC_ERROR;
1053: END IF;
1054:
1055:
1056:
1223: );
1224:
1225:
1226: IF Fnd_Msg_Pub.count_msg > 0 THEN
1227: RAISE FND_API.G_EXC_ERROR;
1228: END IF;
1229:
1230:
1231: ELSE
1365: ,X_SUBPRJ_EQPMT_ETC_RAWCOST_PC => null
1366: );
1367:
1368: IF Fnd_Msg_Pub.count_msg > 0 THEN
1369: RAISE FND_API.G_EXC_ERROR;
1370: END IF;
1371:
1372: END IF;
1373:
1457:
1458: );
1459:
1460: IF Fnd_Msg_Pub.count_msg > 0 THEN
1461: RAISE FND_API.G_EXC_ERROR;
1462: END IF;
1463:
1464: l_PROGRESS_ROLLUP_ID := PA_PROGRESS_UTILS.get_prog_rollup_id(
1465: p_project_id => p_project_id
1610: ,X_SUBPRJ_EQPMT_ETC_RAWCOST_FC => null
1611: ,X_SUBPRJ_EQPMT_ETC_RAWCOST_PC => null
1612: );
1613: IF Fnd_Msg_Pub.count_msg > 0 THEN
1614: RAISE FND_API.G_EXC_ERROR;
1615: END IF;
1616:
1617: ELSE
1618:
1751: ,X_SUBPRJ_EQPMT_ETC_RAWCOST_FC => null
1752: ,X_SUBPRJ_EQPMT_ETC_RAWCOST_PC => null
1753: );
1754: IF Fnd_Msg_Pub.count_msg > 0 THEN
1755: RAISE FND_API.G_EXC_ERROR;
1756: END IF;
1757:
1758: pa_debug.write(x_Module=>'PA_DELIVERABLE_PROGRESS_PUB.UPDATE_DELIVERABLE_PROGRESS', x_Msg => 'Inserting progress rollup table', x_Log_Level=> 3);
1759: END IF;
1801: ,x_return_status => l_return_status
1802: ,x_msg_count => l_msg_count
1803: ,x_msg_data => l_msg_data );
1804:
1805: IF l_return_status <> FND_API.G_RET_STS_SUCCESS
1806: THEN
1807: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
1808: p_msg_name => l_msg_data
1809: );
1807: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
1808: p_msg_name => l_msg_data
1809: );
1810: x_msg_data := l_msg_data;
1811: x_return_status := FND_API.G_RET_STS_ERROR;
1812: RAISE FND_API.G_EXC_ERROR;
1813: END IF;
1814: */
1815:
1808: p_msg_name => l_msg_data
1809: );
1810: x_msg_data := l_msg_data;
1811: x_return_status := FND_API.G_RET_STS_ERROR;
1812: RAISE FND_API.G_EXC_ERROR;
1813: END IF;
1814: */
1815:
1816: END IF;
1820: END IF;
1821:
1822:
1823: EXCEPTION
1824: when FND_API.G_EXC_ERROR then
1825: x_return_status := FND_API.G_RET_STS_ERROR;
1826: l_msg_count := Fnd_Msg_Pub.count_msg;
1827:
1828: if p_commit = FND_API.G_TRUE then
1821:
1822:
1823: EXCEPTION
1824: when FND_API.G_EXC_ERROR then
1825: x_return_status := FND_API.G_RET_STS_ERROR;
1826: l_msg_count := Fnd_Msg_Pub.count_msg;
1827:
1828: if p_commit = FND_API.G_TRUE then
1829: rollback to UPDATE_DELIVERABLE_PROGRESS;
1824: when FND_API.G_EXC_ERROR then
1825: x_return_status := FND_API.G_RET_STS_ERROR;
1826: l_msg_count := Fnd_Msg_Pub.count_msg;
1827:
1828: if p_commit = FND_API.G_TRUE then
1829: rollback to UPDATE_DELIVERABLE_PROGRESS;
1830: end if;
1831:
1832: IF l_msg_count = 1 AND x_msg_data IS NULL
1831:
1832: IF l_msg_count = 1 AND x_msg_data IS NULL
1833: THEN
1834: Pa_Interface_Utils_Pub.get_messages
1835: ( p_encoded => Fnd_Api.G_TRUE
1836: , p_msg_index => 1
1837: , p_msg_count => l_msg_count
1838: , p_msg_data => l_msg_data
1839: , p_data => l_data
1844: x_msg_count := l_msg_count;
1845: END IF;
1846:
1847:
1848: when FND_API.G_EXC_UNEXPECTED_ERROR then
1849: x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
1850: x_msg_count := 1;
1851: x_msg_data := SQLERRM;
1852:
1845: END IF;
1846:
1847:
1848: when FND_API.G_EXC_UNEXPECTED_ERROR then
1849: x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
1850: x_msg_count := 1;
1851: x_msg_data := SQLERRM;
1852:
1853: if p_commit = FND_API.G_TRUE then
1849: x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
1850: x_msg_count := 1;
1851: x_msg_data := SQLERRM;
1852:
1853: if p_commit = FND_API.G_TRUE then
1854: rollback to UPDATE_DELIVERABLE_PROGRESS;
1855: end if;
1856: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1857: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_DELIVERABLE_PROGRESS_PUB',
1852:
1853: if p_commit = FND_API.G_TRUE then
1854: rollback to UPDATE_DELIVERABLE_PROGRESS;
1855: end if;
1856: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1857: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_DELIVERABLE_PROGRESS_PUB',
1858: p_procedure_name => 'UPDATE_DELIVERABLE_PROGRESS',
1859: p_error_text => SUBSTRB(SQLERRM,1,240));
1860: when OTHERS then
1858: p_procedure_name => 'UPDATE_DELIVERABLE_PROGRESS',
1859: p_error_text => SUBSTRB(SQLERRM,1,240));
1860: when OTHERS then
1861:
1862: x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
1863: x_msg_count := 1;
1864: x_msg_data := SUBSTRB(SQLERRM,1,240);
1865: if p_commit = FND_API.G_TRUE then
1866: rollback to UPDATE_DELIVERABLE_PROGRESS;
1861:
1862: x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
1863: x_msg_count := 1;
1864: x_msg_data := SUBSTRB(SQLERRM,1,240);
1865: if p_commit = FND_API.G_TRUE then
1866: rollback to UPDATE_DELIVERABLE_PROGRESS;
1867: end if;
1868:
1869: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_DELIVERABLE_PROGRESS_PUB',