USP_DATAFORMTEMPLATE_EDITLOAD_RECOGNITIONLEVEL
The load procedure used by the edit dataform template "Recognition Level Edit Data 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. |
@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. |
@NAME | nvarchar(100) | INOUT | Name |
@DESCRIPTION | nvarchar(255) | INOUT | Description |
@TIERCODEID | uniqueidentifier | INOUT | Tier |
@AMOUNT | money | INOUT | Minimum recognition amount |
@PLANNEDGIFTAMOUNT | money | INOUT | Planned giving amount |
@HASPLANNEDGIFTAMOUNT | bit | INOUT | |
@HASREVENUEAMOUNT | bit | INOUT | |
@UPDATEFUTUREAMOUNT | bit | INOUT | Set future minimum amount |
@NEWMINIMUMAMOUNT | money | INOUT | Minimum recognition amount |
@NEWPLANNEDGIFTAMOUNT | money | INOUT | Planned giving amount |
@EFFECTIVEDATE | datetime | INOUT | Effective date |
@BASECURRENCYID | uniqueidentifier | INOUT | Base currency |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_RECOGNITIONLEVEL
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@NAME nvarchar(100) = null output,
@DESCRIPTION nvarchar(255) = null output,
@TIERCODEID uniqueidentifier = null output,
@AMOUNT money = null output,
@PLANNEDGIFTAMOUNT money = null output,
@HASPLANNEDGIFTAMOUNT bit = null output,
@HASREVENUEAMOUNT bit = null output,
@UPDATEFUTUREAMOUNT bit = null output,
@NEWMINIMUMAMOUNT money = null output,
@NEWPLANNEDGIFTAMOUNT money = null output,
@EFFECTIVEDATE datetime = null output,
@BASECURRENCYID uniqueidentifier = null output
)
as
set nocount on;
set @DATALOADED = 0;
set @TSLONG = 0;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
select
@DATALOADED = 1,
@TSLONG = RECOGNITIONLEVEL.TSLONG,
@NAME = RECOGNITIONLEVEL.NAME,
@DESCRIPTION = RECOGNITIONLEVEL.DESCRIPTION,
@TIERCODEID = RECOGNITIONLEVEL.TIERCODEID,
@AMOUNT = RECOGNITIONLEVEL.AMOUNT,
@PLANNEDGIFTAMOUNT = RECOGNITIONLEVEL.PLANNEDGIFTAMOUNT,
@HASPLANNEDGIFTAMOUNT =
case
when RECOGNITIONPROGRAM.PLANNEDGIFTCODE = 2 then 1
else 0
end,
@HASREVENUEAMOUNT = 1,
@BASECURRENCYID = RECOGNITIONLEVEL.BASECURRENCYID
from dbo.RECOGNITIONLEVEL
inner join dbo.RECOGNITIONPROGRAM on RECOGNITIONLEVEL.RECOGNITIONPROGRAMID = RECOGNITIONPROGRAM.ID
where RECOGNITIONLEVEL.ID = @ID;
select top 1
@NEWMINIMUMAMOUNT = AMOUNT,
@NEWPLANNEDGIFTAMOUNT = PLANNEDGIFTAMOUNT,
@EFFECTIVEDATE = ACTIVEDATE,
@UPDATEFUTUREAMOUNT = 1
from dbo.RECOGNITIONLEVELAMOUNT
where
RECOGNITIONLEVELID = @ID and
ACTIVEDATE > @CURRENTDATE
order by ACTIVEDATE asc;
return 0;