USP_DATALIST_DESIGNATIONLEVELDONORS_2
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CONSTITUENTID | uniqueidentifier | IN | |
@DATERANGE | tinyint | IN | |
@FROM | datetime | IN | |
@TO | datetime | IN |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_DESIGNATIONLEVELDONORS_2 (
@ID uniqueidentifier = null
,@CONSTITUENTID uniqueidentifier = null
,@DATERANGE tinyint = null
,@FROM datetime = null
,@TO datetime = null
)
as
set nocount on;
if @DATERANGE is null
set @DATERANGE = 10; --all dates
exec [dbo].[USP_RESOLVEDATEFILTER] @DATERANGE
,@FROM output
,@TO output;
with DESIGNATION_CTE
as (
select DESIGNATION.ID
from dbo.DESIGNATION
where DESIGNATION.DESIGNATIONLEVEL1ID = @ID
or DESIGNATION.DESIGNATIONLEVEL2ID = @ID
or DESIGNATION.DESIGNATIONLEVEL3ID = @ID
or DESIGNATION.DESIGNATIONLEVEL4ID = @ID
or DESIGNATION.DESIGNATIONLEVEL5ID = @ID
)
select FT.ID as ID
,FT.CONSTITUENTID CONSTITUENTID
,(
case
when CONSTITUENT.ISORGANIZATION = 1
then case CONSTITUENT.KEYNAMEPREFIX
when ''
then CONSTITUENT.KEYNAME
else CONSTITUENT.KEYNAME + ', ' + CONSTITUENT.KEYNAMEPREFIX
end
else dbo.UFN_NAMEFORMAT_08(CONSTITUENT.ID, CONSTITUENT.KEYNAME, CONSTITUENT.FIRSTNAME, CONSTITUENT.MIDDLENAME, null, null, null, null, null, null, null)
end
) + ' - Lookup ID: ' + CONSTITUENT.LOOKUPID as [NAME]
,cast(FT.[DATE] as datetime) as [DATE]
,FTL.BASEAMOUNT
,isnull(DLR.ISORIGINALFUNDING, 0) as ISORIGINALFUNDING
,isnull(DLD.ISBENEFACTOR, 0) as ISBENEFACTOR
,isnull(REVENUE_EXT.NONPOSTABLEBASECURRENCYID, CURRENCYSET.BASECURRENCYID) as BASECURRENCYID
,DESIGNATIONLEVELID = @ID
from DESIGNATION_CTE as DESIGNATION
inner join dbo.REVENUESPLIT_EXT on REVENUESPLIT_EXT.DESIGNATIONID = DESIGNATION.ID
inner join dbo.FINANCIALTRANSACTIONLINEITEM FTL on FTL.ID = REVENUESPLIT_EXT.ID
inner join dbo.FINANCIALTRANSACTION FT on FT.ID = FTL.FINANCIALTRANSACTIONID
inner join dbo.CONSTITUENT on FT.CONSTITUENTID = CONSTITUENT.ID
left join dbo.DESIGNATIONLEVELDONORINFORMATION DLD on DLD.CONSTITUENTID = CONSTITUENT.ID
and DLD.DESIGNATIONLEVELID = @ID
left join dbo.REVENUE_EXT on REVENUE_EXT.ID = FT.ID
left join dbo.PDACCOUNTSYSTEM on PDACCOUNTSYSTEM.ID = FT.PDACCOUNTSYSTEMID
left join dbo.CURRENCYSET on CURRENCYSET.ID = PDACCOUNTSYSTEM.CURRENCYSETID
left join dbo.DESIGNATIONLEVELREVENUEINFORMATION DLR on DLR.REVENUEID = FT.ID
and DLR.DESIGNATIONLEVELID = @ID
where (
@CONSTITUENTID is null
or FT.CONSTITUENTID = @CONSTITUENTID
)
and (
@FROM is null
or FT.[DATE] >= @FROM
)
and (
@TO is null
or FT.[DATE] <= @TO
)
and (FTL.DELETEDON is null)
and (
(
FT.TYPECODE in (
1
,4
,7
)
or (
(FT.TYPECODE = 0)
and (
REVENUESPLIT_EXT.APPLICATIONCODE in (
0
,1
,3
,7
)
)
)
)
)
order by (
case
when CONSTITUENT.ISORGANIZATION = 1
then case CONSTITUENT.KEYNAMEPREFIX
when ''
then CONSTITUENT.KEYNAME
else CONSTITUENT.KEYNAME + ', ' + CONSTITUENT.KEYNAMEPREFIX
end
else dbo.UFN_NAMEFORMAT_08(CONSTITUENT.ID, CONSTITUENT.KEYNAME, CONSTITUENT.FIRSTNAME, CONSTITUENT.MIDDLENAME, null, null, null, null, null, null, null)
end
)
,CONSTITUENT.LOOKUPID
,FT.date
--,FTL.TRANSACTIONAMOUNT