USP_DATAFORMTEMPLATE_EDITLOAD_REVENUETRANSACTIONCHANGECONSTITUENT_2
The load procedure used by the edit dataform template "Revenue Transaction Change Constituent Edit Form 2"
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. |
@CONSTITUENTNAME | nvarchar(700) | INOUT | Current constituent |
@TYPE | nvarchar(22) | INOUT | Type |
@NEWCONSTITUENTID | uniqueidentifier | INOUT | New constituent |
@CONSTITUENTACCOUNTID | uniqueidentifier | INOUT | Account |
@RESETRECOGNITIONCREDITS | bit | INOUT | Recognition credit |
@RESETSOLICITORS | bit | INOUT | Solicitors |
@HOUSEHOLDSCANBEDONORS | bit | INOUT | Households can be donors |
@TYPECODE | tinyint | INOUT | Transaction type |
@PAYMENTMETHOD | nvarchar(30) | INOUT | Payment method |
@PAYMENTMETHODCODE | tinyint | INOUT | Payment method |
@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. |
@RESETMATCHINGGIFTCLAIMS | bit | INOUT | Matching gift claims |
@ALLOWMATCHINGGIFTCLAIM | bit | INOUT | |
@SEPAMANDATEID | uniqueidentifier | INOUT | |
@TRANSACTIONCURRENCYID | uniqueidentifier | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_REVENUETRANSACTIONCHANGECONSTITUENT_2
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@CONSTITUENTNAME nvarchar(700) = null output,
@TYPE nvarchar(22) = null output,
@NEWCONSTITUENTID uniqueidentifier = null output,
@CONSTITUENTACCOUNTID uniqueidentifier= null output,
@RESETRECOGNITIONCREDITS bit = null output,
@RESETSOLICITORS bit = null output,
@HOUSEHOLDSCANBEDONORS bit = null output,
@TYPECODE tinyint = null output,
@PAYMENTMETHOD nvarchar(30) = null output,
@PAYMENTMETHODCODE tinyint = null output,
@TSLONG bigint = 0 output,
@RESETMATCHINGGIFTCLAIMS bit = null output,
@ALLOWMATCHINGGIFTCLAIM bit = null output,
@SEPAMANDATEID uniqueidentifier = null output,
@TRANSACTIONCURRENCYID uniqueidentifier = null output
)
as
set nocount on;
select top 1
@DATALOADED = 1,
@CONSTITUENTNAME = NF.NAME,
@TYPE = FINANCIALTRANSACTION.TYPE,
@TYPECODE = FINANCIALTRANSACTION.TYPECODE,
@PAYMENTMETHOD = REVENUEPAYMENTMETHOD.PAYMENTMETHOD,
@PAYMENTMETHODCODE = REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE,
@TRANSACTIONCURRENCYID = FINANCIALTRANSACTION.TRANSACTIONCURRENCYID,
@TSLONG = FINANCIALTRANSACTION.TSLONG
from dbo.FINANCIALTRANSACTION
outer apply dbo.UFN_CONSTITUENT_DISPLAYNAME(FINANCIALTRANSACTION.CONSTITUENTID) NF
inner join dbo.REVENUEPAYMENTMETHOD on REVENUEPAYMENTMETHOD.REVENUEID = FINANCIALTRANSACTION.ID
where FINANCIALTRANSACTION.ID = @ID;
set @RESETRECOGNITIONCREDITS = 0;
set @RESETSOLICITORS = 0;
set @HOUSEHOLDSCANBEDONORS = dbo.UFN_INSTALLATIONINFO_GETHOUSEHOLDSCANBEDONORS();
set @RESETMATCHINGGIFTCLAIMS = 0;
set @ALLOWMATCHINGGIFTCLAIM = case when exists (
select top 1 FINANCIALTRANSACTION.ID
from dbo.FINANCIALTRANSACTION
where TYPECODE = 0
and exists (
select top 1 FINANCIALTRANSACTIONLINEITEM.ID
from dbo.FINANCIALTRANSACTIONLINEITEM
inner join REVENUESPLIT_EXT on REVENUESPLIT_EXT.ID = FINANCIALTRANSACTIONLINEITEM.ID
where FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID = FINANCIALTRANSACTION.ID
and REVENUESPLIT_EXT.APPLICATIONCODE <> 7)
and not exists(
select top 1 FINANCIALTRANSACTIONLINEITEM.ID
from dbo.FINANCIALTRANSACTIONLINEITEM
inner join REVENUESPLIT_EXT on REVENUESPLIT_EXT.ID = FINANCIALTRANSACTIONLINEITEM.ID
where FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID = FINANCIALTRANSACTION.ID
and REVENUESPLIT_EXT.APPLICATIONCODE = 11)
and FINANCIALTRANSACTION.ID = @ID
) then 1 else 0 end;