USP_DATAFORMTEMPLATE_EDITLOAD_RECURRINGGIFTPAYMENTDETAILS2

The load procedure used by the edit dataform template "Recurring Gift Payment Details Edit Form 2"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@PAYMENTMETHODCODE tinyint INOUT Payment method
@AUTOPAY bit INOUT Pay automatically by:
@CARDHOLDERNAME nvarchar(255) INOUT Name on card
@CREDITCARDNUMBER nvarchar(20) INOUT Card number
@CREDITTYPECODEID uniqueidentifier INOUT Card type
@EXPIRESON UDT_FUZZYDATE INOUT Expires on
@REFERENCEDATE UDT_FUZZYDATE INOUT Reference date
@REFERENCENUMBER nvarchar(20) INOUT Reference number
@ACCOUNTID uniqueidentifier INOUT Account
@CONSTITUENTID uniqueidentifier INOUT Constituent
@TSLONG bigint INOUT Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record.
@CREDITCARDTOKEN uniqueidentifier INOUT Card token

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_RECURRINGGIFTPAYMENTDETAILS2
                    (
                        @ID uniqueidentifier,
                        @DATALOADED bit = 0 output,
                        @PAYMENTMETHODCODE tinyint = null output,
                        @AUTOPAY bit = null output,
                        @CARDHOLDERNAME nvarchar(255) = null output,
                        @CREDITCARDNUMBER nvarchar(20) = null output,
                        @CREDITTYPECODEID uniqueidentifier = null output,
                        @EXPIRESON dbo.UDT_FUZZYDATE = null output,
                        @REFERENCEDATE dbo.UDT_FUZZYDATE = null output,
                        @REFERENCENUMBER nvarchar(20) = null output,
                        @ACCOUNTID uniqueidentifier = null output,
                        @CONSTITUENTID uniqueidentifier = null output,
                        @TSLONG bigint = 0 output,
                        @CREDITCARDTOKEN uniqueidentifier = null output
                    )
                    as
                    set nocount on;

                    set @DATALOADED = 0;
                    set @TSLONG = 0;

                    select 
                        @DATALOADED = 1,
                        @PAYMENTMETHODCODE = REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE,
                        @CARDHOLDERNAME = [CARD].CARDHOLDERNAME,
                        @CREDITCARDNUMBER = [CARD].CREDITCARDPARTIALNUMBER,
                        @CREDITTYPECODEID = [CARD].CREDITTYPECODEID,
                        @EXPIRESON = [CARD].EXPIRESON,
                        @CONSTITUENTID = REVENUE.CONSTITUENTID,
                        @TSLONG = REVENUE.TSLONG,
                        @CREDITCARDTOKEN = CARD.CREDITCARDTOKEN
                    from dbo.REVENUE 
                    inner join dbo.REVENUEPAYMENTMETHOD on REVENUE.ID = REVENUEPAYMENTMETHOD.REVENUEID
                    left join dbo.REVENUESCHEDULE on REVENUE.ID = REVENUESCHEDULE.ID
                    left join dbo.CREDITCARD as [CARD] on REVENUESCHEDULE.CREDITCARDID = CARD.ID
                    where REVENUE.ID = @ID and REVENUE.TRANSACTIONTYPECODE = 2

                    if @PAYMENTMETHODCODE = 3 --Direct Debit

                        select 
                            @REFERENCEDATE = REFERENCEDATE,
                            @REFERENCENUMBER = REFERENCENUMBER,
                            @ACCOUNTID = CONSTITUENTACCOUNTID
                        from dbo.REVENUESCHEDULEDIRECTDEBITPAYMENT
                        where ID = @ID

                    if @PAYMENTMETHODCODE = 9 
                        set @AUTOPAY = 0
                    else
                        set @AUTOPAY = 1

                    return 0