USP_DATAFORMTEMPLATE_DATALIST_FUNDRAISERSUMMARYPAST

Fetches summary information for a fundraiser.

Parameters

Parameter Parameter Type Mode Description
@DATEFILTER tinyint IN
@FUNDRAISERID uniqueidentifier IN Input parameter indicating the context ID for the data list.

Definition

Copy


                CREATE procedure dbo.USP_DATAFORMTEMPLATE_DATALIST_FUNDRAISERSUMMARYPAST(@DATEFILTER tinyint, @FUNDRAISERID uniqueidentifier)
                as begin
                    set nocount on;

                    declare @STARTDATE datetime;
                    declare @ENDDATE datetime;

                    exec dbo.USP_RESOLVEDATEFILTER @DATEFILTER, @STARTDATE output, @ENDDATE output;

                    declare @TODAY datetime;
                    set @TODAY=getdate();

                    declare @MOVESTEPSCOMPLETED int;
                    declare @COMPLETEDASKSCOUNT int;
                    declare @COMPLETEDASKSAMOUNT money;
                    declare @ACCEPTEDASKSCOUNT int;
                    declare @ACCEPTEDASKSAMOUNT money;
                    declare @HASACCEPTEDREJECTEDINFUTURE bit;

                    select
                        @MOVESTEPSCOMPLETED = count(*)
                    from 
                        dbo.INTERACTION I
                        inner join dbo.PROSPECTPLAN PP on PP.ID=I.PROSPECTPLANID
                    where
                        PP.PRIMARYMANAGERFUNDRAISERID=@FUNDRAISERID
                        and I.COMPLETED=1
                        and ISINTERACTION=1
                        and PROSPECTPLANID is not null
                        and @STARTDATE<=ACTUALDATE;

                    select
                        @COMPLETEDASKSCOUNT = count(*),
                        @COMPLETEDASKSAMOUNT = coalesce(sum(O.AMOUNT), 0)
                    from 
                        dbo.OPPORTUNITY O
                        inner join dbo.PROSPECTPLAN PP on PP.ID=O.PROSPECTPLANID
                    where
                        O.STATUSCODE=3
                        and @STARTDATE<=O.RESPONSEDATE
                        and PP.PRIMARYMANAGERFUNDRAISERID=@FUNDRAISERID;

                    select
                        @ACCEPTEDASKSCOUNT = count(*),
                        @ACCEPTEDASKSAMOUNT = coalesce(sum(O.AMOUNT), 0)
                    from 
                        dbo.OPPORTUNITY O
                        inner join dbo.PROSPECTPLAN PP on PP.ID=O.PROSPECTPLANID
                    where
                        O.STATUSCODE=3
                        and @STARTDATE<=O.RESPONSEDATE
                        and PP.PRIMARYMANAGERFUNDRAISERID=@FUNDRAISERID;

                    if exists (
                        select
                            1
                        from 
                            dbo.OPPORTUNITY O
                            inner join dbo.PROSPECTPLAN PP on PP.ID=O.PROSPECTPLANID
                        where
                            O.STATUSCODE in (3,4)
                            and O.RESPONSEDATE > @TODAY
                            and PP.PRIMARYMANAGERFUNDRAISERID=@FUNDRAISERID
                    )
                        set @HASACCEPTEDREJECTEDINFUTURE = 1;
                    else
                        set @HASACCEPTEDREJECTEDINFUTURE = 0;

                    select 
                        @MOVESTEPSCOMPLETED,
                        @COMPLETEDASKSCOUNT,
                        @COMPLETEDASKSAMOUNT,
                        @ACCEPTEDASKSCOUNT,
                        @ACCEPTEDASKSAMOUNT,
                        @HASACCEPTEDREJECTEDINFUTURE;

                    return 0;
                end