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