USP_DATALIST_FAF_GIFT_ACKNOWLEDGEMENT
Returns all Faf Gift Acknowledgement records.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CLIENTUSERSID | int | IN | Client Users ID |
@EVENTID | uniqueidentifier | IN | Event ID |
@REVENUESPLITID | uniqueidentifier | IN | Revenuesplit |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_FAF_GIFT_ACKNOWLEDGEMENT
(
@CLIENTUSERSID int,
@EVENTID uniqueidentifier,
@REVENUESPLITID uniqueidentifier = null
)
as
set nocount on;
DECLARE @CONSTITUENTID uniqueidentifier
DECLARE @APPEALID uniqueidentifier
SELECT @APPEALID=APPEALID FROM dbo.[EVENT] (NOLOCK) WHERE ID=@EVENTID
IF @REVENUESPLITID IS NOT NULL
SELECT @CONSTITUENTID = R.CONSTITUENTID
FROM dbo.REVENUERECOGNITION R (NOLOCK)
INNER JOIN dbo.REVENUESPLIT RS (NOLOCK)
ON R.REVENUESPLITID = RS.ID
WHERE RS.ID = @REVENUESPLITID
IF ISNULL(@CLIENTUSERSID,-1) > 0
SET @CONSTITUENTID = dbo.UFN_CONSTITUENT_GET_BY_CLIENTUSERID(@CLIENTUSERSID)
declare @REVENUEIDS as table
(
REVENUESPLITID uniqueidentifier,
REVENUEID uniqueidentifier
)
insert into @REVENUEIDS
select REVENUESPLIT.ID as REVENUESPLITID, REVENUESPLIT.REVENUEID from dbo.REVENUESPLIT (NOLOCK)
where ID in (select REVENUESPLITID from dbo.REVENUERECOGNITION (NOLOCK) where CONSTITUENTID = @CONSTITUENTID)
;with [R] as
(
select ID, CONSTITUENTID, DATE, TRANSACTIONTYPE
from dbo.REVENUE (NOLOCK)
where REVENUE.ID in (select distinct REVENUEID from @REVENUEIDS)
and REVENUE.APPEALID = @APPEALID
),
[RS] as
(
select
REVENUESPLIT.ID as REVENUESPLITID,
REVENUESPLIT.REVENUEID,
REVENUESPLIT.AMOUNT as DONATIONAMOUNT,
R.CONSTITUENTID as DONORCONSTITUENTID,
R.DATE as [DONATIONDATE],
R.TRANSACTIONTYPE
from dbo.REVENUESPLIT (NOLOCK)
inner join [R] ON REVENUESPLIT.REVENUEID = R.ID
where
REVENUESPLIT.ID in (select REVENUESPLITID from @REVENUEIDS) and REVENUESPLIT.TYPECODE=0 and ISNULL(REVENUESPLIT.AMOUNT,0) > 0
and REVENUESPLIT.APPLICATION <> 'matching gift' --remove payments associated to matching gift, since the pledge is already there.
)
SELECT RS.DONORCONSTITUENTID,
RS.DONATIONDATE,
RS.DONATIONAMOUNT,
@CONSTITUENTID as CONSTITUENTID, -- Registrant / Team constituent
ISNULL(GA.ISACKNOWLEDGED,0) as ISACKNOWLEDGED,
RS.REVENUEID,
RS.REVENUESPLITID,
C.NAME,
RS.TRANSACTIONTYPE
FROM [RS]
LEFT JOIN [dbo].[INSTALLMENTPAYMENT] IP (NOLOCK)
ON RS.REVENUESPLITID = IP.PAYMENTID
LEFT OUTER JOIN dbo.FAFGIFTACKNOWLEDGEMENT GA (NOLOCK)
ON GA.REVENUESPLITID = RS.REVENUESPLITID AND GA.EVENTID = @EVENTID
LEFT OUTER JOIN dbo.CONSTITUENT C (NOLOCK)
ON C.ID = DONORCONSTITUENTID
where DONORCONSTITUENTID <> @CONSTITUENTID
AND RS.REVENUESPLITID = ISNULL(@REVENUESPLITID,RS.REVENUESPLITID)
AND IP.INSTALLMENTID IS NULL