USP_DATAFORMTEMPLATE_VIEW_CONSTITUENTPROFILECONSTITUENTINFORMATION

The load procedure used by the view dataform template "Constituent Profile Constituent Information View Form"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@ISGROUP bit INOUT Is group
@ISHOUSEHOLD bit INOUT Is household
@PRIMARYCONTACTID uniqueidentifier INOUT Primary contact ID
@GROUPINCLUDESMEMBERGIVING bit INOUT Group includes member giving
@ISORGANIZATION bit INOUT Is organization
@CONSTITUENTINHOUSEHOLD bit INOUT Constituent is in household

Definition

Copy


                CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_CONSTITUENTPROFILECONSTITUENTINFORMATION
                (
                    @ID uniqueidentifier,
                    @DATALOADED bit = 0 output,
                    @ISGROUP bit = null output,
                    @ISHOUSEHOLD bit = null output,
                    @PRIMARYCONTACTID uniqueidentifier = null output,
                    @GROUPINCLUDESMEMBERGIVING bit = null output,
                    @ISORGANIZATION bit = null output,
                    @CONSTITUENTINHOUSEHOLD bit = null output
                )
                as
                    set nocount on

                    select
                        @DATALOADED = 1,
                        @ISGROUP = C.ISGROUP,
                        @ISHOUSEHOLD = case
                            when GD.GROUPTYPECODE = 0 then 1
                            else 0
                        end,
                        @GROUPINCLUDESMEMBERGIVING = case
                            when GD.GROUPTYPECODE = 0 then 1
                            else coalesce(GT.INCLUDEMEMBERGIVING, 0)
                        end,
                        @ISORGANIZATION = C.ISORGANIZATION,
                    @CONSTITUENTINHOUSEHOLD = 0
                    from dbo.CONSTITUENT C
                    left outer join dbo.GROUPDATA GD on C.ID = GD.ID
                    left outer join dbo.GROUPTYPE GT on GD.GROUPTYPEID = GT.ID
                    where
                        C.ID = @ID

                    select
                        @PRIMARYCONTACTID = MEMBERID
                    from dbo.GROUPMEMBER
                    where
                        GROUPID = @ID and
                        ISPRIMARY = 1;

                   if @ISHOUSEHOLD = 0 
                      select @CONSTITUENTINHOUSEHOLD = 1
                      from dbo.GROUPMEMBER as GM
                      inner join dbo.GROUPDATA as GD on GD.ID = GM.GROUPID
                      where GM.MEMBERID = @ID
                      and GD.GROUPTYPECODE = 0
                      and dbo.UFN_GROUPMEMBER_ISCURRENTMEMBER(GM.ID) = 1