USP_DATAFORMTEMPLATE_EDITLOAD_RECOGNITIONCREDIT_DONORCHALLENGE
The load procedure used by the edit dataform template "Recognition Credit Donor Challenge 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. |
@AMOUNT | money | INOUT | Initial gift amount |
@RECOGNITIONS | xml | INOUT | |
@GIVENANONYMOUSLY | bit | INOUT | Given anonymously |
@CONSTITUENTID | uniqueidentifier | INOUT | Constituent ID |
@DATE | datetime | INOUT | Date |
@SOURCERECURRINGGIFTREVENUEID | uniqueidentifier | INOUT | Source revenue ID |
@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. |
@BASECURRENCYID | uniqueidentifier | INOUT | |
@DESIGNATIONID | uniqueidentifier | INOUT | |
@DESIGNATION | nvarchar(512) | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_RECOGNITIONCREDIT_DONORCHALLENGE
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@AMOUNT money = null output,
@RECOGNITIONS xml = null output,
@GIVENANONYMOUSLY bit = null output,
@CONSTITUENTID uniqueidentifier = null output,
@DATE datetime = null output,
@SOURCERECURRINGGIFTREVENUEID uniqueidentifier = null output,
@TSLONG bigint = 0 output,
@BASECURRENCYID uniqueidentifier = null output,
@DESIGNATIONID uniqueidentifier = null output,
@DESIGNATION nvarchar(512) = null output
)
as
set nocount on;
set @DATALOADED = 0;
set @TSLONG = 0;
select
@DATALOADED = 1,
@AMOUNT = RS.BASEAMOUNT,
@RECOGNITIONS = dbo.UFN_RECOGNITIONCREDIT_DONORCHALLENGE_GETRECOGNITIONS_TOITEMLISTXML(@ID),
@GIVENANONYMOUSLY = REVENUE_EXT.GIVENANONYMOUSLY,
@CONSTITUENTID = R.CONSTITUENTID,
@DATE = cast(R.DATE as datetime),
@SOURCERECURRINGGIFTREVENUEID = null,
@BASECURRENCYID = isnull(REVENUE_EXT.NONPOSTABLEBASECURRENCYID, CURRENCYSET.BASECURRENCYID),
@DESIGNATIONID = REVENUESPLIT_EXT.DESIGNATIONID,
@DESIGNATION = DESIGNATION.USERID
from
dbo.FINANCIALTRANSACTIONLINEITEM RS
inner join dbo.REVENUESPLIT_EXT on RS.ID = REVENUESPLIT_EXT.ID
inner join dbo.FINANCIALTRANSACTION R on RS.FINANCIALTRANSACTIONID = R.ID
inner join dbo.REVENUE_EXT on R.ID = REVENUE_EXT.ID
inner join dbo.PDACCOUNTSYSTEM on R.PDACCOUNTSYSTEMID = PDACCOUNTSYSTEM.ID
inner join dbo.CURRENCYSET on PDACCOUNTSYSTEM.CURRENCYSETID = CURRENCYSET.ID
left join dbo.DESIGNATION on REVENUESPLIT_EXT.DESIGNATIONID = DESIGNATION.ID
where
RS.ID = @ID
and R.DELETEDON is null
and RS.DELETEDON is null
and RS.TYPECODE <> 1;
if @RECOGNITIONS is not null
select @TSLONG = max(TSLONG) from dbo.REVENUERECOGNITION where REVENUERECOGNITION.REVENUESPLITID = @ID;
else
set @TSLONG = 0;
return 0;