214: X_Total_Revenue_Amount,
215: X_Err_Code,
216: X_Err_Stage);
217: If X_Err_Code <> 'S' then
218: RAISE FND_API.G_EXC_ERROR;
219: End If;
220:
221: X_Total_Funding_Amount := X_Total_Funding_Amount + X_Funding_Amount;
222: UPDATE_GMS_SUMM_PROJ_FUNDING(X_Installment_Id,
225: X_Total_Funding_Amount,
226: X_Err_Code,
227: X_Err_Stage);
228: If X_Err_Code <> 'S' then
229: RAISE FND_API.G_EXC_ERROR;
230: End If;
231: Else
232: If X_Err_Code = 'S' then
233: INSERT_GMS_SUMM_PROJ_FUNDING(X_Installment_Id,
237: X_Err_Code,
238: X_Err_Stage);
239:
240: If X_Err_Code <> 'S' then
241: RAISE FND_API.G_EXC_ERROR;
242: End If;
243: Else
244: RAISE FND_API.G_EXC_ERROR;
245: End If;
240: If X_Err_Code <> 'S' then
241: RAISE FND_API.G_EXC_ERROR;
242: End If;
243: Else
244: RAISE FND_API.G_EXC_ERROR;
245: End If;
246: End If;
247:
248:
246: End If;
247:
248:
249: EXCEPTION
250: WHEN FND_API.G_EXC_ERROR THEN
251: RETCODE := X_Err_Code;
252: ERRBUF := X_Err_Stage;
253:
254: END CREATE_GMS_SUMMARY_FUNDING;
318: X_Total_Revenue_Amount,
319: X_Err_Code,
320: X_Err_Stage);
321: If X_Err_Code <> 'S' then
322: RAISE FND_API.G_EXC_ERROR;
323: End If;
324:
325: -- Debashis. This does not seem to be correct. Where is task id ? Use the function gms_funding_exists instead. Bug 2270436
326: /*
359: FND_MSG_PUB.add;
360: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count,
361: p_data => X_Err_Stage );
362:
363: RAISE FND_API.G_EXC_ERROR;
364: Elsif (X_Invoice_Limit_Flag ='Y') and ((X_Total_Funding_Amount - X_Funding_Amount) < X_Total_Billed_Amount) then
365: X_Err_Code := 'E';
366: X_Err_Stage := 'You cannot delete the funding line, as this will cause total funds to be less than the total billed amount';
367: FND_MESSAGE.SET_NAME('GMS','GMS_FUND_LESS_BILL');
368: FND_MSG_PUB.add;
369: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count,
370: p_data => X_Err_Stage );
371:
372: RAISE FND_API.G_EXC_ERROR;
373: End If;
374:
375:
376: If (((X_Total_Funding_Amount - X_Funding_Amount) = 0)
405: X_Total_Funding_Amount,
406: X_Err_Code,
407: X_Err_Stage);
408: If X_Err_Code <> 'S' then
409: RAISE FND_API.G_EXC_ERROR;
410: End If;
411: end if;
412:
413: EXCEPTION
410: End If;
411: end if;
412:
413: EXCEPTION
414: WHEN FND_API.G_EXC_ERROR THEN
415: RETCODE := X_Err_Code;
416: ERRBUF := X_Err_Stage;
417:
418: End DELETE_GMS_SUMMARY_FUNDING;
452: X_Total_Revenue_Amount,
453: X_Err_Code,
454: X_Err_Stage);
455: If X_Err_Code <> 'S' then
456: RAISE FND_API.G_EXC_ERROR;
457: End If;
458:
459: -- For bug 3150477
460: OPEN hard_limit_flag_cr;
478: FND_MESSAGE.SET_NAME('GMS','GMS_FUND_LESS_REV');
479: FND_MSG_PUB.add;
480: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count,
481: p_data => X_Err_Stage );
482: RAISE FND_API.G_EXC_ERROR;
483: Elsif (X_Invoice_Limit_Flag ='Y') AND (X_Total_Funding_Amount < X_Total_Billed_Amount) then
484: X_Err_Code := 'E';
485: X_Err_Stage := 'You cannot delete the funding line, as this will cause total funds to be less than the total billed amount';
486: FND_MESSAGE.SET_NAME('GMS','GMS_FUND_LESS_BILL');
486: FND_MESSAGE.SET_NAME('GMS','GMS_FUND_LESS_BILL');
487: FND_MSG_PUB.add;
488: FND_MSG_PUB.Count_And_Get(p_count => p_msg_count,
489: p_data => X_Err_Stage );
490: RAISE FND_API.G_EXC_ERROR;
491: Else
492: UPDATE_GMS_SUMM_PROJ_FUNDING(X_Installment_Id,
493: X_Project_Id,
494: X_Task_Id,
495: X_Total_Funding_Amount,
496: X_Err_Code,
497: X_Err_Stage);
498: If X_Err_Code <> 'S' then
499: RAISE FND_API.G_EXC_ERROR;
500: End If;
501: End If;
502:
503:
502:
503:
504:
505: EXCEPTION
506: WHEN FND_API.G_EXC_ERROR THEN
507: RETCODE := X_Err_Code;
508: ERRBUF := X_Err_Stage;
509:
510: End UPDATE_GMS_SUMMARY_FUNDING;