USP_DATALIST_WEALTHINFORMATIONDASHBOARDGIVINGCAPACITY

This datalist returns giving capacity information that is used by the wealth information dashboard.

Parameters

Parameter Parameter Type Mode Description
@CONSTITUENTID uniqueidentifier IN Constituent
@ISVISIBLE bit IN Visible
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.

Definition

Copy


                    create procedure dbo.USP_DATALIST_WEALTHINFORMATIONDASHBOARDGIVINGCAPACITY
                (
                    @CONSTITUENTID uniqueidentifier,
                    @ISVISIBLE bit = 1,
                    @CURRENTAPPUSERID uniqueidentifier = null
                )
                as
                    set nocount on;

                    declare @ISADMIN bit;
                    declare @APPUSER_IN_NONRACROLE bit;
                    declare @APPUSER_IN_NOSECGROUPROLE bit;

                    set @ISADMIN = dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID);
                    set @APPUSER_IN_NONRACROLE = dbo.UFN_SECURITY_APPUSER_IN_NONRACROLE(@CURRENTAPPUSERID);
                    set @APPUSER_IN_NOSECGROUPROLE = dbo.UFN_SECURITY_APPUSER_IN_NO_SECURITY_GROUP_ROLE(@CURRENTAPPUSERID);
                    declare @ESTIMATEDWEALTH table
                    (
                        ID uniqueidentifier,
                        MINAMOUNT money,
                        MAXAMOUNT money
                    )

                    declare @MAJORGIVINGCAPACITY table
                    (
                        ID uniqueidentifier,
                        MINAMOUNT money,
                        MAXAMOUNT money
                    )

                    if @ISVISIBLE = 1
                    begin
                        insert @ESTIMATEDWEALTH
                        exec dbo.USP_ESTIMATEDWEALTH_GETRANGES

                        insert @MAJORGIVINGCAPACITY
                        exec dbo.USP_MAJORGIVINGCAPACITY_GETRANGES

                        select ew.MINAMOUNT as ESTIMATEDWEALTHMIN, ew.MAXAMOUNT as ESTIMATEDWEALTHMAX,  mgc.MINAMOUNT as MAJORGIVINGCAPACITYMIN, mgc.MAXAMOUNT as MAJORGIVINGCAPACITYMAX, orc.DESCRIPTION as OVERALLRATING, w.MAJORGIVINGCAPACITYVALUE
                        from  dbo.WEALTHCAPACITY w
                        left join @ESTIMATEDWEALTH ew
                            on ew.ID = w.ESTIMATEDWEALTHID
                        left join @MAJORGIVINGCAPACITY mgc
                            on mgc.ID = w.MAJORGIVINGCAPACITYID
                        left join dbo.OVERALLRATINGCODE orc
                            on orc.ID = w.OVERALLRATINGCODEID
                        where w.ID = @CONSTITUENTID
                            and (@ISADMIN = 1 or 
                                @APPUSER_IN_NONRACROLE = 1 or
                                dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITID_FORREPORT(@CURRENTAPPUSERID, w.ID, @APPUSER_IN_NOSECGROUPROLE) = 1);

                    end
                    else
                    begin
                        insert @ESTIMATEDWEALTH
                        exec dbo.USP_ESTIMATEDWEALTH_GETRANGES

                        insert @MAJORGIVINGCAPACITY
                        exec dbo.USP_MAJORGIVINGCAPACITY_GETRANGES

                        select top 1 ew.MINAMOUNT as ESTIMATEDWEALTHMIN, ew.MAXAMOUNT as ESTIMATEDWEALTHMAX,  mgc.MINAMOUNT as MAJORGIVINGCAPACITYMIN, mgc.MAXAMOUNT as MAJORGIVINGCAPACITYMAX, orc.DESCRIPTION as OVERALLRATING, w.MAJORGIVINGCAPACITYVALUE
                        from  dbo.WEALTHCAPACITY w
                        left join @ESTIMATEDWEALTH ew
                            on ew.ID = w.ESTIMATEDWEALTHID
                        left join @MAJORGIVINGCAPACITY mgc
                            on mgc.ID = w.MAJORGIVINGCAPACITYID
                        left join dbo.OVERALLRATINGCODE orc
                            on orc.ID = w.OVERALLRATINGCODEID
                        where w.ID = @CONSTITUENTID
                    end