USP_DATAFORMTEMPLATE_VIEW_GROUPMEMBERPREVIOUSPAGEDATA

The load procedure used by the view dataform template "Previous Group Members Page Expression View Form"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@NAME nvarchar(400) INOUT NAME
@ATTRIBUTEDEFINED bit INOUT ATTRIBUTEDEFINED
@SMARTFIELDDEFINED bit INOUT SMARTFIELDDEFINED
@CONSTITUENTID uniqueidentifier INOUT CONSTITUENTID
@CANBEDONOR bit INOUT CANBEDONOR
@CURRENTMEMBERCOUNT int INOUT CURRENTMEMBERCOUNT
@PREVIOUSMEMBERCOUNT int INOUT PREVIOUSMEMBERCOUNT
@ISHOUSEHOLD bit INOUT ISHOUSEHOLD
@ISGROUP bit INOUT ISGROUP
@ISDISSOLVED bit INOUT ISDISSOLVED
@ISPROSPECT bit INOUT ISPROSPECT
@ISFORMERPROSPECT bit INOUT ISFORMERPROSPECT
@ISPLANNEDGIVER bit INOUT ISPLANNEDGIVER
@HASSTEWARDSHIPPLAN bit INOUT HASSTEWARDSHIPPLAN
@ISCOMMITTEE bit INOUT ISCOMMITTEE
@ISGRANTOR bit INOUT ISGRANTOR
@ISCOMMITTEEMEMBER bit INOUT ISCOMMITTEEMEMBER
@ISSPONSOR bit INOUT ISSPONSOR
@SPONSORTYPECODE tinyint INOUT SPONSORTYPECODE
@ISALUMNUS bit INOUT ISALUMNUS
@ISSTUDENT bit INOUT ISSTUDENT
@ISFACULTY bit INOUT ISFACULTY
@ISFORMERSPONSOR bit INOUT ISFORMERSPONSOR
@HASRECEIVEDFUNDS bit INOUT HASRECEIVEDFUNDS
@ISGROUPMEMBER bit INOUT

Definition

Copy

                CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_GROUPMEMBERPREVIOUSPAGEDATA
                (
                    @ID uniqueidentifier,
                    @CURRENTAPPUSERID uniqueidentifier,
                    @DATALOADED bit = 0 output,
                    @NAME nvarchar(400) = null output,
                    @ATTRIBUTEDEFINED bit = null output,
                    @SMARTFIELDDEFINED bit = null output,
                    @CONSTITUENTID uniqueidentifier = null output,
                    @CANBEDONOR bit = null output,
                    @CURRENTMEMBERCOUNT integer = null output,
                    @PREVIOUSMEMBERCOUNT integer = null output,
                    @ISHOUSEHOLD bit = null output,
                    @ISGROUP bit = null output,
                    @ISDISSOLVED bit = null output,
                    @ISPROSPECT bit = null output,
                    @ISFORMERPROSPECT bit = null output,
                    @ISPLANNEDGIVER bit = null output,
                    @HASSTEWARDSHIPPLAN bit = null output,
                    @ISCOMMITTEE bit = null output,
                    @ISGRANTOR bit = null output,
                    @ISCOMMITTEEMEMBER bit = null output,
                    @ISSPONSOR bit = null output,
                    @SPONSORTYPECODE tinyint = null output,
                    @ISALUMNUS bit = null output,
                    @ISSTUDENT bit = null output,
                    @ISFACULTY bit = null output,
                    @ISFORMERSPONSOR bit = null output,
                    @HASRECEIVEDFUNDS bit = null output,
                    @ISGROUPMEMBER bit = null output
              )
                as
                    set nocount on;

                    set @DATALOADED = 0;

                    set @CONSTITUENTID = @ID;

                    select
                        @DATALOADED = 1,
                        @NAME = C.NAME,
                        @ATTRIBUTEDEFINED = dbo.UFN_ATTRIBUTECATEGORY_DEFINEDFORRECORDTYPE_FORAPPUSER('CONSTITUENT',@CURRENTAPPUSERID),
                        @SMARTFIELDDEFINED = dbo.UFN_SMARTFIELD_DEFINEDFORRECORDTYPE('CONSTITUENT')
                    from
                        dbo.CONSTITUENT AS C
                    where
                        C.ID = @ID;

                    select                    
                        @CANBEDONOR = case 
                            when GD.GROUPTYPECODE = 0 then dbo.UFN_INSTALLATIONINFO_GETHOUSEHOLDSCANBEDONORS() 
                            else ISNULL(GT.CANBEDONOR,1) end
                    from 
                        dbo.GROUPDATA as GD
                    left outer join dbo.GROUPTYPE as GT on GD.GROUPTYPECODE = 1 and GD.GROUPTYPEID = GT.ID
                    where GD.ID = @ID;

                    set @ISHOUSEHOLD = dbo.UFN_CONSTITUENT_ISHOUSEHOLD(@ID);          
                    set @ISGROUP =     dbo.UFN_CONSTITUENT_ISGROUP(@ID);                  
                    set @ISDISSOLVED = 0;
                    if exists(select 1 from dbo.DISSOLVEDGROUP where ID = @ID)
                        set @ISDISSOLVED = 1;

                    declare @CURRENTDATEEARLIESTTIME date;
                    set @CURRENTDATEEARLIESTTIME = getdate();

                    select @CURRENTMEMBERCOUNT = count(GM.ID) 
                                from dbo.GROUPMEMBER as GM
                                left join dbo.GROUPMEMBERDATERANGE as GMDR on GM.ID = GMDR.GROUPMEMBERID
                                where ((GMDR.DATEFROM is null and (GMDR.DATETO is null or GMDR.DATETO > @CURRENTDATEEARLIESTTIME))
                                    or (GMDR.DATETO is null and (GMDR.DATEFROM is null or GMDR.DATEFROM <= @CURRENTDATEEARLIESTTIME)) 
                                    or (GMDR.DATEFROM <= @CURRENTDATEEARLIESTTIME and GMDR.DATETO > @CURRENTDATEEARLIESTTIME))
                                and GM.GROUPID = @ID;

                    select @PREVIOUSMEMBERCOUNT = count(distinct GM.ID) 
                                from dbo.GROUPMEMBER as GM
                                left join dbo.GROUPMEMBERDATERANGE as GMDR on GM.ID = GMDR.GROUPMEMBERID
                                where (GMDR.DATETO is not null and GMDR.DATETO <= @CURRENTDATEEARLIESTTIME)
                                and GM.ID not in (select GROUPMEMBERID from dbo.GROUPMEMBERDATERANGE where DATETO is null)
                                and GM.GROUPID = @ID;

                    set @ISPROSPECT = dbo.UFN_CONSTITUENT_ISPROSPECT(@ID);
                    set @ISFORMERPROSPECT = dbo.UFN_CONSTITUENT_ISFORMERPROSPECT(@ID);
                    set @ISPLANNEDGIVER = dbo.UFN_CONSTITUENT_ISPLANNEDGIVER(@ID);
                    set @HASSTEWARDSHIPPLAN = dbo.UFN_CONSTITUENT_HASSTEWARDSHIPPLAN(@ID);
                    set @ISCOMMITTEE = dbo.UFN_CONSTITUENT_ISCOMMITTEE(@ID);
                    set @ISGRANTOR = dbo.UFN_CONSTITUENT_ISGRANTOR(@ID);
                    set @ISCOMMITTEEMEMBER = dbo.UFN_CONSTITUENT_ISCOMMITTEEMEMBER(@ID);
                    set @ISALUMNUS = dbo.UFN_CONSTITUENT_ISALUMNUS(@ID);
                    set @ISSTUDENT = dbo.UFN_CONSTITUENT_ISSTUDENT(@ID);
                    set @ISFACULTY = dbo.UFN_CONSTITUENT_ISFACULTY(@ID);

                    exec dbo.USP_SPONSOR_GETINFORMATION
                        @ID,
                        @ISSPONSOR output,
                        @ISFORMERSPONSOR output,
                        @SPONSORTYPECODE output    

                    set @HASRECEIVEDFUNDS = dbo.UFN_CONSTITUENT_HASRECEIVEDFUNDS(@ID)

                    --PatrickMcD 7/26/2011 WI #167550 
                    --This page is only used for households now, so do not display data if constituent type is not a household
                    if @ISHOUSEHOLD = 0 
                        set @DATALOADED = 0

                    set @ISGROUPMEMBER = dbo.UFN_CONSTITUENT_HASGROUPMEMBERRECORD(@ID);

                    return 0;