EMC Documentum: Get previous version of IDfSysObject
-
09-06-2021 - |
题
If we use IDfId checkin(boolean keepLock,
String versionLabels)
throws DfException
method, we get new version of IDfSysObject
. How can I remove the latest version and get back to the previous version?
解决方案
To revert to a previous major version You need to do the following:
- get any previous major version of object You need to make current as IDfPersistentObject.
- Add "CURRENT" to [0] index in R_VERSION_LABEL attribute
save modified IDfPersistentObject
get all IDfPersistentObject with R_VERSION_LABEL > than your new current version
- remove "CURRENT" from [0] index in R_VERSION_LABEL if it exists.
- save IDfPersistentObject
- call IDfPersistentObject.destroy(). It will not fail.
其他提示
If you wish to keep the latest then you can check out the latest version, read the contents of the previous version in a ByteArrayOutputStream
using the getContent()
method and set that content to the latest version, using setContent()
.
Or if you do not wish to keep the latest version you user the IDfPersistentObject.destroy()
method for the object to delete the only latest version so the previous version will become current.