104: --
105: PROCEDURE Create_Project
106: (
107: p_api_version_number IN NUMBER
108: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
109: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
110: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
111: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
112: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
105: PROCEDURE Create_Project
106: (
107: p_api_version_number IN NUMBER
108: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
109: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
110: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
111: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
112: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
113: ,p_workflow_started OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
674: l_debug_mode := NVL(FND_PROFILE.value('PA_DEBUG_MODE'),'N');
675: -- Standard call to check for call compatibility.
676:
677:
678: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
679: p_api_version_number ,
680: l_api_name ,
681: G_PKG_NAME )
682: THEN
680: l_api_name ,
681: G_PKG_NAME )
682: THEN
683:
684: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
685:
686: END IF;
687:
688:
714: p_function_allowed => l_function_allowed
715: );
716:
717:
718: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
719: THEN
720: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
721:
722: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
716:
717:
718: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
719: THEN
720: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
721:
722: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
723: THEN
724: RAISE FND_API.G_EXC_ERROR;
718: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
719: THEN
720: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
721:
722: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
723: THEN
724: RAISE FND_API.G_EXC_ERROR;
725: END IF;
726: IF l_function_allowed = 'N' THEN
720: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
721:
722: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
723: THEN
724: RAISE FND_API.G_EXC_ERROR;
725: END IF;
726: IF l_function_allowed = 'N' THEN
727: pa_interface_utils_pub.map_new_amg_msg
728: ( p_old_message_code => 'PA_FUNCTION_SECURITY_ENFORCED'
733: ,p_attribute2 => ''
734: ,p_attribute3 => ''
735: ,p_attribute4 => ''
736: ,p_attribute5 => '');
737: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
738: RAISE FND_API.G_EXC_ERROR;
739: END IF;
740:
741:
734: ,p_attribute3 => ''
735: ,p_attribute4 => ''
736: ,p_attribute5 => '');
737: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
738: RAISE FND_API.G_EXC_ERROR;
739: END IF;
740:
741:
742: -- Initialize the message table if requested.
740:
741:
742: -- Initialize the message table if requested.
743:
744: IF FND_API.TO_BOOLEAN( p_init_msg_list )
745: THEN
746:
747: FND_MSG_PUB.initialize;
748:
749: END IF;
750:
751: -- Set API return status to success
752:
753: p_return_status := FND_API.G_RET_STS_SUCCESS;
754: p_project_out.return_status := FND_API.G_RET_STS_SUCCESS;
755:
756: -- 22-DEC-97, jwhite:
757: -- Initialize New OUT-parameter to indicate workflow status
750:
751: -- Set API return status to success
752:
753: p_return_status := FND_API.G_RET_STS_SUCCESS;
754: p_project_out.return_status := FND_API.G_RET_STS_SUCCESS;
755:
756: -- 22-DEC-97, jwhite:
757: -- Initialize New OUT-parameter to indicate workflow status
758:
805: ,p_attribute3 => ''
806: ,p_attribute4 => ''
807: ,p_attribute5 => '');
808: END IF;
809: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
810: p_return_status := FND_API.G_RET_STS_ERROR;
811: RAISE FND_API.G_EXC_ERROR;
812: END IF;
813:
806: ,p_attribute4 => ''
807: ,p_attribute5 => '');
808: END IF;
809: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
810: p_return_status := FND_API.G_RET_STS_ERROR;
811: RAISE FND_API.G_EXC_ERROR;
812: END IF;
813:
814: --bug 2841158
807: ,p_attribute5 => '');
808: END IF;
809: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
810: p_return_status := FND_API.G_RET_STS_ERROR;
811: RAISE FND_API.G_EXC_ERROR;
812: END IF;
813:
814: --bug 2841158
815: IF p_pm_product_code <> 'WORKPLAN'
837: ,p_attribute3 => ''
838: ,p_attribute4 => ''
839: ,p_attribute5 => '');
840: END IF;
841: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
842: p_return_status := FND_API.G_RET_STS_ERROR;
843: RAISE FND_API.G_EXC_ERROR;
844: END IF;
845: END IF; --bug 2841158
838: ,p_attribute4 => ''
839: ,p_attribute5 => '');
840: END IF;
841: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
842: p_return_status := FND_API.G_RET_STS_ERROR;
843: RAISE FND_API.G_EXC_ERROR;
844: END IF;
845: END IF; --bug 2841158
846:
839: ,p_attribute5 => '');
840: END IF;
841: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
842: p_return_status := FND_API.G_RET_STS_ERROR;
843: RAISE FND_API.G_EXC_ERROR;
844: END IF;
845: END IF; --bug 2841158
846:
847: IF l_project_in_rec.pm_project_reference IS NULL
860: ,p_attribute3 => ''
861: ,p_attribute4 => ''
862: ,p_attribute5 => '');
863: END IF;
864: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
865: p_return_status := FND_API.G_RET_STS_ERROR;
866: RAISE FND_API.G_EXC_ERROR;
867: END IF;
868:
861: ,p_attribute4 => ''
862: ,p_attribute5 => '');
863: END IF;
864: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
865: p_return_status := FND_API.G_RET_STS_ERROR;
866: RAISE FND_API.G_EXC_ERROR;
867: END IF;
868:
869: IF l_project_in_rec.project_name IS NULL
862: ,p_attribute5 => '');
863: END IF;
864: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
865: p_return_status := FND_API.G_RET_STS_ERROR;
866: RAISE FND_API.G_EXC_ERROR;
867: END IF;
868:
869: IF l_project_in_rec.project_name IS NULL
870: OR l_project_in_rec.project_name = PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
882: ,p_attribute3 => ''
883: ,p_attribute4 => ''
884: ,p_attribute5 => '');
885: END IF;
886: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
887: p_return_status := FND_API.G_RET_STS_ERROR;
888: RAISE FND_API.G_EXC_ERROR;
889: END IF;
890:
883: ,p_attribute4 => ''
884: ,p_attribute5 => '');
885: END IF;
886: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
887: p_return_status := FND_API.G_RET_STS_ERROR;
888: RAISE FND_API.G_EXC_ERROR;
889: END IF;
890:
891: -- Ensure that Project name is unique
884: ,p_attribute5 => '');
885: END IF;
886: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
887: p_return_status := FND_API.G_RET_STS_ERROR;
888: RAISE FND_API.G_EXC_ERROR;
889: END IF;
890:
891: -- Ensure that Project name is unique
892:
905: ,p_attribute3 => ''
906: ,p_attribute4 => ''
907: ,p_attribute5 => '');
908: END IF;
909: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
910: p_return_status := FND_API.G_RET_STS_ERROR;
911: RAISE FND_API.G_EXC_ERROR;
912: /*Adding for the bug 2450064*/
913: ELSE
906: ,p_attribute4 => ''
907: ,p_attribute5 => '');
908: END IF;
909: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
910: p_return_status := FND_API.G_RET_STS_ERROR;
911: RAISE FND_API.G_EXC_ERROR;
912: /*Adding for the bug 2450064*/
913: ELSE
914: pjm_seiban_pkg.project_name_dup(l_project_in_rec.project_name,l_dup_name_flag);
907: ,p_attribute5 => '');
908: END IF;
909: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
910: p_return_status := FND_API.G_RET_STS_ERROR;
911: RAISE FND_API.G_EXC_ERROR;
912: /*Adding for the bug 2450064*/
913: ELSE
914: pjm_seiban_pkg.project_name_dup(l_project_in_rec.project_name,l_dup_name_flag);
915:
926: ,p_attribute3 => ''
927: ,p_attribute4 => ''
928: ,p_attribute5 => '');
929: END IF;
930: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
931: p_return_status := FND_API.G_RET_STS_ERROR;
932: RAISE FND_API.G_EXC_ERROR;
933: END IF;
934: /*Adding for the bug 2450064*/
927: ,p_attribute4 => ''
928: ,p_attribute5 => '');
929: END IF;
930: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
931: p_return_status := FND_API.G_RET_STS_ERROR;
932: RAISE FND_API.G_EXC_ERROR;
933: END IF;
934: /*Adding for the bug 2450064*/
935: END IF;
928: ,p_attribute5 => '');
929: END IF;
930: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
931: p_return_status := FND_API.G_RET_STS_ERROR;
932: RAISE FND_API.G_EXC_ERROR;
933: END IF;
934: /*Adding for the bug 2450064*/
935: END IF;
936:
952: ,p_attribute3 => ''
953: ,p_attribute4 => ''
954: ,p_attribute5 => '');
955: END IF;
956: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
957: p_return_status := FND_API.G_RET_STS_ERROR;
958: RAISE FND_API.G_EXC_ERROR;
959: END IF;
960: END IF;
953: ,p_attribute4 => ''
954: ,p_attribute5 => '');
955: END IF;
956: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
957: p_return_status := FND_API.G_RET_STS_ERROR;
958: RAISE FND_API.G_EXC_ERROR;
959: END IF;
960: END IF;
961:
954: ,p_attribute5 => '');
955: END IF;
956: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
957: p_return_status := FND_API.G_RET_STS_ERROR;
958: RAISE FND_API.G_EXC_ERROR;
959: END IF;
960: END IF;
961:
962: -- bug#3014919: Ensure Project Reference is unique
979: ,p_attribute3 => ''
980: ,p_attribute4 => ''
981: ,p_attribute5 => '');
982: END IF;
983: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
984: p_return_status := FND_API.G_RET_STS_ERROR;
985: RAISE FND_API.G_EXC_ERROR;
986: END IF;
987: END IF;
980: ,p_attribute4 => ''
981: ,p_attribute5 => '');
982: END IF;
983: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
984: p_return_status := FND_API.G_RET_STS_ERROR;
985: RAISE FND_API.G_EXC_ERROR;
986: END IF;
987: END IF;
988:
981: ,p_attribute5 => '');
982: END IF;
983: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
984: p_return_status := FND_API.G_RET_STS_ERROR;
985: RAISE FND_API.G_EXC_ERROR;
986: END IF;
987: END IF;
988:
989: -- Check for implementation defined Project number generation mode
1017: ,p_attribute3 => ''
1018: ,p_attribute4 => ''
1019: ,p_attribute5 => '');
1020: END IF;
1021: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1022: p_return_status := FND_API.G_RET_STS_ERROR;
1023: RAISE FND_API.G_EXC_ERROR;
1024: /*Adding for the bug 2450064*/
1025: ELSE
1018: ,p_attribute4 => ''
1019: ,p_attribute5 => '');
1020: END IF;
1021: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1022: p_return_status := FND_API.G_RET_STS_ERROR;
1023: RAISE FND_API.G_EXC_ERROR;
1024: /*Adding for the bug 2450064*/
1025: ELSE
1026: pjm_seiban_pkg.project_number_dup(l_create_project_number,l_dup_name_flag);
1019: ,p_attribute5 => '');
1020: END IF;
1021: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1022: p_return_status := FND_API.G_RET_STS_ERROR;
1023: RAISE FND_API.G_EXC_ERROR;
1024: /*Adding for the bug 2450064*/
1025: ELSE
1026: pjm_seiban_pkg.project_number_dup(l_create_project_number,l_dup_name_flag);
1027:
1038: ,p_attribute3 => ''
1039: ,p_attribute4 => ''
1040: ,p_attribute5 => '');
1041: END IF;
1042: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1043: p_return_status := FND_API.G_RET_STS_ERROR;
1044: RAISE FND_API.G_EXC_ERROR;
1045: END IF;
1046: /*Adding for the bug 2450064*/
1039: ,p_attribute4 => ''
1040: ,p_attribute5 => '');
1041: END IF;
1042: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1043: p_return_status := FND_API.G_RET_STS_ERROR;
1044: RAISE FND_API.G_EXC_ERROR;
1045: END IF;
1046: /*Adding for the bug 2450064*/
1047: END IF;
1040: ,p_attribute5 => '');
1041: END IF;
1042: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1043: p_return_status := FND_API.G_RET_STS_ERROR;
1044: RAISE FND_API.G_EXC_ERROR;
1045: END IF;
1046: /*Adding for the bug 2450064*/
1047: END IF;
1048: -- Check for project number being numeric if project number type is
1066: ,p_attribute3 => ''
1067: ,p_attribute4 => ''
1068: ,p_attribute5 => '');
1069: END IF;
1070: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1071: p_return_status := FND_API.G_RET_STS_ERROR;
1072: RAISE FND_API.G_EXC_ERROR;
1073: END ;
1074: END IF;
1067: ,p_attribute4 => ''
1068: ,p_attribute5 => '');
1069: END IF;
1070: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1071: p_return_status := FND_API.G_RET_STS_ERROR;
1072: RAISE FND_API.G_EXC_ERROR;
1073: END ;
1074: END IF;
1075:
1068: ,p_attribute5 => '');
1069: END IF;
1070: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1071: p_return_status := FND_API.G_RET_STS_ERROR;
1072: RAISE FND_API.G_EXC_ERROR;
1073: END ;
1074: END IF;
1075:
1076: IF l_project_in_rec.created_from_project_id IS NULL
1089: ,p_attribute3 => ''
1090: ,p_attribute4 => ''
1091: ,p_attribute5 => '');
1092: END IF;
1093: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1094: RAISE FND_API.G_EXC_ERROR;
1095: END IF;
1096:
1097: -- mandatory fields for tasks is checked here
1090: ,p_attribute4 => ''
1091: ,p_attribute5 => '');
1092: END IF;
1093: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1094: RAISE FND_API.G_EXC_ERROR;
1095: END IF;
1096:
1097: -- mandatory fields for tasks is checked here
1098:
1124: ,p_attribute3 => ''
1125: ,p_attribute4 => ''
1126: ,p_attribute5 => '');
1127: END IF;
1128: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1129: RAISE FND_API.G_EXC_ERROR;
1130: END IF;
1131: CLOSE l_temp_flag_csr;
1132:
1125: ,p_attribute4 => ''
1126: ,p_attribute5 => '');
1127: END IF;
1128: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1129: RAISE FND_API.G_EXC_ERROR;
1130: END IF;
1131: CLOSE l_temp_flag_csr;
1132:
1133: if l_temp_flag = 'Y' then
1151: );
1152:
1153: END IF;
1154:
1155: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1156: RAISE FND_API.G_EXC_ERROR;
1157:
1158: END IF;
1159:
1152:
1153: END IF;
1154:
1155: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1156: RAISE FND_API.G_EXC_ERROR;
1157:
1158: END IF;
1159:
1160: -- 5182868 end
1205: FND_MESSAGE.SET_NAME('PA','PA_DESCRIPTION_NOT_OVERRIDABLE');
1206: FND_MSG_PUB.add;
1207: END IF;
1208:
1209: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1210: RAISE FND_API.G_EXC_ERROR;
1211: END IF;
1212: */
1213: /* Code below is added for Customer Issue tracking bug. Customer Can still continue to project_in_rec_type to insert customers
1206: FND_MSG_PUB.add;
1207: END IF;
1208:
1209: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1210: RAISE FND_API.G_EXC_ERROR;
1211: END IF;
1212: */
1213: /* Code below is added for Customer Issue tracking bug. Customer Can still continue to project_in_rec_type to insert customers
1214: or can use the new record type for the same. However he cannot use both together in the same script*/
1316: ,p_attribute3 => ''
1317: ,p_attribute4 => ''
1318: ,p_attribute5 => '');
1319: END IF;
1320: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1321: p_return_status := FND_API.G_RET_STS_ERROR;
1322: RAISE FND_API.G_EXC_ERROR;
1323:
1324: END IF;
1317: ,p_attribute4 => ''
1318: ,p_attribute5 => '');
1319: END IF;
1320: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1321: p_return_status := FND_API.G_RET_STS_ERROR;
1322: RAISE FND_API.G_EXC_ERROR;
1323:
1324: END IF;
1325:
1318: ,p_attribute5 => '');
1319: END IF;
1320: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1321: p_return_status := FND_API.G_RET_STS_ERROR;
1322: RAISE FND_API.G_EXC_ERROR;
1323:
1324: END IF;
1325:
1326: ELSIF l_override_fields_tab(i).pa_field_name = 'CLASSIFICATION' THEN
1342: ,p_attribute3 => ''
1343: ,p_attribute4 => ''
1344: ,p_attribute5 => '');
1345: END IF;
1346: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1347: p_return_status := FND_API.G_RET_STS_ERROR;
1348: RAISE FND_API.G_EXC_ERROR;
1349:
1350: END IF;
1343: ,p_attribute4 => ''
1344: ,p_attribute5 => '');
1345: END IF;
1346: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1347: p_return_status := FND_API.G_RET_STS_ERROR;
1348: RAISE FND_API.G_EXC_ERROR;
1349:
1350: END IF;
1351:
1344: ,p_attribute5 => '');
1345: END IF;
1346: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1347: p_return_status := FND_API.G_RET_STS_ERROR;
1348: RAISE FND_API.G_EXC_ERROR;
1349:
1350: END IF;
1351:
1352: l_class_code_categories := 0;
1372: ,p_attribute3 => ''
1373: ,p_attribute4 => ''
1374: ,p_attribute5 => '');
1375: END IF;
1376: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1377: p_return_status := FND_API.G_RET_STS_ERROR;
1378: RAISE FND_API.G_EXC_ERROR;
1379: END IF;
1380:
1373: ,p_attribute4 => ''
1374: ,p_attribute5 => '');
1375: END IF;
1376: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1377: p_return_status := FND_API.G_RET_STS_ERROR;
1378: RAISE FND_API.G_EXC_ERROR;
1379: END IF;
1380:
1381: EXIT;
1374: ,p_attribute5 => '');
1375: END IF;
1376: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1377: p_return_status := FND_API.G_RET_STS_ERROR;
1378: RAISE FND_API.G_EXC_ERROR;
1379: END IF;
1380:
1381: EXIT;
1382: END IF;
1397: ,p_attribute3 => ''
1398: ,p_attribute4 => ''
1399: ,p_attribute5 => '');
1400: END IF;
1401: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1402: p_return_status := FND_API.G_RET_STS_ERROR;
1403: RAISE FND_API.G_EXC_ERROR;
1404: END IF;
1405: ELSIF l_override_fields_tab(i).pa_field_name = 'COMPLETION_DATE' THEN
1398: ,p_attribute4 => ''
1399: ,p_attribute5 => '');
1400: END IF;
1401: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1402: p_return_status := FND_API.G_RET_STS_ERROR;
1403: RAISE FND_API.G_EXC_ERROR;
1404: END IF;
1405: ELSIF l_override_fields_tab(i).pa_field_name = 'COMPLETION_DATE' THEN
1406: IF l_project_in_rec.completion_date IS NULL
1399: ,p_attribute5 => '');
1400: END IF;
1401: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1402: p_return_status := FND_API.G_RET_STS_ERROR;
1403: RAISE FND_API.G_EXC_ERROR;
1404: END IF;
1405: ELSIF l_override_fields_tab(i).pa_field_name = 'COMPLETION_DATE' THEN
1406: IF l_project_in_rec.completion_date IS NULL
1407: OR l_project_in_rec.completion_date = PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
1419: ,p_attribute3 => ''
1420: ,p_attribute4 => ''
1421: ,p_attribute5 => '');
1422: END IF;
1423: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1424: p_return_status := FND_API.G_RET_STS_ERROR;
1425: RAISE FND_API.G_EXC_ERROR;
1426:
1427: END IF;
1420: ,p_attribute4 => ''
1421: ,p_attribute5 => '');
1422: END IF;
1423: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1424: p_return_status := FND_API.G_RET_STS_ERROR;
1425: RAISE FND_API.G_EXC_ERROR;
1426:
1427: END IF;
1428:
1421: ,p_attribute5 => '');
1422: END IF;
1423: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1424: p_return_status := FND_API.G_RET_STS_ERROR;
1425: RAISE FND_API.G_EXC_ERROR;
1426:
1427: END IF;
1428:
1429: ELSIF l_override_fields_tab(i).pa_field_name = 'START_DATE' THEN
1443: ,p_attribute3 => ''
1444: ,p_attribute4 => ''
1445: ,p_attribute5 => '');
1446: END IF;
1447: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1448: p_return_status := FND_API.G_RET_STS_ERROR;
1449: RAISE FND_API.G_EXC_ERROR;
1450:
1451: END IF;
1444: ,p_attribute4 => ''
1445: ,p_attribute5 => '');
1446: END IF;
1447: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1448: p_return_status := FND_API.G_RET_STS_ERROR;
1449: RAISE FND_API.G_EXC_ERROR;
1450:
1451: END IF;
1452: ELSIF l_override_fields_tab(i).pa_field_name = 'CUSTOMER_NAME' THEN
1445: ,p_attribute5 => '');
1446: END IF;
1447: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1448: p_return_status := FND_API.G_RET_STS_ERROR;
1449: RAISE FND_API.G_EXC_ERROR;
1450:
1451: END IF;
1452: ELSIF l_override_fields_tab(i).pa_field_name = 'CUSTOMER_NAME' THEN
1453: /* Code commented for tracking bug
1471: ,p_attribute3 => ''
1472: ,p_attribute4 => ''
1473: ,p_attribute5 => '');
1474: END IF;
1475: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1476: p_return_status := FND_API.G_RET_STS_ERROR;
1477: RAISE FND_API.G_EXC_ERROR;
1478:
1479: END IF;
1472: ,p_attribute4 => ''
1473: ,p_attribute5 => '');
1474: END IF;
1475: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1476: p_return_status := FND_API.G_RET_STS_ERROR;
1477: RAISE FND_API.G_EXC_ERROR;
1478:
1479: END IF;
1480:
1473: ,p_attribute5 => '');
1474: END IF;
1475: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1476: p_return_status := FND_API.G_RET_STS_ERROR;
1477: RAISE FND_API.G_EXC_ERROR;
1478:
1479: END IF;
1480:
1481: --Customer Account relationship Changes:
1502: ,p_attribute3 => ''
1503: ,p_attribute4 => ''
1504: ,p_attribute5 => '');
1505: END IF;
1506: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1507: p_return_status := FND_API.G_RET_STS_ERROR;
1508: RAISE FND_API.G_EXC_ERROR;
1509:
1510: END IF;
1503: ,p_attribute4 => ''
1504: ,p_attribute5 => '');
1505: END IF;
1506: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1507: p_return_status := FND_API.G_RET_STS_ERROR;
1508: RAISE FND_API.G_EXC_ERROR;
1509:
1510: END IF;
1511:
1504: ,p_attribute5 => '');
1505: END IF;
1506: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1507: p_return_status := FND_API.G_RET_STS_ERROR;
1508: RAISE FND_API.G_EXC_ERROR;
1509:
1510: END IF;
1511:
1512: ELSIF l_override_fields_tab(i).pa_field_name = 'SHIP_TO_CUSTOMER' THEN
1531: ,p_attribute3 => ''
1532: ,p_attribute4 => ''
1533: ,p_attribute5 => '');
1534: END IF;
1535: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1536: p_return_status := FND_API.G_RET_STS_ERROR;
1537: RAISE FND_API.G_EXC_ERROR;
1538:
1539: END IF;
1532: ,p_attribute4 => ''
1533: ,p_attribute5 => '');
1534: END IF;
1535: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1536: p_return_status := FND_API.G_RET_STS_ERROR;
1537: RAISE FND_API.G_EXC_ERROR;
1538:
1539: END IF;
1540:
1533: ,p_attribute5 => '');
1534: END IF;
1535: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1536: p_return_status := FND_API.G_RET_STS_ERROR;
1537: RAISE FND_API.G_EXC_ERROR;
1538:
1539: END IF;
1540:
1541: ----dbms_output.put_line('Overriding bill to cst and ship to cst');
1557: ,p_attribute3 => ''
1558: ,p_attribute4 => ''
1559: ,p_attribute5 => '');
1560: END IF;
1561: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1562: p_return_status := FND_API.G_RET_STS_ERROR;
1563: RAISE FND_API.G_EXC_ERROR;
1564:
1565: END IF;
1558: ,p_attribute4 => ''
1559: ,p_attribute5 => '');
1560: END IF;
1561: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1562: p_return_status := FND_API.G_RET_STS_ERROR;
1563: RAISE FND_API.G_EXC_ERROR;
1564:
1565: END IF;
1566:
1559: ,p_attribute5 => '');
1560: END IF;
1561: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1562: p_return_status := FND_API.G_RET_STS_ERROR;
1563: RAISE FND_API.G_EXC_ERROR;
1564:
1565: END IF;
1566:
1567: ELSIF l_override_fields_tab(i).pa_field_name = 'KEY_MEMBER' THEN
1583: ,p_attribute3 => ''
1584: ,p_attribute4 => ''
1585: ,p_attribute5 => '');
1586: END IF;
1587: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1588: p_return_status := FND_API.G_RET_STS_ERROR;
1589: RAISE FND_API.G_EXC_ERROR;
1590:
1591: END IF;
1584: ,p_attribute4 => ''
1585: ,p_attribute5 => '');
1586: END IF;
1587: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1588: p_return_status := FND_API.G_RET_STS_ERROR;
1589: RAISE FND_API.G_EXC_ERROR;
1590:
1591: END IF;
1592:
1585: ,p_attribute5 => '');
1586: END IF;
1587: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1588: p_return_status := FND_API.G_RET_STS_ERROR;
1589: RAISE FND_API.G_EXC_ERROR;
1590:
1591: END IF;
1592:
1593: l_key_member := 0;
1616: ,p_attribute3 => ''
1617: ,p_attribute4 => ''
1618: ,p_attribute5 => '');
1619: END IF;
1620: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1621: p_return_status := FND_API.G_RET_STS_ERROR;
1622: RAISE FND_API.G_EXC_ERROR;
1623: END IF;
1624:
1617: ,p_attribute4 => ''
1618: ,p_attribute5 => '');
1619: END IF;
1620: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1621: p_return_status := FND_API.G_RET_STS_ERROR;
1622: RAISE FND_API.G_EXC_ERROR;
1623: END IF;
1624:
1625: ELSIF l_override_fields_tab(i).pa_field_name = 'DISTRIBUTION_RULE' THEN
1618: ,p_attribute5 => '');
1619: END IF;
1620: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1621: p_return_status := FND_API.G_RET_STS_ERROR;
1622: RAISE FND_API.G_EXC_ERROR;
1623: END IF;
1624:
1625: ELSIF l_override_fields_tab(i).pa_field_name = 'DISTRIBUTION_RULE' THEN
1626: IF l_project_in_rec.distribution_rule IS NULL
1639: ,p_attribute3 => ''
1640: ,p_attribute4 => ''
1641: ,p_attribute5 => '');
1642: END IF;
1643: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1644: p_return_status := FND_API.G_RET_STS_ERROR;
1645: RAISE FND_API.G_EXC_ERROR;
1646:
1647: END IF;
1640: ,p_attribute4 => ''
1641: ,p_attribute5 => '');
1642: END IF;
1643: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1644: p_return_status := FND_API.G_RET_STS_ERROR;
1645: RAISE FND_API.G_EXC_ERROR;
1646:
1647: END IF;
1648:
1641: ,p_attribute5 => '');
1642: END IF;
1643: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1644: p_return_status := FND_API.G_RET_STS_ERROR;
1645: RAISE FND_API.G_EXC_ERROR;
1646:
1647: END IF;
1648:
1649: ELSIF l_override_fields_tab(i).pa_field_name = 'PROJECT_STATUS_CODE' THEN
1662: ,p_attribute3 => ''
1663: ,p_attribute4 => ''
1664: ,p_attribute5 => '');
1665: END IF;
1666: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1667: p_return_status := FND_API.G_RET_STS_ERROR;
1668: RAISE FND_API.G_EXC_ERROR;
1669:
1670: END IF;
1663: ,p_attribute4 => ''
1664: ,p_attribute5 => '');
1665: END IF;
1666: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1667: p_return_status := FND_API.G_RET_STS_ERROR;
1668: RAISE FND_API.G_EXC_ERROR;
1669:
1670: END IF;
1671:
1664: ,p_attribute5 => '');
1665: END IF;
1666: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1667: p_return_status := FND_API.G_RET_STS_ERROR;
1668: RAISE FND_API.G_EXC_ERROR;
1669:
1670: END IF;
1671:
1672: ELSIF l_override_fields_tab(i).pa_field_name = 'PUBLIC_SECTOR_FLAG' THEN
1686: ,p_attribute3 => ''
1687: ,p_attribute4 => ''
1688: ,p_attribute5 => '');
1689: END IF;
1690: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1691: p_return_status := FND_API.G_RET_STS_ERROR;
1692: RAISE FND_API.G_EXC_ERROR;
1693:
1694: END IF;
1687: ,p_attribute4 => ''
1688: ,p_attribute5 => '');
1689: END IF;
1690: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1691: p_return_status := FND_API.G_RET_STS_ERROR;
1692: RAISE FND_API.G_EXC_ERROR;
1693:
1694: END IF;
1695:
1688: ,p_attribute5 => '');
1689: END IF;
1690: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1691: p_return_status := FND_API.G_RET_STS_ERROR;
1692: RAISE FND_API.G_EXC_ERROR;
1693:
1694: END IF;
1695:
1696: ELSIF l_override_fields_tab(i).pa_field_name = 'TEAM_TEMPLATE_ID' THEN
1710: ,p_attribute3 => ''
1711: ,p_attribute4 => ''
1712: ,p_attribute5 => '');
1713: END IF;
1714: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1715: p_return_status := FND_API.G_RET_STS_ERROR;
1716: RAISE FND_API.G_EXC_ERROR;
1717:
1718: END IF;
1711: ,p_attribute4 => ''
1712: ,p_attribute5 => '');
1713: END IF;
1714: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1715: p_return_status := FND_API.G_RET_STS_ERROR;
1716: RAISE FND_API.G_EXC_ERROR;
1717:
1718: END IF;
1719:
1712: ,p_attribute5 => '');
1713: END IF;
1714: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1715: p_return_status := FND_API.G_RET_STS_ERROR;
1716: RAISE FND_API.G_EXC_ERROR;
1717:
1718: END IF;
1719:
1720: ELSIF l_override_fields_tab(i).pa_field_name = 'COUNTRY' THEN
1734: ,p_attribute3 => ''
1735: ,p_attribute4 => ''
1736: ,p_attribute5 => '');
1737: END IF;
1738: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1739: p_return_status := FND_API.G_RET_STS_ERROR;
1740: RAISE FND_API.G_EXC_ERROR;
1741:
1742: END IF;
1735: ,p_attribute4 => ''
1736: ,p_attribute5 => '');
1737: END IF;
1738: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1739: p_return_status := FND_API.G_RET_STS_ERROR;
1740: RAISE FND_API.G_EXC_ERROR;
1741:
1742: END IF;
1743:
1736: ,p_attribute5 => '');
1737: END IF;
1738: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1739: p_return_status := FND_API.G_RET_STS_ERROR;
1740: RAISE FND_API.G_EXC_ERROR;
1741:
1742: END IF;
1743:
1744: ELSIF l_override_fields_tab(i).pa_field_name = 'STATE_REGION' THEN
1758: ,p_attribute3 => ''
1759: ,p_attribute4 => ''
1760: ,p_attribute5 => '');
1761: END IF;
1762: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1763: p_return_status := FND_API.G_RET_STS_ERROR;
1764: RAISE FND_API.G_EXC_ERROR;
1765:
1766: END IF;
1759: ,p_attribute4 => ''
1760: ,p_attribute5 => '');
1761: END IF;
1762: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1763: p_return_status := FND_API.G_RET_STS_ERROR;
1764: RAISE FND_API.G_EXC_ERROR;
1765:
1766: END IF;
1767:
1760: ,p_attribute5 => '');
1761: END IF;
1762: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1763: p_return_status := FND_API.G_RET_STS_ERROR;
1764: RAISE FND_API.G_EXC_ERROR;
1765:
1766: END IF;
1767:
1768: ELSIF l_override_fields_tab(i).pa_field_name = 'CITY' THEN
1782: ,p_attribute3 => ''
1783: ,p_attribute4 => ''
1784: ,p_attribute5 => '');
1785: END IF;
1786: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1787: p_return_status := FND_API.G_RET_STS_ERROR;
1788: RAISE FND_API.G_EXC_ERROR;
1789:
1790: END IF;
1783: ,p_attribute4 => ''
1784: ,p_attribute5 => '');
1785: END IF;
1786: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1787: p_return_status := FND_API.G_RET_STS_ERROR;
1788: RAISE FND_API.G_EXC_ERROR;
1789:
1790: END IF;
1791:
1784: ,p_attribute5 => '');
1785: END IF;
1786: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1787: p_return_status := FND_API.G_RET_STS_ERROR;
1788: RAISE FND_API.G_EXC_ERROR;
1789:
1790: END IF;
1791:
1792: ELSIF l_override_fields_tab(i).pa_field_name = 'EXPECTED_APPROVAL_DATE' THEN
1806: ,p_attribute3 => ''
1807: ,p_attribute4 => ''
1808: ,p_attribute5 => '');
1809: END IF;
1810: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1811: p_return_status := FND_API.G_RET_STS_ERROR;
1812: RAISE FND_API.G_EXC_ERROR;
1813:
1814: END IF;
1807: ,p_attribute4 => ''
1808: ,p_attribute5 => '');
1809: END IF;
1810: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1811: p_return_status := FND_API.G_RET_STS_ERROR;
1812: RAISE FND_API.G_EXC_ERROR;
1813:
1814: END IF;
1815:
1808: ,p_attribute5 => '');
1809: END IF;
1810: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1811: p_return_status := FND_API.G_RET_STS_ERROR;
1812: RAISE FND_API.G_EXC_ERROR;
1813:
1814: END IF;
1815:
1816: ELSIF l_override_fields_tab(i).pa_field_name = 'PROBABILITY_MEMBER_ID' THEN
1830: ,p_attribute3 => ''
1831: ,p_attribute4 => ''
1832: ,p_attribute5 => '');
1833: END IF;
1834: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1835: p_return_status := FND_API.G_RET_STS_ERROR;
1836: RAISE FND_API.G_EXC_ERROR;
1837:
1838: END IF;
1831: ,p_attribute4 => ''
1832: ,p_attribute5 => '');
1833: END IF;
1834: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1835: p_return_status := FND_API.G_RET_STS_ERROR;
1836: RAISE FND_API.G_EXC_ERROR;
1837:
1838: END IF;
1839:
1832: ,p_attribute5 => '');
1833: END IF;
1834: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1835: p_return_status := FND_API.G_RET_STS_ERROR;
1836: RAISE FND_API.G_EXC_ERROR;
1837:
1838: END IF;
1839:
1840: ELSIF l_override_fields_tab(i).pa_field_name = 'PROJECT_VALUE' THEN
1854: ,p_attribute3 => ''
1855: ,p_attribute4 => ''
1856: ,p_attribute5 => '');
1857: END IF;
1858: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1859: p_return_status := FND_API.G_RET_STS_ERROR;
1860: RAISE FND_API.G_EXC_ERROR;
1861:
1862: END IF;
1855: ,p_attribute4 => ''
1856: ,p_attribute5 => '');
1857: END IF;
1858: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1859: p_return_status := FND_API.G_RET_STS_ERROR;
1860: RAISE FND_API.G_EXC_ERROR;
1861:
1862: END IF;
1863:
1856: ,p_attribute5 => '');
1857: END IF;
1858: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1859: p_return_status := FND_API.G_RET_STS_ERROR;
1860: RAISE FND_API.G_EXC_ERROR;
1861:
1862: END IF;
1863:
1864: -- anlee opportunity value changes
1879: ,p_attribute3 => ''
1880: ,p_attribute4 => ''
1881: ,p_attribute5 => '');
1882: END IF;
1883: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1884: p_return_status := FND_API.G_RET_STS_ERROR;
1885: RAISE FND_API.G_EXC_ERROR;
1886:
1887: END IF;
1880: ,p_attribute4 => ''
1881: ,p_attribute5 => '');
1882: END IF;
1883: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1884: p_return_status := FND_API.G_RET_STS_ERROR;
1885: RAISE FND_API.G_EXC_ERROR;
1886:
1887: END IF;
1888:
1881: ,p_attribute5 => '');
1882: END IF;
1883: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1884: p_return_status := FND_API.G_RET_STS_ERROR;
1885: RAISE FND_API.G_EXC_ERROR;
1886:
1887: END IF;
1888:
1889: -- anlee org role changes
1906: ,p_attribute3 => ''
1907: ,p_attribute4 => ''
1908: ,p_attribute5 => '');
1909: END IF;
1910: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1911: p_return_status := FND_API.G_RET_STS_ERROR;
1912: RAISE FND_API.G_EXC_ERROR;
1913:
1914: END IF;
1907: ,p_attribute4 => ''
1908: ,p_attribute5 => '');
1909: END IF;
1910: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1911: p_return_status := FND_API.G_RET_STS_ERROR;
1912: RAISE FND_API.G_EXC_ERROR;
1913:
1914: END IF;
1915:
1908: ,p_attribute5 => '');
1909: END IF;
1910: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1911: p_return_status := FND_API.G_RET_STS_ERROR;
1912: RAISE FND_API.G_EXC_ERROR;
1913:
1914: END IF;
1915:
1916: l_org_role := 0;
1939: ,p_attribute3 => ''
1940: ,p_attribute4 => ''
1941: ,p_attribute5 => '');
1942: END IF;
1943: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1944: p_return_status := FND_API.G_RET_STS_ERROR;
1945: RAISE FND_API.G_EXC_ERROR;
1946: END IF;
1947:
1940: ,p_attribute4 => ''
1941: ,p_attribute5 => '');
1942: END IF;
1943: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1944: p_return_status := FND_API.G_RET_STS_ERROR;
1945: RAISE FND_API.G_EXC_ERROR;
1946: END IF;
1947:
1948: /* Added this code for bug#2672646 if Long Name is an Quick Entry Field */
1941: ,p_attribute5 => '');
1942: END IF;
1943: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1944: p_return_status := FND_API.G_RET_STS_ERROR;
1945: RAISE FND_API.G_EXC_ERROR;
1946: END IF;
1947:
1948: /* Added this code for bug#2672646 if Long Name is an Quick Entry Field */
1949:
1963: ,p_attribute3 => ''
1964: ,p_attribute4 => ''
1965: ,p_attribute5 => '');
1966: END IF;
1967: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1968: p_return_status := FND_API.G_RET_STS_ERROR;
1969: RAISE FND_API.G_EXC_ERROR;
1970: END IF;
1971:
1964: ,p_attribute4 => ''
1965: ,p_attribute5 => '');
1966: END IF;
1967: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1968: p_return_status := FND_API.G_RET_STS_ERROR;
1969: RAISE FND_API.G_EXC_ERROR;
1970: END IF;
1971:
1972: /* End of code added for bug#2672646 */
1965: ,p_attribute5 => '');
1966: END IF;
1967: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
1968: p_return_status := FND_API.G_RET_STS_ERROR;
1969: RAISE FND_API.G_EXC_ERROR;
1970: END IF;
1971:
1972: /* End of code added for bug#2672646 */
1973:
2014: ,p_attribute4 => ''
2015: ,p_attribute5 => '');
2016: END IF;
2017:
2018: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
2019: CLOSE l_source_project_type_csr;
2020: RAISE FND_API.G_EXC_ERROR;
2021: END IF;
2022:
2016: END IF;
2017:
2018: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
2019: CLOSE l_source_project_type_csr;
2020: RAISE FND_API.G_EXC_ERROR;
2021: END IF;
2022:
2023: CLOSE l_source_project_type_csr;
2024:
2043: ,p_attribute4 => ''
2044: ,p_attribute5 => '');
2045: END IF;
2046:
2047: RAISE FND_API.G_EXC_ERROR;
2048: END IF;
2049: END IF;
2050:
2051: IF l_project_in_rec.carrying_out_organization_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
2067: ,p_attribute4 => ''
2068: ,p_attribute5 => '');
2069: END IF;
2070:
2071: RAISE FND_API.G_EXC_ERROR;
2072: END IF;
2073: END IF;
2074:
2075: l_project_start_date := l_project_in_rec.start_date;
2092: ,p_attribute3 => ''
2093: ,p_attribute4 => ''
2094: ,p_attribute5 => '');
2095: END IF;
2096: RAISE FND_API.G_EXC_ERROR;
2097: END IF;
2098:
2099: -- completion date cannot be less than start date
2100: IF l_project_start_date <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
2130:
2131: -- 5182972 end
2132: END IF;
2133:
2134: RAISE FND_API.G_EXC_ERROR;
2135: END IF;
2136: /*
2137: IF l_project_in_rec.actual_start_date IS NULL OR
2138: l_project_in_rec.actual_start_date =
2190: );
2191:
2192: END IF;
2193:
2194: RAISE FND_API.G_EXC_ERROR;
2195: END IF;
2196: l_early_finish_date := l_project_in_rec.early_finish_date;
2197:
2198: ELSE --End of Logic added to check whether the finish date is earlier than the start date.Bug#5185673
2225: );
2226:
2227: END IF;
2228:
2229: RAISE FND_API.G_EXC_ERROR;
2230: END IF;
2231: l_late_finish_date := l_project_in_rec.late_finish_date;
2232: ELSE --End of Logic added to check whether the finish date is earlier than the start date.Bug#5185673
2233: l_late_finish_date := l_project_in_rec.late_finish_date;
2282: ,p_attribute3 => ''
2283: ,p_attribute4 => ''
2284: ,p_attribute5 => '');
2285: END IF;
2286: RAISE FND_API.G_EXC_ERROR;
2287: END IF;
2288:
2289:
2290: -- Check to ensure that the dates returned by the API are valid
2321:
2322: -- 5182972 end
2323: END IF;
2324:
2325: RAISE FND_API.G_EXC_ERROR;
2326: END IF;
2327:
2328: --Since this is an insert API (and not an update API),
2329: --all missing incoming parameters will be defaulted to NULL
2354: ,p_attribute3 => ''
2355: ,p_attribute4 => ''
2356: ,p_attribute5 => '');
2357: END IF;
2358: RAISE FND_API.G_EXC_ERROR;
2359: END IF;
2360: IF pa_project_stus_utils.Is_Starting_Status
2361: (l_project_in_rec.project_status_code) = 'N' THEN
2362: pa_interface_utils_pub.map_new_amg_msg
2368: ,p_attribute2 => ''
2369: ,p_attribute3 => ''
2370: ,p_attribute4 => ''
2371: ,p_attribute5 => '');
2372: RAISE FND_API.G_EXC_ERROR;
2373: END IF;
2374:
2375: END IF;
2376:
2398: ,p_attribute3 => ''
2399: ,p_attribute4 => ''
2400: ,p_attribute5 => '');
2401: END IF;
2402: RAISE FND_API.G_EXC_ERROR;
2403: END IF;
2404: END IF;
2405:
2406: --When descriptive flex fields are not passed set them to NULL
2684: IF l_project_in_rec.project_value IS NOT NULL AND l_project_in_rec.project_value < 0 THEN
2685: PA_UTILS.ADD_MESSAGE
2686: ( p_app_short_name => 'PA'
2687: ,p_msg_name => 'PA_INVLD_OPPORTUNITY_VALUE');
2688: RAISE FND_API.G_EXC_ERROR;
2689: ELSE
2690: l_project_value := l_project_in_rec.project_value;
2691: END IF;
2692: END IF;
2731: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
2732: FND_MESSAGE.SET_NAME('PA','PA_PROJ_RATE_TYPE_INV_AMG');
2733: FND_MESSAGE.SET_TOKEN('PROJECT', l_project_rec.segment1);
2734: FND_MSG_PUB.ADD;
2735: RAISE FND_API.G_EXC_ERROR;
2736: END IF;
2737: ELSE
2738: IF l_project_in_rec.PROJECT_BIL_RATE_TYPE = 'User' THEN
2739: IF l_project_in_rec.PROJECT_BIL_EXCHANGE_RATE is NULL
2740: OR l_project_in_rec.PROJECT_BIL_EXCHANGE_RATE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
2741: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN -- PA_EXCH_RATE_NULL_PC_AMG:Project Exchange Rate cannot be null when project rate type is User.
2742: FND_MESSAGE.SET_NAME('PA','PA_EXCH_RATE_NULL_PC_AMG');
2743: FND_MSG_PUB.ADD;
2744: RAISE FND_API.G_EXC_ERROR;
2745: END IF;
2746: END IF;
2747: ELSE -- non-User type
2748: IF l_project_in_rec.PROJECT_BIL_RATE_DATE_CODE is NULL
2751: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
2752: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_TYPE_INVALID_AMG');
2753: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Project Currency');
2754: FND_MSG_PUB.ADD;
2755: RAISE FND_API.G_EXC_ERROR;
2756: END IF;
2757: ELSE
2758: IF l_project_in_rec.PROJECT_BIL_RATE_DATE_CODE = 'Fixed Date' THEN
2759: IF l_project_in_rec.PROJECT_BIL_RATE_DATE is NULL
2761: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
2762: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_INVALID_AMG');
2763: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Project Currency');
2764: FND_MSG_PUB.ADD;
2765: RAISE FND_API.G_EXC_ERROR;
2766: END IF;
2767: END IF;
2768: END IF;
2769: END IF;
2775: OR l_project_in_rec.PROJFUNC_BIL_RATE_TYPE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR THEN -- PA_PFC_RATE_TYPE_INV_AMG:The project functional exchage rate type is invalid
2776: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
2777: FND_MESSAGE.SET_NAME('PA','PA_PFC_RATE_TYPE_INV_AMG');
2778: FND_MSG_PUB.ADD;
2779: RAISE FND_API.G_EXC_ERROR;
2780: END IF;
2781: ELSE
2782: IF l_project_in_rec.PROJFUNC_BIL_RATE_TYPE = 'User' THEN
2783: IF l_project_in_rec.PROJFUNC_BIL_EXCHANGE_RATE is NULL
2784: OR l_project_in_rec.PROJFUNC_BIL_EXCHANGE_RATE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
2785: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN -- PA_EXCH_RATE_NULL_PF_AMG:Project Functional Exchange Rate cannot be null when project functional rate type is User.
2786: FND_MESSAGE.SET_NAME('PA','PA_EXCH_RATE_NULL_PF_AMG');
2787: FND_MSG_PUB.ADD;
2788: RAISE FND_API.G_EXC_ERROR;
2789: END IF;
2790: END IF;
2791:
2792: ELSE -- non-User type
2795: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
2796: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_TYPE_INVALID_AMG');
2797: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Project Functional Currency');
2798: FND_MSG_PUB.ADD;
2799: RAISE FND_API.G_EXC_ERROR;
2800: END IF;
2801: ELSE
2802: IF l_project_in_rec.PROJFUNC_BIL_RATE_DATE_CODE = 'Fixed Date' THEN
2803: IF l_project_in_rec.PROJFUNC_BIL_RATE_DATE is NULL
2805: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
2806: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_INVALID_AMG');
2807: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Project Functional Currency');
2808: FND_MSG_PUB.ADD;
2809: RAISE FND_API.G_EXC_ERROR;
2810: END IF;
2811: END IF;
2812: END IF;
2813: END IF;
2820: OR l_project_in_rec.FUNDING_RATE_TYPE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR THEN -- PA_FUND_RATE_TYPE_INV_AMG:The funding exchage rate type is invalid
2821: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
2822: FND_MESSAGE.SET_NAME('PA','PA_FUND_RATE_TYPE_INV_AMG');
2823: FND_MSG_PUB.ADD;
2824: RAISE FND_API.G_EXC_ERROR;
2825: END IF;
2826: ELSE
2827: IF l_project_in_rec.FUNDING_RATE_TYPE = 'User' THEN
2828: IF l_project_in_rec.FUNDING_EXCHANGE_RATE is NULL
2829: OR l_project_in_rec.FUNDING_EXCHANGE_RATE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
2830: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN -- PA_EXCHANGE_RATE_NULL:Exchange rate cannot be null when rate type is User.
2831: FND_MESSAGE.SET_NAME('PA','PA_EXCHANGE_RATE_NULL');
2832: FND_MSG_PUB.ADD;
2833: RAISE FND_API.G_EXC_ERROR;
2834: END IF;
2835: END IF;
2836:
2837: ELSE -- non-User type
2840: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
2841: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_TYPE_INVALID_AMG');
2842: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Funding Currency');
2843: FND_MSG_PUB.ADD;
2844: RAISE FND_API.G_EXC_ERROR;
2845: END IF;
2846: ELSE
2847: IF l_project_in_rec.FUNDING_RATE_DATE_CODE = 'Fixed Date' THEN
2848: IF l_project_in_rec.FUNDING_RATE_DATE is NULL
2850: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
2851: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_INVALID_AMG');
2852: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Funding Currency');
2853: FND_MSG_PUB.ADD;
2854: RAISE FND_API.G_EXC_ERROR;
2855: END IF;
2856: END IF;
2857: END IF;
2858: END IF;
2958:
2959: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
2960: ,p_msg_name => 'PA_INVALID_PRIORITY_CODE');
2961:
2962: l_return_status := FND_API.G_RET_STS_ERROR;
2963:
2964: RAISE FND_API.G_EXC_ERROR;
2965:
2966: END IF;
2960: ,p_msg_name => 'PA_INVALID_PRIORITY_CODE');
2961:
2962: l_return_status := FND_API.G_RET_STS_ERROR;
2963:
2964: RAISE FND_API.G_EXC_ERROR;
2965:
2966: END IF;
2967:
2968: END IF;
3054: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
3055: ,p_msg_name => 'PA_FUNDS_FLAG_CANT_ENABLED'
3056: );
3057:
3058: l_return_status := FND_API.G_RET_STS_ERROR;
3059:
3060: RAISE FND_API.G_EXC_ERROR;
3061: END IF;
3062: /*
3056: );
3057:
3058: l_return_status := FND_API.G_RET_STS_ERROR;
3059:
3060: RAISE FND_API.G_EXC_ERROR;
3061: END IF;
3062: /*
3063: IF nvl(l_chk_rev_inv_flag,'N') ='Y' AND l_project_in_rec.date_eff_funds_flag <> l_orig_date_eff_funds_flag THEN
3064:
3065: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
3066: ,p_msg_name => 'PA_FUNDS_FLAG_NOT_UPDATBL'
3067: );
3068:
3069: l_return_status := FND_API.G_RET_STS_ERROR;
3070:
3071: RAISE FND_API.G_EXC_ERROR;
3072: END IF;
3073: */
3067: );
3068:
3069: l_return_status := FND_API.G_RET_STS_ERROR;
3070:
3071: RAISE FND_API.G_EXC_ERROR;
3072: END IF;
3073: */
3074: l_date_eff_funds_flag := l_project_in_rec.date_eff_funds_flag;
3075: END IF;
3112: p_msg_count => l_msg_count,
3113: p_msg_data => l_msg_data,
3114: p_return_status => l_return_status,
3115: p_function_allowed => l_function_allowed);
3116: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3117: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3118: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
3119: RAISE FND_API.G_EXC_ERROR;
3120: END IF;
3113: p_msg_data => l_msg_data,
3114: p_return_status => l_return_status,
3115: p_function_allowed => l_function_allowed);
3116: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3117: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3118: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
3119: RAISE FND_API.G_EXC_ERROR;
3120: END IF;
3121:
3114: p_return_status => l_return_status,
3115: p_function_allowed => l_function_allowed);
3116: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3117: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3118: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
3119: RAISE FND_API.G_EXC_ERROR;
3120: END IF;
3121:
3122: IF l_function_allowed = 'N' THEN
3115: p_function_allowed => l_function_allowed);
3116: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3117: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3118: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
3119: RAISE FND_API.G_EXC_ERROR;
3120: END IF;
3121:
3122: IF l_function_allowed = 'N' THEN
3123: pa_interface_utils_pub.map_new_amg_msg
3129: ,p_attribute2 => ''
3130: ,p_attribute3 => ''
3131: ,p_attribute4 => ''
3132: ,p_attribute5 => '');
3133: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3134: RAISE FND_API.G_EXC_ERROR;
3135: END IF;
3136: ELSE
3137: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
3130: ,p_attribute3 => ''
3131: ,p_attribute4 => ''
3132: ,p_attribute5 => '');
3133: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3134: RAISE FND_API.G_EXC_ERROR;
3135: END IF;
3136: ELSE
3137: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
3138: pa_interface_utils_pub.map_new_amg_msg
3145: ,p_attribute3 => ''
3146: ,p_attribute4 => ''
3147: ,p_attribute5 => '');
3148: END IF;
3149: RAISE FND_API.G_EXC_ERROR;
3150: END IF;
3151: l_en_top_task_customer_flag := l_project_in_rec.enable_top_task_customer_flag;
3152: END IF;
3153:
3163: p_msg_count => l_msg_count,
3164: p_msg_data => l_msg_data,
3165: p_return_status => l_return_status,
3166: p_function_allowed => l_function_allowed);
3167: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3168: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3169: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
3170: RAISE FND_API.G_EXC_ERROR;
3171: END IF;
3164: p_msg_data => l_msg_data,
3165: p_return_status => l_return_status,
3166: p_function_allowed => l_function_allowed);
3167: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3168: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3169: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
3170: RAISE FND_API.G_EXC_ERROR;
3171: END IF;
3172:
3165: p_return_status => l_return_status,
3166: p_function_allowed => l_function_allowed);
3167: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3168: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3169: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
3170: RAISE FND_API.G_EXC_ERROR;
3171: END IF;
3172:
3173: IF l_function_allowed = 'N' THEN
3166: p_function_allowed => l_function_allowed);
3167: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3168: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3169: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
3170: RAISE FND_API.G_EXC_ERROR;
3171: END IF;
3172:
3173: IF l_function_allowed = 'N' THEN
3174: pa_interface_utils_pub.map_new_amg_msg
3180: ,p_attribute2 => ''
3181: ,p_attribute3 => ''
3182: ,p_attribute4 => ''
3183: ,p_attribute5 => '');
3184: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3185: RAISE FND_API.G_EXC_ERROR;
3186: END IF;
3187: ELSE
3188: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
3181: ,p_attribute3 => ''
3182: ,p_attribute4 => ''
3183: ,p_attribute5 => '');
3184: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3185: RAISE FND_API.G_EXC_ERROR;
3186: END IF;
3187: ELSE
3188: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
3189: pa_interface_utils_pub.map_new_amg_msg
3196: ,p_attribute3 => ''
3197: ,p_attribute4 => ''
3198: ,p_attribute5 => '');
3199: END IF;
3200: RAISE FND_API.G_EXC_ERROR;
3201: END IF;
3202: l_en_top_task_inv_mth_flag := l_project_in_rec.enable_top_task_inv_mth_flag;
3203: END IF;
3204: --Bug 3279981 Review
3277: );
3278:
3279: IF l_err_code > 0
3280: then
3281: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3282:
3283: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR)
3284: THEN
3285:
3298: END IF;
3299:
3300: END IF;
3301:
3302: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3303: RAISE FND_API.G_EXC_ERROR;
3304:
3305: ELSIF l_err_code < 0
3306: then
3299:
3300: END IF;
3301:
3302: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3303: RAISE FND_API.G_EXC_ERROR;
3304:
3305: ELSIF l_err_code < 0
3306: then
3307:
3304:
3305: ELSIF l_err_code < 0
3306: then
3307:
3308: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3309:
3310: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
3311: THEN
3312: pa_interface_utils_pub.map_new_amg_msg('PA_COPY_PROJECT_FAILED','CHANGE','N',
3318: FND_MSG_PUB.add;
3319: /* Code addition ended for bug 3725338 */
3320: END IF;
3321:
3322: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3323: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3324:
3325: end IF;
3326:
3319: /* Code addition ended for bug 3725338 */
3320: END IF;
3321:
3322: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3323: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3324:
3325: end IF;
3326:
3327: /* Not required anymore since they are passed as input to copy project
3376: ,p_attribute4 => ''
3377: ,p_attribute5 => '');
3378: END IF;
3379:
3380: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3381: RAISE FND_API.G_EXC_ERROR;
3382:
3383: END IF;
3384:
3377: ,p_attribute5 => '');
3378: END IF;
3379:
3380: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3381: RAISE FND_API.G_EXC_ERROR;
3382:
3383: END IF;
3384:
3385: /*Customer Account Relationship Changes*/
3415: ,p_attribute4 => ''
3416: ,p_attribute5 => '');
3417: END IF;
3418:
3419: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3420: RAISE FND_API.G_EXC_ERROR;
3421:
3422: END IF;
3423: END IF;
3416: ,p_attribute5 => '');
3417: END IF;
3418:
3419: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3420: RAISE FND_API.G_EXC_ERROR;
3421:
3422: END IF;
3423: END IF;
3424:
3454: ,p_attribute4 => ''
3455: ,p_attribute5 => '');
3456: END IF;
3457:
3458: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3459: RAISE FND_API.G_EXC_ERROR;
3460:
3461: END IF;
3462: END IF;
3455: ,p_attribute5 => '');
3456: END IF;
3457:
3458: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3459: RAISE FND_API.G_EXC_ERROR;
3460:
3461: END IF;
3462: END IF;
3463: ----dbms_output.put_line('Does the control come till here');
3498: ,p_token2 => 'CUSTOMER_ID'
3499: ,p_value2 => p_customers_in(i).customer_id
3500: );
3501: END IF;
3502: RAISE FND_API.G_EXC_ERROR;
3503: END IF;
3504: */ --End of commenting for Bug#5517655
3505:
3506: IF p_customers_in(i).CUSTOMER_BILL_SPLIT IS NULL OR
3528: ,p_token3 => 'CONTACT_ID'
3529: ,p_value3 => p_customers_in(i).CONTACT_ID
3530: );
3531: END IF;
3532: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3533: p_return_status := FND_API.G_RET_STS_ERROR;
3534: RAISE FND_API.G_EXC_ERROR;
3535: END IF;
3536: end if;
3529: ,p_value3 => p_customers_in(i).CONTACT_ID
3530: );
3531: END IF;
3532: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3533: p_return_status := FND_API.G_RET_STS_ERROR;
3534: RAISE FND_API.G_EXC_ERROR;
3535: END IF;
3536: end if;
3537: ----dbms_output.put_line('Error is hrown soon after this');
3530: );
3531: END IF;
3532: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3533: p_return_status := FND_API.G_RET_STS_ERROR;
3534: RAISE FND_API.G_EXC_ERROR;
3535: END IF;
3536: end if;
3537: ----dbms_output.put_line('Error is hrown soon after this');
3538: If p_customers_in(i).PROJECT_CONTACT_TYPE_CODE = 'BILLING' then
3570: ,p_attribute3 => ''
3571: ,p_attribute4 => ''
3572: ,p_attribute5 => '');
3573: END IF;
3574: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3575: p_return_status := FND_API.G_RET_STS_ERROR;
3576: RAISE FND_API.G_EXC_ERROR;
3577: end if;
3578:
3571: ,p_attribute4 => ''
3572: ,p_attribute5 => '');
3573: END IF;
3574: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3575: p_return_status := FND_API.G_RET_STS_ERROR;
3576: RAISE FND_API.G_EXC_ERROR;
3577: end if;
3578:
3579: End if; --added by aditi for tracking bug -- FOR CUSTOMER ISSUE
3572: ,p_attribute5 => '');
3573: END IF;
3574: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3575: p_return_status := FND_API.G_RET_STS_ERROR;
3576: RAISE FND_API.G_EXC_ERROR;
3577: end if;
3578:
3579: End if; --added by aditi for tracking bug -- FOR CUSTOMER ISSUE
3580: END if; -- end here
3601: ,p_attribute3 => ''
3602: ,p_attribute4 => ''
3603: ,p_attribute5 => '');
3604: END IF;
3605: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3606: p_return_status := FND_API.G_RET_STS_ERROR;
3607: RAISE FND_API.G_EXC_ERROR;
3608: end if;
3609:
3602: ,p_attribute4 => ''
3603: ,p_attribute5 => '');
3604: END IF;
3605: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3606: p_return_status := FND_API.G_RET_STS_ERROR;
3607: RAISE FND_API.G_EXC_ERROR;
3608: end if;
3609:
3610: End if; --added by aditi for tracking bug -- FOR CUSTOMER ISSUE
3603: ,p_attribute5 => '');
3604: END IF;
3605: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3606: p_return_status := FND_API.G_RET_STS_ERROR;
3607: RAISE FND_API.G_EXC_ERROR;
3608: end if;
3609:
3610: End if; --added by aditi for tracking bug -- FOR CUSTOMER ISSUE
3611:
3640: ,p_attribute2 => ''
3641: ,p_attribute3 => ''
3642: ,p_attribute4 => ''
3643: ,p_attribute5 => '');
3644: RAISE FND_API.G_EXC_ERROR;
3645: END IF; */
3646: /* Code added for tracking bug */
3647: IF(NVL(l_cust_acc_rel_code,'N') ='N' and
3648: l_in_customer_id IS NOT NULL AND l_in_customer_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM) and
3663: ,p_attribute2 => ''
3664: ,p_attribute3 => ''
3665: ,p_attribute4 => ''
3666: ,p_attribute5 => '');
3667: RAISE FND_API.G_EXC_ERROR;
3668: END IF;
3669:
3670: /* End of part 1 tracking */
3671:
3687: ,p_attribute2 => ''
3688: ,p_attribute3 => ''
3689: ,p_attribute4 => ''
3690: ,p_attribute5 => '');
3691: RAISE FND_API.G_EXC_ERROR;
3692:
3693: END IF;
3694: */
3695: /* Bug 3077676 End */
3812: END IF;
3813:
3814: END IF;
3815:
3816: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3817: RAISE FND_API.G_EXC_ERROR;
3818:
3819: ELSIF l_err_code < 0
3820: THEN
3813:
3814: END IF;
3815:
3816: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
3817: RAISE FND_API.G_EXC_ERROR;
3818:
3819: ELSIF l_err_code < 0
3820: THEN
3821:
3832: ,p_attribute4 => ''
3833: ,p_attribute5 => '');
3834: END IF;
3835:
3836: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3837: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3838: END IF;
3839: end if; --bug 5731766
3840: --bug 5731766
3833: ,p_attribute5 => '');
3834: END IF;
3835:
3836: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3837: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3838: END IF;
3839: end if; --bug 5731766
3840: --bug 5731766
3841: If l_bill_to_customer_id is null then
3996: END IF;
3997:
3998: END IF;
3999:
4000: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
4001: RAISE FND_API.G_EXC_ERROR;
4002:
4003: ELSIF l_err_code < 0
4004: THEN
3997:
3998: END IF;
3999:
4000: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
4001: RAISE FND_API.G_EXC_ERROR;
4002:
4003: ELSIF l_err_code < 0
4004: THEN
4005:
4016: ,p_attribute4 => ''
4017: ,p_attribute5 => '');
4018: END IF;
4019:
4020: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4021: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4022: END IF;
4023: --END if;
4024:
4017: ,p_attribute5 => '');
4018: END IF;
4019:
4020: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4021: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4022: END IF;
4023: --END if;
4024:
4025: --Call copy retention after all customers are created.
4035: ,x_msg_data => l_msg_data);
4036:
4037: l_msg_count := FND_MSG_PUB.count_msg;
4038: IF l_msg_count > 0 THEN
4039: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
4040: RAISE FND_API.G_EXC_ERROR;
4041: END IF;
4042: END;
4043: --End copy retention changes.
4036:
4037: l_msg_count := FND_MSG_PUB.count_msg;
4038: IF l_msg_count > 0 THEN
4039: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
4040: RAISE FND_API.G_EXC_ERROR;
4041: END IF;
4042: END;
4043: --End copy retention changes.
4044:
4057:
4058: if l_party_id is not null then
4059:
4060: PA_PROJECT_PARTIES_PUB.CREATE_PROJECT_PARTY(
4061: p_validate_only => FND_API.G_FALSE
4062: , p_object_id => l_project_id
4063: , p_OBJECT_TYPE => 'PA_PROJECTS'
4064: , p_project_role_id => 100
4065: , p_project_role_type => 'CUSTOMER_ORG'
4081: , x_msg_data => l_msg_data );
4082:
4083: l_msg_count := FND_MSG_PUB.count_msg;
4084: IF l_msg_count > 0 THEN
4085: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
4086: RAISE FND_API.G_EXC_ERROR;
4087: END IF;
4088:
4089: -- Add the new project party ID to the customers row
4082:
4083: l_msg_count := FND_MSG_PUB.count_msg;
4084: IF l_msg_count > 0 THEN
4085: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
4086: RAISE FND_API.G_EXC_ERROR;
4087: END IF;
4088:
4089: -- Add the new project party ID to the customers row
4090: UPDATE PA_PROJECT_CUSTOMERS
4122: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
4123: ,p_msg_name => 'PA_TASK_FUNDING_EXIST'
4124: );
4125:
4126: l_return_status := FND_API.G_RET_STS_ERROR;
4127:
4128: RAISE FND_API.G_EXC_ERROR;
4129:
4130: END IF;
4124: );
4125:
4126: l_return_status := FND_API.G_RET_STS_ERROR;
4127:
4128: RAISE FND_API.G_EXC_ERROR;
4129:
4130: END IF;
4131: --Sunkalya federal. Bug#5511353
4132:
4196: ,l_project_id
4197: ,l_key_members
4198: );
4199:
4200: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4201: THEN
4202: p_project_out.return_status := l_return_status;
4203: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4204:
4199:
4200: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4201: THEN
4202: p_project_out.return_status := l_return_status;
4203: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4204:
4205: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4206: THEN
4207: p_project_out.return_status := l_return_status;
4201: THEN
4202: p_project_out.return_status := l_return_status;
4203: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4204:
4205: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4206: THEN
4207: p_project_out.return_status := l_return_status;
4208: RAISE FND_API.G_EXC_ERROR;
4209: END IF;
4204:
4205: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4206: THEN
4207: p_project_out.return_status := l_return_status;
4208: RAISE FND_API.G_EXC_ERROR;
4209: END IF;
4210:
4211: /* Start of code for bug #2111806
4212: Call the check_manager_date_range to check if the Project
4214:
4215: pa_project_check_pvt.check_manager_date_range(p_project_id => l_project_id
4216: ,p_return_status => l_return_status);
4217:
4218: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4219: THEN
4220: p_project_out.return_status := l_return_status;
4221: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4222:
4217:
4218: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4219: THEN
4220: p_project_out.return_status := l_return_status;
4221: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4222:
4223: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4224: THEN
4225: p_project_out.return_status := l_return_status;
4219: THEN
4220: p_project_out.return_status := l_return_status;
4221: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4222:
4223: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4224: THEN
4225: p_project_out.return_status := l_return_status;
4226: RAISE FND_API.G_EXC_ERROR;
4227: END IF;
4222:
4223: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4224: THEN
4225: p_project_out.return_status := l_return_status;
4226: RAISE FND_API.G_EXC_ERROR;
4227: END IF;
4228: /* End of code for bug #2111806 */
4229:
4230: END IF;
4255: pa_utils.add_message
4256: ( p_app_short_name => 'PA'
4257: ,p_msg_name => 'PA_PR_INSUF_PROJ_MGR'
4258: );
4259: RAISE FND_API.G_EXC_ERROR;
4260: END IF;
4261: END IF;
4262: END IF;
4263: /* End of code for bug #2111806 */
4300: ,l_project_id
4301: ,l_org_roles
4302: );
4303:
4304: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4305: THEN
4306: p_project_out.return_status := l_return_status;
4307: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4308:
4303:
4304: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4305: THEN
4306: p_project_out.return_status := l_return_status;
4307: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4308:
4309: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4310: THEN
4311: p_project_out.return_status := l_return_status;
4305: THEN
4306: p_project_out.return_status := l_return_status;
4307: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4308:
4309: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4310: THEN
4311: p_project_out.return_status := l_return_status;
4312: RAISE FND_API.G_EXC_ERROR;
4313: END IF;
4308:
4309: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4310: THEN
4311: p_project_out.return_status := l_return_status;
4312: RAISE FND_API.G_EXC_ERROR;
4313: END IF;
4314:
4315: END IF;
4316:
4331: ,l_project_id
4332: ,p_class_categories
4333: );
4334:
4335: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4336: THEN
4337: p_project_out.return_status := l_return_status;
4338: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4339:
4334:
4335: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4336: THEN
4337: p_project_out.return_status := l_return_status;
4338: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4339:
4340: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4341: THEN
4342: p_project_out.return_status := l_return_status;
4336: THEN
4337: p_project_out.return_status := l_return_status;
4338: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4339:
4340: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4341: THEN
4342: p_project_out.return_status := l_return_status;
4343: RAISE FND_API.G_EXC_ERROR;
4344: END IF;
4339:
4340: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4341: THEN
4342: p_project_out.return_status := l_return_status;
4343: RAISE FND_API.G_EXC_ERROR;
4344: END IF;
4345:
4346: END IF;
4347:
4368:
4369: --The following code is copied from create_project_party call above.
4370: l_msg_count := FND_MSG_PUB.count_msg;
4371: IF l_msg_count > 0 THEN
4372: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
4373: RAISE FND_API.G_EXC_ERROR;
4374: END IF;
4375: */
4376:
4369: --The following code is copied from create_project_party call above.
4370: l_msg_count := FND_MSG_PUB.count_msg;
4371: IF l_msg_count > 0 THEN
4372: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
4373: RAISE FND_API.G_EXC_ERROR;
4374: END IF;
4375: */
4376:
4377: --Project Connect 4.0
4394: ,x_msg_data => l_msg_data
4395: ,x_return_status => l_return_status
4396: );
4397:
4398: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4399: THEN
4400: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4401:
4402: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4396: );
4397:
4398: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4399: THEN
4400: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4401:
4402: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4403: THEN
4404: RAISE FND_API.G_EXC_ERROR;
4398: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4399: THEN
4400: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4401:
4402: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4403: THEN
4404: RAISE FND_API.G_EXC_ERROR;
4405: END IF;
4406: */
4400: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4401:
4402: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4403: THEN
4404: RAISE FND_API.G_EXC_ERROR;
4405: END IF;
4406: */
4407:
4408: --Project Structure Integration
4441: THEN
4442: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
4443: p_msg_name =>'PA_WRONG_STR_TYPE_AMG'); -- 'PA_TASKS_NOT_ALLOWD_AMG' -- It is decided to use the same message in this case too
4444: -- Workplan or Financial Structures must be enabled at source project/template level in order to enter Tasks.
4445: RAISE FND_API.G_EXC_ERROR ;
4446: ELSIF l_bug_wp_enabled = 'Y' AND l_bug_fp_enabled = 'N' AND p_tasks_in.exists(i) AND l_structure_in_rec.structure_type = 'FINANCIAL'
4447: THEN
4448: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
4449: p_msg_name => 'PA_WRONG_STR_TYPE_AMG' );
4447: THEN
4448: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
4449: p_msg_name => 'PA_WRONG_STR_TYPE_AMG' );
4450: -- Please enter the correct structure type or enable the Workplan/Financial structure at the source project/template level.
4451: RAISE FND_API.G_EXC_ERROR ;
4452: ELSIF l_bug_wp_enabled = 'N' AND l_bug_fp_enabled = 'Y' AND p_tasks_in.exists(i) AND l_structure_in_rec.structure_type = 'WORKPLAN'
4453: THEN
4454: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
4455: p_msg_name => 'PA_WRONG_STR_TYPE_AMG' );
4453: THEN
4454: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
4455: p_msg_name => 'PA_WRONG_STR_TYPE_AMG' );
4456: -- Please enter the correct structure type or enable the Workplan/Financial structure at the source project/template level.
4457: RAISE FND_API.G_EXC_ERROR ;
4458: END IF;
4459:
4460: IF p_tasks_in.exists(i)
4461: --Project Structures
4479:
4480: WHILE i IS NOT NULL LOOP
4481:
4482: --initialize return status to success
4483: p_tasks_out(i).return_status := FND_API.G_RET_STS_SUCCESS;
4484:
4485: l_task_in_rec := p_tasks_in(i);
4486:
4487: pa_project_pvt.validate_billing_info (
4491: p_return_status =>l_return_status
4492: );
4493:
4494:
4495: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4496: THEN
4497: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4498:
4499: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4493:
4494:
4495: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4496: THEN
4497: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4498:
4499: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4500: THEN
4501: p_multiple_task_msg := 'F';
4495: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4496: THEN
4497: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4498:
4499: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4500: THEN
4501: p_multiple_task_msg := 'F';
4502: -- RAISE FND_API.G_EXC_ERROR;
4503: END IF;
4498:
4499: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4500: THEN
4501: p_multiple_task_msg := 'F';
4502: -- RAISE FND_API.G_EXC_ERROR;
4503: END IF;
4504:
4505: -- Actions performed using the APIs would be subject to
4506: -- function security. If the responsibility does not allow
4522: p_return_status => l_return_status,
4523: p_function_allowed => l_function_allowed);
4524:
4525:
4526: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4527: THEN
4528: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4529:
4530: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4524:
4525:
4526: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4527: THEN
4528: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4529:
4530: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4531: THEN
4532: p_multiple_task_msg := 'F';
4526: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4527: THEN
4528: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4529:
4530: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4531: THEN
4532: p_multiple_task_msg := 'F';
4533: -- RAISE FND_API.G_EXC_ERROR;
4534: END IF;
4529:
4530: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4531: THEN
4532: p_multiple_task_msg := 'F';
4533: -- RAISE FND_API.G_EXC_ERROR;
4534: END IF;
4535:
4536: IF l_function_allowed = 'N' THEN
4537: pa_interface_utils_pub.map_new_amg_msg
4543: ,p_attribute2 => ''
4544: ,p_attribute3 => ''
4545: ,p_attribute4 => ''
4546: ,p_attribute5 => '');
4547: p_return_status := FND_API.G_RET_STS_ERROR;
4548: p_multiple_task_msg := 'F';
4549: -- RAISE FND_API.G_EXC_ERROR;
4550: END IF;
4551:
4545: ,p_attribute4 => ''
4546: ,p_attribute5 => '');
4547: p_return_status := FND_API.G_RET_STS_ERROR;
4548: p_multiple_task_msg := 'F';
4549: -- RAISE FND_API.G_EXC_ERROR;
4550: END IF;
4551:
4552: /*Code added for bug 2982057*/
4553:
4572: p_tasks_out(i).return_status := l_return_status;
4573: p_tasks_out(i).pa_task_id := l_task_id;
4574: p_tasks_out(i).pm_task_reference := l_task_in_rec.pm_task_reference;
4575:
4576: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4577: THEN
4578: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4579:
4580: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4574: p_tasks_out(i).pm_task_reference := l_task_in_rec.pm_task_reference;
4575:
4576: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4577: THEN
4578: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4579:
4580: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4581: THEN
4582: p_multiple_task_msg := 'F';
4576: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4577: THEN
4578: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4579:
4580: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4581: THEN
4582: p_multiple_task_msg := 'F';
4583: -- RAISE FND_API.G_EXC_ERROR;
4584: END IF;
4579:
4580: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4581: THEN
4582: p_multiple_task_msg := 'F';
4583: -- RAISE FND_API.G_EXC_ERROR;
4584: END IF;
4585:
4586: i := p_tasks_in.next(i);
4587:
4616: -- assign the return_status to the task out record
4617: p_tasks_out(i).return_status := l_return_status;
4618: p_tasks_out(i).task_version_id := l_task_version_id;
4619:
4620: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4621: THEN
4622: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4623:
4624: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4618: p_tasks_out(i).task_version_id := l_task_version_id;
4619:
4620: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4621: THEN
4622: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4623:
4624: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4625: THEN
4626: p_multiple_task_msg := 'F';
4620: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4621: THEN
4622: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4623:
4624: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4625: THEN
4626: p_multiple_task_msg := 'F';
4627: -- RAISE FND_API.G_EXC_ERROR;
4628: END IF;
4623:
4624: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4625: THEN
4626: p_multiple_task_msg := 'F';
4627: -- RAISE FND_API.G_EXC_ERROR;
4628: END IF;
4629:
4630: --move to next task in task pl/sql table
4631: i := p_tasks_in.next(i);
4652: ,p_attribute3 => ''
4653: ,p_attribute4 => ''
4654: ,p_attribute5 => '');
4655: END IF;
4656: RAISE FND_API.G_EXC_ERROR;
4657: END IF;
4658:
4659: -- Actions performed using the APIs would be subject to
4660: -- function security. If the responsibility does not allow
4676: p_return_status => l_return_status,
4677: p_function_allowed => l_function_allowed);
4678:
4679:
4680: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4681: THEN
4682: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4683:
4684: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4678:
4679:
4680: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4681: THEN
4682: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4683:
4684: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4685: THEN
4686: p_multiple_task_msg := 'F';
4680: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4681: THEN
4682: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4683:
4684: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4685: THEN
4686: p_multiple_task_msg := 'F';
4687: RAISE FND_API.G_EXC_ERROR;
4688: END IF;
4683:
4684: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4685: THEN
4686: p_multiple_task_msg := 'F';
4687: RAISE FND_API.G_EXC_ERROR;
4688: END IF;
4689:
4690: IF l_function_allowed = 'N' THEN
4691: pa_interface_utils_pub.map_new_amg_msg
4697: ,p_attribute2 => ''
4698: ,p_attribute3 => ''
4699: ,p_attribute4 => ''
4700: ,p_attribute5 => '');
4701: p_return_status := FND_API.G_RET_STS_ERROR;
4702: p_multiple_task_msg := 'F';
4703: RAISE FND_API.G_EXC_ERROR;
4704: END IF;
4705: /*
4699: ,p_attribute4 => ''
4700: ,p_attribute5 => '');
4701: p_return_status := FND_API.G_RET_STS_ERROR;
4702: p_multiple_task_msg := 'F';
4703: RAISE FND_API.G_EXC_ERROR;
4704: END IF;
4705: /*
4706: FP K one off Bug 2931183
4707: Commenting out this loop. Instead of this processing, we will call process_task_structure_bulk
4711:
4712: WHILE i IS NOT NULL LOOP
4713:
4714: --initialize return status to success
4715: p_tasks_out(i).return_status := FND_API.G_RET_STS_SUCCESS;
4716:
4717: l_task_in_rec := p_tasks_in(i);
4718:
4719: IF (l_task_in_rec.pa_parent_task_id IS NOT NULL
4731: ,x_parent_task_id => v_parent_task_id
4732: ,x_return_status => l_return_status
4733: );
4734:
4735: IF l_return_status <> FND_API.G_RET_STS_SUCCESS
4736: THEN
4737: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR)
4738: THEN
4739: pa_interface_utils_pub.map_new_amg_msg
4746: ,p_attribute3 => ''
4747: ,p_attribute4 => ''
4748: ,p_attribute5 => '');
4749: END IF;
4750: RAISE FND_API.G_EXC_ERROR;
4751: END IF;
4752:
4753: ELSE
4754: v_parent_task_id := null;
4824: p_tasks_out(i).pa_task_id := v_task_id;
4825: p_tasks_out(i).task_version_id := l_task_version_id;
4826: p_tasks_out(i).pm_task_reference := l_task_in_rec.pm_task_reference;
4827:
4828: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4829: THEN
4830: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4831:
4832: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4826: p_tasks_out(i).pm_task_reference := l_task_in_rec.pm_task_reference;
4827:
4828: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4829: THEN
4830: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4831:
4832: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4833: THEN
4834: p_multiple_task_msg := 'F';
4828: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4829: THEN
4830: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4831:
4832: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4833: THEN
4834: p_multiple_task_msg := 'F';
4835: RAISE FND_API.G_EXC_ERROR;
4836: END IF;
4831:
4832: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4833: THEN
4834: p_multiple_task_msg := 'F';
4835: RAISE FND_API.G_EXC_ERROR;
4836: END IF;
4837:
4838: i := p_tasks_in.next(i);
4839:
4854: x_return_status => l_return_status
4855: );
4856: p_return_status := l_return_status;
4857:
4858: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4859: THEN
4860: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4861:
4862: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4856: p_return_status := l_return_status;
4857:
4858: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4859: THEN
4860: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4861:
4862: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4863: THEN
4864: RAISE FND_API.G_EXC_ERROR;
4858: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4859: THEN
4860: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4861:
4862: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4863: THEN
4864: RAISE FND_API.G_EXC_ERROR;
4865: END IF;
4866:
4860: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4861:
4862: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4863: THEN
4864: RAISE FND_API.G_EXC_ERROR;
4865: END IF;
4866:
4867: -- Made the following changes for post FP K one off. Bug 2931183
4868: -- Performance changes.
4876: G_OP_VALIDATE_FLAG := p_op_validate_flag;
4877:
4878: PA_PROJ_TASK_STRUC_PUB.PROCESS_TASK_STRUCTURE_BULK
4879: ( p_api_version_number => p_api_version_number
4880: ,p_commit => FND_API.G_FALSE --p_commit : Bug 3668424: passing p_commit as FND_API.G_FALSE
4881: ,p_project_id => l_project_id -- Changed during UT.
4882: ,p_source_project_id => l_project_in_rec.created_from_project_id --ADUT. Included this new param.
4883: ,p_pm_product_code => p_pm_product_code
4884: ,p_structure_type => p_structure_in.structure_type
4893: ,x_msg_count => p_msg_count
4894: ,x_msg_data => p_msg_data
4895: );
4896:
4897: IF p_return_status <> FND_API.G_RET_STS_SUCCESS THEN
4898: IF l_debug_mode = 'Y' THEN
4899: pa_debug.g_err_stage := 'Errors in PROCESS_TASK_STRUCTURE_BULK ' ;
4900: pa_debug.write(g_module_name,pa_debug.g_err_stage,4);
4901: END IF;
4920: ,x_msg_data => l_msg_data
4921: ,x_return_status => l_return_status
4922: );
4923:
4924: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4925: THEN
4926: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4927:
4928: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4922: );
4923:
4924: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4925: THEN
4926: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4927:
4928: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4929: THEN
4930: p_multiple_task_msg := 'F';
4924: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4925: THEN
4926: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4927:
4928: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4929: THEN
4930: p_multiple_task_msg := 'F';
4931: RAISE FND_API.G_EXC_ERROR;
4932: END IF;
4927:
4928: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4929: THEN
4930: p_multiple_task_msg := 'F';
4931: RAISE FND_API.G_EXC_ERROR;
4932: END IF;
4933:
4934: --bug 2856033
4935:
4942: ,x_msg_data => l_msg_data
4943: ,x_return_status => l_return_status
4944: );
4945:
4946: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4947: THEN
4948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4949:
4950: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4944: );
4945:
4946: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4947: THEN
4948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4949:
4950: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4951: THEN
4952: p_multiple_task_msg := 'F';
4946: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4947: THEN
4948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
4949:
4950: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4951: THEN
4952: p_multiple_task_msg := 'F';
4953: RAISE FND_API.G_EXC_ERROR;
4954: END IF;
4949:
4950: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
4951: THEN
4952: p_multiple_task_msg := 'F';
4953: RAISE FND_API.G_EXC_ERROR;
4954: END IF;
4955:
4956: --bug 2856033
4957:
4960: Post FP K one off. Bug 2931183
4961: */
4962: IF p_multiple_task_msg = 'F'
4963: THEN
4964: RAISE FND_API.G_EXC_ERROR;
4965: END IF;
4966:
4967: -- FP-M Bug # 3301192 --create project
4968: l_d_loop_count := p_tasks_in.first;
4994: ,p_structure_type => p_structure_in.structure_type
4995: ,p_out_task_id => l_d_task_id
4996: ,p_return_status => l_return_status);
4997:
4998: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4999: THEN
5000: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5001: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5002: THEN
4996: ,p_return_status => l_return_status);
4997:
4998: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4999: THEN
5000: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5001: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5002: THEN
5003: p_multiple_task_msg := 'F';
5004: RAISE FND_API.G_EXC_ERROR;
4997:
4998: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
4999: THEN
5000: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5001: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5002: THEN
5003: p_multiple_task_msg := 'F';
5004: RAISE FND_API.G_EXC_ERROR;
5005: END IF;
5000: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5001: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5002: THEN
5003: p_multiple_task_msg := 'F';
5004: RAISE FND_API.G_EXC_ERROR;
5005: END IF;
5006: END IF;
5007: --maansari5/18
5008:
5024: ,x_return_status => l_return_status
5025: ,x_msg_count => l_msg_count
5026: ,x_msg_data => l_msg_data);
5027:
5028: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
5029: THEN
5030: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5031: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5032: THEN
5026: ,x_msg_data => l_msg_data);
5027:
5028: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
5029: THEN
5030: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5031: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5032: THEN
5033: p_multiple_task_msg := 'F';
5034: RAISE FND_API.G_EXC_ERROR;
5027:
5028: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
5029: THEN
5030: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5031: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5032: THEN
5033: p_multiple_task_msg := 'F';
5034: RAISE FND_API.G_EXC_ERROR;
5035: END IF;
5030: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5031: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5032: THEN
5033: p_multiple_task_msg := 'F';
5034: RAISE FND_API.G_EXC_ERROR;
5035: END IF;
5036: l_d_task_id := null;
5037:
5038: END IF;
5075: x_msg_count => l_msg_count,
5076: x_msg_data => l_msg_data,
5077: x_return_status => l_return_status );
5078:
5079: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
5080: THEN
5081: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5082: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5083: THEN
5077: x_return_status => l_return_status );
5078:
5079: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
5080: THEN
5081: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5082: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5083: THEN
5084: RAISE FND_API.G_EXC_ERROR;
5085: END IF;
5078:
5079: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
5080: THEN
5081: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5082: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5083: THEN
5084: RAISE FND_API.G_EXC_ERROR;
5085: END IF;
5086: END IF;
5080: THEN
5081: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5082: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5083: THEN
5084: RAISE FND_API.G_EXC_ERROR;
5085: END IF;
5086: END IF;
5087: --
5088: --Begin Add by rtarway for set financial task
5092: i := p_tasks_in.first();
5093:
5094: WHILE i IS NOT NULL LOOP
5095: --Initialize the return status to success
5096: p_tasks_out(i).return_status := FND_API.G_RET_STS_SUCCESS;
5097: l_task_in_rec := p_tasks_in(i);
5098: l_patask_record_version_number := NULL;
5099: --No Function Security Check required
5100:
5117:
5118: PA_TASKS_MAINT_PUB.SET_FINANCIAL_FLAG_WRAPPER
5119: (
5120: p_api_version => p_api_version_number
5121: , p_init_msg_list => FND_API.G_FALSE
5122: , p_commit => FND_API.G_FALSE--BUG 3766967
5123: , p_calling_module => 'AMG'
5124: , p_debug_mode => FND_API.G_TRUE
5125: , p_task_version_id => p_tasks_out(i).task_version_id
5118: PA_TASKS_MAINT_PUB.SET_FINANCIAL_FLAG_WRAPPER
5119: (
5120: p_api_version => p_api_version_number
5121: , p_init_msg_list => FND_API.G_FALSE
5122: , p_commit => FND_API.G_FALSE--BUG 3766967
5123: , p_calling_module => 'AMG'
5124: , p_debug_mode => FND_API.G_TRUE
5125: , p_task_version_id => p_tasks_out(i).task_version_id
5126: , p_checked_flag => l_task_in_rec.financial_task_flag
5120: p_api_version => p_api_version_number
5121: , p_init_msg_list => FND_API.G_FALSE
5122: , p_commit => FND_API.G_FALSE--BUG 3766967
5123: , p_calling_module => 'AMG'
5124: , p_debug_mode => FND_API.G_TRUE
5125: , p_task_version_id => p_tasks_out(i).task_version_id
5126: , p_checked_flag => l_task_in_rec.financial_task_flag
5127: , p_record_version_number => l_patask_record_version_number
5128: , p_project_id => l_project_id
5133: );
5134:
5135: -- Populating the appropriate values in task out records
5136: p_tasks_out(i).return_status := l_return_status;
5137: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5138: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5139: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5140: RAISE FND_API.G_EXC_ERROR;
5141: END IF;
5134:
5135: -- Populating the appropriate values in task out records
5136: p_tasks_out(i).return_status := l_return_status;
5137: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5138: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5139: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5140: RAISE FND_API.G_EXC_ERROR;
5141: END IF;
5142: END IF;
5135: -- Populating the appropriate values in task out records
5136: p_tasks_out(i).return_status := l_return_status;
5137: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5138: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5139: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5140: RAISE FND_API.G_EXC_ERROR;
5141: END IF;
5142: END IF;
5143: i := p_tasks_in.next(i);
5136: p_tasks_out(i).return_status := l_return_status;
5137: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5138: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5139: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5140: RAISE FND_API.G_EXC_ERROR;
5141: END IF;
5142: END IF;
5143: i := p_tasks_in.next(i);
5144: END LOOP;
5152: THEN
5153: i := p_tasks_in.first();
5154: WHILE i IS NOT NULL LOOP
5155: --Initialize the return status to success
5156: l_return_status := FND_API.G_RET_STS_SUCCESS;
5157: l_task_in_rec := p_tasks_in(i);
5158:
5159: --No Function Security Check required
5160: --Call the create_mapping only id p_mapped_task_reference or p_mapped_task_id is passed
5166: THEN
5167: pa_project_pub.create_mapping
5168: (
5169: p_api_version => p_api_version_number
5170: , p_init_msg_list => FND_API.G_FALSE
5171: , p_commit => FND_API.G_FALSE--bug 3766967
5172: , p_debug_mode => FND_API.G_TRUE
5173: , p_project_id => l_project_id
5174: , p_proj_source_reference => null
5167: pa_project_pub.create_mapping
5168: (
5169: p_api_version => p_api_version_number
5170: , p_init_msg_list => FND_API.G_FALSE
5171: , p_commit => FND_API.G_FALSE--bug 3766967
5172: , p_debug_mode => FND_API.G_TRUE
5173: , p_project_id => l_project_id
5174: , p_proj_source_reference => null
5175: , p_wkp_structure_version_id => l_d_structure_version_id
5168: (
5169: p_api_version => p_api_version_number
5170: , p_init_msg_list => FND_API.G_FALSE
5171: , p_commit => FND_API.G_FALSE--bug 3766967
5172: , p_debug_mode => FND_API.G_TRUE
5173: , p_project_id => l_project_id
5174: , p_proj_source_reference => null
5175: , p_wkp_structure_version_id => l_d_structure_version_id
5176: , p_wkp_task_id => p_tasks_out(i).pa_task_id--Since the tasks are already created , this will have task Ids
5181: , x_msg_data => l_msg_data
5182: );
5183: -- Populating the appropriate values in task out records
5184: p_tasks_out(i).return_status := l_return_status;
5185: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5186: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5187: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5188: RAISE FND_API.G_EXC_ERROR;
5189: END IF;
5182: );
5183: -- Populating the appropriate values in task out records
5184: p_tasks_out(i).return_status := l_return_status;
5185: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5186: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5187: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5188: RAISE FND_API.G_EXC_ERROR;
5189: END IF;
5190: END IF;
5183: -- Populating the appropriate values in task out records
5184: p_tasks_out(i).return_status := l_return_status;
5185: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5186: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5187: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5188: RAISE FND_API.G_EXC_ERROR;
5189: END IF;
5190: END IF;
5191: i := p_tasks_in.next(i);
5184: p_tasks_out(i).return_status := l_return_status;
5185: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5186: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5187: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5188: RAISE FND_API.G_EXC_ERROR;
5189: END IF;
5190: END IF;
5191: i := p_tasks_in.next(i);
5192: END LOOP;
5211:
5212: IF ( G_DLVR_STRUCTURE_ENABLED = 'Y' ) THEN
5213: Pa_Deliverable_Utils.enable_deliverable(
5214: p_api_version => p_api_version_number
5215: , p_init_msg_list => FND_API.G_FALSE
5216: , p_commit => FND_API.G_FALSE--bug 3766967
5217: , p_debug_mode => l_debug_mode
5218: , p_validate_only => FND_API.G_FALSE
5219: , p_project_id => l_project_id
5212: IF ( G_DLVR_STRUCTURE_ENABLED = 'Y' ) THEN
5213: Pa_Deliverable_Utils.enable_deliverable(
5214: p_api_version => p_api_version_number
5215: , p_init_msg_list => FND_API.G_FALSE
5216: , p_commit => FND_API.G_FALSE--bug 3766967
5217: , p_debug_mode => l_debug_mode
5218: , p_validate_only => FND_API.G_FALSE
5219: , p_project_id => l_project_id
5220: , x_return_status => l_return_status
5214: p_api_version => p_api_version_number
5215: , p_init_msg_list => FND_API.G_FALSE
5216: , p_commit => FND_API.G_FALSE--bug 3766967
5217: , p_debug_mode => l_debug_mode
5218: , p_validate_only => FND_API.G_FALSE
5219: , p_project_id => l_project_id
5220: , x_return_status => l_return_status
5221: , x_msg_count => l_msg_count
5222: , x_msg_data => l_msg_data
5224:
5225: -- 3700247 Added code to validate return status after enable_deliverabl call
5226: -- if return status is not 'S', raise the exception
5227:
5228: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5229: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5230: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5231: RAISE FND_API.G_EXC_ERROR;
5232: END IF;
5225: -- 3700247 Added code to validate return status after enable_deliverabl call
5226: -- if return status is not 'S', raise the exception
5227:
5228: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5229: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5230: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5231: RAISE FND_API.G_EXC_ERROR;
5232: END IF;
5233:
5226: -- if return status is not 'S', raise the exception
5227:
5228: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5229: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5230: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5231: RAISE FND_API.G_EXC_ERROR;
5232: END IF;
5233:
5234: ELSE
5227:
5228: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5229: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5230: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5231: RAISE FND_API.G_EXC_ERROR;
5232: END IF;
5233:
5234: ELSE
5235: IF i IS NOT NULL THEN
5234: ELSE
5235: IF i IS NOT NULL THEN
5236: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
5237: ,p_msg_name => 'PA_DLV_STRUCTURE_DISABLED');
5238: l_return_status := FND_API.G_RET_STS_ERROR;
5239: RAISE FND_API.G_EXC_ERROR;
5240: END IF;
5241: END IF;
5242:
5235: IF i IS NOT NULL THEN
5236: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
5237: ,p_msg_name => 'PA_DLV_STRUCTURE_DISABLED');
5238: l_return_status := FND_API.G_RET_STS_ERROR;
5239: RAISE FND_API.G_EXC_ERROR;
5240: END IF;
5241: END IF;
5242:
5243: WHILE i IS NOT NULL LOOP
5250: Pa_Project_Pub.create_deliverable
5251: ( p_api_version => p_api_version_number
5252: , p_init_msg_list => p_init_msg_list
5253: -- 3735792, passing p_commit as false to next level api calls
5254: , p_commit => FND_API.G_FALSE
5255: , x_return_status => l_return_status
5256: , p_deliverable_name => p_deliverables_in(i).deliverable_name
5257: , p_deliverable_short_name => p_deliverables_in(i).deliverable_short_name
5258: , p_deliverable_type_id => p_deliverables_in(i).deliverable_type_id
5298: -- removed the p_deliverables_out parameter and added global table
5299: -- p_deliverables_out(i).return_status := l_return_status;
5300: -- p_deliverables_out(i).deliverable_id := l_deliverable_id;
5301:
5302: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5303: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5304: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5305: RAISE FND_API.G_EXC_ERROR;
5306: END IF;
5299: -- p_deliverables_out(i).return_status := l_return_status;
5300: -- p_deliverables_out(i).deliverable_id := l_deliverable_id;
5301:
5302: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5303: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5304: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5305: RAISE FND_API.G_EXC_ERROR;
5306: END IF;
5307:
5300: -- p_deliverables_out(i).deliverable_id := l_deliverable_id;
5301:
5302: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5303: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5304: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5305: RAISE FND_API.G_EXC_ERROR;
5306: END IF;
5307:
5308: i := p_deliverables_in.next(i);
5301:
5302: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5303: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5304: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
5305: RAISE FND_API.G_EXC_ERROR;
5306: END IF;
5307:
5308: i := p_deliverables_in.next(i);
5309:
5311:
5312: ------ 3435905 : FP M : Deliverables Changes For AMG END-----------
5313: --4218977, rtarway, unset this global variable upon successfull completion of create project
5314: G_OP_VALIDATE_FLAG := null;
5315: IF (FND_API.to_boolean( p_commit ) OR
5316: l_wf_status_code = 'IN_ROUTE' )
5317: THEN
5318: COMMIT WORK;
5319: END IF;
5319: END IF;
5320:
5321:
5322: EXCEPTION
5323: WHEN FND_API.G_EXC_ERROR
5324: THEN
5325:
5326: ROLLBACK TO create_project_pub;
5327:
5333: END IF;
5334:
5335: --4218977, rtarway, unset this global variable upon unsuccessfull completion of create project
5336: G_OP_VALIDATE_FLAG := null;
5337: p_return_status := FND_API.G_RET_STS_ERROR;
5338:
5339: FND_MSG_PUB.Count_And_Get
5340: ( p_count => p_msg_count ,
5341: p_data => p_msg_data );
5339: FND_MSG_PUB.Count_And_Get
5340: ( p_count => p_msg_count ,
5341: p_data => p_msg_data );
5342:
5343: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
5344: THEN
5345: ROLLBACK TO create_project_pub;
5346:
5347: -- Bug 7335526
5352: END IF;
5353:
5354: --4218977, rtarway, unset this global variable upon unsuccessfull completion of create project
5355: G_OP_VALIDATE_FLAG := null;
5356: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5357:
5358: FND_MSG_PUB.Count_And_Get
5359: ( p_count => p_msg_count ,
5360: p_data => p_msg_data );
5371: END IF;
5372:
5373: --4218977, rtarway, unset this global variable upon unsuccessfull completion of create project
5374: G_OP_VALIDATE_FLAG := null;
5375: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5376:
5377: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
5378: THEN
5379: FND_MSG_PUB.add_exc_msg
5427: -- 09-01-2006 vkadimes Bug 4689326 Modified the customer_id validation part.
5428:
5429: PROCEDURE add_task
5430: ( p_api_version_number IN NUMBER
5431: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
5432: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
5433: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
5434: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
5435: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
5428:
5429: PROCEDURE add_task
5430: ( p_api_version_number IN NUMBER
5431: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
5432: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
5433: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
5434: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
5435: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
5436: ,p_pm_product_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
5772: SAVEPOINT add_task_pub;
5773:
5774: -- Standard call to check for call compatibility.
5775:
5776: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
5777: p_api_version_number ,
5778: l_api_name ,
5779: G_PKG_NAME )
5780: THEN
5778: l_api_name ,
5779: G_PKG_NAME )
5780: THEN
5781:
5782: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5783:
5784: END IF;
5785:
5786:
5807: ,p_attribute3 => ''
5808: ,p_attribute4 => ''
5809: ,p_attribute5 => '');
5810: END IF;
5811: RAISE FND_API.G_EXC_ERROR;
5812: END IF;
5813:
5814:
5815: l_resp_id := FND_GLOBAL.Resp_id;
5827: , p_return_status => l_return_status
5828: );
5829:
5830:
5831: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
5832:
5833: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5834:
5835: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
5829:
5830:
5831: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
5832:
5833: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5834:
5835: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
5836:
5837: RAISE FND_API.G_EXC_ERROR;
5831: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
5832:
5833: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5834:
5835: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
5836:
5837: RAISE FND_API.G_EXC_ERROR;
5838: END IF;
5839: --Moved from below for bug 2471668
5833: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5834:
5835: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
5836:
5837: RAISE FND_API.G_EXC_ERROR;
5838: END IF;
5839: --Moved from below for bug 2471668
5840:
5841: -- Added for bug 3746912, reopened rtarway
5886: p_token1 => 'REQUESTID',
5887: p_value1 => l_request_id);
5888:
5889:
5890: RAISE FND_API.G_EXC_ERROR;
5891:
5892: ELSIF nvl(l_process_code,'-1') = 'WUE' THEN
5893: l_request_id := PA_PROJECT_STRUCTURE_UTILS.GET_CONC_REQUEST_ID(p_project_id => l_project_id -- bug 3106457 p_pa_project_id -- Bug 3091798
5894: ,p_structure_type => l_str_type ); --p_structure_type 3746912
5900: p_token1 => 'REQUESTID',
5901: p_value1 => l_request_id);
5902:
5903:
5904: RAISE FND_API.G_EXC_ERROR;
5905:
5906: END IF;
5907:
5908: */
5925: , p_msg_name => l_message_name
5926: , p_token1 => 'REQUESTID'
5927: , p_value1 => l_conc_request_id);
5928:
5929: RAISE FND_API.G_EXC_ERROR;
5930: end if;
5931:
5932: -- End fix for Bug # 4373055.
5933:
5961: p_msg_data => l_msg_data,
5962: p_return_status => l_return_status,
5963: p_function_allowed => l_function_allowed);
5964:
5965: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
5966: THEN
5967: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5968:
5969: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5963: p_function_allowed => l_function_allowed);
5964:
5965: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
5966: THEN
5967: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5968:
5969: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5970: THEN
5971: RAISE FND_API.G_EXC_ERROR;
5965: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
5966: THEN
5967: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5968:
5969: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5970: THEN
5971: RAISE FND_API.G_EXC_ERROR;
5972: END IF;
5973:
5967: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
5968:
5969: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
5970: THEN
5971: RAISE FND_API.G_EXC_ERROR;
5972: END IF;
5973:
5974: IF l_function_allowed = 'N' THEN
5975: pa_interface_utils_pub.map_new_amg_msg
5981: ,p_attribute2 => ''
5982: ,p_attribute3 => ''
5983: ,p_attribute4 => ''
5984: ,p_attribute5 => '');
5985: p_return_status := FND_API.G_RET_STS_ERROR;
5986: RAISE FND_API.G_EXC_ERROR;
5987: END IF;
5988:
5989: IF FND_API.TO_BOOLEAN( p_init_msg_list )
5982: ,p_attribute3 => ''
5983: ,p_attribute4 => ''
5984: ,p_attribute5 => '');
5985: p_return_status := FND_API.G_RET_STS_ERROR;
5986: RAISE FND_API.G_EXC_ERROR;
5987: END IF;
5988:
5989: IF FND_API.TO_BOOLEAN( p_init_msg_list )
5990: THEN
5985: p_return_status := FND_API.G_RET_STS_ERROR;
5986: RAISE FND_API.G_EXC_ERROR;
5987: END IF;
5988:
5989: IF FND_API.TO_BOOLEAN( p_init_msg_list )
5990: THEN
5991:
5992: FND_MSG_PUB.initialize;
5993:
5994: END IF;
5995:
5996: -- Set API return status to success
5997:
5998: p_return_status := FND_API.G_RET_STS_SUCCESS;
5999:
6000:
6001: /* Moving this code before calling the security API. Although p_pa_project_id contains the project id but
6002: it is converted and l_project_id is used subsequently.
6010: , p_return_status => l_return_status
6011: );
6012:
6013:
6014: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
6015:
6016: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6017:
6018: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
6012:
6013:
6014: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
6015:
6016: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6017:
6018: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
6019:
6020: RAISE FND_API.G_EXC_ERROR;
6014: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
6015:
6016: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6017:
6018: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
6019:
6020: RAISE FND_API.G_EXC_ERROR;
6021: END IF;
6022: */
6016: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6017:
6018: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
6019:
6020: RAISE FND_API.G_EXC_ERROR;
6021: END IF;
6022: */
6023:
6024: -- Now verify whether project security allows the user to update
6037: ,p_attribute2 => ''
6038: ,p_attribute3 => ''
6039: ,p_attribute4 => ''
6040: ,p_attribute5 => '');
6041: p_return_status := FND_API.G_RET_STS_ERROR;
6042: RAISE FND_API.G_EXC_ERROR;
6043: ELSE
6044: -- If the user has query privileges, then check whether
6045: -- update privileges are also available
6038: ,p_attribute3 => ''
6039: ,p_attribute4 => ''
6040: ,p_attribute5 => '');
6041: p_return_status := FND_API.G_RET_STS_ERROR;
6042: RAISE FND_API.G_EXC_ERROR;
6043: ELSE
6044: -- If the user has query privileges, then check whether
6045: -- update privileges are also available
6046: IF pa_security.allow_update (x_project_id => l_project_id ) = 'N' THEN
6057: ,p_attribute2 => ''
6058: ,p_attribute3 => ''
6059: ,p_attribute4 => ''
6060: ,p_attribute5 => '');
6061: p_return_status := FND_API.G_RET_STS_ERROR;
6062: RAISE FND_API.G_EXC_ERROR;
6063: END IF;
6064: END IF;
6065:
6058: ,p_attribute3 => ''
6059: ,p_attribute4 => ''
6060: ,p_attribute5 => '');
6061: p_return_status := FND_API.G_RET_STS_ERROR;
6062: RAISE FND_API.G_EXC_ERROR;
6063: END IF;
6064: END IF;
6065:
6066: -- Get segment1 for AMG messages
6093: ,p_attribute3 => ''
6094: ,p_attribute4 => ''
6095: ,p_attribute5 => '');
6096: END IF;
6097: RAISE FND_API.G_EXC_ERROR;
6098: END IF;
6099: --bug 2876703
6100:
6101: --bug 2738747
6140: (p_pm_parent_task_reference IS NOT NULL AND p_pm_parent_task_reference <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
6141: THEN
6142:
6143: check_add_subtask_ok( p_api_version_number => p_api_version_number
6144: ,p_init_msg_list => FND_API.G_FALSE
6145: ,p_msg_data => p_msg_data
6146: ,p_msg_count => p_msg_count
6147: ,p_return_status => l_return_status
6148: ,p_project_id => l_project_id
6152: ,p_add_subtask_ok_flag => l_add_subtask_ok_flag );
6153:
6154: END IF;
6155:
6156: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6157: THEN
6158: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6159:
6160: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6154: END IF;
6155:
6156: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6157: THEN
6158: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6159:
6160: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6161: THEN
6162:
6156: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6157: THEN
6158: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6159:
6160: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6161: THEN
6162:
6163: RAISE FND_API.G_EXC_ERROR;
6164: END IF;
6159:
6160: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6161: THEN
6162:
6163: RAISE FND_API.G_EXC_ERROR;
6164: END IF;
6165:
6166: IF l_add_subtask_ok_flag <> 'Y'
6167: then
6178: ,p_attribute4 => ''
6179: ,p_attribute5 => '');
6180: END IF;
6181:
6182: RAISE FND_API.G_EXC_ERROR;
6183:
6184: end IF;
6185:
6186: END IF; --<
6209: ,p_attribute3 => ''
6210: ,p_attribute4 => ''
6211: ,p_attribute5 => '');
6212: END IF;
6213: RAISE FND_API.G_EXC_ERROR;
6214: ELSE
6215: l_task_in_rec.invoice_method := p_invoice_method;
6216: END IF;
6217: ELSE
6262: END IF;
6263: -- End of Bug Number 4689326.
6264: END IF;
6265: CLOSE cur_check_proj_cust_exist;
6266: RAISE FND_API.G_EXC_ERROR;
6267: ELSE
6268: l_task_in_rec.customer_id := p_customer_id;
6269: CLOSE cur_check_proj_cust_exist;
6270: END IF;
6281: ,p_attribute2 => ''
6282: ,p_attribute3 => ''
6283: ,p_attribute4 => ''
6284: ,p_attribute5 => '');
6285: RAISE FND_API.G_EXC_ERROR;
6286: ELSE
6287: l_task_in_rec.customer_id :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM; -- when the customer_id is Miss Num we are passing Miss num to add_task_roundone.
6288: END IF;
6289: -- End of Bug Number 4689326
6493: ,p_attribute3 => ''
6494: ,p_attribute4 => ''
6495: ,p_attribute5 => '');
6496: END IF;
6497: RAISE FND_API.G_EXC_ERROR;
6498: ELSE
6499: /*As of now we are not doing the basic validation check for p_labor_tp_schedule_id */
6500: l_labor_tp_schedule_id := p_labor_tp_schedule_id;
6501: IF p_labor_tp_fixed_date = PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE THEN
6537: ,p_attribute3 => ''
6538: ,p_attribute4 => ''
6539: ,p_attribute5 => '');
6540: END IF;
6541: RAISE FND_API.G_EXC_ERROR;
6542: ELSE
6543: /*As of now we are not doing the basic validation check for p_nl_tp_schedule_id */
6544: l_nl_tp_schedule_id := p_nl_tp_schedule_id;
6545: IF p_nl_tp_fixed_date = PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE THEN
6574: -- PA_UTILS.ADD_MESSAGE
6575: -- (p_app_short_name => 'PA',
6576: -- p_msg_name => 'PA_PS_INV_REF_TASK_ID');
6577: --
6578: -- RAISE FND_API.G_EXC_ERROR;
6579: -- END IF;
6580: IF l_ref_task_id is null THEN
6581:
6582: IF (p_pa_parent_task_id IS NOT NULL AND p_pa_parent_task_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM) THEN
6620: ,p_attribute3 => ''
6621: ,p_attribute4 => ''
6622: ,p_attribute5 => '');
6623: END IF;
6624: RAISE FND_API.G_EXC_ERROR;
6625: END IF;
6626: --rtarway , 3661788, comment close command
6627: --CLOSE l_task_ref_to_id_csr;
6628: END IF;
6699:
6700: IF l_financial_task_flag = PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR THEN
6701: PA_UTILS.ADD_MESSAGE('PA', 'PA_AMG_RES_INV_PARAMS',
6702: 'INVALID_PARAMS', 'FINANCIAL_TASK_FLAG');
6703: RAISE FND_API.G_EXC_ERROR;
6704: End If;
6705: --Bug 6410745 End Changes
6706:
6707: --Begin Add by rtarway for FP.M Set Financial Task and Mapping
6750: --ISSUE
6751: --return the related task Reference as well?
6752:
6753:
6754: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6755: THEN
6756: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6757:
6758: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6752:
6753:
6754: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6755: THEN
6756: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6757:
6758: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6759: THEN
6760: RAISE FND_API.G_EXC_ERROR;
6754: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6755: THEN
6756: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6757:
6758: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6759: THEN
6760: RAISE FND_API.G_EXC_ERROR;
6761: END IF;
6762:
6756: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6757:
6758: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6759: THEN
6760: RAISE FND_API.G_EXC_ERROR;
6761: END IF;
6762:
6763: --we need to update to pm_product_code because it will be inherited
6764: --from the project in add_task_round_one
6784:
6785: -- assign the return_status to the out parameter
6786: p_return_status := l_return_status;
6787:
6788: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6789: THEN
6790: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6791:
6792: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6786: p_return_status := l_return_status;
6787:
6788: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6789: THEN
6790: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6791:
6792: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6793: THEN
6794: RAISE FND_API.G_EXC_ERROR;
6788: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6789: THEN
6790: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6791:
6792: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6793: THEN
6794: RAISE FND_API.G_EXC_ERROR;
6795: END IF;
6796: --ELSIF p_structure_type = 'WORKPLAN'
6790: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6791:
6792: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6793: THEN
6794: RAISE FND_API.G_EXC_ERROR;
6795: END IF;
6796: --ELSIF p_structure_type = 'WORKPLAN'
6797: ELSIF l_structure_type = 'WORKPLAN' --bug 2738747
6798: THEN
6811: ,p_attribute3 => ''
6812: ,p_attribute4 => ''
6813: ,p_attribute5 => '');
6814: END IF;
6815: RAISE FND_API.G_EXC_ERROR;
6816: END IF;
6817:
6818: IF ( p_structure_version_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM OR
6819: p_structure_version_id IS NULL )
6830: ,p_attribute3 => ''
6831: ,p_attribute4 => ''
6832: ,p_attribute5 => '');
6833: END IF;
6834: RAISE FND_API.G_EXC_ERROR;
6835: --bug 3098668
6836: ELSE
6837: l_str_ver_type := PA_PROJECT_STRUCTURE_UTILS.Get_Struc_Type_For_Version(p_structure_version_id,l_structure_type);
6838: struct_ver_updatable := PA_PROJECT_STRUCTURE_UTILS.is_structure_version_updatable(p_structure_version_id);
6854: ,p_attribute3 => ''
6855: ,p_attribute4 => ''
6856: ,p_attribute5 => '');
6857: END IF;
6858: RAISE FND_API.G_EXC_ERROR;
6859: END IF;
6860: --bug 3098668
6861: END IF;
6862:
6889: l_d_task_id := l_task_id;
6890:
6891: /* End adding code for issue in bug # 3663166. */
6892:
6893: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6894: THEN
6895: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6896:
6897: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6891: /* End adding code for issue in bug # 3663166. */
6892:
6893: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6894: THEN
6895: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6896:
6897: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6898: THEN
6899: RAISE FND_API.G_EXC_ERROR;
6893: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6894: THEN
6895: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6896:
6897: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6898: THEN
6899: RAISE FND_API.G_EXC_ERROR;
6900: END IF;
6901:
6895: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6896:
6897: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6898: THEN
6899: RAISE FND_API.G_EXC_ERROR;
6900: END IF;
6901:
6902: END IF;
6903:
6921: ,x_return_status => l_return_status
6922: ,x_msg_count => l_msg_count
6923: ,x_msg_data => l_msg_data);
6924:
6925: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6926: THEN
6927: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6928:
6929: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6923: ,x_msg_data => l_msg_data);
6924:
6925: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6926: THEN
6927: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6928:
6929: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6930: THEN
6931: RAISE FND_API.G_EXC_ERROR;
6925: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
6926: THEN
6927: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6928:
6929: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6930: THEN
6931: RAISE FND_API.G_EXC_ERROR;
6932: END IF;
6933: l_d_task_id := null;
6927: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
6928:
6929: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
6930: THEN
6931: RAISE FND_API.G_EXC_ERROR;
6932: END IF;
6933: l_d_task_id := null;
6934:
6935: END IF;
7051: );
7052:
7053: p_return_status := l_return_status;
7054:
7055: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7056: THEN
7057: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7058:
7059: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7053: p_return_status := l_return_status;
7054:
7055: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7056: THEN
7057: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7058:
7059: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7060: THEN
7061: RAISE FND_API.G_EXC_ERROR;
7055: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7056: THEN
7057: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7058:
7059: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7060: THEN
7061: RAISE FND_API.G_EXC_ERROR;
7062: END IF;
7063:
7057: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7058:
7059: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7060: THEN
7061: RAISE FND_API.G_EXC_ERROR;
7062: END IF;
7063:
7064: END IF; --<< n_structure_type >>
7065:
7079:
7080: pa_project_pub.create_mapping
7081: (
7082: p_api_version => p_api_version_number
7083: , p_init_msg_list => FND_API.G_FALSE
7084: , p_commit => FND_API.G_FALSE--bug 3766967
7085: , p_debug_mode => FND_API.G_TRUE
7086: , p_project_id => l_project_id
7087: , p_proj_source_reference => null
7080: pa_project_pub.create_mapping
7081: (
7082: p_api_version => p_api_version_number
7083: , p_init_msg_list => FND_API.G_FALSE
7084: , p_commit => FND_API.G_FALSE--bug 3766967
7085: , p_debug_mode => FND_API.G_TRUE
7086: , p_project_id => l_project_id
7087: , p_proj_source_reference => null
7088: , p_wkp_structure_version_id => p_structure_version_id
7081: (
7082: p_api_version => p_api_version_number
7083: , p_init_msg_list => FND_API.G_FALSE
7084: , p_commit => FND_API.G_FALSE--bug 3766967
7085: , p_debug_mode => FND_API.G_TRUE
7086: , p_project_id => l_project_id
7087: , p_proj_source_reference => null
7088: , p_wkp_structure_version_id => p_structure_version_id
7089: , p_wkp_task_id => l_task_id--Since the tasks are already created , this will have task Ids
7093: , x_msg_count => l_msg_count
7094: , x_msg_data => l_msg_data
7095:
7096: );
7097: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7098: THEN
7099: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7100:
7101: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7095:
7096: );
7097: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7098: THEN
7099: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7100:
7101: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7102: THEN
7103: RAISE FND_API.G_EXC_ERROR;
7097: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7098: THEN
7099: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7100:
7101: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7102: THEN
7103: RAISE FND_API.G_EXC_ERROR;
7104: END IF;
7105: END IF;
7099: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7100:
7101: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7102: THEN
7103: RAISE FND_API.G_EXC_ERROR;
7104: END IF;
7105: END IF;
7106: END IF;
7107: IF (G_PROJECT_SHARING_TYPE = 'SHARE_PARTIAL' and l_structure_type /*p_structure_type 3746912*/= 'FINANCIAL') THEN
7115: THEN
7116: PA_TASKS_MAINT_PUB.SET_FINANCIAL_FLAG_WRAPPER
7117: (
7118: p_api_version => p_api_version_number
7119: , p_init_msg_list => FND_API.G_FALSE
7120: , p_commit => FND_API.G_FALSE--bug 3766967
7121: , p_calling_module => 'AMG'
7122: , p_debug_mode => FND_API.G_TRUE
7123: , p_task_version_id => l_task_version_id
7116: PA_TASKS_MAINT_PUB.SET_FINANCIAL_FLAG_WRAPPER
7117: (
7118: p_api_version => p_api_version_number
7119: , p_init_msg_list => FND_API.G_FALSE
7120: , p_commit => FND_API.G_FALSE--bug 3766967
7121: , p_calling_module => 'AMG'
7122: , p_debug_mode => FND_API.G_TRUE
7123: , p_task_version_id => l_task_version_id
7124: , p_checked_flag => p_financial_task_flag
7118: p_api_version => p_api_version_number
7119: , p_init_msg_list => FND_API.G_FALSE
7120: , p_commit => FND_API.G_FALSE--bug 3766967
7121: , p_calling_module => 'AMG'
7122: , p_debug_mode => FND_API.G_TRUE
7123: , p_task_version_id => l_task_version_id
7124: , p_checked_flag => p_financial_task_flag
7125: , p_record_version_number => l_patask_record_version_number
7126: , p_project_id => l_project_id
7129: , x_msg_count => l_msg_count
7130: , x_msg_data => l_msg_data
7131: );
7132: -- Added for 4537865 : Check for Return Status after API call
7133: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7134: THEN
7135: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7136:
7137: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7131: );
7132: -- Added for 4537865 : Check for Return Status after API call
7133: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7134: THEN
7135: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7136:
7137: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7138: THEN
7139: RAISE FND_API.G_EXC_ERROR;
7133: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7134: THEN
7135: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7136:
7137: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7138: THEN
7139: RAISE FND_API.G_EXC_ERROR;
7140: END IF;
7141: END IF;
7135: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7136:
7137: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7138: THEN
7139: RAISE FND_API.G_EXC_ERROR;
7140: END IF;
7141: END IF;
7142: END IF;
7143: --End Add by rtarway FP.M Development
7163: ,x_msg_data => l_msg_data
7164: ,x_return_status => l_return_status
7165: );
7166:
7167: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7168: THEN
7169: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7170:
7171: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7165: );
7166:
7167: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7168: THEN
7169: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7170:
7171: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7172: THEN
7173: RAISE FND_API.G_EXC_ERROR;
7167: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7168: THEN
7169: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7170:
7171: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7172: THEN
7173: RAISE FND_API.G_EXC_ERROR;
7174: END IF;
7175: --bug 2856033
7169: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7170:
7171: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7172: THEN
7173: RAISE FND_API.G_EXC_ERROR;
7174: END IF;
7175: --bug 2856033
7176:
7177: l_task_weight_basis_code := PA_PROGRESS_UTILS.GET_TASK_WEIGHTING_BASIS(p_project_id => p_pa_project_id) ;
7189: ,x_msg_data => l_msg_data
7190: ,x_return_status => l_return_status
7191: );
7192:
7193: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7194: THEN
7195: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7196:
7197: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7191: );
7192:
7193: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7194: THEN
7195: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7196:
7197: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7198: THEN
7199: RAISE FND_API.G_EXC_ERROR;
7193: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7194: THEN
7195: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7196:
7197: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7198: THEN
7199: RAISE FND_API.G_EXC_ERROR;
7200: END IF;
7201: END IF ;
7195: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7196:
7197: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7198: THEN
7199: RAISE FND_API.G_EXC_ERROR;
7200: END IF;
7201: END IF ;
7202: -- PA L Changes 3010538
7203: END IF;
7234: ,x_return_status => l_return_status
7235: ,x_msg_count => l_msg_count
7236: ,x_msg_data => l_msg_data);
7237:
7238: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
7239: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7240: end if;
7241:
7242: ELSE
7235: ,x_msg_count => l_msg_count
7236: ,x_msg_data => l_msg_data);
7237:
7238: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
7239: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7240: end if;
7241:
7242: ELSE
7243: /* Ends added for Bug# 7264422 */
7254: ,x_return_status => l_return_status
7255: ,x_msg_count => l_msg_count
7256: ,x_msg_data => l_msg_data ) ;
7257:
7258: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7259: THEN
7260: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7261: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7262: THEN
7256: ,x_msg_data => l_msg_data ) ;
7257:
7258: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7259: THEN
7260: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7261: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7262: THEN
7263: RAISE FND_API.G_EXC_ERROR;
7264: END IF;
7257:
7258: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7259: THEN
7260: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7261: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7262: THEN
7263: RAISE FND_API.G_EXC_ERROR;
7264: END IF;
7265: ELSIF p_process_mode = 'CONCURRENT' THEN
7259: THEN
7260: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7261: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7262: THEN
7263: RAISE FND_API.G_EXC_ERROR;
7264: END IF;
7265: ELSIF p_process_mode = 'CONCURRENT' THEN
7266:
7267: PA_PROJ_TASK_STRUC_PUB. PROCESS_WBS_UPDATES_CONC_WRP(p_calling_context => 'CONC_UPDATE' -- Bug 6842218 'CON_UPDATE'
7270: ,x_return_status => l_return_status
7271: ,x_msg_count => l_msg_count
7272: ,x_msg_data => l_msg_data ) ;
7273:
7274: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7275: THEN
7276: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7277: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7278: THEN
7272: ,x_msg_data => l_msg_data ) ;
7273:
7274: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7275: THEN
7276: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7277: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7278: THEN
7279: RAISE FND_API.G_EXC_ERROR;
7280: END IF;
7273:
7274: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7275: THEN
7276: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7277: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7278: THEN
7279: RAISE FND_API.G_EXC_ERROR;
7280: END IF;
7281:
7275: THEN
7276: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7277: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
7278: THEN
7279: RAISE FND_API.G_EXC_ERROR;
7280: END IF;
7281:
7282:
7283: END IF ;
7302: , p_out_deliverable_id => l_deliverable_id
7303: , p_return_status => l_return_status
7304: );
7305:
7306: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
7307: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7308: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
7309: RAISE FND_API.G_EXC_ERROR;
7310: END IF;
7303: , p_return_status => l_return_status
7304: );
7305:
7306: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
7307: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7308: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
7309: RAISE FND_API.G_EXC_ERROR;
7310: END IF;
7311:
7304: );
7305:
7306: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
7307: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7308: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
7309: RAISE FND_API.G_EXC_ERROR;
7310: END IF;
7311:
7312: -- 3661788 pass validated deliverable id to association api
7305:
7306: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
7307: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7308: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
7309: RAISE FND_API.G_EXC_ERROR;
7310: END IF;
7311:
7312: -- 3661788 pass validated deliverable id to association api
7313:
7314: pa_project_pub.ASSOCIATE_DLV_TO_TASK (
7315: p_api_version => p_api_version_number
7316: , p_init_msg_list => p_init_msg_list
7317: -- 3735792, passing p_commit as false to next level api calls
7318: , p_commit => FND_API.G_FALSE
7319: , p_debug_mode => 'Y'
7320: , p_pm_source_code => p_pm_product_code
7321: , p_project_id => l_project_id
7322: , p_task_id => l_task_id
7325: , x_msg_count => l_msg_count
7326: , x_msg_data => l_msg_data
7327: );
7328:
7329: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
7330: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7331: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
7332: RAISE FND_API.G_EXC_ERROR;
7333: END IF;
7326: , x_msg_data => l_msg_data
7327: );
7328:
7329: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
7330: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7331: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
7332: RAISE FND_API.G_EXC_ERROR;
7333: END IF;
7334: END IF;
7327: );
7328:
7329: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
7330: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7331: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
7332: RAISE FND_API.G_EXC_ERROR;
7333: END IF;
7334: END IF;
7335:
7328:
7329: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
7330: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7331: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
7332: RAISE FND_API.G_EXC_ERROR;
7333: END IF;
7334: END IF;
7335:
7336: IF FND_API.to_boolean( p_commit )
7332: RAISE FND_API.G_EXC_ERROR;
7333: END IF;
7334: END IF;
7335:
7336: IF FND_API.to_boolean( p_commit )
7337: THEN
7338: COMMIT;
7339: END IF;
7340: --Unset this gloabl variable upon sucessfull completion
7341: G_OP_VALIDATE_FLAG := null;--added by rtarway for bug 4218977
7342:
7343: EXCEPTION
7344:
7345: WHEN FND_API.G_EXC_ERROR
7346: THEN
7347: ROLLBACK TO add_task_pub;
7348: G_OP_VALIDATE_FLAG := null;--added by rtarway for bug 4218977
7349: p_return_status := FND_API.G_RET_STS_ERROR;
7345: WHEN FND_API.G_EXC_ERROR
7346: THEN
7347: ROLLBACK TO add_task_pub;
7348: G_OP_VALIDATE_FLAG := null;--added by rtarway for bug 4218977
7349: p_return_status := FND_API.G_RET_STS_ERROR;
7350:
7351: -- Added for 4537865
7352: p_pa_project_id_out := NULL ;
7353: p_pa_project_number_out := NULL ;
7357: FND_MSG_PUB.Count_And_Get
7358: ( p_count => p_msg_count ,
7359: p_data => p_msg_data );
7360:
7361: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
7362: THEN
7363: ROLLBACK TO add_task_pub;
7364: G_OP_VALIDATE_FLAG := null;--added by rtarway for bug 4218977
7365: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
7361: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
7362: THEN
7363: ROLLBACK TO add_task_pub;
7364: G_OP_VALIDATE_FLAG := null;--added by rtarway for bug 4218977
7365: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
7366:
7367: -- Added for 4537865
7368: p_pa_project_id_out := NULL ;
7369: p_pa_project_number_out := NULL ;
7376:
7377: WHEN OTHERS THEN
7378: ROLLBACK TO add_task_pub;
7379: G_OP_VALIDATE_FLAG := null;--added by rtarway for bug 4218977
7380: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
7381:
7382: -- Added for 4537865
7383: p_pa_project_id_out := NULL ;
7384: p_pa_project_number_out := NULL ;
7418: -- 06-DEC-1996 L. de Werker Added locking mechanism.
7419: --
7420: --
7421: PROCEDURE delete_task ( p_api_version_number IN NUMBER := 1.0 -- for bug# 3802319
7422: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
7423: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
7424: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
7425: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
7426: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
7419: --
7420: --
7421: PROCEDURE delete_task ( p_api_version_number IN NUMBER := 1.0 -- for bug# 3802319
7422: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
7423: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
7424: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
7425: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
7426: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
7427: ,p_pm_product_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
7467: -- End fix for Bug # 4373055.
7468:
7469: BEGIN
7470:
7471: p_return_status := FND_API.G_RET_STS_SUCCESS ; -- 4537865 (Initialize p_return_status to Success)
7472: --bug 2471668.
7473: --We need to call this API here toget the corrct project id. This is also
7474: --called from the private API. But I discussed with Sakthi and he is ok to ca ll this
7475: --twice once here and second time in private API. The idea is to make the adv anced security changes
7482: , p_return_status => l_return_status
7483: );
7484:
7485:
7486: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
7487:
7488: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7489: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
7490: RAISE FND_API.G_EXC_ERROR;
7484:
7485:
7486: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
7487:
7488: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7489: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
7490: RAISE FND_API.G_EXC_ERROR;
7491: END IF;
7492:
7485:
7486: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
7487:
7488: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7489: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
7490: RAISE FND_API.G_EXC_ERROR;
7491: END IF;
7492:
7493: PA_INTERFACE_UTILS_PUB.G_PROJECT_ID := l_project_id; --bug 2471668 ( in the project context )
7486: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
7487:
7488: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7489: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
7490: RAISE FND_API.G_EXC_ERROR;
7491: END IF;
7492:
7493: PA_INTERFACE_UTILS_PUB.G_PROJECT_ID := l_project_id; --bug 2471668 ( in the project context )
7494: --end of bug 24771668
7510: ,p_attribute3 => ''
7511: ,p_attribute4 => ''
7512: ,p_attribute5 => '');
7513: END IF;
7514: RAISE FND_API.G_EXC_ERROR;
7515: END IF;
7516:
7517: IF p_task_version_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
7518: OR p_task_version_id IS NULL
7529: ,p_attribute3 => ''
7530: ,p_attribute4 => ''
7531: ,p_attribute5 => '');
7532: END IF;
7533: RAISE FND_API.G_EXC_ERROR;
7534: END IF;
7535:
7536: -- Bug 3106457. Derive the structure version id from the task version id.
7537: open cur_str_ver(p_task_version_id);
7594: p_msg_name => 'PA_PS_UPDWBS_PRC_INPROC_AMG', -- Bug 3091798. Message includes the request id.
7595: p_token1 => 'REQUESTID',
7596: p_value1 => l_request_id);
7597:
7598: RAISE FND_API.G_EXC_ERROR;
7599:
7600: ELSIF nvl(l_process_code,'-1') = 'WUE' THEN
7601: l_request_id := PA_PROJECT_STRUCTURE_UTILS.GET_CONC_REQUEST_ID(p_project_id => l_project_id --Bug 3091798
7602: ,p_structure_type => p_structure_type );
7607: p_msg_name => 'PA_PS_UPDWBS_PRC_ERR_AMG', -- Bug 3091798. Message includes the request id.
7608: p_token1 => 'REQUESTID',
7609: p_value1 => l_request_id);
7610:
7611: RAISE FND_API.G_EXC_ERROR;
7612:
7613: END IF;
7614:
7615: */
7632: , p_msg_name => l_message_name
7633: , p_token1 => 'REQUESTID'
7634: , p_value1 => l_conc_request_id);
7635:
7636: RAISE FND_API.G_EXC_ERROR;
7637: end if;
7638:
7639: -- End fix for Bug # 4373055.
7640:
7650: FROM pa_proj_element_versions
7651: WHERE element_version_id = p_task_version_id ;
7652: EXCEPTION
7653: WHEN NO_DATA_FOUND THEN
7654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7655: END ;
7656: */
7657:
7658: pa_project_pvt.delete_task1
7656: */
7657:
7658: pa_project_pvt.delete_task1
7659: ( p_api_version_number => p_api_version_number
7660: ,p_commit => FND_API.G_FALSE--bug 3766967
7661: ,p_init_msg_list => p_init_msg_list
7662: ,p_msg_count => p_msg_count
7663: ,p_msg_data => p_msg_data
7664: ,p_return_status => p_return_status
7701: ,x_return_status => p_return_status
7702: ,x_msg_count => p_msg_count
7703: ,x_msg_data => p_msg_data ) ;
7704:
7705: IF p_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7706: THEN
7707: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7708: ELSIF p_return_status = FND_API.G_RET_STS_ERROR
7709: THEN
7703: ,x_msg_data => p_msg_data ) ;
7704:
7705: IF p_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7706: THEN
7707: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7708: ELSIF p_return_status = FND_API.G_RET_STS_ERROR
7709: THEN
7710: RAISE FND_API.G_EXC_ERROR;
7711: END IF;
7704:
7705: IF p_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7706: THEN
7707: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7708: ELSIF p_return_status = FND_API.G_RET_STS_ERROR
7709: THEN
7710: RAISE FND_API.G_EXC_ERROR;
7711: END IF;
7712: ELSIF p_process_mode = 'CONCURRENT' THEN
7706: THEN
7707: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7708: ELSIF p_return_status = FND_API.G_RET_STS_ERROR
7709: THEN
7710: RAISE FND_API.G_EXC_ERROR;
7711: END IF;
7712: ELSIF p_process_mode = 'CONCURRENT' THEN
7713:
7714: PA_PROJ_TASK_STRUC_PUB. PROCESS_WBS_UPDATES_CONC_WRP(p_calling_context => 'CONC_UPDATE'
7717: ,x_return_status => p_return_status
7718: ,x_msg_count => p_msg_count
7719: ,x_msg_data => p_msg_data ) ;
7720:
7721: IF p_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7722: THEN
7723: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7724: ELSIF p_return_status = FND_API.G_RET_STS_ERROR
7725: THEN
7719: ,x_msg_data => p_msg_data ) ;
7720:
7721: IF p_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7722: THEN
7723: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7724: ELSIF p_return_status = FND_API.G_RET_STS_ERROR
7725: THEN
7726: RAISE FND_API.G_EXC_ERROR;
7727: END IF;
7720:
7721: IF p_return_status = FND_API.G_RET_STS_UNEXP_ERROR
7722: THEN
7723: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7724: ELSIF p_return_status = FND_API.G_RET_STS_ERROR
7725: THEN
7726: RAISE FND_API.G_EXC_ERROR;
7727: END IF;
7728:
7722: THEN
7723: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
7724: ELSIF p_return_status = FND_API.G_RET_STS_ERROR
7725: THEN
7726: RAISE FND_API.G_EXC_ERROR;
7727: END IF;
7728:
7729:
7730: END IF ;
7734:
7735: -- PA L Changes 3010538
7736:
7737: EXCEPTION
7738: WHEN FND_API.G_EXC_ERROR
7739: THEN
7740: p_return_status := FND_API.G_RET_STS_ERROR;
7741: p_msg_count := FND_MSG_PUB.count_msg; -- For Bug 4033410
7742:
7736:
7737: EXCEPTION
7738: WHEN FND_API.G_EXC_ERROR
7739: THEN
7740: p_return_status := FND_API.G_RET_STS_ERROR;
7741: p_msg_count := FND_MSG_PUB.count_msg; -- For Bug 4033410
7742:
7743: p_project_id := NULL ; -- 4537865
7744: p_task_id := NULL; -- 4537865
7742:
7743: p_project_id := NULL ; -- 4537865
7744: p_task_id := NULL; -- 4537865
7745:
7746: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
7747: THEN
7748:
7749: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
7750: p_msg_count := FND_MSG_PUB.count_msg; -- For Bug 4033410
7745:
7746: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
7747: THEN
7748:
7749: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
7750: p_msg_count := FND_MSG_PUB.count_msg; -- For Bug 4033410
7751:
7752: p_project_id := NULL ; -- 4537865
7753: p_task_id := NULL; -- 4537865
7752: p_project_id := NULL ; -- 4537865
7753: p_task_id := NULL; -- 4537865
7754:
7755: WHEN OTHERS THEN
7756: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
7757: p_msg_count := FND_MSG_PUB.count_msg; -- For Bug 4033410
7758:
7759: p_project_id := NULL ; -- 4537865
7760: p_task_id := NULL; -- 4537865
7840: --
7841:
7842: PROCEDURE load_project
7843: ( p_api_version_number IN NUMBER
7844: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
7845: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
7846: ,p_pa_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
7847: ,p_pa_project_number IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
7848: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
7999: SAVEPOINT load_project_pub;
8000:
8001: -- Standard call to check for call compatibility.
8002:
8003: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
8004: p_api_version_number ,
8005: l_api_name ,
8006: G_PKG_NAME )
8007: THEN
8005: l_api_name ,
8006: G_PKG_NAME )
8007: THEN
8008:
8009: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
8010:
8011: END IF;
8012:
8013: -- Initialize the message table if requested.
8011: END IF;
8012:
8013: -- Initialize the message table if requested.
8014:
8015: IF FND_API.TO_BOOLEAN( p_init_msg_list )
8016: THEN
8017:
8018: FND_MSG_PUB.initialize;
8019:
8020: END IF;
8021:
8022: -- Set API return status to success
8023:
8024: p_return_status := FND_API.G_RET_STS_SUCCESS;
8025:
8026: -- assign incoming parameters to the fields of global project record
8027:
8028: G_project_in_rec.pa_project_id := p_pa_project_id;
8191: G_project_in_rec.auto_release_pwp_inv := p_auto_release_pwp_inv ;
8192:
8193: EXCEPTION
8194:
8195: WHEN FND_API.G_EXC_ERROR
8196: THEN
8197: ROLLBACK TO load_project_pub;
8198:
8199: p_return_status := FND_API.G_RET_STS_ERROR;
8195: WHEN FND_API.G_EXC_ERROR
8196: THEN
8197: ROLLBACK TO load_project_pub;
8198:
8199: p_return_status := FND_API.G_RET_STS_ERROR;
8200:
8201:
8202: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8203: THEN
8198:
8199: p_return_status := FND_API.G_RET_STS_ERROR;
8200:
8201:
8202: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8203: THEN
8204: ROLLBACK TO load_project_pub;
8205:
8206: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8202: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8203: THEN
8204: ROLLBACK TO load_project_pub;
8205:
8206: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8207:
8208:
8209: WHEN OTHERS THEN
8210: ROLLBACK TO load_project_pub;
8208:
8209: WHEN OTHERS THEN
8210: ROLLBACK TO load_project_pub;
8211:
8212: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8213:
8214: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
8215: THEN
8216: FND_MSG_PUB.add_exc_msg
8240: --
8241:
8242: PROCEDURE load_key_member
8243: ( p_api_version_number IN NUMBER
8244: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
8245: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
8246: ,p_person_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
8247: ,p_project_role_type IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
8248: ,p_project_role_meaning IN VARCHAR2:= PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR -- Added for Bug 6408593
8262: SAVEPOINT load_key_member_pub;
8263:
8264: -- Standard call to check for call compatibility.
8265:
8266: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
8267: p_api_version_number ,
8268: l_api_name ,
8269: G_PKG_NAME )
8270: THEN
8268: l_api_name ,
8269: G_PKG_NAME )
8270: THEN
8271:
8272: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
8273:
8274: END IF;
8275:
8276: -- Initialize the message table if requested.
8274: END IF;
8275:
8276: -- Initialize the message table if requested.
8277:
8278: IF FND_API.TO_BOOLEAN( p_init_msg_list )
8279: THEN
8280:
8281: FND_MSG_PUB.initialize;
8282:
8283: END IF;
8284:
8285: -- Set API return status to success
8286:
8287: p_return_status := FND_API.G_RET_STS_SUCCESS;
8288:
8289: -- Load the table only if a valid person id is passed
8290:
8291: IF (p_person_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM) AND
8306:
8307:
8308: EXCEPTION
8309:
8310: WHEN FND_API.G_EXC_ERROR
8311: THEN
8312: ROLLBACK TO load_key_member_pub;
8313:
8314: p_return_status := FND_API.G_RET_STS_ERROR;
8310: WHEN FND_API.G_EXC_ERROR
8311: THEN
8312: ROLLBACK TO load_key_member_pub;
8313:
8314: p_return_status := FND_API.G_RET_STS_ERROR;
8315:
8316:
8317: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8318: THEN
8313:
8314: p_return_status := FND_API.G_RET_STS_ERROR;
8315:
8316:
8317: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8318: THEN
8319: ROLLBACK TO load_key_member_pub;
8320:
8321: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8317: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8318: THEN
8319: ROLLBACK TO load_key_member_pub;
8320:
8321: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8322:
8323:
8324: WHEN OTHERS THEN
8325: ROLLBACK TO load_key_member_pub;
8323:
8324: WHEN OTHERS THEN
8325: ROLLBACK TO load_key_member_pub;
8326:
8327: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8328:
8329: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
8330: THEN
8331: FND_MSG_PUB.add_exc_msg
8354: -- 20-MAR-2002 anlee Created
8355:
8356: PROCEDURE load_org_role
8357: ( p_api_version_number IN NUMBER
8358: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
8359: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
8360: ,p_resource_source_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
8361: ,p_project_role_type IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
8362: ,p_start_date IN DATE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
8375: SAVEPOINT load_org_role_pub;
8376:
8377: -- Standard call to check for call compatibility.
8378:
8379: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
8380: p_api_version_number ,
8381: l_api_name ,
8382: G_PKG_NAME )
8383: THEN
8381: l_api_name ,
8382: G_PKG_NAME )
8383: THEN
8384:
8385: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
8386:
8387: END IF;
8388:
8389: -- Initialize the message table if requested.
8387: END IF;
8388:
8389: -- Initialize the message table if requested.
8390:
8391: IF FND_API.TO_BOOLEAN( p_init_msg_list )
8392: THEN
8393:
8394: FND_MSG_PUB.initialize;
8395:
8396: END IF;
8397:
8398: -- Set API return status to success
8399:
8400: p_return_status := FND_API.G_RET_STS_SUCCESS;
8401:
8402: -- Load the table only if a valid resource source id is passed
8403:
8404: IF (p_resource_source_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM) AND
8417:
8418:
8419: EXCEPTION
8420:
8421: WHEN FND_API.G_EXC_ERROR
8422: THEN
8423: ROLLBACK TO load_org_role_pub;
8424:
8425: p_return_status := FND_API.G_RET_STS_ERROR;
8421: WHEN FND_API.G_EXC_ERROR
8422: THEN
8423: ROLLBACK TO load_org_role_pub;
8424:
8425: p_return_status := FND_API.G_RET_STS_ERROR;
8426:
8427:
8428: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8429: THEN
8424:
8425: p_return_status := FND_API.G_RET_STS_ERROR;
8426:
8427:
8428: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8429: THEN
8430: ROLLBACK TO load_org_role_pub;
8431:
8432: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8428: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8429: THEN
8430: ROLLBACK TO load_org_role_pub;
8431:
8432: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8433:
8434:
8435: WHEN OTHERS THEN
8436: ROLLBACK TO load_org_role_pub;
8434:
8435: WHEN OTHERS THEN
8436: ROLLBACK TO load_org_role_pub;
8437:
8438: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8439:
8440: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
8441: THEN
8442: FND_MSG_PUB.add_exc_msg
8467: --
8468:
8469: PROCEDURE load_class_category
8470: ( p_api_version_number IN NUMBER
8471: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
8472: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
8473: ,p_class_category IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
8474: ,p_class_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
8475: ,p_new_class_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR -- Added for Bug 7028230
8489: SAVEPOINT load_class_category_pub;
8490:
8491: -- Standard call to check for call compatibility.
8492:
8493: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
8494: p_api_version_number ,
8495: l_api_name ,
8496: G_PKG_NAME )
8497: THEN
8495: l_api_name ,
8496: G_PKG_NAME )
8497: THEN
8498:
8499: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
8500:
8501: END IF;
8502:
8503: -- Initialize the message table if requested.
8501: END IF;
8502:
8503: -- Initialize the message table if requested.
8504:
8505: IF FND_API.TO_BOOLEAN( p_init_msg_list )
8506: THEN
8507:
8508: FND_MSG_PUB.initialize;
8509:
8510: END IF;
8511:
8512: -- Set API return status to success
8513:
8514: p_return_status := FND_API.G_RET_STS_SUCCESS;
8515:
8516: -- Load the table only if a valid class category id is passed
8517:
8518: IF (p_class_category <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR ) AND
8550:
8551:
8552: EXCEPTION
8553:
8554: WHEN FND_API.G_EXC_ERROR
8555: THEN
8556: ROLLBACK TO load_class_category_pub;
8557:
8558: p_return_status := FND_API.G_RET_STS_ERROR;
8554: WHEN FND_API.G_EXC_ERROR
8555: THEN
8556: ROLLBACK TO load_class_category_pub;
8557:
8558: p_return_status := FND_API.G_RET_STS_ERROR;
8559:
8560:
8561: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8562: THEN
8557:
8558: p_return_status := FND_API.G_RET_STS_ERROR;
8559:
8560:
8561: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8562: THEN
8563: ROLLBACK TO load_class_category_pub;
8564:
8565: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8561: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
8562: THEN
8563: ROLLBACK TO load_class_category_pub;
8564:
8565: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8566:
8567:
8568: WHEN OTHERS THEN
8569: ROLLBACK TO load_class_category_pub;
8567:
8568: WHEN OTHERS THEN
8569: ROLLBACK TO load_class_category_pub;
8570:
8571: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
8572:
8573: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
8574: THEN
8575: FND_MSG_PUB.add_exc_msg
8606: -- 05-APR-2004 Rakesh Raghavan Progress Management Changes. Bug # 3420093.
8607:
8608: PROCEDURE load_task
8609: ( p_api_version_number IN NUMBER
8610: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
8611: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
8612: ,p_pm_task_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
8613: ,p_pa_task_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
8614: ,p_task_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
8774: SAVEPOINT load_task_pub;
8775:
8776: -- Standard call to check for call compatibility.
8777:
8778: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
8779: p_api_version_number ,
8780: l_api_name ,
8781: G_PKG_NAME )
8782: THEN
8780: l_api_name ,
8781: G_PKG_NAME )
8782: THEN
8783:
8784: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
8785:
8786: END IF;
8787:
8788: -- Initialize the message table if requested.
8786: END IF;
8787:
8788: -- Initialize the message table if requested.
8789:
8790: IF FND_API.TO_BOOLEAN( p_init_msg_list )
8791: THEN
8792:
8793: FND_MSG_PUB.initialize;
8794:
8795: END IF;
8796:
8797: -- Set API return status to success
8798:
8799: p_return_status := FND_API.G_RET_STS_SUCCESS;
8800:
8801:
8802: -- assign a value to the global counter for this table
8803: G_tasks_tbl_count := G_tasks_tbl_count + 1;
9033: -- Progress Management Changes. Bug # 3420093.
9034:
9035: EXCEPTION
9036:
9037: WHEN FND_API.G_EXC_ERROR
9038: THEN
9039: ROLLBACK TO load_task_pub;
9040:
9041: p_return_status := FND_API.G_RET_STS_ERROR;
9037: WHEN FND_API.G_EXC_ERROR
9038: THEN
9039: ROLLBACK TO load_task_pub;
9040:
9041: p_return_status := FND_API.G_RET_STS_ERROR;
9042:
9043:
9044: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
9045: THEN
9040:
9041: p_return_status := FND_API.G_RET_STS_ERROR;
9042:
9043:
9044: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
9045: THEN
9046: ROLLBACK TO load_task_pub;
9047:
9048: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9044: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
9045: THEN
9046: ROLLBACK TO load_task_pub;
9047:
9048: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9049:
9050:
9051: WHEN OTHERS THEN
9052: ROLLBACK TO load_task_pub;
9050:
9051: WHEN OTHERS THEN
9052: ROLLBACK TO load_task_pub;
9053:
9054: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9055:
9056: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
9057: THEN
9058: FND_MSG_PUB.add_exc_msg
9081: --
9082:
9083: PROCEDURE execute_create_project
9084: ( p_api_version_number IN NUMBER
9085: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
9086: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
9087: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
9088: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
9089: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
9082:
9083: PROCEDURE execute_create_project
9084: ( p_api_version_number IN NUMBER
9085: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
9086: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
9087: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
9088: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
9089: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
9090: ,p_workflow_started OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
9109: SAVEPOINT execute_create_project_pub;
9110:
9111: -- Standard call to check for call compatibility.
9112:
9113: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
9114: p_api_version_number ,
9115: l_api_name ,
9116: G_PKG_NAME )
9117: THEN
9115: l_api_name ,
9116: G_PKG_NAME )
9117: THEN
9118:
9119: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
9120:
9121: END IF;
9122:
9123: -- Initialize the message table if requested.
9121: END IF;
9122:
9123: -- Initialize the message table if requested.
9124:
9125: IF FND_API.TO_BOOLEAN( p_init_msg_list )
9126: THEN
9127:
9128: FND_MSG_PUB.initialize;
9129:
9131:
9132:
9133: -- Set API return status to success
9134:
9135: p_return_status := FND_API.G_RET_STS_SUCCESS;
9136:
9137: create_project( p_api_version_number => p_api_version_number
9138: ,p_commit => FND_API.G_FALSE
9139: ,p_init_msg_list => FND_API.G_FALSE
9134:
9135: p_return_status := FND_API.G_RET_STS_SUCCESS;
9136:
9137: create_project( p_api_version_number => p_api_version_number
9138: ,p_commit => FND_API.G_FALSE
9139: ,p_init_msg_list => FND_API.G_FALSE
9140: ,p_msg_count => p_msg_count
9141: ,p_msg_data => p_msg_data
9142: ,p_return_status => l_return_status
9135: p_return_status := FND_API.G_RET_STS_SUCCESS;
9136:
9137: create_project( p_api_version_number => p_api_version_number
9138: ,p_commit => FND_API.G_FALSE
9139: ,p_init_msg_list => FND_API.G_FALSE
9140: ,p_msg_count => p_msg_count
9141: ,p_msg_data => p_msg_data
9142: ,p_return_status => l_return_status
9143: ,p_workflow_started => p_workflow_started
9163: --FP M : deliverables
9164: );
9165:
9166:
9167: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
9168: THEN
9169:
9170: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
9171:
9166:
9167: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
9168: THEN
9169:
9170: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
9171:
9172: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
9173: THEN
9174:
9168: THEN
9169:
9170: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
9171:
9172: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
9173: THEN
9174:
9175: RAISE FND_API.G_EXC_ERROR;
9176: END IF;
9171:
9172: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
9173: THEN
9174:
9175: RAISE FND_API.G_EXC_ERROR;
9176: END IF;
9177:
9178: --assign appropriate values to outgoing parameters
9179: IF g_project_out_rec.pa_project_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
9186: ELSE
9187: p_pa_project_number := g_project_out_rec.pa_project_number;
9188: END IF;
9189:
9190: IF FND_API.to_boolean( p_commit )
9191: THEN
9192: COMMIT;
9193: END IF;
9194:
9194:
9195:
9196: EXCEPTION
9197:
9198: WHEN FND_API.G_EXC_ERROR
9199: THEN
9200: ROLLBACK TO execute_create_project_pub;
9201:
9202: p_return_status := FND_API.G_RET_STS_ERROR;
9198: WHEN FND_API.G_EXC_ERROR
9199: THEN
9200: ROLLBACK TO execute_create_project_pub;
9201:
9202: p_return_status := FND_API.G_RET_STS_ERROR;
9203:
9204: -- 4537865
9205: p_workflow_started := NULL ;
9206: p_pa_project_id := NULL ;
9210: FND_MSG_PUB.Count_And_Get
9211: ( p_count => p_msg_count ,
9212: p_data => p_msg_data );
9213:
9214: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
9215: THEN
9216: ROLLBACK TO execute_create_project_pub;
9217:
9218: -- 4537865
9220: p_pa_project_id := NULL ;
9221: p_pa_project_number := NULL ;
9222: -- 4537865
9223:
9224: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9225:
9226: FND_MSG_PUB.Count_And_Get
9227: ( p_count => p_msg_count ,
9228: p_data => p_msg_data );
9229:
9230: WHEN OTHERS THEN
9231: ROLLBACK TO execute_create_project_pub;
9232:
9233: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9234:
9235: -- 4537865
9236: p_workflow_started := NULL ;
9237: p_pa_project_id := NULL ;
9268: --
9269:
9270: PROCEDURE fetch_task
9271: ( p_api_version_number IN NUMBER
9272: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
9273: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
9274: ,p_task_index IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
9275: ,p_pa_task_id OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
9276: ,p_pm_task_reference OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
9289: SAVEPOINT fetch_task_pub;
9290:
9291: -- Standard call to check for call compatibility.
9292:
9293: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
9294: p_api_version_number ,
9295: l_api_name ,
9296: G_PKG_NAME )
9297: THEN
9295: l_api_name ,
9296: G_PKG_NAME )
9297: THEN
9298:
9299: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
9300:
9301: END IF;
9302:
9303: -- Initialize the message table if requested.
9301: END IF;
9302:
9303: -- Initialize the message table if requested.
9304:
9305: IF FND_API.TO_BOOLEAN( p_init_msg_list )
9306: THEN
9307:
9308: FND_MSG_PUB.initialize;
9309:
9310: END IF;
9311:
9312: -- Set API return status to success
9313:
9314: p_return_status := FND_API.G_RET_STS_SUCCESS;
9315:
9316: -- Check Task index value, when they don't provide an index we will error out
9317: IF p_task_index = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
9318: OR p_task_index IS NULL
9330: ,p_attribute4 => ''
9331: ,p_attribute5 => '');
9332: END IF;
9333:
9334: p_return_status := FND_API.G_RET_STS_ERROR;
9335: RAISE FND_API.G_EXC_ERROR;
9336: ELSE
9337: l_index := p_task_index;
9338: END IF;
9331: ,p_attribute5 => '');
9332: END IF;
9333:
9334: p_return_status := FND_API.G_RET_STS_ERROR;
9335: RAISE FND_API.G_EXC_ERROR;
9336: ELSE
9337: l_index := p_task_index;
9338: END IF;
9339: If G_Tasks_out_tbl.exists(l_index) THEN
9355: END IF;
9356:
9357: EXCEPTION
9358:
9359: WHEN FND_API.G_EXC_ERROR
9360: THEN
9361: ROLLBACK TO fetch_task_pub;
9362:
9363: p_return_status := FND_API.G_RET_STS_ERROR;
9359: WHEN FND_API.G_EXC_ERROR
9360: THEN
9361: ROLLBACK TO fetch_task_pub;
9362:
9363: p_return_status := FND_API.G_RET_STS_ERROR;
9364:
9365: -- 4537865
9366: p_pa_task_id := NULL ;
9367: p_pm_task_reference := NULL ;
9364:
9365: -- 4537865
9366: p_pa_task_id := NULL ;
9367: p_pm_task_reference := NULL ;
9368: p_task_return_status := FND_API.G_RET_STS_ERROR ;
9369: -- 4537865
9370:
9371:
9372: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
9368: p_task_return_status := FND_API.G_RET_STS_ERROR ;
9369: -- 4537865
9370:
9371:
9372: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
9373: THEN
9374: ROLLBACK TO fetch_task_pub;
9375:
9376: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9372: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
9373: THEN
9374: ROLLBACK TO fetch_task_pub;
9375:
9376: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9377:
9378: -- 4537865
9379: p_pa_task_id := NULL ;
9380: p_pm_task_reference := NULL ;
9377:
9378: -- 4537865
9379: p_pa_task_id := NULL ;
9380: p_pm_task_reference := NULL ;
9381: p_task_return_status := FND_API.G_RET_STS_ERROR ;
9382: -- 4537865
9383:
9384:
9385: WHEN OTHERS THEN
9384:
9385: WHEN OTHERS THEN
9386: ROLLBACK TO fetch_task_pub;
9387:
9388: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
9389:
9390: -- 4537865
9391: p_pa_task_id := NULL ;
9392: p_pm_task_reference := NULL ;
9389:
9390: -- 4537865
9391: p_pa_task_id := NULL ;
9392: p_pm_task_reference := NULL ;
9393: p_task_return_status := FND_API.G_RET_STS_ERROR ;
9394: -- 4537865
9395:
9396: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
9397: THEN
9513: -- 18-May-2006 vkadimes - Bug 5188246 Added validation for output_tax_code and retention_tax_code .
9514: -- Changes are tagged with Bug No.
9515: PROCEDURE Update_Project
9516: ( p_api_version_number IN NUMBER
9517: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
9518: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
9519: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
9520: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
9521: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
9514: -- Changes are tagged with Bug No.
9515: PROCEDURE Update_Project
9516: ( p_api_version_number IN NUMBER
9517: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
9518: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
9519: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
9520: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
9521: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
9522: ,p_workflow_started OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
10602: BEGIN
10603:
10604: SAVEPOINT Update_project_pub;
10605:
10606: IF FND_API.TO_BOOLEAN( p_init_msg_list )
10607: THEN
10608: FND_MSG_PUB.Initialize;
10609: END IF;
10610:
10616: G_TASK_STR_UPDATE_MODE := p_update_mode ; -- DHI ER , rtarway BUG 4413568
10617: end if;
10618:
10619: -- Standard call to check for call compatibility.
10620: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
10621: p_api_version_number ,
10622: l_api_name ,
10623: G_PKG_NAME )
10624: THEN
10621: p_api_version_number ,
10622: l_api_name ,
10623: G_PKG_NAME )
10624: THEN
10625: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10626: END IF;
10627:
10628: p_return_status := FND_API.G_RET_STS_SUCCESS;
10629:
10624: THEN
10625: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10626: END IF;
10627:
10628: p_return_status := FND_API.G_RET_STS_SUCCESS;
10629:
10630: l_debug_mode := NVL(FND_PROFILE.value('PA_DEBUG_MODE'),'N');
10631:
10632: --
10658: AND p_tasks_in.count > 0 -- Added the condition for Bug 7248969
10659: THEN
10660: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
10661: p_msg_name => 'PA_PS_CANT_UPDATE_PROG_PRJ');
10662: RAISE FND_API.G_EXC_ERROR;
10663: END IF;
10664: --end bug 4619824
10665:
10666: IF l_debug_mode = 'Y' THEN
10683:
10684: --if yes, raise error.
10685: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
10686: p_msg_name => 'PA_STR_LOCKED_BY_OTHER');
10687: RAISE FND_API.G_EXC_ERROR;
10688:
10689: -- Begin Bug # 4582750.
10690:
10691: elsif ( l_prev_locked_status = 'N' ) then
10713: 'l_x_return_status='||l_x_return_status;
10714: pa_debug.write(l_module_name,pa_debug.g_err_stage,3);
10715: END IF;
10716:
10717: IF l_x_return_status = FND_API.G_RET_STS_UNEXP_ERROR
10718: THEN
10719: p_project_out.return_status := l_x_return_status;
10720: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10721:
10716:
10717: IF l_x_return_status = FND_API.G_RET_STS_UNEXP_ERROR
10718: THEN
10719: p_project_out.return_status := l_x_return_status;
10720: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10721:
10722: ELSIF l_x_return_status = FND_API.G_RET_STS_ERROR
10723: THEN
10724: p_project_out.return_status := l_x_return_status;
10718: THEN
10719: p_project_out.return_status := l_x_return_status;
10720: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10721:
10722: ELSIF l_x_return_status = FND_API.G_RET_STS_ERROR
10723: THEN
10724: p_project_out.return_status := l_x_return_status;
10725: RAISE FND_API.G_EXC_ERROR;
10726: END IF;
10721:
10722: ELSIF l_x_return_status = FND_API.G_RET_STS_ERROR
10723: THEN
10724: p_project_out.return_status := l_x_return_status;
10725: RAISE FND_API.G_EXC_ERROR;
10726: END IF;
10727:
10728: end if;
10729:
10755: ,p_attribute3 => ''
10756: ,p_attribute4 => ''
10757: ,p_attribute5 => '');
10758: END IF;
10759: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
10760: RAISE FND_API.G_EXC_ERROR;
10761: /* bug 4538849
10762: --bug 4413568, DHI ER, rtarway
10763: ELSIF (struct_ver_updatable = 'Y') THEN
10756: ,p_attribute4 => ''
10757: ,p_attribute5 => '');
10758: END IF;
10759: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
10760: RAISE FND_API.G_EXC_ERROR;
10761: /* bug 4538849
10762: --bug 4413568, DHI ER, rtarway
10763: ELSIF (struct_ver_updatable = 'Y') THEN
10764: -- structure version is locked by another user check must be done in both update modes. bug 4519809
10767: if ( PA_PROJECT_STRUCTURE_UTILS.IS_STRUC_VER_LOCKED_BY_USER(FND_GLOBAL.USER_ID,l_structure_version_id) = 'O' ) then
10768: --if yes, raise error.
10769: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
10770: p_msg_name => 'PA_STR_LOCKED_BY_OTHER');
10771: RAISE FND_API.G_EXC_ERROR;
10772: end if;
10773: --END IF;
10774: */
10775: END IF;
10799: ,p_attribute5 => '');
10800: END IF;
10801:
10802: -- PA_UTILS.ADD_MESSAGE('PA', 'PA_ORG_FC_CANT_UPD_ORG_PRJ');
10803: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
10804: RAISE FND_API.G_EXC_ERROR;
10805: END IF;
10806: --Organization Forecasting.
10807: --Do not allow updating an org project
10800: END IF;
10801:
10802: -- PA_UTILS.ADD_MESSAGE('PA', 'PA_ORG_FC_CANT_UPD_ORG_PRJ');
10803: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
10804: RAISE FND_API.G_EXC_ERROR;
10805: END IF;
10806: --Organization Forecasting.
10807: --Do not allow updating an org project
10808:
10838: ,p_attribute3 => ''
10839: ,p_attribute4 => ''
10840: ,p_attribute5 => '');
10841: END IF;
10842: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
10843: RAISE FND_API.G_EXC_ERROR;
10844: END IF;
10845:
10846: --bug 2841158
10839: ,p_attribute4 => ''
10840: ,p_attribute5 => '');
10841: END IF;
10842: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
10843: RAISE FND_API.G_EXC_ERROR;
10844: END IF;
10845:
10846: --bug 2841158
10847: IF p_pm_product_code <> 'WORKPLAN'
10871: ,p_attribute3 => ''
10872: ,p_attribute4 => ''
10873: ,p_attribute5 => '');
10874: END IF;
10875: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
10876: p_return_status := FND_API.G_RET_STS_ERROR;
10877: RAISE FND_API.G_EXC_ERROR;
10878: END IF;
10879: END IF; --bug 2841158
10872: ,p_attribute4 => ''
10873: ,p_attribute5 => '');
10874: END IF;
10875: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
10876: p_return_status := FND_API.G_RET_STS_ERROR;
10877: RAISE FND_API.G_EXC_ERROR;
10878: END IF;
10879: END IF; --bug 2841158
10880:
10873: ,p_attribute5 => '');
10874: END IF;
10875: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
10876: p_return_status := FND_API.G_RET_STS_ERROR;
10877: RAISE FND_API.G_EXC_ERROR;
10878: END IF;
10879: END IF; --bug 2841158
10880:
10881: l_resp_id := FND_GLOBAL.Resp_id;
10907: p_out_project_id => l_project_id,
10908: p_return_status => l_return_status );
10909:
10910:
10911: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
10912: THEN
10913: p_project_out.return_status := l_return_status;
10914: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10915:
10910:
10911: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
10912: THEN
10913: p_project_out.return_status := l_return_status;
10914: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10915:
10916: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
10917: THEN
10918: p_project_out.return_status := l_return_status;
10912: THEN
10913: p_project_out.return_status := l_return_status;
10914: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10915:
10916: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
10917: THEN
10918: p_project_out.return_status := l_return_status;
10919: RAISE FND_API.G_EXC_ERROR;
10920: END IF;
10915:
10916: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
10917: THEN
10918: p_project_out.return_status := l_return_status;
10919: RAISE FND_API.G_EXC_ERROR;
10920: END IF;
10921: --bug 2471668
10922:
10923:
10949: p_return_status => l_return_status,
10950: p_function_allowed => l_function_allowed );
10951:
10952:
10953: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
10954: THEN
10955: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10956:
10957: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
10951:
10952:
10953: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
10954: THEN
10955: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10956:
10957: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
10958: THEN
10959: RAISE FND_API.G_EXC_ERROR;
10953: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
10954: THEN
10955: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10956:
10957: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
10958: THEN
10959: RAISE FND_API.G_EXC_ERROR;
10960: END IF;
10961: IF l_function_allowed = 'N' THEN
10955: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10956:
10957: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
10958: THEN
10959: RAISE FND_API.G_EXC_ERROR;
10960: END IF;
10961: IF l_function_allowed = 'N' THEN
10962: pa_interface_utils_pub.map_new_amg_msg
10963: ( p_old_message_code => 'PA_FUNCTION_SECURITY_ENFORCED'
10968: ,p_attribute2 => ''
10969: ,p_attribute3 => ''
10970: ,p_attribute4 => ''
10971: ,p_attribute5 => '');
10972: p_return_status := FND_API.G_RET_STS_ERROR;
10973: RAISE FND_API.G_EXC_ERROR;
10974: END IF;
10975:
10976:
10969: ,p_attribute3 => ''
10970: ,p_attribute4 => ''
10971: ,p_attribute5 => '');
10972: p_return_status := FND_API.G_RET_STS_ERROR;
10973: RAISE FND_API.G_EXC_ERROR;
10974: END IF;
10975:
10976:
10977: /* Moving this code before doing security check for bug 2471668
10983: p_out_project_id => l_project_id,
10984: p_return_status => l_return_status );
10985:
10986:
10987: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
10988: THEN
10989: p_project_out.return_status := l_return_status;
10990: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10991:
10986:
10987: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
10988: THEN
10989: p_project_out.return_status := l_return_status;
10990: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10991:
10992: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
10993: THEN
10994: p_project_out.return_status := l_return_status;
10988: THEN
10989: p_project_out.return_status := l_return_status;
10990: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
10991:
10992: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
10993: THEN
10994: p_project_out.return_status := l_return_status;
10995: RAISE FND_API.G_EXC_ERROR;
10996: END IF;
10991:
10992: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
10993: THEN
10994: p_project_out.return_status := l_return_status;
10995: RAISE FND_API.G_EXC_ERROR;
10996: END IF;
10997: */ --bug 2471668
10998:
10999: -- Get segment1 for AMG messages
11019: ,p_attribute2 => ''
11020: ,p_attribute3 => ''
11021: ,p_attribute4 => ''
11022: ,p_attribute5 => '');
11023: p_return_status := FND_API.G_RET_STS_ERROR;
11024: RAISE FND_API.G_EXC_ERROR;
11025: ELSE
11026: -- If the user has query privileges, then check whether
11027: -- update privileges are also available
11020: ,p_attribute3 => ''
11021: ,p_attribute4 => ''
11022: ,p_attribute5 => '');
11023: p_return_status := FND_API.G_RET_STS_ERROR;
11024: RAISE FND_API.G_EXC_ERROR;
11025: ELSE
11026: -- If the user has query privileges, then check whether
11027: -- update privileges are also available
11028: IF pa_security.allow_update (x_project_id => l_project_id ) = 'N' THEN
11038: ,p_attribute2 => ''
11039: ,p_attribute3 => ''
11040: ,p_attribute4 => ''
11041: ,p_attribute5 => '');
11042: p_return_status := FND_API.G_RET_STS_ERROR;
11043: RAISE FND_API.G_EXC_ERROR;
11044: END IF;
11045: END IF;
11046:
11039: ,p_attribute3 => ''
11040: ,p_attribute4 => ''
11041: ,p_attribute5 => '');
11042: p_return_status := FND_API.G_RET_STS_ERROR;
11043: RAISE FND_API.G_EXC_ERROR;
11044: END IF;
11045: END IF;
11046:
11047: -- Lock this project and it's tasks for update
11101: ,p_attribute3 => ''
11102: ,p_attribute4 => ''
11103: ,p_attribute5 => '');
11104: END IF;
11105: RAISE FND_API.G_EXC_ERROR;
11106: END IF;
11107: --bug 2876703
11108:
11109: -- "Change Project Currency" changes By avaithia for Bug 3912783
11158:
11159: -- Bug # 4329284.
11160:
11161: END IF ;
11162: p_return_status := FND_API.G_RET_STS_ERROR;
11163: RAISE FND_API.G_EXC_ERROR;
11164: END IF ;
11165: END IF ;
11166: END IF ;
11159: -- Bug # 4329284.
11160:
11161: END IF ;
11162: p_return_status := FND_API.G_RET_STS_ERROR;
11163: RAISE FND_API.G_EXC_ERROR;
11164: END IF ;
11165: END IF ;
11166: END IF ;
11167: -- << End >>
11260: ,p_attribute5 => '');
11261: END IF;
11262: END IF;
11263:
11264: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11265:
11266: RAISE FND_API.G_EXC_ERROR;
11267:
11268: ELSIF l_err_code < 0
11262: END IF;
11263:
11264: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11265:
11266: RAISE FND_API.G_EXC_ERROR;
11267:
11268: ELSIF l_err_code < 0
11269: THEN
11270:
11267:
11268: ELSIF l_err_code < 0
11269: THEN
11270:
11271: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11272:
11273: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11274: END IF;
11275: -- BEGIN MSP interface patch
11269: THEN
11270:
11271: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11272:
11273: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11274: END IF;
11275: -- BEGIN MSP interface patch
11276:
11277: -- Check for project number being numeric if project number type is
11296: ,p_attribute3 => ''
11297: ,p_attribute4 => ''
11298: ,p_attribute5 => '');
11299: END IF;
11300: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11301: p_return_status := FND_API.G_RET_STS_ERROR;
11302: RAISE FND_API.G_EXC_ERROR;
11303: END ;
11304:
11297: ,p_attribute4 => ''
11298: ,p_attribute5 => '');
11299: END IF;
11300: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11301: p_return_status := FND_API.G_RET_STS_ERROR;
11302: RAISE FND_API.G_EXC_ERROR;
11303: END ;
11304:
11305: -- END MSP interface patch -- Ensure that l_proj_num_numeric is defined
11298: ,p_attribute5 => '');
11299: END IF;
11300: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11301: p_return_status := FND_API.G_RET_STS_ERROR;
11302: RAISE FND_API.G_EXC_ERROR;
11303: END ;
11304:
11305: -- END MSP interface patch -- Ensure that l_proj_num_numeric is defined
11306:
11324: ,p_attribute4 => ''
11325: ,p_attribute5 => '');
11326: END IF;
11327:
11328: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11329:
11330: RAISE FND_API.G_EXC_ERROR;
11331: END IF;
11332:
11326: END IF;
11327:
11328: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11329:
11330: RAISE FND_API.G_EXC_ERROR;
11331: END IF;
11332:
11333: CLOSE l_project_number_unique_csr;
11334:
11382: ,p_attribute4 => ''
11383: ,p_attribute5 => '');
11384: END IF;
11385:
11386: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11387:
11388: RAISE FND_API.G_EXC_ERROR;
11389: END IF;
11390:
11384: END IF;
11385:
11386: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11387:
11388: RAISE FND_API.G_EXC_ERROR;
11389: END IF;
11390:
11391: CLOSE l_project_name_unique_csr;
11392:
11438: ,p_attribute4 => ''
11439: ,p_attribute5 => '');
11440: END IF;
11441:
11442: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11443:
11444: RAISE FND_API.G_EXC_ERROR;
11445: END IF;
11446:
11440: END IF;
11441:
11442: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11443:
11444: RAISE FND_API.G_EXC_ERROR;
11445: END IF;
11446:
11447: CLOSE l_long_name_unique_csr;
11448:
11508: ,p_attribute3 => ''
11509: ,p_attribute4 => ''
11510: ,p_attribute5 => '');
11511: END IF;
11512: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11513: RAISE FND_API.G_EXC_ERROR;
11514: END IF;
11515:
11516: -- Code Added for the bug#1968394
11509: ,p_attribute4 => ''
11510: ,p_attribute5 => '');
11511: END IF;
11512: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11513: RAISE FND_API.G_EXC_ERROR;
11514: END IF;
11515:
11516: -- Code Added for the bug#1968394
11517: -- Test the function security for Org changes
11588: ,p_attribute4 => ''
11589: ,p_attribute5 => '');
11590: END IF;
11591: END IF;
11592: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11593: RAISE FND_API.G_EXC_ERROR;
11594: ELSIF l_err_code < 0 THEN
11595: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11596: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11589: ,p_attribute5 => '');
11590: END IF;
11591: END IF;
11592: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11593: RAISE FND_API.G_EXC_ERROR;
11594: ELSIF l_err_code < 0 THEN
11595: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11596: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11597: END IF;
11591: END IF;
11592: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11593: RAISE FND_API.G_EXC_ERROR;
11594: ELSIF l_err_code < 0 THEN
11595: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11596: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11597: END IF;
11598:
11599: --bug 2955326
11592: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11593: RAISE FND_API.G_EXC_ERROR;
11594: ELSIF l_err_code < 0 THEN
11595: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11596: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11597: END IF;
11598:
11599: --bug 2955326
11600: /*
11634: ,p_attribute4 => ''
11635: ,p_attribute5 => '');
11636: END IF;
11637:
11638: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11639: RAISE FND_API.G_EXC_ERROR;
11640: END IF;
11641:
11642: --bug 2955326
11635: ,p_attribute5 => '');
11636: END IF;
11637:
11638: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11639: RAISE FND_API.G_EXC_ERROR;
11640: END IF;
11641:
11642: --bug 2955326
11643: /*
11677: ,p_attribute4 => ''
11678: ,p_attribute5 => '');
11679: END IF;
11680:
11681: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11682: RAISE FND_API.G_EXC_ERROR;
11683: ELSE
11684:
11685: IF nvl(p_project_in.distribution_rule,PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
11678: ,p_attribute5 => '');
11679: END IF;
11680:
11681: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11682: RAISE FND_API.G_EXC_ERROR;
11683: ELSE
11684:
11685: IF nvl(p_project_in.distribution_rule,PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
11686: <> nvl(l_project_rec.distribution_rule, PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
11706: ,p_attribute4 => ''
11707: ,p_attribute5 => '');
11708: END IF;
11709:
11710: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11711: RAISE FND_API.G_EXC_ERROR;
11712: END IF;
11713:
11714: pa_project_utils.check_dist_rule_chg_ok ( l_project_id,
11707: ,p_attribute5 => '');
11708: END IF;
11709:
11710: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11711: RAISE FND_API.G_EXC_ERROR;
11712: END IF;
11713:
11714: pa_project_utils.check_dist_rule_chg_ok ( l_project_id,
11715: l_project_rec.distribution_rule,
11748: ,p_attribute5 => '');
11749: END IF;
11750: END IF;
11751:
11752: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11753: RAISE FND_API.G_EXC_ERROR;
11754:
11755: ELSIF l_err_code < 0
11756: THEN
11749: END IF;
11750: END IF;
11751:
11752: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11753: RAISE FND_API.G_EXC_ERROR;
11754:
11755: ELSIF l_err_code < 0
11756: THEN
11757:
11754:
11755: ELSIF l_err_code < 0
11756: THEN
11757:
11758: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11759: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11760: END IF;
11761:
11762: --bug 2955326
11755: ELSIF l_err_code < 0
11756: THEN
11757:
11758: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11759: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11760: END IF;
11761:
11762: --bug 2955326
11763: /*
11828: ,p_attribute3 => ''
11829: ,p_attribute4 => ''
11830: ,p_attribute5 => '');
11831: END IF;
11832: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11833: RAISE FND_API.G_EXC_ERROR;
11834: END IF;
11835:
11836: -- special case for update to and from 'CLOSED'
11829: ,p_attribute4 => ''
11830: ,p_attribute5 => '');
11831: END IF;
11832: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11833: RAISE FND_API.G_EXC_ERROR;
11834: END IF;
11835:
11836: -- special case for update to and from 'CLOSED'
11837: IF Pa_project_stus_utils.is_project_status_closed
11903: ,p_token3 => ''
11904: ,p_value3 => ''
11905: );
11906:
11907: RAISE FND_API.G_EXC_ERROR;
11908: End If;
11909:
11910: If l_validate = 'Y' and l_end_date_status = 'I' Then
11911:
11919: ,p_token3 => ''
11920: ,p_value3 => ''
11921: );
11922:
11923: RAISE FND_API.G_EXC_ERROR;
11924: End If;
11925: End If;
11926: End;
11927:
11925: End If;
11926: End;
11927:
11928: /*--Bug 6511907 PJR Date Validation Enhancement ----- End--*/
11929: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
11930: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11931: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11932: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
11933: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11926: End;
11927:
11928: /*--Bug 6511907 PJR Date Validation Enhancement ----- End--*/
11929: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
11930: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11931: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11932: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
11933: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11934: RAISE FND_API.G_EXC_ERROR;
11927:
11928: /*--Bug 6511907 PJR Date Validation Enhancement ----- End--*/
11929: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
11930: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11931: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11932: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
11933: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11934: RAISE FND_API.G_EXC_ERROR;
11935: END IF;
11928: /*--Bug 6511907 PJR Date Validation Enhancement ----- End--*/
11929: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
11930: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11931: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11932: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
11933: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11934: RAISE FND_API.G_EXC_ERROR;
11935: END IF;
11936:
11929: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
11930: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11931: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11932: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
11933: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11934: RAISE FND_API.G_EXC_ERROR;
11935: END IF;
11936:
11937: -- Checking of valid project start and end date is done after adding and updating the tasks,
11930: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
11931: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
11932: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
11933: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
11934: RAISE FND_API.G_EXC_ERROR;
11935: END IF;
11936:
11937: -- Checking of valid project start and end date is done after adding and updating the tasks,
11938: -- since dates of tasks might change to be within the project begin and end date.
12055: );
12056:
12057: END IF;
12058:
12059: RAISE FND_API.G_EXC_ERROR;
12060: END IF;
12061: l_statement := l_statement ||
12062: ' EARLY_FINISH_DATE = :early_finish_date ,';
12063: l_b_early_fd_flag := 'Y';
12076: );
12077:
12078: END IF;
12079:
12080: RAISE FND_API.G_EXC_ERROR;
12081: END IF;
12082: l_statement := l_statement ||
12083: ' EARLY_FINISH_DATE = :early_finish_date ,';
12084: l_b_early_fd_flag := 'Y';
12145: );
12146:
12147: END IF;
12148:
12149: RAISE FND_API.G_EXC_ERROR;
12150: END IF;
12151: l_statement := l_statement ||
12152: ' LATE_FINISH_DATE = :late_finish_date ,';
12153: l_b_late_fd_flag := 'Y';
12164: );
12165:
12166: END IF;
12167:
12168: RAISE FND_API.G_EXC_ERROR;
12169: END IF;
12170: l_statement := l_statement ||
12171: ' LATE_FINISH_DATE = :late_finish_date ,';
12172: l_b_late_fd_flag := 'Y';
12474: IF l_dummy_cur_output_tax_code <> 'Y' THEN
12475: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
12476: p_msg_name => 'PA_INVLD_OUTPUT_TAX_CODE');
12477:
12478: p_return_status := FND_API.G_RET_STS_ERROR;
12479: RAISE FND_API.G_EXC_ERROR;
12480:
12481: END IF;
12482:
12475: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
12476: p_msg_name => 'PA_INVLD_OUTPUT_TAX_CODE');
12477:
12478: p_return_status := FND_API.G_RET_STS_ERROR;
12479: RAISE FND_API.G_EXC_ERROR;
12480:
12481: END IF;
12482:
12483:
12512: IF l_dummy_cur_retention_tax_code <> 'Y' THEN
12513: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
12514: p_msg_name => 'PA_INVLD_RETENTION_TAX_CODE');
12515:
12516: p_return_status := FND_API.G_RET_STS_ERROR;
12517: RAISE FND_API.G_EXC_ERROR;
12518:
12519: END IF;
12520:
12513: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
12514: p_msg_name => 'PA_INVLD_RETENTION_TAX_CODE');
12515:
12516: p_return_status := FND_API.G_RET_STS_ERROR;
12517: RAISE FND_API.G_EXC_ERROR;
12518:
12519: END IF;
12520:
12521:
12578: );
12579:
12580: END IF;
12581:
12582: RAISE FND_API.G_EXC_ERROR;
12583: ELSE
12584:
12585: --bug 2955326
12586: /*
12607: );
12608:
12609: END IF;
12610:
12611: RAISE FND_API.G_EXC_ERROR;
12612: END IF;
12613:
12614: END IF;
12615:
12686: IF l_dummy_project_rate_type <> 'Y' THEN
12687:
12688: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
12689: p_msg_name => 'PA_INVLD_PROJ_RATE_TYPE');
12690: p_return_status := FND_API.G_RET_STS_ERROR;
12691: RAISE FND_API.G_EXC_ERROR;
12692: END IF ;
12693: END IF ;
12694:
12687:
12688: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
12689: p_msg_name => 'PA_INVLD_PROJ_RATE_TYPE');
12690: p_return_status := FND_API.G_RET_STS_ERROR;
12691: RAISE FND_API.G_EXC_ERROR;
12692: END IF ;
12693: END IF ;
12694:
12695: l_statement := l_statement ||
12901: ,p_attribute3 => ''
12902: ,p_attribute4 => ''
12903: ,p_attribute5 => '');
12904: END IF;
12905: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
12906: RAISE FND_API.G_EXC_ERROR;
12907: ELSE
12908: IF nvl(p_project_in.work_type_id,PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM) <> nvl(l_project_rec.work_type_id,PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM) THEN
12909:
12902: ,p_attribute4 => ''
12903: ,p_attribute5 => '');
12904: END IF;
12905: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
12906: RAISE FND_API.G_EXC_ERROR;
12907: ELSE
12908: IF nvl(p_project_in.work_type_id,PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM) <> nvl(l_project_rec.work_type_id,PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM) THEN
12909:
12910: --Added the following logic to update the work type id.Bug#5222248
13024: IF p_project_in.project_value IS NOT NULL AND p_project_in.project_value < 0 THEN
13025: PA_UTILS.ADD_MESSAGE
13026: ( p_app_short_name => 'PA'
13027: ,p_msg_name => 'PA_INVLD_OPPORTUNITY_VALUE');
13028: RAISE FND_API.G_EXC_ERROR;
13029: END IF;
13030: -- end of bug 5214431.
13031: l_statement := l_statement || ' PROJECT_VALUE = :proj_value ,';
13032: l_b_proj_value_flag := 'Y';
13121: p_out_nl_labor_sch_type => l_out_nl_labor_sch_type,
13122: p_return_status => l_return_status
13123: );
13124:
13125: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
13126: THEN
13127: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
13128:
13129: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
13123: );
13124:
13125: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
13126: THEN
13127: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
13128:
13129: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
13130: THEN
13131: RAISE FND_API.G_EXC_ERROR;
13125: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
13126: THEN
13127: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
13128:
13129: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
13130: THEN
13131: RAISE FND_API.G_EXC_ERROR;
13132: END IF;
13133:
13127: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
13128:
13129: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
13130: THEN
13131: RAISE FND_API.G_EXC_ERROR;
13132: END IF;
13133:
13134:
13135: pa_project_pvt.validate_schedule_values
13158: p_return_status => l_return_status
13159: );
13160:
13161:
13162: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
13163: THEN
13164:
13165: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
13166:
13161:
13162: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
13163: THEN
13164:
13165: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
13166:
13167: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
13168: THEN
13169:
13163: THEN
13164:
13165: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
13166:
13167: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
13168: THEN
13169:
13170: RAISE FND_API.G_EXC_ERROR;
13171: END IF;
13166:
13167: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
13168: THEN
13169:
13170: RAISE FND_API.G_EXC_ERROR;
13171: END IF;
13172:
13173: IF p_project_in.labor_sch_type <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
13174: AND p_project_in.labor_sch_type IS NOT NULL
13424: ,p_attribute3 => ''
13425: ,p_attribute4 => ''
13426: ,p_attribute5 => '');
13427: END IF;
13428: RAISE FND_API.G_EXC_ERROR;
13429: END;
13430:
13431: ELSE
13432:
13469: ,p_attribute3 => ''
13470: ,p_attribute4 => ''
13471: ,p_attribute5 => '');
13472: END IF;
13473: RAISE FND_API.G_EXC_ERROR;
13474: END;
13475:
13476: ELSE
13477: IF l_project_rec.INV_IND_RATE_SCH_ID IS NOT NULL
13623: ,p_attribute3 => ''
13624: ,p_attribute4 => ''
13625: ,p_attribute5 => '');
13626: END IF;
13627: RAISE FND_API.G_EXC_ERROR;
13628: END;
13629:
13630: END IF;
13631: END IF;
13846: OR NVL(pa_multi_currency_billing.check_mcb_setup_exists(p_project_in.pa_project_id),'N') = 'Y' THEN
13847: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
13848: FND_MESSAGE.SET_NAME('PA','PA_MCB_ALLOW_NO_CHG_AMG'); -- Cannot change MCB flag
13849: FND_MSG_PUB.ADD;
13850: RAISE FND_API.G_EXC_ERROR;
13851: END IF;
13852:
13853: END IF;
13854:
13867: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
13868: FND_MESSAGE.SET_NAME('PA','PA_PROJ_RATE_TYPE_INV_AMG');
13869: FND_MESSAGE.SET_TOKEN('PROJECT', l_project_rec.segment1);
13870: FND_MSG_PUB.ADD;
13871: RAISE FND_API.G_EXC_ERROR;
13872: END IF;
13873: ELSE
13874: IF p_project_in.PROJECT_BIL_RATE_TYPE = 'User' THEN
13875: IF p_project_in.PROJECT_BIL_EXCHANGE_RATE is NULL
13876: OR p_project_in.PROJECT_BIL_EXCHANGE_RATE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
13877: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN -- PA_EXCH_RATE_NULL_PC_AMG:Project Exchange Rate cannot be null when project rate type is User.
13878: FND_MESSAGE.SET_NAME('PA','PA_EXCH_RATE_NULL_PC_AMG');
13879: FND_MSG_PUB.ADD;
13880: RAISE FND_API.G_EXC_ERROR;
13881: END IF;
13882: END IF;
13883:
13884: l_statement := l_statement || ' PROJECT_BIL_EXCHANGE_RATE = :proj_bil_xch_rt ,';
13892: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
13893: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_TYPE_INVALID_AMG');
13894: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Project Currency');
13895: FND_MSG_PUB.ADD;
13896: RAISE FND_API.G_EXC_ERROR;
13897: END IF;
13898: ELSE
13899: IF p_project_in.PROJECT_BIL_RATE_DATE_CODE = 'Fixed Date' THEN
13900: IF p_project_in.PROJECT_BIL_RATE_DATE is NULL
13902: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
13903: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_INVALID_AMG');
13904: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Project Currency');
13905: FND_MSG_PUB.ADD;
13906: RAISE FND_API.G_EXC_ERROR;
13907: END IF;
13908: END IF;
13909: END IF;
13910: l_statement := l_statement || ' PROJECT_BIL_RATE_DATE = :prj_bil_rt_date ,';
13930: OR p_project_in.PROJFUNC_BIL_RATE_TYPE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR THEN -- PA_PFC_RATE_TYPE_INV_AMG:The project functional exchage rate type is invalid
13931: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
13932: FND_MESSAGE.SET_NAME('PA','PA_PFC_RATE_TYPE_INV_AMG');
13933: FND_MSG_PUB.ADD;
13934: RAISE FND_API.G_EXC_ERROR;
13935: END IF;
13936: ELSE
13937: IF p_project_in.PROJFUNC_BIL_RATE_TYPE = 'User' THEN
13938: IF p_project_in.PROJFUNC_BIL_EXCHANGE_RATE is NULL
13939: OR p_project_in.PROJFUNC_BIL_EXCHANGE_RATE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
13940: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN -- PA_EXCH_RATE_NULL_PF_AMG:Project Functional Exchange Rate cannot be null when project functional rate type is User.
13941: FND_MESSAGE.SET_NAME('PA','PA_EXCH_RATE_NULL_PF_AMG');
13942: FND_MSG_PUB.ADD;
13943: RAISE FND_API.G_EXC_ERROR;
13944: END IF;
13945: END IF;
13946:
13947: l_statement := l_statement || ' PROJFUNC_BIL_EXCHANGE_RATE = :pjfnc_bil_xch_rt ,';
13955: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
13956: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_TYPE_INVALID_AMG');
13957: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Project Functional Currency');
13958: FND_MSG_PUB.ADD;
13959: RAISE FND_API.G_EXC_ERROR;
13960: END IF;
13961: ELSE
13962: IF p_project_in.PROJFUNC_BIL_RATE_DATE_CODE = 'Fixed Date' THEN
13963: IF p_project_in.PROJFUNC_BIL_RATE_DATE is NULL
13965: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
13966: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_INVALID_AMG');
13967: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Project Functional Currency');
13968: FND_MSG_PUB.ADD;
13969: RAISE FND_API.G_EXC_ERROR;
13970: END IF;
13971: END IF;
13972: END IF;
13973: l_statement := l_statement || ' PROJFUNC_BIL_RATE_DATE = :prjfnc_bil_rt_date , ';
13991: OR p_project_in.FUNDING_RATE_TYPE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR THEN -- PA_FUND_RATE_TYPE_INV_AMG:The funding exchage rate type is invalid
13992: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
13993: FND_MESSAGE.SET_NAME('PA','PA_FUND_RATE_TYPE_INV_AMG');
13994: FND_MSG_PUB.ADD;
13995: RAISE FND_API.G_EXC_ERROR;
13996: END IF;
13997: ELSE
13998: IF p_project_in.FUNDING_RATE_TYPE = 'User' THEN
13999: IF p_project_in.FUNDING_EXCHANGE_RATE is NULL
14000: OR p_project_in.FUNDING_EXCHANGE_RATE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
14001: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN -- PA_EXCHANGE_RATE_NULL:Exchange rate cannot be null when rate type is User.
14002: FND_MESSAGE.SET_NAME('PA','PA_EXCHANGE_RATE_NULL');
14003: FND_MSG_PUB.ADD;
14004: RAISE FND_API.G_EXC_ERROR;
14005: END IF;
14006: END IF;
14007: l_statement := l_statement || ' FUNDING_EXCHANGE_RATE = :fnding_xch_rt,';
14008: l_b_fnding_xch_rt_flag := 'Y';
14015: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
14016: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_TYPE_INVALID_AMG');
14017: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Funding Currency');
14018: FND_MSG_PUB.ADD;
14019: RAISE FND_API.G_EXC_ERROR;
14020: END IF;
14021: ELSE
14022: IF p_project_in.FUNDING_RATE_DATE_CODE = 'Fixed Date' THEN
14023: IF p_project_in.FUNDING_RATE_DATE is NULL
14025: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
14026: FND_MESSAGE.SET_NAME('PA','PA_RATE_DATE_INVALID_AMG');
14027: FND_MESSAGE.SET_TOKEN('CURR_TYPE','Funding Currency');
14028: FND_MSG_PUB.ADD;
14029: RAISE FND_API.G_EXC_ERROR;
14030: END IF;
14031: END IF;
14032: END IF;
14033: l_statement := l_statement || ' FUNDING_RATE_DATE = :fnding_rt_date ,';
14754:
14755: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
14756: ,p_msg_name => 'PA_INVALID_PRIORITY_CODE');
14757:
14758: l_return_status := FND_API.G_RET_STS_ERROR;
14759:
14760: RAISE FND_API.G_EXC_ERROR;
14761:
14762: END IF;
14756: ,p_msg_name => 'PA_INVALID_PRIORITY_CODE');
14757:
14758: l_return_status := FND_API.G_RET_STS_ERROR;
14759:
14760: RAISE FND_API.G_EXC_ERROR;
14761:
14762: END IF;
14763:
14764: END IF;
14851: ,p_attribute3 => ''
14852: ,p_attribute4 => ''
14853: ,p_attribute5 => '');
14854: END IF;
14855: RAISE FND_API.G_EXC_ERROR;
14856: /*bug 2891513 -Code ends*/
14857: ELSE
14858: l_statement := l_statement ||
14859: ' revaluate_funding_flag = :reval_fndng_flg ,';
14973: ,p_attribute3 => ''
14974: ,p_attribute4 => ''
14975: ,p_attribute5 => '');
14976: END IF;
14977: RAISE FND_API.G_EXC_ERROR;
14978: END IF;
14979: END IF;
14980: END IF;
14981:
15002: ,x_msg_count => l_msg_count
15003: ,x_msg_data => l_msg_data
15004: ,x_return_status => l_return_status
15005: );
15006: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15007: THEN
15008: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15009:
15010: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15004: ,x_return_status => l_return_status
15005: );
15006: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15007: THEN
15008: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15009:
15010: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15011: THEN
15012: p_multiple_task_msg := 'F';
15006: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15007: THEN
15008: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15009:
15010: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15011: THEN
15012: p_multiple_task_msg := 'F';
15013: RAISE FND_API.G_EXC_ERROR;
15014: END IF;
15009:
15010: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15011: THEN
15012: p_multiple_task_msg := 'F';
15013: RAISE FND_API.G_EXC_ERROR;
15014: END IF;
15015:
15016: l_statement := l_statement ||
15017: ' asset_allocation_method = :as_alloc_mth ,';
15039: ,x_msg_count => l_msg_count
15040: ,x_msg_data => l_msg_data
15041: ,x_return_status => l_return_status
15042: );
15043: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15044: THEN
15045: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15046:
15047: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15041: ,x_return_status => l_return_status
15042: );
15043: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15044: THEN
15045: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15046:
15047: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15048: THEN
15049: p_multiple_task_msg := 'F';
15043: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15044: THEN
15045: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15046:
15047: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15048: THEN
15049: p_multiple_task_msg := 'F';
15050: RAISE FND_API.G_EXC_ERROR;
15051: END IF;
15046:
15047: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15048: THEN
15049: p_multiple_task_msg := 'F';
15050: RAISE FND_API.G_EXC_ERROR;
15051: END IF;
15052:
15053: l_statement := l_statement ||
15054: ' capital_event_processing = :cp_evt_proc,';
15076: ,x_msg_count => l_msg_count
15077: ,x_msg_data => l_msg_data
15078: ,x_return_status => l_return_status
15079: );
15080: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15081: THEN
15082: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15083:
15084: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15078: ,x_return_status => l_return_status
15079: );
15080: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15081: THEN
15082: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15083:
15084: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15085: THEN
15086: p_multiple_task_msg := 'F';
15080: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15081: THEN
15082: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15083:
15084: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15085: THEN
15086: p_multiple_task_msg := 'F';
15087: RAISE FND_API.G_EXC_ERROR;
15088: END IF;
15083:
15084: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15085: THEN
15086: p_multiple_task_msg := 'F';
15087: RAISE FND_API.G_EXC_ERROR;
15088: END IF;
15089:
15090: l_statement := l_statement ||
15091: ' cint_rate_sch_id = :cint_rt_sch ,';
15211: pa_debug.write(l_module_name,'l_project_id='||l_project_id,3);
15212: pa_debug.write(l_module_name,'l_return_status='||l_return_status,3);
15213: END IF;
15214:
15215: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15216: THEN
15217: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15218: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15219: THEN
15213: END IF;
15214:
15215: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15216: THEN
15217: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15218: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15219: THEN
15220: p_multiple_task_msg := 'F';
15221: RAISE FND_API.G_EXC_ERROR;
15214:
15215: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
15216: THEN
15217: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15218: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15219: THEN
15220: p_multiple_task_msg := 'F';
15221: RAISE FND_API.G_EXC_ERROR;
15222: END IF;
15217: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15218: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
15219: THEN
15220: p_multiple_task_msg := 'F';
15221: RAISE FND_API.G_EXC_ERROR;
15222: END IF;
15223:
15224: END IF;
15225:
15241: p_msg_count => l_msg_count,
15242: p_msg_data => l_msg_data,
15243: p_return_status => l_return_status,
15244: p_function_allowed => l_function_allowed);
15245: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
15246: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15247: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
15248: RAISE FND_API.G_EXC_ERROR;
15249: END IF;
15242: p_msg_data => l_msg_data,
15243: p_return_status => l_return_status,
15244: p_function_allowed => l_function_allowed);
15245: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
15246: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15247: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
15248: RAISE FND_API.G_EXC_ERROR;
15249: END IF;
15250:
15243: p_return_status => l_return_status,
15244: p_function_allowed => l_function_allowed);
15245: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
15246: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15247: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
15248: RAISE FND_API.G_EXC_ERROR;
15249: END IF;
15250:
15251: IF l_function_allowed = 'N' THEN
15244: p_function_allowed => l_function_allowed);
15245: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
15246: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15247: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
15248: RAISE FND_API.G_EXC_ERROR;
15249: END IF;
15250:
15251: IF l_function_allowed = 'N' THEN
15252: pa_interface_utils_pub.map_new_amg_msg
15258: ,p_attribute2 => ''
15259: ,p_attribute3 => ''
15260: ,p_attribute4 => ''
15261: ,p_attribute5 => '');
15262: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15263: RAISE FND_API.G_EXC_ERROR;
15264: END IF;
15265: ELSE
15266: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
15259: ,p_attribute3 => ''
15260: ,p_attribute4 => ''
15261: ,p_attribute5 => '');
15262: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15263: RAISE FND_API.G_EXC_ERROR;
15264: END IF;
15265: ELSE
15266: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
15267: pa_interface_utils_pub.map_new_amg_msg
15274: ,p_attribute3 => ''
15275: ,p_attribute4 => ''
15276: ,p_attribute5 => '');
15277: END IF;
15278: RAISE FND_API.G_EXC_ERROR;
15279: END IF;
15280:
15281: IF ( PA_BILLING_CORE.Update_Top_Task_Cust_Flag( l_project_id ) = 'Y' ) THEN
15282: l_statement := l_statement || ' enable_top_task_customer_flag = :enable_top_task_cust_flg ,';
15287: PA_UTILS.ADD_MESSAGE(
15288: p_app_short_name => 'PA',
15289: p_msg_name =>'PA_NO_TOP_TASK_CUST_ALLOWED'
15290: );
15291: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15292: RAISE FND_API.G_EXC_ERROR;
15293: END IF;
15294: --Bug 3279981 Review
15295: END IF;
15288: p_app_short_name => 'PA',
15289: p_msg_name =>'PA_NO_TOP_TASK_CUST_ALLOWED'
15290: );
15291: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15292: RAISE FND_API.G_EXC_ERROR;
15293: END IF;
15294: --Bug 3279981 Review
15295: END IF;
15296: END IF;
15311: p_msg_count => l_msg_count,
15312: p_msg_data => l_msg_data,
15313: p_return_status => l_return_status,
15314: p_function_allowed => l_function_allowed);
15315: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
15316: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15317: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
15318: RAISE FND_API.G_EXC_ERROR;
15319: END IF;
15312: p_msg_data => l_msg_data,
15313: p_return_status => l_return_status,
15314: p_function_allowed => l_function_allowed);
15315: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
15316: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15317: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
15318: RAISE FND_API.G_EXC_ERROR;
15319: END IF;
15320:
15313: p_return_status => l_return_status,
15314: p_function_allowed => l_function_allowed);
15315: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
15316: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15317: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
15318: RAISE FND_API.G_EXC_ERROR;
15319: END IF;
15320:
15321: IF l_function_allowed = 'N' THEN
15314: p_function_allowed => l_function_allowed);
15315: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
15316: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
15317: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
15318: RAISE FND_API.G_EXC_ERROR;
15319: END IF;
15320:
15321: IF l_function_allowed = 'N' THEN
15322: pa_interface_utils_pub.map_new_amg_msg
15328: ,p_attribute2 => ''
15329: ,p_attribute3 => ''
15330: ,p_attribute4 => ''
15331: ,p_attribute5 => '');
15332: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15333: RAISE FND_API.G_EXC_ERROR;
15334: END IF;
15335: ELSE
15336: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
15329: ,p_attribute3 => ''
15330: ,p_attribute4 => ''
15331: ,p_attribute5 => '');
15332: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15333: RAISE FND_API.G_EXC_ERROR;
15334: END IF;
15335: ELSE
15336: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
15337: pa_interface_utils_pub.map_new_amg_msg
15344: ,p_attribute3 => ''
15345: ,p_attribute4 => ''
15346: ,p_attribute5 => '');
15347: END IF;
15348: RAISE FND_API.G_EXC_ERROR;
15349: END IF;
15350:
15351: IF ( PA_BILLING_CORE.Update_Top_Task_Inv_Mthd_Flag( l_project_id ) = 'Y'
15352: AND l_project_rec.invoice_method <> 'COST' ) THEN
15357: PA_UTILS.ADD_MESSAGE(
15358: p_app_short_name => 'PA',
15359: p_msg_name => 'PA_INV_MTH_TT_NOT_SET'
15360: );
15361: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15362: RAISE FND_API.G_EXC_ERROR;
15363: END IF;
15364: --Bug 3279981 Review
15365: END IF;
15358: p_app_short_name => 'PA',
15359: p_msg_name => 'PA_INV_MTH_TT_NOT_SET'
15360: );
15361: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15362: RAISE FND_API.G_EXC_ERROR;
15363: END IF;
15364: --Bug 3279981 Review
15365: END IF;
15366: END IF;
15406: ,p_attribute3 => ''
15407: ,p_attribute4 => ''
15408: ,p_attribute5 => '');
15409: END IF;
15410: RAISE FND_API.G_EXC_ERROR;
15411: END;
15412:
15413: END IF;
15414:
15437: PA_UTILS.ADD_MESSAGE(
15438: p_app_short_name => 'PA',
15439: p_msg_name => 'PA_FUNDS_FLAG_CANT_ENABLED'
15440: );
15441: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15442: RAISE FND_API.G_EXC_ERROR;
15443: END IF;
15444:
15445: IF nvl(l_chk_rev_inv_flag,'N')= 'Y' THEN
15438: p_app_short_name => 'PA',
15439: p_msg_name => 'PA_FUNDS_FLAG_CANT_ENABLED'
15440: );
15441: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15442: RAISE FND_API.G_EXC_ERROR;
15443: END IF;
15444:
15445: IF nvl(l_chk_rev_inv_flag,'N')= 'Y' THEN
15446:
15447: PA_UTILS.ADD_MESSAGE(
15448: p_app_short_name => 'PA',
15449: p_msg_name => 'PA_FUNDS_FLAG_NOT_UPDATBL'
15450: );
15451: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15452: RAISE FND_API.G_EXC_ERROR;
15453: END IF;
15454:
15455: l_statement := l_statement || ' date_eff_funds_consumption = :date_eff_funds_consumption ,';
15448: p_app_short_name => 'PA',
15449: p_msg_name => 'PA_FUNDS_FLAG_NOT_UPDATBL'
15450: );
15451: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
15452: RAISE FND_API.G_EXC_ERROR;
15453: END IF;
15454:
15455: l_statement := l_statement || ' date_eff_funds_consumption = :date_eff_funds_consumption ,';
15456: l_date_eff_funds_flag := 'Y';
16068: pa_debug.write(l_module_name,pa_debug.g_err_stage,3);
16069: END IF;
16070:
16071:
16072: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16073: THEN
16074: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16075:
16076: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16070:
16071:
16072: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16073: THEN
16074: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16075:
16076: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16077: THEN
16078: RAISE FND_API.G_EXC_ERROR;
16072: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16073: THEN
16074: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16075:
16076: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16077: THEN
16078: RAISE FND_API.G_EXC_ERROR;
16079: END IF;
16080:
16074: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16075:
16076: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16077: THEN
16078: RAISE FND_API.G_EXC_ERROR;
16079: END IF;
16080:
16081: end if;
16082: -- End of changes
16122:
16123: if l_return_status <> 'S' then
16124: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA',
16125: p_msg_name => 'PA_ERR_MOD_PROJ_OPP_ATTR');
16126: RAISE FND_API.G_EXC_ERROR;
16127: end if;
16128: -- End of code changes for bug 4473105
16129:
16130:
16284: ,p_attribute5 => '');
16285: END IF;
16286:
16287: p_multiple_task_msg := 'F';
16288: RAISE FND_API.G_EXC_ERROR;
16289: end if;
16290:
16291: i := p_tasks_in.next(i);
16292: end loop;
16326: ,p_attribute5 => '');
16327: END IF;
16328:
16329: p_multiple_task_msg := 'F';
16330: RAISE FND_API.G_EXC_ERROR;
16331: END IF; -- bug 3548473 : 3627124
16332: END IF;
16333:
16334: -- 3858251 end
16361: pa_debug.write(l_module_name,pa_debug.g_err_stage,3);
16362: END IF;
16363:
16364:
16365: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16366: THEN
16367: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16368:
16369: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16363:
16364:
16365: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16366: THEN
16367: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16368:
16369: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16370: THEN
16371: RAISE FND_API.G_EXC_ERROR;
16365: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16366: THEN
16367: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16368:
16369: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16370: THEN
16371: RAISE FND_API.G_EXC_ERROR;
16372: END IF;
16373:
16367: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16368:
16369: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16370: THEN
16371: RAISE FND_API.G_EXC_ERROR;
16372: END IF;
16373:
16374: END IF; -- p_structure_in.structure_type = 'WORKPLAN'
16375:
16408: pa_debug.write(l_module_name,pa_debug.g_err_stage,3);
16409: END IF;
16410:
16411:
16412: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16413: THEN
16414: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16415:
16416: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16410:
16411:
16412: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16413: THEN
16414: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16415:
16416: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16417: THEN
16418: RAISE FND_API.G_EXC_ERROR;
16412: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16413: THEN
16414: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16415:
16416: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16417: THEN
16418: RAISE FND_API.G_EXC_ERROR;
16419: END IF;
16420: END IF; --<
16414: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16415:
16416: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16417: THEN
16418: RAISE FND_API.G_EXC_ERROR;
16419: END IF;
16420: END IF; --<
16421:
16422: END IF;
16450: pa_debug.write(l_module_name,pa_debug.g_err_stage,3);
16451: END IF;
16452:
16453:
16454: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16455: THEN
16456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16457:
16458: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16452:
16453:
16454: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16455: THEN
16456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16457:
16458: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16459: THEN
16460: RAISE FND_API.G_EXC_ERROR;
16454: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16455: THEN
16456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16457:
16458: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16459: THEN
16460: RAISE FND_API.G_EXC_ERROR;
16461: END IF;
16462: END IF;
16456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16457:
16458: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16459: THEN
16460: RAISE FND_API.G_EXC_ERROR;
16461: END IF;
16462: END IF;
16463: --Project Connect 4.0
16464:
16532: WHILE i IS NOT NULL LOOP
16533:
16534: l_task_id := NULL;
16535:
16536: l_tasks_out(i).return_status := FND_API.G_RET_STS_SUCCESS;
16537:
16538: IF (p_tasks_in(i).pa_task_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
16539: OR p_tasks_in(i).pa_task_id IS NULL )
16540: THEN
16554: ,p_attribute4 => ''
16555: ,p_attribute5 => '');
16556: END IF;
16557:
16558: l_tasks_out(i).return_status := FND_API.G_RET_STS_ERROR ;
16559: p_multiple_task_msg := 'F';
16560: -- RAISE FND_API.G_EXC_ERROR;
16561: ELSE
16562: OPEN l_get_task_csr
16556: END IF;
16557:
16558: l_tasks_out(i).return_status := FND_API.G_RET_STS_ERROR ;
16559: p_multiple_task_msg := 'F';
16560: -- RAISE FND_API.G_EXC_ERROR;
16561: ELSE
16562: OPEN l_get_task_csr
16563: (l_project_id,p_tasks_in(i).pm_task_reference);
16564: FETCH l_get_task_csr INTO l_task_id;
16575: ,p_pa_task_id => p_tasks_in(i).pa_task_id
16576: ,p_pm_task_reference => NULL
16577: ,p_out_task_id => l_task_id
16578: ,p_return_status => l_return_status );
16579: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16580: THEN
16581: l_tasks_out(i).return_status := l_return_status;
16582: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16583:
16578: ,p_return_status => l_return_status );
16579: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16580: THEN
16581: l_tasks_out(i).return_status := l_return_status;
16582: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16583:
16584: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16585: THEN
16586: l_tasks_out(i).return_status := l_return_status;
16580: THEN
16581: l_tasks_out(i).return_status := l_return_status;
16582: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16583:
16584: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16585: THEN
16586: l_tasks_out(i).return_status := l_return_status;
16587: p_multiple_task_msg := 'F';
16588: -- RAISE FND_API.G_EXC_ERROR;
16584: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16585: THEN
16586: l_tasks_out(i).return_status := l_return_status;
16587: p_multiple_task_msg := 'F';
16588: -- RAISE FND_API.G_EXC_ERROR;
16589: END IF;
16590: END IF;
16591:
16592: l_amg_task_number := pa_interface_utils_pub.get_task_number_amg
16611: --if l_task_id is null, means this is a new task, so we should be raising an error at this point itself
16612: IF ( p_update_mode = 'PA_UPD_TASK_ATTR') THEN
16613: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
16614: p_msg_name => 'PA_WBS_CANT_CHANGE');
16615: RAISE FND_API.G_EXC_ERROR;
16616: END IF;
16617:
16618: PA_PM_FUNCTION_SECURITY_PUB.check_function_security
16619: (p_api_version_number => p_api_version_number,
16623: p_msg_data => l_msg_data,
16624: p_return_status => l_return_status,
16625: p_function_allowed => l_function_allowed);
16626:
16627: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16628: THEN
16629: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16630:
16631: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16625: p_function_allowed => l_function_allowed);
16626:
16627: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16628: THEN
16629: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16630:
16631: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16632: THEN
16633: p_multiple_task_msg := 'F';
16627: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16628: THEN
16629: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16630:
16631: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16632: THEN
16633: p_multiple_task_msg := 'F';
16634: -- RAISE FND_API.G_EXC_ERROR;
16635: END IF;
16630:
16631: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16632: THEN
16633: p_multiple_task_msg := 'F';
16634: -- RAISE FND_API.G_EXC_ERROR;
16635: END IF;
16636:
16637: IF l_function_allowed = 'N' THEN
16638: pa_interface_utils_pub.map_new_amg_msg
16644: ,p_attribute2 => ''
16645: ,p_attribute3 => ''
16646: ,p_attribute4 => ''
16647: ,p_attribute5 => '');
16648: p_return_status := FND_API.G_RET_STS_ERROR;
16649: p_multiple_task_msg := 'F';
16650: -- RAISE FND_API.G_EXC_ERROR;
16651: END IF;
16652:
16646: ,p_attribute4 => ''
16647: ,p_attribute5 => '');
16648: p_return_status := FND_API.G_RET_STS_ERROR;
16649: p_multiple_task_msg := 'F';
16650: -- RAISE FND_API.G_EXC_ERROR;
16651: END IF;
16652:
16653: -- check whether the input task number is unique
16654: IF pa_task_utils.check_unique_task_number
16689: , p_pm_task_reference => p_tasks_in(i).pm_parent_task_reference
16690: , p_out_task_id => l_task_id_out
16691: , p_return_status => l_return_status );
16692: l_ref_task_id := l_task_id_out; --aditi Added for Bug 3801314 : Bug 3627124
16693: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR)
16694: THEN
16695:
16696: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16697:
16692: l_ref_task_id := l_task_id_out; --aditi Added for Bug 3801314 : Bug 3627124
16693: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR)
16694: THEN
16695:
16696: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16697:
16698: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR)
16699: THEN
16700: p_multiple_task_msg := 'F';
16694: THEN
16695:
16696: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16697:
16698: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR)
16699: THEN
16700: p_multiple_task_msg := 'F';
16701: -- RAISE FND_API.G_EXC_ERROR;
16702: END IF;
16697:
16698: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR)
16699: THEN
16700: p_multiple_task_msg := 'F';
16701: -- RAISE FND_API.G_EXC_ERROR;
16702: END IF;
16703:
16704: PA_TASK_UTILS.Check_Create_Subtask_Ok
16705: ( x_task_id => l_task_id_out
16735: ,p_attribute4 => ''
16736: ,p_attribute5 => '');
16737: END IF;
16738: END IF;
16739: l_tasks_out(i).return_status := FND_API.G_RET_STS_ERROR;
16740: p_multiple_task_msg := 'F';
16741: -- RAISE FND_API.G_EXC_ERROR;
16742:
16743: END IF;
16737: END IF;
16738: END IF;
16739: l_tasks_out(i).return_status := FND_API.G_RET_STS_ERROR;
16740: p_multiple_task_msg := 'F';
16741: -- RAISE FND_API.G_EXC_ERROR;
16742:
16743: END IF;
16744: END IF;
16745:
16757: p_task_rec => l_task_rec,
16758: p_project_type_class_code => l_project_type_class_code,
16759: p_service_type_code => l_service_type_code,
16760: p_task_id => l_task_id);
16761: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16762: THEN
16763:
16764: l_tasks_out(i).return_status := l_return_status;
16765: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16761: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
16762: THEN
16763:
16764: l_tasks_out(i).return_status := l_return_status;
16765: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16766:
16767: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16768: THEN
16769: l_tasks_out(i).return_status := l_return_status;
16763:
16764: l_tasks_out(i).return_status := l_return_status;
16765: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16766:
16767: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16768: THEN
16769: l_tasks_out(i).return_status := l_return_status;
16770: p_multiple_task_msg := 'F';
16771: -- RAISE FND_API.G_EXC_ERROR;
16767: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
16768: THEN
16769: l_tasks_out(i).return_status := l_return_status;
16770: p_multiple_task_msg := 'F';
16771: -- RAISE FND_API.G_EXC_ERROR;
16772:
16773: END IF;
16774: l_tasks_out(i).pa_task_id := l_task_id;
16775:
16819: p_in_task_tbl => p_tasks_in,
16820: p_proceed_with_update_flag => l_proceed_with_update_flag,
16821: p_return_status => l_return_status);
16822:
16823: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
16824: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16825: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
16826: p_multiple_task_msg := 'F';
16827: -- RAISE FND_API.G_EXC_ERROR;
16820: p_proceed_with_update_flag => l_proceed_with_update_flag,
16821: p_return_status => l_return_status);
16822:
16823: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
16824: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16825: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
16826: p_multiple_task_msg := 'F';
16827: -- RAISE FND_API.G_EXC_ERROR;
16828: END IF;
16821: p_return_status => l_return_status);
16822:
16823: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
16824: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16825: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
16826: p_multiple_task_msg := 'F';
16827: -- RAISE FND_API.G_EXC_ERROR;
16828: END IF;
16829: ----dbms_output.put_line('value of l_proceed_with_update_flag'||l_proceed_with_update_flag);
16823: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
16824: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16825: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
16826: p_multiple_task_msg := 'F';
16827: -- RAISE FND_API.G_EXC_ERROR;
16828: END IF;
16829: ----dbms_output.put_line('value of l_proceed_with_update_flag'||l_proceed_with_update_flag);
16830: IF l_proceed_with_update_flag = 'Y' THEN
16831:
16869: , p_pm_task_reference => p_tasks_in(i).pm_parent_task_reference
16870: , p_out_task_id => l_task_id_out
16871: , p_return_status => l_return_status );
16872: v_ref_task_id := l_task_id_out; --aditi Added for Bug 3798429: Bug 3801314
16873: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR)
16874: THEN
16875:
16876: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16877:
16872: v_ref_task_id := l_task_id_out; --aditi Added for Bug 3798429: Bug 3801314
16873: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR)
16874: THEN
16875:
16876: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16877:
16878: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR)
16879: THEN
16880: p_multiple_task_msg := 'F';
16874: THEN
16875:
16876: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
16877:
16878: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR)
16879: THEN
16880: p_multiple_task_msg := 'F';
16881: -- RAISE FND_API.G_EXC_ERROR;
16882: END IF;
16877:
16878: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR)
16879: THEN
16880: p_multiple_task_msg := 'F';
16881: -- RAISE FND_API.G_EXC_ERROR;
16882: END IF;
16883: ELSE
16884: v_ref_task_id := null;
16885: END IF;
16896: ----dbms_output.put_line('value of p_tasks_in(i).pa_task_number before calling update_task'||p_tasks_in(i).pa_task_number);
16897:
16898: Update_Task (
16899: p_api_version_number => p_api_version_number,
16900: p_commit => FND_API.G_FALSE,
16901: p_msg_count => p_msg_count,
16902: p_msg_data => p_msg_data,
16903: p_return_status => l_return_status,
16904: p_pm_product_code => p_pm_product_code,
17067:
17068:
17069: ----dbms_output.put_line('Value of return status of update_task' ||l_return_status);
17070:
17071: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17072: THEN
17073:
17074: l_tasks_out(i).return_status := l_return_status;
17075: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17071: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17072: THEN
17073:
17074: l_tasks_out(i).return_status := l_return_status;
17075: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17076:
17077: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17078: THEN
17079: l_tasks_out(i).return_status := l_return_status;
17073:
17074: l_tasks_out(i).return_status := l_return_status;
17075: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17076:
17077: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17078: THEN
17079: l_tasks_out(i).return_status := l_return_status;
17080: p_multiple_task_msg := 'F';
17081: -- RAISE FND_API.G_EXC_ERROR;
17077: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17078: THEN
17079: l_tasks_out(i).return_status := l_return_status;
17080: p_multiple_task_msg := 'F';
17081: -- RAISE FND_API.G_EXC_ERROR;
17082:
17083: END IF;
17084:
17085: l_tasks_out(i).pa_task_id := l_task_id;
17129: pa_debug.write(l_module_name,'Calling update Task'||p_tasks_in(l_array_index).percent_complete,3);
17130: END IF;
17131: Update_Task (
17132: p_api_version_number => p_api_version_number,
17133: p_commit => FND_API.G_FALSE,
17134: p_msg_count => p_msg_count,
17135: p_msg_data => p_msg_data,
17136: p_return_status => l_return_status,
17137: p_pm_product_code => p_pm_product_code,
17344: pa_debug.write(l_module_name,pa_debug.g_err_stage,3);
17345: END IF;
17346:
17347:
17348: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
17349: l_tasks_out(l_array_index).return_status := l_return_status;
17350: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17351: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
17352: l_tasks_out(l_array_index).return_status := l_return_status;
17346:
17347:
17348: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
17349: l_tasks_out(l_array_index).return_status := l_return_status;
17350: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17351: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
17352: l_tasks_out(l_array_index).return_status := l_return_status;
17353: p_multiple_task_msg := 'F';
17354: -- RAISE FND_API.G_EXC_ERROR;
17347:
17348: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
17349: l_tasks_out(l_array_index).return_status := l_return_status;
17350: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17351: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
17352: l_tasks_out(l_array_index).return_status := l_return_status;
17353: p_multiple_task_msg := 'F';
17354: -- RAISE FND_API.G_EXC_ERROR;
17355: END IF;
17350: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17351: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
17352: l_tasks_out(l_array_index).return_status := l_return_status;
17353: p_multiple_task_msg := 'F';
17354: -- RAISE FND_API.G_EXC_ERROR;
17355: END IF;
17356: l_tasks_out(l_array_index).pa_task_id := l_out_pa_task_id;
17357: l_tasks_out(l_array_index).pm_task_reference := l_out_pm_task_reference;
17358: END LOOP;
17418: p_msg_data => l_msg_data,
17419: p_return_status => l_return_status,
17420: p_function_allowed => l_function_allowed);
17421:
17422: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17423: THEN
17424: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17425:
17426: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17420: p_function_allowed => l_function_allowed);
17421:
17422: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17423: THEN
17424: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17425:
17426: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17427: THEN
17428: p_multiple_task_msg := 'F';
17422: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17423: THEN
17424: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17425:
17426: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17427: THEN
17428: p_multiple_task_msg := 'F';
17429: -- RAISE FND_API.G_EXC_ERROR;
17430: END IF;
17425:
17426: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17427: THEN
17428: p_multiple_task_msg := 'F';
17429: -- RAISE FND_API.G_EXC_ERROR;
17430: END IF;
17431:
17432: IF l_function_allowed = 'N' THEN
17433: pa_interface_utils_pub.map_new_amg_msg
17439: ,p_attribute2 => ''
17440: ,p_attribute3 => ''
17441: ,p_attribute4 => ''
17442: ,p_attribute5 => '');
17443: p_return_status := FND_API.G_RET_STS_ERROR;
17444: p_multiple_task_msg := 'F';
17445: -- RAISE FND_API.G_EXC_ERROR;
17446: END IF;
17447:
17441: ,p_attribute4 => ''
17442: ,p_attribute5 => '');
17443: p_return_status := FND_API.G_RET_STS_ERROR;
17444: p_multiple_task_msg := 'F';
17445: -- RAISE FND_API.G_EXC_ERROR;
17446: END IF;
17447:
17448: /* Code addition for bug 2982057 starts */
17449: IF l_task_rec.long_task_name IS NULL OR l_task_rec.long_task_name = PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
17456: --DHI ER, bug 4413568
17457: IF ( p_update_mode = 'PA_UPD_TASK_ATTR' ) THEN --bug 4534919
17458: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
17459: p_msg_name => 'PA_WBS_CANT_CHANGE');
17460: RAISE FND_API.G_EXC_ERROR;
17461: END IF;
17462: PA_PROJECT_PVT.add_task_round_one
17463: (p_return_status => l_return_status,
17464: p_project_rec => l_project_rec,
17472: pa_debug.write(l_module_name,pa_debug.g_err_stage,3);
17473: END IF;
17474:
17475:
17476: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
17477:
17478: l_tasks_out(l_orig_index).return_status := l_return_status;
17479: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17480:
17475:
17476: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
17477:
17478: l_tasks_out(l_orig_index).return_status := l_return_status;
17479: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17480:
17481: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
17482: l_tasks_out(l_orig_index).return_status := l_return_status;
17483: p_multiple_task_msg := 'F';
17477:
17478: l_tasks_out(l_orig_index).return_status := l_return_status;
17479: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17480:
17481: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
17482: l_tasks_out(l_orig_index).return_status := l_return_status;
17483: p_multiple_task_msg := 'F';
17484: -- RAISE FND_API.G_EXC_ERROR;
17485: END IF;
17480:
17481: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
17482: l_tasks_out(l_orig_index).return_status := l_return_status;
17483: p_multiple_task_msg := 'F';
17484: -- RAISE FND_API.G_EXC_ERROR;
17485: END IF;
17486: l_tasks_out(l_orig_index).pa_task_id := l_task_id;
17487: --used to pass task_id to add_task_round_two API
17488: l_task_id_tbl(l_count).pa_task_id := l_task_id;
17530: , p_return_status => l_return_status );
17531: -- --dbms_output.put_line('Value of out task'||l_task_id_out);
17532: l_ref_task_id := l_task_id_out; --aditi Added for Bug 3548473
17533:
17534: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR)
17535: THEN
17536:
17537: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17538:
17533:
17534: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR)
17535: THEN
17536:
17537: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17538:
17539: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR)
17540: THEN
17541: p_multiple_task_msg := 'F';
17535: THEN
17536:
17537: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17538:
17539: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR)
17540: THEN
17541: p_multiple_task_msg := 'F';
17542: -- RAISE FND_API.G_EXC_ERROR;
17543: END IF;
17538:
17539: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR)
17540: THEN
17541: p_multiple_task_msg := 'F';
17542: -- RAISE FND_API.G_EXC_ERROR;
17543: END IF;
17544: ELSE
17545: l_ref_task_id := null;
17546:
17576: pa_debug.write(l_module_name,pa_debug.g_err_stage,3);
17577: END IF;
17578:
17579:
17580: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17581: THEN
17582:
17583: l_tasks_out(i).return_status := l_return_status;
17584: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17580: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17581: THEN
17582:
17583: l_tasks_out(i).return_status := l_return_status;
17584: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17585:
17586: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17587: THEN
17588:
17582:
17583: l_tasks_out(i).return_status := l_return_status;
17584: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17585:
17586: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17587: THEN
17588:
17589: l_tasks_out(i).return_status := l_return_status;
17590: l_tasks_out(i).task_version_id := l_task_version_id;
17588:
17589: l_tasks_out(i).return_status := l_return_status;
17590: l_tasks_out(i).task_version_id := l_task_version_id;
17591: p_multiple_task_msg := 'F';
17592: -- RAISE FND_API.G_EXC_ERROR;
17593:
17594:
17595: END IF;
17596:
17624: ,p_structure_version_id => l_structure_version_id
17625: ,x_return_status => l_return_status
17626: ,x_msg_count => l_msg_count
17627: ,x_msg_data => l_msg_data ) ;
17628: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17629: THEN
17630: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17631: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17632: THEN
17626: ,x_msg_count => l_msg_count
17627: ,x_msg_data => l_msg_data ) ;
17628: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17629: THEN
17630: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17631: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17632: THEN
17633: RAISE FND_API.G_EXC_ERROR;
17634: END IF;
17627: ,x_msg_data => l_msg_data ) ;
17628: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17629: THEN
17630: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17631: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17632: THEN
17633: RAISE FND_API.G_EXC_ERROR;
17634: END IF;
17635: ELSIF p_project_in.process_mode = 'CONCURRENT' THEN
17629: THEN
17630: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17631: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17632: THEN
17633: RAISE FND_API.G_EXC_ERROR;
17634: END IF;
17635: ELSIF p_project_in.process_mode = 'CONCURRENT' THEN
17636:
17637: PA_PROJ_TASK_STRUC_PUB. PROCESS_WBS_UPDATES_CONC_WRP(p_calling_context => 'CONC_UPDATE'
17639: ,p_structure_version_id => l_structure_version_id
17640: ,x_return_status => l_return_status
17641: ,x_msg_count => l_msg_count
17642: ,x_msg_data => l_msg_data ) ;
17643: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17644: THEN
17645: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17646: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17647: THEN
17641: ,x_msg_count => l_msg_count
17642: ,x_msg_data => l_msg_data ) ;
17643: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17644: THEN
17645: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17646: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17647: THEN
17648: RAISE FND_API.G_EXC_ERROR;
17649: END IF;
17642: ,x_msg_data => l_msg_data ) ;
17643: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17644: THEN
17645: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17646: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17647: THEN
17648: RAISE FND_API.G_EXC_ERROR;
17649: END IF;
17650: END IF ;
17644: THEN
17645: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17646: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17647: THEN
17648: RAISE FND_API.G_EXC_ERROR;
17649: END IF;
17650: END IF ;
17651: END IF ;
17652: END IF ;
17673: ,x_return_status => l_return_status
17674: ,x_msg_count => l_msg_count
17675: ,x_msg_data => l_msg_data );
17676:
17677: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
17678: RAISE FND_API.G_EXC_ERROR;
17679: end if;
17680: END IF;
17681: --bug 3010538 and 3035902
17674: ,x_msg_count => l_msg_count
17675: ,x_msg_data => l_msg_data );
17676:
17677: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
17678: RAISE FND_API.G_EXC_ERROR;
17679: end if;
17680: END IF;
17681: --bug 3010538 and 3035902
17682:
17702: ,p_attribute3 => ''
17703: ,p_attribute4 => ''
17704: ,p_attribute5 => '');
17705: END IF;
17706: RAISE FND_API.G_EXC_ERROR;
17707: END IF;
17708:
17709: v_first_index := i;
17710:
17723: ,p_attribute3 => ''
17724: ,p_attribute4 => ''
17725: ,p_attribute5 => '');
17726: END IF;
17727: RAISE FND_API.G_EXC_ERROR;
17728: l_tasks_out(i).return_status := FND_API.G_RET_STS_SUCCESS;
17729: ELSIF ( p_structure_in.structure_version_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM AND
17730: p_structure_in.structure_version_id IS NOT NULL )
17731: THEN
17724: ,p_attribute4 => ''
17725: ,p_attribute5 => '');
17726: END IF;
17727: RAISE FND_API.G_EXC_ERROR;
17728: l_tasks_out(i).return_status := FND_API.G_RET_STS_SUCCESS;
17729: ELSIF ( p_structure_in.structure_version_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM AND
17730: p_structure_in.structure_version_id IS NOT NULL )
17731: THEN
17732: l_structure_version_id := p_structure_in.structure_version_id;
17737: /* WHILE i IS NOT NULL LOOP
17738:
17739: l_task_id := NULL;
17740:
17741: l_tasks_out(i).return_status := FND_API.G_RET_STS_SUCCESS;
17742:
17743: --get the previous task
17744: IF i = v_first_index
17745: THEN
17770: ,p_attribute3 => ''
17771: ,p_attribute4 => ''
17772: ,p_attribute5 => '');
17773: END IF;
17774: l_tasks_out(i).return_status := FND_API.G_RET_STS_ERROR ;
17775: RAISE FND_API.G_EXC_ERROR;
17776: ELSE
17777: --If pm_task_reference is provided and task id is null then its a create
17778: --create task
17771: ,p_attribute4 => ''
17772: ,p_attribute5 => '');
17773: END IF;
17774: l_tasks_out(i).return_status := FND_API.G_RET_STS_ERROR ;
17775: RAISE FND_API.G_EXC_ERROR;
17776: ELSE
17777: --If pm_task_reference is provided and task id is null then its a create
17778: --create task
17779: /* --get the previous task
17809: p_msg_data => l_msg_data,
17810: p_return_status => l_return_status,
17811: p_function_allowed => l_function_allowed);
17812:
17813: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17814: THEN
17815: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17816: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17817: THEN
17811: p_function_allowed => l_function_allowed);
17812:
17813: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17814: THEN
17815: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17816: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17817: THEN
17818: p_multiple_task_msg := 'F';
17819: -- RAISE FND_API.G_EXC_ERROR;
17812:
17813: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17814: THEN
17815: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17816: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17817: THEN
17818: p_multiple_task_msg := 'F';
17819: -- RAISE FND_API.G_EXC_ERROR;
17820: END IF;
17815: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17816: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17817: THEN
17818: p_multiple_task_msg := 'F';
17819: -- RAISE FND_API.G_EXC_ERROR;
17820: END IF;
17821:
17822: IF l_function_allowed = 'N' THEN
17823: pa_interface_utils_pub.map_new_amg_msg
17829: ,p_attribute2 => ''
17830: ,p_attribute3 => ''
17831: ,p_attribute4 => ''
17832: ,p_attribute5 => '');
17833: p_return_status := FND_API.G_RET_STS_ERROR;
17834: p_multiple_task_msg := 'F';
17835: -- RAISE FND_API.G_EXC_ERROR;
17836: END IF;
17837:
17831: ,p_attribute4 => ''
17832: ,p_attribute5 => '');
17833: p_return_status := FND_API.G_RET_STS_ERROR;
17834: p_multiple_task_msg := 'F';
17835: -- RAISE FND_API.G_EXC_ERROR;
17836: END IF;
17837:
17838: IF (p_tasks_in(i).pa_parent_task_id IS NOT NULL
17839: AND p_tasks_in(i).pa_parent_task_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
17850: ,x_parent_task_id => v_parent_task_id
17851: ,x_return_status => l_return_status
17852: );
17853:
17854: IF l_return_status <> FND_API.G_RET_STS_SUCCESS
17855: THEN
17856: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR)
17857: THEN
17858: pa_interface_utils_pub.map_new_amg_msg
17865: ,p_attribute3 => ''
17866: ,p_attribute4 => ''
17867: ,p_attribute5 => '');
17868: END IF;
17869: RAISE FND_API.G_EXC_ERROR;
17870: END IF;
17871:
17872: ELSE
17873: v_parent_task_id := null;
17931: l_tasks_out(i).pa_task_id := v_task_id;
17932: l_tasks_out(i).task_version_id := l_task_version_id;
17933: l_tasks_out(i).pm_task_reference := p_tasks_in(i).pm_task_reference;
17934:
17935: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17936: THEN
17937: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17938:
17939: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17933: l_tasks_out(i).pm_task_reference := p_tasks_in(i).pm_task_reference;
17934:
17935: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17936: THEN
17937: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17938:
17939: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17940: THEN
17941: p_multiple_task_msg := 'F';
17935: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17936: THEN
17937: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17938:
17939: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17940: THEN
17941: p_multiple_task_msg := 'F';
17942: RAISE FND_API.G_EXC_ERROR;
17943: END IF;
17938:
17939: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17940: THEN
17941: p_multiple_task_msg := 'F';
17942: RAISE FND_API.G_EXC_ERROR;
17943: END IF;
17944:
17945: i := p_tasks_in.next(i);
17946:
17963: p_msg_data => l_msg_data,
17964: p_return_status => l_return_status,
17965: p_function_allowed => l_function_allowed );
17966:
17967: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17968: THEN
17969: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17970:
17971: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17965: p_function_allowed => l_function_allowed );
17966:
17967: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17968: THEN
17969: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17970:
17971: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17972: THEN
17973: RAISE FND_API.G_EXC_ERROR;
17967: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
17968: THEN
17969: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17970:
17971: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17972: THEN
17973: RAISE FND_API.G_EXC_ERROR;
17974: END IF;
17975: IF l_function_allowed = 'N' THEN
17969: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
17970:
17971: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
17972: THEN
17973: RAISE FND_API.G_EXC_ERROR;
17974: END IF;
17975: IF l_function_allowed = 'N' THEN
17976: pa_interface_utils_pub.map_new_amg_msg
17977: ( p_old_message_code => 'PA_FUNCTION_SECURITY_ENFORCED'
17982: ,p_attribute2 => ''
17983: ,p_attribute3 => ''
17984: ,p_attribute4 => ''
17985: ,p_attribute5 => '');
17986: p_return_status := FND_API.G_RET_STS_ERROR;
17987: RAISE FND_API.G_EXC_ERROR;
17988: END IF;
17989:
17990: PA_PROJ_TASK_STRUC_PUB.UPDATE_TASK_STRUCTURE(
17983: ,p_attribute3 => ''
17984: ,p_attribute4 => ''
17985: ,p_attribute5 => '');
17986: p_return_status := FND_API.G_RET_STS_ERROR;
17987: RAISE FND_API.G_EXC_ERROR;
17988: END IF;
17989:
17990: PA_PROJ_TASK_STRUC_PUB.UPDATE_TASK_STRUCTURE(
17991: p_project_id => l_project_id
18042: ,x_return_status => l_return_status
18043: );
18044: -- assign the appropriate values to the task out record
18045: l_tasks_out(i).return_status := l_return_status;
18046: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18047: THEN
18048: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18049:
18050: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18044: -- assign the appropriate values to the task out record
18045: l_tasks_out(i).return_status := l_return_status;
18046: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18047: THEN
18048: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18049:
18050: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18051: THEN
18052: p_multiple_task_msg := 'F';
18046: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18047: THEN
18048: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18049:
18050: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18051: THEN
18052: p_multiple_task_msg := 'F';
18053: RAISE FND_API.G_EXC_ERROR;
18054: END IF;
18049:
18050: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18051: THEN
18052: p_multiple_task_msg := 'F';
18053: RAISE FND_API.G_EXC_ERROR;
18054: END IF;
18055: l_tasks_out(i).pa_task_id := p_tasks_in(i).pa_task_id;
18056: l_tasks_out(i).pm_task_reference := p_tasks_in(i).pm_task_reference;
18057: i := p_tasks_in.next(i);
18064: --project structure
18065:
18066: IF p_multiple_task_msg = 'F'
18067: THEN
18068: RAISE FND_API.G_EXC_ERROR;
18069: END IF;
18070:
18071: --Added for bug 2931183
18072: IF nvl(p_pm_product_code,'WORKPLAN') <> 'WORKPLAN' AND p_pass_entire_structure = 'Y' -- bug 3548473 : 3627124
18077: END IF;
18078:
18079: PA_PROJ_TASK_STRUC_PUB.PROCESS_TASK_STRUCTURE_BULK(
18080: p_api_version_number => p_api_version_number
18081: ,p_commit => FND_API.G_FALSE--bug 3766967
18082: ,p_project_id => l_project_id
18083: ,p_source_project_id => l_project_in_rec.created_from_project_id --ADUT. Included this new param.
18084: ,p_pm_product_code => p_pm_product_code
18085: ,p_structure_type => l_structure_type --for bug 3005458
18101: pa_debug.write(l_module_name,pa_debug.g_err_stage,3);
18102: END IF;
18103:
18104:
18105: IF p_return_status <> FND_API.G_RET_STS_SUCCESS THEN
18106: IF l_debug_mode = 'Y' THEN
18107: pa_debug.g_err_stage := 'Errors in PROCESS_TASK_STRUCTURE_BULK ' ;
18108: pa_debug.write(l_module_name,pa_debug.g_err_stage,4);
18109: END IF;
18107: pa_debug.g_err_stage := 'Errors in PROCESS_TASK_STRUCTURE_BULK ' ;
18108: pa_debug.write(l_module_name,pa_debug.g_err_stage,4);
18109: END IF;
18110: p_multiple_task_msg := 'F';
18111: RAISE FND_API.G_EXC_ERROR;
18112: END IF;
18113:
18114: IF l_debug_mode = 'Y' THEN
18115: pa_debug.g_err_stage := 'Returned from PA_PROJ_TASK_STRUC_PUB.PROCESS_TASK_STRUCTURE_BULK ' ;
18141: ,p_structure_version_id => l_structure_version_id
18142: ,x_return_status => l_return_status
18143: ,x_msg_count => l_msg_count
18144: ,x_msg_data => l_msg_data ) ;
18145: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18146: THEN
18147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18148: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18149: THEN
18143: ,x_msg_count => l_msg_count
18144: ,x_msg_data => l_msg_data ) ;
18145: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18146: THEN
18147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18148: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18149: THEN
18150: RAISE FND_API.G_EXC_ERROR;
18151: END IF;
18144: ,x_msg_data => l_msg_data ) ;
18145: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18146: THEN
18147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18148: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18149: THEN
18150: RAISE FND_API.G_EXC_ERROR;
18151: END IF;
18152: ELSIF p_project_in.process_mode = 'CONCURRENT' THEN
18146: THEN
18147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18148: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18149: THEN
18150: RAISE FND_API.G_EXC_ERROR;
18151: END IF;
18152: ELSIF p_project_in.process_mode = 'CONCURRENT' THEN
18153:
18154: PA_PROJ_TASK_STRUC_PUB.PROCESS_WBS_UPDATES_CONC_WRP(p_calling_context => 'CONC_UPDATE'
18156: ,p_structure_version_id => l_structure_version_id
18157: ,x_return_status => l_return_status
18158: ,x_msg_count => l_msg_count
18159: ,x_msg_data => l_msg_data ) ;
18160: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18161: THEN
18162: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18163: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18164: THEN
18158: ,x_msg_count => l_msg_count
18159: ,x_msg_data => l_msg_data ) ;
18160: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18161: THEN
18162: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18163: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18164: THEN
18165: RAISE FND_API.G_EXC_ERROR;
18166: END IF;
18159: ,x_msg_data => l_msg_data ) ;
18160: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18161: THEN
18162: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18163: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18164: THEN
18165: RAISE FND_API.G_EXC_ERROR;
18166: END IF;
18167: END IF ;
18161: THEN
18162: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18163: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18164: THEN
18165: RAISE FND_API.G_EXC_ERROR;
18166: END IF;
18167: END IF ;
18168: END IF ;
18169: END IF ;
18194: ,x_msg_data => l_msg_data
18195: ,x_return_status => l_return_status
18196: );
18197:
18198: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18199: THEN
18200: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18201:
18202: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18196: );
18197:
18198: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18199: THEN
18200: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18201:
18202: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18203: THEN
18204: p_multiple_task_msg := 'F';
18198: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18199: THEN
18200: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18201:
18202: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18203: THEN
18204: p_multiple_task_msg := 'F';
18205: RAISE FND_API.G_EXC_ERROR;
18206: END IF;
18201:
18202: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18203: THEN
18204: p_multiple_task_msg := 'F';
18205: RAISE FND_API.G_EXC_ERROR;
18206: END IF;
18207:
18208: --bug 2856033
18209:
18232: ,x_msg_data => l_msg_data
18233: ,x_return_status => l_return_status
18234: );
18235:
18236: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18237: THEN
18238: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18239:
18240: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18234: );
18235:
18236: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18237: THEN
18238: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18239:
18240: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18241: THEN
18242: p_multiple_task_msg := 'F';
18236: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18237: THEN
18238: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18239:
18240: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18241: THEN
18242: p_multiple_task_msg := 'F';
18243: RAISE FND_API.G_EXC_ERROR;
18244: END IF;
18239:
18240: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18241: THEN
18242: p_multiple_task_msg := 'F';
18243: RAISE FND_API.G_EXC_ERROR;
18244: END IF;
18245: --bug 2856033
18246:
18247: END IF;
18253:
18254:
18255: IF p_multiple_task_msg = 'F'
18256: THEN
18257: RAISE FND_API.G_EXC_ERROR;
18258: END IF;
18259:
18260: p_tasks_out := l_tasks_out;
18261:
18294: ,p_attribute3 => ''
18295: ,p_attribute4 => ''
18296: ,p_attribute5 => '');
18297: END IF;
18298: RAISE FND_API.G_EXC_ERROR;
18299:
18300: END IF;
18301: END IF;
18302: END IF;
18325: IF l_max_task_date > l_project_completion_date
18326: THEN
18327:
18328: CLOSE l_max_task_end_date_csr;
18329: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
18330:
18331: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_ERROR)
18332: THEN
18333: /* The FND_AS_UNEXPECTED_ERROR message is being reported from UPDATE_PROJECT API and modified
18346: ,p_attribute3 => ''
18347: ,p_attribute4 => ''
18348: ,p_attribute5 => '');
18349: END IF;
18350: RAISE FND_API.G_EXC_ERROR;
18351:
18352: END IF;
18353: END IF;
18354: END IF;
18363: Pa_project_pvt.check_parent_child_task_dates
18364: (p_project_id => l_project_id,
18365: p_return_status => l_return_status );
18366:
18367: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18368: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18369: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18370: RAISE FND_API.G_EXC_ERROR;
18371: END IF;
18364: (p_project_id => l_project_id,
18365: p_return_status => l_return_status );
18366:
18367: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18368: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18369: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18370: RAISE FND_API.G_EXC_ERROR;
18371: END IF;
18372: G_ParchildTsk_chks_deferred := 'N';
18365: p_return_status => l_return_status );
18366:
18367: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18368: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18369: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18370: RAISE FND_API.G_EXC_ERROR;
18371: END IF;
18372: G_ParchildTsk_chks_deferred := 'N';
18373: END IF;
18366:
18367: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18368: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18369: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18370: RAISE FND_API.G_EXC_ERROR;
18371: END IF;
18372: G_ParchildTsk_chks_deferred := 'N';
18373: END IF;
18374:
18397: ,p_value3 => p_key_members(i).project_role_type
18398: );
18399: END IF;
18400: p_multiple_task_msg := 'F';
18401: RAISE FND_API.G_EXC_ERROR;
18402: END IF;
18403: -- validate the role type introduced for Bug#5196996
18404: OPEN l_project_role_types_csr (p_key_members(i).project_role_type,l_project_id);
18405: FETCH l_project_role_types_csr INTO l_dummy;
18419: ,p_attribute4 => ''
18420: ,p_attribute5 => '');
18421: END IF;
18422: CLOSE l_project_role_types_csr;
18423: RAISE FND_API.G_EXC_ERROR;
18424: ELSE
18425: CLOSE l_project_role_types_csr;
18426: END IF;
18427: -- end of changes for Bug#5196996
18457: ,p_attribute3 => ''
18458: ,p_attribute4 => ''
18459: ,p_attribute5 => '');
18460: p_multiple_task_msg := 'F';
18461: -- RAISE FND_API.G_EXC_ERROR;
18462: END IF;
18463: END IF;
18464: END IF;
18465:
18470: p_key_members(i).start_date,
18471: p_key_members(i).end_date,
18472: l_return_status );
18473:
18474: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18475: p_return_status := l_return_status;
18476: p_project_out.return_status := l_return_status;
18477: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18478: END IF;
18473:
18474: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18475: p_return_status := l_return_status;
18476: p_project_out.return_status := l_return_status;
18477: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18478: END IF;
18479: END IF;
18480: IF l_key_members_tbl.EXISTS(1) THEN
18481: l_count := l_key_members_tbl.COUNT + 1;
18544: end if;
18545: END IF;
18546: END IF;
18547: IF l_temp_end_date < l_temp_start_date THEN
18548: p_return_status := FND_API.G_RET_STS_ERROR;
18549: IF FND_MSG_PUB.Check_Msg_Level
18550: (FND_MSG_PUB.G_MSG_LVL_SUCCESS) THEN
18551: pa_interface_utils_pub.map_new_amg_msg
18552: ( p_old_message_code => 'PA_PR_INVALID_KM_DATES'
18592: if l_key_members_rec.scheduled_flag = 'N' OR l_key_members_rec.scheduled_flag IS NULL
18593: then
18594: PA_PROJECT_PARTIES_PUB.UPDATE_PROJECT_PARTY(
18595: p_api_version => 1.0 -- p_api_version
18596: , p_init_msg_list => FND_API.G_TRUE -- p_init_msg_list
18597: , p_commit => FND_API.G_FALSE -- p_commit
18598: , p_validate_only => FND_API.G_FALSE -- p_validate_only
18599: , p_validation_level => FND_API.G_VALID_LEVEL_FULL -- p_validation_level
18600: , p_debug_mode => 'N' -- p_debug_mode
18593: then
18594: PA_PROJECT_PARTIES_PUB.UPDATE_PROJECT_PARTY(
18595: p_api_version => 1.0 -- p_api_version
18596: , p_init_msg_list => FND_API.G_TRUE -- p_init_msg_list
18597: , p_commit => FND_API.G_FALSE -- p_commit
18598: , p_validate_only => FND_API.G_FALSE -- p_validate_only
18599: , p_validation_level => FND_API.G_VALID_LEVEL_FULL -- p_validation_level
18600: , p_debug_mode => 'N' -- p_debug_mode
18601: , p_object_id => l_key_members_rec.project_id -- p_object_id
18594: PA_PROJECT_PARTIES_PUB.UPDATE_PROJECT_PARTY(
18595: p_api_version => 1.0 -- p_api_version
18596: , p_init_msg_list => FND_API.G_TRUE -- p_init_msg_list
18597: , p_commit => FND_API.G_FALSE -- p_commit
18598: , p_validate_only => FND_API.G_FALSE -- p_validate_only
18599: , p_validation_level => FND_API.G_VALID_LEVEL_FULL -- p_validation_level
18600: , p_debug_mode => 'N' -- p_debug_mode
18601: , p_object_id => l_key_members_rec.project_id -- p_object_id
18602: , p_OBJECT_TYPE => 'PA_PROJECTS' -- p_OBJECT_TYPE
18595: p_api_version => 1.0 -- p_api_version
18596: , p_init_msg_list => FND_API.G_TRUE -- p_init_msg_list
18597: , p_commit => FND_API.G_FALSE -- p_commit
18598: , p_validate_only => FND_API.G_FALSE -- p_validate_only
18599: , p_validation_level => FND_API.G_VALID_LEVEL_FULL -- p_validation_level
18600: , p_debug_mode => 'N' -- p_debug_mode
18601: , p_object_id => l_key_members_rec.project_id -- p_object_id
18602: , p_OBJECT_TYPE => 'PA_PROJECTS' -- p_OBJECT_TYPE
18603: , p_project_role_id => NULL -------Bug 2100142l_key_members_rec.project_id -- p_project_role_id
18620: , x_return_status => x_return_status -- x_return_status
18621: , x_msg_count => x_msg_count -- x_msg_count
18622: , x_msg_data => x_msg_data -- x_msg_data
18623: );
18624: IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) Then
18625: p_return_status := x_return_status;
18626: p_msg_count := x_msg_count;
18627: p_msg_data := SUBSTR(p_msg_data||x_msg_data,1,2000);
18628: if (x_return_status = FND_API.G_RET_STS_ERROR) then
18624: IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) Then
18625: p_return_status := x_return_status;
18626: p_msg_count := x_msg_count;
18627: p_msg_data := SUBSTR(p_msg_data||x_msg_data,1,2000);
18628: if (x_return_status = FND_API.G_RET_STS_ERROR) then
18629: raise FND_API.G_EXC_UNEXPECTED_ERROR;
18630: else -- (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18631: raise FND_API.G_EXC_ERROR;
18632: end if;
18625: p_return_status := x_return_status;
18626: p_msg_count := x_msg_count;
18627: p_msg_data := SUBSTR(p_msg_data||x_msg_data,1,2000);
18628: if (x_return_status = FND_API.G_RET_STS_ERROR) then
18629: raise FND_API.G_EXC_UNEXPECTED_ERROR;
18630: else -- (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18631: raise FND_API.G_EXC_ERROR;
18632: end if;
18633: END IF;
18626: p_msg_count := x_msg_count;
18627: p_msg_data := SUBSTR(p_msg_data||x_msg_data,1,2000);
18628: if (x_return_status = FND_API.G_RET_STS_ERROR) then
18629: raise FND_API.G_EXC_UNEXPECTED_ERROR;
18630: else -- (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18631: raise FND_API.G_EXC_ERROR;
18632: end if;
18633: END IF;
18634: end if;
18627: p_msg_data := SUBSTR(p_msg_data||x_msg_data,1,2000);
18628: if (x_return_status = FND_API.G_RET_STS_ERROR) then
18629: raise FND_API.G_EXC_UNEXPECTED_ERROR;
18630: else -- (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18631: raise FND_API.G_EXC_ERROR;
18632: end if;
18633: END IF;
18634: end if;
18635: -- end NEW code for ROLE BASED SECURITY
18640: END LOOP;
18641:
18642: IF p_multiple_task_msg = 'F'
18643: THEN
18644: RAISE FND_API.G_EXC_ERROR;
18645: END IF;
18646:
18647: IF l_key_members_tbl.COUNT > 0 THEN
18648: PA_PROJECT_PVT.add_key_members (
18649: p_return_status =>l_return_status,
18650: p_pa_source_template_id =>l_project_rec.created_from_project_id,
18651: p_project_id =>l_project_id,
18652: p_key_members =>l_key_members_tbl );
18653: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18654: p_return_status := l_return_status;
18655: p_project_out.return_status := l_return_status;
18656: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18657: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18652: p_key_members =>l_key_members_tbl );
18653: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18654: p_return_status := l_return_status;
18655: p_project_out.return_status := l_return_status;
18656: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18657: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18658: p_return_status := l_return_status;
18659: p_project_out.return_status := l_return_status;
18660: RAISE FND_API.G_EXC_ERROR;
18653: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18654: p_return_status := l_return_status;
18655: p_project_out.return_status := l_return_status;
18656: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18657: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18658: p_return_status := l_return_status;
18659: p_project_out.return_status := l_return_status;
18660: RAISE FND_API.G_EXC_ERROR;
18661: END IF;
18656: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18657: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18658: p_return_status := l_return_status;
18659: p_project_out.return_status := l_return_status;
18660: RAISE FND_API.G_EXC_ERROR;
18661: END IF;
18662: END IF;
18663:
18664: /* Start of code for bug #2111806
18666: Manager exists for the complete duration of the Project. */
18667: pa_project_check_pvt.check_manager_date_range(p_project_id => l_project_id
18668: ,p_return_status => l_return_status);
18669:
18670: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18671: THEN
18672: p_project_out.return_status := l_return_status;
18673: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18674:
18669:
18670: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
18671: THEN
18672: p_project_out.return_status := l_return_status;
18673: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18674:
18675: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18676: THEN
18677:
18671: THEN
18672: p_project_out.return_status := l_return_status;
18673: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18674:
18675: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18676: THEN
18677:
18678: p_project_out.return_status := l_return_status;
18679: RAISE FND_API.G_EXC_ERROR;
18675: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
18676: THEN
18677:
18678: p_project_out.return_status := l_return_status;
18679: RAISE FND_API.G_EXC_ERROR;
18680: END IF;
18681: /* End of code for bug #2111806 */
18682:
18683: END IF;
18703: pa_utils.add_message
18704: ( p_app_short_name => 'PA'
18705: ,p_msg_name => 'PA_PR_INSUF_PROJ_MGR'
18706: );
18707: RAISE FND_API.G_EXC_ERROR;
18708: END IF;
18709: END IF;
18710: END IF;
18711: /* End of code for bug #2111806 */
18773: ELSE
18774: l_temp_end_date := l_org_roles_rec.end_date_active;
18775: END IF;
18776: IF l_temp_end_date < l_temp_start_date THEN
18777: p_return_status := FND_API.G_RET_STS_ERROR;
18778: IF FND_MSG_PUB.Check_Msg_Level
18779: (FND_MSG_PUB.G_MSG_LVL_SUCCESS) THEN
18780: pa_interface_utils_pub.map_new_amg_msg
18781: ( p_old_message_code => 'PA_PR_INVALID_OR_DATES'
18807: if l_org_roles_rec.scheduled_flag = 'N'
18808: then
18809: PA_PROJECT_PARTIES_PUB.UPDATE_PROJECT_PARTY(
18810: p_api_version => 1.0 -- p_api_version
18811: , p_init_msg_list => FND_API.G_TRUE -- p_init_msg_list
18812: , p_commit => FND_API.G_FALSE -- p_commit
18813: , p_validate_only => FND_API.G_FALSE -- p_validate_only
18814: , p_validation_level => FND_API.G_VALID_LEVEL_FULL -- p_validation_level
18815: , p_debug_mode => 'N' -- p_debug_mode
18808: then
18809: PA_PROJECT_PARTIES_PUB.UPDATE_PROJECT_PARTY(
18810: p_api_version => 1.0 -- p_api_version
18811: , p_init_msg_list => FND_API.G_TRUE -- p_init_msg_list
18812: , p_commit => FND_API.G_FALSE -- p_commit
18813: , p_validate_only => FND_API.G_FALSE -- p_validate_only
18814: , p_validation_level => FND_API.G_VALID_LEVEL_FULL -- p_validation_level
18815: , p_debug_mode => 'N' -- p_debug_mode
18816: , p_object_id => l_org_roles_rec.project_id -- p_object_id
18809: PA_PROJECT_PARTIES_PUB.UPDATE_PROJECT_PARTY(
18810: p_api_version => 1.0 -- p_api_version
18811: , p_init_msg_list => FND_API.G_TRUE -- p_init_msg_list
18812: , p_commit => FND_API.G_FALSE -- p_commit
18813: , p_validate_only => FND_API.G_FALSE -- p_validate_only
18814: , p_validation_level => FND_API.G_VALID_LEVEL_FULL -- p_validation_level
18815: , p_debug_mode => 'N' -- p_debug_mode
18816: , p_object_id => l_org_roles_rec.project_id -- p_object_id
18817: , p_OBJECT_TYPE => 'PA_PROJECTS' -- p_OBJECT_TYPE
18810: p_api_version => 1.0 -- p_api_version
18811: , p_init_msg_list => FND_API.G_TRUE -- p_init_msg_list
18812: , p_commit => FND_API.G_FALSE -- p_commit
18813: , p_validate_only => FND_API.G_FALSE -- p_validate_only
18814: , p_validation_level => FND_API.G_VALID_LEVEL_FULL -- p_validation_level
18815: , p_debug_mode => 'N' -- p_debug_mode
18816: , p_object_id => l_org_roles_rec.project_id -- p_object_id
18817: , p_OBJECT_TYPE => 'PA_PROJECTS' -- p_OBJECT_TYPE
18818: , p_project_role_id => NULL -------Bug 2100142l_key_members_rec.project_id -- p_project_role_id
18835: , x_return_status => x_return_status -- x_return_status
18836: , x_msg_count => x_msg_count -- x_msg_count
18837: , x_msg_data => x_msg_data -- x_msg_data
18838: );
18839: IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) Then
18840: p_return_status := x_return_status;
18841: p_msg_count := x_msg_count;
18842: p_msg_data := SUBSTR(p_msg_data||x_msg_data,1,2000);
18843: if (x_return_status = FND_API.G_RET_STS_ERROR) then
18839: IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) Then
18840: p_return_status := x_return_status;
18841: p_msg_count := x_msg_count;
18842: p_msg_data := SUBSTR(p_msg_data||x_msg_data,1,2000);
18843: if (x_return_status = FND_API.G_RET_STS_ERROR) then
18844: raise FND_API.G_EXC_UNEXPECTED_ERROR;
18845: else -- (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18846: raise FND_API.G_EXC_ERROR;
18847: end if;
18840: p_return_status := x_return_status;
18841: p_msg_count := x_msg_count;
18842: p_msg_data := SUBSTR(p_msg_data||x_msg_data,1,2000);
18843: if (x_return_status = FND_API.G_RET_STS_ERROR) then
18844: raise FND_API.G_EXC_UNEXPECTED_ERROR;
18845: else -- (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18846: raise FND_API.G_EXC_ERROR;
18847: end if;
18848: END IF;
18841: p_msg_count := x_msg_count;
18842: p_msg_data := SUBSTR(p_msg_data||x_msg_data,1,2000);
18843: if (x_return_status = FND_API.G_RET_STS_ERROR) then
18844: raise FND_API.G_EXC_UNEXPECTED_ERROR;
18845: else -- (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18846: raise FND_API.G_EXC_ERROR;
18847: end if;
18848: END IF;
18849: end if;
18842: p_msg_data := SUBSTR(p_msg_data||x_msg_data,1,2000);
18843: if (x_return_status = FND_API.G_RET_STS_ERROR) then
18844: raise FND_API.G_EXC_UNEXPECTED_ERROR;
18845: else -- (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
18846: raise FND_API.G_EXC_ERROR;
18847: end if;
18848: END IF;
18849: end if;
18850:
18854: END LOOP;
18855:
18856: IF p_multiple_task_msg = 'F'
18857: THEN
18858: RAISE FND_API.G_EXC_ERROR;
18859: END IF;
18860:
18861: IF l_org_roles_tbl.COUNT > 0 THEN
18862: PA_PROJECT_PVT.add_org_roles (
18863: p_return_status =>l_return_status,
18864: p_pa_source_template_id =>l_project_rec.created_from_project_id,
18865: p_project_id =>l_project_id,
18866: p_org_roles =>l_org_roles_tbl );
18867: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18868: p_return_status := l_return_status;
18869: p_project_out.return_status := l_return_status;
18870: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18871: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18866: p_org_roles =>l_org_roles_tbl );
18867: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18868: p_return_status := l_return_status;
18869: p_project_out.return_status := l_return_status;
18870: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18871: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18872: p_return_status := l_return_status;
18873: p_project_out.return_status := l_return_status;
18874: RAISE FND_API.G_EXC_ERROR;
18867: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
18868: p_return_status := l_return_status;
18869: p_project_out.return_status := l_return_status;
18870: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18871: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18872: p_return_status := l_return_status;
18873: p_project_out.return_status := l_return_status;
18874: RAISE FND_API.G_EXC_ERROR;
18875: END IF;
18870: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
18871: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
18872: p_return_status := l_return_status;
18873: p_project_out.return_status := l_return_status;
18874: RAISE FND_API.G_EXC_ERROR;
18875: END IF;
18876: END IF;
18877:
18878: END IF;
18938: ,p_attribute4 => ''
18939: ,p_attribute5 => '');
18940: END IF;
18941: close c_get_class_code_id;
18942: RAISE FND_API.G_EXC_ERROR;
18943: end if;
18944: close c_get_class_code_id;
18945:
18946: PA_USER_ATTR_PUB.DELETE_USER_ATTRS_DATA (
18943: end if;
18944: close c_get_class_code_id;
18945:
18946: PA_USER_ATTR_PUB.DELETE_USER_ATTRS_DATA (
18947: p_validate_only => FND_API.G_FALSE
18948: ,p_project_id => l_project_id
18949: ,p_old_classification_id => l_old_class_code_id
18950: ,p_new_classification_id => l_new_class_code_id
18951: ,p_classification_type => 'CLASS_CODE'
18955: l_msg_count := FND_MSG_PUB.count_msg;
18956: IF l_msg_count > 0 THEN
18957: x_msg_count := l_msg_count;
18958: x_return_status := 'E';
18959: RAISE FND_API.G_EXC_ERROR;
18960: END IF;
18961: --Add the new class code values to the temp table
18962: l_class_categories_tbl(i) := p_class_categories(i);
18963: l_class_categories_tbl(i).class_code := p_class_categories(i).new_class_code;
19034: , p_pa_source_template_id =>l_project_rec.created_from_project_id
19035: , p_project_id =>l_project_id
19036: , p_class_categories =>l_class_categories_tbl );
19037:
19038: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
19039: THEN
19040:
19041: p_project_out.return_status := l_return_status;
19042: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19038: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
19039: THEN
19040:
19041: p_project_out.return_status := l_return_status;
19042: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19043:
19044: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
19045: THEN
19046:
19040:
19041: p_project_out.return_status := l_return_status;
19042: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19043:
19044: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
19045: THEN
19046:
19047: p_project_out.return_status := l_return_status;
19048: RAISE FND_API.G_EXC_ERROR;
19044: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
19045: THEN
19046:
19047: p_project_out.return_status := l_return_status;
19048: RAISE FND_API.G_EXC_ERROR;
19049:
19050: END IF;
19051: END IF;
19052:
19086: ( p_app_short_name => 'PA'
19087: ,p_msg_name => 'PA_CUSTOMER_ID_INVALID'
19088: );
19089: END IF;
19090: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19091: p_return_status := FND_API.G_RET_STS_ERROR;
19092: RAISE FND_API.G_EXC_ERROR;
19093:
19094: ELSIF ( cur_customer_status%FOUND ) THEN
19087: ,p_msg_name => 'PA_CUSTOMER_ID_INVALID'
19088: );
19089: END IF;
19090: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19091: p_return_status := FND_API.G_RET_STS_ERROR;
19092: RAISE FND_API.G_EXC_ERROR;
19093:
19094: ELSIF ( cur_customer_status%FOUND ) THEN
19095: --dbms_output.put_line('four'||l_check_relationship_flag);
19088: );
19089: END IF;
19090: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19091: p_return_status := FND_API.G_RET_STS_ERROR;
19092: RAISE FND_API.G_EXC_ERROR;
19093:
19094: ELSIF ( cur_customer_status%FOUND ) THEN
19095: --dbms_output.put_line('four'||l_check_relationship_flag);
19096: IF ( l_cust_status = 'I' ) THEN
19104: ,p_token2 => 'CUSTOMER_ID'
19105: ,p_value2 => p_project_in.customer_id
19106: );
19107: END IF;
19108: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19109: p_return_status := FND_API.G_RET_STS_ERROR;
19110: RAISE FND_API.G_EXC_ERROR;
19111:
19112: ELSE --customer id is not null and it is valid
19105: ,p_value2 => p_project_in.customer_id
19106: );
19107: END IF;
19108: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19109: p_return_status := FND_API.G_RET_STS_ERROR;
19110: RAISE FND_API.G_EXC_ERROR;
19111:
19112: ELSE --customer id is not null and it is valid
19113:
19106: );
19107: END IF;
19108: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19109: p_return_status := FND_API.G_RET_STS_ERROR;
19110: RAISE FND_API.G_EXC_ERROR;
19111:
19112: ELSE --customer id is not null and it is valid
19113:
19114:
19149: ,p_attribute3 => ''
19150: ,p_attribute4 => ''
19151: ,p_attribute5 => '');
19152: END IF;
19153: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19154: p_return_status := FND_API.G_RET_STS_ERROR;
19155: RAISE FND_API.G_EXC_ERROR;
19156: end if;
19157:
19150: ,p_attribute4 => ''
19151: ,p_attribute5 => '');
19152: END IF;
19153: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19154: p_return_status := FND_API.G_RET_STS_ERROR;
19155: RAISE FND_API.G_EXC_ERROR;
19156: end if;
19157:
19158: Open Cur_Customer(l_project_id,p_project_in.customer_id);
19151: ,p_attribute5 => '');
19152: END IF;
19153: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19154: p_return_status := FND_API.G_RET_STS_ERROR;
19155: RAISE FND_API.G_EXC_ERROR;
19156: end if;
19157:
19158: Open Cur_Customer(l_project_id,p_project_in.customer_id);
19159: Fetch Cur_Customer into Cur_Customer_rec;
19192: ,p_attribute2 => ''
19193: ,p_attribute3 => ''
19194: ,p_attribute4 => ''
19195: ,p_attribute5 => '');
19196: RAISE FND_API.G_EXC_ERROR;
19197: END IF;
19198: */
19199: /* Bug 3077676 End */
19200:
19255: ,p_attribute2 => ''
19256: ,p_attribute3 => ''
19257: ,p_attribute4 => ''
19258: ,p_attribute5 => '');
19259: RAISE FND_API.G_EXC_ERROR;
19260: END IF;
19261:
19262: pa_customer_info.get_customer_info( X_project_ID => l_project_id,
19263: X_Customer_Id => p_project_in.customer_id
19312: END IF;
19313:
19314: END IF;
19315:
19316: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19317: RAISE FND_API.G_EXC_ERROR;
19318:
19319: ELSIF l_err_code < 0
19320: THEN
19313:
19314: END IF;
19315:
19316: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19317: RAISE FND_API.G_EXC_ERROR;
19318:
19319: ELSIF l_err_code < 0
19320: THEN
19321:
19332: ,p_attribute4 => ''
19333: ,p_attribute5 => '');
19334: END IF;
19335:
19336: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19337: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19338: END IF;
19339:
19340: /* Update the project customer information */
19333: ,p_attribute5 => '');
19334: END IF;
19335:
19336: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19337: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19338: END IF;
19339:
19340: /* Update the project customer information */
19341: ----dbms_output.put_line('before update ');
19389: P_API_VERSION => 1.0
19390: , P_INIT_MSG_LIST => 'T'
19391: , P_COMMIT => 'F'
19392: , P_VALIDATE_ONLY => 'F'
19393: , P_VALIDATION_LEVEL => FND_API.G_VALID_LEVEL_FULL -- 100 Bug 5622539
19394: , P_DEBUG_MODE => 'N'
19395: , p_calling_module => 'AMG'
19396: , p_project_id => l_project_id
19397: , p_exclude_cust_id_tbl => l_exclude_cust_id_tbl
19402: , x_msg_count => l_msg_count
19403: , x_msg_data => l_msg_data );
19404:
19405: -- Bug 5622539
19406: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
19407: l_msg_count := FND_MSG_PUB.count_msg;
19408: if l_msg_count = 1 then
19409: PA_INTERFACE_UTILS_PUB.get_messages
19410: (p_encoded => FND_API.G_FALSE,
19406: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
19407: l_msg_count := FND_MSG_PUB.count_msg;
19408: if l_msg_count = 1 then
19409: PA_INTERFACE_UTILS_PUB.get_messages
19410: (p_encoded => FND_API.G_FALSE,
19411: p_msg_index => 1,
19412: p_msg_count => l_msg_count,
19413: p_msg_data => l_msg_data,
19414: p_data => l_msg_data,
19414: p_data => l_msg_data,
19415: p_msg_index_out => l_msg_index_out);
19416:
19417: end if;
19418: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19419: p_project_out.return_status := l_return_status;
19420: RAISE FND_API.G_EXC_ERROR;
19421: else
19422: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19416:
19417: end if;
19418: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19419: p_project_out.return_status := l_return_status;
19420: RAISE FND_API.G_EXC_ERROR;
19421: else
19422: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19423: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19424: END if;
19418: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19419: p_project_out.return_status := l_return_status;
19420: RAISE FND_API.G_EXC_ERROR;
19421: else
19422: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19423: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19424: END if;
19425: end if;
19426: -- Bug 5622539
19419: p_project_out.return_status := l_return_status;
19420: RAISE FND_API.G_EXC_ERROR;
19421: else
19422: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19423: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19424: END if;
19425: end if;
19426: -- Bug 5622539
19427:
19431: P_API_VERSION => 1.0
19432: , P_INIT_MSG_LIST => 'T'
19433: , P_COMMIT => 'F'
19434: , P_VALIDATE_ONLY => 'F'
19435: , P_VALIDATION_LEVEL => FND_API.G_VALID_LEVEL_FULL -- 100 Bug 5622539
19436: , P_DEBUG_MODE => 'N'
19437: , p_calling_module => 'AMG'
19438: , p_mode => 'ENABLE'
19439: , p_project_id => l_project_id
19443: , x_msg_count => l_msg_count
19444: , x_msg_data => l_msg_data );
19445:
19446: -- Bug 5622539
19447: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
19448: l_msg_count := FND_MSG_PUB.count_msg;
19449: if l_msg_count = 1 then
19450: PA_INTERFACE_UTILS_PUB.get_messages
19451: (p_encoded => FND_API.G_FALSE,
19447: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
19448: l_msg_count := FND_MSG_PUB.count_msg;
19449: if l_msg_count = 1 then
19450: PA_INTERFACE_UTILS_PUB.get_messages
19451: (p_encoded => FND_API.G_FALSE,
19452: p_msg_index => 1,
19453: p_msg_count => l_msg_count,
19454: p_msg_data => l_msg_data,
19455: p_data => l_msg_data,
19455: p_data => l_msg_data,
19456: p_msg_index_out => l_msg_index_out);
19457:
19458: end if;
19459: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19460: p_project_out.return_status := l_return_status;
19461: RAISE FND_API.G_EXC_ERROR;
19462: else
19463: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19457:
19458: end if;
19459: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19460: p_project_out.return_status := l_return_status;
19461: RAISE FND_API.G_EXC_ERROR;
19462: else
19463: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19464: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19465: END if;
19459: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19460: p_project_out.return_status := l_return_status;
19461: RAISE FND_API.G_EXC_ERROR;
19462: else
19463: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19464: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19465: END if;
19466: end if;
19467: -- Bug 5622539
19460: p_project_out.return_status := l_return_status;
19461: RAISE FND_API.G_EXC_ERROR;
19462: else
19463: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19464: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19465: END if;
19466: end if;
19467: -- Bug 5622539
19468:
19496: P_API_VERSION => 1.0
19497: , P_INIT_MSG_LIST => 'T'
19498: , P_COMMIT => 'F'
19499: , P_VALIDATE_ONLY => 'F'
19500: , P_VALIDATION_LEVEL => FND_API.G_VALID_LEVEL_FULL --100 bug 5622539
19501: , P_DEBUG_MODE => 'N'
19502: , p_calling_module => 'AMG'
19503: , p_project_id => l_project_id
19504: , p_exclude_cust_id_tbl => l_exclude_cust_id_tbl
19509: , x_msg_count => l_msg_count
19510: , x_msg_data => l_msg_data );
19511:
19512: -- Bug 5622539
19513: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
19514: l_msg_count := FND_MSG_PUB.count_msg;
19515: if l_msg_count = 1 then
19516: PA_INTERFACE_UTILS_PUB.get_messages
19517: (p_encoded => FND_API.G_FALSE,
19513: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
19514: l_msg_count := FND_MSG_PUB.count_msg;
19515: if l_msg_count = 1 then
19516: PA_INTERFACE_UTILS_PUB.get_messages
19517: (p_encoded => FND_API.G_FALSE,
19518: p_msg_index => 1,
19519: p_msg_count => l_msg_count,
19520: p_msg_data => l_msg_data,
19521: p_data => l_msg_data,
19521: p_data => l_msg_data,
19522: p_msg_index_out => l_msg_index_out);
19523:
19524: end if;
19525: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19526: p_project_out.return_status := l_return_status;
19527: RAISE FND_API.G_EXC_ERROR;
19528: else
19529: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19523:
19524: end if;
19525: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19526: p_project_out.return_status := l_return_status;
19527: RAISE FND_API.G_EXC_ERROR;
19528: else
19529: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19530: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19531: END if;
19525: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19526: p_project_out.return_status := l_return_status;
19527: RAISE FND_API.G_EXC_ERROR;
19528: else
19529: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19530: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19531: END if;
19532: end if;
19533: -- Bug 5622539
19526: p_project_out.return_status := l_return_status;
19527: RAISE FND_API.G_EXC_ERROR;
19528: else
19529: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19530: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19531: END if;
19532: end if;
19533: -- Bug 5622539
19534: OPEN cur_get_def_top_task_cust;
19541: P_API_VERSION => 1.0
19542: , P_INIT_MSG_LIST => 'T'
19543: , P_COMMIT => 'F'
19544: , P_VALIDATE_ONLY => 'F'
19545: , P_VALIDATION_LEVEL => FND_API.G_VALID_LEVEL_FULL -- 100 Bug 5622539
19546: , P_DEBUG_MODE => 'N'
19547: , p_calling_module => 'AMG'
19548: , p_mode => 'DISABLE'
19549: , p_project_id => l_project_id
19553: , x_msg_count => l_msg_count
19554: , x_msg_data => l_msg_data );
19555:
19556: -- Bug 5622539
19557: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
19558: l_msg_count := FND_MSG_PUB.count_msg;
19559: if l_msg_count = 1 then
19560: PA_INTERFACE_UTILS_PUB.get_messages
19561: (p_encoded => FND_API.G_FALSE,
19557: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
19558: l_msg_count := FND_MSG_PUB.count_msg;
19559: if l_msg_count = 1 then
19560: PA_INTERFACE_UTILS_PUB.get_messages
19561: (p_encoded => FND_API.G_FALSE,
19562: p_msg_index => 1,
19563: p_msg_count => l_msg_count,
19564: p_msg_data => l_msg_data,
19565: p_data => l_msg_data,
19565: p_data => l_msg_data,
19566: p_msg_index_out => l_msg_index_out);
19567:
19568: end if;
19569: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19570: p_project_out.return_status := l_return_status;
19571: RAISE FND_API.G_EXC_ERROR;
19572: else
19573: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19567:
19568: end if;
19569: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19570: p_project_out.return_status := l_return_status;
19571: RAISE FND_API.G_EXC_ERROR;
19572: else
19573: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19574: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19575: END if;
19569: If l_return_status = FND_API.G_RET_STS_ERROR THEN
19570: p_project_out.return_status := l_return_status;
19571: RAISE FND_API.G_EXC_ERROR;
19572: else
19573: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19574: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19575: END if;
19576: end if;
19577: -- Bug 5622539
19570: p_project_out.return_status := l_return_status;
19571: RAISE FND_API.G_EXC_ERROR;
19572: else
19573: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19574: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19575: END if;
19576: end if;
19577: -- Bug 5622539
19578: END IF;
19614: ,p_attribute3 => ''
19615: ,p_attribute4 => ''
19616: ,p_attribute5 => '');
19617: END IF;
19618: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19619: p_return_status := FND_API.G_RET_STS_ERROR;
19620: RAISE FND_API.G_EXC_ERROR;
19621: end if;*/
19622:
19615: ,p_attribute4 => ''
19616: ,p_attribute5 => '');
19617: END IF;
19618: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19619: p_return_status := FND_API.G_RET_STS_ERROR;
19620: RAISE FND_API.G_EXC_ERROR;
19621: end if;*/
19622:
19623: /** changed FROM p_project_in.customer_id to p_customers_in(i).custmer_id in all places **/
19616: ,p_attribute5 => '');
19617: END IF;
19618: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19619: p_return_status := FND_API.G_RET_STS_ERROR;
19620: RAISE FND_API.G_EXC_ERROR;
19621: end if;*/
19622:
19623: /** changed FROM p_project_in.customer_id to p_customers_in(i).custmer_id in all places **/
19624: If (p_customers_in(i).bill_to_customer_id IS NOT NULL AND p_customers_in(i).bill_to_customer_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
19640: ,p_attribute3 => ''
19641: ,p_attribute4 => ''
19642: ,p_attribute5 => '');
19643: END IF;
19644: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19645: p_return_status := FND_API.G_RET_STS_ERROR;
19646: RAISE FND_API.G_EXC_ERROR;
19647: end if;
19648: --dbms_output.put_line('comes into karthiks 0th end if');
19641: ,p_attribute4 => ''
19642: ,p_attribute5 => '');
19643: END IF;
19644: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19645: p_return_status := FND_API.G_RET_STS_ERROR;
19646: RAISE FND_API.G_EXC_ERROR;
19647: end if;
19648: --dbms_output.put_line('comes into karthiks 0th end if');
19649: End if; --added by aditi for tracking bug -- FOR CUSTOMER ISSUE
19642: ,p_attribute5 => '');
19643: END IF;
19644: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19645: p_return_status := FND_API.G_RET_STS_ERROR;
19646: RAISE FND_API.G_EXC_ERROR;
19647: end if;
19648: --dbms_output.put_line('comes into karthiks 0th end if');
19649: End if; --added by aditi for tracking bug -- FOR CUSTOMER ISSUE
19650:
19684: ,p_value2 => p_customers_in(i).customer_id
19685: );
19686: END IF;
19687: p_multiple_task_msg := 'F';
19688: RAISE FND_API.G_EXC_ERROR;
19689: END IF;
19690:
19691: -- below if condition is added Bug 5622539
19692: IF ((l_enable_top_task_cust_flag='Y' and p_project_in.enable_top_task_customer_flag <> 'Y') or
19704: ,p_value2 => p_customers_in(i).customer_id
19705: );
19706: END IF;
19707: p_multiple_task_msg := 'F';
19708: RAISE FND_API.G_EXC_ERROR;
19709: ELSE
19710: PA_CUSTOMERS_CONTACTS_UTILS.CHECK_CONTRIBUTION_PERCENTAGE
19711: ( p_customer_bill_split => p_customers_in(i).CUSTOMER_BILL_SPLIT
19712: ,x_return_status => l_return_status
19710: PA_CUSTOMERS_CONTACTS_UTILS.CHECK_CONTRIBUTION_PERCENTAGE
19711: ( p_customer_bill_split => p_customers_in(i).CUSTOMER_BILL_SPLIT
19712: ,x_return_status => l_return_status
19713: ,x_error_msg_code => l_error_msg_code);
19714: If l_return_status <> FND_API.G_RET_STS_SUCCESS then
19715: pa_utils.add_message
19716: ( p_app_short_name => 'PA' --TRACKING
19717: ,p_msg_name => 'PA_CUST_BILL_SPLIT_INVALID'
19718: ,p_token1 => 'PROJECT_NAME'
19721: ,p_value2 => p_customers_in(i).customer_id
19722: );
19723: /* Fix for bug 4604087 */
19724: p_multiple_task_msg := 'F';
19725: RAISE FND_API.G_EXC_ERROR;
19726: END IF;
19727:
19728: END IF;
19729: END IF;
19777: ,p_attribute2 => ''
19778: ,p_attribute3 => ''
19779: ,p_attribute4 => ''
19780: ,p_attribute5 => '');
19781: RAISE FND_API.G_EXC_ERROR;
19782: END IF;
19783: */
19784: /* Bug 3077676 End */
19785:
19853: ,p_attribute2 => ''
19854: ,p_attribute3 => ''
19855: ,p_attribute4 => ''
19856: ,p_attribute5 => '');
19857: RAISE FND_API.G_EXC_ERROR;
19858: END IF;
19859: /** changes begin for tracking bug by aditi **/
19860:
19861: ----dbms_output.put_line('value of p_project_in.CONTACT_ID '||p_customers_in(i).CONTACT_ID);
19876: ,p_token3 => 'CONTACT_ID'
19877: ,p_value3 => p_customers_in(i).CONTACT_ID
19878: );
19879: END IF;
19880: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19881: p_return_status := FND_API.G_RET_STS_ERROR;
19882: RAISE FND_API.G_EXC_ERROR;
19883: END IF;
19884: end if;
19877: ,p_value3 => p_customers_in(i).CONTACT_ID
19878: );
19879: END IF;
19880: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19881: p_return_status := FND_API.G_RET_STS_ERROR;
19882: RAISE FND_API.G_EXC_ERROR;
19883: END IF;
19884: end if;
19885: If p_customers_in(i).PROJECT_CONTACT_TYPE_CODE = 'BILLING' then
19878: );
19879: END IF;
19880: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19881: p_return_status := FND_API.G_RET_STS_ERROR;
19882: RAISE FND_API.G_EXC_ERROR;
19883: END IF;
19884: end if;
19885: If p_customers_in(i).PROJECT_CONTACT_TYPE_CODE = 'BILLING' then
19886: l_bill_to_contact_id := p_customers_in(i).CONTACT_ID;
19961: END IF;
19962:
19963: END IF;
19964:
19965: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19966: RAISE FND_API.G_EXC_ERROR;
19967:
19968: ELSIF l_err_code < 0
19969: THEN
19962:
19963: END IF;
19964:
19965: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
19966: RAISE FND_API.G_EXC_ERROR;
19967:
19968: ELSIF l_err_code < 0
19969: THEN
19970:
19981: ,p_attribute4 => ''
19982: ,p_attribute5 => '');
19983: END IF;
19984:
19985: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19986: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19987: END IF;
19988:
19989: /* Update the project customer information */
19982: ,p_attribute5 => '');
19983: END IF;
19984:
19985: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
19986: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
19987: END IF;
19988:
19989: /* Update the project customer information */
19990: /* The code below is also redundant for a new customer
20074: END if;
20075:
20076:
20077: If l_INV_EXCHANGE_RATE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM then
20078: l_INV_EXCHANGE_RATE := FND_API.G_MISS_NUM;
20079: END if;
20080:
20081: If l_INV_RATE_DATE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE then
20082: l_INV_RATE_DATE := FND_API.G_MISS_DATE;
20078: l_INV_EXCHANGE_RATE := FND_API.G_MISS_NUM;
20079: END if;
20080:
20081: If l_INV_RATE_DATE = PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE then
20082: l_INV_RATE_DATE := FND_API.G_MISS_DATE;
20083: END if;
20084:
20085: --bug#5554475
20086:
20147: );
20148:
20149: --uncommented and modified the below for Bug#5554475
20150:
20151: if x_return_status <> FND_API.G_RET_STS_SUCCESS then
20152: x_msg_count := FND_MSG_PUB.count_msg;
20153: if x_msg_count = 1 then
20154: PA_INTERFACE_UTILS_PUB.get_messages
20155: (p_encoded => FND_API.G_FALSE,
20151: if x_return_status <> FND_API.G_RET_STS_SUCCESS then
20152: x_msg_count := FND_MSG_PUB.count_msg;
20153: if x_msg_count = 1 then
20154: PA_INTERFACE_UTILS_PUB.get_messages
20155: (p_encoded => FND_API.G_FALSE,
20156: p_msg_index => 1,
20157: p_msg_count => x_msg_count,
20158: p_msg_data => x_msg_data,
20159: p_data => x_msg_data,
20159: p_data => x_msg_data,
20160: p_msg_index_out => l_msg_index_out);
20161:
20162: end if;
20163: If x_return_status = FND_API.G_RET_STS_ERROR THEN
20164: p_project_out.return_status := x_return_status;
20165: RAISE FND_API.G_EXC_ERROR;
20166: ELSE
20167: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20161:
20162: end if;
20163: If x_return_status = FND_API.G_RET_STS_ERROR THEN
20164: p_project_out.return_status := x_return_status;
20165: RAISE FND_API.G_EXC_ERROR;
20166: ELSE
20167: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20168: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20169: END if;
20163: If x_return_status = FND_API.G_RET_STS_ERROR THEN
20164: p_project_out.return_status := x_return_status;
20165: RAISE FND_API.G_EXC_ERROR;
20166: ELSE
20167: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20168: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20169: END if;
20170:
20171: end if;
20164: p_project_out.return_status := x_return_status;
20165: RAISE FND_API.G_EXC_ERROR;
20166: ELSE
20167: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20168: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20169: END if;
20170:
20171: end if;
20172:
20233: END IF;
20234:
20235: END IF;
20236:
20237: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20238: RAISE FND_API.G_EXC_ERROR;
20239:
20240: ELSIF l_err_code < 0
20241: THEN
20234:
20235: END IF;
20236:
20237: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20238: RAISE FND_API.G_EXC_ERROR;
20239:
20240: ELSIF l_err_code < 0
20241: THEN
20242:
20253: ,p_attribute4 => ''
20254: ,p_attribute5 => '');
20255: END IF;
20256:
20257: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20258: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20259: END IF;
20260:
20261: END IF ; --IF p_customers_in(i).customer_id IS NOT NULL
20254: ,p_attribute5 => '');
20255: END IF;
20256:
20257: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20258: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20259: END IF;
20260:
20261: END IF ; --IF p_customers_in(i).customer_id IS NOT NULL
20262: Else --If Cur_Customer%NOTFOUND
20330: ,p_token2 => 'CUSTOMER_ID'
20331: ,p_value2 => p_customers_in(i).customer_id
20332: );
20333: END IF;
20334: RAISE FND_API.G_EXC_ERROR;
20335: END IF;
20336: end if;
20337: --dbms_output..put_line('Value of p_customers_in(i).bill_another_project_flag'||p_customers_in(i).bill_another_project_flag);
20338: --dbms_output..put_line('Value of p_customers_in(i).receiver_task_id'||p_customers_in(i).receiver_task_id);
20358: ,p_token2 => 'CUSTOMER_ID'
20359: ,p_value2 => p_customers_in(i).customer_id
20360: );
20361: END IF;
20362: RAISE FND_API.G_EXC_ERROR;
20363: ELSE /* l_bill_another_project_flag = 'Y' */
20364: l_receiver_task_id := p_customers_in(i).receiver_task_id;
20365: PA_CUSTOMER_INFO.CHECK_RECEIVER_PROJ_ENTERABLE
20366: (p_project_id => l_project_id
20370: ,x_return_status => x_return_status
20371: ,x_error_msg_code => l_error_msg_code
20372: );
20373: --dbms_output..put_line('value of l_bill_another_project_flag'||l_bill_another_project_flag);
20374: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
20375: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
20376: p_msg_name => l_error_msg_code
20377: ,p_token1 => 'PROJECT_NAME'
20378: ,p_value1 => l_project_id
20378: ,p_value1 => l_project_id
20379: ,p_token2 => 'CUSTOMER_ID'
20380: ,p_value2 => p_customers_in(i).customer_id
20381: );
20382: RAISE FND_API.G_EXC_ERROR;
20383: END if; --
20384: end if; -- l_bill_another_project_flag = 'N'
20385: End If; --p_customers_in(i).receiver_task_id is null
20386: Else /* Some value is passed for p_customers_in(i).bill_another_project_flag*/
20379: ,p_token2 => 'CUSTOMER_ID'
20380: ,p_value2 => p_customers_in(i).customer_id
20381: );
20382: RAISE FND_API.G_EXC_ERROR;
20383: END if; --
20385: End If; --p_customers_in(i).receiver_task_id is null
20386: Else /* Some value is passed for p_customers_in(i).bill_another_project_flag*/
20387: /* This means that the status is being flipped */
20403: ,p_token2 => 'CUSTOMER_ID'
20404: ,p_value2 => p_customers_in(i).customer_id
20405: );
20406: END IF;
20407: RAISE FND_API.G_EXC_ERROR;
20408: ELSE /* l_bill_another_project_flag = 'Y' */
20409: l_receiver_task_id := p_customers_in(i).receiver_task_id;
20410: PA_CUSTOMER_INFO.CHECK_RECEIVER_PROJ_ENTERABLE
20411: (p_project_id => l_project_id
20416: ,x_error_msg_code => l_error_msg_code
20417: );
20418: --dbms_output..put_line('value of l_bill_another_project_flag'||l_bill_another_project_flag);
20419:
20420: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
20421: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
20422: p_msg_name => l_error_msg_code
20423: ,p_token1 => 'PROJECT_NAME'
20424: ,p_value1 => l_project_id
20424: ,p_value1 => l_project_id
20425: ,p_token2 => 'CUSTOMER_ID'
20426: ,p_value2 => p_customers_in(i).customer_id
20427: );
20428: RAISE FND_API.G_EXC_ERROR;
20429: END if; --
20430: END IF;/* l_bill_another_project_flag = 'N' */
20431: End If;
20432: End if;
20425: ,p_token2 => 'CUSTOMER_ID'
20426: ,p_value2 => p_customers_in(i).customer_id
20427: );
20428: RAISE FND_API.G_EXC_ERROR;
20429: END if; --
20431: End If;
20432: End if;
20433:
20453: ,p_attribute2 => ''
20454: ,p_attribute3 => ''
20455: ,p_attribute4 => ''
20456: ,p_attribute5 => '');
20457: RAISE FND_API.G_EXC_ERROR;
20458: END IF;
20459: /** changes begin for tracking bug by aditi **/
20460:
20461: ----dbms_output.put_line('value of p_project_in.CONTACT_ID '||p_customers_in(i).CONTACT_ID);
20476: ,p_token3 => 'CONTACT_ID'
20477: ,p_value3 => p_customers_in(i).CONTACT_ID
20478: );
20479: END IF;
20480: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20481: p_return_status := FND_API.G_RET_STS_ERROR;
20482: RAISE FND_API.G_EXC_ERROR;
20483: END IF;
20484: end if;
20477: ,p_value3 => p_customers_in(i).CONTACT_ID
20478: );
20479: END IF;
20480: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20481: p_return_status := FND_API.G_RET_STS_ERROR;
20482: RAISE FND_API.G_EXC_ERROR;
20483: END IF;
20484: end if;
20485:
20478: );
20479: END IF;
20480: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20481: p_return_status := FND_API.G_RET_STS_ERROR;
20482: RAISE FND_API.G_EXC_ERROR;
20483: END IF;
20484: end if;
20485:
20486: If p_customers_in(i).PROJECT_CONTACT_TYPE_CODE = 'BILLING' then
20551: END IF;
20552:
20553: END IF;
20554:
20555: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20556: RAISE FND_API.G_EXC_ERROR;
20557:
20558: ELSIF l_err_code < 0
20559: THEN
20552:
20553: END IF;
20554:
20555: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20556: RAISE FND_API.G_EXC_ERROR;
20557:
20558: ELSIF l_err_code < 0
20559: THEN
20560:
20571: ,p_attribute4 => ''
20572: ,p_attribute5 => '');
20573: END IF;
20574:
20575: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20576: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20577: END IF;
20578:
20579: /* Update the project customer information */
20572: ,p_attribute5 => '');
20573: END IF;
20574:
20575: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20576: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20577: END IF;
20578:
20579: /* Update the project customer information */
20580:
20745:
20746:
20747: -- Start of addition for bug 5554475
20748:
20749: if x_return_status <> FND_API.G_RET_STS_SUCCESS then
20750: x_msg_count := FND_MSG_PUB.count_msg;
20751: if x_msg_count = 1 then
20752: PA_INTERFACE_UTILS_PUB.get_messages
20753: (p_encoded => FND_API.G_FALSE,
20749: if x_return_status <> FND_API.G_RET_STS_SUCCESS then
20750: x_msg_count := FND_MSG_PUB.count_msg;
20751: if x_msg_count = 1 then
20752: PA_INTERFACE_UTILS_PUB.get_messages
20753: (p_encoded => FND_API.G_FALSE,
20754: p_msg_index => 1,
20755: p_msg_count => x_msg_count,
20756: p_msg_data => x_msg_data,
20757: p_data => x_msg_data,
20757: p_data => x_msg_data,
20758: p_msg_index_out => l_msg_index_out);
20759:
20760: end if;
20761: If x_return_status = FND_API.G_RET_STS_ERROR THEN
20762: p_project_out.return_status := x_return_status;
20763: RAISE FND_API.G_EXC_ERROR;
20764: else
20765: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20759:
20760: end if;
20761: If x_return_status = FND_API.G_RET_STS_ERROR THEN
20762: p_project_out.return_status := x_return_status;
20763: RAISE FND_API.G_EXC_ERROR;
20764: else
20765: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20766: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20767: END if;
20761: If x_return_status = FND_API.G_RET_STS_ERROR THEN
20762: p_project_out.return_status := x_return_status;
20763: RAISE FND_API.G_EXC_ERROR;
20764: else
20765: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20766: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20767: END if;
20768: end if;
20769:
20762: p_project_out.return_status := x_return_status;
20763: RAISE FND_API.G_EXC_ERROR;
20764: else
20765: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20766: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20767: END if;
20768: end if;
20769:
20770: -- End of addition for bug 5554475
20830: END IF;
20831:
20832: END IF;
20833:
20834: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20835: RAISE FND_API.G_EXC_ERROR;
20836:
20837: ELSIF l_err_code < 0
20838: THEN
20831:
20832: END IF;
20833:
20834: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20835: RAISE FND_API.G_EXC_ERROR;
20836:
20837: ELSIF l_err_code < 0
20838: THEN
20839:
20850: ,p_attribute4 => ''
20851: ,p_attribute5 => '');
20852: END IF;
20853:
20854: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20855: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20856: END IF;
20857:
20858: END if; /* is cur_customer%notfound */
20851: ,p_attribute5 => '');
20852: END IF;
20853:
20854: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20855: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20856: END IF;
20857:
20858: END if; /* is cur_customer%notfound */
20859: i := p_customers_in.next(i);
20887: ,p_attribute4 => ''
20888: ,p_attribute5 => ''); */
20889: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
20890: ,p_msg_name => 'PA_TOT_CUST_BILL_SPLIT_INVLD');
20891: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20892: p_return_status := FND_API.G_RET_STS_ERROR;
20893: RAISE FND_API.G_EXC_ERROR;
20894: END IF;
20895: END IF;
20888: ,p_attribute5 => ''); */
20889: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
20890: ,p_msg_name => 'PA_TOT_CUST_BILL_SPLIT_INVLD');
20891: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20892: p_return_status := FND_API.G_RET_STS_ERROR;
20893: RAISE FND_API.G_EXC_ERROR;
20894: END IF;
20895: END IF;
20896: END IF;
20889: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
20890: ,p_msg_name => 'PA_TOT_CUST_BILL_SPLIT_INVLD');
20891: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
20892: p_return_status := FND_API.G_RET_STS_ERROR;
20893: RAISE FND_API.G_EXC_ERROR;
20894: END IF;
20895: END IF;
20896: END IF;
20897: END IF;
20904: x_msg_data => x_msg_data,
20905: x_return_status => x_return_status
20906: );
20907:
20908: if x_return_status <> FND_API.G_RET_STS_SUCCESS then
20909: x_msg_count := FND_MSG_PUB.count_msg;
20910: if x_msg_count = 1 then
20911: PA_INTERFACE_UTILS_PUB.get_messages
20912: (p_encoded => FND_API.G_FALSE,
20908: if x_return_status <> FND_API.G_RET_STS_SUCCESS then
20909: x_msg_count := FND_MSG_PUB.count_msg;
20910: if x_msg_count = 1 then
20911: PA_INTERFACE_UTILS_PUB.get_messages
20912: (p_encoded => FND_API.G_FALSE,
20913: p_msg_index => 1,
20914: p_msg_count => x_msg_count,
20915: p_msg_data => x_msg_data,
20916: p_data => x_msg_data,
20916: p_data => x_msg_data,
20917: p_msg_index_out => l_msg_index_out);
20918:
20919: end if;
20920: If x_return_status = FND_API.G_RET_STS_ERROR THEN
20921: p_project_out.return_status := x_return_status;
20922: RAISE FND_API.G_EXC_ERROR;
20923: else
20924: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20918:
20919: end if;
20920: If x_return_status = FND_API.G_RET_STS_ERROR THEN
20921: p_project_out.return_status := x_return_status;
20922: RAISE FND_API.G_EXC_ERROR;
20923: else
20924: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20925: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20926: END if;
20920: If x_return_status = FND_API.G_RET_STS_ERROR THEN
20921: p_project_out.return_status := x_return_status;
20922: RAISE FND_API.G_EXC_ERROR;
20923: else
20924: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20925: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20926: END if;
20927: end if;
20928:
20921: p_project_out.return_status := x_return_status;
20922: RAISE FND_API.G_EXC_ERROR;
20923: else
20924: p_project_out.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
20925: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
20926: END if;
20927: end if;
20928:
20929: /* End of changes by aditi for tracking */
21160: THEN
21161: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
21162: ,p_msg_name => 'PA_TASK_FUNDING_EXIST'
21163: );
21164: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
21165: RAISE FND_API.G_EXC_ERROR;
21166:
21167: END IF;
21168: --Sunkalya federal. Bug#5511353
21161: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
21162: ,p_msg_name => 'PA_TASK_FUNDING_EXIST'
21163: );
21164: p_project_out.return_status := FND_API.G_RET_STS_ERROR;
21165: RAISE FND_API.G_EXC_ERROR;
21166:
21167: END IF;
21168: --Sunkalya federal. Bug#5511353
21169:
21218:
21219: -- If verify not ok then raise error
21220: IF l_verify_ok_flag = 'N' THEN
21221: p_project_out.return_status := l_return_status;
21222: RAISE FND_API.G_EXC_ERROR;
21223: END IF;
21224: l_statement := 'UPDATE PA_PROJECTS SET ';
21225: -- special case for update to and from 'CLOSED'
21226: IF l_closing_project = 'Y' THEN
21288: ,x_msg_count => l_msg_count
21289: ,x_msg_data => l_msg_data
21290: ,x_return_status => l_return_status
21291: );
21292: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
21293: RAISE FND_API.G_EXC_ERROR;
21294: END IF;
21295: END IF;
21296:
21289: ,x_msg_data => l_msg_data
21290: ,x_return_status => l_return_status
21291: );
21292: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
21293: RAISE FND_API.G_EXC_ERROR;
21294: END IF;
21295: END IF;
21296:
21297: END IF;
21306: p_err_code => l_err_code
21307: );
21308: IF l_err_code <> 0 THEN
21309: p_project_out.return_status := l_return_status;
21310: RAISE FND_API.G_EXC_ERROR;
21311: END IF;
21312: END IF;
21313: END IF;
21314:
21327: pa_proj_task_struc_pub.delete_intra_dependency(
21328: p_element_version_id => l_update_structure_version_id
21329: ,x_return_status => l_return_status );
21330:
21331: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21332: THEN
21333: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21334: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21335: THEN
21329: ,x_return_status => l_return_status );
21330:
21331: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21332: THEN
21333: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21334: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21335: THEN
21336: RAISE FND_API.G_EXC_ERROR;
21337: END IF;
21330:
21331: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21332: THEN
21333: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21334: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21335: THEN
21336: RAISE FND_API.G_EXC_ERROR;
21337: END IF;
21338: END IF;
21332: THEN
21333: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21334: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21335: THEN
21336: RAISE FND_API.G_EXC_ERROR;
21337: END IF;
21338: END IF;
21339:
21340: l_d_loop_count := p_tasks_in.first;
21358: ,p_structure_type => l_structure_type
21359: ,p_out_task_id => l_d_task_id
21360: ,p_return_status => l_return_status);
21361:
21362: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21363: THEN
21364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21365: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21366: THEN
21360: ,p_return_status => l_return_status);
21361:
21362: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21363: THEN
21364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21365: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21366: THEN
21367: RAISE FND_API.G_EXC_ERROR;
21368: END IF;
21361:
21362: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21363: THEN
21364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21365: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21366: THEN
21367: RAISE FND_API.G_EXC_ERROR;
21368: END IF;
21369: END IF;
21363: THEN
21364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21365: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21366: THEN
21367: RAISE FND_API.G_EXC_ERROR;
21368: END IF;
21369: END IF;
21370: --maansari5/18
21371:
21379: ,x_msg_count => l_msg_count
21380: ,x_msg_data => l_msg_data);
21381:
21382: --maansari5/18
21383: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21384: THEN
21385: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21386: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21387: THEN
21381:
21382: --maansari5/18
21383: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21384: THEN
21385: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21386: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21387: THEN
21388: RAISE FND_API.G_EXC_ERROR;
21389: END IF;
21382: --maansari5/18
21383: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21384: THEN
21385: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21386: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21387: THEN
21388: RAISE FND_API.G_EXC_ERROR;
21389: END IF;
21390: --maansari5/18
21384: THEN
21385: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21386: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21387: THEN
21388: RAISE FND_API.G_EXC_ERROR;
21389: END IF;
21390: --maansari5/18
21391:
21392: l_d_task_id := null;
21427: x_msg_count => l_msg_count,
21428: x_msg_data => l_msg_data,
21429: x_return_status => l_return_status );
21430:
21431: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21432: THEN
21433: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21434: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21435: THEN
21429: x_return_status => l_return_status );
21430:
21431: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21432: THEN
21433: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21434: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21435: THEN
21436: RAISE FND_API.G_EXC_ERROR;
21437: END IF;
21430:
21431: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21432: THEN
21433: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21434: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21435: THEN
21436: RAISE FND_API.G_EXC_ERROR;
21437: END IF;
21438: END IF;
21432: THEN
21433: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21434: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21435: THEN
21436: RAISE FND_API.G_EXC_ERROR;
21437: END IF;
21438: END IF;
21439: --
21440:
21454: THEN
21455: pa_project_pub.update_mapping
21456: (
21457: p_api_version => p_api_version_number
21458: , p_init_msg_list => FND_API.G_FALSE
21459: , p_commit => FND_API.G_FALSE--bug 3766967
21460: , p_debug_mode => FND_API.G_TRUE
21461: , p_project_id => l_project_id
21462: , p_proj_source_reference => null
21455: pa_project_pub.update_mapping
21456: (
21457: p_api_version => p_api_version_number
21458: , p_init_msg_list => FND_API.G_FALSE
21459: , p_commit => FND_API.G_FALSE--bug 3766967
21460: , p_debug_mode => FND_API.G_TRUE
21461: , p_project_id => l_project_id
21462: , p_proj_source_reference => null
21463: , p_wkp_structure_version_id => p_structure_in.structure_version_id
21456: (
21457: p_api_version => p_api_version_number
21458: , p_init_msg_list => FND_API.G_FALSE
21459: , p_commit => FND_API.G_FALSE--bug 3766967
21460: , p_debug_mode => FND_API.G_TRUE
21461: , p_project_id => l_project_id
21462: , p_proj_source_reference => null
21463: , p_wkp_structure_version_id => p_structure_in.structure_version_id
21464: --, p_wkp_task_id => l_tasks_out(i).pa_task_id--Since the tasks are already created , this will have task Ids
21468: , x_return_status => l_return_status
21469: , x_msg_count => l_msg_count
21470: , x_msg_data => l_msg_data
21471: );
21472: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21473: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21474: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21475: RAISE FND_API.G_EXC_ERROR;
21476: END IF;
21469: , x_msg_count => l_msg_count
21470: , x_msg_data => l_msg_data
21471: );
21472: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21473: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21474: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21475: RAISE FND_API.G_EXC_ERROR;
21476: END IF;
21477: END IF;
21470: , x_msg_data => l_msg_data
21471: );
21472: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21473: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21474: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21475: RAISE FND_API.G_EXC_ERROR;
21476: END IF;
21477: END IF;
21478: l_d_loop_count := p_tasks_in.next(l_d_loop_count);
21471: );
21472: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21473: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21474: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21475: RAISE FND_API.G_EXC_ERROR;
21476: END IF;
21477: END IF;
21478: l_d_loop_count := p_tasks_in.next(l_d_loop_count);
21479: END LOOP;
21483: THEN
21484: i := p_tasks_in.first();
21485: WHILE i IS NOT NULL LOOP
21486: --Initialize the return status to success
21487: p_tasks_out(i).return_status := FND_API.G_RET_STS_SUCCESS;
21488: l_task_in_rec := p_tasks_in(i);
21489: --No Function Security Check required
21490: --Get record version number from pa_tasks table
21491: OPEN c_get_pa_record_version_number ( p_tasks_out(i).task_version_id , l_project_id);
21501: THEN
21502: PA_TASKS_MAINT_PUB.SET_FINANCIAL_FLAG_WRAPPER
21503: (
21504: p_api_version => p_api_version_number
21505: , p_init_msg_list => FND_API.G_FALSE
21506: , p_commit => FND_API.G_FALSE--bug 3766967
21507: , p_calling_module => 'AMG'
21508: , p_debug_mode => FND_API.G_TRUE
21509: , p_task_version_id => p_tasks_out(i).task_version_id
21502: PA_TASKS_MAINT_PUB.SET_FINANCIAL_FLAG_WRAPPER
21503: (
21504: p_api_version => p_api_version_number
21505: , p_init_msg_list => FND_API.G_FALSE
21506: , p_commit => FND_API.G_FALSE--bug 3766967
21507: , p_calling_module => 'AMG'
21508: , p_debug_mode => FND_API.G_TRUE
21509: , p_task_version_id => p_tasks_out(i).task_version_id
21510: , p_checked_flag => l_task_in_rec.financial_task_flag
21504: p_api_version => p_api_version_number
21505: , p_init_msg_list => FND_API.G_FALSE
21506: , p_commit => FND_API.G_FALSE--bug 3766967
21507: , p_calling_module => 'AMG'
21508: , p_debug_mode => FND_API.G_TRUE
21509: , p_task_version_id => p_tasks_out(i).task_version_id
21510: , p_checked_flag => l_task_in_rec.financial_task_flag
21511: , p_record_version_number => l_patask_record_version_number
21512: , p_project_id => l_project_id -- 4969319 p_project_out.pa_project_id
21517: );
21518: -- Populating the appropriate values in task out records
21519: p_tasks_out(i).return_status := l_return_status;
21520:
21521: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21522: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21523: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21524: RAISE FND_API.G_EXC_ERROR;
21525: END IF;
21518: -- Populating the appropriate values in task out records
21519: p_tasks_out(i).return_status := l_return_status;
21520:
21521: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21522: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21523: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21524: RAISE FND_API.G_EXC_ERROR;
21525: END IF;
21526: END IF;
21519: p_tasks_out(i).return_status := l_return_status;
21520:
21521: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21522: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21523: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21524: RAISE FND_API.G_EXC_ERROR;
21525: END IF;
21526: END IF;
21527: i := p_tasks_in.next(i);
21520:
21521: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21522: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21523: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21524: RAISE FND_API.G_EXC_ERROR;
21525: END IF;
21526: END IF;
21527: i := p_tasks_in.next(i);
21528: END LOOP;
21549: --initialize return status to success
21550: i:=1;
21551: -- 3435905 changed from p_deliverable_out to G_deliverables_out_tbl
21552:
21553: G_deliverables_out_tbl(i).return_status := FND_API.G_RET_STS_SUCCESS;
21554:
21555: -- Function Security Check
21556: PA_PM_FUNCTION_SECURITY_PUB.check_function_security
21557: (p_api_version_number => p_api_version_number,
21562: p_return_status => l_return_status,
21563: p_function_allowed => l_function_allowed);
21564:
21565:
21566: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21567: THEN
21568: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21569: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21570: THEN
21564:
21565:
21566: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21567: THEN
21568: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21569: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21570: THEN
21571: RAISE FND_API.G_EXC_ERROR;
21572: END IF;
21565:
21566: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21567: THEN
21568: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21569: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21570: THEN
21571: RAISE FND_API.G_EXC_ERROR;
21572: END IF;
21573:
21567: THEN
21568: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21569: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
21570: THEN
21571: RAISE FND_API.G_EXC_ERROR;
21572: END IF;
21573:
21574: IF l_function_allowed = 'N' THEN
21575: pa_interface_utils_pub.map_new_amg_msg
21582: ,p_attribute3 => ''
21583: ,p_attribute4 => ''
21584: ,p_attribute5 => '');
21585:
21586: p_return_status := FND_API.G_RET_STS_ERROR;
21587: RAISE FND_API.G_EXC_ERROR;
21588: END IF;
21589: */
21590: -- 3773373 changed local variable usage from i_dlvr to i
21583: ,p_attribute4 => ''
21584: ,p_attribute5 => '');
21585:
21586: p_return_status := FND_API.G_RET_STS_ERROR;
21587: RAISE FND_API.G_EXC_ERROR;
21588: END IF;
21589: */
21590: -- 3773373 changed local variable usage from i_dlvr to i
21591: -- if i is not null, set return status to success
21592: i := p_deliverables_in.first();
21593:
21594: IF i IS NOT NULL THEN
21595: -- 3435905 changed from p_deliverable_out to G_deliverables_out_tbl
21596: G_deliverables_out_tbl(i).return_status := FND_API.G_RET_STS_SUCCESS;
21597: END IF;
21598:
21599: WHILE i IS NOT NULL LOOP
21600:
21611: , p_out_deliverable_id => l_deliverable_id
21612: , p_return_status => x_return_status
21613: );
21614:
21615: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21616: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21617: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
21618: RAISE FND_API.G_EXC_ERROR;
21619: END IF;
21612: , p_return_status => x_return_status
21613: );
21614:
21615: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21616: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21617: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
21618: RAISE FND_API.G_EXC_ERROR;
21619: END IF;
21620:
21613: );
21614:
21615: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21616: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21617: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
21618: RAISE FND_API.G_EXC_ERROR;
21619: END IF;
21620:
21621: END IF;
21614:
21615: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21616: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21617: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
21618: RAISE FND_API.G_EXC_ERROR;
21619: END IF;
21620:
21621: END IF;
21622:
21639: , p_project_id => l_project_id
21640: , x_unique_flag => l_unique_flag
21641: , x_return_status => x_return_status );
21642:
21643: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21644: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21645: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
21646: RAISE FND_API.G_EXC_ERROR;
21647: END IF;
21640: , x_unique_flag => l_unique_flag
21641: , x_return_status => x_return_status );
21642:
21643: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21644: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21645: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
21646: RAISE FND_API.G_EXC_ERROR;
21647: END IF;
21648:
21641: , x_return_status => x_return_status );
21642:
21643: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21644: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21645: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
21646: RAISE FND_API.G_EXC_ERROR;
21647: END IF;
21648:
21649: IF ( l_unique_flag = 'N' )THEN
21642:
21643: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21644: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21645: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
21646: RAISE FND_API.G_EXC_ERROR;
21647: END IF;
21648:
21649: IF ( l_unique_flag = 'N' )THEN
21650: -- call Update_deliverables
21663: (
21664: p_api_version => p_api_version_number
21665: , p_init_msg_list => p_init_msg_list
21666: -- 3735792, passing p_commit as false to next level api calls
21667: , p_commit => FND_API.G_FALSE
21668: , p_debug_mode => FND_API.G_TRUE
21669: , x_return_status => l_return_status
21670: , p_deliverable_name => p_deliverables_in(i).deliverable_name
21671: , p_deliverable_short_name => p_deliverables_in(i).deliverable_short_name
21664: p_api_version => p_api_version_number
21665: , p_init_msg_list => p_init_msg_list
21666: -- 3735792, passing p_commit as false to next level api calls
21667: , p_commit => FND_API.G_FALSE
21668: , p_debug_mode => FND_API.G_TRUE
21669: , x_return_status => l_return_status
21670: , p_deliverable_name => p_deliverables_in(i).deliverable_name
21671: , p_deliverable_short_name => p_deliverables_in(i).deliverable_short_name
21672: , p_deliverable_type_id => p_deliverables_in(i).deliverable_type_id
21708: (
21709: p_api_version => p_api_version_number
21710: , p_init_msg_list => p_init_msg_list
21711: -- 3735792, passing p_commit as false to next level api calls
21712: , p_commit => FND_API.G_FALSE
21713: , p_debug_mode => FND_API.G_TRUE
21714: , x_return_status => l_return_status
21715: , p_deliverable_name => p_deliverables_in(i).deliverable_name
21716: , p_deliverable_short_name => p_deliverables_in(i).deliverable_short_name
21709: p_api_version => p_api_version_number
21710: , p_init_msg_list => p_init_msg_list
21711: -- 3735792, passing p_commit as false to next level api calls
21712: , p_commit => FND_API.G_FALSE
21713: , p_debug_mode => FND_API.G_TRUE
21714: , x_return_status => l_return_status
21715: , p_deliverable_name => p_deliverables_in(i).deliverable_name
21716: , p_deliverable_short_name => p_deliverables_in(i).deliverable_short_name
21717: , p_deliverable_type_id => p_deliverables_in(i).deliverable_type_id
21759:
21760: G_deliverables_out_tbl(i).return_status := l_return_status;
21761: G_deliverables_out_tbl(i).deliverable_id := l_deliverable_id;
21762:
21763: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21764: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21765: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21766: RAISE FND_API.G_EXC_ERROR;
21767: END IF;
21760: G_deliverables_out_tbl(i).return_status := l_return_status;
21761: G_deliverables_out_tbl(i).deliverable_id := l_deliverable_id;
21762:
21763: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21764: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21765: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21766: RAISE FND_API.G_EXC_ERROR;
21767: END IF;
21768:
21761: G_deliverables_out_tbl(i).deliverable_id := l_deliverable_id;
21762:
21763: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21764: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21765: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21766: RAISE FND_API.G_EXC_ERROR;
21767: END IF;
21768:
21769: -- 3773373 changed local variable usage from i_dlvr to i
21762:
21763: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
21764: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21765: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
21766: RAISE FND_API.G_EXC_ERROR;
21767: END IF;
21768:
21769: -- 3773373 changed local variable usage from i_dlvr to i
21770: i := p_deliverables_in.next(i);
21804: 'l_x_return_status='||l_x_return_status;
21805: pa_debug.write(l_module_name,pa_debug.g_err_stage,3);
21806: END IF;
21807:
21808: IF l_x_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21809: THEN
21810: p_project_out.return_status := l_x_return_status;
21811: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21812:
21807:
21808: IF l_x_return_status = FND_API.G_RET_STS_UNEXP_ERROR
21809: THEN
21810: p_project_out.return_status := l_x_return_status;
21811: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21812:
21813: ELSIF l_x_return_status = FND_API.G_RET_STS_ERROR
21814: THEN
21815: p_project_out.return_status := l_x_return_status;
21809: THEN
21810: p_project_out.return_status := l_x_return_status;
21811: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
21812:
21813: ELSIF l_x_return_status = FND_API.G_RET_STS_ERROR
21814: THEN
21815: p_project_out.return_status := l_x_return_status;
21816: RAISE FND_API.G_EXC_ERROR;
21817: END IF;
21812:
21813: ELSIF l_x_return_status = FND_API.G_RET_STS_ERROR
21814: THEN
21815: p_project_out.return_status := l_x_return_status;
21816: RAISE FND_API.G_EXC_ERROR;
21817: END IF;
21818:
21819: END IF;
21820:
21821: -- End Bug # 4582750.
21822:
21823:
21824:
21825: IF (FND_API.to_boolean( p_commit )) OR
21826: l_wf_enabled_flag = 'Y'
21827: THEN
21828: COMMIT WORK;
21829: END IF;
21834: end if;
21835:
21836: EXCEPTION
21837:
21838: WHEN FND_API.G_EXC_ERROR THEN
21839: pa_project_check_pvt.G_task_num_updated_index_tbl.delete;
21840: pa_project_check_pvt.G_index_counter := 0;
21841:
21842: p_return_status := FND_API.G_RET_STS_ERROR ;
21838: WHEN FND_API.G_EXC_ERROR THEN
21839: pa_project_check_pvt.G_task_num_updated_index_tbl.delete;
21840: pa_project_check_pvt.G_index_counter := 0;
21841:
21842: p_return_status := FND_API.G_RET_STS_ERROR ;
21843: G_ParChildTsk_chks_deferred := 'N';
21844:
21845: ROLLBACK TO Update_project_pub;
21846:
21859: ,x_return_status => l_x_return_status
21860: ,x_msg_count => l_x_msg_count
21861: ,x_msg_data => l_x_msg_data);
21862:
21863: if (l_x_return_status <> FND_API.G_RET_STS_SUCCESS) then
21864: raise;
21865: end if;
21866:
21867: end if;
21881: ( p_count => p_msg_count ,
21882: p_data => p_msg_data );
21883:
21884:
21885: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
21886: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
21887: pa_project_check_pvt.G_task_num_updated_index_tbl.delete;
21888: pa_project_check_pvt.G_index_counter := 0;
21889: G_ParChildTsk_chks_deferred := 'N';
21882: p_data => p_msg_data );
21883:
21884:
21885: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
21886: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
21887: pa_project_check_pvt.G_task_num_updated_index_tbl.delete;
21888: pa_project_check_pvt.G_index_counter := 0;
21889: G_ParChildTsk_chks_deferred := 'N';
21890: ROLLBACK TO Update_project_pub;
21904: ,x_return_status => l_x_return_status
21905: ,x_msg_count => l_x_msg_count
21906: ,x_msg_data => l_x_msg_data);
21907:
21908: if (l_x_return_status <> FND_API.G_RET_STS_SUCCESS) then
21909: raise;
21910: end if;
21911:
21912: end if;
21928:
21929: WHEN NO_DATA_FOUND THEN
21930: -- code fix for bug 3579257 : Bug 3627124 starts
21931: --dbms_output.put_line ('in no data found');
21932: p_return_status := FND_API.G_RET_STS_ERROR;
21933: ROLLBACK TO update_project_pub;
21934:
21935:
21936: -- Begin Bug # 4582750.
21949: ,x_return_status => l_x_return_status
21950: ,x_msg_count => l_x_msg_count
21951: ,x_msg_data => l_x_msg_data);
21952:
21953: if (l_x_return_status <> FND_API.G_RET_STS_SUCCESS) then
21954: raise;
21955: end if;
21956:
21957: end if;
22001: ,x_return_status => l_x_return_status
22002: ,x_msg_count => l_x_msg_count
22003: ,x_msg_data => l_x_msg_data);
22004:
22005: if (l_x_return_status <> FND_API.G_RET_STS_SUCCESS) then
22006: raise;
22007: end if;
22008:
22009: end if;
22016:
22017: -- 4537865
22018: p_workflow_started := NULL ;
22019:
22020: p_return_status := FND_API.G_RET_STS_ERROR;
22021: --4218977, rtarway, unset this global variable
22022: if (p_pm_product_code <> 'WORKPLAN') then
22023: G_OP_VALIDATE_FLAG := null;
22024: G_TASK_STR_UPDATE_MODE := null;
22056: ,x_return_status => l_x_return_status
22057: ,x_msg_count => l_x_msg_count
22058: ,x_msg_data => l_x_msg_data);
22059:
22060: if (l_x_return_status <> FND_API.G_RET_STS_SUCCESS) then
22061: raise;
22062: end if;
22063:
22064: end if;
22067:
22068: G_ParChildTsk_chks_deferred := 'N';
22069: pa_project_check_pvt.G_task_num_updated_index_tbl.delete;
22070: pa_project_check_pvt.G_index_counter := 0;
22071: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
22072: --4218977, rtarway, unset this global variable
22073: if (p_pm_product_code <> 'WORKPLAN') then
22074: G_OP_VALIDATE_FLAG := null;
22075: end if;
22122: -- 05-APR-2004 Rakesh Raghavan Progress Management Changes. Bug # 3420093.
22123: -- 29-Dec-2005 vkadimes Bug Number 4689326 and 4689888 Changes are tagged with Bug Numbers.
22124: PROCEDURE update_task
22125: ( p_api_version_number IN NUMBER,
22126: p_commit IN VARCHAR2 := FND_API.G_FALSE,
22127: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
22128: p_msg_count OUT NOCOPY NUMBER, /*Added the nocopy check for 4537865 */
22129: p_msg_data OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
22130: p_return_status OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
22123: -- 29-Dec-2005 vkadimes Bug Number 4689326 and 4689888 Changes are tagged with Bug Numbers.
22124: PROCEDURE update_task
22125: ( p_api_version_number IN NUMBER,
22126: p_commit IN VARCHAR2 := FND_API.G_FALSE,
22127: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
22128: p_msg_count OUT NOCOPY NUMBER, /*Added the nocopy check for 4537865 */
22129: p_msg_data OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
22130: p_return_status OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
22131: --Project Structures
22494:
22495: SAVEPOINT update_task_pub;
22496: -- Begin Bug # 4630058.
22497: -- Initialize the message table if requested.
22498: if FND_API.TO_BOOLEAN(p_init_msg_list) then
22499: FND_MSG_PUB.initialize;
22500: end if;
22501: -- End Bug # 4630058.
22502:
22500: end if;
22501: -- End Bug # 4630058.
22502:
22503: -- 4537865 : Initialize return status to success
22504: p_return_status := FND_API.G_RET_STS_SUCCESS;
22505:
22506: --BUG 4218977, we need to initialize this variable,
22507: --keeping in mind that it might be set by update_project
22508: --we can use the parameter p_calling_api,
22520: , p_return_status => l_return_status
22521: );
22522:
22523:
22524: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
22525:
22526: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22527: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
22528: RAISE FND_API.G_EXC_ERROR;
22522:
22523:
22524: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
22525:
22526: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22527: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
22528: RAISE FND_API.G_EXC_ERROR;
22529: END IF;
22530:
22523:
22524: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
22525:
22526: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22527: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
22528: RAISE FND_API.G_EXC_ERROR;
22529: END IF;
22530:
22531: PA_INTERFACE_UTILS_PUB.G_PROJECt_ID := l_project_id; --bug 2471668 ( in the project context )
22524: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
22525:
22526: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22527: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
22528: RAISE FND_API.G_EXC_ERROR;
22529: END IF;
22530:
22531: PA_INTERFACE_UTILS_PUB.G_PROJECt_ID := l_project_id; --bug 2471668 ( in the project context )
22532: --end bug 3880482
22549: p_return_status => l_return_status
22550: );
22551: IF l_return_status <> 'S'
22552: THEN
22553: RAISE FND_API.G_EXC_ERROR;
22554: END IF;
22555:
22556: --bug 2471668.
22557: --We need to call this API here toget the corrct project id. This is also
22583: ,p_attribute3 => ''
22584: ,p_attribute4 => ''
22585: ,p_attribute5 => '');
22586: END IF;
22587: RAISE FND_API.G_EXC_ERROR;
22588: END IF;
22589: END IF ;
22590: -- Bug#3747312
22591:
22729: ,p_attribute3 => ''
22730: ,p_attribute4 => ''
22731: ,p_attribute5 => '');
22732: END IF;
22733: RAISE FND_API.G_EXC_ERROR;
22734: END IF;
22735: --rtarway , 3661788, comment close command
22736: --CLOSE l_task_ref_to_id_csr;
22737: END IF;
22763: ,p_attribute3 => ''
22764: ,p_attribute4 => ''
22765: ,p_attribute5 => '');
22766: END IF;
22767: RAISE FND_API.G_EXC_ERROR;
22768: END IF;
22769:
22770: -- Function Security Check
22771: PA_PM_FUNCTION_SECURITY_PUB.check_function_security
22775: p_msg_count => l_msg_count,
22776: p_msg_data => l_msg_data,
22777: p_return_status => l_return_status,
22778: p_function_allowed => l_function_allowed);
22779: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
22780: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22781: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
22782: RAISE FND_API.G_EXC_ERROR;
22783: END IF;
22776: p_msg_data => l_msg_data,
22777: p_return_status => l_return_status,
22778: p_function_allowed => l_function_allowed);
22779: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
22780: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22781: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
22782: RAISE FND_API.G_EXC_ERROR;
22783: END IF;
22784:
22777: p_return_status => l_return_status,
22778: p_function_allowed => l_function_allowed);
22779: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
22780: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22781: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
22782: RAISE FND_API.G_EXC_ERROR;
22783: END IF;
22784:
22785: IF l_function_allowed = 'N' THEN
22778: p_function_allowed => l_function_allowed);
22779: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
22780: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22781: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
22782: RAISE FND_API.G_EXC_ERROR;
22783: END IF;
22784:
22785: IF l_function_allowed = 'N' THEN
22786: pa_interface_utils_pub.map_new_amg_msg
22792: ,p_attribute2 => ''
22793: ,p_attribute3 => ''
22794: ,p_attribute4 => ''
22795: ,p_attribute5 => '');
22796: RAISE FND_API.G_EXC_ERROR;
22797: END IF;
22798:
22799: l_invoice_method := p_invoice_method;
22800: ELSE
22876: END IF;
22877: -- End of Bug 4689326
22878: END IF;
22879: CLOSE cur_check_proj_cust_exist;
22880: RAISE FND_API.G_EXC_ERROR;
22881: ELSE
22882: CLOSE cur_check_proj_cust_exist;
22883:
22884: -- Function Security Check
22889: p_msg_count => l_msg_count,
22890: p_msg_data => l_msg_data,
22891: p_return_status => l_return_status,
22892: p_function_allowed => l_function_allowed);
22893: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
22894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22895: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
22896: RAISE FND_API.G_EXC_ERROR;
22897: END IF;
22890: p_msg_data => l_msg_data,
22891: p_return_status => l_return_status,
22892: p_function_allowed => l_function_allowed);
22893: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
22894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22895: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
22896: RAISE FND_API.G_EXC_ERROR;
22897: END IF;
22898:
22891: p_return_status => l_return_status,
22892: p_function_allowed => l_function_allowed);
22893: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
22894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22895: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
22896: RAISE FND_API.G_EXC_ERROR;
22897: END IF;
22898:
22899: IF l_function_allowed = 'N' THEN
22892: p_function_allowed => l_function_allowed);
22893: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
22894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
22895: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
22896: RAISE FND_API.G_EXC_ERROR;
22897: END IF;
22898:
22899: IF l_function_allowed = 'N' THEN
22900: pa_interface_utils_pub.map_new_amg_msg
22906: ,p_attribute2 => ''
22907: ,p_attribute3 => ''
22908: ,p_attribute4 => ''
22909: ,p_attribute5 => '');
22910: RAISE FND_API.G_EXC_ERROR;
22911: END IF;
22912:
22913: l_customer_id := p_customer_id;
22914: END IF; --IF cur_check_proj_cust_exist%NOTFOUND
22922: ,p_attribute2 => ''
22923: ,p_attribute3 => ''
22924: ,p_attribute4 => ''
22925: ,p_attribute5 => '');
22926: RAISE FND_API.G_EXC_ERROR;
22927: END IF;-- If condition to check Funding exits for task or not --End of Bug 4689888
22928: ELSE --IF p_customer_id IS NULL
22929: IF p_customer_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
22930: l_customer_id:=NULL; -- NULL is passed for customer_id so that in Update_one_task it will not be Defaulted.
22940: ,p_attribute2 => ''
22941: ,p_attribute3 => ''
22942: ,p_attribute4 => ''
22943: ,p_attribute5 => '');
22944: RAISE FND_API.G_EXC_ERROR;
22945: END IF;
22946: END IF;
22947: ELSE
22948: --IF 'N' = l_proj_top_task_customer_flag
23152: ----dbms_output.put_line('value OF p_task_number BEFORE UPDATE_ONE_TASK'||p_task_number);
23153:
23154: PA_PROJECT_PVT.Update_One_Task (
23155: p_api_version_number => p_api_version_number,
23156: p_commit => FND_API.G_FALSE,
23157: p_msg_count => p_msg_count,
23158: p_msg_data => p_msg_data,
23159: p_return_status => l_return_status,
23160: p_pm_product_code => p_pm_product_code,
23255: p_out_pm_task_reference => l_out_pm_task_reference );
23256: -- --dbms_output.put_line('after CALLING UPDATE_ONE_TASK');
23257: p_return_status := l_return_status;
23258: -- --dbms_output.put_line('p_return_status'||p_return_status);
23259: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23260: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23261: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23262: RAISE FND_API.G_EXC_ERROR;
23263: END IF;
23256: -- --dbms_output.put_line('after CALLING UPDATE_ONE_TASK');
23257: p_return_status := l_return_status;
23258: -- --dbms_output.put_line('p_return_status'||p_return_status);
23259: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23260: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23261: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23262: RAISE FND_API.G_EXC_ERROR;
23263: END IF;
23264:
23257: p_return_status := l_return_status;
23258: -- --dbms_output.put_line('p_return_status'||p_return_status);
23259: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23260: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23261: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23262: RAISE FND_API.G_EXC_ERROR;
23263: END IF;
23264:
23265: p_out_pa_task_id := l_out_pa_task_id;
23258: -- --dbms_output.put_line('p_return_status'||p_return_status);
23259: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23260: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23261: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23262: RAISE FND_API.G_EXC_ERROR;
23263: END IF;
23264:
23265: p_out_pa_task_id := l_out_pa_task_id;
23266: p_out_pm_task_reference := l_out_pm_task_reference;
23447: ----dbms_output.put_line('return status of update_task_struc '||l_return_status);
23448:
23449: END IF;
23450:
23451: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23452: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23453: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23454: RAISE FND_API.G_EXC_ERROR;
23455: END IF;
23448:
23449: END IF;
23450:
23451: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23452: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23453: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23454: RAISE FND_API.G_EXC_ERROR;
23455: END IF;
23456:
23449: END IF;
23450:
23451: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23452: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23453: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23454: RAISE FND_API.G_EXC_ERROR;
23455: END IF;
23456:
23457: ELSIF l_structure_type = 'WORKPLAN' --p_structure_type
23450:
23451: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23452: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23453: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23454: RAISE FND_API.G_EXC_ERROR;
23455: END IF;
23456:
23457: ELSIF l_structure_type = 'WORKPLAN' --p_structure_type
23458: THEN
23474: -- ,p_attribute3 => ''
23475: -- ,p_attribute4 => ''
23476: -- ,p_attribute5 => '');
23477: -- END IF;
23478: -- RAISE FND_API.G_EXC_ERROR;
23479: -- END IF;
23480:
23481: -- Actions performed using the APIs would be subject to
23482: -- function security. If the responsibility does not allow
23492: p_msg_data => l_msg_data,
23493: p_return_status => l_return_status,
23494: p_function_allowed => l_function_allowed );
23495:
23496: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23497: THEN
23498: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23499:
23500: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23494: p_function_allowed => l_function_allowed );
23495:
23496: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23497: THEN
23498: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23499:
23500: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23501: THEN
23502: RAISE FND_API.G_EXC_ERROR;
23496: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23497: THEN
23498: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23499:
23500: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23501: THEN
23502: RAISE FND_API.G_EXC_ERROR;
23503: END IF;
23504: IF l_function_allowed = 'N' THEN
23498: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23499:
23500: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23501: THEN
23502: RAISE FND_API.G_EXC_ERROR;
23503: END IF;
23504: IF l_function_allowed = 'N' THEN
23505: pa_interface_utils_pub.map_new_amg_msg
23506: ( p_old_message_code => 'PA_FUNCTION_SECURITY_ENFORCED'
23511: ,p_attribute2 => ''
23512: ,p_attribute3 => ''
23513: ,p_attribute4 => ''
23514: ,p_attribute5 => '');
23515: p_return_status := FND_API.G_RET_STS_ERROR;
23516: RAISE FND_API.G_EXC_ERROR;
23517: END IF;
23518:
23519: --Project Structures Integration
23512: ,p_attribute3 => ''
23513: ,p_attribute4 => ''
23514: ,p_attribute5 => '');
23515: p_return_status := FND_API.G_RET_STS_ERROR;
23516: RAISE FND_API.G_EXC_ERROR;
23517: END IF;
23518:
23519: --Project Structures Integration
23520: ----dbms_output.put_line('l_structure_version_id--ut'||l_structure_version_id);
23533: ,p_attribute3 => ''
23534: ,p_attribute4 => ''
23535: ,p_attribute5 => '');
23536: END IF;
23537: RAISE FND_API.G_EXC_ERROR;
23538: p_return_status := FND_API.G_RET_STS_SUCCESS;
23539: END IF;
23540: -- Bug 3106457. This is not null.
23541: --Commented by rtarway for BUG 3919800
23534: ,p_attribute4 => ''
23535: ,p_attribute5 => '');
23536: END IF;
23537: RAISE FND_API.G_EXC_ERROR;
23538: p_return_status := FND_API.G_RET_STS_SUCCESS;
23539: END IF;
23540: -- Bug 3106457. This is not null.
23541: --Commented by rtarway for BUG 3919800
23542: --l_structure_version_id := p_structure_version_id;
23551:
23552: PA_PROJECT_PVT.Update_One_Task
23553: (
23554: p_api_version_number => p_api_version_number,
23555: p_commit => FND_API.G_FALSE,
23556: p_msg_count => p_msg_count,
23557: p_msg_data => p_msg_data,
23558: p_return_status => l_return_status,
23559: p_pm_product_code => p_pm_product_code,
23642: );
23643:
23644: p_return_status := l_return_status;
23645:
23646: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23647: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23648: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23649: RAISE FND_API.G_EXC_ERROR;
23650: END IF;
23643:
23644: p_return_status := l_return_status;
23645:
23646: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23647: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23648: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23649: RAISE FND_API.G_EXC_ERROR;
23650: END IF;
23651: end if;
23644: p_return_status := l_return_status;
23645:
23646: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23647: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23648: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23649: RAISE FND_API.G_EXC_ERROR;
23650: END IF;
23651: end if;
23652: --End Added by rtarway for BUG 4106154
23645:
23646: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23647: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23648: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23649: RAISE FND_API.G_EXC_ERROR;
23650: END IF;
23651: end if;
23652: --End Added by rtarway for BUG 4106154
23653:
23763: ,p_attribute10 => p_attribute10 */
23764:
23765: );
23766:
23767: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23768: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23769: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23770: RAISE FND_API.G_EXC_ERROR;
23771: END IF;
23764:
23765: );
23766:
23767: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23768: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23769: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23770: RAISE FND_API.G_EXC_ERROR;
23771: END IF;
23772: END IF; --<< p_pm_product_code = 'WORKPLAN' >>
23765: );
23766:
23767: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23768: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23769: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23770: RAISE FND_API.G_EXC_ERROR;
23771: END IF;
23772: END IF; --<< p_pm_product_code = 'WORKPLAN' >>
23773:
23766:
23767: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23768: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23769: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23770: RAISE FND_API.G_EXC_ERROR;
23771: END IF;
23772: END IF; --<< p_pm_product_code = 'WORKPLAN' >>
23773:
23774: p_out_pa_task_id := l_pa_task_id;--BUG 3919800, rtarway
23792: pa_project_pub.update_mapping
23793: (
23794: p_api_version => p_api_version_number
23795: , p_init_msg_list => p_init_msg_list
23796: , p_commit => FND_API.G_FALSE--bug 3766967
23797: , p_debug_mode => FND_API.G_TRUE
23798: , p_project_id => l_project_id --Bug#3747312 p_pa_project_id
23799: , p_proj_source_reference => null
23800: , p_wkp_structure_version_id => l_structure_version_id -- BUG 3919800, rtarway
23793: (
23794: p_api_version => p_api_version_number
23795: , p_init_msg_list => p_init_msg_list
23796: , p_commit => FND_API.G_FALSE--bug 3766967
23797: , p_debug_mode => FND_API.G_TRUE
23798: , p_project_id => l_project_id --Bug#3747312 p_pa_project_id
23799: , p_proj_source_reference => null
23800: , p_wkp_structure_version_id => l_structure_version_id -- BUG 3919800, rtarway
23801: , p_wkp_task_id => l_pa_task_id--Since the tasks are already created , this will have task Ids
23805: , x_msg_count => l_msg_count
23806: , x_msg_data => l_msg_data
23807:
23808: );
23809: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23810: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23811: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23812: RAISE FND_API.G_EXC_ERROR;
23813: END IF;
23806: , x_msg_data => l_msg_data
23807:
23808: );
23809: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23810: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23811: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23812: RAISE FND_API.G_EXC_ERROR;
23813: END IF;
23814: END IF;
23807:
23808: );
23809: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23810: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23811: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23812: RAISE FND_API.G_EXC_ERROR;
23813: END IF;
23814: END IF;
23815: END IF;
23808: );
23809: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
23810: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23811: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
23812: RAISE FND_API.G_EXC_ERROR;
23813: END IF;
23814: END IF;
23815: END IF;
23816:
23828: PA_TASKS_MAINT_PUB.SET_FINANCIAL_FLAG_WRAPPER
23829: (
23830: p_api_version => p_api_version_number
23831: , p_init_msg_list => p_init_msg_list
23832: , p_commit => FND_API.G_FALSE--bug 3766967
23833: , p_calling_module => 'AMG'
23834: , p_debug_mode => FND_API.G_TRUE
23835: , p_task_version_id => l_task_version_id
23836: , p_checked_flag => p_financial_task_flag
23830: p_api_version => p_api_version_number
23831: , p_init_msg_list => p_init_msg_list
23832: , p_commit => FND_API.G_FALSE--bug 3766967
23833: , p_calling_module => 'AMG'
23834: , p_debug_mode => FND_API.G_TRUE
23835: , p_task_version_id => l_task_version_id
23836: , p_checked_flag => p_financial_task_flag
23837: , p_record_version_number => l_patask_record_version_number
23838: , p_project_id => l_project_id --Bug#3747312 p_pa_project_id
23840: , x_return_status => l_return_status
23841: , x_msg_count => l_msg_count
23842: , x_msg_data => l_msg_data
23843: );
23844: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23845: THEN
23846: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23847: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23848: THEN
23842: , x_msg_data => l_msg_data
23843: );
23844: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23845: THEN
23846: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23847: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23848: THEN
23849: RAISE FND_API.G_EXC_ERROR;
23850: END IF;
23843: );
23844: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23845: THEN
23846: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23847: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23848: THEN
23849: RAISE FND_API.G_EXC_ERROR;
23850: END IF;
23851: END IF;
23845: THEN
23846: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23847: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23848: THEN
23849: RAISE FND_API.G_EXC_ERROR;
23850: END IF;
23851: END IF;
23852: END IF;
23853: --End Add by rtarway FP.M chages for Set Financial Task
23877: ,x_msg_data => l_msg_data
23878: ,x_return_status => l_return_status
23879: );
23880:
23881: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23882: THEN
23883: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23884:
23885: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23879: );
23880:
23881: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23882: THEN
23883: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23884:
23885: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23886: THEN
23887: RAISE FND_API.G_EXC_ERROR;
23881: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23882: THEN
23883: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23884:
23885: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23886: THEN
23887: RAISE FND_API.G_EXC_ERROR;
23888: END IF;
23889: END IF;
23883: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23884:
23885: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23886: THEN
23887: RAISE FND_API.G_EXC_ERROR;
23888: END IF;
23889: END IF;
23890: ---bug 4199694
23891:
23920: ,x_return_status => l_return_status
23921: ,x_msg_count => l_msg_count
23922: ,x_msg_data => l_msg_data ) ;
23923:
23924: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23925: THEN
23926: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23927: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23928: THEN
23922: ,x_msg_data => l_msg_data ) ;
23923:
23924: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23925: THEN
23926: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23927: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23928: THEN
23929: RAISE FND_API.G_EXC_ERROR;
23930: END IF;
23923:
23924: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23925: THEN
23926: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23927: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23928: THEN
23929: RAISE FND_API.G_EXC_ERROR;
23930: END IF;
23931: ELSIF p_process_mode = 'CONCURRENT' THEN
23925: THEN
23926: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23927: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23928: THEN
23929: RAISE FND_API.G_EXC_ERROR;
23930: END IF;
23931: ELSIF p_process_mode = 'CONCURRENT' THEN
23932:
23933: PA_PROJ_TASK_STRUC_PUB. PROCESS_WBS_UPDATES_CONC_WRP(p_calling_context => 'CONC_UPDATE'
23936: ,x_return_status => l_return_status
23937: ,x_msg_count => l_msg_count
23938: ,x_msg_data => l_msg_data ) ;
23939:
23940: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23941: THEN
23942: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23943: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23944: THEN
23938: ,x_msg_data => l_msg_data ) ;
23939:
23940: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23941: THEN
23942: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23943: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23944: THEN
23945: RAISE FND_API.G_EXC_ERROR;
23946: END IF;
23939:
23940: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23941: THEN
23942: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23943: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23944: THEN
23945: RAISE FND_API.G_EXC_ERROR;
23946: END IF;
23947: END IF ;
23941: THEN
23942: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23943: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23944: THEN
23945: RAISE FND_API.G_EXC_ERROR;
23946: END IF;
23947: END IF ;
23948: END IF ;
23949: END IF ;
23965: PA_PROJECT_PVT.CONVERT_PM_TASKREF_TO_ID_all(p_pa_project_id => l_project_id --Bug#3747312 p_pa_project_id
23966: ,p_pm_task_reference => p_pm_task_reference
23967: ,p_out_task_id => l_d_task_id
23968: ,p_return_status => l_return_status);
23969: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23970: THEN
23971: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23972: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23973: THEN
23967: ,p_out_task_id => l_d_task_id
23968: ,p_return_status => l_return_status);
23969: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23970: THEN
23971: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23972: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23973: THEN
23974: RAISE FND_API.G_EXC_ERROR;
23975: END IF;
23968: ,p_return_status => l_return_status);
23969: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23970: THEN
23971: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23972: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23973: THEN
23974: RAISE FND_API.G_EXC_ERROR;
23975: END IF;
23976:
23970: THEN
23971: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23972: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
23973: THEN
23974: RAISE FND_API.G_EXC_ERROR;
23975: END IF;
23976:
23977: END IF;
23978: /*
23992: ,x_return_status => l_return_status
23993: ,x_msg_count => l_msg_count
23994: ,x_msg_data => l_msg_data);
23995:
23996: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23997: THEN
23998: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23999: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
24000: THEN
23994: ,x_msg_data => l_msg_data);
23995:
23996: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23997: THEN
23998: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23999: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
24000: THEN
24001: RAISE FND_API.G_EXC_ERROR;
24002: END IF;
23995:
23996: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
23997: THEN
23998: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23999: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
24000: THEN
24001: RAISE FND_API.G_EXC_ERROR;
24002: END IF;
24003: l_d_task_id := null;
23997: THEN
23998: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
23999: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
24000: THEN
24001: RAISE FND_API.G_EXC_ERROR;
24002: END IF;
24003: l_d_task_id := null;
24004: END IF;
24005: --bug 4218977, rtarway, unset this variable if not called from update_project
24007: G_OP_VALIDATE_FLAG := null;
24008: end if;
24009: EXCEPTION
24010:
24011: WHEN FND_API.G_EXC_ERROR THEN
24012:
24013: p_return_status := FND_API.G_RET_STS_ERROR ;
24014: --bug 4218977, rtarway, unset this variable if not called from update_project
24015: if p_calling_api <> 'UPDATE_PROJECT' then
24009: EXCEPTION
24010:
24011: WHEN FND_API.G_EXC_ERROR THEN
24012:
24013: p_return_status := FND_API.G_RET_STS_ERROR ;
24014: --bug 4218977, rtarway, unset this variable if not called from update_project
24015: if p_calling_api <> 'UPDATE_PROJECT' then
24016: G_OP_VALIDATE_FLAG := null;
24017: end if;
24025: FND_MSG_PUB.Count_And_Get
24026: ( p_count => p_msg_count ,
24027: p_data => p_msg_data );
24028:
24029: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
24030:
24031: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
24032: ROLLBACK TO Update_Task_pub;
24033: --bug 4218977, rtarway, unset this variable if not called from update_project
24027: p_data => p_msg_data );
24028:
24029: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
24030:
24031: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
24032: ROLLBACK TO Update_Task_pub;
24033: --bug 4218977, rtarway, unset this variable if not called from update_project
24034: if p_calling_api <> 'UPDATE_PROJECT' then
24035: G_OP_VALIDATE_FLAG := null;
24046:
24047: WHEN OTHERS THEN
24048:
24049: ROLLBACK TO Update_Task_pub;
24050: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
24051: --bug 4218977, rtarway, unset this variable if not called from update_project
24052: if p_calling_api <> 'UPDATE_PROJECT' then
24053: G_OP_VALIDATE_FLAG := null;
24054: end if;
24090: --
24091:
24092: PROCEDURE execute_update_project
24093: ( p_api_version_number IN NUMBER
24094: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
24095: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24096: ,p_op_validate_flag IN VARCHAR2 := 'Y'--added by rtarway, bug 4218977
24097: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24098: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24091:
24092: PROCEDURE execute_update_project
24093: ( p_api_version_number IN NUMBER
24094: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
24095: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24096: ,p_op_validate_flag IN VARCHAR2 := 'Y'--added by rtarway, bug 4218977
24097: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24098: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24099: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24110: BEGIN
24111:
24112: SAVEPOINT execute_update_project_pub;
24113:
24114: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
24115: p_api_version_number ,
24116: l_api_name ,
24117: G_PKG_NAME )
24118: THEN
24116: l_api_name ,
24117: G_PKG_NAME )
24118: THEN
24119:
24120: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
24121:
24122: END IF;
24123:
24124: -- Initialize the message table if requested.
24122: END IF;
24123:
24124: -- Initialize the message table if requested.
24125:
24126: IF FND_API.TO_BOOLEAN( p_init_msg_list )
24127: THEN
24128:
24129: FND_MSG_PUB.initialize;
24130:
24129: FND_MSG_PUB.initialize;
24130:
24131: END IF;
24132:
24133: p_return_status := FND_API.G_RET_STS_SUCCESS;
24134:
24135: -- Begin code to fix Bug # 4314797.
24136:
24137: -- In the publish workplan flow, we do not need to update key members so we can clear the global
24149: -- End code to fix Bug # 4314797.
24150:
24151:
24152: Update_Project ( p_api_version_number => p_api_version_number,
24153: p_commit => FND_API.G_FALSE,
24154: p_return_status => l_return_status,
24155: p_msg_count => p_msg_count,
24156: p_msg_data => p_msg_data,
24157: p_workflow_started => p_workflow_started,
24176: ,p_update_mode => p_update_mode --DHI ER bug 4413568
24177: --FP M : deliverables
24178: );
24179:
24180: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
24181: THEN
24182:
24183: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
24184:
24179:
24180: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
24181: THEN
24182:
24183: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
24184:
24185: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
24186: THEN
24187:
24181: THEN
24182:
24183: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
24184:
24185: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
24186: THEN
24187:
24188: RAISE FND_API.G_EXC_ERROR;
24189: END IF;
24184:
24185: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
24186: THEN
24187:
24188: RAISE FND_API.G_EXC_ERROR;
24189: END IF;
24190:
24191:
24192: IF FND_API.to_boolean( p_commit )
24188: RAISE FND_API.G_EXC_ERROR;
24189: END IF;
24190:
24191:
24192: IF FND_API.to_boolean( p_commit )
24193: THEN
24194: COMMIT;
24195: END IF;
24196:
24196:
24197:
24198: EXCEPTION
24199:
24200: WHEN FND_API.G_EXC_ERROR
24201: THEN
24202: ROLLBACK TO execute_update_project_pub;
24203:
24204: p_return_status := FND_API.G_RET_STS_ERROR;
24200: WHEN FND_API.G_EXC_ERROR
24201: THEN
24202: ROLLBACK TO execute_update_project_pub;
24203:
24204: p_return_status := FND_API.G_RET_STS_ERROR;
24205:
24206: -- 4537865
24207: p_workflow_started := NULL ;
24208: -- 4537865
24210: FND_MSG_PUB.Count_And_Get
24211: ( p_count => p_msg_count ,
24212: p_data => p_msg_data );
24213:
24214: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
24215: THEN
24216: ROLLBACK TO execute_update_project_pub;
24217:
24218: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24214: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
24215: THEN
24216: ROLLBACK TO execute_update_project_pub;
24217:
24218: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24219:
24220: -- 4537865
24221: p_workflow_started := NULL ;
24222: -- 4537865
24228: WHEN OTHERS THEN
24229:
24230: ROLLBACK TO execute_update_project_pub;
24231:
24232: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24233:
24234: -- 4537865
24235: p_workflow_started := NULL ;
24236: -- 4537865
24268: --
24269:
24270: PROCEDURE delete_project
24271: ( p_api_version_number IN NUMBER
24272: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
24273: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24274: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24275: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24276: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24269:
24270: PROCEDURE delete_project
24271: ( p_api_version_number IN NUMBER
24272: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
24273: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24274: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24275: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24276: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24277: ,p_pm_product_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
24285:
24286: BEGIN
24287:
24288: -- 4537865 : Initialize Return status to success
24289: p_return_status := FND_API.G_RET_STS_SUCCESS;
24290:
24291: --bug 2471668.
24292: --We need to call this API here toget the corrct project id. This is also
24293: --called from the private API. But I discussed with Sakthi and he is ok to call this
24301: , p_return_status => l_return_status
24302: );
24303:
24304:
24305: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
24306:
24307: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
24308: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
24309: RAISE FND_API.G_EXC_ERROR;
24303:
24304:
24305: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
24306:
24307: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
24308: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
24309: RAISE FND_API.G_EXC_ERROR;
24310: END IF;
24311:
24304:
24305: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
24306:
24307: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
24308: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
24309: RAISE FND_API.G_EXC_ERROR;
24310: END IF;
24311:
24312: PA_INTERFACE_UTILS_PUB.G_PROJECt_ID := l_project_id; --bug 2471668 ( in the project context )
24305: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
24306:
24307: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
24308: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
24309: RAISE FND_API.G_EXC_ERROR;
24310: END IF;
24311:
24312: PA_INTERFACE_UTILS_PUB.G_PROJECt_ID := l_project_id; --bug 2471668 ( in the project context )
24313: --end of bug 2471668
24313: --end of bug 2471668
24314:
24315: pa_project_pvt.delete_project1
24316: (p_api_version_number => p_api_version_number
24317: ,p_commit => FND_API.G_FALSE--bug 3766967
24318: ,p_init_msg_list => p_init_msg_list
24319: ,p_msg_count => p_msg_count
24320: ,p_msg_data => p_msg_data
24321: ,p_return_status => p_return_status
24323: ,p_pm_project_reference => p_pm_project_reference
24324: ,p_pa_project_id => p_pa_project_id);
24325:
24326: EXCEPTION
24327: WHEN FND_API.G_EXC_ERROR
24328: THEN
24329: p_return_status := FND_API.G_RET_STS_ERROR;
24330: p_msg_count := FND_MSG_PUB.count_msg; -- 4537865
24331:
24325:
24326: EXCEPTION
24327: WHEN FND_API.G_EXC_ERROR
24328: THEN
24329: p_return_status := FND_API.G_RET_STS_ERROR;
24330: p_msg_count := FND_MSG_PUB.count_msg; -- 4537865
24331:
24332: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
24333: THEN
24328: THEN
24329: p_return_status := FND_API.G_RET_STS_ERROR;
24330: p_msg_count := FND_MSG_PUB.count_msg; -- 4537865
24331:
24332: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
24333: THEN
24334: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24335: p_msg_count := FND_MSG_PUB.count_msg; -- 4537865
24336:
24330: p_msg_count := FND_MSG_PUB.count_msg; -- 4537865
24331:
24332: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
24333: THEN
24334: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24335: p_msg_count := FND_MSG_PUB.count_msg; -- 4537865
24336:
24337: WHEN OTHERS THEN
24338: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24334: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24335: p_msg_count := FND_MSG_PUB.count_msg; -- 4537865
24336:
24337: WHEN OTHERS THEN
24338: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24339: p_msg_count := FND_MSG_PUB.count_msg; -- 4537865
24340:
24341: END delete_project;
24342:
24356: -- 02-DEC-96 Update lwerker Removed Savepoint and Rollbacks
24357:
24358: PROCEDURE Check_Delete_Task_OK
24359: ( p_api_version_number IN NUMBER
24360: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24361: , p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24362: , p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24363: , p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24364: , p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
24375: l_retrieve varchar2(1) ; -- 4096218 Issues found during Unit Testing
24376: BEGIN
24377:
24378: -- 4537865 : Initialize return status to success
24379: p_return_status := FND_API.G_RET_STS_SUCCESS ;
24380:
24381: --bug 2876703 --check_delete_task_ok
24382: IF p_structure_type = 'WORKPLAN' AND p_project_id IS NOT NULL AND p_project_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
24383: THEN
24397: ,p_attribute3 => ''
24398: ,p_attribute4 => ''
24399: ,p_attribute5 => '');
24400: END IF;
24401: RAISE FND_API.G_EXC_ERROR;
24402: END IF;
24403: END IF;
24404: --bug 2876703
24405: pa_project_check_pvt.Check_Delete_Task_OK_pvt
24419: ,p_delete_task_ok_flag => p_delete_task_ok_flag);
24420:
24421: --bug 2876703 Added ecxeption block to support the above code added for bug 2876703
24422: EXCEPTION
24423: WHEN FND_API.G_EXC_ERROR
24424: THEN
24425: p_return_status := FND_API.G_RET_STS_ERROR;
24426: IF l_retrieve = 'Y' THEN
24427: FND_MSG_PUB.Count_And_Get
24421: --bug 2876703 Added ecxeption block to support the above code added for bug 2876703
24422: EXCEPTION
24423: WHEN FND_API.G_EXC_ERROR
24424: THEN
24425: p_return_status := FND_API.G_RET_STS_ERROR;
24426: IF l_retrieve = 'Y' THEN
24427: FND_MSG_PUB.Count_And_Get
24428: (p_encoded =>'F' , p_count => p_msg_count ,
24429: p_data => p_msg_data );
24432: -- 4537865
24433: p_delete_task_ok_flag := NULL ;
24434: p_msg_count := FND_MSG_PUB.count_msg;
24435:
24436: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
24437: THEN
24438:
24439: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24440:
24435:
24436: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
24437: THEN
24438:
24439: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24440:
24441: -- 4537865
24442: p_delete_task_ok_flag := NULL ;
24443:
24452: (p_count => p_msg_count ,
24453: p_data => p_msg_data );
24454:
24455: WHEN OTHERS THEN
24456: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24457:
24458: -- 4537865
24459: p_delete_task_ok_flag := NULL ;
24460:
24489: --
24490:
24491: PROCEDURE Check_Add_Subtask_OK
24492: (p_api_version_number IN NUMBER
24493: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24494: , p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24495: , p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24496: , p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24497: , p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
24504:
24505: BEGIN
24506:
24507: -- 4537865 : Initialize return status to success
24508: p_return_status := FND_API.G_RET_STS_SUCCESS ;
24509:
24510: pa_project_check_pvt.Check_Add_Subtask_OK_pvt
24511: (p_api_version_number => p_api_version_number
24512: ,p_init_msg_list => p_init_msg_list
24522: -- 4537865
24523: EXCEPTION
24524:
24525: WHEN OTHERS THEN
24526: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24527:
24528: p_add_subtask_ok_flag := NULL ;
24529:
24530: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
24558: -- 02-DEC-96 Update lwerker Removed Savepoint and Rollbacks
24559: --
24560: PROCEDURE Check_Unique_Task_Reference
24561: (p_api_version_number IN NUMBER
24562: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24563: , p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24564: , p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24565: , p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24566: , p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
24572:
24573: BEGIN
24574:
24575: -- 4537865 : Initialize return status to success
24576: p_return_status := FND_API.G_RET_STS_SUCCESS ;
24577:
24578: pa_project_check_pvt.Check_Unique_Task_Ref_pvt
24579: (p_api_version_number => p_api_version_number
24580: ,p_init_msg_list => p_init_msg_list
24589: -- 4537865
24590: EXCEPTION
24591:
24592: WHEN OTHERS THEN
24593: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24594:
24595: p_unique_task_ref_flag := NULL ;
24596:
24597: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
24625: -- Removed Savepoint and Rollbacks
24626: --
24627: PROCEDURE Check_Unique_Project_Reference
24628: (p_api_version_number IN NUMBER
24629: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24630: , p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24631: , p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24632: , p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24633: , p_pm_project_reference IN VARCHAR2
24637:
24638: BEGIN
24639:
24640: -- 4537865 : Initialize return status to success
24641: p_return_status := FND_API.G_RET_STS_SUCCESS ;
24642:
24643: pa_project_check_pvt.Check_Unique_Project_Ref_pvt
24644: (p_api_version_number => p_api_version_number
24645: ,p_init_msg_list => p_init_msg_list
24652: -- 4537865
24653: EXCEPTION
24654:
24655: WHEN OTHERS THEN
24656: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24657:
24658: p_unique_project_ref_flag := NULL ;
24659: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
24660: THEN
24685: --
24686:
24687: PROCEDURE Check_Delete_Project_OK
24688: (p_api_version_number IN NUMBER
24689: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24690: , p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24691: , p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24692: , p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24693: , p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
24698:
24699: BEGIN
24700:
24701: -- 4537865 : Initialize return status to success
24702: p_return_status := FND_API.G_RET_STS_SUCCESS ;
24703:
24704: pa_project_check_pvt.Check_Delete_Project_OK_pvt
24705: (p_api_version_number => p_api_version_number
24706: ,p_init_msg_list => p_init_msg_list
24714: -- 4537865
24715: EXCEPTION
24716:
24717: WHEN OTHERS THEN
24718: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24719:
24720: p_delete_project_ok_flag := NULL ;
24721: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
24722: THEN
24746: -- Removed Savepoint and Rollbacks
24747: --
24748: PROCEDURE Check_Change_Parent_OK
24749: (p_api_version_number IN NUMBER
24750: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24751: , p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24752: , p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24753: , p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24754: , p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
24763:
24764: BEGIN
24765:
24766: -- 4537865 : Initialize return status to success
24767: p_return_status := FND_API.G_RET_STS_SUCCESS ;
24768:
24769: pa_project_check_pvt.Check_Change_Parent_OK_pvt
24770: (p_api_version_number => p_api_version_number
24771: ,p_init_msg_list => p_init_msg_list
24783: -- 4537865
24784: EXCEPTION
24785:
24786: WHEN OTHERS THEN
24787: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24788:
24789: p_change_parent_ok_flag := NULL ;
24790: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
24791: THEN
24816: --
24817:
24818: PROCEDURE Check_Change_Project_Org_OK
24819: (p_api_version_number IN NUMBER
24820: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24821: , p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24822: , p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24823: , p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24824: , p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
24829:
24830: BEGIN
24831:
24832: -- 4537865 : Initialize return status to success
24833: p_return_status := FND_API.G_RET_STS_SUCCESS ;
24834:
24835: pa_project_check_pvt.Check_Change_Proj_Org_OK_pvt
24836: (p_api_version_number => p_api_version_number
24837: ,p_init_msg_list => p_init_msg_list
24845: -- 4537865
24846: EXCEPTION
24847:
24848: WHEN OTHERS THEN
24849: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24850:
24851: p_change_project_org_ok_flag := NULL ;
24852: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
24853: THEN
24878: --
24879:
24880: PROCEDURE Check_Unique_Task_Number
24881: (p_api_version_number IN NUMBER
24882: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24883: , p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24884: , p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24885: , p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24886: , p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
24892:
24893: BEGIN
24894:
24895: -- 4537865 : Initialize return status to success
24896: p_return_status := FND_API.G_RET_STS_SUCCESS ;
24897:
24898: pa_project_check_pvt.Check_Unique_Task_Number_pvt
24899: (p_api_version_number => p_api_version_number
24900: ,p_init_msg_list => p_init_msg_list
24909: -- 4537865
24910: EXCEPTION
24911:
24912: WHEN OTHERS THEN
24913: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24914:
24915: p_unique_task_number_flag := NULL ;
24916: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
24917: THEN
24942: -- Removed Savepoint and Rollbacks
24943:
24944: PROCEDURE Check_Task_Number_Change_Ok
24945: ( p_api_version_number IN NUMBER
24946: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
24947: , p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24948: , p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
24949: , p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
24950: , p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
24957:
24958: BEGIN
24959:
24960: -- 4537865 : Initialize return status to success
24961: p_return_status := FND_API.G_RET_STS_SUCCESS ;
24962:
24963: pa_project_check_pvt.Check_Task_Numb_Change_Ok_Pvt
24964: (p_api_version_number => p_api_version_number
24965: ,p_init_msg_list => p_init_msg_list
24975: -- 4537865
24976: EXCEPTION
24977:
24978: WHEN OTHERS THEN
24979: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
24980:
24981: p_task_number_change_Ok_flag := NULL ;
24982: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
24983: THEN
25003: --
25004: --
25005: PROCEDURE approve_project
25006: ( p_api_version_number IN NUMBER
25007: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
25008: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
25009: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
25010: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
25011: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
25004: --
25005: PROCEDURE approve_project
25006: ( p_api_version_number IN NUMBER
25007: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
25008: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
25009: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
25010: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
25011: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
25012: ,p_pm_product_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
25017:
25018: BEGIN
25019:
25020: -- 4537865 : Initialize return status to success
25021: p_return_status := FND_API.G_RET_STS_SUCCESS ;
25022:
25023: pa_project_pvt.approve_project1
25024: ( p_api_version_number => p_api_version_number
25025: , p_commit => FND_API.G_FALSE--bug 3766967
25021: p_return_status := FND_API.G_RET_STS_SUCCESS ;
25022:
25023: pa_project_pvt.approve_project1
25024: ( p_api_version_number => p_api_version_number
25025: , p_commit => FND_API.G_FALSE--bug 3766967
25026: , p_init_msg_list => p_init_msg_list
25027: , p_msg_count => p_msg_count
25028: , p_msg_data => p_msg_data
25029: , p_return_status => p_return_status
25034: -- 4537865
25035: EXCEPTION
25036:
25037: WHEN OTHERS THEN
25038: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
25039:
25040: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
25041: THEN
25042: FND_MSG_PUB.add_exc_msg
25071:
25072: PROCEDURE load_tasks
25073: (
25074: p_api_version_number IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
25075: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
25076: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
25077: ,p_pm_task_reference IN PA_VC_1000_150
25078: ,p_pa_task_id IN PA_NUM_1000_NUM
25079: ,p_task_name IN PA_VC_1000_2000 := PA_VC_1000_2000(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR) --bug 6193314 .Modified PA_VC_1000_150
25532:
25533: BEGIN
25534:
25535: -- 4537865 : Initialize return status to success
25536: p_return_status := FND_API.G_RET_STS_SUCCESS ;
25537:
25538: -- Transferring all array variable to Global plsql table
25539: if (G_tasks_tbl_count = 0) then
25540: G_tasks_tbl_count := 1;
26953: -- 4537865
26954: EXCEPTION
26955:
26956: WHEN OTHERS THEN
26957: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
26958:
26959: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
26960: THEN
26961: FND_MSG_PUB.add_exc_msg
26967:
26968:
26969: PROCEDURE fetch_tasks
26970: ( p_api_version_number IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
26971: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
26972: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
26973: ,p_task_index IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)
26974: ,p_pa_task_id OUT NOCOPY PA_NUM_1000_NUM /*Added the nocopy check for 4537865 */
26975: ,p_task_version_id OUT NOCOPY PA_NUM_1000_NUM /*Added the nocopy check for 4537865 */
27050: -- 4537865
27051: EXCEPTION
27052:
27053: WHEN OTHERS THEN
27054: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27055:
27056: p_pm_task_reference := NULL ;
27057: p_pa_task_id := NULL ;
27058: p_task_version_id := NULL ;
27079: -- 16-APR-2003 zahid.khan Initial creation
27080: --
27081:
27082: PROCEDURE load_extensible_attribute(P_API_VERSION_NUMBER IN NUMBER := 1.0,
27083: P_INIT_MSG_LIST IN VARCHAR2 := FND_API.G_FALSE,
27084: P_COMMIT IN VARCHAR2 := FND_API.G_FALSE,
27085: X_RETURN_STATUS OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
27086: P_TRANSACTION_TYPE IN VARCHAR2 := PA_PROJECT_PUB.G_SYNC_MODE,
27087: P_TASK_ID IN NUMBER := NULL,
27080: --
27081:
27082: PROCEDURE load_extensible_attribute(P_API_VERSION_NUMBER IN NUMBER := 1.0,
27083: P_INIT_MSG_LIST IN VARCHAR2 := FND_API.G_FALSE,
27084: P_COMMIT IN VARCHAR2 := FND_API.G_FALSE,
27085: X_RETURN_STATUS OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
27086: P_TRANSACTION_TYPE IN VARCHAR2 := PA_PROJECT_PUB.G_SYNC_MODE,
27087: P_TASK_ID IN NUMBER := NULL,
27088: P_TASK_REFERENCE IN VARCHAR2 := NULL,
27107:
27108: SAVEPOINT load_extensible_attribute_pub;
27109:
27110: -- Standard call to check for call compatibility.
27111: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
27112: p_api_version_number ,
27113: l_api_name,
27114: G_PKG_NAME)
27115: THEN
27112: p_api_version_number ,
27113: l_api_name,
27114: G_PKG_NAME)
27115: THEN
27116: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27117: END IF;
27118:
27119: -- Initialize the message table if requested.
27120: IF FND_API.TO_BOOLEAN( p_init_msg_list )
27116: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27117: END IF;
27118:
27119: -- Initialize the message table if requested.
27120: IF FND_API.TO_BOOLEAN( p_init_msg_list )
27121: THEN
27122: FND_MSG_PUB.initialize;
27123: END IF;
27124:
27138: G_ext_attr_in_tbl(G_ext_attr_tbl_count).ATTR_UNIT_OF_MEASURE:= P_ATTR_VALUE_NUM_UOM;
27139: G_ext_attr_in_tbl(G_ext_attr_tbl_count).TRANSACTION_TYPE := P_TRANSACTION_TYPE;
27140:
27141: -- Set API return status to success
27142: x_return_status := FND_API.G_RET_STS_SUCCESS;
27143:
27144: EXCEPTION
27145:
27146: WHEN FND_API.G_EXC_ERROR
27142: x_return_status := FND_API.G_RET_STS_SUCCESS;
27143:
27144: EXCEPTION
27145:
27146: WHEN FND_API.G_EXC_ERROR
27147: THEN
27148: ROLLBACK TO load_extensible_attribute_pub;
27149:
27150: x_return_status := FND_API.G_RET_STS_ERROR;
27146: WHEN FND_API.G_EXC_ERROR
27147: THEN
27148: ROLLBACK TO load_extensible_attribute_pub;
27149:
27150: x_return_status := FND_API.G_RET_STS_ERROR;
27151:
27152: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
27153: THEN
27154: ROLLBACK TO load_extensible_attribute_pub;
27148: ROLLBACK TO load_extensible_attribute_pub;
27149:
27150: x_return_status := FND_API.G_RET_STS_ERROR;
27151:
27152: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
27153: THEN
27154: ROLLBACK TO load_extensible_attribute_pub;
27155:
27156: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27152: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
27153: THEN
27154: ROLLBACK TO load_extensible_attribute_pub;
27155:
27156: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27157:
27158: WHEN OTHERS THEN
27159: ROLLBACK TO load_extensible_attribute_pub;
27160:
27157:
27158: WHEN OTHERS THEN
27159: ROLLBACK TO load_extensible_attribute_pub;
27160:
27161: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27162:
27163: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
27164: THEN
27165: FND_MSG_PUB.add_exc_msg
27182: --History:
27183: -- 22-APR-2003 zahid.khan Initial creation
27184: --
27185: PROCEDURE load_extensible_attributes(P_API_VERSION_NUMBER IN NUMBER,
27186: P_INIT_MSG_LIST IN VARCHAR2 := FND_API.G_FALSE,
27187: P_COMMIT IN VARCHAR2 := FND_API.G_FALSE,
27188: X_RETURN_STATUS OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
27189: P_TRANSACTION_TYPE IN PA_VC_1000_10 := PA_VC_1000_10(PA_PROJECT_PUB.G_SYNC_MODE),
27190: P_TASK_ID IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(NULL),
27183: -- 22-APR-2003 zahid.khan Initial creation
27184: --
27185: PROCEDURE load_extensible_attributes(P_API_VERSION_NUMBER IN NUMBER,
27186: P_INIT_MSG_LIST IN VARCHAR2 := FND_API.G_FALSE,
27187: P_COMMIT IN VARCHAR2 := FND_API.G_FALSE,
27188: X_RETURN_STATUS OUT NOCOPY VARCHAR2, /*Added the nocopy check for 4537865 */
27189: P_TRANSACTION_TYPE IN PA_VC_1000_10 := PA_VC_1000_10(PA_PROJECT_PUB.G_SYNC_MODE),
27190: P_TASK_ID IN PA_NUM_1000_NUM := PA_NUM_1000_NUM(NULL),
27191: P_TASK_REFERENCE IN PA_VC_1000_150 := PA_VC_1000_150(NULL),
27200: P_ATTR_DISP_VALUE IN PA_VC_1000_150 := PA_VC_1000_150(NULL)
27201: )
27202: IS
27203: l_api_name CONSTANT VARCHAR2(30) := 'Load_Extensible_Attributes';
27204: l_return_status VARCHAR(1) := FND_API.G_RET_STS_SUCCESS;
27205:
27206: l_proj_element_id_flag BOOLEAN := (P_TASK_ID.count = 1 and P_TASK_ID(1) = NULL);
27207: l_proj_element_reference_flag BOOLEAN := (P_TASK_REFERENCE.count = 1 and P_TASK_REFERENCE(1) = NULL);
27208: l_row_identifier_flag BOOLEAN := (P_ATTR_GRP_ROW_INDEX.count = 1 and P_ATTR_GRP_ROW_INDEX(1) = NULL);
27229: l_user_row_identifier VARCHAR2(150);
27230: l_transaction_type VARCHAR2(30);
27231: BEGIN
27232: -- initialize message stack, if needed
27233: IF FND_API.to_boolean(p_init_msg_list)
27234: THEN
27235: FND_MSG_PUB.initialize;
27236: END IF;
27237:
27325:
27326: -- call unit api
27327: load_extensible_attribute
27328: ( P_INIT_MSG_LIST => P_INIT_MSG_LIST,
27329: P_COMMIT => FND_API.G_FALSE,--bug 3766967
27330: X_RETURN_STATUS => l_return_status,
27331: P_TASK_ID => l_proj_element_id,
27332: P_TASK_REFERENCE => l_proj_element_reference,
27333: P_ATTR_GRP_ROW_INDEX => P_ATTR_GRP_ROW_INDEX(i),
27341: P_ATTR_VALUE_NUM_UOM => l_attr_unit_of_measure,
27342: P_TRANSACTION_TYPE => l_transaction_type
27343: );
27344:
27345: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
27346: THEN
27347: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27348: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27349: THEN
27343: );
27344:
27345: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
27346: THEN
27347: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27348: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27349: THEN
27350: RAISE FND_API.G_EXC_ERROR;
27351: END IF;
27344:
27345: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
27346: THEN
27347: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27348: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27349: THEN
27350: RAISE FND_API.G_EXC_ERROR;
27351: END IF;
27352:
27346: THEN
27347: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27348: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27349: THEN
27350: RAISE FND_API.G_EXC_ERROR;
27351: END IF;
27352:
27353: END LOOP;
27354:
27351: END IF;
27352:
27353: END LOOP;
27354:
27355: X_RETURN_STATUS := FND_API.G_RET_STS_SUCCESS;
27356: EXCEPTION
27357: WHEN FND_API.G_EXC_ERROR THEN
27358: x_return_status := FND_API.G_RET_STS_ERROR;
27359: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27353: END LOOP;
27354:
27355: X_RETURN_STATUS := FND_API.G_RET_STS_SUCCESS;
27356: EXCEPTION
27357: WHEN FND_API.G_EXC_ERROR THEN
27358: x_return_status := FND_API.G_RET_STS_ERROR;
27359: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27360: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27361: WHEN OTHERS THEN
27354:
27355: X_RETURN_STATUS := FND_API.G_RET_STS_SUCCESS;
27356: EXCEPTION
27357: WHEN FND_API.G_EXC_ERROR THEN
27358: x_return_status := FND_API.G_RET_STS_ERROR;
27359: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27360: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27361: WHEN OTHERS THEN
27362: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27355: X_RETURN_STATUS := FND_API.G_RET_STS_SUCCESS;
27356: EXCEPTION
27357: WHEN FND_API.G_EXC_ERROR THEN
27358: x_return_status := FND_API.G_RET_STS_ERROR;
27359: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27360: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27361: WHEN OTHERS THEN
27362: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27363: IF FND_MSG_PUB.Check_Msg_level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
27356: EXCEPTION
27357: WHEN FND_API.G_EXC_ERROR THEN
27358: x_return_status := FND_API.G_RET_STS_ERROR;
27359: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27360: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27361: WHEN OTHERS THEN
27362: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27363: IF FND_MSG_PUB.Check_Msg_level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
27364: FND_MSG_PUB.Add_Exc_Msg
27358: x_return_status := FND_API.G_RET_STS_ERROR;
27359: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27360: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27361: WHEN OTHERS THEN
27362: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27363: IF FND_MSG_PUB.Check_Msg_level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
27364: FND_MSG_PUB.Add_Exc_Msg
27365: ( G_PKG_NAME
27366: , l_api_name
27373: --Project Structures
27374:
27375: PROCEDURE load_structure
27376: ( p_api_version_number IN NUMBER
27377: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
27378: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
27379: ,p_pa_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
27380: ,p_structure_type IN VARCHAR2 := 'FINANCIAL'
27381: ,p_structure_version_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
27414: SAVEPOINT load_structure_pub;
27415:
27416: -- Standard call to check for call compatibility.
27417:
27418: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
27419: p_api_version_number ,
27420: l_api_name ,
27421: G_PKG_NAME )
27422: THEN
27420: l_api_name ,
27421: G_PKG_NAME )
27422: THEN
27423:
27424: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27425:
27426: END IF;
27427:
27428: -- Initialize the message table if requested.
27426: END IF;
27427:
27428: -- Initialize the message table if requested.
27429:
27430: IF FND_API.TO_BOOLEAN( p_init_msg_list )
27431: THEN
27432:
27433: FND_MSG_PUB.initialize;
27434:
27435: END IF;
27436:
27437: -- Set API return status to success
27438:
27439: p_return_status := FND_API.G_RET_STS_SUCCESS;
27440:
27441: -- Bug 2978114.
27442: -- Validate the structure type. It should be FINANCIAL / WORKPLAN /DELIVERABLE.
27443: -- Throw an error otherwise.
27445: IF nvl(p_structure_type,'-99') not in ('FINANCIAL','WORKPLAN', 'DELIVERABLE') THEN
27446: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
27447: ,p_msg_name => 'PA_PS_INV_STR_TYPE');
27448:
27449: RAISE FND_API.G_EXC_ERROR;
27450: END IF;
27451:
27452: -- assign incoming parameters to the fields of global structure record
27453:
27479: */
27480:
27481: EXCEPTION
27482:
27483: WHEN FND_API.G_EXC_ERROR
27484: THEN
27485: ROLLBACK TO load_structure_pub;
27486:
27487: p_return_status := FND_API.G_RET_STS_ERROR;
27483: WHEN FND_API.G_EXC_ERROR
27484: THEN
27485: ROLLBACK TO load_structure_pub;
27486:
27487: p_return_status := FND_API.G_RET_STS_ERROR;
27488:
27489:
27490: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
27491: THEN
27486:
27487: p_return_status := FND_API.G_RET_STS_ERROR;
27488:
27489:
27490: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
27491: THEN
27492: ROLLBACK TO load_structure_pub;
27493:
27494: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27490: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
27491: THEN
27492: ROLLBACK TO load_structure_pub;
27493:
27494: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27495:
27496:
27497: WHEN OTHERS THEN
27498: ROLLBACK TO load_structure_pub;
27496:
27497: WHEN OTHERS THEN
27498: ROLLBACK TO load_structure_pub;
27499:
27500: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27501:
27502: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
27503: THEN
27504: FND_MSG_PUB.add_exc_msg
27539: SAVEPOINT change_structure_status;
27540:
27541: -- Standard call to check for call compatibility.
27542:
27543: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
27544: p_api_version_number ,
27545: l_api_name ,
27546: G_PKG_NAME )
27547: THEN
27545: l_api_name ,
27546: G_PKG_NAME )
27547: THEN
27548:
27549: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27550:
27551: END IF;
27552:
27553: -- Initialize the message table if requested.
27551: END IF;
27552:
27553: -- Initialize the message table if requested.
27554:
27555: IF FND_API.TO_BOOLEAN( p_init_msg_list )
27556: THEN
27557:
27558: FND_MSG_PUB.initialize;
27559:
27560: END IF;
27561:
27562: -- Set API return status to success
27563:
27564: p_return_status := FND_API.G_RET_STS_SUCCESS;
27565:
27566: -- End fix for Bug # 4314797.
27567:
27568: PA_WORKPLAN_AMG_PUB.CHANGE_STRUCTURE_STATUS
27568: PA_WORKPLAN_AMG_PUB.CHANGE_STRUCTURE_STATUS
27569: (
27570: p_api_version_number => p_api_version_number
27571: ,p_init_msg_list => p_init_msg_list
27572: ,p_commit => FND_API.G_FALSE--bug 3766967
27573: ,p_pa_project_id => p_pa_project_id
27574: ,p_structure_version_id => p_structure_version_id
27575: ,p_status_code => p_status_code
27576: ,p_return_status => p_return_status
27577: ,p_msg_count => p_msg_count
27578: ,p_msg_data => p_msg_data
27579: , p_published_struct_ver_id => p_published_struct_ver_id
27580: );
27581: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27582: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27583: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27584: RAISE FND_API.G_EXC_ERROR;
27585: END IF;
27578: ,p_msg_data => p_msg_data
27579: , p_published_struct_ver_id => p_published_struct_ver_id
27580: );
27581: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27582: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27583: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27584: RAISE FND_API.G_EXC_ERROR;
27585: END IF;
27586:
27579: , p_published_struct_ver_id => p_published_struct_ver_id
27580: );
27581: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27582: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27583: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27584: RAISE FND_API.G_EXC_ERROR;
27585: END IF;
27586:
27587: -- PA L Changes 3010538
27580: );
27581: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27582: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27583: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27584: RAISE FND_API.G_EXC_ERROR;
27585: END IF;
27586:
27587: -- PA L Changes 3010538
27588: --Commenting as for a publishing case we need to always check for update wbs required flag
27619: end if;
27620:
27621:
27622:
27623: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
27624: THEN
27625: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27626: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27627: THEN
27621:
27622:
27623: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
27624: THEN
27625: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27626: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27627: THEN
27628: RAISE FND_API.G_EXC_ERROR;
27629: END IF;
27622:
27623: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
27624: THEN
27625: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27626: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27627: THEN
27628: RAISE FND_API.G_EXC_ERROR;
27629: END IF;
27630: ELSIF p_process_mode = 'CONCURRENT' THEN
27624: THEN
27625: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27626: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27627: THEN
27628: RAISE FND_API.G_EXC_ERROR;
27629: END IF;
27630: ELSIF p_process_mode = 'CONCURRENT' THEN
27631: /* Added if block for bug 5390015 */
27632: IF p_status_code = 'STRUCTURE_PUBLISHED' THEN
27648: ,x_msg_count => l_msg_count
27649: ,x_msg_data => l_msg_data ) ;
27650: END IF;
27651:
27652: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
27653: THEN
27654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27655: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27656: THEN
27650: END IF;
27651:
27652: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
27653: THEN
27654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27655: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27656: THEN
27657: RAISE FND_API.G_EXC_ERROR;
27658: END IF;
27651:
27652: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
27653: THEN
27654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27655: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27656: THEN
27657: RAISE FND_API.G_EXC_ERROR;
27658: END IF;
27659:
27653: THEN
27654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27655: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
27656: THEN
27657: RAISE FND_API.G_EXC_ERROR;
27658: END IF;
27659:
27660:
27661: END IF ;
27664:
27665: -- PA L Changes 3010538
27666:
27667: EXCEPTION
27668: WHEN FND_API.G_EXC_ERROR THEN
27669: p_return_status := FND_API.G_RET_STS_ERROR;
27670:
27671: -- 4537865
27672: p_published_struct_ver_id := NULL ;
27665: -- PA L Changes 3010538
27666:
27667: EXCEPTION
27668: WHEN FND_API.G_EXC_ERROR THEN
27669: p_return_status := FND_API.G_RET_STS_ERROR;
27670:
27671: -- 4537865
27672: p_published_struct_ver_id := NULL ;
27673:
27682: , p_data => p_msg_data);
27683:
27684: -- End fix for Bug # 4314797.
27685:
27686: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27687: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27688:
27689: -- 4537865
27690: p_published_struct_ver_id := NULL ;
27683:
27684: -- End fix for Bug # 4314797.
27685:
27686: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27687: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27688:
27689: -- 4537865
27690: p_published_struct_ver_id := NULL ;
27691:
27702: -- End fix for Bug # 4314797.
27703:
27704:
27705: WHEN OTHERS THEN
27706: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27707:
27708: -- 4537865
27709: p_published_struct_ver_id := NULL ;
27710:
27747: BEGIN
27748:
27749: -- 4537865
27750: --Initialize p_return_status to Success
27751: p_return_status := FND_API.G_RET_STS_SUCCESS ;
27752:
27753: PA_WORKPLAN_AMG_PUB.BASELINE_STRUCTURE
27754: (
27755: p_api_version_number => p_api_version_number
27753: PA_WORKPLAN_AMG_PUB.BASELINE_STRUCTURE
27754: (
27755: p_api_version_number => p_api_version_number
27756: ,p_init_msg_list => p_init_msg_list
27757: ,p_commit => FND_API.G_FALSE--bug 3766967
27758: ,p_pa_project_id => p_pa_project_id
27759: ,p_structure_version_id => p_structure_version_id
27760: ,p_return_status => p_return_status
27761: ,p_msg_count => p_msg_count
27760: ,p_return_status => p_return_status
27761: ,p_msg_count => p_msg_count
27762: ,p_msg_data => p_msg_data
27763: );
27764: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27765: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27766: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27767: RAISE FND_API.G_EXC_ERROR;
27768: END IF;
27761: ,p_msg_count => p_msg_count
27762: ,p_msg_data => p_msg_data
27763: );
27764: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27765: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27766: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27767: RAISE FND_API.G_EXC_ERROR;
27768: END IF;
27769:
27762: ,p_msg_data => p_msg_data
27763: );
27764: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27765: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27766: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27767: RAISE FND_API.G_EXC_ERROR;
27768: END IF;
27769:
27770: EXCEPTION
27763: );
27764: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27765: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27766: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27767: RAISE FND_API.G_EXC_ERROR;
27768: END IF;
27769:
27770: EXCEPTION
27771: WHEN FND_API.G_EXC_ERROR THEN
27767: RAISE FND_API.G_EXC_ERROR;
27768: END IF;
27769:
27770: EXCEPTION
27771: WHEN FND_API.G_EXC_ERROR THEN
27772: p_return_status := FND_API.G_RET_STS_ERROR;
27773:
27774: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27775: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27768: END IF;
27769:
27770: EXCEPTION
27771: WHEN FND_API.G_EXC_ERROR THEN
27772: p_return_status := FND_API.G_RET_STS_ERROR;
27773:
27774: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27775: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27776:
27770: EXCEPTION
27771: WHEN FND_API.G_EXC_ERROR THEN
27772: p_return_status := FND_API.G_RET_STS_ERROR;
27773:
27774: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27775: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27776:
27777: WHEN OTHERS THEN
27778: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27771: WHEN FND_API.G_EXC_ERROR THEN
27772: p_return_status := FND_API.G_RET_STS_ERROR;
27773:
27774: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27775: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27776:
27777: WHEN OTHERS THEN
27778: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27779:
27774: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
27775: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27776:
27777: WHEN OTHERS THEN
27778: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27779:
27780: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
27781: FND_MSG_PUB.add_exc_msg
27782: (p_pkg_name => G_PKG_NAME
27786:
27787:
27788: PROCEDURE delete_structure_version
27789: ( p_api_version_number IN NUMBER := 1.0 -- for bug# 3802759
27790: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
27791: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
27792: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
27793: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
27794: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
27787:
27788: PROCEDURE delete_structure_version
27789: ( p_api_version_number IN NUMBER := 1.0 -- for bug# 3802759
27790: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
27791: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
27792: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
27793: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
27794: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
27795: ,p_structure_version_id IN NUMBER
27804: SAVEPOINT delete_structure_ver_pub;
27805:
27806: -- Standard call to check for call compatibility.
27807:
27808: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
27809: p_api_version_number ,
27810: l_api_name ,
27811: G_PKG_NAME )
27812: THEN
27810: l_api_name ,
27811: G_PKG_NAME )
27812: THEN
27813:
27814: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27815:
27816: END IF;
27817:
27818: -- Initialize the message table if requested.
27816: END IF;
27817:
27818: -- Initialize the message table if requested.
27819:
27820: IF FND_API.TO_BOOLEAN( p_init_msg_list )
27821: THEN
27822:
27823: FND_MSG_PUB.initialize;
27824:
27825: END IF;
27826:
27827: -- Set API return status to success
27828:
27829: p_return_status := FND_API.G_RET_STS_SUCCESS;
27830:
27831: PA_PROJ_TASK_STRUC_PUB.DELETE_STRUCTURE_VERSION(
27832: p_api_version => p_api_version_number
27833: ,p_init_msg_list => p_init_msg_list
27830:
27831: PA_PROJ_TASK_STRUC_PUB.DELETE_STRUCTURE_VERSION(
27832: p_api_version => p_api_version_number
27833: ,p_init_msg_list => p_init_msg_list
27834: ,p_commit => FND_API.G_FALSE--bug 3766967
27835: ,p_calling_module => 'AMG'
27836: ,p_structure_version_id => p_structure_version_id
27837: ,p_record_version_number => p_record_version_number
27838: ,x_return_status => p_return_status
27839: ,x_msg_count => p_msg_count
27840: ,x_msg_data => p_msg_data
27841: );
27842:
27843: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27844: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27845: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27846: RAISE FND_API.G_EXC_ERROR;
27847: END IF;
27840: ,x_msg_data => p_msg_data
27841: );
27842:
27843: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27844: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27845: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27846: RAISE FND_API.G_EXC_ERROR;
27847: END IF;
27848:
27841: );
27842:
27843: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27844: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27845: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27846: RAISE FND_API.G_EXC_ERROR;
27847: END IF;
27848:
27849: EXCEPTION
27842:
27843: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
27844: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27845: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
27846: RAISE FND_API.G_EXC_ERROR;
27847: END IF;
27848:
27849: EXCEPTION
27850:
27847: END IF;
27848:
27849: EXCEPTION
27850:
27851: WHEN FND_API.G_EXC_ERROR
27852: THEN
27853: ROLLBACK TO delete_structure_ver_pub;
27854:
27855: p_return_status := FND_API.G_RET_STS_ERROR;
27851: WHEN FND_API.G_EXC_ERROR
27852: THEN
27853: ROLLBACK TO delete_structure_ver_pub;
27854:
27855: p_return_status := FND_API.G_RET_STS_ERROR;
27856:
27857:
27858: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
27859: THEN
27854:
27855: p_return_status := FND_API.G_RET_STS_ERROR;
27856:
27857:
27858: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
27859: THEN
27860: ROLLBACK TO delete_structure_ver_pub;
27861:
27862: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27858: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
27859: THEN
27860: ROLLBACK TO delete_structure_ver_pub;
27861:
27862: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27863:
27864:
27865: WHEN OTHERS THEN
27866: ROLLBACK TO delete_structure_ver_pub;
27864:
27865: WHEN OTHERS THEN
27866: ROLLBACK TO delete_structure_ver_pub;
27867:
27868: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27869:
27870: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
27871: THEN
27872: FND_MSG_PUB.add_exc_msg
27895: --
27896:
27897: PROCEDURE fetch_structure_version
27898: ( p_api_version_number IN NUMBER
27899: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
27900: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
27901: ,p_structure_type IN VARCHAR2 := 'FINANCIAL'
27902: ,p_pa_structure_version_id OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
27903: ,p_struc_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
27914: SAVEPOINT fetch_struc_pub;
27915:
27916: -- Standard call to check for call compatibility.
27917:
27918: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
27919: p_api_version_number ,
27920: l_api_name ,
27921: G_PKG_NAME )
27922: THEN
27920: l_api_name ,
27921: G_PKG_NAME )
27922: THEN
27923:
27924: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
27925:
27926: END IF;
27927:
27928: -- Initialize the message table if requested.
27926: END IF;
27927:
27928: -- Initialize the message table if requested.
27929:
27930: IF FND_API.TO_BOOLEAN( p_init_msg_list )
27931: THEN
27932:
27933: FND_MSG_PUB.initialize;
27934:
27935: END IF;
27936:
27937: -- Set API return status to success
27938:
27939: p_return_status := FND_API.G_RET_STS_SUCCESS;
27940:
27941:
27942: FOR i in 1..G_Struc_out_tbl.count LOOP
27943:
27957: END IF;
27958: END LOOP;
27959:
27960: EXCEPTION
27961: WHEN FND_API.G_EXC_ERROR
27962: THEN
27963: ROLLBACK TO fetch_struc_pub;
27964:
27965: p_return_status := FND_API.G_RET_STS_ERROR;
27961: WHEN FND_API.G_EXC_ERROR
27962: THEN
27963: ROLLBACK TO fetch_struc_pub;
27964:
27965: p_return_status := FND_API.G_RET_STS_ERROR;
27966:
27967: -- 4537865
27968: p_pa_structure_version_id := NULL ;
27969: p_struc_return_status := NULL ;
27968: p_pa_structure_version_id := NULL ;
27969: p_struc_return_status := NULL ;
27970:
27971:
27972: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
27973: THEN
27974: ROLLBACK TO fetch_struc_pub;
27975:
27976: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27972: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
27973: THEN
27974: ROLLBACK TO fetch_struc_pub;
27975:
27976: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27977:
27978: -- 4537865
27979: p_pa_structure_version_id := NULL ;
27980: p_struc_return_status := NULL ;
27982:
27983: WHEN OTHERS THEN
27984: ROLLBACK TO fetch_struc_pub;
27985:
27986: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
27987:
27988: -- 4537865
27989: p_pa_structure_version_id := NULL ;
27990: p_struc_return_status := NULL ;
28016: --
28017:
28018: PROCEDURE fetch_task_version
28019: ( p_api_version_number IN NUMBER
28020: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
28021: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
28022: ,p_task_index IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
28023: ,p_task_version_id OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
28024: ,p_task_return_status OUT NOCOPY VARCHAR2 ) /*Added the nocopy check for 4537865 */
28035: SAVEPOINT fetch_task_version_pub;
28036:
28037: -- Standard call to check for call compatibility.
28038:
28039: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
28040: p_api_version_number ,
28041: l_api_name ,
28042: G_PKG_NAME )
28043: THEN
28041: l_api_name ,
28042: G_PKG_NAME )
28043: THEN
28044:
28045: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28046:
28047: END IF;
28048:
28049: -- Initialize the message table if requested.
28047: END IF;
28048:
28049: -- Initialize the message table if requested.
28050:
28051: IF FND_API.TO_BOOLEAN( p_init_msg_list )
28052: THEN
28053:
28054: FND_MSG_PUB.initialize;
28055:
28056: END IF;
28057:
28058: -- Set API return status to success
28059:
28060: p_return_status := FND_API.G_RET_STS_SUCCESS;
28061:
28062: -- Check Task index value, when they don't provide an index we will error out
28063: IF p_task_index = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
28064: OR p_task_index IS NULL
28076: ,p_attribute4 => ''
28077: ,p_attribute5 => '');
28078: END IF;
28079:
28080: p_return_status := FND_API.G_RET_STS_ERROR;
28081: RAISE FND_API.G_EXC_ERROR;
28082: ELSE
28083: l_index := p_task_index;
28084: END IF;
28077: ,p_attribute5 => '');
28078: END IF;
28079:
28080: p_return_status := FND_API.G_RET_STS_ERROR;
28081: RAISE FND_API.G_EXC_ERROR;
28082: ELSE
28083: l_index := p_task_index;
28084: END IF;
28085:
28103: END IF;
28104:
28105: EXCEPTION
28106:
28107: WHEN FND_API.G_EXC_ERROR
28108: THEN
28109: ROLLBACK TO fetch_task_version_pub;
28110:
28111: p_return_status := FND_API.G_RET_STS_ERROR;
28107: WHEN FND_API.G_EXC_ERROR
28108: THEN
28109: ROLLBACK TO fetch_task_version_pub;
28110:
28111: p_return_status := FND_API.G_RET_STS_ERROR;
28112:
28113: -- 4537865
28114: p_task_version_id := NULL ;
28115:
28113: -- 4537865
28114: p_task_version_id := NULL ;
28115:
28116:
28117: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
28118: THEN
28119: ROLLBACK TO fetch_task_version_pub;
28120:
28121: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28117: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
28118: THEN
28119: ROLLBACK TO fetch_task_version_pub;
28120:
28121: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28122:
28123: -- 4537865
28124: p_task_version_id := NULL ;
28125:
28126:
28127: WHEN OTHERS THEN
28128: ROLLBACK TO fetch_task_version_pub;
28129:
28130: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28131: -- 4537865
28132: p_task_version_id := NULL ;
28133:
28134: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
28144:
28145: --bug 2765115
28146: PROCEDURE get_task_version
28147: ( p_api_version_number IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
28148: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
28149: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
28150: ,p_pa_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
28151: ,p_pa_task_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
28152: ,p_pa_structure_version_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
28164: SAVEPOINT get_task_version_pub;
28165:
28166: -- Standard call to check for call compatibility.
28167:
28168: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
28169: p_api_version_number ,
28170: l_api_name ,
28171: G_PKG_NAME )
28172: THEN
28170: l_api_name ,
28171: G_PKG_NAME )
28172: THEN
28173:
28174: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28175:
28176: END IF;
28177:
28178: -- Initialize the message table if requested.
28176: END IF;
28177:
28178: -- Initialize the message table if requested.
28179:
28180: IF FND_API.TO_BOOLEAN( p_init_msg_list )
28181: THEN
28182:
28183: FND_MSG_PUB.initialize;
28184:
28184:
28185: END IF;
28186:
28187: -- Set API return status to success
28188: p_return_status := FND_API.G_RET_STS_SUCCESS;
28189:
28190: IF ( p_pa_task_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM OR p_pa_task_id IS NULL ) OR
28191: ( p_pa_project_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM OR p_pa_project_id IS NULL ) OR
28192: ( p_pa_structure_version_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM OR p_pa_structure_version_id IS NULL )
28202:
28203: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
28204: ,p_msg_name => 'PA_PS_INV_STR_VER_ID');
28205: END IF;
28206: p_return_status := FND_API.G_RET_STS_ERROR;
28207: RAISE FND_API.G_EXC_ERROR;
28208: END IF;
28209:
28210: PA_PROJ_TASK_STRUC_PUB.get_task_version_id(
28203: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
28204: ,p_msg_name => 'PA_PS_INV_STR_VER_ID');
28205: END IF;
28206: p_return_status := FND_API.G_RET_STS_ERROR;
28207: RAISE FND_API.G_EXC_ERROR;
28208: END IF;
28209:
28210: PA_PROJ_TASK_STRUC_PUB.get_task_version_id(
28211: p_project_id => p_pa_project_id
28215: );
28216:
28217: IF p_task_version_id IS NULL
28218: THEN
28219: p_return_status := FND_API.G_RET_STS_ERROR;
28220: RAISE FND_API.G_EXC_ERROR;
28221: END IF;
28222:
28223: EXCEPTION
28216:
28217: IF p_task_version_id IS NULL
28218: THEN
28219: p_return_status := FND_API.G_RET_STS_ERROR;
28220: RAISE FND_API.G_EXC_ERROR;
28221: END IF;
28222:
28223: EXCEPTION
28224:
28221: END IF;
28222:
28223: EXCEPTION
28224:
28225: WHEN FND_API.G_EXC_ERROR
28226: THEN
28227: ROLLBACK TO get_task_version_pub;
28228:
28229: p_return_status := FND_API.G_RET_STS_ERROR;
28225: WHEN FND_API.G_EXC_ERROR
28226: THEN
28227: ROLLBACK TO get_task_version_pub;
28228:
28229: p_return_status := FND_API.G_RET_STS_ERROR;
28230:
28231: --4537865
28232: p_task_version_id := NULL ;
28233:
28231: --4537865
28232: p_task_version_id := NULL ;
28233:
28234:
28235: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
28236: THEN
28237: ROLLBACK TO get_task_version_pub;
28238:
28239: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28235: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
28236: THEN
28237: ROLLBACK TO get_task_version_pub;
28238:
28239: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28240: --4537865
28241: p_task_version_id := NULL ;
28242:
28243:
28243:
28244: WHEN OTHERS THEN
28245: ROLLBACK TO get_task_version_pub;
28246:
28247: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28248: --4537865
28249: p_task_version_id := NULL ;
28250: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
28251: THEN
28292: SAVEPOINT get_task_version_pub;
28293:
28294: -- Standard call to check for call compatibility.
28295:
28296: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
28297: p_api_version_number ,
28298: l_api_name ,
28299: G_PKG_NAME )
28300: THEN
28298: l_api_name ,
28299: G_PKG_NAME )
28300: THEN
28301:
28302: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28303:
28304: END IF;
28305:
28306: -- Initialize the message table if requested.
28304: END IF;
28305:
28306: -- Initialize the message table if requested.
28307:
28308: IF FND_API.TO_BOOLEAN( p_init_msg_list )
28309: THEN
28310:
28311: FND_MSG_PUB.initialize;
28312:
28312:
28313: END IF;
28314:
28315: -- Set API return status to success
28316: p_return_status := FND_API.G_RET_STS_SUCCESS;
28317:
28318: IF ( p_pa_project_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM OR p_pa_project_id IS NULL ) OR
28319: ( p_structure_version_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM OR p_structure_version_id IS NULL )
28320: THEN
28325:
28326: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
28327: ,p_msg_name => 'PA_PS_INV_STR_VER_ID');
28328: END IF;
28329: p_return_status := FND_API.G_RET_STS_ERROR;
28330: RAISE FND_API.G_EXC_ERROR;
28331: END IF;
28332:
28333: OPEN l_temp_cursor;
28326: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
28327: ,p_msg_name => 'PA_PS_INV_STR_VER_ID');
28328: END IF;
28329: p_return_status := FND_API.G_RET_STS_ERROR;
28330: RAISE FND_API.G_EXC_ERROR;
28331: END IF;
28332:
28333: OPEN l_temp_cursor;
28334: FETCH l_temp_cursor INTO l_rec_version_number, l_pev_structure_id, l_name;
28341: -- Using the message name PA_PS_INV_STR_VER_ID
28342: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
28343: ,p_msg_name => 'PA_PS_INV_STR_VER_ID');
28344: END IF;
28345: p_return_status := FND_API.G_RET_STS_ERROR;
28346: RAISE FND_API.G_EXC_ERROR;
28347: END IF;
28348: CLOSE l_temp_cursor;
28349:
28342: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
28343: ,p_msg_name => 'PA_PS_INV_STR_VER_ID');
28344: END IF;
28345: p_return_status := FND_API.G_RET_STS_ERROR;
28346: RAISE FND_API.G_EXC_ERROR;
28347: END IF;
28348: CLOSE l_temp_cursor;
28349:
28350: PA_PROJECT_STRUCTURE_PVT1.update_structure_version_attr
28349:
28350: PA_PROJECT_STRUCTURE_PVT1.update_structure_version_attr
28351: (p_api_version => p_api_version_number
28352: ,p_init_msg_list => p_init_msg_list
28353: ,p_commit => FND_API.G_FALSE--bug 3766967
28354: ,p_pev_structure_id => l_pev_structure_id
28355: ,p_structure_version_name => l_name
28356: ,p_record_version_number => l_rec_version_number
28357: ,p_current_working_ver_flag => 'Y'
28359: ,x_msg_count => p_msg_count
28360: ,x_msg_data => p_msg_data
28361: );
28362:
28363: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
28364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28365: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
28366: RAISE FND_API.G_EXC_ERROR;
28367: END IF;
28360: ,x_msg_data => p_msg_data
28361: );
28362:
28363: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
28364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28365: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
28366: RAISE FND_API.G_EXC_ERROR;
28367: END IF;
28368:
28361: );
28362:
28363: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
28364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28365: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
28366: RAISE FND_API.G_EXC_ERROR;
28367: END IF;
28368:
28369: EXCEPTION
28362:
28363: IF (p_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
28364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28365: ELSIF (p_return_status = FND_API.G_RET_STS_ERROR) THEN
28366: RAISE FND_API.G_EXC_ERROR;
28367: END IF;
28368:
28369: EXCEPTION
28370:
28367: END IF;
28368:
28369: EXCEPTION
28370:
28371: WHEN FND_API.G_EXC_ERROR
28372: THEN
28373: ROLLBACK TO get_task_version_pub;
28374:
28375: p_return_status := FND_API.G_RET_STS_ERROR;
28371: WHEN FND_API.G_EXC_ERROR
28372: THEN
28373: ROLLBACK TO get_task_version_pub;
28374:
28375: p_return_status := FND_API.G_RET_STS_ERROR;
28376:
28377:
28378: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
28379: THEN
28374:
28375: p_return_status := FND_API.G_RET_STS_ERROR;
28376:
28377:
28378: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
28379: THEN
28380: ROLLBACK TO get_task_version_pub;
28381:
28382: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28378: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
28379: THEN
28380: ROLLBACK TO get_task_version_pub;
28381:
28382: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28383:
28384:
28385: WHEN OTHERS THEN
28386: ROLLBACK TO get_task_version_pub;
28384:
28385: WHEN OTHERS THEN
28386: ROLLBACK TO get_task_version_pub;
28387:
28388: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28389: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
28390: THEN
28391: FND_MSG_PUB.add_exc_msg
28392: ( p_pkg_name => G_PKG_NAME
28415: -- 02-APR-2004 Rakesh Raghavan Created
28416:
28417: PROCEDURE apply_lp_prog_on_cwv(
28418: p_api_version IN NUMBER :=1.0
28419: ,p_init_msg_list IN VARCHAR2 :=FND_API.G_TRUE
28420: ,p_commit IN VARCHAR2 :=FND_API.G_FALSE
28421: ,p_pa_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
28422: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
28423: ,p_working_str_version_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
28416:
28417: PROCEDURE apply_lp_prog_on_cwv(
28418: p_api_version IN NUMBER :=1.0
28419: ,p_init_msg_list IN VARCHAR2 :=FND_API.G_TRUE
28420: ,p_commit IN VARCHAR2 :=FND_API.G_FALSE
28421: ,p_pa_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
28422: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
28423: ,p_working_str_version_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
28424: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
28449: l_debug_mode := NVL(FND_PROFILE.value('PA_DEBUG_MODE'),'N');
28450:
28451: -- Standard call to check for call compatibility.
28452:
28453: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version, p_api_version, l_api_name, g_pkg_name) then
28454:
28455: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28456:
28457: END IF;
28451: -- Standard call to check for call compatibility.
28452:
28453: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version, p_api_version, l_api_name, g_pkg_name) then
28454:
28455: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28456:
28457: END IF;
28458:
28459: -- Initialize the message table if requested.
28457: END IF;
28458:
28459: -- Initialize the message table if requested.
28460:
28461: IF FND_API.TO_BOOLEAN(nvl(p_init_msg_list,FND_API.G_FALSE)) THEN
28462:
28463: FND_MSG_PUB.initialize;
28464:
28465: END IF;
28465: END IF;
28466:
28467: -- Set API return status to success.
28468:
28469: p_return_status := FND_API.G_RET_STS_SUCCESS;
28470:
28471: /* Checking function security. */
28472:
28473: -- Actions performed using the APIs would be subject to
28485: p_msg_data => l_msg_data,
28486: p_return_status => l_return_status,
28487: p_function_allowed => l_function_allowed );
28488:
28489: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
28490: THEN
28491: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28492:
28493: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
28487: p_function_allowed => l_function_allowed );
28488:
28489: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
28490: THEN
28491: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28492:
28493: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
28494: THEN
28495: RAISE FND_API.G_EXC_ERROR;
28489: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
28490: THEN
28491: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28492:
28493: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
28494: THEN
28495: RAISE FND_API.G_EXC_ERROR;
28496: END IF;
28497: IF l_function_allowed = 'N' THEN
28491: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28492:
28493: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
28494: THEN
28495: RAISE FND_API.G_EXC_ERROR;
28496: END IF;
28497: IF l_function_allowed = 'N' THEN
28498: pa_interface_utils_pub.map_new_amg_msg
28499: ( p_old_message_code => 'PA_FUNCTION_SECURITY_ENFORCED'
28504: ,p_attribute2 => ''
28505: ,p_attribute3 => ''
28506: ,p_attribute4 => ''
28507: ,p_attribute5 => '');
28508: p_return_status := FND_API.G_RET_STS_ERROR;
28509: RAISE FND_API.G_EXC_ERROR;
28510: END IF;
28511:
28512: /* Converting project_reference to project_id */
28505: ,p_attribute3 => ''
28506: ,p_attribute4 => ''
28507: ,p_attribute5 => '');
28508: p_return_status := FND_API.G_RET_STS_ERROR;
28509: RAISE FND_API.G_EXC_ERROR;
28510: END IF;
28511:
28512: /* Converting project_reference to project_id */
28513:
28516: , p_pa_project_id => p_pa_project_id
28517: , p_out_project_id => l_project_id
28518: , p_return_status => l_return_status);
28519:
28520: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
28521: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28522: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
28523: RAISE FND_API.G_EXC_ERROR;
28524: END IF;
28517: , p_out_project_id => l_project_id
28518: , p_return_status => l_return_status);
28519:
28520: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
28521: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28522: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
28523: RAISE FND_API.G_EXC_ERROR;
28524: END IF;
28525:
28518: , p_return_status => l_return_status);
28519:
28520: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
28521: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28522: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
28523: RAISE FND_API.G_EXC_ERROR;
28524: END IF;
28525:
28526: /* Getting the working structure_version_id */
28519:
28520: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
28521: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28522: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
28523: RAISE FND_API.G_EXC_ERROR;
28524: END IF;
28525:
28526: /* Getting the working structure_version_id */
28527:
28538: ,p_attribute4 => ''
28539: ,p_attribute5 => '');
28540: end if;
28541:
28542: p_return_status := FND_API.G_RET_STS_ERROR;
28543: RAISE FND_API.G_EXC_ERROR;
28544: end if;
28545:
28546: /* Calling: PA_PROGRESS_PUB.apply_lp_prog_on_cwv. */
28539: ,p_attribute5 => '');
28540: end if;
28541:
28542: p_return_status := FND_API.G_RET_STS_ERROR;
28543: RAISE FND_API.G_EXC_ERROR;
28544: end if;
28545:
28546: /* Calling: PA_PROGRESS_PUB.apply_lp_prog_on_cwv. */
28547:
28546: /* Calling: PA_PROGRESS_PUB.apply_lp_prog_on_cwv. */
28547:
28548: PA_PROGRESS_PUB.apply_lp_prog_on_cwv(p_api_version => p_api_version
28549: ,p_init_msg_list => p_init_msg_list
28550: ,p_commit => FND_API.G_FALSE--bug 3766967
28551: ,p_project_id => l_project_id
28552: ,p_working_str_version_id => p_working_str_version_id
28553: ,x_return_status => l_return_status
28554: ,x_msg_count => l_msg_count
28553: ,x_return_status => l_return_status
28554: ,x_msg_count => l_msg_count
28555: ,x_msg_data => l_msg_data);
28556:
28557: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
28558: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
28559: p_msg_name => l_msg_data);
28560: p_msg_data := l_msg_data;
28561: p_return_status := 'E';
28559: p_msg_name => l_msg_data);
28560: p_msg_data := l_msg_data;
28561: p_return_status := 'E';
28562: p_msg_count := l_msg_count;
28563: RAISE FND_API.G_EXC_ERROR;
28564: END IF;
28565:
28566: IF (p_commit = FND_API.G_TRUE) THEN
28567: COMMIT;
28562: p_msg_count := l_msg_count;
28563: RAISE FND_API.G_EXC_ERROR;
28564: END IF;
28565:
28566: IF (p_commit = FND_API.G_TRUE) THEN
28567: COMMIT;
28568: END IF;
28569:
28570: EXCEPTION
28568: END IF;
28569:
28570: EXCEPTION
28571:
28572: when FND_API.G_EXC_ERROR then
28573:
28574: if p_commit = FND_API.G_TRUE then
28575: rollback to APPLY_LP_PROG_ON_CWV;
28576: end if;
28570: EXCEPTION
28571:
28572: when FND_API.G_EXC_ERROR then
28573:
28574: if p_commit = FND_API.G_TRUE then
28575: rollback to APPLY_LP_PROG_ON_CWV;
28576: end if;
28577:
28578: p_return_status := FND_API.G_RET_STS_ERROR;
28574: if p_commit = FND_API.G_TRUE then
28575: rollback to APPLY_LP_PROG_ON_CWV;
28576: end if;
28577:
28578: p_return_status := FND_API.G_RET_STS_ERROR;
28579:
28580: FND_MSG_PUB.Count_And_Get
28581: (p_count => p_msg_count
28582: ,p_data => p_msg_data);
28580: FND_MSG_PUB.Count_And_Get
28581: (p_count => p_msg_count
28582: ,p_data => p_msg_data);
28583:
28584: when FND_API.G_EXC_UNEXPECTED_ERROR then
28585: if p_commit = FND_API.G_TRUE then
28586: rollback to APPLY_LP_PROG_ON_CWV;
28587: end if;
28588:
28581: (p_count => p_msg_count
28582: ,p_data => p_msg_data);
28583:
28584: when FND_API.G_EXC_UNEXPECTED_ERROR then
28585: if p_commit = FND_API.G_TRUE then
28586: rollback to APPLY_LP_PROG_ON_CWV;
28587: end if;
28588:
28589: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28585: if p_commit = FND_API.G_TRUE then
28586: rollback to APPLY_LP_PROG_ON_CWV;
28587: end if;
28588:
28589: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28590:
28591: FND_MSG_PUB.Count_And_Get
28592: (p_count => p_msg_count
28593: ,p_data => p_msg_data);
28593: ,p_data => p_msg_data);
28594:
28595: when OTHERS then
28596:
28597: if p_commit = FND_API.G_TRUE then
28598: rollback to APPLY_LP_PROG_ON_CWV;
28599: end if;
28600:
28601: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28597: if p_commit = FND_API.G_TRUE then
28598: rollback to APPLY_LP_PROG_ON_CWV;
28599: end if;
28600:
28601: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28602:
28603: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
28604: THEN
28605: FND_MSG_PUB.add_exc_msg
28633: --
28634:
28635: PROCEDURE load_deliverable
28636: ( p_api_version IN NUMBER := 1.0
28637: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
28638: , p_debug_mode IN VARCHAR2 := 'N'
28639: , x_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
28640: , p_deliverable_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
28641: , p_deliverable_short_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
28675: SAVEPOINT load_deliverable_pub;
28676:
28677: -- Standard call to check for call compatibility.
28678:
28679: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
28680: p_api_version ,
28681: l_api_name ,
28682: G_PKG_NAME )
28683: THEN
28681: l_api_name ,
28682: G_PKG_NAME )
28683: THEN
28684:
28685: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28686:
28687: END IF;
28688:
28689: -- Initialize the message table if requested.
28687: END IF;
28688:
28689: -- Initialize the message table if requested.
28690:
28691: IF FND_API.TO_BOOLEAN( p_init_msg_list )
28692: THEN
28693:
28694: FND_MSG_PUB.initialize;
28695:
28696: END IF;
28697:
28698: -- Set API return status to success
28699:
28700: x_return_status := FND_API.G_RET_STS_SUCCESS;
28701:
28702: -- Load the record only if deliverable_short_name is passed
28703: -- IF (p_deliverable_short_name <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM) AND /* Bug 39590235 */
28704: IF (p_deliverable_short_name <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR) AND
28741: END IF;
28742:
28743: EXCEPTION
28744:
28745: WHEN FND_API.G_EXC_ERROR THEN
28746: ROLLBACK TO load_deliverable_pub;
28747: x_return_status := FND_API.G_RET_STS_ERROR;
28748:
28749:
28743: EXCEPTION
28744:
28745: WHEN FND_API.G_EXC_ERROR THEN
28746: ROLLBACK TO load_deliverable_pub;
28747: x_return_status := FND_API.G_RET_STS_ERROR;
28748:
28749:
28750: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
28751: ROLLBACK TO load_deliverable_pub;
28746: ROLLBACK TO load_deliverable_pub;
28747: x_return_status := FND_API.G_RET_STS_ERROR;
28748:
28749:
28750: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
28751: ROLLBACK TO load_deliverable_pub;
28752: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28753:
28754:
28748:
28749:
28750: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
28751: ROLLBACK TO load_deliverable_pub;
28752: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28753:
28754:
28755: WHEN OTHERS THEN
28756: ROLLBACK TO load_deliverable_pub;
28753:
28754:
28755: WHEN OTHERS THEN
28756: ROLLBACK TO load_deliverable_pub;
28757: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28758:
28759: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
28760: THEN
28761: FND_MSG_PUB.add_exc_msg
28781: --
28782:
28783: PROCEDURE load_deliverables
28784: ( p_api_version IN NUMBER := 1.0
28785: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
28786: , p_debug_mode IN VARCHAR2 := 'N'
28787: , x_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
28788: , p_deliverable_name IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
28789: --, p_deliverable_name IN PA_VC_1000_240 := PA_VC_1000_240(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
28826: SAVEPOINT load_deliverables_pub;
28827:
28828: -- Standard call to check for call compatibility.
28829:
28830: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
28831: p_api_version ,
28832: l_api_name ,
28833: G_PKG_NAME )
28834: THEN
28832: l_api_name ,
28833: G_PKG_NAME )
28834: THEN
28835:
28836: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28837:
28838: END IF;
28839:
28840: -- Initialize the message table if requested.
28838: END IF;
28839:
28840: -- Initialize the message table if requested.
28841:
28842: IF FND_API.TO_BOOLEAN( p_init_msg_list )
28843: THEN
28844:
28845: FND_MSG_PUB.initialize;
28846:
28847: END IF;
28848:
28849: -- Set API return status to success
28850:
28851: x_return_status := FND_API.G_RET_STS_SUCCESS;
28852:
28853: -- Load the table only if deliverable_short_name is passed
28854: FOR i in 1..1000 LOOP
28855: IF (p_deliverable_short_name(i) <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR) AND /* Bug # 3590235 */
28890: END LOOP;
28891:
28892: EXCEPTION
28893:
28894: WHEN FND_API.G_EXC_ERROR
28895: THEN
28896: ROLLBACK TO load_deliverables_pub;
28897:
28898: x_return_status := FND_API.G_RET_STS_ERROR;
28894: WHEN FND_API.G_EXC_ERROR
28895: THEN
28896: ROLLBACK TO load_deliverables_pub;
28897:
28898: x_return_status := FND_API.G_RET_STS_ERROR;
28899:
28900:
28901: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
28902: THEN
28897:
28898: x_return_status := FND_API.G_RET_STS_ERROR;
28899:
28900:
28901: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
28902: THEN
28903: ROLLBACK TO load_deliverables_pub;
28904:
28905: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28901: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
28902: THEN
28903: ROLLBACK TO load_deliverables_pub;
28904:
28905: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28906:
28907:
28908: WHEN OTHERS THEN
28909: ROLLBACK TO load_deliverables_pub;
28907:
28908: WHEN OTHERS THEN
28909: ROLLBACK TO load_deliverables_pub;
28910:
28911: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
28912:
28913: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
28914: THEN
28915: FND_MSG_PUB.add_exc_msg
28935: --
28936:
28937: PROCEDURE load_action
28938: ( p_api_version IN NUMBER := 1.0
28939: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
28940: , p_debug_mode IN VARCHAR2 := 'N'
28941: , x_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
28942: , p_action_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
28943: , p_action_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
29019: SAVEPOINT load_action_pub;
29020:
29021: -- Standard call to check for call compatibility.
29022:
29023: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
29024: p_api_version ,
29025: l_api_name ,
29026: G_PKG_NAME )
29027: THEN
29025: l_api_name ,
29026: G_PKG_NAME )
29027: THEN
29028:
29029: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29030:
29031: END IF;
29032:
29033: -- Initialize the message table if requested.
29031: END IF;
29032:
29033: -- Initialize the message table if requested.
29034:
29035: IF FND_API.TO_BOOLEAN( p_init_msg_list )
29036: THEN
29037:
29038: FND_MSG_PUB.initialize;
29039:
29040: END IF;
29041:
29042: -- Set API return status to success
29043:
29044: x_return_status := FND_API.G_RET_STS_SUCCESS;
29045:
29046: -- Load the table only if action_name is passed
29047: IF (p_action_name <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR) AND
29048: (p_action_name IS NOT NULL) THEN
29127: END IF;
29128:
29129: EXCEPTION
29130:
29131: WHEN FND_API.G_EXC_ERROR
29132: THEN
29133: ROLLBACK TO load_action_pub;
29134:
29135: x_return_status := FND_API.G_RET_STS_ERROR;
29131: WHEN FND_API.G_EXC_ERROR
29132: THEN
29133: ROLLBACK TO load_action_pub;
29134:
29135: x_return_status := FND_API.G_RET_STS_ERROR;
29136:
29137:
29138: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
29139: THEN
29134:
29135: x_return_status := FND_API.G_RET_STS_ERROR;
29136:
29137:
29138: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
29139: THEN
29140: ROLLBACK TO load_action_pub;
29141:
29142: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
29138: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
29139: THEN
29140: ROLLBACK TO load_action_pub;
29141:
29142: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
29143:
29144:
29145: WHEN OTHERS THEN
29146: ROLLBACK TO load_action_pub;
29144:
29145: WHEN OTHERS THEN
29146: ROLLBACK TO load_action_pub;
29147:
29148: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
29149:
29150: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
29151: THEN
29152: FND_MSG_PUB.add_exc_msg
29171: -- 03-Mar-2004 Puneet Created
29172: --
29173: PROCEDURE load_actions
29174: ( p_api_version IN NUMBER := 1.0
29175: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
29176: , p_debug_mode IN VARCHAR2 := 'N'
29177: , x_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
29178: --, p_action_name IN PA_VC_1000_240 := PA_VC_1000_240(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
29179: , p_action_name IN PA_VC_1000_150 := PA_VC_1000_150(PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR)
29262: SAVEPOINT load_actions_pub;
29263:
29264: -- Standard call to check for call compatibility.
29265:
29266: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
29267: p_api_version ,
29268: l_api_name ,
29269: G_PKG_NAME )
29270: THEN
29268: l_api_name ,
29269: G_PKG_NAME )
29270: THEN
29271:
29272: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29273:
29274: END IF;
29275:
29276: -- Initialize the message table if requested.
29274: END IF;
29275:
29276: -- Initialize the message table if requested.
29277:
29278: IF FND_API.TO_BOOLEAN( p_init_msg_list )
29279: THEN
29280:
29281: FND_MSG_PUB.initialize;
29282:
29283: END IF;
29284:
29285: -- Set API return status to success
29286:
29287: x_return_status := FND_API.G_RET_STS_SUCCESS;
29288:
29289: -- Load the table only if action_name is passed
29290: FOR i in 1..1000 LOOP
29291: IF (p_action_name(i) <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR) AND
29373: END LOOP;
29374:
29375: EXCEPTION
29376:
29377: WHEN FND_API.G_EXC_ERROR
29378: THEN
29379: ROLLBACK TO load_actions_pub;
29380:
29381: x_return_status := FND_API.G_RET_STS_ERROR;
29377: WHEN FND_API.G_EXC_ERROR
29378: THEN
29379: ROLLBACK TO load_actions_pub;
29380:
29381: x_return_status := FND_API.G_RET_STS_ERROR;
29382:
29383:
29384: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
29385: THEN
29380:
29381: x_return_status := FND_API.G_RET_STS_ERROR;
29382:
29383:
29384: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
29385: THEN
29386: ROLLBACK TO load_actions_pub;
29387:
29388: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
29384: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
29385: THEN
29386: ROLLBACK TO load_actions_pub;
29387:
29388: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
29389:
29390:
29391: WHEN OTHERS THEN
29392: ROLLBACK TO load_actions_pub;
29390:
29391: WHEN OTHERS THEN
29392: ROLLBACK TO load_actions_pub;
29393:
29394: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
29395:
29396: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
29397: THEN
29398: FND_MSG_PUB.add_exc_msg
29420: --
29421:
29422: PROCEDURE create_deliverable
29423: ( p_api_version IN NUMBER := 1.0
29424: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
29425: , p_commit IN VARCHAR2 := FND_API.G_FALSE
29426: , p_debug_mode IN VARCHAR2 := 'N'
29427: , x_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
29428: , p_deliverable_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
29421:
29422: PROCEDURE create_deliverable
29423: ( p_api_version IN NUMBER := 1.0
29424: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
29425: , p_commit IN VARCHAR2 := FND_API.G_FALSE
29426: , p_debug_mode IN VARCHAR2 := 'N'
29427: , x_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
29428: , p_deliverable_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
29429: , p_deliverable_short_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
29507: l_wp_task_flag varchar2(1); -- Added for bug5462298
29508:
29509: BEGIN
29510: -- Initialize the message table if requested.
29511: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
29512: FND_MSG_PUB.initialize;
29513: END IF;
29514:
29515: -- 3735792 , setting save point unconditionally
29512: FND_MSG_PUB.initialize;
29513: END IF;
29514:
29515: -- 3735792 , setting save point unconditionally
29516: -- IF (p_commit = FND_API.G_TRUE) THEN
29517: savepoint CREATE_DELIVERABLE_PUB;
29518: -- END IF;
29519:
29520: -- Validation check for product code : Bug 3651113
29538: ,p_attribute3 => ''
29539: ,p_attribute4 => ''
29540: ,p_attribute5 => '');
29541: END IF;
29542: x_return_status := FND_API.G_RET_STS_ERROR;
29543: RAISE FND_API.G_EXC_ERROR;
29544: END IF;
29545:
29546: IF p_debug_mode = 'Y' THEN
29539: ,p_attribute4 => ''
29540: ,p_attribute5 => '');
29541: END IF;
29542: x_return_status := FND_API.G_RET_STS_ERROR;
29543: RAISE FND_API.G_EXC_ERROR;
29544: END IF;
29545:
29546: IF p_debug_mode = 'Y' THEN
29547: PA_DEBUG.set_curr_function( p_function => l_api_name,
29550: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3) ;
29551: END IF;
29552:
29553: -- Set API return status to success
29554: x_return_status := FND_API.G_RET_STS_SUCCESS;
29555:
29556:
29557: IF p_task_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
29558: l_task_id := NULL;
29582: IF p_debug_mode = 'Y' THEN
29583: pa_debug.write(g_pkg_name,'Func Security Return Status ['||x_return_status||']Func Allow['||l_function_allowed||']',3) ;
29584: END IF;
29585:
29586: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29587: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29588: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29589: RAISE FND_API.G_EXC_ERROR;
29590: END IF;
29583: pa_debug.write(g_pkg_name,'Func Security Return Status ['||x_return_status||']Func Allow['||l_function_allowed||']',3) ;
29584: END IF;
29585:
29586: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29587: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29588: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29589: RAISE FND_API.G_EXC_ERROR;
29590: END IF;
29591:
29584: END IF;
29585:
29586: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29587: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29588: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29589: RAISE FND_API.G_EXC_ERROR;
29590: END IF;
29591:
29592: IF l_function_allowed = 'N' THEN
29585:
29586: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29587: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29588: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29589: RAISE FND_API.G_EXC_ERROR;
29590: END IF;
29591:
29592: IF l_function_allowed = 'N' THEN
29593: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
29591:
29592: IF l_function_allowed = 'N' THEN
29593: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
29594: ,p_msg_name => 'PA_FUNCTION_SECURITY_ENFORCED');
29595: x_return_status := FND_API.G_RET_STS_ERROR;
29596: RAISE FND_API.G_EXC_ERROR;
29597: END IF;
29598:
29599: -- validate the input parameters.
29592: IF l_function_allowed = 'N' THEN
29593: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
29594: ,p_msg_name => 'PA_FUNCTION_SECURITY_ENFORCED');
29595: x_return_status := FND_API.G_RET_STS_ERROR;
29596: RAISE FND_API.G_EXC_ERROR;
29597: END IF;
29598:
29599: -- validate the input parameters.
29600: -- Get the task and Project details based on source reference passed
29608: IF p_debug_mode = 'Y' THEN
29609: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
29610: END IF;
29611:
29612: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29613: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29614: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29615: RAISE FND_API.G_EXC_ERROR;
29616: END IF;
29609: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
29610: END IF;
29611:
29612: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29613: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29614: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29615: RAISE FND_API.G_EXC_ERROR;
29616: END IF;
29617:
29610: END IF;
29611:
29612: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29613: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29614: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29615: RAISE FND_API.G_EXC_ERROR;
29616: END IF;
29617:
29618: IF ( l_task_id IS NOT NULL OR l_task_source_reference IS NOT NULL ) THEN
29611:
29612: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29613: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29614: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29615: RAISE FND_API.G_EXC_ERROR;
29616: END IF;
29617:
29618: IF ( l_task_id IS NOT NULL OR l_task_source_reference IS NOT NULL ) THEN
29619: PA_PROJECT_PVT.Convert_pm_taskref_to_id_all (
29627: IF p_debug_mode = 'Y' THEN
29628: pa_debug.write(g_pkg_name,'Task Ref to ID Return Status ['||x_return_status||']Task ID['||l_task_id||']',3) ;
29629: END IF;
29630:
29631: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29632: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29633: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29634: RAISE FND_API.G_EXC_ERROR;
29635: END IF;
29628: pa_debug.write(g_pkg_name,'Task Ref to ID Return Status ['||x_return_status||']Task ID['||l_task_id||']',3) ;
29629: END IF;
29630:
29631: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29632: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29633: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29634: RAISE FND_API.G_EXC_ERROR;
29635: END IF;
29636:
29629: END IF;
29630:
29631: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29632: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29633: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29634: RAISE FND_API.G_EXC_ERROR;
29635: END IF;
29636:
29637: -- 5462298 Added below code to validate passed task id
29630:
29631: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29632: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29633: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29634: RAISE FND_API.G_EXC_ERROR;
29635: END IF;
29636:
29637: -- 5462298 Added below code to validate passed task id
29638: -- if it is not workplan task , throw error message
29648:
29649: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
29650: ,p_msg_name => 'PA_TASK_ID_INVALID');
29651:
29652: x_return_status := FND_API.G_RET_STS_ERROR;
29653: RAISE FND_API.G_EXC_ERROR;
29654:
29655: END IF;
29656:
29649: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
29650: ,p_msg_name => 'PA_TASK_ID_INVALID');
29651:
29652: x_return_status := FND_API.G_RET_STS_ERROR;
29653: RAISE FND_API.G_EXC_ERROR;
29654:
29655: END IF;
29656:
29657: END IF;
29670: IF p_debug_mode = 'Y' THEN
29671: pa_debug.write(g_pkg_name,'Dlvr Reference Unique Return Status ['||x_return_status||']Unique['||l_unique_flag||']',3) ;
29672: END IF;
29673:
29674: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29675: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29676: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29677: RAISE FND_API.G_EXC_ERROR;
29678: END IF;
29671: pa_debug.write(g_pkg_name,'Dlvr Reference Unique Return Status ['||x_return_status||']Unique['||l_unique_flag||']',3) ;
29672: END IF;
29673:
29674: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29675: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29676: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29677: RAISE FND_API.G_EXC_ERROR;
29678: END IF;
29679:
29672: END IF;
29673:
29674: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29675: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29676: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29677: RAISE FND_API.G_EXC_ERROR;
29678: END IF;
29679:
29680: -- Fetching Task Name , Project Name to use as token in Error Messages.
29673:
29674: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29675: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29676: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29677: RAISE FND_API.G_EXC_ERROR;
29678: END IF;
29679:
29680: -- Fetching Task Name , Project Name to use as token in Error Messages.
29681:
29720:
29721: IF G_DLVR_STRUCTURE_ENABLED = 'N' THEN
29722: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
29723: ,p_msg_name => 'PA_DLV_STRUCTURE_DISABLED');
29724: x_return_status := FND_API.G_RET_STS_ERROR;
29725: RAISE FND_API.G_EXC_ERROR;
29726: END IF;
29727:
29728: -- 3700247, if deliverable structure is not enabled for target and deliverables are passed in loading,
29721: IF G_DLVR_STRUCTURE_ENABLED = 'N' THEN
29722: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
29723: ,p_msg_name => 'PA_DLV_STRUCTURE_DISABLED');
29724: x_return_status := FND_API.G_RET_STS_ERROR;
29725: RAISE FND_API.G_EXC_ERROR;
29726: END IF;
29727:
29728: -- 3700247, if deliverable structure is not enabled for target and deliverables are passed in loading,
29729: -- error message is thrown. So, removing the below code , which enables the structure for the target project in
29740: IF ( l_dlvr_enabled = 'N' ) THEN
29741:
29742: Pa_Deliverable_Utils.enable_deliverable(
29743: p_api_version => p_api_version
29744: , p_init_msg_list => FND_API.G_FALSE
29745: , p_commit => p_commit
29746: , p_debug_mode => p_debug_mode
29747: , p_validate_only => FND_API.G_FALSE
29748: , p_project_id => l_project_id
29743: p_api_version => p_api_version
29744: , p_init_msg_list => FND_API.G_FALSE
29745: , p_commit => p_commit
29746: , p_debug_mode => p_debug_mode
29747: , p_validate_only => FND_API.G_FALSE
29748: , p_project_id => l_project_id
29749: , x_return_status => x_return_status
29750: , x_msg_count => x_msg_count
29751: , x_msg_data => x_msg_data
29754: IF p_debug_mode = 'Y' THEN
29755: pa_debug.write(g_pkg_name,'Pa_Deliverable_Utils.enable_deliverable Return Status ['||x_return_status||']',3) ;
29756: END IF;
29757:
29758: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29759: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29760: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29761: RAISE FND_API.G_EXC_ERROR;
29762: END IF;
29755: pa_debug.write(g_pkg_name,'Pa_Deliverable_Utils.enable_deliverable Return Status ['||x_return_status||']',3) ;
29756: END IF;
29757:
29758: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29759: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29760: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29761: RAISE FND_API.G_EXC_ERROR;
29762: END IF;
29763:
29756: END IF;
29757:
29758: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29759: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29760: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29761: RAISE FND_API.G_EXC_ERROR;
29762: END IF;
29763:
29764: END IF; -- deliverable not enabled
29757:
29758: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
29759: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29760: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
29761: RAISE FND_API.G_EXC_ERROR;
29762: END IF;
29763:
29764: END IF; -- deliverable not enabled
29765: */
29800: -- All other validations done in PA_DELIVERABLE_PUB.CREATE_DELIVERABLE
29801: --invoke the api to create deliverable
29802: Pa_Deliverable_Pub.Create_Deliverable
29803: ( p_api_version => p_api_version
29804: , p_init_msg_list => FND_API.G_FALSE -- passed as false as doesn't want message stack to be reset.
29805: -- 3735792, passing p_commit as false to next level api calls
29806: , p_commit => FND_API.G_FALSE
29807: , p_validate_only => FND_API.G_FALSE
29808: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
29802: Pa_Deliverable_Pub.Create_Deliverable
29803: ( p_api_version => p_api_version
29804: , p_init_msg_list => FND_API.G_FALSE -- passed as false as doesn't want message stack to be reset.
29805: -- 3735792, passing p_commit as false to next level api calls
29806: , p_commit => FND_API.G_FALSE
29807: , p_validate_only => FND_API.G_FALSE
29808: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
29809: , p_calling_module => 'AMG'
29810: , p_debug_mode => p_debug_mode
29803: ( p_api_version => p_api_version
29804: , p_init_msg_list => FND_API.G_FALSE -- passed as false as doesn't want message stack to be reset.
29805: -- 3735792, passing p_commit as false to next level api calls
29806: , p_commit => FND_API.G_FALSE
29807: , p_validate_only => FND_API.G_FALSE
29808: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
29809: , p_calling_module => 'AMG'
29810: , p_debug_mode => p_debug_mode
29811: , p_max_msg_count => NULL
29804: , p_init_msg_list => FND_API.G_FALSE -- passed as false as doesn't want message stack to be reset.
29805: -- 3735792, passing p_commit as false to next level api calls
29806: , p_commit => FND_API.G_FALSE
29807: , p_validate_only => FND_API.G_FALSE
29808: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
29809: , p_calling_module => 'AMG'
29810: , p_debug_mode => p_debug_mode
29811: , p_max_msg_count => NULL
29812: , p_record_version_number => 1
29855: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
29856: END IF;
29857:
29858:
29859: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29860: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29861: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29862: RAISE FND_API.G_EXC_ERROR;
29863: END IF;
29856: END IF;
29857:
29858:
29859: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29860: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29861: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29862: RAISE FND_API.G_EXC_ERROR;
29863: END IF;
29864: -- Will create actions only when deliverable type of deliverable
29857:
29858:
29859: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29860: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29861: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29862: RAISE FND_API.G_EXC_ERROR;
29863: END IF;
29864: -- Will create actions only when deliverable type of deliverable
29865: -- has action creation enabled.
29858:
29859: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29860: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29861: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29862: RAISE FND_API.G_EXC_ERROR;
29863: END IF;
29864: -- Will create actions only when deliverable type of deliverable
29865: -- has action creation enabled.
29866:
29912: IF ( l_dlvr_action_enabled = 'Y') THEN
29913:
29914: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
29915: ( p_api_version => p_api_version
29916: , p_init_msg_list => FND_API.G_FALSE
29917: , p_commit => FND_API.G_FALSE
29918: , p_validate_only => FND_API.G_FALSE
29919: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
29920: , p_calling_module => 'AMG'
29913:
29914: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
29915: ( p_api_version => p_api_version
29916: , p_init_msg_list => FND_API.G_FALSE
29917: , p_commit => FND_API.G_FALSE
29918: , p_validate_only => FND_API.G_FALSE
29919: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
29920: , p_calling_module => 'AMG'
29921: , p_debug_mode => p_debug_mode
29914: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
29915: ( p_api_version => p_api_version
29916: , p_init_msg_list => FND_API.G_FALSE
29917: , p_commit => FND_API.G_FALSE
29918: , p_validate_only => FND_API.G_FALSE
29919: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
29920: , p_calling_module => 'AMG'
29921: , p_debug_mode => p_debug_mode
29922: , p_insert_or_update => 'INSERT'
29915: ( p_api_version => p_api_version
29916: , p_init_msg_list => FND_API.G_FALSE
29917: , p_commit => FND_API.G_FALSE
29918: , p_validate_only => FND_API.G_FALSE
29919: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
29920: , p_calling_module => 'AMG'
29921: , p_debug_mode => p_debug_mode
29922: , p_insert_or_update => 'INSERT'
29923: , p_action_in_tbl => l_action_in_tbl
29930: pa_debug.g_err_stage := 'Returned after Create actions for ['|| i_actn ||'] action return['||x_return_status||']';
29931: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
29932: END IF;
29933:
29934: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29935: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29936: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29937: RAISE FND_API.G_EXC_ERROR;
29938: END IF;
29931: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
29932: END IF;
29933:
29934: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29935: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29936: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29937: RAISE FND_API.G_EXC_ERROR;
29938: END IF;
29939:
29932: END IF;
29933:
29934: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29935: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29936: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29937: RAISE FND_API.G_EXC_ERROR;
29938: END IF;
29939:
29940: ELSE --l_dlvr_action_enabled <> 'Y'
29933:
29934: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
29935: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29936: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
29937: RAISE FND_API.G_EXC_ERROR;
29938: END IF;
29939:
29940: ELSE --l_dlvr_action_enabled <> 'Y'
29941:
29954: p_value4 => l_err_message
29955: );
29956: END IF;
29957:
29958: x_return_status := FND_API.G_RET_STS_ERROR;
29959: RAISE FND_API.G_EXC_ERROR;
29960: END IF; -- l_dlvr_action_enabled = 'Y'
29961:
29962: END IF; --i_actn > 0
29955: );
29956: END IF;
29957:
29958: x_return_status := FND_API.G_RET_STS_ERROR;
29959: RAISE FND_API.G_EXC_ERROR;
29960: END IF; -- l_dlvr_action_enabled = 'Y'
29961:
29962: END IF; --i_actn > 0
29963:
29961:
29962: END IF; --i_actn > 0
29963:
29964: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
29965: IF (p_commit = FND_API.G_TRUE) THEN
29966: COMMIT;
29967: END IF;
29968:
29969: IF p_debug_mode = 'Y' THEN
29971: pa_debug.write(g_pkg_name,l_api_name||': Exiting succesfully',5);
29972: END IF;
29973:
29974: EXCEPTION
29975: WHEN FND_API.G_EXC_ERROR THEN
29976: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
29977: --IF (p_commit = FND_API.G_TRUE) THEN
29978: ROLLBACK TO CREATE_DELIVERABLE_PUB;
29979: --END IF;
29973:
29974: EXCEPTION
29975: WHEN FND_API.G_EXC_ERROR THEN
29976: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
29977: --IF (p_commit = FND_API.G_TRUE) THEN
29978: ROLLBACK TO CREATE_DELIVERABLE_PUB;
29979: --END IF;
29980:
29981: IF p_debug_mode = 'Y' THEN
29981: IF p_debug_mode = 'Y' THEN
29982: pa_debug.reset_curr_function;
29983: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_ERROR exception',5);
29984: END IF;
29985: x_return_status := FND_API.G_RET_STS_ERROR;
29986: x_msg_count := FND_MSG_PUB.count_msg;
29987:
29988: IF x_msg_count = 1 THEN
29989: PA_INTERFACE_UTILS_PUB.get_messages
29986: x_msg_count := FND_MSG_PUB.count_msg;
29987:
29988: IF x_msg_count = 1 THEN
29989: PA_INTERFACE_UTILS_PUB.get_messages
29990: (p_encoded => FND_API.G_FALSE,
29991: p_msg_index => 1,
29992: p_msg_count => x_msg_count,
29993: p_msg_data => x_msg_data,
29994: p_data => l_data, -- 4537865 Changed from x_msg_data to l_data ,as it may have problem with NOCOPY
29995: p_msg_index_out => l_msg_index_out);
29996: x_msg_data := l_data ; -- 4537865
29997: END IF;
29998:
29999: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
30000: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
30001: --IF (p_commit = FND_API.G_TRUE) THEN
30002: ROLLBACK TO CREATE_DELIVERABLE_PUB;
30003: --END IF;
29997: END IF;
29998:
29999: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
30000: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
30001: --IF (p_commit = FND_API.G_TRUE) THEN
30002: ROLLBACK TO CREATE_DELIVERABLE_PUB;
30003: --END IF;
30004:
30005: IF p_debug_mode = 'Y' THEN
30005: IF p_debug_mode = 'Y' THEN
30006: pa_debug.reset_curr_function;
30007: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_UNEXPECTED_ERROR exception',5);
30008: END IF;
30009: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
30010: x_msg_count := FND_MSG_PUB.count_msg;
30011:
30012: IF x_msg_count = 1 THEN
30013: PA_INTERFACE_UTILS_PUB.get_messages
30010: x_msg_count := FND_MSG_PUB.count_msg;
30011:
30012: IF x_msg_count = 1 THEN
30013: PA_INTERFACE_UTILS_PUB.get_messages
30014: (p_encoded => FND_API.G_FALSE,
30015: p_msg_index => 1,
30016: p_msg_count => x_msg_count,
30017: p_msg_data => x_msg_data,
30018: p_data => l_data, -- 4537865 Changed from x_msg_data to l_data ,as it may have problem with NOCOPY
30021: END IF;
30022:
30023: WHEN OTHERS THEN
30024: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
30025: --IF (p_commit = FND_API.G_TRUE) THEN
30026: ROLLBACK TO CREATE_DELIVERABLE_PUB;
30027: --END IF;
30028:
30029: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
30025: --IF (p_commit = FND_API.G_TRUE) THEN
30026: ROLLBACK TO CREATE_DELIVERABLE_PUB;
30027: --END IF;
30028:
30029: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
30030: x_msg_count := 1;
30031: x_msg_data := SQLERRM;
30032:
30033: IF p_debug_mode = 'Y' THEN
30044: END create_deliverable;
30045:
30046: PROCEDURE create_deliverable_action
30047: ( p_api_version IN NUMBER := 1.0
30048: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
30049: , p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
30050: , p_commit IN VARCHAR2 := FND_API.G_FALSE
30051: , p_action_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
30052: , p_action_owner_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
30045:
30046: PROCEDURE create_deliverable_action
30047: ( p_api_version IN NUMBER := 1.0
30048: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
30049: , p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
30050: , p_commit IN VARCHAR2 := FND_API.G_FALSE
30051: , p_action_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
30052: , p_action_owner_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
30053: , p_function_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
30046: PROCEDURE create_deliverable_action
30047: ( p_api_version IN NUMBER := 1.0
30048: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
30049: , p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
30050: , p_commit IN VARCHAR2 := FND_API.G_FALSE
30051: , p_action_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
30052: , p_action_owner_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
30053: , p_function_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
30054: , p_due_date IN DATE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
30169:
30170: -- Standard begin of API savepoint
30171:
30172: -- 3735792, setting save point unconditionally
30173: -- IF (p_commit = FND_API.G_TRUE) THEN
30174: SAVEPOINT create_deliverable_actions_pub;
30175: -- END IF;
30176:
30177: -- Standard call to check for call compatibility.
30174: SAVEPOINT create_deliverable_actions_pub;
30175: -- END IF;
30176:
30177: -- Standard call to check for call compatibility.
30178: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
30179: p_api_version ,
30180: l_api_name ,
30181: G_PKG_NAME )
30182: THEN
30179: p_api_version ,
30180: l_api_name ,
30181: G_PKG_NAME )
30182: THEN
30183: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30184: END IF;
30185:
30186: -- Initialize the message table if requested.
30187: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
30183: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30184: END IF;
30185:
30186: -- Initialize the message table if requested.
30187: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
30188: FND_MSG_PUB.initialize;
30189: END IF;
30190:
30191: IF p_debug_mode = 'Y' THEN
30195: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3) ;
30196: END IF;
30197:
30198: -- Set API return status to success
30199: x_return_status := FND_API.G_RET_STS_SUCCESS;
30200:
30201: -- Function Security Check
30202: PA_PM_FUNCTION_SECURITY_PUB.check_function_security
30203: (p_api_version_number => p_api_version,
30211: IF p_debug_mode = 'Y' THEN
30212: pa_debug.write(g_pkg_name,'Func Security Return Status ['||x_return_status||']Func Allow['||l_function_allowed||']',3) ;
30213: END IF;
30214:
30215: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30216: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30217: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30218: RAISE FND_API.G_EXC_ERROR;
30219: END IF;
30212: pa_debug.write(g_pkg_name,'Func Security Return Status ['||x_return_status||']Func Allow['||l_function_allowed||']',3) ;
30213: END IF;
30214:
30215: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30216: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30217: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30218: RAISE FND_API.G_EXC_ERROR;
30219: END IF;
30220:
30213: END IF;
30214:
30215: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30216: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30217: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30218: RAISE FND_API.G_EXC_ERROR;
30219: END IF;
30220:
30221: IF l_function_allowed = 'N' THEN
30214:
30215: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30216: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30217: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30218: RAISE FND_API.G_EXC_ERROR;
30219: END IF;
30220:
30221: IF l_function_allowed = 'N' THEN
30222: pa_interface_utils_pub.map_new_amg_msg
30229: ,p_attribute3 => ''
30230: ,p_attribute4 => ''
30231: ,p_attribute5 => '');
30232:
30233: x_return_status := FND_API.G_RET_STS_ERROR;
30234: RAISE FND_API.G_EXC_ERROR;
30235: END IF;
30236:
30237: -- validate the input parameters.
30230: ,p_attribute4 => ''
30231: ,p_attribute5 => '');
30232:
30233: x_return_status := FND_API.G_RET_STS_ERROR;
30234: RAISE FND_API.G_EXC_ERROR;
30235: END IF;
30236:
30237: -- validate the input parameters.
30238: PA_PROJECT_PVT.Convert_pm_projref_to_id (
30245: IF p_debug_mode = 'Y' THEN
30246: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
30247: END IF;
30248:
30249: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30250: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30251: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30252: RAISE FND_API.G_EXC_ERROR;
30253: END IF;
30246: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
30247: END IF;
30248:
30249: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30250: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30251: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30252: RAISE FND_API.G_EXC_ERROR;
30253: END IF;
30254:
30247: END IF;
30248:
30249: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30250: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30251: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30252: RAISE FND_API.G_EXC_ERROR;
30253: END IF;
30254:
30255: -- Validate Deliverable reference / ID
30248:
30249: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30250: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30251: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30252: RAISE FND_API.G_EXC_ERROR;
30253: END IF;
30254:
30255: -- Validate Deliverable reference / ID
30256: PA_Deliverable_Utils.Convert_pm_dlvrref_to_id(
30263: IF p_debug_mode = 'Y' THEN
30264: pa_debug.write(g_pkg_name,'Dlvr Reference Ref to ID ['||l_deliverable_id||'] Return Status ['||x_return_status||']',3) ;
30265: END IF;
30266:
30267: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30268: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30269: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30270: RAISE FND_API.G_EXC_ERROR;
30271: END IF;
30264: pa_debug.write(g_pkg_name,'Dlvr Reference Ref to ID ['||l_deliverable_id||'] Return Status ['||x_return_status||']',3) ;
30265: END IF;
30266:
30267: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30268: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30269: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30270: RAISE FND_API.G_EXC_ERROR;
30271: END IF;
30272:
30265: END IF;
30266:
30267: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30268: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30269: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30270: RAISE FND_API.G_EXC_ERROR;
30271: END IF;
30272:
30273: -- 3729250, Validate Financial Task Reference / ID
30266:
30267: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30268: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30269: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30270: RAISE FND_API.G_EXC_ERROR;
30271: END IF;
30272:
30273: -- 3729250, Validate Financial Task Reference / ID
30274: -- PA_PROJECT_PVT.Convert_pm_taskref_to_id_all should only be called if either p_financial_task_id or
30284: , p_pm_task_reference => p_financial_task_reference
30285: , p_out_task_id => l_fin_task_id
30286: , p_return_status => x_return_status );
30287:
30288: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30289: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30290: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30291: RAISE FND_API.G_EXC_ERROR;
30292: END IF;
30285: , p_out_task_id => l_fin_task_id
30286: , p_return_status => x_return_status );
30287:
30288: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30289: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30290: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30291: RAISE FND_API.G_EXC_ERROR;
30292: END IF;
30293:
30286: , p_return_status => x_return_status );
30287:
30288: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30289: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30290: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30291: RAISE FND_API.G_EXC_ERROR;
30292: END IF;
30293:
30294: END IF;
30287:
30288: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30289: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30290: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30291: RAISE FND_API.G_EXC_ERROR;
30292: END IF;
30293:
30294: END IF;
30295:
30305: IF p_debug_mode = 'Y' THEN
30306: pa_debug.write(g_pkg_name,'Action Reference Unique Return Status ['||x_return_status||']Unique['||l_unique_flag||']',3) ;
30307: END IF;
30308:
30309: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30310: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30311: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30312: RAISE FND_API.G_EXC_ERROR;
30313: END IF;
30306: pa_debug.write(g_pkg_name,'Action Reference Unique Return Status ['||x_return_status||']Unique['||l_unique_flag||']',3) ;
30307: END IF;
30308:
30309: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30310: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30311: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30312: RAISE FND_API.G_EXC_ERROR;
30313: END IF;
30314:
30307: END IF;
30308:
30309: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30310: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30311: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30312: RAISE FND_API.G_EXC_ERROR;
30313: END IF;
30314:
30315: -- Derive the dlvr_Type of a deliverable
30308:
30309: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30310: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30311: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30312: RAISE FND_API.G_EXC_ERROR;
30313: END IF;
30314:
30315: -- Derive the dlvr_Type of a deliverable
30316: -- 3749462 passing l_project_id and l_deliverable_id to cursor
30426: p_token4 => 'MESSAGE',
30427: p_value4 => l_err_message
30428: );
30429: END IF;
30430: x_return_status := FND_API.G_RET_STS_ERROR;
30431: RAISE FND_API.G_EXC_ERROR;
30432:
30433: END IF; -- l_dlvr_action_enabled = 'Y'
30434: END IF;
30427: p_value4 => l_err_message
30428: );
30429: END IF;
30430: x_return_status := FND_API.G_RET_STS_ERROR;
30431: RAISE FND_API.G_EXC_ERROR;
30432:
30433: END IF; -- l_dlvr_action_enabled = 'Y'
30434: END IF;
30435:
30435:
30436: -- Call api to create actions passing the newly populated plsql table
30437: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
30438: ( p_api_version => p_api_version
30439: , p_init_msg_list => FND_API.G_FALSE
30440: , p_commit => FND_API.G_FALSE
30441: , p_validate_only => FND_API.G_FALSE
30442: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
30443: , p_calling_module => 'AMG'
30436: -- Call api to create actions passing the newly populated plsql table
30437: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
30438: ( p_api_version => p_api_version
30439: , p_init_msg_list => FND_API.G_FALSE
30440: , p_commit => FND_API.G_FALSE
30441: , p_validate_only => FND_API.G_FALSE
30442: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
30443: , p_calling_module => 'AMG'
30444: , p_debug_mode => p_debug_mode
30437: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
30438: ( p_api_version => p_api_version
30439: , p_init_msg_list => FND_API.G_FALSE
30440: , p_commit => FND_API.G_FALSE
30441: , p_validate_only => FND_API.G_FALSE
30442: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
30443: , p_calling_module => 'AMG'
30444: , p_debug_mode => p_debug_mode
30445: , p_insert_or_update => 'INSERT'
30438: ( p_api_version => p_api_version
30439: , p_init_msg_list => FND_API.G_FALSE
30440: , p_commit => FND_API.G_FALSE
30441: , p_validate_only => FND_API.G_FALSE
30442: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
30443: , p_calling_module => 'AMG'
30444: , p_debug_mode => p_debug_mode
30445: , p_insert_or_update => 'INSERT'
30446: , p_action_in_tbl => l_action_in_tbl
30453: pa_debug.g_err_stage := 'Returned from Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper ['|| x_return_status||']';
30454: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
30455: END IF;
30456:
30457: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30458: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30459: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30460: RAISE FND_API.G_EXC_ERROR;
30461: END IF; i := l_action_out_tbl.first();
30454: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
30455: END IF;
30456:
30457: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30458: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30459: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30460: RAISE FND_API.G_EXC_ERROR;
30461: END IF; i := l_action_out_tbl.first();
30462:
30455: END IF;
30456:
30457: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30458: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30459: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30460: RAISE FND_API.G_EXC_ERROR;
30461: END IF; i := l_action_out_tbl.first();
30462:
30463: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
30456:
30457: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30458: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30459: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30460: RAISE FND_API.G_EXC_ERROR;
30461: END IF; i := l_action_out_tbl.first();
30462:
30463: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
30464: IF (p_commit = FND_API.G_TRUE) THEN
30460: RAISE FND_API.G_EXC_ERROR;
30461: END IF; i := l_action_out_tbl.first();
30462:
30463: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
30464: IF (p_commit = FND_API.G_TRUE) THEN
30465: COMMIT;
30466: END IF;
30467:
30468: IF p_debug_mode = 'Y' THEN
30470: pa_debug.write(g_pkg_name,l_api_name||': Exiting succesfully',5);
30471: END IF;
30472:
30473: EXCEPTION
30474: WHEN FND_API.G_EXC_ERROR THEN
30475: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
30476: -- IF (p_commit = FND_API.G_TRUE) THEN
30477: ROLLBACK TO create_deliverable_actions_pub;
30478: -- END IF;
30472:
30473: EXCEPTION
30474: WHEN FND_API.G_EXC_ERROR THEN
30475: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
30476: -- IF (p_commit = FND_API.G_TRUE) THEN
30477: ROLLBACK TO create_deliverable_actions_pub;
30478: -- END IF;
30479:
30480: x_return_status := FND_API.G_RET_STS_ERROR;
30476: -- IF (p_commit = FND_API.G_TRUE) THEN
30477: ROLLBACK TO create_deliverable_actions_pub;
30478: -- END IF;
30479:
30480: x_return_status := FND_API.G_RET_STS_ERROR;
30481: l_msg_count := FND_MSG_PUB.count_msg;
30482:
30483: IF l_msg_count = 1 AND x_msg_data IS NULL
30484: THEN
30482:
30483: IF l_msg_count = 1 AND x_msg_data IS NULL
30484: THEN
30485: PA_INTERFACE_UTILS_PUB.get_messages
30486: (p_encoded => FND_API.G_FALSE,
30487: p_msg_index => 1,
30488: p_msg_count => x_msg_count,
30489: p_msg_data => l_msg_data,
30490: p_data => l_data,
30501: pa_debug.reset_curr_function;
30502: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_ERROR exception',5);
30503: END IF;
30504:
30505: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
30506: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
30507: --IF (p_commit = FND_API.G_TRUE) THEN
30508: ROLLBACK TO create_deliverable_actions_pub;
30509: --END IF;
30503: END IF;
30504:
30505: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
30506: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
30507: --IF (p_commit = FND_API.G_TRUE) THEN
30508: ROLLBACK TO create_deliverable_actions_pub;
30509: --END IF;
30510:
30511: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
30507: --IF (p_commit = FND_API.G_TRUE) THEN
30508: ROLLBACK TO create_deliverable_actions_pub;
30509: --END IF;
30510:
30511: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
30512: l_msg_count := FND_MSG_PUB.count_msg;
30513:
30514: IF l_msg_count = 1 AND x_msg_data IS NULL
30515: THEN
30513:
30514: IF l_msg_count = 1 AND x_msg_data IS NULL
30515: THEN
30516: PA_INTERFACE_UTILS_PUB.get_messages
30517: (p_encoded => FND_API.G_FALSE,
30518: p_msg_index => 1,
30519: p_msg_count => x_msg_count,
30520: p_msg_data => l_msg_data,
30521: p_data => l_data,
30534: END IF;
30535:
30536: WHEN OTHERS THEN
30537: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
30538: --IF (p_commit = FND_API.G_TRUE) THEN
30539: ROLLBACK TO create_deliverable_actions_pub;
30540: --END IF;
30541:
30542: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
30538: --IF (p_commit = FND_API.G_TRUE) THEN
30539: ROLLBACK TO create_deliverable_actions_pub;
30540: --END IF;
30541:
30542: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
30543: x_msg_count := 1;
30544: x_msg_data := SQLERRM;
30545:
30546: IF p_debug_mode = 'Y' THEN
30574:
30575: PROCEDURE update_deliverable
30576: ( p_api_version IN NUMBER := 1.0
30577: , p_init_msg_list IN VARCHAR2 := 'F'
30578: , p_commit IN VARCHAR2 := FND_API.G_FALSE
30579: , p_debug_mode IN VARCHAR2 := 'N'
30580: , x_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
30581: , p_deliverable_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
30582: , p_deliverable_short_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
30661: l_dlvr_id NUMBER; -- added for bug# 3749447
30662:
30663: BEGIN
30664: -- Initialize the message table if requested.
30665: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
30666: FND_MSG_PUB.initialize;
30667: END IF;
30668: ---- --dbms_output.put_line('entering pa_project_pub.Update_deliverable['||p_project_id||']['||p_task_id||']');
30669:
30667: END IF;
30668: ---- --dbms_output.put_line('entering pa_project_pub.Update_deliverable['||p_project_id||']['||p_task_id||']');
30669:
30670: -- 3735792, setting save point unconditionally
30671: --IF (p_commit = FND_API.G_TRUE) THEN
30672: savepoint UPDATE_DELIVERABLE_PUB;
30673: --END IF;
30674:
30675: IF p_debug_mode = 'Y' THEN
30700: ,p_attribute3 => ''
30701: ,p_attribute4 => ''
30702: ,p_attribute5 => '');
30703: END IF;
30704: x_return_status := FND_API.G_RET_STS_ERROR;
30705: RAISE FND_API.G_EXC_ERROR;
30706: END IF;
30707:
30708: -- Set API return status to success
30701: ,p_attribute4 => ''
30702: ,p_attribute5 => '');
30703: END IF;
30704: x_return_status := FND_API.G_RET_STS_ERROR;
30705: RAISE FND_API.G_EXC_ERROR;
30706: END IF;
30707:
30708: -- Set API return status to success
30709: x_return_status := FND_API.G_RET_STS_SUCCESS;
30705: RAISE FND_API.G_EXC_ERROR;
30706: END IF;
30707:
30708: -- Set API return status to success
30709: x_return_status := FND_API.G_RET_STS_SUCCESS;
30710:
30711: IF p_task_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
30712: l_task_id := NULL;
30713: ELSE
30733: IF p_debug_mode = 'Y' THEN
30734: pa_debug.write(g_pkg_name,'Func Security Return Status ['||x_return_status||']Func Allow['||l_function_allowed||']',3) ;
30735: END IF;
30736:
30737: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30738: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30739: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30740: RAISE FND_API.G_EXC_ERROR;
30741: END IF;
30734: pa_debug.write(g_pkg_name,'Func Security Return Status ['||x_return_status||']Func Allow['||l_function_allowed||']',3) ;
30735: END IF;
30736:
30737: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30738: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30739: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30740: RAISE FND_API.G_EXC_ERROR;
30741: END IF;
30742:
30735: END IF;
30736:
30737: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30738: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30739: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30740: RAISE FND_API.G_EXC_ERROR;
30741: END IF;
30742:
30743: IF l_function_allowed = 'N' THEN
30736:
30737: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30738: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30739: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30740: RAISE FND_API.G_EXC_ERROR;
30741: END IF;
30742:
30743: IF l_function_allowed = 'N' THEN
30744: pa_interface_utils_pub.map_new_amg_msg
30751: ,p_attribute3 => ''
30752: ,p_attribute4 => ''
30753: ,p_attribute5 => '');
30754:
30755: x_return_status := FND_API.G_RET_STS_ERROR;
30756: RAISE FND_API.G_EXC_ERROR;
30757: END IF;
30758:
30759: -- validate the input parameters.
30752: ,p_attribute4 => ''
30753: ,p_attribute5 => '');
30754:
30755: x_return_status := FND_API.G_RET_STS_ERROR;
30756: RAISE FND_API.G_EXC_ERROR;
30757: END IF;
30758:
30759: -- validate the input parameters.
30760: -- Get the task and Project details based on source reference passed
30768: IF p_debug_mode = 'Y' THEN
30769: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
30770: END IF;
30771:
30772: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30773: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30774: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30775: RAISE FND_API.G_EXC_ERROR;
30776: END IF;
30769: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
30770: END IF;
30771:
30772: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30773: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30774: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30775: RAISE FND_API.G_EXC_ERROR;
30776: END IF;
30777:
30770: END IF;
30771:
30772: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30773: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30774: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30775: RAISE FND_API.G_EXC_ERROR;
30776: END IF;
30777:
30778: -- 3749447 Changed from p_task_id to l_task_id in if conditon
30771:
30772: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30773: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30774: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30775: RAISE FND_API.G_EXC_ERROR;
30776: END IF;
30777:
30778: -- 3749447 Changed from p_task_id to l_task_id in if conditon
30779: -- also did the same change in below api's parameter passing
30790: IF p_debug_mode = 'Y' THEN
30791: pa_debug.write(g_pkg_name,'Task Ref to ID Return Status ['||x_return_status||']Task ID['||l_task_id||']',3) ;
30792: END IF;
30793:
30794: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30795: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30796: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30797: RAISE FND_API.G_EXC_ERROR;
30798: END IF;
30791: pa_debug.write(g_pkg_name,'Task Ref to ID Return Status ['||x_return_status||']Task ID['||l_task_id||']',3) ;
30792: END IF;
30793:
30794: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30795: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30796: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30797: RAISE FND_API.G_EXC_ERROR;
30798: END IF;
30799: END IF;
30792: END IF;
30793:
30794: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30795: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30796: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30797: RAISE FND_API.G_EXC_ERROR;
30798: END IF;
30799: END IF;
30800:
30793:
30794: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30795: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30796: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30797: RAISE FND_API.G_EXC_ERROR;
30798: END IF;
30799: END IF;
30800:
30801: -- Validate Deliverable reference / id- not null, unique
30810: IF p_debug_mode = 'Y' THEN
30811: pa_debug.write(g_pkg_name,'Dlvr Reference Ref to ID ['||l_deliverable_id||'] Return Status ['||x_return_status||']',3) ;
30812: END IF;
30813:
30814: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30815: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30816: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30817: RAISE FND_API.G_EXC_ERROR;
30818: END IF;
30811: pa_debug.write(g_pkg_name,'Dlvr Reference Ref to ID ['||l_deliverable_id||'] Return Status ['||x_return_status||']',3) ;
30812: END IF;
30813:
30814: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30815: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30816: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30817: RAISE FND_API.G_EXC_ERROR;
30818: END IF;
30819:
30812: END IF;
30813:
30814: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30815: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30816: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30817: RAISE FND_API.G_EXC_ERROR;
30818: END IF;
30819:
30820: OPEN C_vers(l_deliverable_id);
30813:
30814: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30815: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30816: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30817: RAISE FND_API.G_EXC_ERROR;
30818: END IF;
30819:
30820: OPEN C_vers(l_deliverable_id);
30821: FETCH C_vers INTO l_deliverable_version_id;
30831: Pa_Deliverable_Pub.Update_Deliverable
30832: ( p_api_version => p_api_version
30833: , p_init_msg_list => p_init_msg_list
30834: -- 3735792, passing p_commit as false to next level api calls
30835: , p_commit => FND_API.G_FALSE
30836: , p_validate_only => FND_API.G_FALSE
30837: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
30838: , p_calling_module => 'AMG'
30839: , p_debug_mode => p_debug_mode
30832: ( p_api_version => p_api_version
30833: , p_init_msg_list => p_init_msg_list
30834: -- 3735792, passing p_commit as false to next level api calls
30835: , p_commit => FND_API.G_FALSE
30836: , p_validate_only => FND_API.G_FALSE
30837: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
30838: , p_calling_module => 'AMG'
30839: , p_debug_mode => p_debug_mode
30840: , p_max_msg_count => NULL
30833: , p_init_msg_list => p_init_msg_list
30834: -- 3735792, passing p_commit as false to next level api calls
30835: , p_commit => FND_API.G_FALSE
30836: , p_validate_only => FND_API.G_FALSE
30837: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
30838: , p_calling_module => 'AMG'
30839: , p_debug_mode => p_debug_mode
30840: , p_max_msg_count => NULL
30841: , p_record_version_number => null
30889: pa_debug.g_err_stage := 'Pa_Deliverable_Pub.Update_Deliverable return status ['||x_return_status||']';
30890: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
30891: END IF;
30892:
30893: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30895: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30896: RAISE FND_API.G_EXC_ERROR;
30897: END IF;
30890: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
30891: END IF;
30892:
30893: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30895: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30896: RAISE FND_API.G_EXC_ERROR;
30897: END IF;
30898:
30891: END IF;
30892:
30893: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30895: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30896: RAISE FND_API.G_EXC_ERROR;
30897: END IF;
30898:
30899: -- From the action_in table, select the actions for the given deliverable.
30892:
30893: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
30894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30895: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
30896: RAISE FND_API.G_EXC_ERROR;
30897: END IF;
30898:
30899: -- From the action_in table, select the actions for the given deliverable.
30900: -- Based on action_reference / action_id identify if new action is to
30917: , p_out_deliverable_id => l_dlvr_id
30918: , p_return_status => x_return_status
30919: );
30920:
30921: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30922: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30923: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30924: RAISE FND_API.G_EXC_ERROR;
30925: END IF;
30918: , p_return_status => x_return_status
30919: );
30920:
30921: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30922: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30923: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30924: RAISE FND_API.G_EXC_ERROR;
30925: END IF;
30926:
30919: );
30920:
30921: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30922: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30923: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30924: RAISE FND_API.G_EXC_ERROR;
30925: END IF;
30926:
30927: END IF;
30920:
30921: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
30922: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
30923: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
30924: RAISE FND_API.G_EXC_ERROR;
30925: END IF;
30926:
30927: END IF;
30928:
31007:
31008: -- There are actions to be updated
31009: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
31010: ( p_api_version => p_api_version
31011: , p_init_msg_list => FND_API.G_FALSE
31012: , p_commit => FND_API.G_FALSE
31013: , p_validate_only => FND_API.G_FALSE
31014: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31015: , p_calling_module => 'AMG'
31008: -- There are actions to be updated
31009: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
31010: ( p_api_version => p_api_version
31011: , p_init_msg_list => FND_API.G_FALSE
31012: , p_commit => FND_API.G_FALSE
31013: , p_validate_only => FND_API.G_FALSE
31014: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31015: , p_calling_module => 'AMG'
31016: , p_debug_mode => p_debug_mode
31009: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
31010: ( p_api_version => p_api_version
31011: , p_init_msg_list => FND_API.G_FALSE
31012: , p_commit => FND_API.G_FALSE
31013: , p_validate_only => FND_API.G_FALSE
31014: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31015: , p_calling_module => 'AMG'
31016: , p_debug_mode => p_debug_mode
31017: , p_insert_or_update => 'UPDATE'
31010: ( p_api_version => p_api_version
31011: , p_init_msg_list => FND_API.G_FALSE
31012: , p_commit => FND_API.G_FALSE
31013: , p_validate_only => FND_API.G_FALSE
31014: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31015: , p_calling_module => 'AMG'
31016: , p_debug_mode => p_debug_mode
31017: , p_insert_or_update => 'UPDATE'
31018: , p_action_in_tbl => l_action_in_tbl_upd
31024: IF p_debug_mode = 'Y' THEN
31025: pa_debug.write(g_pkg_name,'Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper upd return status['||x_return_status||']',3) ;
31026: END IF;
31027:
31028: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31029: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31030: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31031: RAISE FND_API.G_EXC_ERROR;
31032: END IF;
31025: pa_debug.write(g_pkg_name,'Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper upd return status['||x_return_status||']',3) ;
31026: END IF;
31027:
31028: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31029: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31030: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31031: RAISE FND_API.G_EXC_ERROR;
31032: END IF;
31033:
31026: END IF;
31027:
31028: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31029: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31030: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31031: RAISE FND_API.G_EXC_ERROR;
31032: END IF;
31033:
31034: END IF; --i_actn_upd > 0
31027:
31028: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31029: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31030: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31031: RAISE FND_API.G_EXC_ERROR;
31032: END IF;
31033:
31034: END IF; --i_actn_upd > 0
31035:
31037:
31038: -- There are actions to be updated
31039: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
31040: ( p_api_version => p_api_version
31041: , p_init_msg_list => FND_API.G_FALSE
31042: , p_commit => FND_API.G_FALSE
31043: , p_validate_only => FND_API.G_FALSE
31044: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31045: , p_calling_module => 'AMG'
31038: -- There are actions to be updated
31039: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
31040: ( p_api_version => p_api_version
31041: , p_init_msg_list => FND_API.G_FALSE
31042: , p_commit => FND_API.G_FALSE
31043: , p_validate_only => FND_API.G_FALSE
31044: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31045: , p_calling_module => 'AMG'
31046: , p_debug_mode => p_debug_mode
31039: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
31040: ( p_api_version => p_api_version
31041: , p_init_msg_list => FND_API.G_FALSE
31042: , p_commit => FND_API.G_FALSE
31043: , p_validate_only => FND_API.G_FALSE
31044: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31045: , p_calling_module => 'AMG'
31046: , p_debug_mode => p_debug_mode
31047: , p_insert_or_update => 'INSERT'
31040: ( p_api_version => p_api_version
31041: , p_init_msg_list => FND_API.G_FALSE
31042: , p_commit => FND_API.G_FALSE
31043: , p_validate_only => FND_API.G_FALSE
31044: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31045: , p_calling_module => 'AMG'
31046: , p_debug_mode => p_debug_mode
31047: , p_insert_or_update => 'INSERT'
31048: , p_action_in_tbl => l_action_in_tbl_ins
31054: IF p_debug_mode = 'Y' THEN
31055: pa_debug.write(g_pkg_name,'Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper upd return status['||x_return_status||']',3) ;
31056: END IF;
31057:
31058: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31059: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31060: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31061: RAISE FND_API.G_EXC_ERROR;
31062: END IF;
31055: pa_debug.write(g_pkg_name,'Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper upd return status['||x_return_status||']',3) ;
31056: END IF;
31057:
31058: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31059: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31060: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31061: RAISE FND_API.G_EXC_ERROR;
31062: END IF;
31063:
31056: END IF;
31057:
31058: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31059: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31060: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31061: RAISE FND_API.G_EXC_ERROR;
31062: END IF;
31063:
31064: END IF; --i_actn_upd > 0
31057:
31058: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31059: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31060: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31061: RAISE FND_API.G_EXC_ERROR;
31062: END IF;
31063:
31064: END IF; --i_actn_upd > 0
31065:
31063:
31064: END IF; --i_actn_upd > 0
31065:
31066: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
31067: IF (p_commit = FND_API.G_TRUE) THEN
31068: COMMIT;
31069: END IF;
31070:
31071: IF p_debug_mode = 'Y' THEN
31073: pa_debug.write(g_pkg_name,l_api_name||': Exiting succesfully',5);
31074: END IF;
31075:
31076: EXCEPTION
31077: WHEN FND_API.G_EXC_ERROR THEN
31078: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31079: --IF (p_commit = FND_API.G_TRUE) THEN
31080: ROLLBACK TO UPDATE_DELIVERABLE_PUB;
31081: --END IF;
31075:
31076: EXCEPTION
31077: WHEN FND_API.G_EXC_ERROR THEN
31078: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31079: --IF (p_commit = FND_API.G_TRUE) THEN
31080: ROLLBACK TO UPDATE_DELIVERABLE_PUB;
31081: --END IF;
31082:
31083: IF p_debug_mode = 'Y' THEN
31083: IF p_debug_mode = 'Y' THEN
31084: pa_debug.reset_curr_function;
31085: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_ERROR exception',5);
31086: END IF;
31087: x_return_status := FND_API.G_RET_STS_ERROR;
31088: x_msg_count := FND_MSG_PUB.count_msg;
31089:
31090: IF x_msg_count = 1 THEN
31091: PA_INTERFACE_UTILS_PUB.get_messages
31088: x_msg_count := FND_MSG_PUB.count_msg;
31089:
31090: IF x_msg_count = 1 THEN
31091: PA_INTERFACE_UTILS_PUB.get_messages
31092: (p_encoded => FND_API.G_FALSE,
31093: p_msg_index => 1,
31094: p_msg_count => x_msg_count,
31095: p_msg_data => x_msg_data,
31096: p_data => l_data, -- 4537865 Changed from x_msg_data to l_data ,as it may have problem with NOCOPY
31097: p_msg_index_out => l_msg_index_out);
31098: x_msg_data := l_data ; -- 4537865
31099: END IF;
31100:
31101: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
31102: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31103: --IF (p_commit = FND_API.G_TRUE) THEN
31104: ROLLBACK TO UPDATE_DELIVERABLE_PUB;
31105: --END IF;
31099: END IF;
31100:
31101: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
31102: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31103: --IF (p_commit = FND_API.G_TRUE) THEN
31104: ROLLBACK TO UPDATE_DELIVERABLE_PUB;
31105: --END IF;
31106:
31107: IF p_debug_mode = 'Y' THEN
31107: IF p_debug_mode = 'Y' THEN
31108: pa_debug.reset_curr_function;
31109: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_UNEXPECTED_ERROR exception',5);
31110: END IF;
31111: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
31112: x_msg_count := FND_MSG_PUB.count_msg;
31113:
31114: IF x_msg_count = 1 THEN
31115: PA_INTERFACE_UTILS_PUB.get_messages
31112: x_msg_count := FND_MSG_PUB.count_msg;
31113:
31114: IF x_msg_count = 1 THEN
31115: PA_INTERFACE_UTILS_PUB.get_messages
31116: (p_encoded => FND_API.G_FALSE,
31117: p_msg_index => 1,
31118: p_msg_count => x_msg_count,
31119: p_msg_data => x_msg_data,
31120: p_data => l_data, -- 4537865 Changed from x_msg_data to l_data ,as it may have problem with NOCOPY
31123: END IF;
31124:
31125: WHEN OTHERS THEN
31126: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31127: --IF (p_commit = FND_API.G_TRUE) THEN
31128: ROLLBACK TO UPDATE_DELIVERABLE_PUB;
31129: --END IF;
31130:
31131: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
31127: --IF (p_commit = FND_API.G_TRUE) THEN
31128: ROLLBACK TO UPDATE_DELIVERABLE_PUB;
31129: --END IF;
31130:
31131: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
31132: x_msg_count := 1;
31133: x_msg_data := SQLERRM;
31134:
31135: IF p_debug_mode = 'Y' THEN
31148:
31149:
31150: PROCEDURE update_deliverable_action
31151: ( p_api_version IN NUMBER := 1.0
31152: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
31153: , p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
31154: , p_commit IN VARCHAR2 := FND_API.G_FALSE
31155: , p_action_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31156: , p_action_owner_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
31149:
31150: PROCEDURE update_deliverable_action
31151: ( p_api_version IN NUMBER := 1.0
31152: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
31153: , p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
31154: , p_commit IN VARCHAR2 := FND_API.G_FALSE
31155: , p_action_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31156: , p_action_owner_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
31157: , p_function_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31150: PROCEDURE update_deliverable_action
31151: ( p_api_version IN NUMBER := 1.0
31152: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
31153: , p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
31154: , p_commit IN VARCHAR2 := FND_API.G_FALSE
31155: , p_action_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31156: , p_action_owner_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
31157: , p_function_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31158: , p_due_date IN DATE := PA_INTERFACE_UTILS_PUB.G_PA_MISS_DATE
31256: -- Standard begin of API savepoint
31257: SAVEPOINT update_deliverable_actions_pub;
31258:
31259: -- Standard call to check for call compatibility.
31260: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
31261: p_api_version ,
31262: l_api_name ,
31263: G_PKG_NAME )
31264: THEN
31261: p_api_version ,
31262: l_api_name ,
31263: G_PKG_NAME )
31264: THEN
31265: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31266: END IF;
31267:
31268: -- Initialize the message table if requested.
31269: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
31265: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31266: END IF;
31267:
31268: -- Initialize the message table if requested.
31269: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
31270: FND_MSG_PUB.initialize;
31271: END IF;
31272:
31273: IF p_debug_mode = 'Y' THEN
31276: pa_debug.g_err_stage:= 'Inside '||l_api_name;
31277: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3) ;
31278: END IF;
31279: -- Set API return status to success
31280: x_return_status := FND_API.G_RET_STS_SUCCESS;
31281:
31282: -- Function Security Check
31283: PA_PM_FUNCTION_SECURITY_PUB.check_function_security
31284: (p_api_version_number => p_api_version,
31289: p_return_status => x_return_status,
31290: p_function_allowed => l_function_allowed);
31291:
31292:
31293: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31294: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31295: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31296: RAISE FND_API.G_EXC_ERROR;
31297: END IF;
31290: p_function_allowed => l_function_allowed);
31291:
31292:
31293: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31294: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31295: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31296: RAISE FND_API.G_EXC_ERROR;
31297: END IF;
31298:
31291:
31292:
31293: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31294: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31295: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31296: RAISE FND_API.G_EXC_ERROR;
31297: END IF;
31298:
31299: IF l_function_allowed = 'N' THEN
31292:
31293: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31294: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31295: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31296: RAISE FND_API.G_EXC_ERROR;
31297: END IF;
31298:
31299: IF l_function_allowed = 'N' THEN
31300: pa_interface_utils_pub.map_new_amg_msg
31307: ,p_attribute3 => ''
31308: ,p_attribute4 => ''
31309: ,p_attribute5 => '');
31310:
31311: x_return_status := FND_API.G_RET_STS_ERROR;
31312: RAISE FND_API.G_EXC_ERROR;
31313: END IF;
31314:
31315: -- validate the input parameters.
31308: ,p_attribute4 => ''
31309: ,p_attribute5 => '');
31310:
31311: x_return_status := FND_API.G_RET_STS_ERROR;
31312: RAISE FND_API.G_EXC_ERROR;
31313: END IF;
31314:
31315: -- validate the input parameters.
31316: -- Validate Project reference/id
31324: IF p_debug_mode = 'Y' THEN
31325: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
31326: END IF;
31327:
31328: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31329: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31330: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31331: RAISE FND_API.G_EXC_ERROR;
31332: END IF;
31325: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
31326: END IF;
31327:
31328: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31329: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31330: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31331: RAISE FND_API.G_EXC_ERROR;
31332: END IF;
31333:
31326: END IF;
31327:
31328: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31329: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31330: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31331: RAISE FND_API.G_EXC_ERROR;
31332: END IF;
31333:
31334: -- Validate Deliverable reference / ID
31327:
31328: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31329: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31330: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31331: RAISE FND_API.G_EXC_ERROR;
31332: END IF;
31333:
31334: -- Validate Deliverable reference / ID
31335: PA_Deliverable_Utils.Convert_pm_dlvrref_to_id(
31342: IF p_debug_mode = 'Y' THEN
31343: pa_debug.write(g_pkg_name,'Dlvr Reference Ref to ID Return Status ['||x_return_status,3) ;
31344: END IF;
31345:
31346: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31347: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31348: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31349: RAISE FND_API.G_EXC_ERROR;
31350: END IF;
31343: pa_debug.write(g_pkg_name,'Dlvr Reference Ref to ID Return Status ['||x_return_status,3) ;
31344: END IF;
31345:
31346: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31347: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31348: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31349: RAISE FND_API.G_EXC_ERROR;
31350: END IF;
31351:
31344: END IF;
31345:
31346: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31347: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31348: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31349: RAISE FND_API.G_EXC_ERROR;
31350: END IF;
31351:
31352:
31345:
31346: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31347: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31348: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31349: RAISE FND_API.G_EXC_ERROR;
31350: END IF;
31351:
31352:
31353: -- 3729250 Validate Deliverable Action reference / ID
31362: IF p_debug_mode = 'Y' THEN
31363: pa_debug.write(g_pkg_name,'Convert_pm_actionref_to_id Return Status ['||x_return_status,3) ;
31364: END IF;
31365:
31366: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31367: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31368: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31369: RAISE FND_API.G_EXC_ERROR;
31370: END IF;
31363: pa_debug.write(g_pkg_name,'Convert_pm_actionref_to_id Return Status ['||x_return_status,3) ;
31364: END IF;
31365:
31366: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31367: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31368: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31369: RAISE FND_API.G_EXC_ERROR;
31370: END IF;
31371:
31364: END IF;
31365:
31366: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31367: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31368: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31369: RAISE FND_API.G_EXC_ERROR;
31370: END IF;
31371:
31372: -- 3729250, Validate Financial Task Reference / ID
31365:
31366: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31367: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31368: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31369: RAISE FND_API.G_EXC_ERROR;
31370: END IF;
31371:
31372: -- 3729250, Validate Financial Task Reference / ID
31373: -- PA_PROJECT_PVT.Convert_pm_taskref_to_id_all should only be called if either p_financial_task_id or
31382: , p_pm_task_reference => p_financial_task_reference
31383: , p_out_task_id => l_fin_task_id
31384: , p_return_status => x_return_status );
31385:
31386: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31387: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31388: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31389: RAISE FND_API.G_EXC_ERROR;
31390: END IF;
31383: , p_out_task_id => l_fin_task_id
31384: , p_return_status => x_return_status );
31385:
31386: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31387: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31388: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31389: RAISE FND_API.G_EXC_ERROR;
31390: END IF;
31391: END IF;
31384: , p_return_status => x_return_status );
31385:
31386: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31387: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31388: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31389: RAISE FND_API.G_EXC_ERROR;
31390: END IF;
31391: END IF;
31392:
31385:
31386: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31387: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31388: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31389: RAISE FND_API.G_EXC_ERROR;
31390: END IF;
31391: END IF;
31392:
31393: -- Populate the table with input parameters
31463:
31464: -- Call api to update actions passing the newly populated plsql table
31465: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
31466: ( p_api_version => p_api_version
31467: , p_init_msg_list => FND_API.G_FALSE
31468: , p_commit => FND_API.G_FALSE
31469: , p_validate_only => FND_API.G_FALSE
31470: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31471: , p_calling_module => 'AMG'
31464: -- Call api to update actions passing the newly populated plsql table
31465: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
31466: ( p_api_version => p_api_version
31467: , p_init_msg_list => FND_API.G_FALSE
31468: , p_commit => FND_API.G_FALSE
31469: , p_validate_only => FND_API.G_FALSE
31470: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31471: , p_calling_module => 'AMG'
31472: , p_debug_mode => p_debug_mode
31465: Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper
31466: ( p_api_version => p_api_version
31467: , p_init_msg_list => FND_API.G_FALSE
31468: , p_commit => FND_API.G_FALSE
31469: , p_validate_only => FND_API.G_FALSE
31470: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31471: , p_calling_module => 'AMG'
31472: , p_debug_mode => p_debug_mode
31473: , p_insert_or_update => 'UPDATE'
31466: ( p_api_version => p_api_version
31467: , p_init_msg_list => FND_API.G_FALSE
31468: , p_commit => FND_API.G_FALSE
31469: , p_validate_only => FND_API.G_FALSE
31470: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
31471: , p_calling_module => 'AMG'
31472: , p_debug_mode => p_debug_mode
31473: , p_insert_or_update => 'UPDATE'
31474: , p_action_in_tbl => l_action_in_tbl
31478: , x_msg_data => l_msg_data);
31479:
31480: -- 3749474 added code to check for return status
31481:
31482: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31483: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31484: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31485: RAISE FND_API.G_EXC_ERROR;
31486: END IF;
31479:
31480: -- 3749474 added code to check for return status
31481:
31482: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31483: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31484: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31485: RAISE FND_API.G_EXC_ERROR;
31486: END IF;
31487:
31480: -- 3749474 added code to check for return status
31481:
31482: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31483: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31484: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31485: RAISE FND_API.G_EXC_ERROR;
31486: END IF;
31487:
31488: ---- --dbms_output.put_line('after Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper'||x_return_status);
31481:
31482: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31483: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31484: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31485: RAISE FND_API.G_EXC_ERROR;
31486: END IF;
31487:
31488: ---- --dbms_output.put_line('after Pa_Actions_Pub.Create_Dlvr_Actions_Wrapper'||x_return_status);
31489: i := l_action_out_tbl.first();
31493: i := l_action_out_tbl.next(i);
31494: END LOOP;
31495:
31496: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
31497: IF (p_commit = FND_API.G_TRUE) THEN
31498: COMMIT;
31499: END IF;
31500:
31501: IF p_debug_mode = 'Y' THEN
31503: pa_debug.write(g_pkg_name,l_api_name||': Exiting succesfully',5);
31504: END IF;
31505:
31506: EXCEPTION
31507: WHEN FND_API.G_EXC_ERROR THEN
31508: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31509: --IF (p_commit = FND_API.G_TRUE) THEN
31510: ROLLBACK TO update_deliverable_actions_pub;
31511: --END IF;
31505:
31506: EXCEPTION
31507: WHEN FND_API.G_EXC_ERROR THEN
31508: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31509: --IF (p_commit = FND_API.G_TRUE) THEN
31510: ROLLBACK TO update_deliverable_actions_pub;
31511: --END IF;
31512:
31513: IF p_debug_mode = 'Y' THEN
31513: IF p_debug_mode = 'Y' THEN
31514: pa_debug.reset_curr_function;
31515: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_ERROR exception',5);
31516: END IF;
31517: x_return_status := FND_API.G_RET_STS_ERROR;
31518: x_msg_count := FND_MSG_PUB.count_msg;
31519:
31520: IF x_msg_count = 1 THEN
31521: PA_INTERFACE_UTILS_PUB.get_messages
31518: x_msg_count := FND_MSG_PUB.count_msg;
31519:
31520: IF x_msg_count = 1 THEN
31521: PA_INTERFACE_UTILS_PUB.get_messages
31522: (p_encoded => FND_API.G_FALSE,
31523: p_msg_index => 1,
31524: p_msg_count => x_msg_count,
31525: p_msg_data => x_msg_data,
31526: p_data => l_data, --4537865 Changed from x_msg_data to l_data ,as it may have problem with NOCOPY
31527: p_msg_index_out => l_msg_index_out);
31528: x_msg_data := l_data ; -- 4537865
31529: END IF;
31530:
31531: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
31532: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31533: --IF (p_commit = FND_API.G_TRUE) THEN
31534: ROLLBACK TO update_deliverable_actions_pub;
31535: --END IF;
31529: END IF;
31530:
31531: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
31532: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31533: --IF (p_commit = FND_API.G_TRUE) THEN
31534: ROLLBACK TO update_deliverable_actions_pub;
31535: --END IF;
31536:
31537: IF p_debug_mode = 'Y' THEN
31537: IF p_debug_mode = 'Y' THEN
31538: pa_debug.reset_curr_function;
31539: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_UNEXPECTED_ERROR exception',5);
31540: END IF;
31541: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
31542: x_msg_count := FND_MSG_PUB.count_msg;
31543:
31544: IF x_msg_count = 1 THEN
31545: PA_INTERFACE_UTILS_PUB.get_messages
31542: x_msg_count := FND_MSG_PUB.count_msg;
31543:
31544: IF x_msg_count = 1 THEN
31545: PA_INTERFACE_UTILS_PUB.get_messages
31546: (p_encoded => FND_API.G_FALSE,
31547: p_msg_index => 1,
31548: p_msg_count => x_msg_count,
31549: p_msg_data => x_msg_data,
31550: p_data => l_data,-- 4537865 Changed from x_msg_data to l_data ,as it may have problem with NOCOPY
31553: END IF;
31554:
31555: WHEN OTHERS THEN
31556: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31557: -- IF (p_commit = FND_API.G_TRUE) THEN
31558: ROLLBACK TO update_deliverable_actions_pub;
31559: -- END IF;
31560:
31561: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
31557: -- IF (p_commit = FND_API.G_TRUE) THEN
31558: ROLLBACK TO update_deliverable_actions_pub;
31559: -- END IF;
31560:
31561: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
31562: x_msg_count := 1;
31563: x_msg_data := SQLERRM;
31564:
31565: IF p_debug_mode = 'Y' THEN
31583: -- Assumptions : None
31584:
31585: Procedure Delete_Deliverables (
31586: p_api_version IN NUMBER := 1.0
31587: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
31588: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
31589: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31590: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31591: ,p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
31584:
31585: Procedure Delete_Deliverables (
31586: p_api_version IN NUMBER := 1.0
31587: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
31588: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
31589: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31590: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31591: ,p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
31592: --for bug# 3729250
31611:
31612:
31613: BEGIN
31614: -- Initialize the message table if requested.
31615: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
31616: FND_MSG_PUB.initialize;
31617: END IF;
31618:
31619: -- 3735792, setting save point unconditionally
31616: FND_MSG_PUB.initialize;
31617: END IF;
31618:
31619: -- 3735792, setting save point unconditionally
31620: --IF (p_commit = FND_API.G_TRUE) THEN
31621: savepoint DELETE_DELIVERABLE_PUB;
31622: --END IF;
31623:
31624: IF l_debug_mode = 'Y' THEN
31628: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3) ;
31629: END IF;
31630:
31631: -- Set API return status to success
31632: x_return_status := FND_API.G_RET_STS_SUCCESS;
31633:
31634: -- Function Security Check
31635: PA_PM_FUNCTION_SECURITY_PUB.check_function_security
31636: (p_api_version_number => p_api_version,
31644: IF l_debug_mode = 'Y' THEN
31645: pa_debug.write(g_pkg_name,'Func Security Return Status ['||x_return_status||']Func Allow['||l_function_allowed||']',3) ;
31646: END IF;
31647:
31648: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31649: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31650: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31651: RAISE FND_API.G_EXC_ERROR;
31652: END IF;
31645: pa_debug.write(g_pkg_name,'Func Security Return Status ['||x_return_status||']Func Allow['||l_function_allowed||']',3) ;
31646: END IF;
31647:
31648: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31649: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31650: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31651: RAISE FND_API.G_EXC_ERROR;
31652: END IF;
31653:
31646: END IF;
31647:
31648: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31649: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31650: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31651: RAISE FND_API.G_EXC_ERROR;
31652: END IF;
31653:
31654: IF l_function_allowed = 'N' THEN
31647:
31648: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31649: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31650: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31651: RAISE FND_API.G_EXC_ERROR;
31652: END IF;
31653:
31654: IF l_function_allowed = 'N' THEN
31655: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
31653:
31654: IF l_function_allowed = 'N' THEN
31655: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
31656: ,p_msg_name => 'PA_FUNCTION_SECURITY_ENFORCED');
31657: x_return_status := FND_API.G_RET_STS_ERROR;
31658: RAISE FND_API.G_EXC_ERROR;
31659: END IF;
31660:
31661: -- validate the input parameters.
31654: IF l_function_allowed = 'N' THEN
31655: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
31656: ,p_msg_name => 'PA_FUNCTION_SECURITY_ENFORCED');
31657: x_return_status := FND_API.G_RET_STS_ERROR;
31658: RAISE FND_API.G_EXC_ERROR;
31659: END IF;
31660:
31661: -- validate the input parameters.
31662: -- Validate Project Reference / ID
31670: IF l_debug_mode = 'Y' THEN
31671: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
31672: END IF;
31673:
31674: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31675: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31676: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31677: RAISE FND_API.G_EXC_ERROR;
31678: END IF;
31671: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
31672: END IF;
31673:
31674: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31675: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31676: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31677: RAISE FND_API.G_EXC_ERROR;
31678: END IF;
31679:
31672: END IF;
31673:
31674: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31675: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31676: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31677: RAISE FND_API.G_EXC_ERROR;
31678: END IF;
31679:
31680: -- Validate Deliverable Reference / ID
31673:
31674: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31675: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31676: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31677: RAISE FND_API.G_EXC_ERROR;
31678: END IF;
31679:
31680: -- Validate Deliverable Reference / ID
31681: Pa_Deliverable_Utils.Convert_pm_dlvrref_to_id
31690: IF l_debug_mode = 'Y' THEN
31691: pa_debug.write(g_pkg_name,'Dlvr Reference Valid Return Status ['||x_return_status||']Dlvr ID['||l_deliverable_id||']',3) ;
31692: END IF;
31693:
31694: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31695: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31696: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31697: RAISE FND_API.G_EXC_ERROR;
31698: END IF;
31691: pa_debug.write(g_pkg_name,'Dlvr Reference Valid Return Status ['||x_return_status||']Dlvr ID['||l_deliverable_id||']',3) ;
31692: END IF;
31693:
31694: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31695: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31696: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31697: RAISE FND_API.G_EXC_ERROR;
31698: END IF;
31699:
31692: END IF;
31693:
31694: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31695: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31696: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31697: RAISE FND_API.G_EXC_ERROR;
31698: END IF;
31699:
31700: -- Derive deliverable version ID and call api Delete Deliverable. It
31693:
31694: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31695: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31696: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31697: RAISE FND_API.G_EXC_ERROR;
31698: END IF;
31699:
31700: -- Derive deliverable version ID and call api Delete Deliverable. It
31701: l_dlvr_version_id := Pa_Deliverable_Utils.Get_Deliverable_Version_Id (l_deliverable_id, null, l_project_id) ;
31708: IF ( l_dlvr_version_id IS NOT NULL )
31709: THEN
31710: pa_deliverable_pvt.delete_deliverable
31711: (p_api_version => p_api_version
31712: ,p_init_msg_list => FND_API.G_FALSE
31713: -- 3735792, passing p_commit as false to next level api calls
31714: ,p_commit => FND_API.G_FALSE
31715: ,p_validate_only => FND_API.G_FALSE
31716: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
31710: pa_deliverable_pvt.delete_deliverable
31711: (p_api_version => p_api_version
31712: ,p_init_msg_list => FND_API.G_FALSE
31713: -- 3735792, passing p_commit as false to next level api calls
31714: ,p_commit => FND_API.G_FALSE
31715: ,p_validate_only => FND_API.G_FALSE
31716: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
31717: ,p_calling_module => 'AMG'
31718: ,p_debug_mode => l_debug_mode
31711: (p_api_version => p_api_version
31712: ,p_init_msg_list => FND_API.G_FALSE
31713: -- 3735792, passing p_commit as false to next level api calls
31714: ,p_commit => FND_API.G_FALSE
31715: ,p_validate_only => FND_API.G_FALSE
31716: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
31717: ,p_calling_module => 'AMG'
31718: ,p_debug_mode => l_debug_mode
31719: ,p_max_msg_count => null
31712: ,p_init_msg_list => FND_API.G_FALSE
31713: -- 3735792, passing p_commit as false to next level api calls
31714: ,p_commit => FND_API.G_FALSE
31715: ,p_validate_only => FND_API.G_FALSE
31716: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
31717: ,p_calling_module => 'AMG'
31718: ,p_debug_mode => l_debug_mode
31719: ,p_max_msg_count => null
31720: ,p_dlv_element_id => l_deliverable_id
31728: IF l_debug_mode = 'Y' THEN
31729: pa_debug.write(g_pkg_name,' after pa_deliverable_pvt.delete_deliverable ['||x_return_status||']',3) ;
31730: END IF;
31731:
31732: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31733: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31734: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31735: RAISE FND_API.G_EXC_ERROR;
31736: END IF;
31729: pa_debug.write(g_pkg_name,' after pa_deliverable_pvt.delete_deliverable ['||x_return_status||']',3) ;
31730: END IF;
31731:
31732: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31733: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31734: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31735: RAISE FND_API.G_EXC_ERROR;
31736: END IF;
31737:
31730: END IF;
31731:
31732: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31733: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31734: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31735: RAISE FND_API.G_EXC_ERROR;
31736: END IF;
31737:
31738: END IF;
31731:
31732: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31733: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31734: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31735: RAISE FND_API.G_EXC_ERROR;
31736: END IF;
31737:
31738: END IF;
31739:
31737:
31738: END IF;
31739:
31740: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
31741: IF (p_commit = FND_API.G_TRUE) THEN
31742: COMMIT;
31743: END IF;
31744:
31745: IF l_debug_mode = 'Y' THEN
31747: pa_debug.write(g_pkg_name,l_api_name||': Exiting succesfully',5);
31748: END IF;
31749:
31750: EXCEPTION
31751: WHEN FND_API.G_EXC_ERROR THEN
31752: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31753: --IF (p_commit = FND_API.G_TRUE) THEN
31754: ROLLBACK TO DELETE_DELIVERABLE_PUB;
31755: --END IF;
31749:
31750: EXCEPTION
31751: WHEN FND_API.G_EXC_ERROR THEN
31752: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31753: --IF (p_commit = FND_API.G_TRUE) THEN
31754: ROLLBACK TO DELETE_DELIVERABLE_PUB;
31755: --END IF;
31756:
31757: x_return_status := FND_API.G_RET_STS_ERROR;
31753: --IF (p_commit = FND_API.G_TRUE) THEN
31754: ROLLBACK TO DELETE_DELIVERABLE_PUB;
31755: --END IF;
31756:
31757: x_return_status := FND_API.G_RET_STS_ERROR;
31758: l_msg_count := FND_MSG_PUB.count_msg;
31759:
31760: IF l_msg_count = 1 AND x_msg_data IS NULL
31761: THEN
31759:
31760: IF l_msg_count = 1 AND x_msg_data IS NULL
31761: THEN
31762: PA_INTERFACE_UTILS_PUB.get_messages
31763: (p_encoded => FND_API.G_FALSE,
31764: p_msg_index => 1,
31765: p_msg_count => x_msg_count,
31766: p_msg_data => l_msg_data,
31767: p_data => l_data,
31778: pa_debug.reset_curr_function;
31779: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_ERROR exception',5);
31780: END IF;
31781:
31782: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
31783: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31784: --IF (p_commit = FND_API.G_TRUE) THEN
31785: ROLLBACK TO DELETE_DELIVERABLE_PUB;
31786: --END IF;
31780: END IF;
31781:
31782: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
31783: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31784: --IF (p_commit = FND_API.G_TRUE) THEN
31785: ROLLBACK TO DELETE_DELIVERABLE_PUB;
31786: --END IF;
31787:
31788: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
31784: --IF (p_commit = FND_API.G_TRUE) THEN
31785: ROLLBACK TO DELETE_DELIVERABLE_PUB;
31786: --END IF;
31787:
31788: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
31789: l_msg_count := FND_MSG_PUB.count_msg;
31790:
31791: IF l_msg_count = 1 AND x_msg_data IS NULL
31792: THEN
31790:
31791: IF l_msg_count = 1 AND x_msg_data IS NULL
31792: THEN
31793: PA_INTERFACE_UTILS_PUB.get_messages
31794: (p_encoded => FND_API.G_FALSE,
31795: p_msg_index => 1,
31796: p_msg_count => x_msg_count,
31797: p_msg_data => l_msg_data,
31798: p_data => l_data,
31810: END IF;
31811:
31812: WHEN OTHERS THEN
31813: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
31814: --IF (p_commit = FND_API.G_TRUE) THEN
31815: ROLLBACK TO DELETE_DELIVERABLE_PUB;
31816: --END IF;
31817:
31818: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
31814: --IF (p_commit = FND_API.G_TRUE) THEN
31815: ROLLBACK TO DELETE_DELIVERABLE_PUB;
31816: --END IF;
31817:
31818: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
31819: x_msg_count := 1;
31820: x_msg_data := SQLERRM;
31821:
31822: IF l_debug_mode = 'Y' THEN
31839: -- Assumptions : None
31840:
31841: PROCEDURE delete_deliverable_actions
31842: ( p_api_version IN NUMBER := 1.0 -- 3749480 earlier defaulted with G_PA_MISS_NUM ; Bug#3451073 Removed Quotes
31843: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
31844: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
31845: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31846: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31847: ,p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
31840:
31841: PROCEDURE delete_deliverable_actions
31842: ( p_api_version IN NUMBER := 1.0 -- 3749480 earlier defaulted with G_PA_MISS_NUM ; Bug#3451073 Removed Quotes
31843: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
31844: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
31845: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31846: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
31847: ,p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
31848: -- for bug# 3729250 , changed datatype from NUMBER TO VARCHAR2
31876: l_msg_data VARCHAR2(2000);
31877:
31878: BEGIN
31879: -- Initialize the message table if requested.
31880: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
31881: FND_MSG_PUB.initialize;
31882: END IF;
31883:
31884: -- 3735792, setting save point unconditionally
31881: FND_MSG_PUB.initialize;
31882: END IF;
31883:
31884: -- 3735792, setting save point unconditionally
31885: --IF (p_commit = FND_API.G_TRUE) THEN
31886: savepoint DELETE_DELIVERABLE_ACTION_PUB;
31887: --END IF;
31888:
31889: IF l_debug_mode = 'Y' THEN
31892: pa_debug.g_err_stage:= 'Inside '||l_api_name;
31893: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3) ;
31894: END IF;
31895: -- Set API return status to success
31896: x_return_status := FND_API.G_RET_STS_SUCCESS;
31897:
31898: -- Function Security Check
31899: PA_PM_FUNCTION_SECURITY_PUB.check_function_security
31900: (p_api_version_number => p_api_version,
31908: IF l_debug_mode = 'Y' THEN
31909: pa_debug.write(g_pkg_name,'Func Security Return Status ['||x_return_status||']Func Allow['||l_function_allowed||']',3) ;
31910: END IF;
31911:
31912: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31913: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31914: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31915: RAISE FND_API.G_EXC_ERROR;
31916: END IF;
31909: pa_debug.write(g_pkg_name,'Func Security Return Status ['||x_return_status||']Func Allow['||l_function_allowed||']',3) ;
31910: END IF;
31911:
31912: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31913: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31914: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31915: RAISE FND_API.G_EXC_ERROR;
31916: END IF;
31917:
31910: END IF;
31911:
31912: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31913: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31914: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31915: RAISE FND_API.G_EXC_ERROR;
31916: END IF;
31917:
31918: IF l_function_allowed = 'N' THEN
31911:
31912: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31913: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31914: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31915: RAISE FND_API.G_EXC_ERROR;
31916: END IF;
31917:
31918: IF l_function_allowed = 'N' THEN
31919: pa_interface_utils_pub.map_new_amg_msg
31926: ,p_attribute3 => ''
31927: ,p_attribute4 => ''
31928: ,p_attribute5 => '');
31929:
31930: x_return_status := FND_API.G_RET_STS_ERROR;
31931: RAISE FND_API.G_EXC_ERROR;
31932: END IF;
31933:
31934: -- validate the input parameters.
31927: ,p_attribute4 => ''
31928: ,p_attribute5 => '');
31929:
31930: x_return_status := FND_API.G_RET_STS_ERROR;
31931: RAISE FND_API.G_EXC_ERROR;
31932: END IF;
31933:
31934: -- validate the input parameters.
31935: -- Validate Project Reference / ID
31943: IF l_debug_mode = 'Y' THEN
31944: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
31945: END IF;
31946:
31947: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31949: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31950: RAISE FND_API.G_EXC_ERROR;
31951: END IF;
31944: pa_debug.write(g_pkg_name,'Proj Ref to ID Return Status ['||x_return_status||']Proj ID['||l_project_id||']',3) ;
31945: END IF;
31946:
31947: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31949: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31950: RAISE FND_API.G_EXC_ERROR;
31951: END IF;
31952:
31945: END IF;
31946:
31947: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31949: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31950: RAISE FND_API.G_EXC_ERROR;
31951: END IF;
31952:
31953: -- Validate Deliverable Reference / ID
31946:
31947: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
31948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31949: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
31950: RAISE FND_API.G_EXC_ERROR;
31951: END IF;
31952:
31953: -- Validate Deliverable Reference / ID
31954: Pa_Deliverable_Utils.Convert_pm_dlvrref_to_id
31962: IF l_debug_mode = 'Y' THEN
31963: pa_debug.write(g_pkg_name,'Dlvr Reference Valid Return Status ['||x_return_status||']Dlvr ID['||l_deliverable_id||']',3) ;
31964: END IF;
31965:
31966: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31967: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31968: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31969: RAISE FND_API.G_EXC_ERROR;
31970: END IF;
31963: pa_debug.write(g_pkg_name,'Dlvr Reference Valid Return Status ['||x_return_status||']Dlvr ID['||l_deliverable_id||']',3) ;
31964: END IF;
31965:
31966: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31967: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31968: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31969: RAISE FND_API.G_EXC_ERROR;
31970: END IF;
31971:
31964: END IF;
31965:
31966: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31967: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31968: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31969: RAISE FND_API.G_EXC_ERROR;
31970: END IF;
31971:
31972: -- Validate Action Reference / ID
31965:
31966: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31967: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31968: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31969: RAISE FND_API.G_EXC_ERROR;
31970: END IF;
31971:
31972: -- Validate Action Reference / ID
31973: Pa_Deliverable_Utils.Convert_pm_actionref_to_id
31983: IF l_debug_mode = 'Y' THEN
31984: pa_debug.write(g_pkg_name,'Dlvr Action Reference Valid Return Status ['||x_return_status||']Action ID['||l_action_id||']',3) ;
31985: END IF;
31986:
31987: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31988: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31989: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31990: RAISE FND_API.G_EXC_ERROR;
31991: END IF;
31984: pa_debug.write(g_pkg_name,'Dlvr Action Reference Valid Return Status ['||x_return_status||']Action ID['||l_action_id||']',3) ;
31985: END IF;
31986:
31987: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31988: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31989: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31990: RAISE FND_API.G_EXC_ERROR;
31991: END IF;
31992:
31985: END IF;
31986:
31987: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31988: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31989: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31990: RAISE FND_API.G_EXC_ERROR;
31991: END IF;
31992:
31993: -- Derive Deliverable_version_id
31986:
31987: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
31988: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
31989: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
31990: RAISE FND_API.G_EXC_ERROR;
31991: END IF;
31992:
31993: -- Derive Deliverable_version_id
31994: l_dlvr_version_id := Pa_Deliverable_Utils.Get_Deliverable_Version_Id (l_deliverable_id, null, l_project_id) ;
32008: -- Calling Actions API to delete actions.
32009:
32010: pa_actions_pvt.DELETE_DLV_ACTION
32011: (p_api_version => p_api_version
32012: ,p_init_msg_list => FND_API.G_FALSE
32013: ,p_commit => FND_API.G_FALSE
32014: ,p_validate_only => FND_API.G_FALSE
32015: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32016: ,p_calling_module => 'AMG'
32009:
32010: pa_actions_pvt.DELETE_DLV_ACTION
32011: (p_api_version => p_api_version
32012: ,p_init_msg_list => FND_API.G_FALSE
32013: ,p_commit => FND_API.G_FALSE
32014: ,p_validate_only => FND_API.G_FALSE
32015: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32016: ,p_calling_module => 'AMG'
32017: ,p_debug_mode => l_debug_mode
32010: pa_actions_pvt.DELETE_DLV_ACTION
32011: (p_api_version => p_api_version
32012: ,p_init_msg_list => FND_API.G_FALSE
32013: ,p_commit => FND_API.G_FALSE
32014: ,p_validate_only => FND_API.G_FALSE
32015: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32016: ,p_calling_module => 'AMG'
32017: ,p_debug_mode => l_debug_mode
32018: ,p_max_msg_count => null
32011: (p_api_version => p_api_version
32012: ,p_init_msg_list => FND_API.G_FALSE
32013: ,p_commit => FND_API.G_FALSE
32014: ,p_validate_only => FND_API.G_FALSE
32015: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32016: ,p_calling_module => 'AMG'
32017: ,p_debug_mode => l_debug_mode
32018: ,p_max_msg_count => null
32019: ,p_action_id => l_action_id
32030: IF l_debug_mode = 'Y' THEN
32031: pa_debug.write(g_pkg_name,' after pa_actions_pvt.DELETE_DLV_ACTION ['||x_return_status||']',3) ;
32032: END IF;
32033:
32034: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32035: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32036: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32037: RAISE FND_API.G_EXC_ERROR;
32038: END IF;
32031: pa_debug.write(g_pkg_name,' after pa_actions_pvt.DELETE_DLV_ACTION ['||x_return_status||']',3) ;
32032: END IF;
32033:
32034: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32035: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32036: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32037: RAISE FND_API.G_EXC_ERROR;
32038: END IF;
32039:
32032: END IF;
32033:
32034: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32035: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32036: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32037: RAISE FND_API.G_EXC_ERROR;
32038: END IF;
32039:
32040: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32033:
32034: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32035: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32036: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32037: RAISE FND_API.G_EXC_ERROR;
32038: END IF;
32039:
32040: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32041: IF (p_commit = FND_API.G_TRUE) THEN
32037: RAISE FND_API.G_EXC_ERROR;
32038: END IF;
32039:
32040: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32041: IF (p_commit = FND_API.G_TRUE) THEN
32042: COMMIT;
32043: END IF;
32044:
32045: IF l_debug_mode = 'Y' THEN
32047: pa_debug.write(g_pkg_name,l_api_name||': Exiting succesfully',5);
32048: END IF;
32049:
32050: EXCEPTION
32051: WHEN FND_API.G_EXC_ERROR THEN
32052: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32053: --IF (p_commit = FND_API.G_TRUE) THEN
32054: ROLLBACK TO DELETE_DELIVERABLE_ACTION_PUB;
32055: --END IF;
32049:
32050: EXCEPTION
32051: WHEN FND_API.G_EXC_ERROR THEN
32052: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32053: --IF (p_commit = FND_API.G_TRUE) THEN
32054: ROLLBACK TO DELETE_DELIVERABLE_ACTION_PUB;
32055: --END IF;
32056:
32057: x_return_status := FND_API.G_RET_STS_ERROR;
32053: --IF (p_commit = FND_API.G_TRUE) THEN
32054: ROLLBACK TO DELETE_DELIVERABLE_ACTION_PUB;
32055: --END IF;
32056:
32057: x_return_status := FND_API.G_RET_STS_ERROR;
32058: l_msg_count := FND_MSG_PUB.count_msg;
32059:
32060: IF l_msg_count = 1 AND x_msg_data IS NULL
32061: THEN
32059:
32060: IF l_msg_count = 1 AND x_msg_data IS NULL
32061: THEN
32062: PA_INTERFACE_UTILS_PUB.get_messages
32063: (p_encoded => FND_API.G_FALSE,
32064: p_msg_index => 1,
32065: p_msg_count => x_msg_count,
32066: p_msg_data => l_msg_data,
32067: p_data => l_data,
32078: pa_debug.reset_curr_function;
32079: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_ERROR exception',5);
32080: END IF;
32081:
32082: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
32083: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32084: --IF (p_commit = FND_API.G_TRUE) THEN
32085: ROLLBACK TO DELETE_DELIVERABLE_ACTION_PUB;
32086: --END IF;
32080: END IF;
32081:
32082: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
32083: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32084: --IF (p_commit = FND_API.G_TRUE) THEN
32085: ROLLBACK TO DELETE_DELIVERABLE_ACTION_PUB;
32086: --END IF;
32087:
32088: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32084: --IF (p_commit = FND_API.G_TRUE) THEN
32085: ROLLBACK TO DELETE_DELIVERABLE_ACTION_PUB;
32086: --END IF;
32087:
32088: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32089: l_msg_count := FND_MSG_PUB.count_msg;
32090:
32091: IF l_msg_count = 1 AND x_msg_data IS NULL
32092: THEN
32090:
32091: IF l_msg_count = 1 AND x_msg_data IS NULL
32092: THEN
32093: PA_INTERFACE_UTILS_PUB.get_messages
32094: (p_encoded => FND_API.G_FALSE,
32095: p_msg_index => 1,
32096: p_msg_count => x_msg_count,
32097: p_msg_data => l_msg_data,
32098: p_data => l_data,
32111: END IF;
32112:
32113: WHEN OTHERS THEN
32114: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32115: --IF (p_commit = FND_API.G_TRUE) THEN
32116: ROLLBACK TO DELETE_DELIVERABLE_ACTION_PUB;
32117: --END IF;
32118:
32119: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32115: --IF (p_commit = FND_API.G_TRUE) THEN
32116: ROLLBACK TO DELETE_DELIVERABLE_ACTION_PUB;
32117: --END IF;
32118:
32119: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32120: x_msg_count := 1;
32121: x_msg_data := SQLERRM;
32122:
32123: IF l_debug_mode = 'Y' THEN
32140: -- Assumptions : None
32141:
32142: Procedure DELETE_DLV_TO_TASK_ASSCN (
32143: p_api_version IN NUMBER := 1.0
32144: ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
32145: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
32146: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32147: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32148: ,p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
32141:
32142: Procedure DELETE_DLV_TO_TASK_ASSCN (
32143: p_api_version IN NUMBER := 1.0
32144: ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
32145: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
32146: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32147: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32148: ,p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
32149: ,p_task_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32176:
32177: BEGIN
32178:
32179: -- Initialize the message table if requested.
32180: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
32181: FND_MSG_PUB.initialize;
32182: END IF;
32183:
32184: -- 3735792, setting save point unconditionally
32181: FND_MSG_PUB.initialize;
32182: END IF;
32183:
32184: -- 3735792, setting save point unconditionally
32185: --IF (p_commit = FND_API.G_TRUE) THEN
32186: savepoint DELETE_DLV_TO_TASK_ASSCN_PUB;
32187: --END IF;
32188:
32189: IF l_debug_mode = 'Y' THEN
32193: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3) ;
32194: END IF;
32195:
32196: -- Set API return status to success
32197: x_return_status := FND_API.G_RET_STS_SUCCESS;
32198:
32199: -- Function Security Check
32200: PA_PM_FUNCTION_SECURITY_PUB.check_function_security
32201: (p_api_version_number => p_api_version,
32206: p_return_status => x_return_status,
32207: p_function_allowed => l_function_allowed);
32208:
32209:
32210: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32211: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32212: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32213: RAISE FND_API.G_EXC_ERROR;
32214: END IF;
32207: p_function_allowed => l_function_allowed);
32208:
32209:
32210: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32211: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32212: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32213: RAISE FND_API.G_EXC_ERROR;
32214: END IF;
32215:
32208:
32209:
32210: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32211: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32212: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32213: RAISE FND_API.G_EXC_ERROR;
32214: END IF;
32215:
32216: IF l_function_allowed = 'N' THEN
32209:
32210: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32211: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32212: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32213: RAISE FND_API.G_EXC_ERROR;
32214: END IF;
32215:
32216: IF l_function_allowed = 'N' THEN
32217: pa_interface_utils_pub.map_new_amg_msg
32224: ,p_attribute3 => ''
32225: ,p_attribute4 => ''
32226: ,p_attribute5 => '');
32227:
32228: x_return_status := FND_API.G_RET_STS_ERROR;
32229: RAISE FND_API.G_EXC_ERROR;
32230: END IF;
32231:
32232: -- validate the input parameters.
32225: ,p_attribute4 => ''
32226: ,p_attribute5 => '');
32227:
32228: x_return_status := FND_API.G_RET_STS_ERROR;
32229: RAISE FND_API.G_EXC_ERROR;
32230: END IF;
32231:
32232: -- validate the input parameters.
32233: -- Validate Project Reference / ID
32237: , p_out_project_id => l_project_id
32238: , p_return_status => x_return_status
32239: );
32240:
32241: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32242: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32243: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32244: RAISE FND_API.G_EXC_ERROR;
32245: END IF;
32238: , p_return_status => x_return_status
32239: );
32240:
32241: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32242: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32243: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32244: RAISE FND_API.G_EXC_ERROR;
32245: END IF;
32246:
32239: );
32240:
32241: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32242: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32243: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32244: RAISE FND_API.G_EXC_ERROR;
32245: END IF;
32246:
32247: -- Validate Deliverable Reference / ID
32240:
32241: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32242: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32243: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32244: RAISE FND_API.G_EXC_ERROR;
32245: END IF;
32246:
32247: -- Validate Deliverable Reference / ID
32248: Pa_Deliverable_Utils.Convert_pm_dlvrref_to_id
32252: , p_out_deliverable_id => l_deliverable_id
32253: , p_return_status => x_return_status
32254: );
32255:
32256: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32257: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32258: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32259: RAISE FND_API.G_EXC_ERROR;
32260: END IF;
32253: , p_return_status => x_return_status
32254: );
32255:
32256: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32257: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32258: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32259: RAISE FND_API.G_EXC_ERROR;
32260: END IF;
32261:
32254: );
32255:
32256: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32257: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32258: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32259: RAISE FND_API.G_EXC_ERROR;
32260: END IF;
32261:
32262: -- Validate Task Reference / ID
32255:
32256: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32257: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32258: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32259: RAISE FND_API.G_EXC_ERROR;
32260: END IF;
32261:
32262: -- Validate Task Reference / ID
32263: IF p_task_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
32280: , p_pm_task_reference => p_task_reference
32281: , p_out_task_id => l_task_id
32282: , p_return_status => x_return_status );
32283:
32284: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32285: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32286: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32287: RAISE FND_API.G_EXC_ERROR;
32288: END IF;
32281: , p_out_task_id => l_task_id
32282: , p_return_status => x_return_status );
32283:
32284: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32285: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32286: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32287: RAISE FND_API.G_EXC_ERROR;
32288: END IF;
32289: END IF;
32282: , p_return_status => x_return_status );
32283:
32284: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32285: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32286: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32287: RAISE FND_API.G_EXC_ERROR;
32288: END IF;
32289: END IF;
32290:
32283:
32284: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32285: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32286: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32287: RAISE FND_API.G_EXC_ERROR;
32288: END IF;
32289: END IF;
32290:
32291:
32297:
32298: -- Calling deliverable api to Delete Association
32299: pa_deliverable_pub.DELETE_DLV_TASK_ASSOCIATION
32300: (p_api_version => p_api_version
32301: ,p_init_msg_list => FND_API.G_FALSE
32302: ,p_commit => FND_API.G_FALSE
32303: ,p_validate_only => FND_API.G_FALSE
32304: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32305: ,p_calling_module => 'AMG'
32298: -- Calling deliverable api to Delete Association
32299: pa_deliverable_pub.DELETE_DLV_TASK_ASSOCIATION
32300: (p_api_version => p_api_version
32301: ,p_init_msg_list => FND_API.G_FALSE
32302: ,p_commit => FND_API.G_FALSE
32303: ,p_validate_only => FND_API.G_FALSE
32304: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32305: ,p_calling_module => 'AMG'
32306: ,p_debug_mode => l_debug_mode
32299: pa_deliverable_pub.DELETE_DLV_TASK_ASSOCIATION
32300: (p_api_version => p_api_version
32301: ,p_init_msg_list => FND_API.G_FALSE
32302: ,p_commit => FND_API.G_FALSE
32303: ,p_validate_only => FND_API.G_FALSE
32304: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32305: ,p_calling_module => 'AMG'
32306: ,p_debug_mode => l_debug_mode
32307: ,p_max_msg_count => null
32300: (p_api_version => p_api_version
32301: ,p_init_msg_list => FND_API.G_FALSE
32302: ,p_commit => FND_API.G_FALSE
32303: ,p_validate_only => FND_API.G_FALSE
32304: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32305: ,p_calling_module => 'AMG'
32306: ,p_debug_mode => l_debug_mode
32307: ,p_max_msg_count => null
32308: ,p_task_element_id => l_task_id
32317: ,x_msg_count => x_msg_count
32318: ,x_msg_data => x_msg_data
32319: );
32320:
32321: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32322: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32323: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32324: RAISE FND_API.G_EXC_ERROR;
32325: END IF;
32318: ,x_msg_data => x_msg_data
32319: );
32320:
32321: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32322: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32323: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32324: RAISE FND_API.G_EXC_ERROR;
32325: END IF;
32326:
32319: );
32320:
32321: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32322: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32323: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32324: RAISE FND_API.G_EXC_ERROR;
32325: END IF;
32326:
32327: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32320:
32321: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32322: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32323: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32324: RAISE FND_API.G_EXC_ERROR;
32325: END IF;
32326:
32327: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32328: IF (p_commit = FND_API.G_TRUE) THEN
32324: RAISE FND_API.G_EXC_ERROR;
32325: END IF;
32326:
32327: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32328: IF (p_commit = FND_API.G_TRUE) THEN
32329: COMMIT;
32330: END IF;
32331:
32332: IF l_debug_mode = 'Y' THEN
32334: pa_debug.write(g_pkg_name,l_api_name||': Exiting succesfully',5);
32335: END IF;
32336:
32337: EXCEPTION
32338: WHEN FND_API.G_EXC_ERROR THEN
32339: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32340: --IF (p_commit = FND_API.G_TRUE) THEN
32341: ROLLBACK TO DELETE_DLV_TO_TASK_ASSCN_PUB;
32342: --END IF;
32336:
32337: EXCEPTION
32338: WHEN FND_API.G_EXC_ERROR THEN
32339: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32340: --IF (p_commit = FND_API.G_TRUE) THEN
32341: ROLLBACK TO DELETE_DLV_TO_TASK_ASSCN_PUB;
32342: --END IF;
32343:
32344: x_return_status := FND_API.G_RET_STS_ERROR;
32340: --IF (p_commit = FND_API.G_TRUE) THEN
32341: ROLLBACK TO DELETE_DLV_TO_TASK_ASSCN_PUB;
32342: --END IF;
32343:
32344: x_return_status := FND_API.G_RET_STS_ERROR;
32345: l_msg_count := FND_MSG_PUB.count_msg;
32346:
32347: IF l_msg_count = 1 AND x_msg_data IS NULL
32348: THEN
32346:
32347: IF l_msg_count = 1 AND x_msg_data IS NULL
32348: THEN
32349: PA_INTERFACE_UTILS_PUB.get_messages
32350: (p_encoded => FND_API.G_FALSE,
32351: p_msg_index => 1,
32352: p_msg_count => x_msg_count,
32353: p_msg_data => l_msg_data,
32354: p_data => l_data,
32364: pa_debug.reset_curr_function;
32365: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_ERROR exception',5);
32366: END IF;
32367:
32368: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
32369: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32370: -- IF (p_commit = FND_API.G_TRUE) THEN
32371: ROLLBACK TO DELETE_DLV_TO_TASK_ASSCN_PUB;
32372: --END IF;
32366: END IF;
32367:
32368: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
32369: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32370: -- IF (p_commit = FND_API.G_TRUE) THEN
32371: ROLLBACK TO DELETE_DLV_TO_TASK_ASSCN_PUB;
32372: --END IF;
32373:
32374: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32370: -- IF (p_commit = FND_API.G_TRUE) THEN
32371: ROLLBACK TO DELETE_DLV_TO_TASK_ASSCN_PUB;
32372: --END IF;
32373:
32374: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32375: l_msg_count := FND_MSG_PUB.count_msg;
32376:
32377: IF l_msg_count = 1 AND x_msg_data IS NULL
32378: THEN
32376:
32377: IF l_msg_count = 1 AND x_msg_data IS NULL
32378: THEN
32379: PA_INTERFACE_UTILS_PUB.get_messages
32380: (p_encoded => FND_API.G_FALSE,
32381: p_msg_index => 1,
32382: p_msg_count => x_msg_count,
32383: p_msg_data => l_msg_data,
32384: p_data => l_data,
32396: END IF;
32397:
32398: WHEN OTHERS THEN
32399: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32400: --IF (p_commit = FND_API.G_TRUE) THEN
32401: ROLLBACK TO DELETE_DLV_TO_TASK_ASSCN_PUB;
32402: --END IF;
32403:
32404: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32400: --IF (p_commit = FND_API.G_TRUE) THEN
32401: ROLLBACK TO DELETE_DLV_TO_TASK_ASSCN_PUB;
32402: --END IF;
32403:
32404: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32405: x_msg_count := 1;
32406: x_msg_data := SQLERRM;
32407:
32408: IF l_debug_mode = 'Y' THEN
32425: -- Assumptions : None
32426:
32427: Procedure ASSOCIATE_DLV_TO_TASK (
32428: p_api_version IN NUMBER := 1.0
32429: ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
32430: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
32431: ,p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
32432: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32433: -- added for bug# 3729250
32426:
32427: Procedure ASSOCIATE_DLV_TO_TASK (
32428: p_api_version IN NUMBER := 1.0
32429: ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
32430: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
32431: ,p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
32432: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32433: -- added for bug# 3729250
32434: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32427: Procedure ASSOCIATE_DLV_TO_TASK (
32428: p_api_version IN NUMBER := 1.0
32429: ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
32430: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
32431: ,p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
32432: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32433: -- added for bug# 3729250
32434: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32435: ,p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
32465:
32466: BEGIN
32467:
32468: -- Initialize the message table if requested.
32469: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
32470: FND_MSG_PUB.initialize;
32471: END IF;
32472:
32473: -- 3735792, setting save point unconditionally
32470: FND_MSG_PUB.initialize;
32471: END IF;
32472:
32473: -- 3735792, setting save point unconditionally
32474: --IF (p_commit = FND_API.G_TRUE) THEN
32475: savepoint ASSOCIATE_DLV_TO_TASK_PUB;
32476: --END IF;
32477:
32478: IF p_debug_mode = 'Y' THEN
32482: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3) ;
32483: END IF;
32484:
32485: -- Set API return status to success
32486: x_return_status := FND_API.G_RET_STS_SUCCESS;
32487:
32488: -- Function Security Check
32489: PA_PM_FUNCTION_SECURITY_PUB.check_function_security
32490: (p_api_version_number => p_api_version,
32495: p_return_status => x_return_status,
32496: p_function_allowed => l_function_allowed);
32497:
32498:
32499: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32500: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32501: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32502: RAISE FND_API.G_EXC_ERROR;
32503: END IF;
32496: p_function_allowed => l_function_allowed);
32497:
32498:
32499: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32500: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32501: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32502: RAISE FND_API.G_EXC_ERROR;
32503: END IF;
32504:
32497:
32498:
32499: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32500: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32501: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32502: RAISE FND_API.G_EXC_ERROR;
32503: END IF;
32504:
32505: IF l_function_allowed = 'N' THEN
32498:
32499: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32500: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32501: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32502: RAISE FND_API.G_EXC_ERROR;
32503: END IF;
32504:
32505: IF l_function_allowed = 'N' THEN
32506: pa_interface_utils_pub.map_new_amg_msg
32513: ,p_attribute3 => ''
32514: ,p_attribute4 => ''
32515: ,p_attribute5 => '');
32516:
32517: x_return_status := FND_API.G_RET_STS_ERROR;
32518: RAISE FND_API.G_EXC_ERROR;
32519: END IF;
32520:
32521: -- validate the input parameters.
32514: ,p_attribute4 => ''
32515: ,p_attribute5 => '');
32516:
32517: x_return_status := FND_API.G_RET_STS_ERROR;
32518: RAISE FND_API.G_EXC_ERROR;
32519: END IF;
32520:
32521: -- validate the input parameters.
32522: -- Validate Project Reference / ID
32526: , p_out_project_id => l_project_id
32527: , p_return_status => x_return_status
32528: );
32529:
32530: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32531: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32532: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32533: RAISE FND_API.G_EXC_ERROR;
32534: END IF;
32527: , p_return_status => x_return_status
32528: );
32529:
32530: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32531: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32532: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32533: RAISE FND_API.G_EXC_ERROR;
32534: END IF;
32535:
32528: );
32529:
32530: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32531: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32532: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32533: RAISE FND_API.G_EXC_ERROR;
32534: END IF;
32535:
32536: -- Validate Deliverable Reference / ID
32529:
32530: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32531: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32532: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32533: RAISE FND_API.G_EXC_ERROR;
32534: END IF;
32535:
32536: -- Validate Deliverable Reference / ID
32537: Pa_Deliverable_Utils.Convert_pm_dlvrref_to_id
32541: , p_out_deliverable_id => l_deliverable_id
32542: , p_return_status => x_return_status
32543: );
32544:
32545: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32546: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32547: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32548: RAISE FND_API.G_EXC_ERROR;
32549: END IF;
32542: , p_return_status => x_return_status
32543: );
32544:
32545: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32546: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32547: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32548: RAISE FND_API.G_EXC_ERROR;
32549: END IF;
32550:
32543: );
32544:
32545: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32546: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32547: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32548: RAISE FND_API.G_EXC_ERROR;
32549: END IF;
32550:
32551: -- Validate Task Reference / ID
32544:
32545: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32546: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32547: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32548: RAISE FND_API.G_EXC_ERROR;
32549: END IF;
32550:
32551: -- Validate Task Reference / ID
32552: PA_PROJECT_PVT.Convert_pm_taskref_to_id_all (
32556: , p_pm_task_reference => p_pm_task_reference -- 3729250, earlier null was passed
32557: , p_out_task_id => l_task_id
32558: , p_return_status => x_return_status );
32559:
32560: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32561: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32562: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32563: RAISE FND_API.G_EXC_ERROR;
32564: END IF;
32557: , p_out_task_id => l_task_id
32558: , p_return_status => x_return_status );
32559:
32560: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32561: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32562: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32563: RAISE FND_API.G_EXC_ERROR;
32564: END IF;
32565:
32558: , p_return_status => x_return_status );
32559:
32560: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32561: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32562: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32563: RAISE FND_API.G_EXC_ERROR;
32564: END IF;
32565:
32566:
32559:
32560: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32561: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32562: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32563: RAISE FND_API.G_EXC_ERROR;
32564: END IF;
32565:
32566:
32567: -- 5462298 Added below code to validate passed task id
32578:
32579: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
32580: ,p_msg_name => 'PA_TASK_ID_INVALID');
32581:
32582: x_return_status := FND_API.G_RET_STS_ERROR;
32583: RAISE FND_API.G_EXC_ERROR;
32584:
32585: END IF;
32586:
32579: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA'
32580: ,p_msg_name => 'PA_TASK_ID_INVALID');
32581:
32582: x_return_status := FND_API.G_RET_STS_ERROR;
32583: RAISE FND_API.G_EXC_ERROR;
32584:
32585: END IF;
32586:
32587: END IF;
32593:
32594: -- Calling deliverable api to Create Association
32595: pa_deliverable_pvt.CREATE_DLV_TASK_ASSOCIATION
32596: (p_api_version => p_api_version
32597: ,p_init_msg_list => FND_API.G_FALSE
32598: ,p_commit => FND_API.G_FALSE
32599: ,p_validate_only => FND_API.G_FALSE
32600: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32601: ,p_calling_module => 'AMG'
32594: -- Calling deliverable api to Create Association
32595: pa_deliverable_pvt.CREATE_DLV_TASK_ASSOCIATION
32596: (p_api_version => p_api_version
32597: ,p_init_msg_list => FND_API.G_FALSE
32598: ,p_commit => FND_API.G_FALSE
32599: ,p_validate_only => FND_API.G_FALSE
32600: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32601: ,p_calling_module => 'AMG'
32602: ,p_debug_mode => p_debug_mode
32595: pa_deliverable_pvt.CREATE_DLV_TASK_ASSOCIATION
32596: (p_api_version => p_api_version
32597: ,p_init_msg_list => FND_API.G_FALSE
32598: ,p_commit => FND_API.G_FALSE
32599: ,p_validate_only => FND_API.G_FALSE
32600: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32601: ,p_calling_module => 'AMG'
32602: ,p_debug_mode => p_debug_mode
32603: ,p_max_msg_count => null
32596: (p_api_version => p_api_version
32597: ,p_init_msg_list => FND_API.G_FALSE
32598: ,p_commit => FND_API.G_FALSE
32599: ,p_validate_only => FND_API.G_FALSE
32600: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32601: ,p_calling_module => 'AMG'
32602: ,p_debug_mode => p_debug_mode
32603: ,p_max_msg_count => null
32604: ,p_task_element_id => l_task_id
32610: ,x_msg_count => x_msg_count
32611: ,x_msg_data => x_msg_data
32612: );
32613:
32614: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32615: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32616: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32617: RAISE FND_API.G_EXC_ERROR;
32618: END IF;
32611: ,x_msg_data => x_msg_data
32612: );
32613:
32614: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32615: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32616: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32617: RAISE FND_API.G_EXC_ERROR;
32618: END IF;
32619:
32612: );
32613:
32614: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32615: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32616: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32617: RAISE FND_API.G_EXC_ERROR;
32618: END IF;
32619:
32620: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32613:
32614: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32615: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32616: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32617: RAISE FND_API.G_EXC_ERROR;
32618: END IF;
32619:
32620: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32621: IF (p_commit = FND_API.G_TRUE) THEN
32617: RAISE FND_API.G_EXC_ERROR;
32618: END IF;
32619:
32620: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32621: IF (p_commit = FND_API.G_TRUE) THEN
32622: COMMIT;
32623: END IF;
32624:
32625: IF p_debug_mode = 'Y' THEN
32627: pa_debug.write(g_pkg_name,l_api_name||': Exiting succesfully',5);
32628: END IF;
32629:
32630: EXCEPTION
32631: WHEN FND_API.G_EXC_ERROR THEN
32632:
32633: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32634: --IF (p_commit = FND_API.G_TRUE) THEN
32635: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_PUB;
32630: EXCEPTION
32631: WHEN FND_API.G_EXC_ERROR THEN
32632:
32633: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32634: --IF (p_commit = FND_API.G_TRUE) THEN
32635: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_PUB;
32636: --END IF;
32637:
32638: x_return_status := FND_API.G_RET_STS_ERROR;
32634: --IF (p_commit = FND_API.G_TRUE) THEN
32635: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_PUB;
32636: --END IF;
32637:
32638: x_return_status := FND_API.G_RET_STS_ERROR;
32639: l_msg_count := FND_MSG_PUB.count_msg;
32640:
32641: IF l_msg_count = 1 AND x_msg_data IS NULL
32642: THEN
32640:
32641: IF l_msg_count = 1 AND x_msg_data IS NULL
32642: THEN
32643: PA_INTERFACE_UTILS_PUB.get_messages
32644: (p_encoded => FND_API.G_FALSE,
32645: p_msg_index => 1,
32646: p_msg_count => x_msg_count,
32647: p_msg_data => l_msg_data,
32648: p_data => l_data,
32658: pa_debug.reset_curr_function;
32659: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_ERROR exception',5);
32660: END IF;
32661:
32662: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
32663: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32664: --IF (p_commit = FND_API.G_TRUE) THEN
32665: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_PUB;
32666: --END IF;
32660: END IF;
32661:
32662: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
32663: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32664: --IF (p_commit = FND_API.G_TRUE) THEN
32665: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_PUB;
32666: --END IF;
32667:
32668: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32664: --IF (p_commit = FND_API.G_TRUE) THEN
32665: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_PUB;
32666: --END IF;
32667:
32668: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32669: l_msg_count := FND_MSG_PUB.count_msg;
32670:
32671: IF l_msg_count = 1 AND x_msg_data IS NULL
32672: THEN
32670:
32671: IF l_msg_count = 1 AND x_msg_data IS NULL
32672: THEN
32673: PA_INTERFACE_UTILS_PUB.get_messages
32674: (p_encoded => FND_API.G_FALSE,
32675: p_msg_index => 1,
32676: p_msg_count => x_msg_count,
32677: p_msg_data => l_msg_data,
32678: p_data => l_data,
32690: END IF;
32691:
32692: WHEN OTHERS THEN
32693: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32694: -- IF (p_commit = FND_API.G_TRUE) THEN
32695: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_PUB;
32696: -- END IF;
32697:
32698: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32694: -- IF (p_commit = FND_API.G_TRUE) THEN
32695: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_PUB;
32696: -- END IF;
32697:
32698: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32699: x_msg_count := 1;
32700: x_msg_data := SQLERRM;
32701:
32702: IF p_debug_mode = 'Y' THEN
32714: END ASSOCIATE_DLV_TO_TASK;
32715:
32716: Procedure ASSOCIATE_DLV_TO_TASK_ASSIGN (
32717: p_api_version IN NUMBER := 1.0
32718: ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
32719: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
32720: ,p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
32721: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32722: -- added for bug# 3729250
32715:
32716: Procedure ASSOCIATE_DLV_TO_TASK_ASSIGN (
32717: p_api_version IN NUMBER := 1.0
32718: ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
32719: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
32720: ,p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
32721: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32722: -- added for bug# 3729250
32723: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32716: Procedure ASSOCIATE_DLV_TO_TASK_ASSIGN (
32717: p_api_version IN NUMBER := 1.0
32718: ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
32719: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
32720: ,p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
32721: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32722: -- added for bug# 3729250
32723: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
32724: ,p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
32752:
32753: BEGIN
32754:
32755: -- Initialize the message table if requested.
32756: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
32757: FND_MSG_PUB.initialize;
32758: END IF;
32759:
32760: -- 3735792, setting save point unconditionally
32757: FND_MSG_PUB.initialize;
32758: END IF;
32759:
32760: -- 3735792, setting save point unconditionally
32761: -- IF (p_commit = FND_API.G_TRUE) THEN
32762: savepoint ASSOCIATE_DLV_TO_TASK_ASSIGN;
32763: --END IF;
32764:
32765: IF p_debug_mode = 'Y' THEN
32769: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3) ;
32770: END IF;
32771:
32772: -- Set API return status to success
32773: x_return_status := FND_API.G_RET_STS_SUCCESS;
32774:
32775: -- Function Security Check
32776: PA_PM_FUNCTION_SECURITY_PUB.check_function_security
32777: (p_api_version_number => p_api_version,
32782: p_return_status => x_return_status,
32783: p_function_allowed => l_function_allowed);
32784:
32785:
32786: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32787: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32788: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32789: RAISE FND_API.G_EXC_ERROR;
32790: END IF;
32783: p_function_allowed => l_function_allowed);
32784:
32785:
32786: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32787: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32788: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32789: RAISE FND_API.G_EXC_ERROR;
32790: END IF;
32791:
32784:
32785:
32786: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32787: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32788: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32789: RAISE FND_API.G_EXC_ERROR;
32790: END IF;
32791:
32792: IF l_function_allowed = 'N' THEN
32785:
32786: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32787: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32788: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32789: RAISE FND_API.G_EXC_ERROR;
32790: END IF;
32791:
32792: IF l_function_allowed = 'N' THEN
32793: pa_interface_utils_pub.map_new_amg_msg
32800: ,p_attribute3 => ''
32801: ,p_attribute4 => ''
32802: ,p_attribute5 => '');
32803:
32804: x_return_status := FND_API.G_RET_STS_ERROR;
32805: RAISE FND_API.G_EXC_ERROR;
32806: END IF;
32807:
32808: -- validate the input parameters.
32801: ,p_attribute4 => ''
32802: ,p_attribute5 => '');
32803:
32804: x_return_status := FND_API.G_RET_STS_ERROR;
32805: RAISE FND_API.G_EXC_ERROR;
32806: END IF;
32807:
32808: -- validate the input parameters.
32809: -- Validate Project Reference / ID
32813: , p_out_project_id => l_project_id
32814: , p_return_status => x_return_status
32815: );
32816:
32817: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32818: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32819: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32820: RAISE FND_API.G_EXC_ERROR;
32821: END IF;
32814: , p_return_status => x_return_status
32815: );
32816:
32817: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32818: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32819: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32820: RAISE FND_API.G_EXC_ERROR;
32821: END IF;
32822:
32815: );
32816:
32817: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32818: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32819: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32820: RAISE FND_API.G_EXC_ERROR;
32821: END IF;
32822:
32823: -- Validate Deliverable Reference / ID
32816:
32817: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
32818: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32819: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
32820: RAISE FND_API.G_EXC_ERROR;
32821: END IF;
32822:
32823: -- Validate Deliverable Reference / ID
32824: Pa_Deliverable_Utils.Convert_pm_dlvrref_to_id
32828: , p_out_deliverable_id => l_deliverable_id
32829: , p_return_status => x_return_status
32830: );
32831:
32832: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32833: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32834: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32835: RAISE FND_API.G_EXC_ERROR;
32836: END IF;
32829: , p_return_status => x_return_status
32830: );
32831:
32832: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32833: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32834: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32835: RAISE FND_API.G_EXC_ERROR;
32836: END IF;
32837:
32830: );
32831:
32832: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32833: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32834: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32835: RAISE FND_API.G_EXC_ERROR;
32836: END IF;
32837:
32838: -- Validate Task Assignment Reference / ID
32831:
32832: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32833: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32834: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32835: RAISE FND_API.G_EXC_ERROR;
32836: END IF;
32837:
32838: -- Validate Task Assignment Reference / ID
32839: IF p_task_assign_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
32861: pa_debug.write(g_pkg_name,'PA_TASK_ASSIGNMENTS_PUB.Convert_PM_TARef_To_ID ret status'||x_return_status||
32862: ']task assign ref['||l_task_assign_reference||']task assign id['||l_task_assign_id||']',3) ;
32863: END IF;
32864:
32865: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32866: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32867: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32868: RAISE FND_API.G_EXC_ERROR;
32869: END IF;
32862: ']task assign ref['||l_task_assign_reference||']task assign id['||l_task_assign_id||']',3) ;
32863: END IF;
32864:
32865: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32866: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32867: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32868: RAISE FND_API.G_EXC_ERROR;
32869: END IF;
32870:
32863: END IF;
32864:
32865: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32866: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32867: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32868: RAISE FND_API.G_EXC_ERROR;
32869: END IF;
32870:
32871: -- Derive Deliverable_version_id
32864:
32865: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32866: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32867: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32868: RAISE FND_API.G_EXC_ERROR;
32869: END IF;
32870:
32871: -- Derive Deliverable_version_id
32872: l_dlvr_version_id := Pa_Deliverable_Utils.Get_Deliverable_Version_Id (l_deliverable_id, null, l_project_id) ;
32873:
32874: -- Calling deliverable api to Create Association
32875: pa_deliverable_pvt.CREATE_DLV_TASK_ASSOCIATION
32876: (p_api_version => p_api_version
32877: ,p_init_msg_list => FND_API.G_FALSE
32878: ,p_commit => FND_API.G_FALSE
32879: ,p_validate_only => FND_API.G_FALSE
32880: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32881: ,p_calling_module => 'AMG'
32874: -- Calling deliverable api to Create Association
32875: pa_deliverable_pvt.CREATE_DLV_TASK_ASSOCIATION
32876: (p_api_version => p_api_version
32877: ,p_init_msg_list => FND_API.G_FALSE
32878: ,p_commit => FND_API.G_FALSE
32879: ,p_validate_only => FND_API.G_FALSE
32880: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32881: ,p_calling_module => 'AMG'
32882: ,p_calling_context => 'PA_ASSIGNMENTS'
32875: pa_deliverable_pvt.CREATE_DLV_TASK_ASSOCIATION
32876: (p_api_version => p_api_version
32877: ,p_init_msg_list => FND_API.G_FALSE
32878: ,p_commit => FND_API.G_FALSE
32879: ,p_validate_only => FND_API.G_FALSE
32880: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32881: ,p_calling_module => 'AMG'
32882: ,p_calling_context => 'PA_ASSIGNMENTS'
32883: ,p_debug_mode => p_debug_mode
32876: (p_api_version => p_api_version
32877: ,p_init_msg_list => FND_API.G_FALSE
32878: ,p_commit => FND_API.G_FALSE
32879: ,p_validate_only => FND_API.G_FALSE
32880: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
32881: ,p_calling_module => 'AMG'
32882: ,p_calling_context => 'PA_ASSIGNMENTS'
32883: ,p_debug_mode => p_debug_mode
32884: ,p_max_msg_count => null
32891: ,x_msg_count => x_msg_count
32892: ,x_msg_data => x_msg_data
32893: );
32894:
32895: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32896: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32897: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32898: RAISE FND_API.G_EXC_ERROR;
32899: END IF;
32892: ,x_msg_data => x_msg_data
32893: );
32894:
32895: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32896: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32897: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32898: RAISE FND_API.G_EXC_ERROR;
32899: END IF;
32900:
32893: );
32894:
32895: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32896: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32897: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32898: RAISE FND_API.G_EXC_ERROR;
32899: END IF;
32900:
32901: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32894:
32895: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
32896: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32897: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
32898: RAISE FND_API.G_EXC_ERROR;
32899: END IF;
32900:
32901: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32902: IF (p_commit = FND_API.G_TRUE) THEN
32898: RAISE FND_API.G_EXC_ERROR;
32899: END IF;
32900:
32901: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
32902: IF (p_commit = FND_API.G_TRUE) THEN
32903: COMMIT;
32904: END IF;
32905:
32906: IF p_debug_mode = 'Y' THEN
32908: pa_debug.write(g_pkg_name,l_api_name||': Exiting succesfully',5);
32909: END IF;
32910:
32911: EXCEPTION
32912: WHEN FND_API.G_EXC_ERROR THEN
32913: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32914: -- IF (p_commit = FND_API.G_TRUE) THEN
32915: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
32916: -- END IF;
32910:
32911: EXCEPTION
32912: WHEN FND_API.G_EXC_ERROR THEN
32913: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32914: -- IF (p_commit = FND_API.G_TRUE) THEN
32915: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
32916: -- END IF;
32917:
32918: x_return_status := FND_API.G_RET_STS_ERROR;
32914: -- IF (p_commit = FND_API.G_TRUE) THEN
32915: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
32916: -- END IF;
32917:
32918: x_return_status := FND_API.G_RET_STS_ERROR;
32919: l_msg_count := FND_MSG_PUB.count_msg;
32920:
32921: IF l_msg_count = 1 AND x_msg_data IS NULL
32922: THEN
32920:
32921: IF l_msg_count = 1 AND x_msg_data IS NULL
32922: THEN
32923: PA_INTERFACE_UTILS_PUB.get_messages
32924: (p_encoded => FND_API.G_FALSE,
32925: p_msg_index => 1,
32926: p_msg_count => x_msg_count,
32927: p_msg_data => l_msg_data,
32928: p_data => l_data,
32938: pa_debug.reset_curr_function;
32939: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_ERROR exception',5);
32940: END IF;
32941:
32942: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
32943: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32944: --IF (p_commit = FND_API.G_TRUE) THEN
32945: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
32946: --END IF;
32940: END IF;
32941:
32942: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
32943: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32944: --IF (p_commit = FND_API.G_TRUE) THEN
32945: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
32946: --END IF;
32947: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32948: l_msg_count := FND_MSG_PUB.count_msg;
32943: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32944: --IF (p_commit = FND_API.G_TRUE) THEN
32945: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
32946: --END IF;
32947: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32948: l_msg_count := FND_MSG_PUB.count_msg;
32949:
32950: IF l_msg_count = 1 AND x_msg_data IS NULL
32951: THEN
32949:
32950: IF l_msg_count = 1 AND x_msg_data IS NULL
32951: THEN
32952: PA_INTERFACE_UTILS_PUB.get_messages
32953: (p_encoded => FND_API.G_FALSE,
32954: p_msg_index => 1,
32955: p_msg_count => x_msg_count,
32956: p_msg_data => l_msg_data,
32957: p_data => l_data,
32969: END IF;
32970:
32971: WHEN OTHERS THEN
32972: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
32973: --IF (p_commit = FND_API.G_TRUE) THEN
32974: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
32975: --END IF;
32976:
32977: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32973: --IF (p_commit = FND_API.G_TRUE) THEN
32974: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
32975: --END IF;
32976:
32977: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
32978: x_msg_count := 1;
32979: x_msg_data := SQLERRM;
32980:
32981: IF p_debug_mode = 'Y' THEN
32994:
32995:
32996: Procedure DELETE_DLV_TO_TASK_ASSIGN (
32997: p_api_version IN NUMBER := 1.0
32998: ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
32999: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
33000: ,p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
33001: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
33002: ,p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
32995:
32996: Procedure DELETE_DLV_TO_TASK_ASSIGN (
32997: p_api_version IN NUMBER := 1.0
32998: ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
32999: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
33000: ,p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
33001: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
33002: ,p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
33003: -- added for bug# 3729250
32996: Procedure DELETE_DLV_TO_TASK_ASSIGN (
32997: p_api_version IN NUMBER := 1.0
32998: ,p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
32999: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
33000: ,p_debug_mode IN VARCHAR2 := FND_API.G_FALSE
33001: ,p_pm_source_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
33002: ,p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
33003: -- added for bug# 3729250
33004: ,p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
33046:
33047: BEGIN
33048:
33049: -- Initialize the message table if requested.
33050: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
33051: FND_MSG_PUB.initialize;
33052: END IF;
33053:
33054: -- 3735792, setting save point unconditionally
33051: FND_MSG_PUB.initialize;
33052: END IF;
33053:
33054: -- 3735792, setting save point unconditionally
33055: --IF (p_commit = FND_API.G_TRUE) THEN
33056: savepoint ASSOCIATE_DLV_TO_TASK_ASSIGN;
33057: --END IF;
33058:
33059: IF p_debug_mode = 'Y' THEN
33063: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3) ;
33064: END IF;
33065:
33066: -- Set API return status to success
33067: x_return_status := FND_API.G_RET_STS_SUCCESS;
33068:
33069: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33070: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33071: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33065:
33066: -- Set API return status to success
33067: x_return_status := FND_API.G_RET_STS_SUCCESS;
33068:
33069: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33070: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33071: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33072: RAISE FND_API.G_EXC_ERROR;
33073: END IF;
33066: -- Set API return status to success
33067: x_return_status := FND_API.G_RET_STS_SUCCESS;
33068:
33069: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33070: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33071: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33072: RAISE FND_API.G_EXC_ERROR;
33073: END IF;
33074:
33067: x_return_status := FND_API.G_RET_STS_SUCCESS;
33068:
33069: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33070: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33071: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33072: RAISE FND_API.G_EXC_ERROR;
33073: END IF;
33074:
33075: IF l_function_allowed = 'N' THEN
33068:
33069: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33070: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33071: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33072: RAISE FND_API.G_EXC_ERROR;
33073: END IF;
33074:
33075: IF l_function_allowed = 'N' THEN
33076: pa_interface_utils_pub.map_new_amg_msg
33083: ,p_attribute3 => ''
33084: ,p_attribute4 => ''
33085: ,p_attribute5 => '');
33086:
33087: x_return_status := FND_API.G_RET_STS_ERROR;
33088: RAISE FND_API.G_EXC_ERROR;
33089: END IF;
33090:
33091: -- validate the input parameters.
33084: ,p_attribute4 => ''
33085: ,p_attribute5 => '');
33086:
33087: x_return_status := FND_API.G_RET_STS_ERROR;
33088: RAISE FND_API.G_EXC_ERROR;
33089: END IF;
33090:
33091: -- validate the input parameters.
33092: -- Validate Project Reference / ID
33096: , p_out_project_id => l_project_id
33097: , p_return_status => x_return_status
33098: );
33099:
33100: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33101: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33102: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33103: RAISE FND_API.G_EXC_ERROR;
33104: END IF;
33097: , p_return_status => x_return_status
33098: );
33099:
33100: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33101: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33102: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33103: RAISE FND_API.G_EXC_ERROR;
33104: END IF;
33105:
33098: );
33099:
33100: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33101: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33102: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33103: RAISE FND_API.G_EXC_ERROR;
33104: END IF;
33105:
33106: -- Validate Task Assignment Reference / ID
33099:
33100: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33101: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33102: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33103: RAISE FND_API.G_EXC_ERROR;
33104: END IF;
33105:
33106: -- Validate Task Assignment Reference / ID
33107: IF p_task_assign_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
33128: pa_debug.write(g_pkg_name,'PA_TASK_ASSIGNMENTS_PUB.Convert_PM_TARef_To_ID ret status'||x_return_status||
33129: ']task assign ref['||l_task_assign_reference||']task assign id['||l_task_assign_id||']',3) ;
33130: END IF;
33131:
33132: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33133: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33134: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33135: RAISE FND_API.G_EXC_ERROR;
33136: END IF;
33129: ']task assign ref['||l_task_assign_reference||']task assign id['||l_task_assign_id||']',3) ;
33130: END IF;
33131:
33132: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33133: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33134: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33135: RAISE FND_API.G_EXC_ERROR;
33136: END IF;
33137:
33130: END IF;
33131:
33132: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33133: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33134: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33135: RAISE FND_API.G_EXC_ERROR;
33136: END IF;
33137:
33138: -- 3888280 start
33131:
33132: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33133: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33134: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33135: RAISE FND_API.G_EXC_ERROR;
33136: END IF;
33137:
33138: -- 3888280 start
33139: -- Added code to validate Deliverable Reference and Id
33146: , p_out_deliverable_id => l_deliverable_id
33147: , p_return_status => x_return_status
33148: );
33149:
33150: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33151: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33152: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33153: RAISE FND_API.G_EXC_ERROR;
33154: END IF;
33147: , p_return_status => x_return_status
33148: );
33149:
33150: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33151: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33152: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33153: RAISE FND_API.G_EXC_ERROR;
33154: END IF;
33155:
33148: );
33149:
33150: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33151: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33152: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33153: RAISE FND_API.G_EXC_ERROR;
33154: END IF;
33155:
33156: -- Addec code to retrieve object_relationship_id for a TA to a DLVR relationship
33149:
33150: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33151: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33152: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33153: RAISE FND_API.G_EXC_ERROR;
33154: END IF;
33155:
33156: -- Addec code to retrieve object_relationship_id for a TA to a DLVR relationship
33157: -- passing this retrieved id to DELETE_DLV_TASK_ASSOCIATION api
33203:
33204: -- 3888280 end
33205:
33206: -- 3735792, if return status is 'S' and p_commit is passed as TRUE call commit
33207: IF (p_commit = FND_API.G_TRUE) THEN
33208: COMMIT;
33209: END IF;
33210:
33211: IF p_debug_mode = 'Y' THEN
33213: pa_debug.write(g_pkg_name,l_api_name||': Exiting succesfully',5);
33214: END IF;
33215:
33216: EXCEPTION
33217: WHEN FND_API.G_EXC_ERROR THEN
33218: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
33219: --IF (p_commit = FND_API.G_TRUE) THEN
33220: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
33221: --END IF;
33215:
33216: EXCEPTION
33217: WHEN FND_API.G_EXC_ERROR THEN
33218: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
33219: --IF (p_commit = FND_API.G_TRUE) THEN
33220: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
33221: --END IF;
33222:
33223: x_return_status := FND_API.G_RET_STS_ERROR;
33219: --IF (p_commit = FND_API.G_TRUE) THEN
33220: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
33221: --END IF;
33222:
33223: x_return_status := FND_API.G_RET_STS_ERROR;
33224: l_msg_count := FND_MSG_PUB.count_msg;
33225:
33226: IF l_msg_count = 1 AND x_msg_data IS NULL
33227: THEN
33225:
33226: IF l_msg_count = 1 AND x_msg_data IS NULL
33227: THEN
33228: PA_INTERFACE_UTILS_PUB.get_messages
33229: (p_encoded => FND_API.G_FALSE,
33230: p_msg_index => 1,
33231: p_msg_count => x_msg_count,
33232: p_msg_data => l_msg_data,
33233: p_data => l_data,
33243: pa_debug.reset_curr_function;
33244: pa_debug.write(g_pkg_name,l_api_name||': Inside G_EXC_ERROR exception',5);
33245: END IF;
33246:
33247: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
33248: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
33249: --IF (p_commit = FND_API.G_TRUE) THEN
33250: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
33251: --END IF;
33245: END IF;
33246:
33247: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
33248: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
33249: --IF (p_commit = FND_API.G_TRUE) THEN
33250: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
33251: --END IF;
33252:
33253: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33249: --IF (p_commit = FND_API.G_TRUE) THEN
33250: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
33251: --END IF;
33252:
33253: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33254: l_msg_count := FND_MSG_PUB.count_msg;
33255:
33256: IF l_msg_count = 1 AND x_msg_data IS NULL
33257: THEN
33255:
33256: IF l_msg_count = 1 AND x_msg_data IS NULL
33257: THEN
33258: PA_INTERFACE_UTILS_PUB.get_messages
33259: (p_encoded => FND_API.G_FALSE,
33260: p_msg_index => 1,
33261: p_msg_count => x_msg_count,
33262: p_msg_data => l_msg_data,
33263: p_data => l_data,
33275: END IF;
33276:
33277: WHEN OTHERS THEN
33278: -- 3735792, if return status is 'U' or 'E' , rollback to save point , don't check for p_commit
33279: --IF (p_commit = FND_API.G_TRUE) THEN
33280: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
33281: --END IF;
33282:
33283: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33279: --IF (p_commit = FND_API.G_TRUE) THEN
33280: ROLLBACK TO ASSOCIATE_DLV_TO_TASK_ASSIGN;
33281: --END IF;
33282:
33283: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33284: x_msg_count := 1;
33285: x_msg_data := SQLERRM;
33286:
33287: IF p_debug_mode = 'Y' THEN
33302: --Added by rtarway for FP.M Development
33303: PROCEDURE Delete_Mapping
33304: (
33305: p_api_version IN NUMBER := 1.0
33306: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
33307: , p_commit IN VARCHAR2 := FND_API.G_TRUE
33308: , p_debug_mode IN VARCHAR2 := 'N'
33309: , p_wp_task_version_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
33310: , p_fp_task_version_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
33303: PROCEDURE Delete_Mapping
33304: (
33305: p_api_version IN NUMBER := 1.0
33306: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
33307: , p_commit IN VARCHAR2 := FND_API.G_TRUE
33308: , p_debug_mode IN VARCHAR2 := 'N'
33309: , p_wp_task_version_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
33310: , p_fp_task_version_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
33311: , p_wp_task_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
33349:
33350: BEGIN
33351:
33352: -- 4537865
33353: x_return_status := FND_API.G_RET_STS_SUCCESS;
33354:
33355: -- Initialize the message table if requested.
33356: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
33357: FND_MSG_PUB.initialize;
33352: -- 4537865
33353: x_return_status := FND_API.G_RET_STS_SUCCESS;
33354:
33355: -- Initialize the message table if requested.
33356: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
33357: FND_MSG_PUB.initialize;
33358: END IF;
33359:
33360: -- Bug 4142254 : Commenting this condition, as we want to create savepoint always.
33359:
33360: -- Bug 4142254 : Commenting this condition, as we want to create savepoint always.
33361: -- We could have done other way around too i.e. Savepoint and rollback shoud both be in
33362: -- conditions. But we prefer removing conditions due to bug 3735792
33363: -- IF (p_commit = FND_API.G_TRUE) THEN
33364: savepoint DELETE_MAPPING_PUB;
33365: -- END IF;
33366:
33367: l_debug_mode := NVL(FND_PROFILE.value('PA_DEBUG_MODE'),'N');
33422: , p_out_project_id => l_project_id
33423: , p_return_status => x_return_status
33424: );
33425:
33426: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33427: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33428: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33429: RAISE FND_API.G_EXC_ERROR;
33430: END IF;
33423: , p_return_status => x_return_status
33424: );
33425:
33426: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33427: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33428: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33429: RAISE FND_API.G_EXC_ERROR;
33430: END IF;
33431: ELSE
33424: );
33425:
33426: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33427: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33428: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33429: RAISE FND_API.G_EXC_ERROR;
33430: END IF;
33431: ELSE
33432: l_project_id := p_project_id;
33425:
33426: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33427: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33428: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33429: RAISE FND_API.G_EXC_ERROR;
33430: END IF;
33431: ELSE
33432: l_project_id := p_project_id;
33433: END IF;
33451: ,p_out_task_id => l_wp_task_id
33452: ,p_return_status => l_return_status);
33453:
33454: x_return_status := l_return_status;
33455: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33457: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
33458: RAISE FND_API.G_EXC_ERROR;
33459: END IF;
33452: ,p_return_status => l_return_status);
33453:
33454: x_return_status := l_return_status;
33455: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33457: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
33458: RAISE FND_API.G_EXC_ERROR;
33459: END IF;
33460:
33453:
33454: x_return_status := l_return_status;
33455: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33457: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
33458: RAISE FND_API.G_EXC_ERROR;
33459: END IF;
33460:
33461: ELSE
33454: x_return_status := l_return_status;
33455: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33457: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
33458: RAISE FND_API.G_EXC_ERROR;
33459: END IF;
33460:
33461: ELSE
33462: l_wp_task_id := p_wp_task_id;
33475: ,p_pm_task_reference => p_pm_fp_task_reference
33476: ,p_out_task_id => l_fp_task_id
33477: ,p_return_status => l_return_status);
33478: x_return_status := l_return_status;
33479: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33480: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33481: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
33482: RAISE FND_API.G_EXC_ERROR;
33483: END IF;
33476: ,p_out_task_id => l_fp_task_id
33477: ,p_return_status => l_return_status);
33478: x_return_status := l_return_status;
33479: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33480: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33481: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
33482: RAISE FND_API.G_EXC_ERROR;
33483: END IF;
33484: ELSE
33477: ,p_return_status => l_return_status);
33478: x_return_status := l_return_status;
33479: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33480: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33481: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
33482: RAISE FND_API.G_EXC_ERROR;
33483: END IF;
33484: ELSE
33485: l_fp_task_id := p_fp_task_id;
33478: x_return_status := l_return_status;
33479: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33480: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33481: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
33482: RAISE FND_API.G_EXC_ERROR;
33483: END IF;
33484: ELSE
33485: l_fp_task_id := p_fp_task_id;
33486: END IF;
33527: --Calling Delete Mapping
33528: PA_PROJ_STRUC_MAPPING_PUB.DELETE_MAPPING
33529: (
33530: p_api_version => p_api_version
33531: , p_init_msg_list => FND_API.G_FALSE
33532: , p_commit => FND_API.G_FALSE--bug 3766967
33533: , p_debug_mode => p_debug_mode
33534: , p_wp_task_version_id => l_wp_task_version_id
33535: , p_fp_task_version_id => l_fp_task_version_id
33528: PA_PROJ_STRUC_MAPPING_PUB.DELETE_MAPPING
33529: (
33530: p_api_version => p_api_version
33531: , p_init_msg_list => FND_API.G_FALSE
33532: , p_commit => FND_API.G_FALSE--bug 3766967
33533: , p_debug_mode => p_debug_mode
33534: , p_wp_task_version_id => l_wp_task_version_id
33535: , p_fp_task_version_id => l_fp_task_version_id
33536: , p_calling_module => 'AMG' -- Bug 4142254
33545: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'DELETE_MAPPING'||'After Calling PA_PROJ_STRUC_MAPPING_PUB.DELETE_MAPPING:'||x_return_status;
33546: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
33547: END IF;
33548:
33549: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33550: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33551: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33552: RAISE FND_API.G_EXC_ERROR;
33553: END IF;
33546: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
33547: END IF;
33548:
33549: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33550: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33551: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33552: RAISE FND_API.G_EXC_ERROR;
33553: END IF;
33554:
33547: END IF;
33548:
33549: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33550: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33551: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33552: RAISE FND_API.G_EXC_ERROR;
33553: END IF;
33554:
33555: EXCEPTION
33548:
33549: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33550: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33551: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33552: RAISE FND_API.G_EXC_ERROR;
33553: END IF;
33554:
33555: EXCEPTION
33556: WHEN FND_API.G_EXC_ERROR THEN
33552: RAISE FND_API.G_EXC_ERROR;
33553: END IF;
33554:
33555: EXCEPTION
33556: WHEN FND_API.G_EXC_ERROR THEN
33557: ROLLBACK TO DELETE_MAPPING_PUB;
33558: x_return_status := FND_API.G_RET_STS_ERROR;
33559:
33560: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
33554:
33555: EXCEPTION
33556: WHEN FND_API.G_EXC_ERROR THEN
33557: ROLLBACK TO DELETE_MAPPING_PUB;
33558: x_return_status := FND_API.G_RET_STS_ERROR;
33559:
33560: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
33561: ROLLBACK TO DELETE_MAPPING_PUB;
33562: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33556: WHEN FND_API.G_EXC_ERROR THEN
33557: ROLLBACK TO DELETE_MAPPING_PUB;
33558: x_return_status := FND_API.G_RET_STS_ERROR;
33559:
33560: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
33561: ROLLBACK TO DELETE_MAPPING_PUB;
33562: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33563:
33564: WHEN OTHERS THEN
33558: x_return_status := FND_API.G_RET_STS_ERROR;
33559:
33560: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
33561: ROLLBACK TO DELETE_MAPPING_PUB;
33562: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33563:
33564: WHEN OTHERS THEN
33565: ROLLBACK TO DELETE_MAPPING_PUB;
33566: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33562: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33563:
33564: WHEN OTHERS THEN
33565: ROLLBACK TO DELETE_MAPPING_PUB;
33566: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33567:
33568: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
33569: FND_MSG_PUB.add_exc_msg
33570: ( p_pkg_name => G_PKG_NAME
33589: --
33590:
33591: PROCEDURE create_mapping
33592: ( p_api_version IN NUMBER := 1.0
33593: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
33594: , p_commit IN VARCHAR2 := FND_API.G_TRUE
33595: , p_debug_mode IN VARCHAR2 := 'N'
33596: , px_mapped_task_id IN NUMBER
33597: , p_mapped_task_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
33590:
33591: PROCEDURE create_mapping
33592: ( p_api_version IN NUMBER := 1.0
33593: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
33594: , p_commit IN VARCHAR2 := FND_API.G_TRUE
33595: , p_debug_mode IN VARCHAR2 := 'N'
33596: , px_mapped_task_id IN NUMBER
33597: , p_mapped_task_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
33598: , p_mapped_task_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
33640: and financial_task_flag = 'Y';
33641:
33642: BEGIN
33643: -- Initialize the message table if requested.
33644: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
33645: FND_MSG_PUB.initialize;
33646: END IF;
33647:
33648: IF (p_commit = FND_API.G_TRUE) THEN
33644: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
33645: FND_MSG_PUB.initialize;
33646: END IF;
33647:
33648: IF (p_commit = FND_API.G_TRUE) THEN
33649: savepoint CREATE_MAPPING_PUB;
33650: END IF;
33651:
33652: l_debug_mode := NVL(FND_PROFILE.value('PA_DEBUG_MODE'),'N');
33690: Pa_Debug.g_err_stage:= 'PA_PROJECTS_PUB : CREATE_MAPPING : At least one of the parameters for deriving Project id should be passed';
33691: Pa_Debug.WRITE(g_pkg_name,Pa_Debug.g_err_stage,
33692: l_debug_level3);
33693: END IF;
33694: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33695: END IF;
33696:
33697: IF (
33698: ( px_mapped_task_id IS NULL OR px_mapped_task_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM) AND
33704: Pa_Debug.g_err_stage:= 'PA_PROJECTS_PUB : CREATE_MAPPING : At least one of the parameters for deriving financial task version id should be passed';
33705: Pa_Debug.WRITE(g_pkg_name,Pa_Debug.g_err_stage,
33706: l_debug_level3);
33707: END IF;
33708: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33709: END IF;
33710:
33711: IF (
33712: (p_wkp_task_id IS NULL OR p_wkp_task_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM) AND
33718: Pa_Debug.g_err_stage:= 'PA_PROJECTS_PUB : CREATE_MAPPING : At least one of the parameters for deriving workplan task version id should be passed';
33719: Pa_Debug.WRITE(g_pkg_name,Pa_Debug.g_err_stage,
33720: l_debug_level3);
33721: END IF;
33722: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33723: END IF;
33724:
33725:
33726: -- Set API return status to success
33723: END IF;
33724:
33725:
33726: -- Set API return status to success
33727: x_return_status := FND_API.G_RET_STS_SUCCESS;
33728:
33729: IF p_wkp_task_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
33730: l_wkp_task_id := NULL;
33731: ELSE
33786: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'CREATE_MAPPING'||'Project ID:'||l_project_id;
33787: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
33788: END IF;
33789:
33790: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33791: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33792: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33793: RAISE FND_API.G_EXC_ERROR;
33794: END IF;
33787: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
33788: END IF;
33789:
33790: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33791: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33792: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33793: RAISE FND_API.G_EXC_ERROR;
33794: END IF;
33795:
33788: END IF;
33789:
33790: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33791: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33792: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33793: RAISE FND_API.G_EXC_ERROR;
33794: END IF;
33795:
33796: --Get the Wkp Task ID using Wkp Task Reference
33789:
33790: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33791: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33792: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33793: RAISE FND_API.G_EXC_ERROR;
33794: END IF;
33795:
33796: --Get the Wkp Task ID using Wkp Task Reference
33797: IF (
33811: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'CREATE_MAPPING'||'wkp_task_id:'||l_wkp_task_id;
33812: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
33813: END IF;
33814:
33815: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33816: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33817: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33818: RAISE FND_API.G_EXC_ERROR;
33819: END IF;
33812: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
33813: END IF;
33814:
33815: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33816: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33817: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33818: RAISE FND_API.G_EXC_ERROR;
33819: END IF;
33820: END IF;
33813: END IF;
33814:
33815: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33816: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33817: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33818: RAISE FND_API.G_EXC_ERROR;
33819: END IF;
33820: END IF;
33821:
33814:
33815: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33816: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33817: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33818: RAISE FND_API.G_EXC_ERROR;
33819: END IF;
33820: END IF;
33821:
33822: -- Get the mapped task Id based in mapped_task_reference
33836: IF p_debug_mode = 'Y' THEN
33837: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'CREATE_MAPPING'||'mapped_task_id:'||l_mapped_task_id;
33838: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
33839: END IF;
33840: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33841: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33842: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33843: RAISE FND_API.G_EXC_ERROR;
33844: END IF;
33837: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'CREATE_MAPPING'||'mapped_task_id:'||l_mapped_task_id;
33838: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
33839: END IF;
33840: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33841: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33842: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33843: RAISE FND_API.G_EXC_ERROR;
33844: END IF;
33845: END IF;
33838: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
33839: END IF;
33840: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33841: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33842: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33843: RAISE FND_API.G_EXC_ERROR;
33844: END IF;
33845: END IF;
33846: --Get the task version id from Wkp task Id
33839: END IF;
33840: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
33841: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33842: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
33843: RAISE FND_API.G_EXC_ERROR;
33844: END IF;
33845: END IF;
33846: --Get the task version id from Wkp task Id
33847: -- Avoid this call if wkp task name and wkp task version ids are passed
33879:
33880: PA_PROJ_STRUC_MAPPING_PUB.CREATE_MAPPING
33881: (
33882: p_api_version => p_api_version
33883: , p_init_msg_list => FND_API.G_FALSE
33884: , p_calling_module => 'AMG'
33885: , p_commit => FND_API.G_FALSE--bug 3766967
33886: , p_debug_mode => p_debug_mode
33887: , p_wp_task_name => l_wkp_task_name
33881: (
33882: p_api_version => p_api_version
33883: , p_init_msg_list => FND_API.G_FALSE
33884: , p_calling_module => 'AMG'
33885: , p_commit => FND_API.G_FALSE--bug 3766967
33886: , p_debug_mode => p_debug_mode
33887: , p_wp_task_name => l_wkp_task_name
33888: , p_wp_task_version_id => l_wkp_task_version_id
33889: , p_parent_str_version_id => l_wkp_structure_version_id
33901: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'CREATE_MAPPING'||'After Calling PA_PROJ_STRUC_MAPPING_PUB.CREATE_MAPPING:'||x_return_status;
33902: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
33903: END IF;
33904:
33905: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33906: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33907: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33908: RAISE FND_API.G_EXC_ERROR;
33909: END IF;
33902: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
33903: END IF;
33904:
33905: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33906: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33907: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33908: RAISE FND_API.G_EXC_ERROR;
33909: END IF;
33910:
33903: END IF;
33904:
33905: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33906: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33907: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33908: RAISE FND_API.G_EXC_ERROR;
33909: END IF;
33910:
33911: EXCEPTION
33904:
33905: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
33906: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
33907: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
33908: RAISE FND_API.G_EXC_ERROR;
33909: END IF;
33910:
33911: EXCEPTION
33912: WHEN FND_API.G_EXC_ERROR THEN
33908: RAISE FND_API.G_EXC_ERROR;
33909: END IF;
33910:
33911: EXCEPTION
33912: WHEN FND_API.G_EXC_ERROR THEN
33913: IF (p_commit = FND_API.G_TRUE) THEN
33914: ROLLBACK TO CREATE_MAPPING_PUB;
33915: END IF;
33916: x_return_status := FND_API.G_RET_STS_ERROR;
33909: END IF;
33910:
33911: EXCEPTION
33912: WHEN FND_API.G_EXC_ERROR THEN
33913: IF (p_commit = FND_API.G_TRUE) THEN
33914: ROLLBACK TO CREATE_MAPPING_PUB;
33915: END IF;
33916: x_return_status := FND_API.G_RET_STS_ERROR;
33917:
33912: WHEN FND_API.G_EXC_ERROR THEN
33913: IF (p_commit = FND_API.G_TRUE) THEN
33914: ROLLBACK TO CREATE_MAPPING_PUB;
33915: END IF;
33916: x_return_status := FND_API.G_RET_STS_ERROR;
33917:
33918: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
33919: IF (p_commit = FND_API.G_TRUE) THEN
33920: ROLLBACK TO CREATE_MAPPING_PUB;
33914: ROLLBACK TO CREATE_MAPPING_PUB;
33915: END IF;
33916: x_return_status := FND_API.G_RET_STS_ERROR;
33917:
33918: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
33919: IF (p_commit = FND_API.G_TRUE) THEN
33920: ROLLBACK TO CREATE_MAPPING_PUB;
33921: END IF;
33922: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33915: END IF;
33916: x_return_status := FND_API.G_RET_STS_ERROR;
33917:
33918: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
33919: IF (p_commit = FND_API.G_TRUE) THEN
33920: ROLLBACK TO CREATE_MAPPING_PUB;
33921: END IF;
33922: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33923:
33918: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
33919: IF (p_commit = FND_API.G_TRUE) THEN
33920: ROLLBACK TO CREATE_MAPPING_PUB;
33921: END IF;
33922: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33923:
33924: WHEN OTHERS THEN
33925: IF (p_commit = FND_API.G_TRUE) THEN
33926: ROLLBACK TO CREATE_MAPPING_PUB;
33921: END IF;
33922: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33923:
33924: WHEN OTHERS THEN
33925: IF (p_commit = FND_API.G_TRUE) THEN
33926: ROLLBACK TO CREATE_MAPPING_PUB;
33927: END IF;
33928: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33929:
33924: WHEN OTHERS THEN
33925: IF (p_commit = FND_API.G_TRUE) THEN
33926: ROLLBACK TO CREATE_MAPPING_PUB;
33927: END IF;
33928: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33929:
33930: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
33931: FND_MSG_PUB.add_exc_msg
33932: ( p_pkg_name => G_PKG_NAME
33950: --
33951:
33952: PROCEDURE update_mapping
33953: ( p_api_version IN NUMBER := 1.0
33954: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
33955: , p_commit IN VARCHAR2 := FND_API.G_TRUE
33956: , p_debug_mode IN VARCHAR2 := 'N'
33957: , px_mapped_task_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
33958: , p_mapped_task_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
33951:
33952: PROCEDURE update_mapping
33953: ( p_api_version IN NUMBER := 1.0
33954: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
33955: , p_commit IN VARCHAR2 := FND_API.G_TRUE
33956: , p_debug_mode IN VARCHAR2 := 'N'
33957: , px_mapped_task_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
33958: , p_mapped_task_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
33959: , p_mapped_task_name IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
34002: and financial_task_flag = 'Y';
34003:
34004: BEGIN
34005: -- Initialize the message table if requested.
34006: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
34007: FND_MSG_PUB.initialize;
34008: END IF;
34009:
34010: IF (p_commit = FND_API.G_TRUE) THEN
34006: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
34007: FND_MSG_PUB.initialize;
34008: END IF;
34009:
34010: IF (p_commit = FND_API.G_TRUE) THEN
34011: savepoint UPDATE_MAPPING_PUB;
34012: END IF;
34013:
34014: l_debug_mode := NVL(FND_PROFILE.value('PA_DEBUG_MODE'),'N');
34052: Pa_Debug.g_err_stage:= 'PA_PROJECTS_PUB : UPDATE_MAPPING : At least one of the parameters for deriving Project id should be passed';
34053: Pa_Debug.WRITE(g_pkg_name,Pa_Debug.g_err_stage,
34054: l_debug_level3);
34055: END IF;
34056: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34057: END IF;
34058:
34059:
34060: IF (
34069: Pa_Debug.g_err_stage:= 'PA_PROJECTS_PUB : UPDATE_MAPPING : At least one of the parameters for deriving workplan task version id should be passed';
34070: Pa_Debug.WRITE(g_pkg_name,Pa_Debug.g_err_stage,
34071: l_debug_level3);
34072: END IF;
34073: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34074: END IF;
34075:
34076:
34077: -- Set API return status to success
34074: END IF;
34075:
34076:
34077: -- Set API return status to success
34078: x_return_status := FND_API.G_RET_STS_SUCCESS;
34079:
34080: IF p_wkp_task_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM THEN
34081: l_wkp_task_id := NULL;
34082: ELSE
34137: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'UPDATE_MAPPING'||'Project ID:'||l_project_id;
34138: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
34139: END IF;
34140:
34141: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34142: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34143: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34144: RAISE FND_API.G_EXC_ERROR;
34145: END IF;
34138: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
34139: END IF;
34140:
34141: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34142: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34143: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34144: RAISE FND_API.G_EXC_ERROR;
34145: END IF;
34146: --Get the Wkp Task ID using Wkp Task Reference
34139: END IF;
34140:
34141: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34142: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34143: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34144: RAISE FND_API.G_EXC_ERROR;
34145: END IF;
34146: --Get the Wkp Task ID using Wkp Task Reference
34147: IF ( l_wkp_task_id IS NULL
34140:
34141: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34142: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34143: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34144: RAISE FND_API.G_EXC_ERROR;
34145: END IF;
34146: --Get the Wkp Task ID using Wkp Task Reference
34147: IF ( l_wkp_task_id IS NULL
34148: AND
34160: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'UPDATE_MAPPING'||'wkp_task_id:'||l_wkp_task_id;
34161: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
34162: END IF;
34163:
34164: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
34165: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34166: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
34167: RAISE FND_API.G_EXC_ERROR;
34168: END IF;
34161: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
34162: END IF;
34163:
34164: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
34165: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34166: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
34167: RAISE FND_API.G_EXC_ERROR;
34168: END IF;
34169: END IF;
34162: END IF;
34163:
34164: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
34165: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34166: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
34167: RAISE FND_API.G_EXC_ERROR;
34168: END IF;
34169: END IF;
34170:
34163:
34164: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
34165: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34166: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
34167: RAISE FND_API.G_EXC_ERROR;
34168: END IF;
34169: END IF;
34170:
34171: -- Get the mapped task Id based in mapped_task_reference
34184: IF p_debug_mode = 'Y' THEN
34185: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'UPDATE_MAPPING'||'mapped_task_id:'||l_mapped_task_id;
34186: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
34187: END IF;
34188: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
34189: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34190: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
34191: RAISE FND_API.G_EXC_ERROR;
34192: END IF;
34185: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'UPDATE_MAPPING'||'mapped_task_id:'||l_mapped_task_id;
34186: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
34187: END IF;
34188: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
34189: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34190: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
34191: RAISE FND_API.G_EXC_ERROR;
34192: END IF;
34193: END IF;
34186: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
34187: END IF;
34188: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
34189: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34190: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
34191: RAISE FND_API.G_EXC_ERROR;
34192: END IF;
34193: END IF;
34194:
34187: END IF;
34188: IF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
34189: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34190: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
34191: RAISE FND_API.G_EXC_ERROR;
34192: END IF;
34193: END IF;
34194:
34195: --Get the task version id from Wkp task Id
34227: PA_PROJ_STRUC_MAPPING_PUB.UPDATE_MAPPING
34228: (
34229: p_api_version => p_api_version
34230: , p_calling_module => 'AMG'
34231: , p_init_msg_list => FND_API.G_FALSE
34232: , p_commit => FND_API.G_FALSE--bug 3766967
34233: , p_debug_mode => p_debug_mode
34234: , p_project_id => l_project_id
34235: , p_wp_task_name => l_wkp_task_name
34228: (
34229: p_api_version => p_api_version
34230: , p_calling_module => 'AMG'
34231: , p_init_msg_list => FND_API.G_FALSE
34232: , p_commit => FND_API.G_FALSE--bug 3766967
34233: , p_debug_mode => p_debug_mode
34234: , p_project_id => l_project_id
34235: , p_wp_task_name => l_wkp_task_name
34236: , p_wp_prnt_str_ver_id => l_wkp_structure_version_id
34249: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'UPDATE_MAPPING'||'After Calling PA_PROJ_STRUC_MAPPING_PUB.UPDATE_MAPPING:'||x_return_status;
34250: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
34251: END IF;
34252:
34253: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34254: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34255: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34256: RAISE FND_API.G_EXC_ERROR;
34257: END IF;
34250: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
34251: END IF;
34252:
34253: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34254: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34255: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34256: RAISE FND_API.G_EXC_ERROR;
34257: END IF;
34258:
34251: END IF;
34252:
34253: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34254: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34255: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34256: RAISE FND_API.G_EXC_ERROR;
34257: END IF;
34258:
34259: EXCEPTION
34252:
34253: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34254: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34255: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34256: RAISE FND_API.G_EXC_ERROR;
34257: END IF;
34258:
34259: EXCEPTION
34260: WHEN FND_API.G_EXC_ERROR THEN
34256: RAISE FND_API.G_EXC_ERROR;
34257: END IF;
34258:
34259: EXCEPTION
34260: WHEN FND_API.G_EXC_ERROR THEN
34261: IF (p_commit = FND_API.G_TRUE) THEN
34262: ROLLBACK TO UPDATE_MAPPING_PUB;
34263: END IF;
34264: x_return_status := FND_API.G_RET_STS_ERROR;
34257: END IF;
34258:
34259: EXCEPTION
34260: WHEN FND_API.G_EXC_ERROR THEN
34261: IF (p_commit = FND_API.G_TRUE) THEN
34262: ROLLBACK TO UPDATE_MAPPING_PUB;
34263: END IF;
34264: x_return_status := FND_API.G_RET_STS_ERROR;
34265:
34260: WHEN FND_API.G_EXC_ERROR THEN
34261: IF (p_commit = FND_API.G_TRUE) THEN
34262: ROLLBACK TO UPDATE_MAPPING_PUB;
34263: END IF;
34264: x_return_status := FND_API.G_RET_STS_ERROR;
34265:
34266: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34267: IF (p_commit = FND_API.G_TRUE) THEN
34268: ROLLBACK TO UPDATE_MAPPING_PUB;
34262: ROLLBACK TO UPDATE_MAPPING_PUB;
34263: END IF;
34264: x_return_status := FND_API.G_RET_STS_ERROR;
34265:
34266: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34267: IF (p_commit = FND_API.G_TRUE) THEN
34268: ROLLBACK TO UPDATE_MAPPING_PUB;
34269: END IF;
34270: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34263: END IF;
34264: x_return_status := FND_API.G_RET_STS_ERROR;
34265:
34266: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34267: IF (p_commit = FND_API.G_TRUE) THEN
34268: ROLLBACK TO UPDATE_MAPPING_PUB;
34269: END IF;
34270: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34271:
34266: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34267: IF (p_commit = FND_API.G_TRUE) THEN
34268: ROLLBACK TO UPDATE_MAPPING_PUB;
34269: END IF;
34270: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34271:
34272: WHEN OTHERS THEN
34273: IF (p_commit = FND_API.G_TRUE) THEN
34274: ROLLBACK TO UPDATE_MAPPING_PUB;
34269: END IF;
34270: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34271:
34272: WHEN OTHERS THEN
34273: IF (p_commit = FND_API.G_TRUE) THEN
34274: ROLLBACK TO UPDATE_MAPPING_PUB;
34275: END IF;
34276: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34277:
34272: WHEN OTHERS THEN
34273: IF (p_commit = FND_API.G_TRUE) THEN
34274: ROLLBACK TO UPDATE_MAPPING_PUB;
34275: END IF;
34276: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34277:
34278: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
34279: FND_MSG_PUB.add_exc_msg
34280: ( p_pkg_name => G_PKG_NAME
34290: --
34291:
34292: PROCEDURE process_tasks_table
34293: ( p_api_version IN NUMBER := 1.0
34294: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
34295: , p_debug_mode IN VARCHAR2 := 'N'
34296: , p_structure_type IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
34297: , p_tasks_in_tbl IN OUT NOCOPY task_in_tbl_type /*Added the nocopy check for 4537865 */
34298: -- , p_tasks_out_tbl OUT task_in_tbl_type
34322: l_debug_level5 CONSTANT NUMBER := 5;
34323:
34324: BEGIN
34325: --Initialize the message table if requested.
34326: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
34327: FND_MSG_PUB.initialize;
34328: END IF;
34329:
34330: l_debug_mode := NVL(FND_PROFILE.value('PA_DEBUG_MODE'),'N');
34358: Pa_Debug.g_err_stage:= 'PA_PROJECTS_PUB : PROCESS_TASK_TABLE : At least one of the parameters for deriving Project id should be passed';
34359: Pa_Debug.WRITE(g_pkg_name,Pa_Debug.g_err_stage,
34360: l_debug_level3);
34361: END IF;
34362: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34363: END IF;
34364:
34365: IF ( p_tasks_in_tbl IS NULL OR p_tasks_in_tbl.count <= 0 )
34366: THEN
34368: Pa_Debug.g_err_stage:= 'PA_PROJECTS_PUB : PROCESS_TASK_TABLE : Empty or NULL Task Table';
34369: Pa_Debug.WRITE(g_pkg_name,Pa_Debug.g_err_stage,
34370: l_debug_level3);
34371: END IF;
34372: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34373: END IF;
34374:
34375:
34376:
34374:
34375:
34376:
34377: -- Set API return status to success
34378: x_return_status := FND_API.G_RET_STS_SUCCESS;
34379:
34380:
34381: -- Get the task and Project details based on source reference passed
34382: IF (p_project_id IS NULL AND p_proj_source_reference IS NOT NULL ) THEN
34392: pa_debug.g_err_stage := 'PA_PROJECTS_PUB:'||'PROCESS_TASK_TABLE'||'Project ID:'||l_project_id;
34393: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
34394: END IF;
34395:
34396: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34397: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34398: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34399: RAISE FND_API.G_EXC_ERROR;
34400: END IF;
34393: pa_debug.write(g_pkg_name,pa_debug.g_err_stage,3);
34394: END IF;
34395:
34396: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34397: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34398: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34399: RAISE FND_API.G_EXC_ERROR;
34400: END IF;
34401: -- Get the project sharing type
34394: END IF;
34395:
34396: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34397: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34398: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34399: RAISE FND_API.G_EXC_ERROR;
34400: END IF;
34401: -- Get the project sharing type
34402: l_proj_share_type := PA_PROJ_TASK_STRUC_PUB.GET_SHARE_TYPE(l_project_id);
34395:
34396: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34397: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34398: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
34399: RAISE FND_API.G_EXC_ERROR;
34400: END IF;
34401: -- Get the project sharing type
34402: l_proj_share_type := PA_PROJ_TASK_STRUC_PUB.GET_SHARE_TYPE(l_project_id);
34403: IF (l_proj_share_type = 'SHARE_PARTIAL' and p_structure_type = 'FINANCIAL')
34439:
34440: END IF;
34441:
34442: EXCEPTION
34443: WHEN FND_API.G_EXC_ERROR THEN
34444:
34445: x_return_status := FND_API.G_RET_STS_ERROR;
34446:
34447: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34441:
34442: EXCEPTION
34443: WHEN FND_API.G_EXC_ERROR THEN
34444:
34445: x_return_status := FND_API.G_RET_STS_ERROR;
34446:
34447: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34448:
34449: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34443: WHEN FND_API.G_EXC_ERROR THEN
34444:
34445: x_return_status := FND_API.G_RET_STS_ERROR;
34446:
34447: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34448:
34449: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34450:
34451: WHEN OTHERS THEN
34445: x_return_status := FND_API.G_RET_STS_ERROR;
34446:
34447: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34448:
34449: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34450:
34451: WHEN OTHERS THEN
34452:
34453: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34449: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34450:
34451: WHEN OTHERS THEN
34452:
34453: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34454:
34455: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
34456: FND_MSG_PUB.add_exc_msg
34457: ( p_pkg_name => G_PKG_NAME
34463: --added by hsiu
34464: --
34465: PROCEDURE Create_Dependency(
34466: p_api_version_number IN NUMBER :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
34467: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
34468: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
34469: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
34470: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34471: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34464: --
34465: PROCEDURE Create_Dependency(
34466: p_api_version_number IN NUMBER :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
34467: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
34468: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
34469: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
34470: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34471: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34472: ,p_pm_product_code IN VARCHAR2
34527: and element_version_id = c_structure_version_id;
34528: BEGIN
34529: savepoint create_dep_pub_amg;
34530:
34531: IF FND_API.TO_BOOLEAN( p_init_msg_list )
34532: THEN
34533: FND_MSG_PUB.Initialize;
34534: END IF;
34535:
34540: , p_out_project_id => l_project_id
34541: , p_return_status => l_return_status
34542: );
34543:
34544: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34545: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34546: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
34547: RAISE FND_API.G_EXC_ERROR;
34548: END IF;
34541: , p_return_status => l_return_status
34542: );
34543:
34544: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34545: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34546: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
34547: RAISE FND_API.G_EXC_ERROR;
34548: END IF;
34549: --
34542: );
34543:
34544: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34545: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34546: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
34547: RAISE FND_API.G_EXC_ERROR;
34548: END IF;
34549: --
34550: --Bug 3768875
34543:
34544: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34545: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34546: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
34547: RAISE FND_API.G_EXC_ERROR;
34548: END IF;
34549: --
34550: --Bug 3768875
34551: If PA_PROJECT_STRUCTURE_UTILS.Check_Project_exists(l_project_id) = 'Y' Then
34551: If PA_PROJECT_STRUCTURE_UTILS.Check_Project_exists(l_project_id) = 'Y' Then
34552: If PA_PROJECT_STRUCTURE_UTILS.Check_Structure_Ver_Exists(l_project_id,p_structure_version_id) <> 'Y' THEN
34553: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34554: p_msg_name => 'PA_INV_STRUCUTRE_VER_ID');
34555: RAISE FND_API.G_EXC_ERROR;
34556: End If;
34557: Else
34558: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34559: p_msg_name => 'PA_INV_PROJECT_ID');
34556: End If;
34557: Else
34558: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34559: p_msg_name => 'PA_INV_PROJECT_ID');
34560: RAISE FND_API.G_EXC_ERROR;
34561: End If;
34562: --
34563: --check if structure version can be modified
34564: OPEN get_template_flag(l_project_id);
34578: CLOSE get_workplan_status;
34579: IF l_wp_status <> 'STRUCTURE_WORKING' THEN
34580: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34581: p_msg_name => 'PA_UPDATE_PUB_VER_ERR');
34582: RAISE FND_API.G_EXC_ERROR;
34583: END IF;
34584: ELSE
34585: IF (l_versioning IS NULL) THEN
34586: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34584: ELSE
34585: IF (l_versioning IS NULL) THEN
34586: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34587: p_msg_name => 'PA_PS_WORKPLAN_DISABLED');
34588: RAISE FND_API.G_EXC_ERROR;
34589: END IF;
34590: END IF;
34591: END IF;
34592:
34598: IF get_task_ver_id%NOTFOUND THEN
34599: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34600: p_msg_name => 'PA_PS_INV_TASK_ID');
34601: CLOSE get_task_ver_id;
34602: RAISE FND_API.G_EXC_ERROR;
34603: END IF;
34604: CLOSE get_task_ver_id;
34605: END IF;
34606:
34612: IF get_task_ver_id2%NOTFOUND THEN
34613: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34614: p_msg_name => 'PA_PS_INV_TASK_ID');
34615: CLOSE get_task_ver_id2;
34616: RAISE FND_API.G_EXC_ERROR;
34617: END IF;
34618: CLOSE get_task_ver_id2;
34619: END IF;
34620: --end bug 3880403
34627: IF get_task_ver_id%NOTFOUND THEN
34628: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34629: p_msg_name => 'PA_PS_INV_TASK_ID');
34630: CLOSE get_task_ver_id;
34631: RAISE FND_API.G_EXC_ERROR;
34632: END IF;
34633: CLOSE get_task_ver_id;
34634: END IF;
34635:
34641: IF get_task_ver_id2%NOTFOUND THEN
34642: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34643: p_msg_name => 'PA_PS_INV_TASK_ID');
34644: CLOSE get_task_ver_id2;
34645: RAISE FND_API.G_EXC_ERROR;
34646: END IF;
34647: CLOSE get_task_ver_id2;
34648: END IF;
34649: --end bug 3880403
34651: -- Bug 3768933 Validating the relationship_subtype
34652: IF PA_PROJ_ELEMENTS_UTILS.check_pa_lookup_exists('PA_OBJECT_DEPENDENCY_TYPES',p_type) <> 'Y' THEN
34653: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34654: p_msg_name => 'PA_PS_INV_REL_SUBTYPE_VAL');
34655: RAISE FND_API.G_EXC_ERROR;
34656: END IF;
34657: --
34658: --call existing create dependency API to create intra dependency
34659: PA_RELATIONSHIP_PVT.Create_Dependency(
34670: ,x_msg_data => p_msg_data
34671: );
34672:
34673: IF p_msg_count > 0 THEN
34674: RAISE FND_API.G_EXC_ERROR;
34675: END IF;
34676:
34677: p_return_status := FND_API.G_RET_STS_SUCCESS;
34678:
34673: IF p_msg_count > 0 THEN
34674: RAISE FND_API.G_EXC_ERROR;
34675: END IF;
34676:
34677: p_return_status := FND_API.G_RET_STS_SUCCESS;
34678:
34679: EXCEPTION
34680: WHEN FND_API.G_EXC_ERROR THEN
34681: ROLLBACK TO create_dep_pub_amg;
34676:
34677: p_return_status := FND_API.G_RET_STS_SUCCESS;
34678:
34679: EXCEPTION
34680: WHEN FND_API.G_EXC_ERROR THEN
34681: ROLLBACK TO create_dep_pub_amg;
34682: p_return_status := FND_API.G_RET_STS_ERROR;
34683:
34684: -- Begin fix for Bug # 4323969.
34678:
34679: EXCEPTION
34680: WHEN FND_API.G_EXC_ERROR THEN
34681: ROLLBACK TO create_dep_pub_amg;
34682: p_return_status := FND_API.G_RET_STS_ERROR;
34683:
34684: -- Begin fix for Bug # 4323969.
34685:
34686: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
34687: , p_data => p_msg_data);
34688:
34689: -- End fix for Bug # 4323969.
34690:
34691: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34692: ROLLBACK TO create_dep_pub_amg;
34693: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34694:
34695: -- Begin fix for Bug # 4323969.
34689: -- End fix for Bug # 4323969.
34690:
34691: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34692: ROLLBACK TO create_dep_pub_amg;
34693: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34694:
34695: -- Begin fix for Bug # 4323969.
34696:
34697: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
34700: -- End fix for Bug # 4323969.
34701:
34702: When OTHERS then
34703: ROLLBACK TO create_dep_pub_amg;
34704: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34705:
34706: -- Begin fix for Bug # 4323969.
34707:
34708: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
34715:
34716:
34717: PROCEDURE Update_Dependency(
34718: p_api_version_number IN NUMBER :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
34719: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
34720: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
34721: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
34722: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34723: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34716:
34717: PROCEDURE Update_Dependency(
34718: p_api_version_number IN NUMBER :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
34719: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
34720: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
34721: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
34722: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34723: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34724: ,p_pm_product_code IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
34785: AND relationship_type = 'D';
34786: BEGIN
34787: savepoint update_dep_pub_amg;
34788:
34789: IF FND_API.TO_BOOLEAN( p_init_msg_list )
34790: THEN
34791: FND_MSG_PUB.Initialize;
34792: END IF;
34793:
34798: , p_out_project_id => l_project_id
34799: , p_return_status => l_return_status
34800: );
34801:
34802: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34803: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34804: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
34805: RAISE FND_API.G_EXC_ERROR;
34806: END IF;
34799: , p_return_status => l_return_status
34800: );
34801:
34802: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34803: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34804: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
34805: RAISE FND_API.G_EXC_ERROR;
34806: END IF;
34807: --
34800: );
34801:
34802: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34803: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34804: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
34805: RAISE FND_API.G_EXC_ERROR;
34806: END IF;
34807: --
34808: --Bug 3769089
34801:
34802: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
34803: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
34804: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
34805: RAISE FND_API.G_EXC_ERROR;
34806: END IF;
34807: --
34808: --Bug 3769089
34809: If PA_PROJECT_STRUCTURE_UTILS.Check_Project_exists(l_project_id) = 'Y' Then
34810: If PA_PROJECT_STRUCTURE_UTILS.Check_Structure_Ver_Exists(l_project_id,p_structure_version_id) <> 'Y' THEN
34811: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34812: p_msg_name => 'PA_INV_STRUCUTRE_VER_ID');
34813:
34814: RAISE FND_API.G_EXC_ERROR;
34815: End If;
34816: Else
34817: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34818: p_msg_name => 'PA_INV_PROJECT_ID');
34815: End If;
34816: Else
34817: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34818: p_msg_name => 'PA_INV_PROJECT_ID');
34819: RAISE FND_API.G_EXC_ERROR;
34820: End If;
34821: --
34822: --
34823: --check if structure version can be modified
34838: CLOSE get_workplan_status;
34839: IF l_wp_status <> 'STRUCTURE_WORKING' THEN
34840: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34841: p_msg_name => 'PA_UPDATE_PUB_VER_ERR');
34842: RAISE FND_API.G_EXC_ERROR;
34843: END IF;
34844: ELSE
34845: IF (l_versioning IS NULL) THEN
34846: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34844: ELSE
34845: IF (l_versioning IS NULL) THEN
34846: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34847: p_msg_name => 'PA_PS_WORKPLAN_DISABLED');
34848: RAISE FND_API.G_EXC_ERROR;
34849: END IF;
34850: END IF;
34851: END IF;
34852:
34858: IF get_task_ver_id%NOTFOUND THEN
34859: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34860: p_msg_name => 'PA_PS_INV_TASK_ID');
34861: CLOSE get_task_ver_id;
34862: RAISE FND_API.G_EXC_ERROR;
34863: END IF;
34864: CLOSE get_task_ver_id;
34865: END IF;
34866:
34872: IF get_task_ver_id2%NOTFOUND THEN
34873: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34874: p_msg_name => 'PA_PS_INV_TASK_ID');
34875: CLOSE get_task_ver_id2;
34876: RAISE FND_API.G_EXC_ERROR;
34877: END IF;
34878: CLOSE get_task_ver_id2;
34879: END IF;
34880: --end bug 3880403
34888: IF get_task_ver_id%NOTFOUND THEN
34889: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34890: p_msg_name => 'PA_PS_INV_TASK_ID');
34891: CLOSE get_task_ver_id;
34892: RAISE FND_API.G_EXC_ERROR;
34893: END IF;
34894: CLOSE get_task_ver_id;
34895: END IF;
34896:
34902: IF get_task_ver_id2%NOTFOUND THEN
34903: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34904: p_msg_name => 'PA_PS_INV_TASK_ID');
34905: CLOSE get_task_ver_id2;
34906: RAISE FND_API.G_EXC_ERROR;
34907: END IF;
34908: CLOSE get_task_ver_id2;
34909: END IF;
34910: --end bug 3880403
34916: --Bug 3769047
34917: IF get_rvn%NOTFOUND THEN
34918: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
34919: p_msg_name => 'PA_PS_INV_DEP_ID');
34920: RAISE FND_API.G_EXC_ERROR;
34921: END IF;
34922: CLOSE get_rvn;
34923: --
34924: --call existing update dependency API to create intra dependency
34935: ,x_msg_data => p_msg_data
34936: );
34937:
34938: IF p_msg_count > 0 THEN
34939: RAISE FND_API.G_EXC_ERROR;
34940: END IF;
34941:
34942: p_return_status := FND_API.G_RET_STS_SUCCESS;
34943:
34938: IF p_msg_count > 0 THEN
34939: RAISE FND_API.G_EXC_ERROR;
34940: END IF;
34941:
34942: p_return_status := FND_API.G_RET_STS_SUCCESS;
34943:
34944: EXCEPTION
34945: WHEN FND_API.G_EXC_ERROR THEN
34946: ROLLBACK TO update_dep_pub_amg;
34941:
34942: p_return_status := FND_API.G_RET_STS_SUCCESS;
34943:
34944: EXCEPTION
34945: WHEN FND_API.G_EXC_ERROR THEN
34946: ROLLBACK TO update_dep_pub_amg;
34947: p_return_status := FND_API.G_RET_STS_ERROR;
34948:
34949: -- 4537865 Included same fix as 4323969.
34943:
34944: EXCEPTION
34945: WHEN FND_API.G_EXC_ERROR THEN
34946: ROLLBACK TO update_dep_pub_amg;
34947: p_return_status := FND_API.G_RET_STS_ERROR;
34948:
34949: -- 4537865 Included same fix as 4323969.
34950: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
34951: , p_data => p_msg_data);
34949: -- 4537865 Included same fix as 4323969.
34950: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
34951: , p_data => p_msg_data);
34952:
34953: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34954: ROLLBACK TO update_dep_pub_amg;
34955: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34956:
34957: -- 4537865 : Included same fix as 4323969.
34951: , p_data => p_msg_data);
34952:
34953: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34954: ROLLBACK TO update_dep_pub_amg;
34955: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34956:
34957: -- 4537865 : Included same fix as 4323969.
34958: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
34959: , p_data => p_msg_data);
34959: , p_data => p_msg_data);
34960:
34961: When OTHERS then
34962: ROLLBACK TO update_dep_pub_amg;
34963: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
34964: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
34965:
34966: FND_MSG_PUB.add_exc_msg
34967: (p_pkg_name => G_PKG_NAME
34976:
34977:
34978: PROCEDURE Delete_Dependency(
34979: p_api_version_number IN NUMBER :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
34980: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
34981: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
34982: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
34983: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34984: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34977:
34978: PROCEDURE Delete_Dependency(
34979: p_api_version_number IN NUMBER :=PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
34980: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
34981: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
34982: ,p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
34983: ,p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34984: ,p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
34985: ,p_pm_product_code IN VARCHAR2
35046: AND relationship_type = 'D';
35047: BEGIN
35048: savepoint delete_dep_pub_amg;
35049:
35050: IF FND_API.TO_BOOLEAN( p_init_msg_list )
35051: THEN
35052: FND_MSG_PUB.Initialize;
35053: END IF;
35054:
35059: , p_out_project_id => l_project_id
35060: , p_return_status => l_return_status
35061: );
35062:
35063: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35064: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35065: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
35066: RAISE FND_API.G_EXC_ERROR;
35067: END IF;
35060: , p_return_status => l_return_status
35061: );
35062:
35063: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35064: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35065: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
35066: RAISE FND_API.G_EXC_ERROR;
35067: END IF;
35068: --
35061: );
35062:
35063: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35064: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35065: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
35066: RAISE FND_API.G_EXC_ERROR;
35067: END IF;
35068: --
35069: --Bug 3769079
35062:
35063: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35064: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35065: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
35066: RAISE FND_API.G_EXC_ERROR;
35067: END IF;
35068: --
35069: --Bug 3769079
35070: If PA_PROJECT_STRUCTURE_UTILS.Check_Project_exists(l_project_id) = 'Y' Then
35070: If PA_PROJECT_STRUCTURE_UTILS.Check_Project_exists(l_project_id) = 'Y' Then
35071: If PA_PROJECT_STRUCTURE_UTILS.Check_Structure_Ver_Exists(l_project_id,p_structure_version_id) <> 'Y' THEN
35072: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35073: p_msg_name => 'PA_INV_STRUCUTRE_VER_ID');
35074: RAISE FND_API.G_EXC_ERROR;
35075: End If;
35076: Else
35077: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35078: p_msg_name => 'PA_INV_PROJECT_ID');
35075: End If;
35076: Else
35077: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35078: p_msg_name => 'PA_INV_PROJECT_ID');
35079: RAISE FND_API.G_EXC_ERROR;
35080: End If;
35081: --
35082: --
35083: --check if structure version can be modified
35098: CLOSE get_workplan_status;
35099: IF l_wp_status <> 'STRUCTURE_WORKING' THEN
35100: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35101: p_msg_name => 'PA_UPDATE_PUB_VER_ERR');
35102: RAISE FND_API.G_EXC_ERROR;
35103: END IF;
35104: ELSE
35105: IF (l_versioning IS NULL) THEN
35106: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35104: ELSE
35105: IF (l_versioning IS NULL) THEN
35106: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35107: p_msg_name => 'PA_PS_WORKPLAN_DISABLED');
35108: RAISE FND_API.G_EXC_ERROR;
35109: END IF;
35110: END IF;
35111: END IF;
35112:
35118: IF get_task_ver_id%NOTFOUND THEN
35119: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35120: p_msg_name => 'PA_PS_INV_TASK_ID');
35121: CLOSE get_task_ver_id;
35122: RAISE FND_API.G_EXC_ERROR;
35123: END IF;
35124: CLOSE get_task_ver_id;
35125: END IF;
35126:
35132: IF get_task_ver_id2%NOTFOUND THEN
35133: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35134: p_msg_name => 'PA_PS_INV_TASK_ID');
35135: CLOSE get_task_ver_id2;
35136: RAISE FND_API.G_EXC_ERROR;
35137: END IF;
35138: CLOSE get_task_ver_id2;
35139: END IF;
35140: --end bug 3880403
35147: IF get_task_ver_id%NOTFOUND THEN
35148: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35149: p_msg_name => 'PA_PS_INV_TASK_ID');
35150: CLOSE get_task_ver_id;
35151: RAISE FND_API.G_EXC_ERROR;
35152: END IF;
35153: CLOSE get_task_ver_id;
35154: END IF;
35155:
35161: IF get_task_ver_id2%NOTFOUND THEN
35162: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35163: p_msg_name => 'PA_PS_INV_TASK_ID');
35164: CLOSE get_task_ver_id2;
35165: RAISE FND_API.G_EXC_ERROR;
35166: END IF;
35167: CLOSE get_task_ver_id2;
35168: END IF;
35169: --end bug 3880403
35176: --Bug 3769066
35177: IF get_rvn%NOTFOUND THEN
35178: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35179: p_msg_name => 'PA_PS_INV_DEP_ID');
35180: RAISE FND_API.G_EXC_ERROR;
35181: END IF;
35182: CLOSE get_rvn;
35183:
35184: PA_RELATIONSHIP_PVT.Delete_Dependency(
35191:
35192: -- 4537865 : Check has to be made against l_msg_count ,not p_msg_count
35193: -- IF p_msg_count > 0 THEN
35194: IF l_msg_count > 0 THEN
35195: RAISE FND_API.G_EXC_ERROR;
35196: END IF;
35197:
35198: p_return_status := FND_API.G_RET_STS_SUCCESS;
35199: EXCEPTION
35194: IF l_msg_count > 0 THEN
35195: RAISE FND_API.G_EXC_ERROR;
35196: END IF;
35197:
35198: p_return_status := FND_API.G_RET_STS_SUCCESS;
35199: EXCEPTION
35200:
35201: WHEN FND_API.G_EXC_ERROR THEN
35202: ROLLBACK TO delete_dep_pub_amg;
35197:
35198: p_return_status := FND_API.G_RET_STS_SUCCESS;
35199: EXCEPTION
35200:
35201: WHEN FND_API.G_EXC_ERROR THEN
35202: ROLLBACK TO delete_dep_pub_amg;
35203: p_return_status := FND_API.G_RET_STS_ERROR;
35204: -- 4537865 Included same fix as 4323969.
35205: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
35199: EXCEPTION
35200:
35201: WHEN FND_API.G_EXC_ERROR THEN
35202: ROLLBACK TO delete_dep_pub_amg;
35203: p_return_status := FND_API.G_RET_STS_ERROR;
35204: -- 4537865 Included same fix as 4323969.
35205: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
35206: , p_data => p_msg_data);
35207: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
35203: p_return_status := FND_API.G_RET_STS_ERROR;
35204: -- 4537865 Included same fix as 4323969.
35205: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
35206: , p_data => p_msg_data);
35207: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
35208: ROLLBACK TO delete_dep_pub_amg;
35209: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
35210: -- 4537865 Included same fix as 4323969.
35211: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
35205: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
35206: , p_data => p_msg_data);
35207: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
35208: ROLLBACK TO delete_dep_pub_amg;
35209: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
35210: -- 4537865 Included same fix as 4323969.
35211: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
35212: , p_data => p_msg_data);
35213: When OTHERS then
35211: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
35212: , p_data => p_msg_data);
35213: When OTHERS then
35214: ROLLBACK TO delete_dep_pub_amg;
35215: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
35216:
35217: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
35218:
35219: FND_MSG_PUB.add_exc_msg
35231: -- Begin fix for Bug # 4096218.
35232:
35233: PROCEDURE check_task_mfd
35234: ( p_api_version_number IN NUMBER
35235: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
35236: , p_return_status OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
35237: , p_msg_count OUT NOCOPY NUMBER /*Added the nocopy check for 4537865 */
35238: , p_msg_data OUT NOCOPY VARCHAR2 /*Added the nocopy check for 4537865 */
35239: , p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
35377:
35378: l_amg_task_number NUMBER; -- Datatype changed for Bug 4878722
35379: BEGIN
35380:
35381: IF NOT FND_API.Compatible_API_Call (g_api_version_number
35382: , p_api_version_number
35383: , l_api_name
35384: , G_PKG_NAME) THEN
35385:
35382: , p_api_version_number
35383: , l_api_name
35384: , G_PKG_NAME) THEN
35385:
35386: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35387:
35388: END IF;
35389:
35390: IF FND_API.TO_BOOLEAN(p_init_msg_list) THEN
35386: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35387:
35388: END IF;
35389:
35390: IF FND_API.TO_BOOLEAN(p_init_msg_list) THEN
35391:
35392: FND_MSG_PUB.initialize;
35393:
35394: END IF;
35392: FND_MSG_PUB.initialize;
35393:
35394: END IF;
35395:
35396: p_return_status := FND_API.G_RET_STS_SUCCESS;
35397:
35398: -- Initialize output flag.
35399:
35400: l_check_task_mfd_flag := 'N';
35409: , p_pa_project_id => p_project_id
35410: , p_out_project_id => l_project_id
35411: , p_return_status => l_return_status);
35412:
35413: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35414:
35415: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35416:
35417: ELSIF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
35411: , p_return_status => l_return_status);
35412:
35413: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35414:
35415: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35416:
35417: ELSIF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
35418:
35419: RAISE FND_API.G_EXC_ERROR;
35413: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35414:
35415: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35416:
35417: ELSIF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
35418:
35419: RAISE FND_API.G_EXC_ERROR;
35420: END IF;
35421:
35415: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35416:
35417: ELSIF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
35418:
35419: RAISE FND_API.G_EXC_ERROR;
35420: END IF;
35421:
35422: -- If task id is passed ,verify whether it is a valid value
35423: IF p_task_id IS NOT NULL AND p_task_id <> PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
35450: , p_out_task_id => l_task_id
35451: , p_return_status => l_return_status);
35452:
35453:
35454: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35455:
35456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35457:
35458: ELSIF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
35452:
35453:
35454: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35455:
35456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35457:
35458: ELSIF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
35459:
35460: RAISE FND_API.G_EXC_ERROR;
35454: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35455:
35456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35457:
35458: ELSIF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
35459:
35460: RAISE FND_API.G_EXC_ERROR;
35461: END IF;
35462:
35456: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35457:
35458: ELSIF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
35459:
35460: RAISE FND_API.G_EXC_ERROR;
35461: END IF;
35462:
35463: END IF;
35464: --get structure_version_id and task_version_id
35489: , p_structure_type => p_structure_type
35490: , p_task_version_id => l_task_version_id
35491: , p_delete_task_ok_flag => l_delete_task_ok_flag -- OUT param
35492: );
35493: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
35494:
35495: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35496:
35497: /* Commented because of Issue found during Unit testing
35491: , p_delete_task_ok_flag => l_delete_task_ok_flag -- OUT param
35492: );
35493: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
35494:
35495: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35496:
35497: /* Commented because of Issue found during Unit testing
35498: In Check_Delete_Task_OK ,already message has been retrieved and
35499: Hence ,If we raise again here ,In this API ,it wont be able to find any msg in stack now
35502: The commented check corresponds to return status 'E' check .It will be 'E' if its nt
35503: allowed to delete the task. So, Just set the OUT params appropriately
35504: and return
35505:
35506: ELSIF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
35507:
35508: RAISE FND_API.G_EXC_ERROR;
35509: */
35510: END IF;
35504: and return
35505:
35506: ELSIF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
35507:
35508: RAISE FND_API.G_EXC_ERROR;
35509: */
35510: END IF;
35511:
35512: IF l_delete_task_ok_flag = 'N' THEN
35607: p_msg_data := l_msg_data;
35608:
35609: EXCEPTION
35610:
35611: WHEN FND_API.G_EXC_ERROR THEN
35612:
35613: p_return_status := FND_API.G_RET_STS_ERROR;
35614:
35615: -- 4537865
35609: EXCEPTION
35610:
35611: WHEN FND_API.G_EXC_ERROR THEN
35612:
35613: p_return_status := FND_API.G_RET_STS_ERROR;
35614:
35615: -- 4537865
35616: p_check_task_mfd_flag := NULL ;
35617:
35618: FND_MSG_PUB.Count_And_Get
35619: ( p_count => p_msg_count ,
35620: p_data => p_msg_data );
35621:
35622: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
35623:
35624: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
35625:
35626: -- 4537865
35620: p_data => p_msg_data );
35621:
35622: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
35623:
35624: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
35625:
35626: -- 4537865
35627: p_check_task_mfd_flag := NULL ;
35628:
35631: p_data => p_msg_data );
35632:
35633: WHEN OTHERS THEN
35634:
35635: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
35636:
35637: p_check_task_mfd_flag := NULL ; -- 4537865
35638:
35639: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
35682: )
35683: IS
35684: BEGIN
35685: x_msg_count := 0;
35686: x_return_status := FND_API.G_RET_STS_SUCCESS;
35687: x_msg_data := NULL;
35688: x_deleted_task_ids := PA_PROJECT_PUB.G_DELETED_TASK_IDS_FROM_OP;
35689: EXCEPTION
35690: WHEN OTHERS THEN
35687: x_msg_data := NULL;
35688: x_deleted_task_ids := PA_PROJECT_PUB.G_DELETED_TASK_IDS_FROM_OP;
35689: EXCEPTION
35690: WHEN OTHERS THEN
35691: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
35692: IF FND_MSG_PUB.Check_Msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
35693:
35694: FND_MSG_PUB.add_exc_msg
35695: (p_pkg_name => G_PKG_NAME
35710: -- Bug 5436264 : AMG API FOR PROCESS STRUCTURE UPDATES
35711:
35712: PROCEDURE process_structure_updates
35713: (p_api_version_number IN NUMBER := 1.0
35714: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
35715: , p_commit IN VARCHAR2 := FND_API.G_FALSE
35716: , p_return_status OUT NOCOPY VARCHAR2
35717: , p_msg_count OUT NOCOPY NUMBER
35718: , p_msg_data OUT NOCOPY VARCHAR2
35711:
35712: PROCEDURE process_structure_updates
35713: (p_api_version_number IN NUMBER := 1.0
35714: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
35715: , p_commit IN VARCHAR2 := FND_API.G_FALSE
35716: , p_return_status OUT NOCOPY VARCHAR2
35717: , p_msg_count OUT NOCOPY NUMBER
35718: , p_msg_data OUT NOCOPY VARCHAR2
35719: , p_structure_version_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
35749: SAVEPOINT process_structure_updates;
35750:
35751: -- Standard call to check for call compatibility
35752:
35753: IF NOT FND_API.Compatible_API_Call ( g_api_version_number ,
35754: p_api_version_number ,
35755: l_api_name ,
35756: g_pkg_name )
35757: THEN
35755: l_api_name ,
35756: g_pkg_name )
35757: THEN
35758:
35759: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35760:
35761: END IF;
35762:
35763: -- Initialize the message table if requested
35761: END IF;
35762:
35763: -- Initialize the message table if requested
35764:
35765: IF FND_API.TO_BOOLEAN( p_init_msg_list )
35766: THEN
35767:
35768: FND_MSG_PUB.initialize;
35769:
35770: END IF;
35771:
35772: -- Set API return status to success
35773:
35774: p_return_status := FND_API.G_RET_STS_SUCCESS;
35775:
35776:
35777: -- Get the project ID
35778: -- Added if clause for Bug 6727014
35788: , p_out_project_id => l_project_id
35789: , p_return_status => l_return_status
35790: );
35791:
35792: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35793:
35794: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35795:
35796: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
35790: );
35791:
35792: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35793:
35794: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35795:
35796: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
35797:
35798: RAISE FND_API.G_EXC_ERROR;
35792: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
35793:
35794: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35795:
35796: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
35797:
35798: RAISE FND_API.G_EXC_ERROR;
35799: END IF;
35800:
35794: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35795:
35796: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
35797:
35798: RAISE FND_API.G_EXC_ERROR;
35799: END IF;
35800:
35801: END IF;
35802:
35803: If PA_PROJECT_STRUCTURE_UTILS.Check_Structure_Ver_Exists(l_project_id, p_structure_version_id) <> 'Y' THEN
35804: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
35805: p_msg_name => 'PA_INV_STRUCUTRE_VER_ID');
35806:
35807: RAISE FND_API.G_EXC_ERROR;
35808: End If;
35809:
35810: l_responsibility_id := FND_GLOBAL.Resp_id;
35811: l_user_id := FND_GLOBAL.User_id;
35836: p_msg_data => l_msg_data,
35837: p_return_status => l_return_status,
35838: p_function_allowed => l_function_allowed);
35839:
35840: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
35841: THEN
35842: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35843:
35844: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35838: p_function_allowed => l_function_allowed);
35839:
35840: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
35841: THEN
35842: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35843:
35844: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35845: THEN
35846: RAISE FND_API.G_EXC_ERROR;
35840: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
35841: THEN
35842: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35843:
35844: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35845: THEN
35846: RAISE FND_API.G_EXC_ERROR;
35847:
35848: END IF;
35842: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35843:
35844: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35845: THEN
35846: RAISE FND_API.G_EXC_ERROR;
35847:
35848: END IF;
35849:
35850: IF l_function_allowed = 'N' THEN
35857: ,p_attribute2 => ''
35858: ,p_attribute3 => ''
35859: ,p_attribute4 => ''
35860: ,p_attribute5 => '');
35861: p_return_status := FND_API.G_RET_STS_ERROR;
35862: RAISE FND_API.G_EXC_ERROR;
35863: END IF;
35864:
35865: --Bug# 5973460
35858: ,p_attribute3 => ''
35859: ,p_attribute4 => ''
35860: ,p_attribute5 => '');
35861: p_return_status := FND_API.G_RET_STS_ERROR;
35862: RAISE FND_API.G_EXC_ERROR;
35863: END IF;
35864:
35865: --Bug# 5973460
35866: l_process_code := PA_PROJECT_STRUCTURE_UTILS.GET_PROCESS_STATUS_CODE(p_project_id => l_project_id
35870: THEN
35871: PA_UTILS.ADD_MESSAGE( p_app_short_name => 'PA'
35872: ,p_msg_name => 'PA_PS_PUBLISH_ERROR');
35873:
35874: RAISE FND_API.G_EXC_ERROR;
35875: END IF;
35876: --Bug# 5973460
35877:
35878: -- check the process_update_wbs_flag
35902: ,x_return_status => l_return_status
35903: ,x_msg_count => l_msg_count
35904: ,x_msg_data => l_msg_data ) ;
35905:
35906: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
35907: THEN
35908: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35909: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35910: THEN
35904: ,x_msg_data => l_msg_data ) ;
35905:
35906: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
35907: THEN
35908: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35909: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35910: THEN
35911: RAISE FND_API.G_EXC_ERROR;
35912: END IF;
35905:
35906: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
35907: THEN
35908: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35909: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35910: THEN
35911: RAISE FND_API.G_EXC_ERROR;
35912: END IF;
35913:
35907: THEN
35908: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35909: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35910: THEN
35911: RAISE FND_API.G_EXC_ERROR;
35912: END IF;
35913:
35914: ELSIF p_process_mode = 'CONCURRENT' THEN
35915:
35919: ,x_return_status => l_return_status
35920: ,x_msg_count => l_msg_count
35921: ,x_msg_data => l_msg_data ) ;
35922:
35923: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
35924: THEN
35925: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35926: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35927: THEN
35921: ,x_msg_data => l_msg_data ) ;
35922:
35923: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
35924: THEN
35925: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35926: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35927: THEN
35928: RAISE FND_API.G_EXC_ERROR;
35929: END IF;
35922:
35923: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
35924: THEN
35925: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35926: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35927: THEN
35928: RAISE FND_API.G_EXC_ERROR;
35929: END IF;
35930:
35924: THEN
35925: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35926: ELSIF l_return_status = FND_API.G_RET_STS_ERROR
35927: THEN
35928: RAISE FND_API.G_EXC_ERROR;
35929: END IF;
35930:
35931: END IF ; -- p_process_mode
35932:
35933: END IF ; -- l_message_type
35934:
35935: END IF; -- l_update_wbs_flag
35936:
35937: IF FND_API.to_boolean( p_commit )
35938: THEN
35939: COMMIT;
35940: END IF;
35941:
35939: COMMIT;
35940: END IF;
35941:
35942: EXCEPTION
35943: WHEN FND_API.G_EXC_ERROR THEN
35944: p_return_status := FND_API.G_RET_STS_ERROR;
35945:
35946: ROLLBACK TO process_structure_updates;
35947:
35940: END IF;
35941:
35942: EXCEPTION
35943: WHEN FND_API.G_EXC_ERROR THEN
35944: p_return_status := FND_API.G_RET_STS_ERROR;
35945:
35946: ROLLBACK TO process_structure_updates;
35947:
35948: p_msg_count := l_msg_count;
35951: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
35952: , p_data => p_msg_data);
35953:
35954:
35955: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
35956: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
35957:
35958: ROLLBACK TO process_structure_updates;
35959:
35952: , p_data => p_msg_data);
35953:
35954:
35955: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
35956: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
35957:
35958: ROLLBACK TO process_structure_updates;
35959:
35960: p_msg_count := l_msg_count;
35963: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count
35964: , p_data => p_msg_data);
35965:
35966: WHEN OTHERS THEN
35967: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
35968:
35969: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
35970: FND_MSG_PUB.add_exc_msg
35971: (p_pkg_name => G_PKG_NAME
36062:
36063: if nvl(l_exists,'Y') = 'X' Then
36064: PA_PROJECT_PUB.process_structure_updates
36065: ( p_api_version_number => 1.0
36066: , p_init_msg_list => FND_API.G_TRUE
36067: , p_commit => FND_API.G_FALSE
36068: , p_return_status => l_return_status
36069: , p_msg_count => l_msg_count
36070: , p_msg_data => l_msg_data
36063: if nvl(l_exists,'Y') = 'X' Then
36064: PA_PROJECT_PUB.process_structure_updates
36065: ( p_api_version_number => 1.0
36066: , p_init_msg_list => FND_API.G_TRUE
36067: , p_commit => FND_API.G_FALSE
36068: , p_return_status => l_return_status
36069: , p_msg_count => l_msg_count
36070: , p_msg_data => l_msg_data
36071: , p_structure_version_id => i.structure_version_id
36073: , p_pm_project_reference => PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
36074: , p_process_mode => 'ONLINE'
36075: , p_calling_context => 'CONC_WRP');
36076:
36077: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
36078: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
36079: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
36080: RAISE FND_API.G_EXC_ERROR;
36081: ELSIF (l_return_status = FND_API.G_RET_STS_SUCCESS) THEN
36074: , p_process_mode => 'ONLINE'
36075: , p_calling_context => 'CONC_WRP');
36076:
36077: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
36078: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
36079: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
36080: RAISE FND_API.G_EXC_ERROR;
36081: ELSIF (l_return_status = FND_API.G_RET_STS_SUCCESS) THEN
36082: COMMIT;
36075: , p_calling_context => 'CONC_WRP');
36076:
36077: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
36078: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
36079: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
36080: RAISE FND_API.G_EXC_ERROR;
36081: ELSIF (l_return_status = FND_API.G_RET_STS_SUCCESS) THEN
36082: COMMIT;
36083: END IF;
36076:
36077: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
36078: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
36079: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
36080: RAISE FND_API.G_EXC_ERROR;
36081: ELSIF (l_return_status = FND_API.G_RET_STS_SUCCESS) THEN
36082: COMMIT;
36083: END IF;
36084:
36077: IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
36078: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
36079: ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
36080: RAISE FND_API.G_EXC_ERROR;
36081: ELSIF (l_return_status = FND_API.G_RET_STS_SUCCESS) THEN
36082: COMMIT;
36083: END IF;
36084:
36085: fnd_file.put_line(1, rpad(i.project_number,30,' ')||rpad(substrb(i.structure_name,1,60),65,' ')||l_return_status);
36087: fnd_file.put_line(1, rpad(i.project_number,30,' ')||rpad(substrb(i.structure_name,1,60),65,' ')||'A process is already running for this structure');
36088: End If;
36089:
36090: EXCEPTION
36091: WHEN FND_API.G_EXC_ERROR THEN
36092: l_retcode := '1';
36093:
36094: IF l_msg_count >= 1 THEN
36095: PA_INTERFACE_UTILS_PUB.get_messages
36092: l_retcode := '1';
36093:
36094: IF l_msg_count >= 1 THEN
36095: PA_INTERFACE_UTILS_PUB.get_messages
36096: (p_encoded => FND_API.G_FALSE
36097: ,p_msg_index => 1
36098: ,p_msg_count => l_msg_count
36099: ,p_msg_data => l_msg_data
36100: ,p_data => l_data
36103: fnd_file.put_line(1, rpad(i.project_number,30,' ')||rpad(substrb(i.structure_name,1,60),65,' ')||l_return_status||' - '||errbuf);
36104: END IF;
36105: ROLLBACK;
36106:
36107: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
36108: l_retcode := '1';
36109:
36110: IF l_msg_count >= 1 THEN
36111: PA_INTERFACE_UTILS_PUB.get_messages
36108: l_retcode := '1';
36109:
36110: IF l_msg_count >= 1 THEN
36111: PA_INTERFACE_UTILS_PUB.get_messages
36112: (p_encoded => FND_API.G_FALSE
36113: ,p_msg_index => 1
36114: ,p_msg_count => l_msg_count
36115: ,p_msg_data => l_msg_data
36116: ,p_data => l_data
36150: -- Bug # 5072032.
36151:
36152: PROCEDURE SETUP_PROJECT_AS_PROGRAM
36153: (p_api_version IN NUMBER := 1.0
36154: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
36155: , p_commit IN VARCHAR2 := FND_API.G_FALSE
36156: , p_debug_mode IN VARCHAR2 := 'N'
36157: , p_max_msg_count IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
36158: , p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
36151:
36152: PROCEDURE SETUP_PROJECT_AS_PROGRAM
36153: (p_api_version IN NUMBER := 1.0
36154: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
36155: , p_commit IN VARCHAR2 := FND_API.G_FALSE
36156: , p_debug_mode IN VARCHAR2 := 'N'
36157: , p_max_msg_count IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
36158: , p_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
36159: , p_pm_project_reference IN VARCHAR2 := PA_INTERFACE_UTILS_PUB.G_PA_MISS_CHAR
36198: -- Establish the save point.
36199: savepoint SETUP_PROJECT_AS_PROGRAM_AMG;
36200:
36201: -- Initialize the message table if requested.
36202: if FND_API.TO_BOOLEAN(p_init_msg_list) then
36203: FND_MSG_PUB.initialize;
36204: end if;
36205:
36206: -- Standard call to check for API compatibility.
36203: FND_MSG_PUB.initialize;
36204: end if;
36205:
36206: -- Standard call to check for API compatibility.
36207: if NOT FND_API.Compatible_API_Call (g_api_version_number, p_api_version, l_api_name, G_PKG_NAME) then
36208: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36209: end if;
36210:
36211: -- Initialize the return status
36204: end if;
36205:
36206: -- Standard call to check for API compatibility.
36207: if NOT FND_API.Compatible_API_Call (g_api_version_number, p_api_version, l_api_name, G_PKG_NAME) then
36208: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36209: end if;
36210:
36211: -- Initialize the return status
36212: x_return_status := FND_API.G_RET_STS_SUCCESS;
36208: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36209: end if;
36210:
36211: -- Initialize the return status
36212: x_return_status := FND_API.G_RET_STS_SUCCESS;
36213:
36214: -- Convert project reference to id.
36215: PA_PROJECT_PVT.Convert_pm_projref_to_id
36216: (p_pm_project_reference => p_pm_project_reference
36217: , p_pa_project_id => p_project_id
36218: , p_out_project_id => l_project_id
36219: , p_return_status => l_return_status);
36220:
36221: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36222: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36223: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36224: raise FND_API.G_EXC_ERROR;
36225: end if;
36218: , p_out_project_id => l_project_id
36219: , p_return_status => l_return_status);
36220:
36221: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36222: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36223: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36224: raise FND_API.G_EXC_ERROR;
36225: end if;
36226:
36219: , p_return_status => l_return_status);
36220:
36221: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36222: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36223: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36224: raise FND_API.G_EXC_ERROR;
36225: end if;
36226:
36227: -- Get the current attributes of the project.
36220:
36221: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36222: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36223: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36224: raise FND_API.G_EXC_ERROR;
36225: end if;
36226:
36227: -- Get the current attributes of the project.
36228: l_wp_enabled := PA_PROJECT_STRUCTURE_UTILS.Check_workplan_enabled(l_project_id);
36259: , p_msg_data => l_msg_data
36260: , p_return_status => l_return_status
36261: , p_function_allowed => l_function_allowed);
36262:
36263: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36264: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36265: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36266: raise FND_API.G_EXC_ERROR;
36267: end if;
36260: , p_return_status => l_return_status
36261: , p_function_allowed => l_function_allowed);
36262:
36263: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36264: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36265: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36266: raise FND_API.G_EXC_ERROR;
36267: end if;
36268:
36261: , p_function_allowed => l_function_allowed);
36262:
36263: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36264: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36265: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36266: raise FND_API.G_EXC_ERROR;
36267: end if;
36268:
36269: if l_function_allowed = 'N' then
36262:
36263: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36264: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36265: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36266: raise FND_API.G_EXC_ERROR;
36267: end if;
36268:
36269: if l_function_allowed = 'N' then
36270: pa_interface_utils_pub.map_new_amg_msg
36276: , p_attribute2 => ''
36277: , p_attribute3 => ''
36278: , p_attribute4 => ''
36279: , p_attribute5 => '');
36280: raise FND_API.G_EXC_ERROR;
36281: end if;
36282:
36283: -- Call the API to setup the project as a program.
36284: PA_PROJECT_STRUCTURE_PUB1.UPDATE_STRUCTURES_SETUP_ATTR
36298: , x_return_status => l_return_status
36299: , x_msg_count => l_msg_count
36300: , x_msg_data => l_msg_data);
36301:
36302: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36303: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36304: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36305: raise FND_API.G_EXC_ERROR;
36306: end if;
36299: , x_msg_count => l_msg_count
36300: , x_msg_data => l_msg_data);
36301:
36302: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36303: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36304: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36305: raise FND_API.G_EXC_ERROR;
36306: end if;
36307:
36300: , x_msg_data => l_msg_data);
36301:
36302: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36303: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36304: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36305: raise FND_API.G_EXC_ERROR;
36306: end if;
36307:
36308: -- Commit if p_commit = FND_API.G_TRUE.
36301:
36302: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36303: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36304: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36305: raise FND_API.G_EXC_ERROR;
36306: end if;
36307:
36308: -- Commit if p_commit = FND_API.G_TRUE.
36309: if (p_commit = FND_API.G_TRUE) then
36304: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36305: raise FND_API.G_EXC_ERROR;
36306: end if;
36307:
36308: -- Commit if p_commit = FND_API.G_TRUE.
36309: if (p_commit = FND_API.G_TRUE) then
36310: commit;
36311: end if;
36312:
36305: raise FND_API.G_EXC_ERROR;
36306: end if;
36307:
36308: -- Commit if p_commit = FND_API.G_TRUE.
36309: if (p_commit = FND_API.G_TRUE) then
36310: commit;
36311: end if;
36312:
36313: exception
36311: end if;
36312:
36313: exception
36314:
36315: when FND_API.G_EXC_ERROR then
36316: rollback to SETUP_PROJECT_AS_PROGRAM_AMG;
36317: x_return_status := FND_API.G_RET_STS_ERROR;
36318: x_msg_count := FND_MSG_PUB.count_msg;
36319:
36313: exception
36314:
36315: when FND_API.G_EXC_ERROR then
36316: rollback to SETUP_PROJECT_AS_PROGRAM_AMG;
36317: x_return_status := FND_API.G_RET_STS_ERROR;
36318: x_msg_count := FND_MSG_PUB.count_msg;
36319:
36320: if x_msg_count = 1 then
36321: PA_INTERFACE_UTILS_PUB.get_messages
36318: x_msg_count := FND_MSG_PUB.count_msg;
36319:
36320: if x_msg_count = 1 then
36321: PA_INTERFACE_UTILS_PUB.get_messages
36322: (p_encoded => FND_API.G_FALSE
36323: , p_msg_index => 1
36324: , p_msg_count => x_msg_count
36325: , p_msg_data => x_msg_data
36326: , p_data => x_msg_data
36326: , p_data => x_msg_data
36327: , p_msg_index_out => l_msg_index_out);
36328: end if;
36329:
36330: when FND_API.G_EXC_UNEXPECTED_ERROR then
36331: rollback to SETUP_PROJECT_AS_PROGRAM_AMG;
36332: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
36333: x_msg_count := FND_MSG_PUB.count_msg;
36334:
36328: end if;
36329:
36330: when FND_API.G_EXC_UNEXPECTED_ERROR then
36331: rollback to SETUP_PROJECT_AS_PROGRAM_AMG;
36332: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
36333: x_msg_count := FND_MSG_PUB.count_msg;
36334:
36335: if x_msg_count = 1 then
36336: PA_INTERFACE_UTILS_PUB.get_messages
36333: x_msg_count := FND_MSG_PUB.count_msg;
36334:
36335: if x_msg_count = 1 then
36336: PA_INTERFACE_UTILS_PUB.get_messages
36337: (p_encoded => FND_API.G_FALSE
36338: , p_msg_index => 1
36339: , p_msg_count => x_msg_count
36340: , p_msg_data => x_msg_data
36341: , p_data => x_msg_data
36343: end if;
36344:
36345: when OTHERS then
36346: rollback to SETUP_PROJECT_AS_PROGRAM_AMG;
36347: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
36348: x_msg_count := 1;
36349: x_msg_data := SQLERRM;
36350: if FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) then
36351: FND_MSG_PUB.add_exc_msg
36356: end SETUP_PROJECT_AS_PROGRAM;
36357:
36358: PROCEDURE CREATE_PROGRAM_LINKS
36359: (p_api_version IN NUMBER := 1.0
36360: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
36361: , p_commit IN VARCHAR2 := FND_API.G_FALSE
36362: , p_debug_mode IN VARCHAR2 := 'N'
36363: , p_max_msg_count IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
36364: , p_program_links_tbl IN PA_PROJECT_PUB.PROGRAM_LINKS_TBL_TYPE
36357:
36358: PROCEDURE CREATE_PROGRAM_LINKS
36359: (p_api_version IN NUMBER := 1.0
36360: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
36361: , p_commit IN VARCHAR2 := FND_API.G_FALSE
36362: , p_debug_mode IN VARCHAR2 := 'N'
36363: , p_max_msg_count IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
36364: , p_program_links_tbl IN PA_PROJECT_PUB.PROGRAM_LINKS_TBL_TYPE
36365: , x_return_status OUT NOCOPY VARCHAR2
36472: -- Establish the save point.
36473: savepoint CREATE_PROGRAM_LINKS_AMG;
36474:
36475: -- Initialize the message table if requested.
36476: if FND_API.TO_BOOLEAN(p_init_msg_list) then
36477: FND_MSG_PUB.initialize;
36478: end if;
36479:
36480: -- Standard call to check for API compatibility.
36477: FND_MSG_PUB.initialize;
36478: end if;
36479:
36480: -- Standard call to check for API compatibility.
36481: if NOT FND_API.Compatible_API_Call (g_api_version_number, p_api_version, l_api_name, G_PKG_NAME) then
36482: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36483: end if;
36484:
36485: -- Initialize the return status
36478: end if;
36479:
36480: -- Standard call to check for API compatibility.
36481: if NOT FND_API.Compatible_API_Call (g_api_version_number, p_api_version, l_api_name, G_PKG_NAME) then
36482: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36483: end if;
36484:
36485: -- Initialize the return status
36486: x_return_status := FND_API.G_RET_STS_SUCCESS;
36482: raise FND_API.G_EXC_UNEXPECTED_ERROR;
36483: end if;
36484:
36485: -- Initialize the return status
36486: x_return_status := FND_API.G_RET_STS_SUCCESS;
36487:
36488: -- Initialize the error flags.
36489: l_unexp_error_flag := 'N';
36490: l_exp_error_flag := 'N';
36517: , p_pa_project_id => p_program_links_tbl(l_count).parent_project_id
36518: , p_out_project_id => l_parent_project_id
36519: , p_return_status => l_return_status);
36520:
36521: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36522: l_unexp_error_flag := 'Y';
36523: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36524: l_exp_error_flag := 'Y';
36525: end if;
36519: , p_return_status => l_return_status);
36520:
36521: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36522: l_unexp_error_flag := 'Y';
36523: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36524: l_exp_error_flag := 'Y';
36525: end if;
36526:
36527: end if;
36535: , p_structure_type => p_program_links_tbl(l_count).structure_type
36536: , p_out_task_id => l_task_id
36537: , p_return_status => l_return_status);
36538:
36539: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36540: l_unexp_error_flag := 'Y';
36541: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36542: l_exp_error_flag := 'Y';
36543: end if;
36537: , p_return_status => l_return_status);
36538:
36539: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36540: l_unexp_error_flag := 'Y';
36541: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36542: l_exp_error_flag := 'Y';
36543: end if;
36544:
36545: end if;
36582: , p_structure_type => p_program_links_tbl(l_count).structure_type
36583: , p_out_task_id => l_task_id
36584: , p_return_status => l_return_status);
36585:
36586: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36587: l_unexp_error_flag := 'Y';
36588: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36589: l_exp_error_flag := 'Y';
36590: end if;
36584: , p_return_status => l_return_status);
36585:
36586: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36587: l_unexp_error_flag := 'Y';
36588: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36589: l_exp_error_flag := 'Y';
36590: end if;
36591: end if;
36592:
36675: , p_msg_data => l_msg_data
36676: , p_return_status => l_return_status
36677: , p_function_allowed => l_function_allowed);
36678:
36679: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36680: l_unexp_error_flag := 'Y';
36681: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36682: l_exp_error_flag := 'Y';
36683: end if;
36677: , p_function_allowed => l_function_allowed);
36678:
36679: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36680: l_unexp_error_flag := 'Y';
36681: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36682: l_exp_error_flag := 'Y';
36683: end if;
36684:
36685: if (l_exp_error_flag = 'N' and l_unexp_error_flag = 'N') then -- Indicates no errors thus far in the loop iteration.
36711: , p_msg_data => l_msg_data
36712: , p_return_status => l_return_status
36713: , p_function_allowed => l_function_allowed);
36714:
36715: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36716: l_unexp_error_flag := 'Y';
36717: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36718: l_exp_error_flag := 'Y';
36719: end if;
36713: , p_function_allowed => l_function_allowed);
36714:
36715: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36716: l_unexp_error_flag := 'Y';
36717: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36718: l_exp_error_flag := 'Y';
36719: end if;
36720:
36721: if (l_exp_error_flag = 'N' and l_unexp_error_flag = 'N') then -- Indicates no errors thus far in the loop iteration.
36772: -- Call the API to create the sub-project association.
36773: if (l_exp_error_flag = 'N' and l_unexp_error_flag = 'N') then -- Indicates no errors thus far in the loop iteration.
36774: PA_RELATIONSHIP_PUB.CREATE_SUBPROJECT_ASSOCIATION
36775: (p_api_version => p_api_version
36776: , p_init_msg_list => FND_API.G_FALSE
36777: , p_commit => p_commit
36778: , p_calling_module => 'AMG'
36779: , p_debug_mode => p_debug_mode
36780: , p_max_msg_count => p_max_msg_count
36785: , x_return_status => l_return_status
36786: , x_msg_count => l_msg_count
36787: , x_msg_data => l_msg_data);
36788:
36789: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36790: l_unexp_error_flag := 'Y';
36791: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36792: l_exp_error_flag := 'Y';
36793: end if;
36787: , x_msg_data => l_msg_data);
36788:
36789: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
36790: l_unexp_error_flag := 'Y';
36791: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
36792: l_exp_error_flag := 'Y';
36793: end if;
36794: end if;
36795:
36844:
36845: end if;
36846:
36847: PA_INTERFACE_UTILS_PUB.get_messages
36848: (p_encoded => FND_API.G_FALSE -- Get the encoded message.
36849: , p_msg_index => 1 -- Get the message at index 1.
36850: , p_data => l_prog_error_tbl(l_count).error_msg
36851: , p_msg_index_out => l_msg_index_out);
36852:
36859:
36860: if (l_error_count > 0) then
36861:
36862: -- Set the return status to error.
36863: x_return_status := FND_API.G_RET_STS_ERROR;
36864:
36865: -- Clear all previous messages from the message stack.
36866: FND_MSG_PUB.initialize;
36867:
36878: ,'ERRORMSG', l_prog_error_tbl(l).error_msg);
36879: end if;
36880: end loop;
36881:
36882: raise FND_API.G_EXC_ERROR;
36883:
36884: end if;
36885:
36886: -- Commit if p_commit = FND_API.G_TRUE.
36882: raise FND_API.G_EXC_ERROR;
36883:
36884: end if;
36885:
36886: -- Commit if p_commit = FND_API.G_TRUE.
36887: if (p_commit = FND_API.G_TRUE) then
36888: commit;
36889: end if;
36890:
36883:
36884: end if;
36885:
36886: -- Commit if p_commit = FND_API.G_TRUE.
36887: if (p_commit = FND_API.G_TRUE) then
36888: commit;
36889: end if;
36890:
36891: exception
36889: end if;
36890:
36891: exception
36892:
36893: when FND_API.G_EXC_ERROR then
36894: rollback to CREATE_PROGRAM_LINKS_AMG;
36895: x_return_status := FND_API.G_RET_STS_ERROR;
36896: x_msg_count := FND_MSG_PUB.count_msg;
36897:
36891: exception
36892:
36893: when FND_API.G_EXC_ERROR then
36894: rollback to CREATE_PROGRAM_LINKS_AMG;
36895: x_return_status := FND_API.G_RET_STS_ERROR;
36896: x_msg_count := FND_MSG_PUB.count_msg;
36897:
36898: if x_msg_count = 1 then
36899: PA_INTERFACE_UTILS_PUB.get_messages
36896: x_msg_count := FND_MSG_PUB.count_msg;
36897:
36898: if x_msg_count = 1 then
36899: PA_INTERFACE_UTILS_PUB.get_messages
36900: (p_encoded => FND_API.G_FALSE
36901: , p_msg_index => 1
36902: , p_msg_count => x_msg_count
36903: , p_msg_data => x_msg_data
36904: , p_data => x_msg_data
36904: , p_data => x_msg_data
36905: , p_msg_index_out => l_msg_index_out);
36906: end if;
36907:
36908: when FND_API.G_EXC_UNEXPECTED_ERROR then
36909: rollback to CREATE_PROGRAM_LINKS_AMG;
36910: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
36911: x_msg_count := FND_MSG_PUB.count_msg;
36912:
36906: end if;
36907:
36908: when FND_API.G_EXC_UNEXPECTED_ERROR then
36909: rollback to CREATE_PROGRAM_LINKS_AMG;
36910: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
36911: x_msg_count := FND_MSG_PUB.count_msg;
36912:
36913: if x_msg_count = 1 then
36914: PA_INTERFACE_UTILS_PUB.get_messages
36911: x_msg_count := FND_MSG_PUB.count_msg;
36912:
36913: if x_msg_count = 1 then
36914: PA_INTERFACE_UTILS_PUB.get_messages
36915: (p_encoded => FND_API.G_FALSE
36916: , p_msg_index => 1
36917: , p_msg_count => x_msg_count
36918: , p_msg_data => x_msg_data
36919: , p_data => x_msg_data
36921: end if;
36922:
36923: when OTHERS then
36924: rollback to CREATE_PROGRAM_LINKS_AMG;
36925: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
36926: x_msg_count := 1;
36927: x_msg_data := SQLERRM;
36928: if FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) then
36929: FND_MSG_PUB.add_exc_msg
36934: end CREATE_PROGRAM_LINKS;
36935:
36936: PROCEDURE UPDATE_PROGRAM_LINK_COMMENTS
36937: (p_api_version IN NUMBER := 1.0
36938: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
36939: , p_commit IN VARCHAR2 := FND_API.G_FALSE
36940: , p_debug_mode IN VARCHAR2 := 'N'
36941: , p_max_msg_count IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
36942: , p_program_links_tbl IN PA_PROJECT_PUB.PROGRAM_LINKS_TBL_TYPE
36935:
36936: PROCEDURE UPDATE_PROGRAM_LINK_COMMENTS
36937: (p_api_version IN NUMBER := 1.0
36938: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
36939: , p_commit IN VARCHAR2 := FND_API.G_FALSE
36940: , p_debug_mode IN VARCHAR2 := 'N'
36941: , p_max_msg_count IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
36942: , p_program_links_tbl IN PA_PROJECT_PUB.PROGRAM_LINKS_TBL_TYPE
36943: , x_return_status OUT NOCOPY VARCHAR2
37063: -- Establish the save point.
37064: savepoint UPDATE_PROGRAM_LINK_CMNTS_AMG;
37065:
37066: -- Initialize the message table if requested.
37067: if FND_API.TO_BOOLEAN(p_init_msg_list) then
37068: FND_MSG_PUB.initialize;
37069: end if;
37070:
37071: -- Standard call to check for API compatibility.
37068: FND_MSG_PUB.initialize;
37069: end if;
37070:
37071: -- Standard call to check for API compatibility.
37072: if NOT FND_API.Compatible_API_Call (g_api_version_number, p_api_version, l_api_name, G_PKG_NAME) then
37073: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37074: end if;
37075:
37076: -- Initialize the return status
37069: end if;
37070:
37071: -- Standard call to check for API compatibility.
37072: if NOT FND_API.Compatible_API_Call (g_api_version_number, p_api_version, l_api_name, G_PKG_NAME) then
37073: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37074: end if;
37075:
37076: -- Initialize the return status
37077: x_return_status := FND_API.G_RET_STS_SUCCESS;
37073: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37074: end if;
37075:
37076: -- Initialize the return status
37077: x_return_status := FND_API.G_RET_STS_SUCCESS;
37078:
37079: -- Initialize the error flags.
37080: l_unexp_error_flag := 'N';
37081: l_exp_error_flag := 'N';
37114: , p_pa_project_id => p_program_links_tbl(l_count).parent_project_id
37115: , p_out_project_id => l_parent_project_id
37116: , p_return_status => l_return_status);
37117:
37118: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37119: l_unexp_error_flag := 'Y';
37120: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37121: l_exp_error_flag := 'Y';
37122: end if;
37116: , p_return_status => l_return_status);
37117:
37118: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37119: l_unexp_error_flag := 'Y';
37120: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37121: l_exp_error_flag := 'Y';
37122: end if;
37123: end if;
37124:
37131: , p_structure_type => p_program_links_tbl(l_count).structure_type
37132: , p_out_task_id => l_task_id
37133: , p_return_status => l_return_status);
37134:
37135: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37136: l_unexp_error_flag := 'Y';
37137: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37138: l_exp_error_flag := 'Y';
37139: end if;
37133: , p_return_status => l_return_status);
37134:
37135: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37136: l_unexp_error_flag := 'Y';
37137: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37138: l_exp_error_flag := 'Y';
37139: end if;
37140: end if;
37141:
37178: , p_structure_type => p_program_links_tbl(l_count).structure_type
37179: , p_out_task_id => l_task_id
37180: , p_return_status => l_return_status);
37181:
37182: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37183: l_unexp_error_flag := 'Y';
37184: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37185: l_exp_error_flag := 'Y';
37186: end if;
37180: , p_return_status => l_return_status);
37181:
37182: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37183: l_unexp_error_flag := 'Y';
37184: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37185: l_exp_error_flag := 'Y';
37186: end if;
37187: end if;
37188:
37289: , p_msg_data => l_msg_data
37290: , p_return_status => l_return_status
37291: , p_function_allowed => l_function_allowed);
37292:
37293: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37294: l_unexp_error_flag := 'Y';
37295: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37296: l_exp_error_flag := 'Y';
37297: end if;
37291: , p_function_allowed => l_function_allowed);
37292:
37293: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37294: l_unexp_error_flag := 'Y';
37295: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37296: l_exp_error_flag := 'Y';
37297: end if;
37298:
37299: if (l_exp_error_flag = 'N' and l_unexp_error_flag = 'N') then -- Indicates no errors thus far in the loop iteration.
37326: , p_msg_data => l_msg_data
37327: , p_return_status => l_return_status
37328: , p_function_allowed => l_function_allowed);
37329:
37330: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37331: l_unexp_error_flag := 'Y';
37332: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37333: l_exp_error_flag := 'Y';
37334: end if;
37328: , p_function_allowed => l_function_allowed);
37329:
37330: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37331: l_unexp_error_flag := 'Y';
37332: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37333: l_exp_error_flag := 'Y';
37334: end if;
37335:
37336: if (l_exp_error_flag = 'N' and l_unexp_error_flag = 'N') then -- Indicates no errors thus far in the loop iteration.
37354: if (l_exp_error_flag = 'N' and l_unexp_error_flag = 'N') then -- Indicates no errors thus far in the loop iteration.
37355: -- Call the API to update the sub-project association.
37356: PA_RELATIONSHIP_PUB.UPDATE_SUBPROJECT_ASSOCIATION
37357: (p_api_version => p_api_version
37358: , p_init_msg_list => FND_API.G_FALSE
37359: , p_calling_module => 'AMG'
37360: , p_max_msg_count => p_max_msg_count
37361: , p_commit => p_commit
37362: , p_debug_mode => p_debug_mode
37366: , x_return_status => l_return_status
37367: , x_msg_count => l_msg_count
37368: , x_msg_data => l_msg_data);
37369:
37370: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37371: l_unexp_error_flag := 'Y';
37372: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37373: l_exp_error_flag := 'Y';
37374: end if;
37368: , x_msg_data => l_msg_data);
37369:
37370: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37371: l_unexp_error_flag := 'Y';
37372: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37373: l_exp_error_flag := 'Y';
37374: end if;
37375: end if;
37376:
37425:
37426: end if;
37427:
37428: PA_INTERFACE_UTILS_PUB.get_messages
37429: (p_encoded => FND_API.G_FALSE -- Get the encoded message.
37430: , p_msg_index => 1 -- Get the message at index 1.
37431: , p_data => l_prog_error_tbl(l_count).error_msg
37432: , p_msg_index_out => l_msg_index_out);
37433:
37440:
37441: if (l_error_count > 0) then
37442:
37443: -- Set the return status to error.
37444: x_return_status := FND_API.G_RET_STS_ERROR;
37445:
37446: -- Clear all previous messages from the message stack.
37447: FND_MSG_PUB.initialize;
37448:
37459: ,'ERRORMSG', l_prog_error_tbl(l).error_msg);
37460: end if;
37461: end loop;
37462:
37463: raise FND_API.G_EXC_ERROR;
37464:
37465: end if;
37466:
37467: -- Commit if p_commit = FND_API.G_TRUE.
37463: raise FND_API.G_EXC_ERROR;
37464:
37465: end if;
37466:
37467: -- Commit if p_commit = FND_API.G_TRUE.
37468: if (p_commit = FND_API.G_TRUE) then
37469: commit;
37470: end if;
37471:
37464:
37465: end if;
37466:
37467: -- Commit if p_commit = FND_API.G_TRUE.
37468: if (p_commit = FND_API.G_TRUE) then
37469: commit;
37470: end if;
37471:
37472: exception
37470: end if;
37471:
37472: exception
37473:
37474: when FND_API.G_EXC_ERROR then
37475: rollback to UPDATE_PROGRAM_LINK_CMNTS_AMG;
37476: x_return_status := FND_API.G_RET_STS_ERROR;
37477: x_msg_count := FND_MSG_PUB.count_msg;
37478:
37472: exception
37473:
37474: when FND_API.G_EXC_ERROR then
37475: rollback to UPDATE_PROGRAM_LINK_CMNTS_AMG;
37476: x_return_status := FND_API.G_RET_STS_ERROR;
37477: x_msg_count := FND_MSG_PUB.count_msg;
37478:
37479: if x_msg_count = 1 then
37480: PA_INTERFACE_UTILS_PUB.get_messages
37477: x_msg_count := FND_MSG_PUB.count_msg;
37478:
37479: if x_msg_count = 1 then
37480: PA_INTERFACE_UTILS_PUB.get_messages
37481: (p_encoded => FND_API.G_FALSE
37482: , p_msg_index => 1
37483: , p_msg_count => x_msg_count
37484: , p_msg_data => x_msg_data
37485: , p_data => x_msg_data
37485: , p_data => x_msg_data
37486: , p_msg_index_out => l_msg_index_out);
37487: end if;
37488:
37489: when FND_API.G_EXC_UNEXPECTED_ERROR then
37490: rollback to UPDATE_PROGRAM_LINK_CMNTS_AMG;
37491: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
37492: x_msg_count := FND_MSG_PUB.count_msg;
37493:
37487: end if;
37488:
37489: when FND_API.G_EXC_UNEXPECTED_ERROR then
37490: rollback to UPDATE_PROGRAM_LINK_CMNTS_AMG;
37491: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
37492: x_msg_count := FND_MSG_PUB.count_msg;
37493:
37494: if x_msg_count = 1 then
37495: PA_INTERFACE_UTILS_PUB.get_messages
37492: x_msg_count := FND_MSG_PUB.count_msg;
37493:
37494: if x_msg_count = 1 then
37495: PA_INTERFACE_UTILS_PUB.get_messages
37496: (p_encoded => FND_API.G_FALSE
37497: , p_msg_index => 1
37498: , p_msg_count => x_msg_count
37499: , p_msg_data => x_msg_data
37500: , p_data => x_msg_data
37502: end if;
37503:
37504: when OTHERS then
37505: rollback to UPDATE_PROGRAM_LINK_CMNTS_AMG;
37506: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
37507: x_msg_count := 1;
37508: x_msg_data := SQLERRM;
37509: if FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) then
37510: FND_MSG_PUB.add_exc_msg
37515: end UPDATE_PROGRAM_LINK_COMMENTS;
37516:
37517: PROCEDURE DELETE_PROGRAM_LINK
37518: (p_api_version IN NUMBER := 1.0
37519: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
37520: , p_commit IN VARCHAR2 := FND_API.G_FALSE
37521: , p_debug_mode IN VARCHAR2 := 'N'
37522: , p_max_msg_count IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
37523: , p_object_relationship_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
37516:
37517: PROCEDURE DELETE_PROGRAM_LINK
37518: (p_api_version IN NUMBER := 1.0
37519: , p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE
37520: , p_commit IN VARCHAR2 := FND_API.G_FALSE
37521: , p_debug_mode IN VARCHAR2 := 'N'
37522: , p_max_msg_count IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
37523: , p_object_relationship_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
37524: , p_parent_project_id IN NUMBER := PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM
37627: -- Establish the save point.
37628: savepoint DELETE_PROGRAM_LINK_AMG;
37629:
37630: -- Initialize the message table if requested.
37631: if FND_API.TO_BOOLEAN(p_init_msg_list) then
37632: FND_MSG_PUB.initialize;
37633: end if;
37634:
37635: -- Standard call to check for API compatibility.
37632: FND_MSG_PUB.initialize;
37633: end if;
37634:
37635: -- Standard call to check for API compatibility.
37636: if NOT FND_API.Compatible_API_Call (g_api_version_number, p_api_version, l_api_name, G_PKG_NAME) then
37637: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37638: end if;
37639:
37640: -- Initialize the return status
37633: end if;
37634:
37635: -- Standard call to check for API compatibility.
37636: if NOT FND_API.Compatible_API_Call (g_api_version_number, p_api_version, l_api_name, G_PKG_NAME) then
37637: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37638: end if;
37639:
37640: -- Initialize the return status
37641: x_return_status := FND_API.G_RET_STS_SUCCESS;
37637: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37638: end if;
37639:
37640: -- Initialize the return status
37641: x_return_status := FND_API.G_RET_STS_SUCCESS;
37642:
37643: -- If object relationship id is not passed in.
37644: if ((p_object_relationship_id is null)
37645: or (p_object_relationship_id = PA_INTERFACE_UTILS_PUB.G_PA_MISS_NUM)) then
37654: , p_pa_project_id => p_parent_project_id
37655: , p_out_project_id => l_parent_project_id
37656: , p_return_status => l_return_status);
37657:
37658: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37659: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37660: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37661: raise FND_API.G_EXC_ERROR;
37662: end if;
37655: , p_out_project_id => l_parent_project_id
37656: , p_return_status => l_return_status);
37657:
37658: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37659: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37660: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37661: raise FND_API.G_EXC_ERROR;
37662: end if;
37663:
37656: , p_return_status => l_return_status);
37657:
37658: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37659: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37660: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37661: raise FND_API.G_EXC_ERROR;
37662: end if;
37663:
37664: -- Convert task reference to id
37657:
37658: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37659: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37660: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37661: raise FND_API.G_EXC_ERROR;
37662: end if;
37663:
37664: -- Convert task reference to id
37665: PA_PROJECT_PVT.CONVERT_PM_TASKREF_TO_ID_ALL
37669: , p_structure_type => p_structure_type
37670: , p_out_task_id => l_task_id
37671: , p_return_status => l_return_status);
37672:
37673: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37674: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37675: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37676: raise FND_API.G_EXC_ERROR;
37677: end if;
37670: , p_out_task_id => l_task_id
37671: , p_return_status => l_return_status);
37672:
37673: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37674: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37675: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37676: raise FND_API.G_EXC_ERROR;
37677: end if;
37678:
37671: , p_return_status => l_return_status);
37672:
37673: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37674: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37675: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37676: raise FND_API.G_EXC_ERROR;
37677: end if;
37678:
37679: -- Find the task version id in the current working workplan structure version.
37672:
37673: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37674: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37675: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37676: raise FND_API.G_EXC_ERROR;
37677: end if;
37678:
37679: -- Find the task version id in the current working workplan structure version.
37680: open l_cur_task_ver_id(l_task_id, p_structure_type);
37683:
37684: -- Validate that the task has a version in the specified structure type.
37685: if (l_task_version_id is null) then
37686: PA_UTILS.ADD_MESSAGE('PA','PA_TASK_ID_INVALID');
37687: raise FND_API.G_EXC_ERROR;
37688: end if;
37689:
37690: -- If task version id is passed in.
37691: else
37694: open l_cur_project_id2(l_task_version_id);
37695: fetch l_cur_project_id2 into l_parent_project_id, l_task_id;
37696: if l_cur_project_id2%NOTFOUND then
37697: PA_UTILS.ADD_MESSAGE('PA','PA_TASK_VERSION_REQUIRED');
37698: raise FND_API.G_EXC_ERROR;
37699: end if;
37700: close l_cur_project_id2;
37701:
37702: -- Validate the task id and project id of the task version id.
37706: , p_structure_type => p_structure_type
37707: , p_out_task_id => l_task_id
37708: , p_return_status => l_return_status);
37709:
37710: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37711: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37712: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37713: raise FND_API.G_EXC_ERROR;
37714: end if;
37707: , p_out_task_id => l_task_id
37708: , p_return_status => l_return_status);
37709:
37710: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37711: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37712: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37713: raise FND_API.G_EXC_ERROR;
37714: end if;
37715:
37708: , p_return_status => l_return_status);
37709:
37710: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37711: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37712: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37713: raise FND_API.G_EXC_ERROR;
37714: end if;
37715:
37716: end if;
37709:
37710: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37711: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37712: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37713: raise FND_API.G_EXC_ERROR;
37714: end if;
37715:
37716: end if;
37717:
37747:
37748: if (l_sub_project_id is null) then
37749:
37750: PA_UTILS.ADD_MESSAGE('PA','PA_INV_PROJECT_ID');
37751: raise FND_API.G_EXC_ERROR;
37752:
37753: end if;
37754:
37755: open l_cur_por1(l_task_version_id, l_sub_project_id, p_structure_type);
37776: ,'STR', p_structure_type);
37777:
37778: close l_cur_por1;
37779:
37780: RAISE FND_API.G_EXC_ERROR;
37781: end if;
37782:
37783: close l_cur_por1;
37784:
37793: ,'OBJRELID', p_object_relationship_id);
37794:
37795: close l_cur_por2;
37796:
37797: RAISE FND_API.G_EXC_ERROR;
37798: end if;
37799:
37800: close l_cur_por2;
37801: end if;
37813: , p_msg_data => l_msg_data
37814: , p_return_status => l_return_status
37815: , p_function_allowed => l_function_allowed);
37816:
37817: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37818: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37819: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37820: raise FND_API.G_EXC_ERROR;
37821: end if;
37814: , p_return_status => l_return_status
37815: , p_function_allowed => l_function_allowed);
37816:
37817: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37818: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37819: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37820: raise FND_API.G_EXC_ERROR;
37821: end if;
37822:
37815: , p_function_allowed => l_function_allowed);
37816:
37817: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37818: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37819: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37820: raise FND_API.G_EXC_ERROR;
37821: end if;
37822:
37823: if l_function_allowed = 'N' then
37816:
37817: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37818: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37819: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37820: raise FND_API.G_EXC_ERROR;
37821: end if;
37822:
37823: if l_function_allowed = 'N' then
37824: pa_interface_utils_pub.map_new_amg_msg
37830: , p_attribute2 => ''
37831: , p_attribute3 => ''
37832: , p_attribute4 => ''
37833: , p_attribute5 => '');
37834: raise FND_API.G_EXC_ERROR;
37835: end if;
37836: end if;
37837:
37838: if (p_structure_type = 'FINANCIAL'
37845: , p_msg_data => l_msg_data
37846: , p_return_status => l_return_status
37847: , p_function_allowed => l_function_allowed);
37848:
37849: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37850: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37851: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37852: raise FND_API.G_EXC_ERROR;
37853: end if;
37846: , p_return_status => l_return_status
37847: , p_function_allowed => l_function_allowed);
37848:
37849: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37850: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37851: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37852: raise FND_API.G_EXC_ERROR;
37853: end if;
37854:
37847: , p_function_allowed => l_function_allowed);
37848:
37849: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37850: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37851: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37852: raise FND_API.G_EXC_ERROR;
37853: end if;
37854:
37855: if l_function_allowed = 'N' then
37848:
37849: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37850: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37851: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37852: raise FND_API.G_EXC_ERROR;
37853: end if;
37854:
37855: if l_function_allowed = 'N' then
37856: pa_interface_utils_pub.map_new_amg_msg
37862: , p_attribute2 => ''
37863: , p_attribute3 => ''
37864: , p_attribute4 => ''
37865: , p_attribute5 => '');
37866: raise FND_API.G_EXC_ERROR;
37867: end if;
37868: end if;
37869:
37870: -- Call the API to delete the sub-project association.
37880: , x_return_status => l_return_status
37881: , x_msg_count => l_msg_count
37882: , x_msg_data => l_msg_data);
37883:
37884: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37885: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37886: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37887: raise FND_API.G_EXC_ERROR;
37888: end if;
37881: , x_msg_count => l_msg_count
37882: , x_msg_data => l_msg_data);
37883:
37884: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37885: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37886: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37887: raise FND_API.G_EXC_ERROR;
37888: end if;
37889:
37882: , x_msg_data => l_msg_data);
37883:
37884: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37885: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37886: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37887: raise FND_API.G_EXC_ERROR;
37888: end if;
37889:
37890: -- Commit if p_commit = FND_API.G_TRUE.
37883:
37884: if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) then
37885: raise FND_API.G_EXC_UNEXPECTED_ERROR;
37886: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37887: raise FND_API.G_EXC_ERROR;
37888: end if;
37889:
37890: -- Commit if p_commit = FND_API.G_TRUE.
37891: if (p_commit = FND_API.G_TRUE) then
37886: elsif (l_return_status <> FND_API.G_RET_STS_SUCCESS) then
37887: raise FND_API.G_EXC_ERROR;
37888: end if;
37889:
37890: -- Commit if p_commit = FND_API.G_TRUE.
37891: if (p_commit = FND_API.G_TRUE) then
37892: commit;
37893: end if;
37894:
37887: raise FND_API.G_EXC_ERROR;
37888: end if;
37889:
37890: -- Commit if p_commit = FND_API.G_TRUE.
37891: if (p_commit = FND_API.G_TRUE) then
37892: commit;
37893: end if;
37894:
37895: exception
37893: end if;
37894:
37895: exception
37896:
37897: when FND_API.G_EXC_ERROR then
37898: rollback to DELETE_PROGRAM_LINK_AMG;
37899: x_return_status := FND_API.G_RET_STS_ERROR;
37900: x_msg_count := FND_MSG_PUB.count_msg;
37901:
37895: exception
37896:
37897: when FND_API.G_EXC_ERROR then
37898: rollback to DELETE_PROGRAM_LINK_AMG;
37899: x_return_status := FND_API.G_RET_STS_ERROR;
37900: x_msg_count := FND_MSG_PUB.count_msg;
37901:
37902: if x_msg_count = 1 then
37903: PA_INTERFACE_UTILS_PUB.get_messages
37900: x_msg_count := FND_MSG_PUB.count_msg;
37901:
37902: if x_msg_count = 1 then
37903: PA_INTERFACE_UTILS_PUB.get_messages
37904: (p_encoded => FND_API.G_FALSE
37905: , p_msg_index => 1
37906: , p_msg_count => x_msg_count
37907: , p_msg_data => x_msg_data
37908: , p_data => x_msg_data
37908: , p_data => x_msg_data
37909: , p_msg_index_out => l_msg_index_out);
37910: end if;
37911:
37912: when FND_API.G_EXC_UNEXPECTED_ERROR then
37913: rollback to DELETE_PROGRAM_LINK_AMG;
37914: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
37915: x_msg_count := FND_MSG_PUB.count_msg;
37916:
37910: end if;
37911:
37912: when FND_API.G_EXC_UNEXPECTED_ERROR then
37913: rollback to DELETE_PROGRAM_LINK_AMG;
37914: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
37915: x_msg_count := FND_MSG_PUB.count_msg;
37916:
37917: if x_msg_count = 1 then
37918: PA_INTERFACE_UTILS_PUB.get_messages
37915: x_msg_count := FND_MSG_PUB.count_msg;
37916:
37917: if x_msg_count = 1 then
37918: PA_INTERFACE_UTILS_PUB.get_messages
37919: (p_encoded => FND_API.G_FALSE
37920: , p_msg_index => 1
37921: , p_msg_count => x_msg_count
37922: , p_msg_data => x_msg_data
37923: , p_data => x_msg_data
37925: end if;
37926:
37927: when OTHERS then
37928: rollback to DELETE_PROGRAM_LINK_AMG;
37929: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
37930: x_msg_count := 1;
37931: x_msg_data := SQLERRM;
37932: if FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) then
37933: FND_MSG_PUB.add_exc_msg
38014: END IF;
38015: END LOOP;
38016: END LOOP;
38017:
38018: x_return_status := FND_API.G_RET_STS_SUCCESS;
38019:
38020: EXCEPTION
38021:
38022: WHEN FND_API.G_EXC_ERROR THEN
38018: x_return_status := FND_API.G_RET_STS_SUCCESS;
38019:
38020: EXCEPTION
38021:
38022: WHEN FND_API.G_EXC_ERROR THEN
38023:
38024: x_return_status := FND_API.G_RET_STS_ERROR;
38025:
38026:
38020: EXCEPTION
38021:
38022: WHEN FND_API.G_EXC_ERROR THEN
38023:
38024: x_return_status := FND_API.G_RET_STS_ERROR;
38025:
38026:
38027: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
38028:
38023:
38024: x_return_status := FND_API.G_RET_STS_ERROR;
38025:
38026:
38027: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
38028:
38029: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
38030:
38031: WHEN OTHERS THEN
38025:
38026:
38027: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
38028:
38029: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
38030:
38031: WHEN OTHERS THEN
38032:
38033: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
38029: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
38030:
38031: WHEN OTHERS THEN
38032:
38033: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
38034:
38035: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
38036: THEN
38037: FND_MSG_PUB.add_exc_msg