Thursday, July 15, 2010

Lifecycle permissions in Documentum "You must be the owner (or superuser)"

I work on a content management system run off of EMC's Documentum. We had a new requirement that users be able to move our modules into different folders.

But every time we tried to move a module, we encountered the following error:


[DM_SYSOBJECT_E_NO_RELATE_ACCESS]error: "No relate access sysobject named 'product_lifecycle'."

I thought... "Why does it care about a lifecycle, I am not modifying the lifecycle, I am just moving the document." But it turns out that the permissions on a lifecycle do not control the permission on the lifecycle itself, they control the permission on the document that it is attached to. So in order to move a document, you must have the write and relate permissions on not only the document's permission set, but also the applied lifecycle.

We did not know this when creating the lifecycle. The lifecycles permissions were much to restrictive. And you cannot edit an installed lifecycle's properties through Webtop. What a pain...

But wait! Have no fear, you do not you do not need to uninstall it and redeploy it with the Documentum Application builder. You can just do the following steps:
  1. API>uninstall,c,46002af8801037ae
  2. Now it is uninstalled so update the permissions on the lifecycle easily using the properties->permission screen.
  3. API>install,c,46002af8801037ae
(Where 46002af8801037ae is the Object ID of the lifecycle).

You now have the correct permissions on your lifecycle and as long as you have the correct permissions on your documents ACL you will be right as rain.