dqldocumentumdfc

How to delete an acl from dm_acl object table


I am using documentum and I want to remove few acls from my dm_acl object table . first I made sure that the acl exists :

select * from dm_acl where object_name = 'myAclName'

then I made sure that no other object is using that acl

select * from dm_folder where acl_name = 'myAclName'

and then I used the following to delete that acl :

delete dm_acl objects where object_name = 'myAclName'

But then I receive an error saying that you have specified a none updatable type (dm_acl). Is there any way that I can delete an acl using either DQL or DFC


Solution

  • You can't delete ACL objects using DQL. However you can delete it using API with syntax

    destroy,c,<acl_object_id>
    

    One more thing, check you mentioned

    select * from dm_folder where acl_name = 'myAclName'
    

    is not enough. ACL object can be found on every sysobject so basically you need to widen your check to dm_sysobject type

    select * from dm_sysobject where acl_name = 'myAclName'
    

    Deleting ACL through DFC is possible since there is destroyACL() method on IDfAcl interface.