UFN_SECURITY_APPUSER_GRANTED_FEATURE_IN_NONRACROLE

Returns true if the given user has permissions to the given feature in a role that has not constituent security defined.

Return

Return Type
bit

Parameters

Parameter Parameter Type Mode Description
@APPUSERID uniqueidentifier IN
@FEATUREID uniqueidentifier IN
@FEATURETYPE tinyint IN

Definition

Copy


            create function dbo.UFN_SECURITY_APPUSER_GRANTED_FEATURE_IN_NONRACROLE
            (
                @APPUSERID uniqueidentifier,
                @FEATUREID uniqueidentifier,
                @FEATURETYPE tinyint 
            )
            returns bit as

            /*
            Returns true if the given user has permissions to the given feature
            in a role whose security group is blank

            This function is optimized for use from the Blackbaud.AppFx.Security.Catalog.ConstitRecordSecurityService
            class which implements the RecordSecurity service for Constituent record security.

            As such, it assumes that a check for DENY occurs outside this function
            and also assumes that a check for if the user is ISSYSADMIN occurs outside 
            this function.  
            */


            begin

                if @FEATURETYPE = 1 -- SecurityFeatureType.Form  

                begin
                    return dbo.UFN_SECURITY_APPUSER_GRANTED_FORM_IN_NONRACROLE(@APPUSERID,@FEATUREID)
                end

                if @FEATURETYPE = 2 -- SecurityFeatureType.DataList 

                begin
                    return dbo.UFN_SECURITY_APPUSER_GRANTED_DATALIST_IN_NONRACROLE(@APPUSERID,@FEATUREID)
                end

                -- if @FEATURETYPE = 3 -- SecurityFeatureType.RecordOperation


                if @FEATURETYPE = 4 -- SecurityFeatureType.BusinessProcess

                begin
                    return dbo.UFN_SECURITY_APPUSER_GRANTED_BUSINESSPROCESS_IN_NONRACROLE(@APPUSERID,@FEATUREID)
                end

                if @FEATURETYPE = 5 -- SecurityFeatureType.Dashboard  

                begin
                    return dbo.UFN_SECURITY_APPUSER_GRANTED_DASHBOARD_IN_NONRACROLE(@APPUSERID,@FEATUREID)
                end

                -- if @FEATURETYPE = 6 -- SecurityFeatureType.SearchList      

                -- if @FEATURETYPE = 7 -- SecurityFeatureType.SimpleDataList  


                if @FEATURETYPE = 8 -- SecurityFeatureType.Task

                begin
                    return dbo.UFN_SECURITY_APPUSER_GRANTED_TASK_IN_NONRACROLE(@APPUSERID,@FEATUREID)
                end

                if @FEATURETYPE = 9 -- SecurityFeatureType.SmartQuery  

                begin
                    return dbo.UFN_SECURITY_APPUSER_GRANTED_SMARTQUERY_IN_NONRACROLE(@APPUSERID,@FEATUREID)
                end

                if @FEATURETYPE = 10 -- SecurityFeatureType.AdHocQueryView  

                begin
                    return dbo.UFN_SECURITY_APPUSER_GRANTED_QUERYVIEW_IN_NONRACROLE(@APPUSERID,@FEATUREID)
                end

                -- if @FEATURETYPE = 11 -- SecurityFeatureType.BatchType  

                -- if @FEATURETYPE = 12 -- SecurityFeatureType.AddCodeTableEntry             

                -- if @FEATURETYPE = 13 -- SecurityFeatureType.UpdateCodeTableEntry

                -- if @FEATURETYPE = 14 -- SecurityFeatureType.DeleteCodeTableEntry


                if @FEATURETYPE = 15 -- SecurityFeatureType.Batch  

                begin
                    return dbo.UFN_SECURITY_APPUSER_GRANTED_BATCH_IN_NONRACROLE(@APPUSERID,@FEATUREID)
                end

                if @FEATURETYPE = 16 -- SecurityFeatureType.BatchTemplate  

                begin
                    return dbo.UFN_SECURITY_APPUSER_GRANTED_BATCHTEMPLATE_IN_NONRACROLE(@APPUSERID,@FEATUREID)
                end

                -- if @FEATURETYPE = 17 -- SecurityFeatureType.Kpi              

                -- if @FEATURETYPE = 18 -- SecurityFeatureType.MergeTask    

                -- if @FEATURETYPE = 19 -- SecurityFeatureType.SmartField      

                -- if @FEATURETYPE = 20 -- SecurityFeatureType.GlobalChange  


                if @FEATURETYPE = 21 -- SecurityFeatureType.ReportParameter

                begin
                    return dbo.UFN_SECURITY_APPUSER_GRANTED_REPORT_IN_NONRACROLE(@APPUSERID,@FEATUREID)
                end

                -- if @FEATURETYPE = 22 -- SecurityFeatureType.SystemPrivilege      

                -- if @FEATURETYPE = 23 -- SecurityFeatureType.ConfigurationData  

                -- if @FEATURETYPE = 24 -- SecurityFeatureType.BatchTemplateCustomize  

                -- if @FEATURETYPE = 25 -- SecurityFeatureType.BatchProcessor  

                -- if @FEATURETYPE = 26 -- SecurityFeatureType.Page  


                return  0;

            end