79: FND_MSG_PUB.initialize;
80: END IF;
81:
82: -- Debug Message
83: AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
84:
85:
86: -- Initialize API return status to SUCCESS
87: x_return_status := FND_API.G_RET_STS_SUCCESS;
109: -- =========================================================================
110:
111: IF FND_GLOBAL.User_Id IS NULL
112: THEN
113: AMS_Utility_PVT.Error_Message(p_message_name => 'USER_PROFILE_MISSING');
114: RAISE FND_API.G_EXC_ERROR;
115: END IF;
116:
117: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
116:
117: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
118: THEN
119: -- Debug message
120: AMS_UTILITY_PVT.debug_message('Private API: Validate_Code_Definition');
121:
122: -- Invoke validation procedures
123: Validate_code_definition(
124: p_api_version_number => 1.0,
154: END IF;
155: RAISE FND_API.g_exc_error;
156: END IF;
157: -- Debug Message
158: AMS_UTILITY_PVT.debug_message( 'Private API: Calling create table handler');
159:
160: -- Invoke table handler(AMS_R_CODE_DEFINITIONS_PKG.Insert_Row)
161: AMS_R_CODE_DEFINITIONS_PKG.Insert_Row(
162: p_creation_date => SYSDATE,
184: END IF;
185:
186:
187: -- Debug Message
188: AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
189:
190: -- Standard call to get message count and if count is 1, get message info.
191: FND_MSG_PUB.Count_And_Get
192: (p_count => x_msg_count,
193: p_data => x_msg_data
194: );
195: EXCEPTION
196:
197: WHEN AMS_Utility_PVT.resource_locked THEN
198: x_return_status := FND_API.g_ret_sts_error;
199: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
200:
201: WHEN FND_API.G_EXC_ERROR THEN
195: EXCEPTION
196:
197: WHEN AMS_Utility_PVT.resource_locked THEN
198: x_return_status := FND_API.g_ret_sts_error;
199: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
200:
201: WHEN FND_API.G_EXC_ERROR THEN
202: ROLLBACK TO CREATE_Code_Definition_PVT;
203: x_return_status := FND_API.G_RET_STS_ERROR;
356: FND_MSG_PUB.initialize;
357: END IF;
358:
359: -- Debug Message
360: --AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
361:
362:
363: -- Initialize API return status to SUCCESS
364: x_return_status := FND_API.G_RET_STS_SUCCESS;
363: -- Initialize API return status to SUCCESS
364: x_return_status := FND_API.G_RET_STS_SUCCESS;
365:
366: -- Debug Message
367: AMS_UTILITY_PVT.debug_message('Private API: - Open Cursor to Select');
368:
369:
370: OPEN c_get_Code_Definition( l_tar_code_def_rec.creation_date);
371:
371:
372: FETCH c_get_Code_Definition INTO l_ref_code_def_rec ;
373:
374: If ( c_get_Code_Definition%NOTFOUND) THEN
375: AMS_Utility_PVT.Error_Message(p_message_name => 'API_MISSING_UPDATE_TARGET',
376: p_token_name => 'INFO',
377: p_token_value => 'Code_Definition') ;
378: RAISE FND_API.G_EXC_ERROR;
379: END IF;
377: p_token_value => 'Code_Definition') ;
378: RAISE FND_API.G_EXC_ERROR;
379: END IF;
380: -- Debug Message
381: --AMS_UTILITY_PVT.debug_message('Private API: - Close Cursor');
382: CLOSE c_get_Code_Definition;
383:
384:
385:
384:
385:
386: If (l_tar_code_def_rec.object_version_number is NULL or
387: l_tar_code_def_rec.object_version_number = FND_API.G_MISS_NUM ) Then
388: AMS_Utility_PVT.Error_Message(p_message_name => 'API_VERSION_MISSING',
389: p_token_name => 'COLUMN',
390: p_token_value => 'Last_Update_Date') ;
391: raise FND_API.G_EXC_ERROR;
392: End if;
391: raise FND_API.G_EXC_ERROR;
392: End if;
393: -- Check Whether record has been changed by someone else
394: If (l_tar_code_def_rec.object_version_number <> l_ref_code_def_rec.object_version_number) Then
395: AMS_Utility_PVT.Error_Message(p_message_name => 'API_RECORD_CHANGED',
396: p_token_name => 'INFO',
397: p_token_value => 'Code_Definition') ;
398: raise FND_API.G_EXC_ERROR;
399: End if;
399: End if;
400: IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
401: THEN
402: -- Debug message
403: --AMS_UTILITY_PVT.debug_message('Private API: Validate_Code_Definition');
404:
405: -- Invoke validation procedures
406: Validate_code_definition(
407: p_api_version_number => 1.0,
419: END IF;
420: -- replace g_miss_char/num/date with current column values
421:
422: -- Debug Message
423: AMS_UTILITY_PVT.debug_message( 'Private API: Calling update table handler');
424: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||p_code_def_rec.code_definition_id);
425: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||l_tar_code_def_rec.code_definition_id);
426: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.l_object_version_number'||p_code_def_rec.object_version_number);
427: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.object_type'||p_code_def_rec.object_type);
420: -- replace g_miss_char/num/date with current column values
421:
422: -- Debug Message
423: AMS_UTILITY_PVT.debug_message( 'Private API: Calling update table handler');
424: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||p_code_def_rec.code_definition_id);
425: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||l_tar_code_def_rec.code_definition_id);
426: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.l_object_version_number'||p_code_def_rec.object_version_number);
427: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.object_type'||p_code_def_rec.object_type);
428: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.column_name'||p_code_def_rec.column_name);
421:
422: -- Debug Message
423: AMS_UTILITY_PVT.debug_message( 'Private API: Calling update table handler');
424: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||p_code_def_rec.code_definition_id);
425: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||l_tar_code_def_rec.code_definition_id);
426: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.l_object_version_number'||p_code_def_rec.object_version_number);
427: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.object_type'||p_code_def_rec.object_type);
428: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.column_name'||p_code_def_rec.column_name);
429: -- Invoke table handler(AMS_R_CODE_DEFINITIONS_PKG.Update_Row)
422: -- Debug Message
423: AMS_UTILITY_PVT.debug_message( 'Private API: Calling update table handler');
424: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||p_code_def_rec.code_definition_id);
425: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||l_tar_code_def_rec.code_definition_id);
426: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.l_object_version_number'||p_code_def_rec.object_version_number);
427: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.object_type'||p_code_def_rec.object_type);
428: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.column_name'||p_code_def_rec.column_name);
429: -- Invoke table handler(AMS_R_CODE_DEFINITIONS_PKG.Update_Row)
430: AMS_R_CODE_DEFINITIONS_PKG.Update_Row(
423: AMS_UTILITY_PVT.debug_message( 'Private API: Calling update table handler');
424: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||p_code_def_rec.code_definition_id);
425: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||l_tar_code_def_rec.code_definition_id);
426: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.l_object_version_number'||p_code_def_rec.object_version_number);
427: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.object_type'||p_code_def_rec.object_type);
428: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.column_name'||p_code_def_rec.column_name);
429: -- Invoke table handler(AMS_R_CODE_DEFINITIONS_PKG.Update_Row)
430: AMS_R_CODE_DEFINITIONS_PKG.Update_Row(
431: p_last_update_date => SYSDATE,
424: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||p_code_def_rec.code_definition_id);
425: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.code_definition_id'||l_tar_code_def_rec.code_definition_id);
426: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.l_object_version_number'||p_code_def_rec.object_version_number);
427: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.object_type'||p_code_def_rec.object_type);
428: AMS_UTILITY_PVT.debug_message( ' p_code_def_rec.column_name'||p_code_def_rec.column_name);
429: -- Invoke table handler(AMS_R_CODE_DEFINITIONS_PKG.Update_Row)
430: AMS_R_CODE_DEFINITIONS_PKG.Update_Row(
431: p_last_update_date => SYSDATE,
432: p_last_updated_by => FND_GLOBAL.USER_ID,
449: END IF;
450:
451:
452: -- Debug Message
453: AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
454:
455: -- Standard call to get message count and if count is 1, get message info.
456: FND_MSG_PUB.Count_And_Get
457: (p_count => x_msg_count,
458: p_data => x_msg_data
459: );
460: EXCEPTION
461:
462: WHEN AMS_Utility_PVT.resource_locked THEN
463: x_return_status := FND_API.g_ret_sts_error;
464: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
465:
466: WHEN FND_API.G_EXC_ERROR THEN
460: EXCEPTION
461:
462: WHEN AMS_Utility_PVT.resource_locked THEN
463: x_return_status := FND_API.g_ret_sts_error;
464: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
465:
466: WHEN FND_API.G_EXC_ERROR THEN
467: ROLLBACK TO UPDATE_Code_Definition_PVT;
468: x_return_status := FND_API.G_RET_STS_ERROR;
535: FND_MSG_PUB.initialize;
536: END IF;
537:
538: -- Debug Message
539: AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
540:
541:
542: -- Initialize API return status to SUCCESS
543: x_return_status := FND_API.G_RET_STS_SUCCESS;
545: --
546: -- Api body
547: --
548: -- Debug Message
549: AMS_UTILITY_PVT.debug_message( 'Private API: Calling delete table handler');
550:
551: -- Invoke table handler(AMS_R_CODE_DEFINITIONS_PKG.Delete_Row)
552: AMS_R_CODE_DEFINITIONS_PKG.Delete_Row(
553: p_CODE_DEFINITION_ID => p_CODE_DEFINITION_ID);
562: END IF;
563:
564:
565: -- Debug Message
566: AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
567:
568: -- Standard call to get message count and if count is 1, get message info.
569: FND_MSG_PUB.Count_And_Get
570: (p_count => x_msg_count,
571: p_data => x_msg_data
572: );
573: EXCEPTION
574:
575: WHEN AMS_Utility_PVT.resource_locked THEN
576: x_return_status := FND_API.g_ret_sts_error;
577: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
578:
579: WHEN FND_API.G_EXC_ERROR THEN
573: EXCEPTION
574:
575: WHEN AMS_Utility_PVT.resource_locked THEN
576: x_return_status := FND_API.g_ret_sts_error;
577: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
578:
579: WHEN FND_API.G_EXC_ERROR THEN
580: ROLLBACK TO DELETE_Code_Definition_PVT;
581: x_return_status := FND_API.G_RET_STS_ERROR;
641:
642: BEGIN
643:
644: -- Debug Message
645: AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
646:
647: -- Initialize message list if p_init_msg_list is set to TRUE.
648: IF FND_API.to_Boolean( p_init_msg_list )
649: THEN
665:
666:
667: ------------------------ lock -------------------------
668:
669: AMS_Utility_PVT.debug_message(l_full_name||': start');
670: OPEN c_Code_Definition;
671:
672: FETCH c_Code_Definition INTO l_CODE_DEFINITION_ID;
673:
686: FND_MSG_PUB.count_and_get(
687: p_encoded => FND_API.g_false,
688: p_count => x_msg_count,
689: p_data => x_msg_data);
690: AMS_Utility_PVT.debug_message(l_full_name ||': end');
691: EXCEPTION
692:
693: WHEN AMS_Utility_PVT.resource_locked THEN
694: x_return_status := FND_API.g_ret_sts_error;
689: p_data => x_msg_data);
690: AMS_Utility_PVT.debug_message(l_full_name ||': end');
691: EXCEPTION
692:
693: WHEN AMS_Utility_PVT.resource_locked THEN
694: x_return_status := FND_API.g_ret_sts_error;
695: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
696:
697: WHEN FND_API.G_EXC_ERROR THEN
691: EXCEPTION
692:
693: WHEN AMS_Utility_PVT.resource_locked THEN
694: x_return_status := FND_API.g_ret_sts_error;
695: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
696:
697: WHEN FND_API.G_EXC_ERROR THEN
698: ROLLBACK TO LOCK_Code_Definition_PVT;
699: x_return_status := FND_API.G_RET_STS_ERROR;
739:
740: BEGIN
741: x_return_status := FND_API.g_ret_sts_success;
742: IF p_validation_mode = JTF_PLSQL_API.g_create THEN
743: l_valid_flag := AMS_Utility_PVT.check_uniqueness(
744: 'BIM_R_CODE_DEFINITIONS',
745: 'CODE_DEFINITION_ID = ''' || p_code_def_rec.CODE_DEFINITION_ID ||''''
746: );
747: ELSE
744: 'BIM_R_CODE_DEFINITIONS',
745: 'CODE_DEFINITION_ID = ''' || p_code_def_rec.CODE_DEFINITION_ID ||''''
746: );
747: ELSE
748: l_valid_flag := AMS_Utility_PVT.check_uniqueness(
749: 'BIM_R_CODE_DEFINITIONS',
750: 'CODE_DEFINITION_ID = ''' || p_code_def_rec.CODE_DEFINITION_ID ||
751: ''' AND CODE_DEFINITION_ID <> ' || p_code_def_rec.CODE_DEFINITION_ID
752: );
752: );
753: END IF;
754:
755: IF l_valid_flag = FND_API.g_false THEN
756: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_CODE_DEFINITION_ID_DUPLICATE');
757: x_return_status := FND_API.g_ret_sts_error;
758: RETURN;
759: END IF;
760:
789: ELSE
790:
791:
792: IF p_code_def_rec.code_definition_id IS NULL THEN
793: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_code_def_NO_code_definition_id');
794: x_return_status := FND_API.g_ret_sts_error;
795: RETURN;
796: END IF;
797:
796: END IF;
797:
798:
799: IF p_code_def_rec.object_version_number IS NULL THEN
800: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_code_def_NO_object_version_number');
801: x_return_status := FND_API.g_ret_sts_error;
802: RETURN;
803: END IF;
804: END IF;
948: END IF;
949:
950:
951: -- Debug Message
952: -- AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
953:
954:
955: -- Initialize API return status to SUCCESS
956: x_return_status := FND_API.G_RET_STS_SUCCESS;
956: x_return_status := FND_API.G_RET_STS_SUCCESS;
957:
958:
959: -- Debug Message
960: -- AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
961:
962: -- Standard call to get message count and if count is 1, get message info.
963: FND_MSG_PUB.Count_And_Get
964: (p_count => x_msg_count,
965: p_data => x_msg_data
966: );
967: EXCEPTION
968:
969: WHEN AMS_Utility_PVT.resource_locked THEN
970: x_return_status := FND_API.g_ret_sts_error;
971: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
972:
973: WHEN FND_API.G_EXC_ERROR THEN
967: EXCEPTION
968:
969: WHEN AMS_Utility_PVT.resource_locked THEN
970: x_return_status := FND_API.g_ret_sts_error;
971: AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
972:
973: WHEN FND_API.G_EXC_ERROR THEN
974: ROLLBACK TO VALIDATE_Code_Definition_;
975: x_return_status := FND_API.G_RET_STS_ERROR;
1030: -- THEN
1031: -- x_return_status := FND_API.G_RET_STS_ERROR;
1032:
1033: -- Debug Message
1034: -- AMS_UTILITY_PVT.debug_message('Private API: Validate_dm_model_rec');
1035: -- Standard call to get message count and if count is 1, get message info.
1036: FND_MSG_PUB.Count_And_Get
1037: (p_count => x_msg_count,
1038: p_data => x_msg_data