USP_DATAFORMTEMPLATE_EDIT_RECURRINGGIFTPAYMENTHANDLING_2

Parameters

Parameter Parameter Type Mode Description
@CHANGEAGENTID uniqueidentifier IN
@FIRSTINSTALLMENTCODE tinyint IN
@INSTALLMENTUNDERPAYMENTCODE tinyint IN
@APPLYTOPASTINSTALLMENTS tinyint IN
@PASTBALANCEUNDERPAYMENTCODE tinyint IN
@OVERPAYMENTCODE tinyint IN
@ISRGPAYMENTHANDLINGBATCH bit IN

Definition

Copy

  create procedure dbo.USP_DATAFORMTEMPLATE_EDIT_RECURRINGGIFTPAYMENTHANDLING_2 
  (
    @CHANGEAGENTID uniqueidentifier = null,
    @FIRSTINSTALLMENTCODE tinyint,
    @INSTALLMENTUNDERPAYMENTCODE tinyint,
    @APPLYTOPASTINSTALLMENTS tinyint,
    @PASTBALANCEUNDERPAYMENTCODE tinyint,
    @OVERPAYMENTCODE tinyint,
    @ISRGPAYMENTHANDLINGBATCH bit
  )
  as

    set nocount on;

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

    declare @CURRENTDATE datetime
    set @CURRENTDATE = getdate()

    declare @CURRENTID uniqueidentifier = '803A5C39-2D7F-46b9-A222-AED2D0FD1DF3';

    if @APPLYTOPASTINSTALLMENTS <> 1 or @OVERPAYMENTCODE <> 2
       set @ISRGPAYMENTHANDLINGBATCH = 0

    begin try
      insert into dbo.RECURRINGGIFTSETTING (INSTALLMENTMODECODE,
                                            EFFECTIVEDATE,
                                            FIRSTINSTALLMENTCODE,
                                            INSTALLMENTUNDERPAYMENTCODE,
                                            APPLYTOPASTINSTALLMENTS,
                                            PASTBALANCEUNDERPAYMENTCODE,
                                            OVERPAYMENTCODE,
                                            ISRGPAYMENTHANDLINGBATCH,
                                            UPGRADEDATE,
                                            ADDEDBYID,
                                            CHANGEDBYID,
                                            DATEADDED,
                                            DATECHANGED)
      select INSTALLMENTMODECODE,
             EFFECTIVEDATE,
             FIRSTINSTALLMENTCODE,
             INSTALLMENTUNDERPAYMENTCODE,
             APPLYTOPASTINSTALLMENTS,
             PASTBALANCEUNDERPAYMENTCODE,
             OVERPAYMENTCODE,
             ISRGPAYMENTHANDLINGBATCH,
             UPGRADEDATE,
             @CHANGEAGENTID,
             @CHANGEAGENTID,
             @CURRENTDATE,
             @CURRENTDATE
      from dbo.RECURRINGGIFTSETTING
      where ID = @CURRENTID
      and (FIRSTINSTALLMENTCODE <> @FIRSTINSTALLMENTCODE or
           INSTALLMENTUNDERPAYMENTCODE <> @INSTALLMENTUNDERPAYMENTCODE or
           APPLYTOPASTINSTALLMENTS <> @APPLYTOPASTINSTALLMENTS or
           PASTBALANCEUNDERPAYMENTCODE <> @PASTBALANCEUNDERPAYMENTCODE or
           OVERPAYMENTCODE <> @OVERPAYMENTCODE or
           ISRGPAYMENTHANDLINGBATCH <> @ISRGPAYMENTHANDLINGBATCH);

      if @@ROWCOUNT > 0
        update dbo.RECURRINGGIFTSETTING
        set EFFECTIVEDATE = @CURRENTDATE,
            FIRSTINSTALLMENTCODE = @FIRSTINSTALLMENTCODE,
            INSTALLMENTUNDERPAYMENTCODE = @INSTALLMENTUNDERPAYMENTCODE,
            APPLYTOPASTINSTALLMENTS = @APPLYTOPASTINSTALLMENTS,
            PASTBALANCEUNDERPAYMENTCODE = @PASTBALANCEUNDERPAYMENTCODE,
            OVERPAYMENTCODE = @OVERPAYMENTCODE,
            ISRGPAYMENTHANDLINGBATCH = @ISRGPAYMENTHANDLINGBATCH,
            CHANGEDBYID = @CHANGEAGENTID,
            DATECHANGED = @CURRENTDATE
        where ID = @CURRENTID;
    end try
    begin catch
      exec dbo.USP_RAISE_ERROR
      return 1
    end catch

  return 0;