USP_DATAFORMTEMPLATE_VIEW_PROSPECTPAGEDATA

The load procedure used by the view dataform template "Prospect 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(700) INOUT NAME
@ISINACTIVE bit INOUT ISINACTIVE
@DECEASED bit INOUT DECEASED
@ISSELF bit INOUT ISSELF
@ISORG bit INOUT ISORG
@ISPROSPECT bit INOUT ISPROSPECT
@ISFUNDRAISER bit INOUT ISFUNDRAISER
@ISFORMERFUNDRAISER bit INOUT ISFORMERFUNDRAISER
@ISVOLUNTEER bit INOUT ISVOLUNTEER
@ISFORMERVOLUNTEER bit INOUT ISFORMERVOLUNTEER
@ISCOMMUNITYMEMBER bit INOUT ISCOMMUNITYMEMBER
@ISREGISTRANT bit INOUT ISREGISTRANT
@ISVENDOR bit INOUT ISVENDOR
@FLAGGED bit INOUT FLAGGED
@WEALTHPOINTDATE datetime INOUT WEALTHPOINTDATE
@HASHISTORICALPLANS bit INOUT HASHISTORICALPLANS
@APPUSERID uniqueidentifier INOUT APPUSERID
@HASCOMMUNITYDATA bit INOUT HASCOMMUNITYDATA
@ISGROUP bit INOUT ISGROUP
@ISHOUSEHOLD bit INOUT ISHOUSEHOLD
@ISGROUPMEMBER bit INOUT ISGROUPMEMBER
@HASSTEWARDSHIPPLAN bit INOUT HASSTEWARDSHIPPLAN
@ISPLANNEDGIVER bit INOUT ISPLANNEDGIVER
@HASPROSPECTMANAGER bit INOUT HASPROSPECTMANAGER
@ISBANK bit INOUT ISBANK
@ISCOMMITTEE bit INOUT ISCOMMITTEE
@ATTRIBUTEDEFINED bit INOUT ATTRIBUTEDEFINED
@ISGRANTOR bit INOUT ISGRANTOR
@ISSPONSOR bit INOUT ISSPONSOR
@ISCOMMITTEEMEMBER bit INOUT ISCOMMITTEEMEMBER
@SPONSORTYPECODE tinyint INOUT SPONSORTYPECODE
@ISFORMERSPONSOR bit INOUT ISFORMERSPONSOR
@HASRECEIVEDFUNDS bit INOUT HASRECEIVEDFUNDS
@USER_GRANTED_CONSTITPERSONALINFO_EDIT bit INOUT

Definition

Copy

                CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_PROSPECTPAGEDATA
                (
                    @ID uniqueidentifier,
                    @CURRENTAPPUSERID uniqueidentifier,
                    @DATALOADED bit = 0 output,
                    @NAME nvarchar(700) = null output,
                    @ISINACTIVE bit = null output,
                    @DECEASED bit = null output,
                    @ISSELF bit = null output,
                    @ISORG bit = null output,
                    @ISPROSPECT bit = null output,
                    @ISFUNDRAISER bit = null output,
                    @ISFORMERFUNDRAISER bit = null output,
                    @ISVOLUNTEER bit = null output,
                    @ISFORMERVOLUNTEER bit = null output,
                    @ISCOMMUNITYMEMBER bit = null output,
                    @ISREGISTRANT bit = null output,
                    @ISVENDOR bit = null output,
                    @FLAGGED bit = null output,
                    @WEALTHPOINTDATE datetime = null output,
                    @HASHISTORICALPLANS bit = null output,
                    @APPUSERID uniqueidentifier = null output,
                    @HASCOMMUNITYDATA bit = null output,
                    @ISGROUP bit = null output,
                    @ISHOUSEHOLD bit = null output,
                    @ISGROUPMEMBER bit = null output,
                    @HASSTEWARDSHIPPLAN bit = null output,
                    @ISPLANNEDGIVER bit = null output,
                    @HASPROSPECTMANAGER bit = null output,
                    @ISBANK bit = null output,
                    @ISCOMMITTEE bit = null output,
                    @ATTRIBUTEDEFINED bit = null output,
                    @ISGRANTOR bit = null output,
                    @ISSPONSOR bit = null output,
                    @ISCOMMITTEEMEMBER bit = null output,
                    @SPONSORTYPECODE tinyint = null output,
                    @ISFORMERSPONSOR bit = null output,
                    @HASRECEIVEDFUNDS bit = null output,
                    @USER_GRANTED_CONSTITPERSONALINFO_EDIT bit = null output
                )
                as
                    set nocount on;

                    set @DATALOADED = 0;

                    declare @APPUSERCONSTITUENTID uniqueidentifier;
                    select @APPUSERCONSTITUENTID=CONSTITUENTID from dbo.APPUSER where ID=@CURRENTAPPUSERID;

                    declare @CURRENTDATEEARLIESTTIME datetime;
                    set @CURRENTDATEEARLIESTTIME = dbo.UFN_DATE_GETEARLIESTTIME(getdate());

                    declare @ISFORMERPROSPECT bit;

                    select @APPUSERID = ID from dbo.APPUSER where CONSTITUENTID = @ID;

                    select
                        @ISINACTIVE = C.ISINACTIVE,
                        @DECEASED = case when DECEASEDCONSTITUENT.ID is null then 0 else 1 end,
                        @NAME = NF.NAME,
                        --MAB 2/18/09 Fix for work item 21382
                        --@ISSELF = case when C.ID=@APPUSERCONSTITUENTID then 1 else 0 end,
                        @ISSELF = 0,                        
                        @ISORG=C.ISORGANIZATION,
                        @ISPROSPECT = dbo.UFN_CONSTITUENT_ISPROSPECT(@ID),
                        @ISFORMERPROSPECT = dbo.UFN_CONSTITUENT_ISFORMERPROSPECT(@ID),
                        @ISFUNDRAISER = dbo.UFN_CONSTITUENT_ISFUNDRAISER(@ID),
                        @ISFORMERFUNDRAISER = dbo.UFN_CONSTITUENT_ISFORMERFUNDRAISER(@ID),
                        @ISVOLUNTEER = dbo.UFN_CONSTITUENT_ISVOLUNTEER(@ID),
                        @ISFORMERVOLUNTEER = dbo.UFN_CONSTITUENT_ISFORMERVOLUNTEER(@ID),
                        @ISCOMMUNITYMEMBER = C.NETCOMMUNITYMEMBER,
                        @ISREGISTRANT = dbo.UFN_CONSTITUENT_ISREGISTRANT(@ID),
                        @ISVENDOR = dbo.UFN_CONSTITUENT_ISVENDOR(@ID),
                        @FLAGGED = case when FP.ID is null then 0 else 1 end,
                        @WEALTHPOINTDATE = W.WEALTHPOINTDATE,
                        @HASHISTORICALPLANS = case when exists (select 1 from dbo.PROSPECTPLAN where PROSPECTID=@ID and ISACTIVE=0) then 1 else 0 end,
                        @HASCOMMUNITYDATA = dbo.UFN_CONSTITUENT_HASCOMMUNITYDATA(@ID),
                        @ISGROUP = C.ISGROUP,
                        @ISHOUSEHOLD = (case when GD.GROUPTYPECODE = 0 then '1' else '0' end),
                        @ISGROUPMEMBER = dbo.UFN_CONSTITUENT_HASGROUPMEMBERRECORD(@ID),
                        @HASSTEWARDSHIPPLAN = dbo.UFN_CONSTITUENT_HASSTEWARDSHIPPLAN(@ID),
                        @ISPLANNEDGIVER = dbo.UFN_CONSTITUENT_ISPLANNEDGIVER(@ID),
                        @HASPROSPECTMANAGER = case when P.PROSPECTMANAGERFUNDRAISERID is null or P.PROSPECTMANAGERENDDATE < @CURRENTDATEEARLIESTTIME then 0 else 1 end,
                        @ISBANK = dbo.UFN_CONSTITUENT_ISBANK(@ID),
                        @ISCOMMITTEE = dbo.UFN_CONSTITUENT_ISCOMMITTEE(@ID),
                        @ATTRIBUTEDEFINED = dbo.UFN_ATTRIBUTECATEGORY_DEFINEDFORRECORDTYPE_FORAPPUSER('CONSTITUENT',@CURRENTAPPUSERID),
                        @ISGRANTOR = dbo.UFN_CONSTITUENT_ISGRANTOR(@ID),
                        @ISCOMMITTEEMEMBER = dbo.UFN_CONSTITUENT_ISCOMMITTEEMEMBER(@ID)
                    from
                        dbo.CONSTITUENT AS C
                        left outer join dbo.WEALTH W on W.ID = C.ID
                        left outer join dbo.DECEASEDCONSTITUENT on DECEASEDCONSTITUENT.ID = C.ID
                        left outer join dbo.FLAGGEDPROSPECT FP on FP.APPUSERID=@CURRENTAPPUSERID and FP.PROSPECTID=C.ID
                        left outer join dbo.GROUPDATA GD on GD.ID = C.ID
                        left outer join dbo.PROSPECT P on P.ID = C.ID
                        outer apply dbo.UFN_CONSTITUENT_DISPLAYNAME(C.ID) NF
                    where
                        C.ID = @ID;

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

                    if @ISPROSPECT = 1 or @ISFORMERPROSPECT = 1
                        set @DATALOADED = 1;

                    set @HASRECEIVEDFUNDS = dbo.UFN_CONSTITUENT_HASRECEIVEDFUNDS(@ID)

                    if dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 
                    begin
                        set @USER_GRANTED_CONSTITPERSONALINFO_EDIT = 1;
                    end
                    else 
                    begin
                        set @USER_GRANTED_CONSTITPERSONALINFO_EDIT = 
                        case 
                            when @ISORG = 1 then dbo.UFN_SECURITY_APPUSER_GRANTED_FORM_IN_SYSTEMROLE(@CURRENTAPPUSERID,'a9954902-ea62-48ae-8e6f-4e2ed3c3f4f9')
                            when @ISHOUSEHOLD = 1 then dbo.UFN_SECURITY_APPUSER_GRANTED_FORM_IN_SYSTEMROLE(@CURRENTAPPUSERID,'2f419cfd-9e70-406c-8277-ba2c4b7bdfba')
                            when @ISGROUP = 1 then dbo.UFN_SECURITY_APPUSER_GRANTED_FORM_IN_SYSTEMROLE(@CURRENTAPPUSERID,'292ee330-a63c-4cc5-98c2-a1168a1b7150')
                            else dbo.UFN_SECURITY_APPUSER_GRANTED_FORM_IN_SYSTEMROLE(@CURRENTAPPUSERID,'788AB947-26ED-40C4-865E-8FE29577E593')
                        end;
                    end

                return 0;