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