USP_SYSTEMROLEATTRIBUTEPERMS_DENY

Executes the "System Role Attribute Category Permission: Deny" record operation.

Parameters

Parameter Parameter Type Mode Description
@ID nvarchar(72) IN Input parameter indicating the ID of the record being updated.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the update.

Definition

Copy


                    CREATE procedure dbo.USP_SYSTEMROLEATTRIBUTEPERMS_DENY
                    (
                        @ID nvarchar(72),
                        @CHANGEAGENTID uniqueidentifier
                    )
                    as begin
                        set nocount on;

                        if(len(@ID) = 72)
                        begin

                            declare @ATTRIBUTECATEGORYID uniqueidentifier;
                            declare @SYSTEMROLEID uniqueidentifier;                        

                            set @ATTRIBUTECATEGORYID = cast(substring(@ID,1,36) as uniqueidentifier)
                            set @SYSTEMROLEID = cast(substring(@ID,37,36) as uniqueidentifier)

                            if @CHANGEAGENTID is null  
                                exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

                            declare @CURRENTDATE datetime;
                            set @CURRENTDATE=getdate();

                            if not exists(select 1 from dbo.SYSTEMROLEPERM_ATTRIBUTECATEGORY where ATTRIBUTECATEGORYID=@ATTRIBUTECATEGORYID and SYSTEMROLEID = @SYSTEMROLEID)
                            begin

                                insert into dbo.SYSTEMROLEPERM_ATTRIBUTECATEGORY(
                                    ATTRIBUTECATEGORYID,
                                    SYSTEMROLEID,
                                    ADDEDBYID,
                                    CHANGEDBYID,
                                    DATEADDED,
                                    DATECHANGED
                                )values(
                                    @ATTRIBUTECATEGORYID,
                                    @SYSTEMROLEID,
                                    @CHANGEAGENTID,
                                    @CHANGEAGENTID,
                                    @CURRENTDATE,
                                    @CURRENTDATE
                                )
                            end    

                            /*declare @QUERYVIEWCATALOGID uniqueidentifier; 

                            select 
                                @QUERYVIEWCATALOGID = ID 
                            from
                                dbo.QUERYVIEWCATALOG
                            where
                                OBJECTNAME = 'V_QUERY_ATTRIBUTE' + 
                                              replace(cast(@ATTRIBUTECATEGORYID as nvarchar(36)), '-', '')

                            update
                                dbo.SYSTEMROLEPERM_QUERYVIEW
                            set
                                GRANTORDENY = 0,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @CURRENTDATE
                            where
                                QUERYVIEWCATALOGID = @QUERYVIEWCATALOGID and
                                SYSTEMROLEID = @SYSTEMROLEID*/

                        end
                        return 0;

                    end