USP_DATAFORMTEMPLATE_VIEW_DESIGNATIONLEVELGOAL

The load procedure used by the view dataform template "Fundraising Purpose Goal View 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.
@NAME nvarchar(100) INOUT Name
@GOAL money INOUT Goal
@STARTDATE datetime INOUT Start date
@ENDDATE datetime INOUT End date
@DATERANGE nvarchar(100) INOUT Date Range
@TOTALREVENUE money INOUT Total revenue
@OVERUNDER money INOUT Over (under)
@AVERAGEGIFT money INOUT Average gift
@TOTALGIFTS int INOUT Total gifts
@BASECURRENCYID uniqueidentifier INOUT Base currency

Definition

Copy


            CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_DESIGNATIONLEVELGOAL
                (
                @ID uniqueidentifier,
                @DATALOADED bit = 0 output,
                @NAME nvarchar(100) = null output,
                @GOAL money = null output,
                @STARTDATE datetime = null output,
                @ENDDATE datetime = null output,
                @DATERANGE nvarchar(100) = null output,
                @TOTALREVENUE money = null output,
                @OVERUNDER money = null output,
                @AVERAGEGIFT money = null output,
                @TOTALGIFTS int = null output,
                @BASECURRENCYID uniqueidentifier = null output
                )
            as
            begin
                set nocount on;

                set @DATALOADED = 0;

                declare @DESIGNATIONLEVELID uniqueidentifier;

                select
                    @DATALOADED = 1,
                    @NAME = DG.NAME,
                    @GOAL = DG.GOAL,
                    @STARTDATE = DG.STARTDATE,
                    @ENDDATE = DG.ENDDATE,
                    @DATERANGE = ISNULL(CONVERT(nvarchar(10), STARTDATE, 101) + ' to ' + CONVERT(nvarchar(10), ENDDATE, 101), ''),
                    @DESIGNATIONLEVELID = DG.DESIGNATIONLEVELID,
                    @BASECURRENCYID = DG.BASECURRENCYID
                from 
                    dbo.DESIGNATIONLEVELGOAL as DG
                where DG.ID = @ID;

                select
                    @TOTALREVENUE = TOTALREVENUE,
                    @TOTALGIFTS = NUMGIFTS,
                    @AVERAGEGIFT = case NUMGIFTS when 0 then 0 else TOTALREVENUE / NUMGIFTS end
                from 
                    dbo.UFN_DESIGNATIONLEVEL_GETREVENUETOTALS(@DESIGNATIONLEVELID, @STARTDATE, @ENDDATE)

                set @OVERUNDER = @TOTALREVENUE - @GOAL;

                return 0
            end