USP_REPORT_VSECOLLEGE_SECTION3B
Returns VSE college report Section 3b 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_VSECOLLEGE_SECTION3B
(
@STARTDATE datetime = null,
@ENDDATE datetime = null,
@INCLUDEINACTIVE smallint = 0,
@INCLUDEDECEASED smallint = 0,
@USEGIFTDATE smallint = 0
)
with execute as owner
as
set nocount on;
-- Writing the query this way as opposed to how it's written in 3A
-- is for optimization purposes. So, unless it's causing problems
-- please leave it like this. - DavidHe
declare @REPORT_VSECOLLEGE table
(
VSECATEGORYCODE tinyint,
ALUMNI money,
PARENTS money,
OTHERINDIVIDUALS money,
FOUNDATIONS money,
CORPORATIONS money,
RELIGIOUSORGANIZATIONS money,
FUNDRAISINGCONSORTIA money,
OTHERORGANIZATIONS money
);
insert into @REPORT_VSECOLLEGE
(
VSECATEGORYCODE,
ALUMNI,
PARENTS,
OTHERINDIVIDUALS,
FOUNDATIONS,
CORPORATIONS,
RELIGIOUSORGANIZATIONS,
FUNDRAISINGCONSORTIA,
OTHERORGANIZATIONS
)
(
select
REPORT_VSECOLLEGE.VSECATEGORYCODE,
coalesce(sum(case when REPORT_VSECOLLEGE.VSECONSTITUENCYCODE in (0) and REPORT_VSECOLLEGE.REVENUETYPE = 0 then REPORT_VSECOLLEGE.REVENUESPLITAMOUNT else 0 end), 0) as ALUMNI,
coalesce(sum(case when REPORT_VSECOLLEGE.VSECONSTITUENCYCODE in (4) and REPORT_VSECOLLEGE.REVENUETYPE = 0 then REPORT_VSECOLLEGE.REVENUESPLITAMOUNT else 0 end), 0) as PARENTS,
coalesce(sum(case when REPORT_VSECOLLEGE.VSECONSTITUENCYCODE in (8, 9, 10, 11) and REPORT_VSECOLLEGE.REVENUETYPE = 0 then REPORT_VSECOLLEGE.REVENUESPLITAMOUNT else 0 end), 0) as OTHERINDIVIDUALS,
coalesce(sum(case when REPORT_VSECOLLEGE.VSECONSTITUENCYCODE in (12, 13) and REPORT_VSECOLLEGE.REVENUETYPE = 0 then REPORT_VSECOLLEGE.REVENUESPLITAMOUNT else 0 end), 0) as FOUNDATIONS,
coalesce(sum(case when REPORT_VSECOLLEGE.VSECONSTITUENCYCODE in (14) and REPORT_VSECOLLEGE.REVENUETYPE = 0 then REPORT_VSECOLLEGE.REVENUESPLITAMOUNT else 0 end), 0) as CORPORATIONS,
coalesce(sum(case when REPORT_VSECOLLEGE.VSECONSTITUENCYCODE in (15) and REPORT_VSECOLLEGE.REVENUETYPE = 0 then REPORT_VSECOLLEGE.REVENUESPLITAMOUNT else 0 end), 0) as RELIGIOUSORGANIZATIONS,
coalesce(sum(case when REPORT_VSECOLLEGE.VSECONSTITUENCYCODE in (16) and REPORT_VSECOLLEGE.REVENUETYPE = 0 then REPORT_VSECOLLEGE.REVENUESPLITAMOUNT else 0 end), 0) as FUNDRAISINGCONSORTIA,
coalesce(sum(case when REPORT_VSECOLLEGE.VSECONSTITUENCYCODE in (17) and REPORT_VSECOLLEGE.REVENUETYPE = 0 then REPORT_VSECOLLEGE.REVENUESPLITAMOUNT else 0 end), 0) as OTHERORGANIZATIONS
from
dbo.UFN_REPORT_VSECOLLEGE(@STARTDATE, @ENDDATE, @INCLUDEINACTIVE, @INCLUDEDECEASED, @USEGIFTDATE) REPORT_VSECOLLEGE
where
REPORT_VSECOLLEGE.VSECATEGORYCODE in (12, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
group by REPORT_VSECOLLEGE.VSECATEGORYCODE
);
select
case VSECATEGORY.VSECATEGORYCODE
when 12 then 12
when 13 then 13
when 15 then 15
else 14
end as VSECATEGORYCODE,
case VSECATEGORY.VSECATEGORYCODE
when 12 then '1. Prop., Build. & Equipment'
when 13 then '2. Endowment - Unrestricted'
when 15 then '4. Loan Funds'
else '3. Endowment - Restricted'
end as LABEL,
coalesce(ALUMNI, 0) ALUMNI,
coalesce(PARENTS, 0) PARENTS,
coalesce(OTHERINDIVIDUALS, 0)OTHERINDIVIDUALS,
coalesce(FOUNDATIONS, 0) FOUNDATIONS,
coalesce(CORPORATIONS, 0) CORPORATIONS,
coalesce(RELIGIOUSORGANIZATIONS, 0) RELIGIOUSORGANIZATIONS,
coalesce(FUNDRAISINGCONSORTIA, 0) FUNDRAISINGCONSORTIA,
coalesce(OTHERORGANIZATIONS, 0) OTHERORGANIZATIONS
from
dbo.VSECATEGORY
left outer join @REPORT_VSECOLLEGE REPORT_VSECOLLEGE on REPORT_VSECOLLEGE.VSECATEGORYCODE = VSECATEGORY.VSECATEGORYCODE
where
VSECATEGORY.USAGETYPECODE <> 1