USP_DATAFORMTEMPLATE_VIEW_REVENUETRANSACTIONDETAIL_2
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@DATALOADED | bit | INOUT | |
@DESIGNATION | nvarchar(100) | INOUT | |
@CAMPAIGNS | nvarchar(max) | INOUT | |
@APPLIEDID | uniqueidentifier | INOUT | |
@APPLIEDDATE | datetime | INOUT | |
@APPLIEDTYPE | nvarchar(100) | INOUT | |
@APPLIEDNAME | nvarchar(700) | INOUT | |
@OPPORTUNITYID | uniqueidentifier | INOUT | |
@OPPORTUNITYNAME | nvarchar(500) | INOUT | |
@APPLIEDTOCOUNT | int | INOUT | |
@CATEGORYDESCRIPTION | nvarchar(100) | INOUT | |
@APPLICATIONCODE | tinyint | INOUT | |
@SOLICITORS | xml | INOUT | |
@RECOGNITIONS | xml | INOUT | |
@DONATIONFORPLANNEDGIFT | bit | INOUT | |
@GIFTAIDQUALIFICATIONSTATUS | nvarchar(30) | INOUT | |
@TAXCLAIMAMOUNT | money | INOUT | |
@TAXCLAIMNUMBER | nvarchar(10) | INOUT | |
@PREVIOUSCLAIMAMOUNT | money | INOUT | |
@PREVIOUSCLAIMNUMBER | nvarchar(10) | INOUT | |
@SHOWPOTENTIAL | tinyint | INOUT | |
@CONSTITUENTISGROUP | bit | INOUT | |
@SHOWREFUNDDETAILS | bit | INOUT | |
@TAXCLAIMELIGIBILITYSTATUSCODE | tinyint | INOUT | |
@AUCTIONITEMPACKAGENAME | nvarchar(100) | INOUT | |
@AUCTIONITEMPACKAGEID | uniqueidentifier | INOUT | |
@TRANSACTIONCURRENCYID | uniqueidentifier | INOUT | |
@ISPLANNEDGIFTADDITION | bit | INOUT | |
@APPLIEDRECIPRICOLCONSTITUENTNAME | nvarchar(400) | INOUT | |
@RECIPRICOLLOOKUPID | nvarchar(100) | INOUT | |
@DONORCHALLENGECLAIMS | xml | INOUT | |
@GIVENTO | nvarchar(100) | INOUT | |
@QUANTITY | tinyint | INOUT | |
@DESCRIPTION | nvarchar(100) | INOUT | |
@LINKEDTOMEMBERSHIP | bit | INOUT | |
@MEMBERSHIPID | uniqueidentifier | INOUT | |
@MEMBERSHIPNAME | nvarchar(100) | INOUT | |
@MEMBERSHIPDATE | datetime | INOUT | |
@MEMBERNAME | nvarchar(700) | INOUT | |
@MEMBERSHIPADDON | nvarchar(100) | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_REVENUETRANSACTIONDETAIL_2
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@DESIGNATION nvarchar(100) = null output,
@CAMPAIGNS nvarchar(max) = null output,
@APPLIEDID uniqueidentifier = null output,
@APPLIEDDATE datetime = null output,
@APPLIEDTYPE nvarchar(100) = null output,
@APPLIEDNAME nvarchar(700) = null output,
@OPPORTUNITYID uniqueidentifier = null output,
@OPPORTUNITYNAME nvarchar(500) = null output,
@APPLIEDTOCOUNT integer = null output,
@CATEGORYDESCRIPTION nvarchar(100) = null output,
@APPLICATIONCODE tinyint = null output,
@SOLICITORS xml = null output,
@RECOGNITIONS xml = null output,
@DONATIONFORPLANNEDGIFT bit = null output,
@GIFTAIDQUALIFICATIONSTATUS nvarchar(30) = null output,
@TAXCLAIMAMOUNT money = null output,
@TAXCLAIMNUMBER nvarchar(10) = null output,
@PREVIOUSCLAIMAMOUNT money = null output,
@PREVIOUSCLAIMNUMBER nvarchar(10) = null output,
@SHOWPOTENTIAL tinyint = null output,
@CONSTITUENTISGROUP bit = null output,
@SHOWREFUNDDETAILS bit = null output,
@TAXCLAIMELIGIBILITYSTATUSCODE tinyint = null output,
@AUCTIONITEMPACKAGENAME nvarchar(100) = null output,
@AUCTIONITEMPACKAGEID uniqueidentifier = null output,
@TRANSACTIONCURRENCYID uniqueidentifier = null output,
@ISPLANNEDGIFTADDITION bit = null output,
@APPLIEDRECIPRICOLCONSTITUENTNAME nvarchar(400) = null output,
@RECIPRICOLLOOKUPID nvarchar(100) = null output,
@DONORCHALLENGECLAIMS xml = null output,
@GIVENTO nvarchar(100) = null output,
@QUANTITY tinyint = null output,
@DESCRIPTION nvarchar(100) = null output,
@LINKEDTOMEMBERSHIP bit = null output,
@MEMBERSHIPID uniqueidentifier = null output,
@MEMBERSHIPNAME nvarchar(100) = null output,
@MEMBERSHIPDATE datetime = null output,
@MEMBERNAME nvarchar(700) = null output,
@MEMBERSHIPADDON nvarchar(100) = null output
)
as
set nocount on;
set @DATALOADED = 0;
set @LINKEDTOMEMBERSHIP = 0;
set @DONATIONFORPLANNEDGIFT = 0;
declare @REVENUEID uniqueidentifier;
declare @CONSTITUENTID uniqueidentifier;
declare @REVENUETYPECODE tinyint;
declare @REVENUETYPE nvarchar(20);
select
@DATALOADED = 1,
@REVENUEID = FINANCIALTRANSACTION.ID,
@CONSTITUENTID = FINANCIALTRANSACTION.CONSTITUENTID,
@REVENUETYPECODE = REVENUESPLIT_EXT.TYPECODE,
@REVENUETYPE = REVENUESPLIT_EXT.TYPE,
@APPLICATIONCODE = REVENUESPLIT_EXT.APPLICATIONCODE,
@DESIGNATION = DESIGNATION.NAME,
@CATEGORYDESCRIPTION = coalesce(GLREVENUECATEGORYMAPPING.REVENUECATEGORYNAME, ''),
@TRANSACTIONCURRENCYID = FINANCIALTRANSACTION.TRANSACTIONCURRENCYID,
@SOLICITORS = dbo.UFN_REVENUE_GETSOLICITORS_2_TOITEMLISTXML(@ID),
@RECOGNITIONS = dbo.UFN_RECOGNITIONCREDIT_DONORCHALLENGE_GETRECOGNITIONS_TOITEMLISTXML(@ID)
from
dbo.FINANCIALTRANSACTION
inner join
dbo.REVENUE_EXT on FINANCIALTRANSACTION.ID = REVENUE_EXT.ID
inner join
dbo.FINANCIALTRANSACTIONLINEITEM on FINANCIALTRANSACTION.ID = FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID
inner join
dbo.REVENUESPLIT_EXT on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLIT_EXT.ID
left join
dbo.DESIGNATION on REVENUESPLIT_EXT.DESIGNATIONID = DESIGNATION.ID
left join
dbo.REVENUECATEGORY on FINANCIALTRANSACTIONLINEITEM.ID = REVENUECATEGORY.ID
left join
dbo.GLREVENUECATEGORYMAPPING on REVENUECATEGORY.GLREVENUECATEGORYMAPPINGID = GLREVENUECATEGORYMAPPING.ID
where
FINANCIALTRANSACTIONLINEITEM.ID = @ID and
FINANCIALTRANSACTIONLINEITEM.DELETEDON is null and
FINANCIALTRANSACTIONLINEITEM.TYPECODE <> 1;
select top 1
@OPPORTUNITYID = RO.OPPORTUNITYID,
@OPPORTUNITYNAME = dbo.UFN_OPPORTUNITY_GETDESCRIPTION(RO.OPPORTUNITYID)
from
dbo.REVENUEOPPORTUNITY RO
where
RO.ID = @ID;
select
@CONSTITUENTISGROUP = (ISGROUP|ISORGANIZATION)
from
dbo.CONSTITUENT
where
ID = @CONSTITUENTID;
select
@CAMPAIGNS = dbo.UDA_BUILDLIST(distinct CAMPAIGN.NAME)
from
dbo.REVENUESPLITCAMPAIGN
inner join
dbo.CAMPAIGN on REVENUESPLITCAMPAIGN.CAMPAIGNID = CAMPAIGN.ID
where
REVENUESPLITCAMPAIGN.REVENUESPLITID = @ID;
select @DONORCHALLENGECLAIMS = dbo.UFN_REVENUETRANSACTION_TOP3DONORCHALLENGECLAIMS_TOITEMLISTXML(@ID);
--Gift Aid is for UK only
if dbo.UFN_INSTALLEDPRODUCTS_PRODUCTIS('9568A6C2-F7AA-45fd-8F54-21FE9654EE2D') = 1
begin
select @GIFTAIDQUALIFICATIONSTATUS = dbo.UFN_GIFTAIDREVENUESPLIT_GETQUALIFICATIONSTATUS(@ID);
select @TAXCLAIMELIGIBILITYSTATUSCODE = dbo.UFN_GIFTAIDREVENUESPLIT_GETTAXCLAIMELIGIBILITYSTATUS(@ID);
select @TAXCLAIMAMOUNT = dbo.UFN_GIFTAIDREVENUESPLIT_GETSPLITTAXCLAIMAMOUNT_2(@ID, 0, 1);
select @TAXCLAIMNUMBER = dbo.UFN_GIFTAIDREVENUESPLIT_GETSPLITTAXCLAIMNUMBER(@ID);
select @PREVIOUSCLAIMAMOUNT = dbo.UFN_GIFTAIDREVENUESPLIT_GETREFUNDTAXCLAIMAMOUNT(@ID);
select @PREVIOUSCLAIMNUMBER = dbo.UFN_GIFTAIDREVENUESPLIT_GETREFUNDTAXCLAIMNUMBER(@ID);
select @SHOWPOTENTIAL = dbo.UFN_GIFTAIDREVENUESPLIT_SHOWSPLITASPOTENTIAL(@ID);
select @SHOWREFUNDDETAILS = dbo.UFN_GIFTAIDREVENUESPLIT_SHOWREFUNDDETAILS(@ID);
end
if @APPLICATIONCODE = 0 -- Donations that came from planned gifts
begin
if exists (select ID from dbo.MEMBERSHIPTRANSACTION where REVENUESPLITID = @ID)
begin
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,
@LINKEDTOMEMBERSHIP = 1
from
dbo.MEMBERSHIPTRANSACTION
inner join
dbo.MEMBERSHIP on MEMBERSHIPTRANSACTION.MEMBERSHIPID = MEMBERSHIP.ID
inner join
dbo.MEMBER on MEMBERSHIP.ID = MEMBER.MEMBERSHIPID
outer apply
dbo.UFN_CONSTITUENT_DISPLAYNAME(MEMBER.CONSTITUENTID) NF
where
MEMBERSHIPTRANSACTION.REVENUESPLITID = @ID and
MEMBER.ISPRIMARY = 1;
end
else
begin
select top 1
@DONATIONFORPLANNEDGIFT = 1,
@APPLIEDID = PLANNEDGIFTREVENUESPLIT.PLANNEDGIFTID,
@APPLIEDDATE = PLANNEDGIFT.GIFTDATE,
@APPLIEDNAME = NF.NAME
from
dbo.PLANNEDGIFTREVENUESPLIT
inner join
dbo.PLANNEDGIFT on PLANNEDGIFT.ID = PLANNEDGIFTREVENUESPLIT.PLANNEDGIFTID
outer apply
dbo.UFN_CONSTITUENT_DISPLAYNAME(PLANNEDGIFT.CONSTITUENTID) NF
where
PLANNEDGIFTREVENUESPLIT.REVENUESPLITID = @ID;
end
end
if @APPLICATIONCODE = 1 --Event Fee payment
begin
select top 1
@APPLIEDID = EVENTREGISTRANTPAYMENT.REGISTRANTID,
@APPLIEDTYPE = EVENT.NAME,
@APPLIEDNAME = NF.NAME
from
dbo.EVENTREGISTRANTPAYMENT
inner join
dbo.REGISTRANT on EVENTREGISTRANTPAYMENT.REGISTRANTID = REGISTRANT.ID
outer apply
dbo.UFN_CONSTITUENT_DISPLAYNAME(REGISTRANT.CONSTITUENTID) NF
inner join
dbo.[EVENT] on REGISTRANT.EVENTID = [EVENT].ID
where
PAYMENTID = @ID;
end
if @APPLICATIONCODE in (2, 8, 19) --pledge payment, grant award, membership installment plan
begin
select top 1
@APPLIEDID = FINANCIALTRANSACTION.ID,
@APPLIEDDATE = FINANCIALTRANSACTION.DATE,
@APPLIEDTYPE = FINANCIALTRANSACTION.TYPE,
@APPLIEDNAME = NF.NAME
from
dbo.INSTALLMENTSPLITPAYMENT
inner join
dbo.FINANCIALTRANSACTION on INSTALLMENTSPLITPAYMENT.PLEDGEID = FINANCIALTRANSACTION.ID
inner join
dbo.REVENUE_EXT on FINANCIALTRANSACTION.ID = REVENUE_EXT.ID
outer apply
dbo.UFN_CONSTITUENT_DISPLAYNAME(FINANCIALTRANSACTION.CONSTITUENTID) NF
where
PAYMENTID = @ID and
FINANCIALTRANSACTION.DELETEDON is null;
if @APPLICATIONCODE = 19
begin
if @REVENUETYPECODE <> 18
begin
select top 1
@MEMBERSHIPID = MEMBERSHIPTRANSACTION.MEMBERSHIPID,
@MEMBERSHIPDATE = MEMBERSHIPTRANSACTION.TRANSACTIONDATE,
@MEMBERSHIPNAME = MEMBERSHIPPROGRAM.NAME,
@MEMBERNAME = NF.NAME
from
dbo.INSTALLMENTSPLITPAYMENT
inner join
dbo.FINANCIALTRANSACTION on INSTALLMENTSPLITPAYMENT.PLEDGEID = FINANCIALTRANSACTION.ID
inner join
dbo.REVENUE_EXT on FINANCIALTRANSACTION.ID = REVENUE_EXT.ID
inner join
dbo.FINANCIALTRANSACTIONLINEITEM on FINANCIALTRANSACTION.ID = FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID
inner join
dbo.REVENUESPLIT_EXT on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLIT_EXT.ID
inner join
dbo.MEMBERSHIPTRANSACTION on FINANCIALTRANSACTIONLINEITEM.ID = MEMBERSHIPTRANSACTION.REVENUESPLITID
inner join
dbo.MEMBERSHIP on MEMBERSHIPTRANSACTION.MEMBERSHIPID = MEMBERSHIP.ID
inner join
dbo.MEMBER on MEMBERSHIP.ID = MEMBER.MEMBERSHIPID
inner join
dbo.MEMBERSHIPLEVEL on MEMBERSHIPTRANSACTION.MEMBERSHIPLEVELID = MEMBERSHIPLEVEL.ID
inner join
dbo.MEMBERSHIPPROGRAM on MEMBERSHIPLEVEL.MEMBERSHIPPROGRAMID = MEMBERSHIPPROGRAM.ID
outer apply
dbo.UFN_CONSTITUENT_DISPLAYNAME(MEMBER.CONSTITUENTID) NF
where
INSTALLMENTSPLITPAYMENT.PAYMENTID = @ID and
FINANCIALTRANSACTION.DELETEDON is null and
FINANCIALTRANSACTIONLINEITEM.DELETEDON is null and
FINANCIALTRANSACTIONLINEITEM.TYPECODE <> 1 and
MEMBER.ISPRIMARY = 1;
end
else
begin
select top 1
@MEMBERSHIPID = MEMBERSHIPTRANSACTION.MEMBERSHIPID,
@MEMBERSHIPADDON = ADDON.NAME
from
dbo.INSTALLMENTSPLITPAYMENT
inner join
dbo.INSTALLMENTSPLIT on INSTALLMENTSPLITPAYMENT.INSTALLMENTSPLITID = INSTALLMENTSPLIT.ID
inner join
dbo.FINANCIALTRANSACTIONLINEITEM on INSTALLMENTSPLIT.REVENUESPLITID = FINANCIALTRANSACTIONLINEITEM.ID
inner join
dbo.REVENUESPLIT_EXT on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLIT_EXT.ID
inner join
dbo.MEMBERSHIPADDON on FINANCIALTRANSACTIONLINEITEM.ID = MEMBERSHIPADDON.REVENUESPLITID
inner join
dbo.ADDON on MEMBERSHIPADDON.ADDONID = ADDON.ID
inner join
dbo.MEMBERSHIPTRANSACTION on MEMBERSHIPADDON.MEMBERSHIPTRANSACTIONID = MEMBERSHIPTRANSACTION.ID
where
INSTALLMENTSPLITPAYMENT.PAYMENTID = @ID and
FINANCIALTRANSACTIONLINEITEM.DELETEDON is null and
FINANCIALTRANSACTIONLINEITEM.TYPECODE <> 1;
end
end
end
if @APPLICATIONCODE = 3 --recurring gift payment
begin
select
@LINKEDTOMEMBERSHIP = 1
from
dbo.RECURRINGGIFTACTIVITY
inner join
dbo.FINANCIALTRANSACTION on RECURRINGGIFTACTIVITY.SOURCEREVENUEID = FINANCIALTRANSACTION.ID
inner join
dbo.REVENUE_EXT on FINANCIALTRANSACTION.ID = REVENUE_EXT.ID
inner join
dbo.FINANCIALTRANSACTIONLINEITEM on FINANCIALTRANSACTION.ID = FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID
inner join
dbo.REVENUESPLIT_EXT on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLIT_EXT.ID
inner join
dbo.MEMBERSHIPTRANSACTION on FINANCIALTRANSACTIONLINEITEM.ID = MEMBERSHIPTRANSACTION.REVENUESPLITID
where
PAYMENTREVENUEID = @ID and
FINANCIALTRANSACTION.DELETEDON is null and
FINANCIALTRANSACTIONLINEITEM.DELETEDON is null and
FINANCIALTRANSACTIONLINEITEM.TYPECODE <> 1;
select top 1
@APPLIEDID =
case @LINKEDTOMEMBERSHIP
when 0
then FINANCIALTRANSACTION.ID
else
MEMBERSHIPTRANSACTION.MEMBERSHIPID
end,
@APPLIEDDATE = cast(FINANCIALTRANSACTION.DATE as datetime),
@APPLIEDTYPE =
case @REVENUETYPECODE
when 9
then @REVENUETYPE + ' ' + lower(FINANCIALTRANSACTION.TYPE) + ' (' +
(select dbo.UFN_SPONSORSHIPOPPORTUNITY_TRANSLATIONFUNCTION(SPONSORSHIP.SPONSORSHIPOPPORTUNITYID)
from dbo.SPONSORSHIPPAYMENT
inner join dbo.SPONSORSHIP on SPONSORSHIP.ID = SPONSORSHIPPAYMENT.SPONSORSHIPID
where SPONSORSHIPPAYMENT.ID = @ID
) + ')'
when 17
then 'Sponsorship recurring additional gift '+ '('+
(select dbo.UFN_SPONSORSHIPOPPORTUNITY_TRANSLATIONFUNCTION(SPONSORSHIP.SPONSORSHIPOPPORTUNITYID)
from dbo.SPONSORSHIPRECURRINGADDITIONALGIFT SPRAG
inner join dbo.SPONSORSHIP on SPONSORSHIP.ID = SPRAG.SPONSORSHIPID
where SPRAG.REVENUEID = FINANCIALTRANSACTION.ID
) + ')'
when 2
then
case @LINKEDTOMEMBERSHIP
when 1
then 'Recurring membership payment '
else
FINANCIALTRANSACTION.TYPE
end
else
FINANCIALTRANSACTION.TYPE
end,
@APPLIEDNAME = NF.NAME
from
dbo.RECURRINGGIFTACTIVITY
inner join
dbo.FINANCIALTRANSACTION on RECURRINGGIFTACTIVITY.SOURCEREVENUEID = FINANCIALTRANSACTION.ID
inner join
dbo.REVENUE_EXT on FINANCIALTRANSACTION.ID = REVENUE_EXT.ID
inner join
dbo.FINANCIALTRANSACTIONLINEITEM on FINANCIALTRANSACTION.ID = FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID
inner join
dbo.REVENUESPLIT_EXT on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLIT_EXT.ID
left join
dbo.MEMBERSHIPTRANSACTION on FINANCIALTRANSACTIONLINEITEM.ID = MEMBERSHIPTRANSACTION.REVENUESPLITID
outer apply
dbo.UFN_CONSTITUENT_DISPLAYNAME(FINANCIALTRANSACTION.CONSTITUENTID) NF
where
RECURRINGGIFTACTIVITY.PAYMENTREVENUEID = @ID and
FINANCIALTRANSACTION.DELETEDON is null and
FINANCIALTRANSACTIONLINEITEM.DELETEDON is null and
FINANCIALTRANSACTIONLINEITEM.TYPECODE <> 1;
end
if @APPLICATIONCODE = 5 and @REVENUETYPECODE = 2 --Membership
begin
set @LINKEDTOMEMBERSHIP = 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
from
dbo.MEMBERSHIPTRANSACTION
inner join
dbo.MEMBERSHIP on MEMBERSHIPTRANSACTION.MEMBERSHIPID = MEMBERSHIP.ID
inner join
dbo.MEMBER on MEMBERSHIP.ID = MEMBER.MEMBERSHIPID
outer apply
dbo.UFN_CONSTITUENT_DISPLAYNAME(MEMBER.CONSTITUENTID) NF
where
MEMBERSHIPTRANSACTION.REVENUESPLITID = @ID and
MEMBER.ISPRIMARY = 1;
if @APPLIEDID is null -- The membership was refunded
begin
select top 1
@APPLIEDID = MEMBER.ID,
@APPLIEDTYPE = dbo.UFN_MEMBERSHIPPROGRAM_GETNAME(MEMBERSHIP.MEMBERSHIPPROGRAMID),
@APPLIEDNAME = NF.NAME
from
dbo.CREDITITEM
inner join
dbo.CREDITITEMMEMBERSHIP on CREDITITEMMEMBERSHIP.ID = CREDITITEM.ID
inner join
dbo.MEMBERSHIP ON MEMBERSHIP.ID = CREDITITEMMEMBERSHIP.MEMBERSHIPID
inner join
dbo.MEMBER on MEMBER.MEMBERSHIPID = CREDITITEMMEMBERSHIP.MEMBERSHIPID
outer apply
dbo.UFN_CONSTITUENT_DISPLAYNAME(MEMBER.CONSTITUENTID) NF
where
CREDITITEM.REVENUESPLITID = @ID and
MEMBER.ISPRIMARY = 1;
end
end
if @APPLICATIONCODE = 6 -- Planned gift
begin
select top 1
@APPLIEDID = REVENUE.ID,
@APPLIEDDATE = REVENUE.DATE,
@APPLIEDTYPE = REVENUE.TRANSACTIONTYPE,
@APPLIEDNAME = NF.NAME,
@ISPLANNEDGIFTADDITION = PLANNEDGIFTREVENUE.ISADDITION
from
dbo.INSTALLMENTSPLITPAYMENT
inner join
dbo.REVENUE on INSTALLMENTSPLITPAYMENT.PLEDGEID = REVENUE.ID
outer apply
dbo.UFN_CONSTITUENT_DISPLAYNAME(REVENUE.CONSTITUENTID) NF
inner join
dbo.V_PLANNEDGIFTREVENUE_WITHADDITIONS PLANNEDGIFTREVENUE on PLANNEDGIFTREVENUE.REVENUEID = REVENUE.ID
where
PAYMENTID = @ID;
end
if @APPLICATIONCODE in (7, 17) --Matching gift payment or pending gift payment
begin
select
@APPLIEDTOCOUNT = count(*)
from
dbo.INSTALLMENTSPLITPAYMENT
inner join
dbo.REVENUE on INSTALLMENTSPLITPAYMENT.PLEDGEID = REVENUE.ID
inner join
dbo.CONSTITUENT on REVENUE.CONSTITUENTID = CONSTITUENT.ID
where
PAYMENTID = @ID;
if @APPLIEDTOCOUNT = 1
begin
select top 1
@APPLIEDID = REVENUE.ID,
@APPLIEDDATE = REVENUE.DATE,
@APPLIEDTYPE = REVENUE.TRANSACTIONTYPE,
@APPLIEDNAME = NF.NAME
from
dbo.INSTALLMENTSPLITPAYMENT
inner join
dbo.REVENUE on INSTALLMENTSPLITPAYMENT.PLEDGEID = REVENUE.ID
outer apply
dbo.UFN_CONSTITUENT_DISPLAYNAME(REVENUE.CONSTITUENTID) NF
where
PAYMENTID = @ID;
if @APPLICATIONCODE = 7
begin
select
@APPLIEDRECIPRICOLCONSTITUENTNAME = CONSTITUENT.NAME,
@RECIPRICOLLOOKUPID = CONSTITUENT.LOOKUPID
from
dbo.REVENUE
inner join
dbo.CONSTITUENT on CONSTITUENT.ID = REVENUE.CONSTITUENTID
inner join
dbo.REVENUEMATCHINGGIFT on REVENUE.ID = REVENUEMATCHINGGIFT.MGSOURCEREVENUEID
where
REVENUEMATCHINGGIFT.ID = @APPLIEDID;
end
end
else
begin
set @APPLIEDID = @REVENUEID;
end
end
if @APPLICATIONCODE = 12 --Auction item purchase
begin
select top 1
@APPLIEDID = AUCTIONITEM.REVENUEAUCTIONDONATIONID,
@APPLIEDDATE = REVENUE.DATE,
@APPLIEDTYPE = REVENUE.TRANSACTIONTYPE,
@APPLIEDNAME = AUCTIONITEM.NAME,
@AUCTIONITEMPACKAGEID = AUCTIONITEM.PACKAGEID,
@AUCTIONITEMPACKAGENAME = (select NAME from dbo.AUCTIONITEM [ITEM] where [ITEM].ID = AUCTIONITEM.PACKAGEID)
from
dbo.AUCTIONITEM
inner join
dbo.AUCTIONITEMPURCHASE on AUCTIONITEM.ID = AUCTIONITEMPURCHASE.AUCTIONITEMID
inner join
dbo.REVENUESPLIT on AUCTIONITEMPURCHASE.PURCHASEID = REVENUESPLIT.ID
inner join
dbo.REVENUE on REVENUESPLIT.REVENUEID = REVENUE.ID
where
AUCTIONITEMPURCHASE.PURCHASEID = @ID;
end
if @APPLICATIONCODE = 13 --Donor challenge payment
begin
select
@APPLIEDTOCOUNT = count(*)
from
dbo.INSTALLMENTSPLITPAYMENT
inner join
dbo.REVENUE on INSTALLMENTSPLITPAYMENT.PLEDGEID = REVENUE.ID
inner join
dbo.CONSTITUENT on REVENUE.CONSTITUENTID = CONSTITUENT.ID
where
PAYMENTID = @ID;
if @APPLIEDTOCOUNT = 1
begin
select top 1
@APPLIEDID = REVENUE.ID,
@APPLIEDDATE = REVENUE.DATE,
@APPLIEDTYPE = REVENUE.TRANSACTIONTYPE,
@APPLIEDNAME = NF.NAME
from
dbo.INSTALLMENTSPLITPAYMENT
inner join
dbo.REVENUE on INSTALLMENTSPLITPAYMENT.PLEDGEID = REVENUE.ID
inner join
dbo.REVENUESPLIT on REVENUESPLIT.REVENUEID = REVENUE.ID
outer apply
dbo.UFN_CONSTITUENT_DISPLAYNAME(REVENUE.CONSTITUENTID) NF
where
PAYMENTID = @ID;
end
else
begin
set @APPLIEDID = @REVENUEID;
end
end
if @APPLICATIONCODE = 18 and @REVENUETYPECODE = 18 --Membership add-on
begin
select
@APPLIEDID = MEMBERSHIPID,
@APPLIEDNAME = NAME,
@LINKEDTOMEMBERSHIP = 1,
@DESCRIPTION = DESCRIPTION,
@QUANTITY = QUANTITY
from
dbo.MEMBERSHIPADDON
inner join
dbo.ADDON on MEMBERSHIPADDON.ADDONID = ADDON.ID
inner join
dbo.MEMBERSHIPPROGRAMADDON on MEMBERSHIPPROGRAMADDON.ADDONID = ADDON.ID
where
MEMBERSHIPADDON.REVENUESPLITID = @ID;
end
return 0;