The following lines contain the word 'select', 'insert', 'update' or 'delete':
Procedure DELETE_ASSOCIATION_AND_CTD(
p_ctd_id_list JTF_NUMBER_TABLE,
p_used_by VARCHAR2,
p_used_by_val1 VARCHAR2
)
IS
l_ctd_exists_count NUMBER;
SELECT ctd_id
FROM ams_ctd_associations
WHERE used_by_type = p_used_by AND used_by_val1 = p_used_by_val1;
SELECT CTD_LIST1.CTD_ID
FROM
(SELECT column_value ctd_id
FROM TABLE(CAST(p_ctd_id_list as JTF_NUMBER_TABLE)) ) CTD_LIST1
WHERE CTD_LIST1.CTD_ID NOT IN
(SELECT ASSOC.CTD_ID
FROM AMS_CTD_ASSOCIATIONS assoc,
(SELECT column_value ctd_id
FROM TABLE(CAST(p_ctd_id_list as JTF_NUMBER_TABLE))) ctd_list
WHERE assoc.ctd_id = ctd_list.ctd_id
); */
SELECT CTD_LIST1.CTD_ID
FROM
(SELECT column_value ctd_id
FROM TABLE(CAST(p_ctd_id_list as JTF_NUMBER_TABLE)) ) CTD_LIST1
WHERE NOT EXISTS (select 1 from AMS_CTD_ASSOCIATIONS assoc WHERE
assoc.ctd_id = ctd_list1.ctd_id);
PROCEDURE_NAME CONSTANT VARCHAR2(30) := 'DELETE_ASSOCIATION_AND_CTD';
'Number of CTDs to be deleted = '||to_char(p_ctd_id_list.count)|| 'for Used By = '||p_used_by|| 'Used By Id = '||p_used_by_val1
);
'BEFORE_BULK_DELETE_ASSOCIATION',
'Before bulk delete of association'
);
DELETE FROM AMS_CTD_ASSOCIATIONS
WHERE CTD_ID = p_ctd_id_list(i)
and used_by_type = p_used_by
and used_by_val1 = p_used_by_val1;
'AFTER_BULK_DELETE_ASSOCIATION',
'Associations Deleted Successfully!!'
);
'Number of CTDs to be deleted = '||to_char(l_not_associated_ctd_list.count)
);
DELETE FROM AMS_CTDS
WHERE CTD_ID = l_not_associated_ctd_list(i);
'AFTER_CTD_BULK_DELETE',
'CTDs deleted successfully!!'
);
DELETE FROM AMS_CTD_PARAM_VALUES
WHERE CTD_ID = l_not_associated_ctd_list(i);
'AFTER_CTD_PARAM_VALUES_BULK_DELETE',
'CTD Param Values deleted successfully!!'
);
DELETE FROM AMS_CTD_ADHOC_PARAM_VALUES
WHERE CTD_ID = l_not_associated_ctd_list(i);
'AFTER_CTD_ADHOC_PARAM_VALUES_BULK_DELETE',
'CTD Adhoc Param Values deleted successfully!!'
);
END DELETE_ASSOCIATION_AND_CTD;
SELECT ams_ctd_associations_s.nextval
FROM DUAL;
INSERT INTO
AMS_CTD_ASSOCIATIONS
(
association_id,
ctd_id,
used_by_type,
used_by_val1,
used_by_val2,
used_by_val3,
used_by_val4,
used_by_val5,
object_version_number,
last_update_date,
last_updated_by,
last_update_login,
creation_date,
created_by,
security_group_id
)
VALUES
(
l_assoc_seq_id_list(i),
p_ctd_id_list(i),
p_used_by,
p_used_by_val1,
null,
null,
null,
null,
1,
sysdate,
FND_GLOBAL.USER_ID,
FND_GLOBAL.USER_ID,
sysdate,
FND_GLOBAL.USER_ID,
null
);
Procedure CREATE_AND_DELETE_ASSOCIATION(
p_ctd_id_list JTF_NUMBER_TABLE,
p_used_by VARCHAR2,
p_used_by_val1 VARCHAR2
)
IS
CURSOR C_GET_NEW_ASSOCIATION
IS
SELECT CTD_LIST.CTD_ID
FROM (SELECT column_value ctd_id
FROM TABLE(CAST(p_ctd_id_list as JTF_NUMBER_TABLE)) ) ctd_list
WHERE CTD_LIST.CTD_ID not in
(SELECT ASSOC.CTD_ID
FROM AMS_CTD_ASSOCIATIONS assoc
WHERE assoc.used_by_type = p_used_by
AND assoc.used_by_val1 = p_used_by_val1
);
SELECT CTD_ID
FROM AMS_CTD_ASSOCIATIONS
WHERE used_by_type = p_used_by
AND used_by_val1 = p_used_by_val1
AND CTD_ID NOT IN
(SELECT column_value ctd_id
FROM TABLE(CAST(p_ctd_id_list as JTF_NUMBER_TABLE))
);
DELETE_ASSOCIATION_AND_CTD(l_removed_ctd_id_list
,p_used_by
,p_used_by_val1
);
END CREATE_AND_DELETE_ASSOCIATION;
Procedure DELETE_ASSOCIATION_AND_CTD(
p_used_by VARCHAR2,
p_used_by_val1 VARCHAR2
)
IS
l_associated_ctd_list JTF_NUMBER_TABLE := JTF_NUMBER_TABLE();
SELECT CTD_ID
FROM AMS_CTD_ASSOCIATIONS
WHERE USED_BY_TYPE = p_used_by
AND p_used_by_val1 = p_used_by_val1;
DELETE_ASSOCIATION_AND_CTD(l_associated_ctd_list,
p_used_by,
p_used_by_val1
);
END DELETE_ASSOCIATION_AND_CTD;
SELECT AMS_CTDS_s.NEXTVAL
FROM dual;
SELECT 1
FROM AMS_CTDS
WHERE CTD_ID = l_id;
AMS_CTDS_PKG.Insert_Row(
px_ctd_id => l_ctd_id,
p_action_id => p_ctd_rec.action_id,
p_forward_url => p_ctd_rec.forward_url,
p_track_url => p_ctd_rec.track_url,
p_activity_product_id => p_ctd_rec.activity_product_id,
p_activity_offer_id => p_ctd_rec.activity_offer_id,
px_object_version_number => l_object_version_number,
p_last_update_date => SYSDATE,
p_last_updated_by => G_USER_ID,
p_creation_date => SYSDATE,
p_created_by => G_USER_ID,
p_last_update_login => G_LOGIN_ID,
p_security_group_id => p_ctd_rec.security_group_id);
PROCEDURE Update_Ctd(
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_ctd_rec IN ctd_rec_type,
x_object_version_number OUT NOCOPY NUMBER
)
IS
CURSOR c_get_ctd(ctd_id NUMBER) IS
SELECT *
FROM AMS_CTDS;
L_API_NAME CONSTANT VARCHAR2(30) := 'Update_Ctd';
SAVEPOINT UPDATE_Ctd_PVT;
AMS_UTILITY_PVT.debug_message('Private API: - Open Cursor to Select');
AMS_Utility_PVT.Error_Message(p_message_name => 'API_MISSING_UPDATE_TARGET',
p_token_name => 'INFO',
p_token_value => 'Ctd') ;
p_token_value => 'Last_Update_Date') ;
AMS_UTILITY_PVT.debug_message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Private API: Calling update table handler');
AMS_CTDS_PKG.Update_Row(
p_ctd_id => p_ctd_rec.ctd_id,
p_action_id => p_ctd_rec.action_id,
p_forward_url => p_ctd_rec.forward_url,
p_track_url => p_ctd_rec.track_url,
p_activity_product_id => p_ctd_rec.activity_product_id,
p_activity_offer_id => p_ctd_rec.activity_offer_id,
p_object_version_number => p_ctd_rec.object_version_number,
p_last_update_date => SYSDATE,
p_last_updated_by => G_USER_ID,
p_creation_date => SYSDATE,
p_created_by => G_USER_ID,
p_last_update_login => G_LOGIN_ID,
p_security_group_id => p_ctd_rec.security_group_id);
ROLLBACK TO UPDATE_Ctd_PVT;
ROLLBACK TO UPDATE_Ctd_PVT;
ROLLBACK TO UPDATE_Ctd_PVT;
End Update_Ctd;
PROCEDURE Delete_Ctd(
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_ctd_id IN NUMBER,
p_object_version_number IN NUMBER
)
IS
L_API_NAME CONSTANT VARCHAR2(30) := 'Delete_Ctd';
SAVEPOINT DELETE_Ctd_PVT;
AMS_UTILITY_PVT.debug_message( 'Private API: Calling delete table handler');
AMS_CTDS_PKG.Delete_Row(
p_CTD_ID => p_CTD_ID);
ROLLBACK TO DELETE_Ctd_PVT;
ROLLBACK TO DELETE_Ctd_PVT;
ROLLBACK TO DELETE_Ctd_PVT;
End Delete_Ctd;
SELECT CTD_ID
FROM AMS_CTDS
WHERE CTD_ID = p_CTD_ID
AND object_version_number = p_object_version
FOR UPDATE NOWAIT;
IF p_ctd_rec.last_update_date = FND_API.g_miss_date OR p_ctd_rec.last_update_date IS NULL THEN
AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_ctd_NO_last_update_date');
IF p_ctd_rec.last_updated_by = FND_API.g_miss_num OR p_ctd_rec.last_updated_by IS NULL THEN
AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_ctd_NO_last_updated_by');
IF p_ctd_rec.last_update_date IS NULL THEN
AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_ctd_NO_last_update_date');
IF p_ctd_rec.last_updated_by IS NULL THEN
AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_ctd_NO_last_updated_by');
SELECT *
FROM ams_ctds
WHERE ctd_id = p_ctd_rec.ctd_id;
IF p_ctd_rec.last_update_date = FND_API.g_miss_date THEN
x_complete_rec.last_update_date := l_ctd_rec.last_update_date;
IF p_ctd_rec.last_updated_by = FND_API.g_miss_num THEN
x_complete_rec.last_updated_by := l_ctd_rec.last_updated_by;
IF p_ctd_rec.last_update_login = FND_API.g_miss_num THEN
x_complete_rec.last_update_login := l_ctd_rec.last_update_login;
p_validation_mode => JTF_PLSQL_API.g_update,
x_return_status => x_return_status
);