USP_DATAFORMTEMPLATE_EDITLOAD_PLANNEDGIFTADDITION
The load procedure used by the edit dataform template "Planned Gift Addition 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. |
@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. |
@EXPECTEDGIFTAMOUNT | money | INOUT | Gift amount |
@RECOGNITIONAMOUNT | money | INOUT | Recognition amount |
@GIFTDATE | datetime | INOUT | Date |
@CONSTITUENTLOOKUPID | nvarchar(36) | INOUT | |
@CONSTITUENTFIRSTNAME | nvarchar(50) | INOUT | |
@CONSTITUENTKEYNAME | nvarchar(100) | INOUT | |
@DESIGNATION | xml | INOUT | Planned gift addition details |
@ASSETS | xml | INOUT | Assets |
@BASECURRENCYID | uniqueidentifier | INOUT | Base currency ID |
@TRANSACTIONCURRENCYID | uniqueidentifier | INOUT | Transaction currency |
@BASEEXCHANGERATEID | uniqueidentifier | INOUT | Exchange rate ID |
@EXCHANGERATE | decimal(20, 8) | INOUT | Exchange rate |
@HADSPOTRATE | bit | INOUT | Had spot rate |
@RATECHANGED | bit | INOUT | Rate changed |
@CONSTITUENTID | uniqueidentifier | INOUT | Constituent ID |
@DONOTRECEIPT | bit | INOUT | Do not receipt |
@DONOTRECEIPT_LOCKED | bit | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_PLANNEDGIFTADDITION(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@EXPECTEDGIFTAMOUNT money = null output,
@RECOGNITIONAMOUNT money = null output,
@GIFTDATE datetime = null output,
@CONSTITUENTLOOKUPID nvarchar(36) = null output,
@CONSTITUENTFIRSTNAME nvarchar(50) = null output,
@CONSTITUENTKEYNAME nvarchar(100) = null output,
@DESIGNATION xml = null output,
@ASSETS xml = null output,
@BASECURRENCYID uniqueidentifier = null output,
@TRANSACTIONCURRENCYID uniqueidentifier = null output,
@BASEEXCHANGERATEID uniqueidentifier = null output,
@EXCHANGERATE decimal(20,8) = null output,
@HADSPOTRATE bit = null output,
@RATECHANGED bit = null output,
@CONSTITUENTID uniqueidentifier = null output,
@DONOTRECEIPT bit = null output,
@DONOTRECEIPT_LOCKED bit = null output
)
as
set nocount on;
set @DATALOADED = 0
set @TSLONG = 0
select
@DATALOADED = 1,
@TSLONG = PLANNEDGIFTADDITION.TSLONG,
@EXPECTEDGIFTAMOUNT = PLANNEDGIFTADDITION.TRANSACTIONEXPECTEDGIFTAMOUNT,
@RECOGNITIONAMOUNT = PLANNEDGIFTADDITION.TRANSACTIONRECOGNITIONAMOUNT,
@GIFTDATE = PLANNEDGIFTADDITION.GIFTDATE,
@CONSTITUENTLOOKUPID = CONSTITUENT.LOOKUPID,
@CONSTITUENTFIRSTNAME = CONSTITUENT.FIRSTNAME,
@CONSTITUENTKEYNAME = CONSTITUENT.KEYNAME,
@CONSTITUENTID = CONSTITUENT.ID,
@BASECURRENCYID = PLANNEDGIFT.BASECURRENCYID,
@TRANSACTIONCURRENCYID = PLANNEDGIFT.TRANSACTIONCURRENCYID,
@BASEEXCHANGERATEID = PLANNEDGIFTADDITION.BASEEXCHANGERATEID,
@EXCHANGERATE = CURRENCYEXCHANGERATE.RATE,
@HADSPOTRATE =
case
when CURRENCYEXCHANGERATE.TYPECODE = 2
then 1
else 0
end,
@RATECHANGED = 0,
@DONOTRECEIPT = PLANNEDGIFTADDITION.DONOTRECEIPT,
@DONOTRECEIPT_LOCKED =
case when PLANNEDGIFTADDITION.DONOTRECEIPT != 0
and (
ISREVOCABLE != 0
or TRUSTHELDOUTSIDE != 0
or dbo.UFN_PLANNEDGIFT_ISRECEIPTABLE(PLANNEDGIFT.VEHICLECODE) = 0
)
then 1
else 0
end
from
dbo.PLANNEDGIFTADDITION
inner join dbo.PLANNEDGIFT on PLANNEDGIFTADDITION.PLANNEDGIFTID = PLANNEDGIFT.ID
inner join dbo.CONSTITUENT on CONSTITUENT.ID = PLANNEDGIFT.CONSTITUENTID
left join dbo.CURRENCYEXCHANGERATE on CURRENCYEXCHANGERATE.ID = PLANNEDGIFTADDITION.BASEEXCHANGERATEID
where
PLANNEDGIFTADDITION.ID = @ID;
set @DESIGNATION = (
select
DESIGNATION.ID,
DESIGNATION.DESIGNATIONID,
DESIGNATION.TRANSACTIONAMOUNT as AMOUNT,
DESIGNATION.CATEGORYCODEID,
DESIGNATION.TYPECODEID,
DESIGNATION.USECODEID,
DESIGNATION.DATE,
DESIGNATION.SEQUENCE,
DESIGNATION.TRANSACTIONCURRENCYID
from dbo.UFN_PLANNEDGIFTADDITION_GETDESIGNATIONS(@ID) DESIGNATION
order by DESIGNATION.SEQUENCE
for xml raw('ITEM'),type,elements,root('DESIGNATION'),BINARY BASE64
);
set @ASSETS = (
select
ASSETS.ID,
ASSETS.ASSETTYPECODEID,
ASSETS.DESCRIPTION,
ASSETS.TRANSACTIONVALUE as VALUE,
ASSETS.TRANSACTIONCOSTBASIS as COSTBASIS,
ASSETS.ASSETVALUATIONMETHODCODEID,
ASSETS.VALUATIONSOURCE,
(
select
ID, PLANNEDGIFTADDITIONASSETID, HOLDERCONSTITUENTID
from
dbo.PLANNEDGIFTADDITIONASSETHOLDER
where
PLANNEDGIFTADDITIONASSETHOLDER.PLANNEDGIFTADDITIONASSETID = ASSETS.ID
for xml raw('ITEM'), type, elements, binary base64
) ASSETHOLDERS,
ASSETS.ADDRESSID,
ASSETS.SEQUENCE,
ASSETS.TRANSACTIONCURRENCYID
from dbo.UFN_PLANNEDGIFTADDITION_GETASSETS(@ID) ASSETS
order by ASSETS.SEQUENCE
for xml raw('ITEM'),type,elements,root('ASSETS'),BINARY BASE64
);
return 0;