Ce morceau de code déplace toutes les versions actuelles des fichiers d'un dossier à un autre mais laisse toutes les anciennes versions non déplacé. (Le contexte est le code java de DFC accès Documentum.)Comment déplacer ** toutes ** les versions des fichiers d'un dossier à un autre dans Documentum en utilisant DFC
String strObjId = versionColl.getString("r_object_id");
com.documentum.fc.common.IDfId curObjectID = new DfId(strObjId);
IDfSysObject curObj = (IDfSysObject)sess.getObject(curObjectID);
versionlabel = curObj.getAllRepeatingStrings("r_version_label", ",");
System.out.println("Moving document with Name:" + objName + " and version:" + versionlabel);
if (runMode.equals("1")) {
curObj.unlink(oldpath);
curObj.link(newpath);
curObj.setString("a_special_app", curObj.getString("r_modifier"));
curObj.setTime("a_last_review_date", curObj.getTime("r_modify_date"));
curObj.setString("a_category","MOVED");
curObj.save();
System.out.println("Successfully Moved document with Name:" + objName + " and version:" + versionlabel);
}
L'erreur que nous obtenions tout en se déplaçant les anciennes versions était "document immuable". Nous avons donc ajouté ce morceau de code qui désactive temporairement le drapeau immuable, permet de déplacer le fichier puis réinitialise le drapeau immutable à true.
curObj.setBoolean("r_immutable_flag", false);
Le problème était alors que ce code a couru parfaitement sur notre machine de dev (Windows) alors qu'il est écrasé sur la production (fenêtres) (a donné erreur de lien). Toute idée de la raison pour laquelle cela agit comme il est et d'autres codes pour résoudre ce problème serait génial. Merci.
Peut-être que vous pourriez inclure plus de détails dans l'erreur que vous rencontrez en production. –
Si le code est le même, vous avez des différences entre la configuration de dev et la configuration de prod. Donnez-nous votre erreur exacte pour nous aider à comprendre ce qui ne va pas (permis d'écriture, dossier cible inexistant, ...) – enguerran