USP_DATAFORMTEMPLATE_ADD_SPONSORSHIPRECURRINGADDITIONALGIFT

The save procedure used by the add dataform template "Sponsorship Recurring Additional Gift Add Data Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@CONSTITUENTID uniqueidentifier IN Constituent
@DATE datetime IN Date
@AMOUNT money IN Amount
@PAYMENTMETHODCODE tinyint IN Payment method
@REFERENCEDATE UDT_FUZZYDATE IN Reference date
@REFERENCENUMBER nvarchar(20) IN Reference number
@CARDHOLDERNAME nvarchar(255) IN Name on card
@CREDITCARDNUMBER nvarchar(20) IN Card number
@CREDITTYPECODEID uniqueidentifier IN Card type
@EXPIRESON UDT_FUZZYDATE IN Expires on
@CONSTITUENTACCOUNTID uniqueidentifier IN Account
@SPLITS xml IN Designations
@FREQUENCYCODE tinyint IN Frequency
@ENDDATE datetime IN Ending on
@STARTDATE datetime IN Starting on
@FINDERNUMBER bigint IN Finder number
@SOURCECODE nvarchar(50) IN Source code
@APPEALID uniqueidentifier IN Appeal
@GIVENANONYMOUSLY bit IN Recurring gift is anonymous
@MAILINGID uniqueidentifier IN Effort
@CHANNELCODEID uniqueidentifier IN Inbound channel
@DONOTACKNOWLEDGE bit IN Do not acknowledge
@AUTOPAY bit IN Pay installments automatically by:
@REFERENCE nvarchar(255) IN Reference
@CATEGORYCODEID uniqueidentifier IN Revenue category
@CREDITCARDTOKEN uniqueidentifier IN
@STANDINGORDERSETUP bit IN Standing order has been setup
@STANDINGORDERSETUPDATE datetime IN Setup on
@DDISOURCECODEID uniqueidentifier IN DDI source
@DDISOURCEDATE date IN DDI source date
@SENDREMINDER bit IN Send reminders
@TRANSACTIONCURRENCYID uniqueidentifier IN Transaction currency
@BASEEXCHANGERATEID uniqueidentifier IN Exchange rate ID
@EXCHANGERATE decimal(20, 8) IN Exchange rate
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@BUSINESSUNITSAPPLIED bit IN
@GENERATEREFERENCENUMBER bit IN Automatically generate reference number
@STANDINGORDERREFERENCENUMBER nvarchar(18) IN Reference number
@SPONSORSHIPID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@EVENTID uniqueidentifier IN
@LOCALCORPID uniqueidentifier IN
@ISMEMBERSHIPRECURRINGGIFT bit IN
@BATCHNUMBER nvarchar(100) IN
@SEPAMANDATEID uniqueidentifier IN
@OTHERPAYMENTMETHODCODEID uniqueidentifier IN

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_SPONSORSHIPRECURRINGADDITIONALGIFT
(
    @ID uniqueidentifier = null output,
    @CHANGEAGENTID uniqueidentifier,
    @CONSTITUENTID uniqueidentifier,                    
    @DATE datetime,
    @AMOUNT money = 0,
    @PAYMENTMETHODCODE tinyint = 2,
    @REFERENCEDATE dbo.UDT_FUZZYDATE = '00000000',
    @REFERENCENUMBER nvarchar(20) = '',
    @CARDHOLDERNAME nvarchar(255) = '',
    @CREDITCARDNUMBER nvarchar(20) = '',
    @CREDITTYPECODEID uniqueidentifier = null,
    @EXPIRESON dbo.UDT_FUZZYDATE = null,
    @CONSTITUENTACCOUNTID uniqueidentifier = null,
    @SPLITS xml,
    @FREQUENCYCODE tinyint = 3,
    @ENDDATE datetime = null,
    @STARTDATE datetime = null,
    @FINDERNUMBER bigint = null,
    @SOURCECODE nvarchar(50) = null,
    @APPEALID uniqueidentifier = null,
    @GIVENANONYMOUSLY bit = 0,
    @MAILINGID uniqueidentifier = null,
    @CHANNELCODEID uniqueidentifier = null,
    @DONOTACKNOWLEDGE bit = 0,
    @AUTOPAY bit = 1,
    @REFERENCE nvarchar(255) = null,
    @CATEGORYCODEID uniqueidentifier = null,
    @CREDITCARDTOKEN uniqueidentifier = null,
    @STANDINGORDERSETUP bit = 0,
    @STANDINGORDERSETUPDATE datetime = null,
    @DDISOURCECODEID uniqueidentifier = null,
    @DDISOURCEDATE date = null,
    @SENDREMINDER bit = 1,
    @TRANSACTIONCURRENCYID uniqueidentifier = null,
    @BASEEXCHANGERATEID uniqueidentifier = null,
    @EXCHANGERATE decimal(20,8) = null,
    @CURRENTAPPUSERID uniqueidentifier = null,
    @BUSINESSUNITSAPPLIED bit=0,
    @GENERATEREFERENCENUMBER bit = 1,
    @STANDINGORDERREFERENCENUMBER nvarchar(18) = null,
    @SPONSORSHIPID uniqueidentifier,
    @EVENTID uniqueidentifier = null,
    @LOCALCORPID uniqueidentifier = null,
    @ISMEMBERSHIPRECURRINGGIFT bit = 0,
    @BATCHNUMBER nvarchar(100) = '',
    @SEPAMANDATEID uniqueidentifier = null,
    @OTHERPAYMENTMETHODCODEID uniqueidentifier = null
)
as

set nocount on;

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

declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()

begin try

        set @SPLITS = (    
                select 
                    case when ID is null or ID = '00000000-0000-0000-0000-000000000000' then newid() else ID end ID,
                    AMOUNT,
                    APPLICATIONCODE,
                    DESIGNATIONID,
                    17 as TYPECODE,
                    DECLINESGIFTAID,
                    TRANSACTIONCURRENCYID
                from dbo.UFN_REVENUE_GETSPLITS_2_FROMITEMLISTXML(@SPLITS)
                for xml raw('ITEM'),type,elements,root('SPLITS'),BINARY BASE64
            )

            if @REFERENCEDATE is null
              set @REFERENCEDATE = '00000000'
            declare @REVENUEID uniqueidentifier;

            exec dbo.USP_DATAFORMTEMPLATE_ADD_RECURRINGGIFT 
                @REVENUEID output,
                @CHANGEAGENTID,
                @CONSTITUENTID,                    
                @DATE,
                @AMOUNT,
                @PAYMENTMETHODCODE,
                @REFERENCEDATE,
                @REFERENCENUMBER,
                @CARDHOLDERNAME,
                @CREDITCARDNUMBER,
                @CREDITTYPECODEID,
                @EXPIRESON,
                @CONSTITUENTACCOUNTID,
                @SPLITS,
                @FREQUENCYCODE,
                @ENDDATE,
                @STARTDATE,
                @FINDERNUMBER,
                @SOURCECODE,
                @APPEALID,
                @GIVENANONYMOUSLY,
                @MAILINGID,
                @CHANNELCODEID,
                @DONOTACKNOWLEDGE,
                @AUTOPAY,
                @REFERENCE,
                @CATEGORYCODEID,
                @CREDITCARDTOKEN,
                @STANDINGORDERSETUP,
                @STANDINGORDERSETUPDATE,
                @DDISOURCECODEID,
                @DDISOURCEDATE,
                @SENDREMINDER,
                @TRANSACTIONCURRENCYID,
                @BASEEXCHANGERATEID,
                @EXCHANGERATE,
                @CURRENTAPPUSERID,
                @BUSINESSUNITSAPPLIED,
                @GENERATEREFERENCENUMBER,
                @STANDINGORDERREFERENCENUMBER,
                @EVENTID,
                @LOCALCORPID,
                @ISMEMBERSHIPRECURRINGGIFT,
                @BATCHNUMBER,
                null, --@BASECURRENCYID

                @SEPAMANDATEID,
                @OTHERPAYMENTMETHODCODEID

        insert into dbo.SPONSORSHIPRECURRINGADDITIONALGIFT
        (
            ID,
            SPONSORSHIPID,
            REVENUEID,
            ADDEDBYID,
            CHANGEDBYID,
            DATEADDED,
            DATECHANGED
        )
        values
        (
            newid(),
            @SPONSORSHIPID,
            @REVENUEID,
            @CHANGEAGENTID,
            @CHANGEAGENTID,
            @CURRENTDATE,
            @CURRENTDATE
        );

        set @ID = @REVENUEID;
end try

begin catch
    exec dbo.USP_RAISE_ERROR
    return 1
end catch

return 0