USP_SYSTEMROLEADGROUP_VALIDATESECURITYGROUPS

Checks that a security group has only been defined once for a given system role active directory group.

Parameters

Parameter Parameter Type Mode Description
@SECURITYGROUPS xml IN

Definition

Copy


            create procedure dbo.USP_SYSTEMROLEADGROUP_VALIDATESECURITYGROUPS
            (
                @SECURITYGROUPS xml
            )
            with execute as caller
            as            
                declare @ERRORMESSAGE nvarchar(max);

                declare @DULICATEID uniqueidentifier
                select top 1 @DULICATEID = CONSTITUENTSECURITYATTRIBUTEID from dbo.UFN_SYSTEMROLEADGROUP_GETSECURITYGROUPS_FROMITEMLISTXML(@SECURITYGROUPS) as GROUPS group by CONSTITUENTSECURITYATTRIBUTEID having count(CONSTITUENTSECURITYATTRIBUTEID) > 1

                if @DULICATEID is not null begin
                    select @ERRORMESSAGE = NAME + ' is selected more than once.' from dbo.CONSTIT_SECURITY_ATTRIBUTE where CONSTIT_SECURITY_ATTRIBUTE.ID = @DULICATEID;
                    raiserror(@ERRORMESSAGE, 13, 1);
                end