USP_DATAFORMTEMPLATE_VIEW_PLEDGE
The load procedure used by the view dataform template "Pledge 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. |
@SOURCECODE | nvarchar(50) | INOUT | Source code |
@MAILING | nvarchar(100) | INOUT | Effort |
@CHANNEL | nvarchar(100) | INOUT | Inbound channel |
@APPEAL | nvarchar(100) | INOUT | Appeal |
@SENDPLEDGEREMINDER | bit | INOUT | Send reminders |
@PLEDGESUBTYPE | nvarchar(100) | INOUT | Subtype |
@REFERENCE | nvarchar(255) | INOUT | Revenue reference |
@OPPORTUNITYNAME | nvarchar(500) | INOUT | Associated with |
@OPPORTUNITYID | uniqueidentifier | INOUT | Opportunity ID |
@TAXCLAIMELIGIBILITY | nvarchar(20) | INOUT | Tax claim eligibility |
@QUALIFICATIONSTATUS | nvarchar(30) | INOUT | Gift Aid qualification status |
@CONSTITUENTISGROUP | bit | INOUT | Constituent is group |
@ORIGINALAMOUNT | money | INOUT | Original amount |
@TAXCLAIMELIGIBILITYSTATUSCODE | tinyint | INOUT | Tax claim eligibility |
@BASECURRENCYID | uniqueidentifier | INOUT | Base currency ID |
@TRANSACTIONCURRENCYID | uniqueidentifier | INOUT | Transaction currency ID |
@ORGANIZATIONAMOUNT | money | INOUT | Organization amount |
@BASEEXCHANGERATE | decimal(20, 8) | INOUT | Transaction to base exchange rate |
@ORGANIZATIONEXCHANGERATE | decimal(20, 8) | INOUT | Base to organization exchange rate |
@APPEALID | uniqueidentifier | INOUT | Appeal ID |
@APPLIEDID | uniqueidentifier | INOUT | |
@APPLIEDDATE | datetime | INOUT | |
@APPLIEDTYPE | nvarchar(100) | INOUT | |
@APPLIEDNAME | nvarchar(700) | INOUT | |
@GIVENTO | nvarchar(100) | INOUT | |
@APPLIEDEARNEDINCOMEAMOUNT | money | INOUT | |
@APPLIEDEARNEDINCOMEBALANCE | money | INOUT | |
@APPLIEDCONTRIBUTEDINCOMEAMOUNT | money | INOUT | |
@APPLIEDCONTRIBUTEDINCOMEBALANCE | money | INOUT | |
@ISMEMBERSHIPPLEDGE | bit | INOUT | |
@REVENUECATEGORYCODE | nvarchar(100) | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_PLEDGE
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@SOURCECODE nvarchar(50) = null output,
@MAILING nvarchar(100) = null output,
@CHANNEL nvarchar(100) = null output,
@APPEAL nvarchar(100) = null output,
@SENDPLEDGEREMINDER bit = null output,
@PLEDGESUBTYPE nvarchar(100) = null output,
@REFERENCE nvarchar(255) = null output,
@OPPORTUNITYNAME nvarchar(500) = null output,
@OPPORTUNITYID uniqueidentifier = null output,
-- @TAXCLAIMELIGIBILITY is deprecated. Should use @TAXCLAIMELIGIBILITYSTATUSCODE instead.
@TAXCLAIMELIGIBILITY nvarchar(20) = null output,
@QUALIFICATIONSTATUS nvarchar(30) = null output,
@CONSTITUENTISGROUP bit = null output,
@ORIGINALAMOUNT money = null output,
@TAXCLAIMELIGIBILITYSTATUSCODE tinyint = null output,
@BASECURRENCYID uniqueidentifier = null output,
@TRANSACTIONCURRENCYID uniqueidentifier = null output,
@ORGANIZATIONAMOUNT money = null output,
@BASEEXCHANGERATE decimal(20,8) = null output,
@ORGANIZATIONEXCHANGERATE decimal(20,8) = null output,
@APPEALID uniqueidentifier = null output,
@APPLIEDID uniqueidentifier = null output,
@APPLIEDDATE datetime = null output,
@APPLIEDTYPE nvarchar(100) = null output,
@APPLIEDNAME nvarchar(700) = null output,
@GIVENTO nvarchar(100) = null output,
@APPLIEDEARNEDINCOMEAMOUNT money = null output,
@APPLIEDEARNEDINCOMEBALANCE money = null output,
@APPLIEDCONTRIBUTEDINCOMEAMOUNT money = null output,
@APPLIEDCONTRIBUTEDINCOMEBALANCE money = null output,
@ISMEMBERSHIPPLEDGE bit = null output,
@REVENUECATEGORYCODE nvarchar(100) = null output
)
as
set nocount on;
set @DATALOADED = 0;
select @CONSTITUENTISGROUP = (ISGROUP|ISORGANIZATION)
from dbo.CONSTITUENT
inner join dbo.FINANCIALTRANSACTION on FINANCIALTRANSACTION.CONSTITUENTID = CONSTITUENT.ID
inner join dbo.REVENUE_EXT on FINANCIALTRANSACTION.ID = REVENUE_EXT.ID
where FINANCIALTRANSACTION.ID = @ID
and FINANCIALTRANSACTION.DELETEDON is null;
select
@DATALOADED = 1,
@SOURCECODE = REVENUE_EXT.SOURCECODE,
@MAILING = dbo.UFN_MKTSEGMENTATION_GETNAME(REVENUE_EXT.MAILINGID),
@CHANNEL = CHANNELCODE.DESCRIPTION,
@SOURCECODE = REVENUE_EXT.SOURCECODE,
@APPEAL = dbo.UFN_APPEAL_GETNAME(REVENUE_EXT.APPEALID),
@SENDPLEDGEREMINDER = REVENUESCHEDULE.SENDPLEDGEREMINDER,
@PLEDGESUBTYPE = PLEDGESUBTYPE.NAME,
@REFERENCE = REVENUEREFERENCE.REFERENCE,
@ORIGINALAMOUNT = case when FINANCIALTRANSACTION.TYPECODE = 15 then MEMBERSHIPINSTALLMENTPLANORIGINALAMOUNT.TRANSACTIONAMOUNT else PLEDGEORIGINALAMOUNT.TRANSACTIONAMOUNT end,
@BASECURRENCYID = CURRENCYSET.BASECURRENCYID,
@TRANSACTIONCURRENCYID = FINANCIALTRANSACTION.TRANSACTIONCURRENCYID,
@ORGANIZATIONAMOUNT = FINANCIALTRANSACTION.ORGAMOUNT,
@APPEALID = REVENUE_EXT.APPEALID,
@ISMEMBERSHIPPLEDGE = case when FINANCIALTRANSACTION.TYPECODE = 15 then 1 else 0 end
from dbo.FINANCIALTRANSACTION
inner join dbo.REVENUE_EXT on FINANCIALTRANSACTION.ID = REVENUE_EXT.ID
inner join dbo.PDACCOUNTSYSTEM on FINANCIALTRANSACTION.PDACCOUNTSYSTEMID = PDACCOUNTSYSTEM.ID
inner join dbo.CURRENCYSET on PDACCOUNTSYSTEM.CURRENCYSETID = CURRENCYSET.ID
left join dbo.REVENUEPOSTED on REVENUEPOSTED.ID = FINANCIALTRANSACTION.ID
inner join dbo.REVENUESCHEDULE on REVENUESCHEDULE.ID = FINANCIALTRANSACTION.ID
left join dbo.PLEDGESUBTYPE on PLEDGESUBTYPE.ID = REVENUESCHEDULE.PLEDGESUBTYPEID
left join dbo.CHANNELCODE on CHANNELCODE.ID = REVENUE_EXT.CHANNELCODEID
left join dbo.REVENUEREFERENCE on FINANCIALTRANSACTION.ID = REVENUEREFERENCE.ID
left join dbo.PLEDGEORIGINALAMOUNT on FINANCIALTRANSACTION.ID = PLEDGEORIGINALAMOUNT.ID and FINANCIALTRANSACTION.TYPECODE <> 15
left join dbo.MEMBERSHIPINSTALLMENTPLANORIGINALAMOUNT on FINANCIALTRANSACTION.ID = MEMBERSHIPINSTALLMENTPLANORIGINALAMOUNT.ID and FINANCIALTRANSACTION.TYPECODE = 15
where FINANCIALTRANSACTION.ID = @ID and FINANCIALTRANSACTION.TYPECODE in (1,6,15)
and FINANCIALTRANSACTION.DELETEDON is null;
select
@BASEEXCHANGERATE = CURRENCYEXCHANGERATE.RATE
from dbo.FINANCIALTRANSACTION
left join dbo.CURRENCYEXCHANGERATE on FINANCIALTRANSACTION.BASEEXCHANGERATEID = CURRENCYEXCHANGERATE.ID
where FINANCIALTRANSACTION.ID = @ID
and FINANCIALTRANSACTION.DELETEDON is null;
select
@ORGANIZATIONEXCHANGERATE = CURRENCYEXCHANGERATE.RATE
from dbo.FINANCIALTRANSACTION
left join dbo.CURRENCYEXCHANGERATE on FINANCIALTRANSACTION.ORGEXCHANGERATEID = CURRENCYEXCHANGERATE.ID
where FINANCIALTRANSACTION.ID = @ID
and FINANCIALTRANSACTION.DELETEDON is null;
if @DATALOADED = 1
select
@OPPORTUNITYID = RO.OPPORTUNITYID,
@OPPORTUNITYNAME = dbo.UFN_OPPORTUNITY_GETDESCRIPTION(RO.OPPORTUNITYID)
from
dbo.FINANCIALTRANSACTIONLINEITEM
inner join dbo.REVENUESPLIT_EXT on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLIT_EXT.ID
left outer join
dbo.REVENUEOPPORTUNITY RO on RO.ID = FINANCIALTRANSACTIONLINEITEM.ID
where FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID = @ID
and FINANCIALTRANSACTIONLINEITEM.DELETEDON is null
and FINANCIALTRANSACTIONLINEITEM.TYPECODE <> 1;
select top 1
@APPLIEDID = MEMBERSHIP.ID,
@APPLIEDDATE = MEMBERSHIPTRANSACTION.TRANSACTIONDATE,
@APPLIEDTYPE = dbo.UFN_MEMBERSHIPPROGRAM_GETNAME(MEMBERSHIP.MEMBERSHIPPROGRAMID),
@APPLIEDNAME = NF.NAME,
@GIVENTO = case
when MEMBERSHIP.GIVENBYID is null then null
else NF.NAME
end,
@APPLIEDEARNEDINCOMEAMOUNT = dbo.UFN_PLEDGE_CALCULATEEARNEDINCOMEAMOUNT(FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID),
@APPLIEDEARNEDINCOMEBALANCE = dbo.UFN_PLEDGE_CALCULATEEARNEDINCOMEBALANCE(FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID),
@APPLIEDCONTRIBUTEDINCOMEAMOUNT = dbo.UFN_PLEDGE_CALCULATECONTRIBUTEDINCOMEAMOUNT(FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID),
@APPLIEDCONTRIBUTEDINCOMEBALANCE = dbo.UFN_PLEDGE_CALCULATECONTRIBUTEDINCOMEBALANCE(FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID)
from dbo.MEMBERSHIPTRANSACTION
inner join dbo.MEMBERSHIP on MEMBERSHIPTRANSACTION.MEMBERSHIPID = MEMBERSHIP.ID
inner join dbo.MEMBER on MEMBERSHIP.ID = MEMBER.MEMBERSHIPID
inner join dbo.FINANCIALTRANSACTIONLINEITEM on MEMBERSHIPTRANSACTION.REVENUESPLITID = FINANCIALTRANSACTIONLINEITEM.ID
inner join dbo.REVENUESPLIT_EXT on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLIT_EXT.ID
outer apply dbo.UFN_CONSTITUENT_DISPLAYNAME(MEMBER.CONSTITUENTID) NF
where FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID = @ID and MEMBER.ISPRIMARY = 1
and FINANCIALTRANSACTIONLINEITEM.DELETEDON is null
and FINANCIALTRANSACTIONLINEITEM.TYPECODE <> 1;
select top 1
@REVENUECATEGORYCODE = GLREVENUECATEGORYMAPPING.REVENUECATEGORYNAME
from dbo.FINANCIALTRANSACTIONLINEITEM REVENUESPLIT
inner join dbo.REVENUECATEGORY on REVENUECATEGORY.ID = REVENUESPLIT.ID
inner join dbo.GLREVENUECATEGORYMAPPING on REVENUECATEGORY.GLREVENUECATEGORYMAPPINGID = GLREVENUECATEGORYMAPPING.ID
where REVENUESPLIT.FINANCIALTRANSACTIONID = @ID;
--Gift Aid is for UK only
if dbo.UFN_INSTALLEDPRODUCTS_PRODUCTIS('9568A6C2-F7AA-45fd-8F54-21FE9654EE2D') = 1
begin
-- @TAXCLAIMELIGIBILITY is deprecated. Should use @TAXCLAIMELIGIBILITYSTATUSCODE instead.
select @TAXCLAIMELIGIBILITY = dbo.UFN_RECURRINGGIFTELIGIBILITY(@ID);
select @TAXCLAIMELIGIBILITYSTATUSCODE = dbo.UFN_RECURRINGGIFTELIGIBILITYSTATUS(@ID);
select @QUALIFICATIONSTATUS = dbo.UFN_RECURRINGGIFTQUALIFICATIONSTATUS(@ID);
end
return 0;