The following lines contain the word 'select', 'insert', 'update' or 'delete':
FND_MESSAGE.SET_TOKEN('PROGRAM_NAME','GMS_AWARD_DELETE_PKG: CHECK_EVENT_EXIST');
SELECT 1 --COUNT(*) bug 2355648
FROM gms_summary_project_fundings gspf,gms_installments gi
WHERE gi.award_id = p_award_Id
AND gspf.installment_id=gi.installment_id
AND rownum <=1;
FND_MESSAGE.SET_TOKEN('PROGRAM_NAME','GMS_AWARD_DELETE_PKG: CHECK_FUNDING_EXISTS');
SELECT 1 --COUNT(*) bug 2355648
FROM gms_budget_versions
WHERE award_id = p_award_id
AND budget_status_code IN ('B','S')
AND rownum <=1;
FND_MESSAGE.SET_TOKEN('PROGRAM_NAME','GMS_AWARD_DELETE_PKG: CHECK_BASELINED_BUDGET_EXIST');
SELECT 1 --COUNT(*) bug 2355648
FROM gms_award_distributions
WHERE award_id = p_award_id
AND rownum <=1;
FND_MESSAGE.SET_TOKEN('PROGRAM_NAME','GMS_AWARD_DELETE_PKG: CHECK_ADL_EXIST');
PROCEDURE DELETE_AWARD_DETAIL( p_award_id IN NUMBER ,
p_award_project_id IN NUMBER,
p_agreement_id IN NUMBER,
p_Award_Template_flag IN VARCHAR2,
p_msg_count OUT NOCOPY NUMBER,
retcode OUT NOCOPY VARCHAR2,
errbuff OUT NOCOPY VARCHAR2 ) IS
CURSOR GET_PROJECT_ID IS
SELECT DISTINCT PROJECT_ID
FROM gms_summary_project_fundings gspf,gms_installments gi
WHERE gi.award_id = p_award_id --:gms_awards_v.Award_Id bug 2355648
AND gspf.installment_id=gi.installment_id;
SELECT GI.INSTALLMENT_ID,
FUNDING_AMOUNT,
PROJECT_FUNDING_ID,
GMS_PROJECT_FUNDING_ID,
PROJECT_ID ,
TASK_ID
FROM GMS_PROJECT_FUNDINGS GPF ,GMS_INSTALLMENTS GI
WHERE GPF.INSTALLMENT_ID=GI.INSTALLMENT_ID
AND GI.AWARD_ID= p_award_id ; --:GMS_AWARDS_V.AWARD_ID; 2355648
l_Funding_Exists:= GMS_AWARD_DELETE_PKG.CHECK_FUNDING_EXISTS
(p_Award_Id =>p_Award_id,
p_msg_count =>p_msg_count,
RETCODE =>retcode,
ERRBUFF =>errbuff);
l_Draft_Budget_Exists:=GMS_AWARD_DELETE_PKG.CHECK_DRAFT_BUDGET_EXISTS
(p_Award_Id =>p_Award_id,
p_msg_count =>p_msg_count,
RETCODE =>retcode,
ERRBUFF =>errbuff);
gms_budget_pub.delete_draft_budget(
p_api_version_number => 1.0,
p_pm_product_code => 'GMS',
x_err_code => l_err_code,
x_err_stage => l_err_stage,
x_err_stack => l_err_stack,
p_project_id => project_info.project_id,
p_award_id => p_Award_id,
p_budget_type_code =>'AC');
FND_MESSAGE.SET_NAME('GMS','GMS_DELETE_DRAFT_FAIL');
GMS_PROJECT_FUNDINGS_PKG.DELETE_ROW
(X_GMS_PROJECT_FUNDING_ID =>FUNDING_INFO.GMS_PROJECT_FUNDING_ID);
GMS_SUMM_FUNDING_PKG.DELETE_GMS_SUMMARY_FUNDING
( X_Installment_Id => FUNDING_INFO.INSTALLMENT_ID,
X_Project_Id => FUNDING_INFO.PROJECT_ID,
X_Task_Id => FUNDING_INFO.TASK_ID,
X_Funding_Amount => FUNDING_INFO.FUNDING_AMOUNT,
RETCODE => retcode,
ERRBUF => errbuff);
FND_MESSAGE.SET_NAME('GMS','GMS_DELETE_FUNDING_FAIL');
GMS_MULTI_FUNDING.DELETE_AWARD_FUNDING
(X_INSTALLMENT_ID => FUNDING_INFO.INSTALLMENT_ID,
X_ALLOCATED_AMOUNT => FUNDING_INFO.FUNDING_AMOUNT,
X_PROJECT_FUNDING_ID => FUNDING_INFO.PROJECT_FUNDING_ID,
X_APP_SHORT_NAME => l_app_name,
ERRBUF => errbuff,
X_msg_count => p_msg_count,
RETCODE => retcode );
GMS_MULTI_FUNDING.DELETE_AWARD_PROJECT(
X_Award_id => p_award_id ,
X_AWARD_PROJECT_ID => p_award_project_id ,
X_AGREEMENT_ID => p_agreement_id ,
X_MSG_COUNT => p_msg_count ,
X_APP_SHORT_NAME => l_app_name,
RETCODE => retcode,
ERRBUF => errbuff );
DELETE_AWARD_ALL(p_Award_Id =>p_Award_id,
p_msg_count =>p_msg_count,
RETCODE =>retcode,
ERRBUFF =>errbuff);
FND_MESSAGE.SET_TOKEN('PROGRAM_NAME','GMS_AWARD_DELETE_PKG: DELETE_AWARD_DETAIL');
END DELETE_AWARD_DETAIL;
FUNCTION delete_award_ok
(
p_Award_Id IN NUMBER,
p_Billing_Rule IN VARCHAR2, --Not Using this parameter bug 2355648
p_Revenue_Rule IN VARCHAR2, --Not Using this parameter bug 2355648
RETCODE OUT NOCOPY VARCHAR2,
ERRBUFF OUT NOCOPY VARCHAR2
) RETURN BOOLEAN AS
l_errbuff VARCHAR2(200);
FND_MESSAGE.SET_TOKEN('PROGRAM_NAME','GMS_AWARD_DELETE_PKG: DELETE_AWARD_OK');
END delete_award_ok;
SELECT 1 --COUNT(*) bug 2355648
FROM gms_budget_versions
WHERE award_id = p_award_id
AND budget_status_code = 'W';
FND_MESSAGE.SET_TOKEN('PROGRAM_NAME','GMS_AWARD_DELETE_PKG: CHECK_DRAFT_BUDGET_EXISTS');
PROCEDURE delete_award_all( p_award_Id IN NUMBER ,
p_msg_count OUT NOCOPY NUMBER,
retcode OUT NOCOPY VARCHAR2 ,
errbuff OUT NOCOPY VARCHAR2
) AS
CURSOR notification_lock IS
SELECT 1 FROM gms_notifications
WHERE award_id=p_award_Id
FOR UPDATE NOWAIT;
SELECT 1 FROM gms_installments
WHERE award_id=p_award_Id
FOR UPDATE NOWAIT;
DELETE FROM gms_reports WHERE installment_id in (select installment_id from gms_installments WHERE award_id =p_award_id);
DELETE FROM gms_installments WHERE award_id=p_award_id;
DELETE FROM gms_default_reports WHERE award_id = p_award_id;
DELETE FROM gms_notifications WHERE award_id= p_award_id;
DELETE FROM gms_awards_terms_conditions WHERE award_id=p_award_id;
DELETE FROM gms_personnel WHERE award_id =p_award_id;
DELETE FROM gms_reference_numbers WHERE award_id=p_award_id;
DELETE FROM gms_awards_contacts WHERE award_id=p_award_id;
DELETE FROM pa_credit_receivers WHERE project_id= p_award_Id;
DELETE FROM gms_override_schedules WHERE award_id=p_award_id;
FND_MESSAGE.SET_TOKEN('PROGRAM_NAME','GMS_AWARD_DELETE_PKG: DELETE_AWARD_ALL');
END DELETE_AWARD_ALL;