Если мы используем метод IDfId checkin(boolean keepLock,
String versionLabels)
throws DfException
, мы получаем новую версию IDfSysObject
. Как я могу удалить последнюю версию и вернуться к предыдущей версии?
EMC Documentum: получить предыдущую версию IDfSysObject
Ответы (2)
Чтобы вернуться к предыдущей основной версии, вам необходимо сделать следующее:
- получить любую предыдущую основную версию объекта, которую вам нужно сделать текущей как IDfPersistentObject.
- Добавьте «CURRENT» к индексу [0] в атрибуте R_VERSION_LABEL.
сохранить измененный IDfPersistentObject
получить все IDfPersistentObject с R_VERSION_LABEL>, чем ваша новая текущая версия
- удалить «CURRENT» из индекса [0] в R_VERSION_LABEL, если он существует.
- сохранить IDfPersistentObject
- вызовите IDfPersistentObject.destroy(). Это не подведет.
person
vdmitrienko
schedule
22.05.2012
Если вы хотите сохранить последнюю версию, вы можете проверить последнюю версию, прочитать содержимое предыдущей версии в ByteArrayOutputStream
, используя метод getContent()
, и установить для этого содержимого последнюю версию, используя setContent()
.
Или, если вы не хотите сохранять последнюю версию, вы используете метод IDfPersistentObject.destroy()
для объекта, чтобы удалить единственную последнюю версию, чтобы предыдущая версия стала текущей.
person
yiannis
schedule
17.05.2012
destroy()
не работает. Выбрасывается исключение. Есть некоторые зависимости, которые не позволяют уничтожить последнюю версию. Я до сих пор не могу найти эти зависимости. И мне не нужна текущая последняя версия, ага. Так что уничтожать нормально.
- person Yegoshin Maxim; 18.05.2012