The following lines contain the word 'select', 'insert', 'update' or 'delete':
FUNCTION Can_Be_Deleted (
p_program_type_id NUMBER
)
RETURN BOOLEAN;
SELECT PV_PARTNER_PROGRAM_TYPE_B_S.NEXTVAL
FROM dual;
SELECT 'X'
FROM PV_PARTNER_PROGRAM_TYPE_B
WHERE PROGRAM_TYPE_ID = l_id;
l_ptr_prgm_type_rec.last_update_date := SYSDATE;
l_ptr_prgm_type_rec.last_updated_by := FND_GLOBAL.user_id;
l_ptr_prgm_type_rec.last_update_login := FND_GLOBAL.conc_login_id;
PV_PARTNER_PGM_TYPE_PKG.Insert_Row(
px_PROGRAM_TYPE_ID => l_ptr_prgm_type_rec.PROGRAM_TYPE_ID
,p_active_flag => l_ptr_prgm_type_rec.active_flag
,p_enabled_flag => l_ptr_prgm_type_rec.enabled_flag
,p_object_version_number => l_object_version_number
,p_creation_date => l_ptr_prgm_type_rec.creation_date
,p_created_by => l_ptr_prgm_type_rec.created_by
,p_last_update_date => l_ptr_prgm_type_rec.last_update_date
,p_last_updated_by => l_ptr_prgm_type_rec.last_updated_by
,p_last_update_login => l_ptr_prgm_type_rec.last_update_login
,p_program_type_name => l_ptr_prgm_type_rec.program_type_name
,p_program_type_description => l_ptr_prgm_type_rec.program_type_description
);
PROCEDURE Update_Partner_Pgm_Type(
p_api_version_number IN NUMBER
,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
,p_commit IN VARCHAR2 := FND_API.G_FALSE
,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
,x_return_status OUT NOCOPY VARCHAR2
,x_msg_count OUT NOCOPY NUMBER
,x_msg_data OUT NOCOPY VARCHAR2
,p_ptr_prgm_type_rec IN ptr_prgm_type_rec_type
)
IS
CURSOR c_get_partner_pgm_type(cv_PROGRAM_TYPE_ID NUMBER) IS
SELECT *
FROM PV_PARTNER_PROGRAM_TYPE_B
WHERE PROGRAM_TYPE_ID = cv_PROGRAM_TYPE_ID;
l_api_name CONSTANT VARCHAR2(30) := 'Update_Partner_Pgm_Type';
SAVEPOINT UPDATE_Partner_Pgm_Type_PVT;
FND_MESSAGE.set_token('MODE','Update');
,p_validation_mode => JTF_PLSQL_API.g_update
,p_ptr_prgm_type_rec => p_ptr_prgm_type_rec
,x_return_status => x_return_status
,x_msg_count => x_msg_count
,x_msg_data => x_msg_data
);
PVX_Utility_PVT.debug_message('Private API: '||l_full_name||' - Calling update table handler');
PV_PARTNER_PGM_TYPE_PKG.Update_Row(
p_PROGRAM_TYPE_ID => l_tar_ptr_prgm_type_rec.PROGRAM_TYPE_ID
,p_active_flag => l_tar_ptr_prgm_type_rec.active_flag
,p_enabled_flag => l_tar_ptr_prgm_type_rec.enabled_flag
,p_object_version_number => l_tar_ptr_prgm_type_rec.object_version_number
,p_last_update_date => SYSDATE
,p_last_updated_by => FND_GLOBAL.user_id
,p_last_update_login => FND_GLOBAL.conc_login_id
,p_program_type_name => l_tar_ptr_prgm_type_rec.program_type_name
,p_program_type_description => l_tar_ptr_prgm_type_rec.program_type_description
);
ROLLBACK TO UPDATE_Partner_Pgm_Type_PVT;
ROLLBACK TO UPDATE_Partner_Pgm_Type_PVT;
ROLLBACK TO UPDATE_Partner_Pgm_Type_PVT;
End Update_Partner_Pgm_Type;
PROCEDURE Delete_Partner_Pgm_Type(
p_api_version_number IN NUMBER
,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
,p_commit IN VARCHAR2 := FND_API.G_FALSE
,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
,x_return_status OUT NOCOPY VARCHAR2
,x_msg_count OUT NOCOPY NUMBER
,x_msg_data OUT NOCOPY VARCHAR2
,p_PROGRAM_TYPE_ID IN NUMBER
,p_object_version_number IN NUMBER
)
IS
CURSOR c_get_ptr_prgm_type_rec(cv_PROGRAM_TYPE_ID NUMBER) IS
SELECT *
FROM PV_PARTNER_PROGRAM_TYPE_B
WHERE PROGRAM_TYPE_ID = cv_PROGRAM_TYPE_ID;
l_api_name CONSTANT VARCHAR2(30) := 'Delete_Partner_Pgm_Type';
SAVEPOINT DELETE_Partner_Pgm_Type_PVT;
FND_MESSAGE.set_token('MODE','Update');
IF NOT Can_Be_Deleted(p_PROGRAM_TYPE_ID) THEN
FND_MESSAGE.set_name('PV', 'PV_PRGM_TYPE_CAN_NOT_DELETE');
PVX_Utility_PVT.debug_message('Private API: '||l_full_name||' - Calling update for soft delete');
PV_PARTNER_PGM_TYPE_PVT.Update_Partner_Pgm_Type(
p_api_version_number => l_api_version_number
,p_init_msg_list => FND_API.g_false
,p_commit => FND_API.g_false
,p_validation_level => FND_API.g_valid_level_full
,x_return_status => l_return_status
,x_msg_count => l_msg_count
,x_msg_data => l_msg_data
,p_ptr_prgm_type_rec => l_tar_ptr_prgm_type_rec
);
ROLLBACK TO DELETE_Partner_Pgm_Type_PVT;
ROLLBACK TO DELETE_Partner_Pgm_Type_PVT;
ROLLBACK TO DELETE_Partner_Pgm_Type_PVT;
End Delete_Partner_Pgm_Type;
SELECT PROGRAM_TYPE_ID
FROM PV_PARTNER_PROGRAM_TYPE_B
WHERE PROGRAM_TYPE_ID = px_PROGRAM_TYPE_ID
AND object_version_number = p_object_version
FOR UPDATE NOWAIT;
IF p_ptr_prgm_type_rec.last_update_date = FND_API.g_miss_date
OR p_ptr_prgm_type_rec.last_update_date IS NULL THEN
FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
FND_MESSAGE.set_token('COLUMN','LAST_UPDATE_DATE');
IF p_ptr_prgm_type_rec.last_updated_by = FND_API.g_miss_num
OR p_ptr_prgm_type_rec.last_updated_by IS NULL THEN
FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
FND_MESSAGE.set_token('COLUMN','LAST_UPDATED_BY');
IF p_ptr_prgm_type_rec.last_update_login = FND_API.g_miss_num
OR p_ptr_prgm_type_rec.last_update_login IS NULL THEN
FND_MESSAGE.set_name('PV', 'PV_API_MISSING_REQ_COLUMN');
FND_MESSAGE.set_token('COLUMN','LAST_UPDATE_LOGIN');
SELECT *
FROM PV_PARTNER_PROGRAM_TYPE_VL
WHERE PROGRAM_TYPE_ID = p_ptr_prgm_type_rec.PROGRAM_TYPE_ID;
IF p_ptr_prgm_type_rec.last_update_date IS NULL THEN
x_complete_rec.last_update_date := l_ptr_prgm_type_rec.last_update_date;
IF p_ptr_prgm_type_rec.last_updated_by IS NULL THEN
x_complete_rec.last_updated_by := l_ptr_prgm_type_rec.last_updated_by;
IF p_ptr_prgm_type_rec.last_update_login IS NULL THEN
x_complete_rec.last_update_login := l_ptr_prgm_type_rec.last_update_login;
,p_validation_mode IN VARCHAR2 := Jtf_Plsql_Api.G_UPDATE
,x_return_status OUT NOCOPY VARCHAR2
,x_msg_count OUT NOCOPY NUMBER
,x_msg_data OUT NOCOPY VARCHAR2
)
IS
l_api_name CONSTANT VARCHAR2(30) := 'Validate_Partner_Pgm_Type';
,p_validation_mode IN VARCHAR2 := Jtf_Plsql_Api.G_UPDATE
)
IS
BEGIN
-- Initialize message list if p_init_msg_list is set to TRUE.
IF FND_API.to_Boolean( p_init_msg_list )
THEN
FND_MSG_PUB.initialize;
SELECT 'x' FROM DUAL WHERE EXISTS (
SELECT 'x' FROM PV_PARTNER_PROGRAM_B
WHERE PROGRAM_TYPE_ID = l_program_type_id
AND PROGRAM_STATUS_CODE NOT IN ('CANCEL', 'CLOSED','ARCHIVE')
AND ENABLED_FLAG = 'Y'
);
* Private Function Check_Can_Be_Deleted
* Provide the logic for checking if the Partner Program Type can be deleted
****/
FUNCTION Can_Be_Deleted (
p_program_type_id NUMBER
)
RETURN BOOLEAN
IS
l_delete BOOLEAN := TRUE;
SELECT 'x' FROM DUAL WHERE EXISTS (
SELECT 'x' FROM PV_PARTNER_PROGRAM_B
WHERE PROGRAM_TYPE_ID = l_program_type_id
AND ENABLED_FLAG = 'Y'
);
l_delete := false;
return l_delete;
END Can_Be_Deleted;