USP_REPORT_VSESECONDARY_SECTION4E_PART1
Returns VSE secondary report Section 4e part 1 data.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@STARTDATE | datetime | IN | |
@ENDDATE | datetime | IN | |
@INCLUDEINACTIVE | smallint | IN | |
@INCLUDEDECEASED | smallint | IN | |
@USEGIFTDATE | smallint | IN |
Definition
Copy
CREATE procedure dbo.USP_REPORT_VSESECONDARY_SECTION4E_PART1
(
@STARTDATE datetime = null,
@ENDDATE datetime = null,
@INCLUDEINACTIVE smallint = 0,
@INCLUDEDECEASED smallint = 0,
@USEGIFTDATE smallint = 0
)
with execute as caller
as
set nocount on;
declare @NUMBER_MEMBERS int;
declare @NUMBER_DONORS int;
declare @AMOUNT_CURRENTOPERATIONS money;
declare @AMOUNT_CAPITALPURPOSES money;
select
@NUMBER_MEMBERS = coalesce(VSECNTS.NUMRECORDS, 0)
from
dbo.VSECONSTITUENCY
left outer join dbo.UFN_REPORT_VSECOUNTS(@STARTDATE, @ENDDATE, @INCLUDEINACTIVE, @INCLUDEDECEASED, 0) VSECNTS
on VSECNTS.VSECONSTITUENCYCODE = 10 and VSECNTS.VSECONSTITUENCYCODE = VSECONSTITUENCY.VSECONSTITUENCYCODE
where
VSECONSTITUENCY.VSECONSTITUENCYCODE = 10
and VSECONSTITUENCY.USAGETYPECODE <> 0;
select
@NUMBER_DONORS = coalesce(V2.NUMDONOR, 0)
from
dbo.VSECONSTITUENCY
left outer join
(
select
count(distinct REPORT_VSESECONDARY.CONSTITUENTID) as NUMDONOR,
REPORT_VSESECONDARY.VSECONSTITUENCYCODE
from
(
select
CONSTITUENTID,
VSECONSTITUENCYCODE
from
dbo.UFN_REPORT_VSESECONDARY(@STARTDATE, @ENDDATE, @INCLUDEINACTIVE, @INCLUDEDECEASED, @USEGIFTDATE) as REPORT_VSESECONDARY
where
REPORT_VSESECONDARY.VSECONSTITUENCYCODE = 10
union all
select
CONSTITUENTID,
VSECONSTITUENCYCODE
from
dbo.UFN_REPORT_VSESECONDARY_PLANNEDGIFT(@STARTDATE, @ENDDATE, @INCLUDEINACTIVE, @INCLUDEDECEASED, @USEGIFTDATE) as REPORT_VSESECONDARY
where
REPORT_VSESECONDARY.VSECONSTITUENCYCODE = 10
) REPORT_VSESECONDARY
group by REPORT_VSESECONDARY.VSECONSTITUENCYCODE
) V2 on V2.VSECONSTITUENCYCODE = VSECONSTITUENCY.VSECONSTITUENCYCODE
where
VSECONSTITUENCY.VSECONSTITUENCYCODE = 10
and VSECONSTITUENCY.USAGETYPECODE <> 0;
select
@AMOUNT_CURRENTOPERATIONS = coalesce(V2.AMOUNT, 0)
from
dbo.VSECONSTITUENCY
left outer join
(
select
sum(REVENUESPLITAMOUNT) as AMOUNT,
VSECONSTITUENCYCODE
from
(
select
REVENUESPLITAMOUNT,
VSECONSTITUENCYCODE
from
dbo.UFN_REPORT_VSESECONDARY(@STARTDATE, @ENDDATE, @INCLUDEINACTIVE, @INCLUDEDECEASED, @USEGIFTDATE) as REPORT_VSESECONDARY
where
REPORT_VSESECONDARY.VSECONSTITUENCYCODE = 10
and REPORT_VSESECONDARY.VSECATEGORYPURPOSETYPECODE = 0
union all
select
case when REPORT_VSESECONDARY.FACEVALUE = 0 then 0 else (REPORT_VSESECONDARY.PRESENTVALUE * (REPORT_VSESECONDARY.PLANNEDGIFTDESIGNATIONAMOUNT / REPORT_VSESECONDARY.FACEVALUE)) end as REVENUESPLITAMOUNT,
VSECONSTITUENCYCODE
from
dbo.UFN_REPORT_VSESECONDARY_PLANNEDGIFT(@STARTDATE, @ENDDATE, @INCLUDEINACTIVE, @INCLUDEDECEASED, @USEGIFTDATE) as REPORT_VSESECONDARY
where
REPORT_VSESECONDARY.VSECONSTITUENCYCODE = 10
and REPORT_VSESECONDARY.VSECATEGORYPURPOSETYPECODE = 0
) REPORT_VSESECONDARY
group by VSECONSTITUENCYCODE
) V2 on V2.VSECONSTITUENCYCODE = VSECONSTITUENCY.VSECONSTITUENCYCODE
where
VSECONSTITUENCY.VSECONSTITUENCYCODE = 10
and VSECONSTITUENCY.USAGETYPECODE <> 0;
select
@AMOUNT_CAPITALPURPOSES = coalesce(V2.AMOUNT, 0)
from
dbo.VSECONSTITUENCY
left outer join
(
select
sum(REVENUESPLITAMOUNT) as AMOUNT,
VSECONSTITUENCYCODE
from
(
select
REVENUESPLITAMOUNT,
VSECONSTITUENCYCODE
from
dbo.UFN_REPORT_VSESECONDARY(@STARTDATE, @ENDDATE, @INCLUDEINACTIVE, @INCLUDEDECEASED, @USEGIFTDATE) as REPORT_VSESECONDARY
where
REPORT_VSESECONDARY.VSECONSTITUENCYCODE = 10
and REPORT_VSESECONDARY.VSECATEGORYPURPOSETYPECODE = 1
union all
select
case when REPORT_VSESECONDARY.FACEVALUE = 0 then 0 else (REPORT_VSESECONDARY.PRESENTVALUE * (REPORT_VSESECONDARY.PLANNEDGIFTDESIGNATIONAMOUNT / REPORT_VSESECONDARY.FACEVALUE)) end as REVENUESPLITAMOUNT,
VSECONSTITUENCYCODE
from
dbo.UFN_REPORT_VSESECONDARY_PLANNEDGIFT(@STARTDATE, @ENDDATE, @INCLUDEINACTIVE, @INCLUDEDECEASED, @USEGIFTDATE) as REPORT_VSESECONDARY
where
REPORT_VSESECONDARY.VSECONSTITUENCYCODE = 10
and REPORT_VSESECONDARY.VSECATEGORYPURPOSETYPECODE = 1
) REPORT_VSESECONDARY
group by VSECONSTITUENCYCODE
) V2 on V2.VSECONSTITUENCYCODE = VSECONSTITUENCY.VSECONSTITUENCYCODE
where
VSECONSTITUENCY.VSECONSTITUENCYCODE = 10
and VSECONSTITUENCY.USAGETYPECODE <> 0;
select
coalesce(@NUMBER_MEMBERS, 0) as NUMBER_MEMBERS,
coalesce(@NUMBER_DONORS, 0) as NUMBER_DONORS,
coalesce(@AMOUNT_CURRENTOPERATIONS, 0) as AMOUNT_CURRENTOPERATIONS,
coalesce(@AMOUNT_CAPITALPURPOSES, 0) as AMOUNT_CAPITALPURPOSES;