我是 Documentum DFC 的新手,我使用 DFC API 编写代码来检出文档并且它正常工作。但是现在我想用一个新文件检查同一个文件,该文件存在于我本地的pc驱动器中。我试图搜索它,但没有找到任何好的和简单的答案。
如果有人在这里为我提供指导,我将不胜感激。
答案 0 :(得分:5)
新版(需要VERSION权限):
boolean keepLock = false;
String versionLabels = "";
IDfSysObject doc = (IDfSysObject) session.getObject(new DfId("0900000000000000"));
doc.checkout();
doc.setFile("C:\\temp\\temp.jpg"); // assuming you're using windows
doc.checkin(keepLock, versionLabels);
相同版本(需要WRITE权限):
IDfSysObject doc = (IDfSysObject) session.getObject(new DfId("0900000000000000"));
doc.fetch(null);
doc.setFile("C:\\temp\\temp.jpg"); // again, assuming the worst ;)
doc.save();
请注意,需要 fetch(null)以确保您拥有最新版本的文档。
对于上面的两个示例,内容文件被替换而没有任何进一步的魔力。请务必根据需要重命名文档,并在必要时设置正确的格式,例如:
doc.setObjectName("new_name");
doc.setContentType("new_format");
答案 1 :(得分:2)
public void checkinDoc(String objectId) throws Exception
{
sysObject = (IDfSysObject) idfSession.getObjectByID(objectId);
//sysObject = (IDfSysObject) idfSession.getObjectByPath("/Cabinet/Folder/Document");
if (sysObject.isCheckedOut() ) { // if it is checked out
sysObject.checkin(false,”CURRENT”);
}
}
答案 2 :(得分:1)
在签出的文档上使用setFile,然后签入。