spBulkUpdate_RoleObjectPrivs

Parameters

Parameter Parameter Type Mode Description
@XML ntext IN
@ObjectTypeID int IN

Definition

Copy


CREATE    PROCEDURE dbo.spBulkUpdate_RoleObjectPrivs
(
    @XML as ntext,
    @ObjectTypeID as int
)

AS

DECLARE @idoc int

EXEC sp_xml_preparedocument @idoc OUTPUT, @XML

declare @Guid uniqueidentifier 

    SELECT TOP 1 @Guid=ObjectGuid FROM OPENXML (@idoc, '/ObjectSecurityItems',1) WITH (ObjectGuid uniqueidentifier)

    delete RoleObjectPrivs from RoleObjectPrivs WHERE ObjectGuid = @Guid

        insert into RoleObjectPrivs(
            ObjectTypesID,
            ClientRolesID,
            ObjectGuid,
            CanView,
            CanEdit,
            CanAdd,
            CanDelete,
            Cansecure
        ) SELECT 
            @ObjectTypeID,
            ClientRolesID,
            @Guid,
            CanView,
            CanEdit,
            CanAdd,
            CanDelete,
            Cansecure
         FROM OPENXML (@idoc, '/ObjectSecurityItems/ClientRoleSettings/Item',1) WITH (ClientRolesID int, CanView bit, CanEdit bit, CanAdd bit, CanDelete bit, CanSecure bit)

EXEC sp_xml_removedocument @idoc