USP_DATAFORMTEMPLATE_ADD_RECURRINGGIFTWRITEOFF

The save procedure used by the add dataform template "Recurring Gift Write-off Add Data Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@REVENUEID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@DATE date IN Date
@REASONID uniqueidentifier IN Reason code
@AMOUNT money IN Amount
@INSTALLMENTS xml IN

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_RECURRINGGIFTWRITEOFF
(
    @ID uniqueidentifier = null output,
    @REVENUEID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier = null,
    @DATE date = null,
    @REASONID uniqueidentifier = null,
    @AMOUNT money = 0,
    @INSTALLMENTS xml = null
)
as

set nocount on;

if @CHANGEAGENTID is null  
    exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()

begin try
    if (select sum(WRITEOFFAMOUNT) from dbo.UFN_RECURRINGGIFTINSTALLMENT_GETWRITEOFFINSTALLMENTS_2_FROMITEMLISTXML(@INSTALLMENTS)) <> @AMOUNT 
        raiserror('BBERR_AMOUNTAPPLIED_NOTEQUALTO_WRITEOFFAMOUNT', 13, 1);

  -- add the write-off

  exec dbo.USP_RECURRINGGIFT_ADDSKIPANDWRITEOFF
        @ID output,
        @REVENUEID,
        @CHANGEAGENTID,
        @DATE,
        @REASONID,
        null,
        @AMOUNT,
        @INSTALLMENTS,
        @CURRENTDATE,
        0
end try
begin catch
    exec dbo.USP_RAISE_ERROR
    return 1
end catch

return 0