USP_DATAFORMTEMPLATE_EDITLOAD_RECURRINGGIFT

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

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.
@REVENUEID uniqueidentifier INOUT
@CONSTITUENTID uniqueidentifier INOUT
@CONSTITUENTNAME nvarchar(255) INOUT
@DATE datetime INOUT Date
@AMOUNT money INOUT Amount
@SPLITS xml INOUT Designations
@FREQUENCYCODE tinyint INOUT Frequency
@ENDDATE datetime INOUT Ending on
@STARTDATE datetime INOUT Starting on
@FINDERNUMBER bigint INOUT Finder number
@SOURCECODE nvarchar(50) INOUT Source code
@APPEALID uniqueidentifier INOUT Appeal
@GIVENANONYMOUSLY bit INOUT Recurring gift is anonymous
@MAILINGID uniqueidentifier INOUT Mailing
@CHANNELCODEID uniqueidentifier INOUT Channel
@DONOTACKNOWLEDGE bit INOUT Do not acknowledge
@MAXSOLICITORAMOUNT money INOUT Max solicitor amount
@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.
@SINGLEDESIGNATIONID uniqueidentifier INOUT Designation
@FINDERNUMBERVALID bit INOUT FINDERNUMBERVALID
@MAXSOLICITORSPLITAMOUNTS xml INOUT Max solicitor split amounts

Definition

Copy


                CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_RECURRINGGIFT
                (                                                                                
                    @ID uniqueidentifier,
                    @DATALOADED bit = 0 output,    
                    @REVENUEID uniqueidentifier = null output,
                    @CONSTITUENTID uniqueidentifier = null output,
                    @CONSTITUENTNAME nvarchar(255) = null output,
                    @DATE datetime = null output,
                    @AMOUNT money = null output,
                    @SPLITS xml = null output,
                    @FREQUENCYCODE tinyint = null output,
                    @ENDDATE datetime = null output,
                    @STARTDATE datetime = null output,
                    @FINDERNUMBER bigint = null output,
                    @SOURCECODE nvarchar(50) = null output,
                    @APPEALID uniqueidentifier = null output,
                    @GIVENANONYMOUSLY bit = null output,
                    @MAILINGID uniqueidentifier = null output,
                    @CHANNELCODEID uniqueidentifier = null output,
                    @DONOTACKNOWLEDGE bit = null output,
                    @MAXSOLICITORAMOUNT money = null output,
                    @TSLONG bigint = 0 output,
                    @SINGLEDESIGNATIONID uniqueidentifier = null output,
                    @FINDERNUMBERVALID bit = null output,
                    @MAXSOLICITORSPLITAMOUNTS xml = null output
                )

                as

                set nocount on;

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

                select
                    @DATALOADED = 1,
                    @DATE = REVENUE.DATE,
                    @TSLONG = REVENUE.TSLONG,
                    @CONSTITUENTNAME = CON.NAME,
                    @CONSTITUENTID = CON.ID,
                    @AMOUNT = REVENUE.AMOUNT,
                    @FINDERNUMBER = REVENUE.FINDERNUMBER,
                    @SOURCECODE = REVENUE.SOURCECODE,
                    @APPEALID = REVENUE.APPEALID,
                    @GIVENANONYMOUSLY = REVENUE.GIVENANONYMOUSLY,
                    @MAILINGID = REVENUE.MAILINGID,
                    @CHANNELCODEID = REVENUE.CHANNELCODEID,
                    @DONOTACKNOWLEDGE = REVENUE.DONOTACKNOWLEDGE,
                    @MAXSOLICITORAMOUNT = 0,
                    @MAXSOLICITORSPLITAMOUNTS = dbo.UFN_REVENUEDETAIL_GETMAXSOLICITORSPLITAMOUNTS_TOITEMLISTXML(@ID)
                from dbo.REVENUE
                inner join dbo.CONSTITUENT CON
                    on CON.ID = CONSTITUENTID
                where REVENUE.ID = @ID and REVENUE.TRANSACTIONTYPECODE = 2;

                set @REVENUEID = @ID;

                select top 1
                    @FREQUENCYCODE = FREQUENCYCODE,
                    @ENDDATE = ENDDATE,
                    @STARTDATE = STARTDATE
                from dbo.REVENUESCHEDULE
                where ID = @ID;

                set @SPLITS = dbo.[UFN_REVENUE_GETSPLITS_TOITEMLISTXML](@ID);

                if @FINDERNUMBER = 0
                    set @FINDERNUMBER = null;

                if (not @FINDERNUMBER is null)
                    set @FINDERNUMBERVALID = 1;
                else
                    set @FINDERNUMBERVALID = 0;

                return 0;