我创建了一个文档集合,并且能够将第二个doc的docid放在第一个doc中,第三个放在第二个文档中,直到最后一个文档使我能够从第一个文档导航到第二个文档当用户批准工作等等,但是我希望当用户拒绝任务时也能够从第二个回到第一个,但是我没有能够在第二个documnet中存储第一个的docid。下面是我目前使用的代码XPages:围绕文档集合导航
Document nextJob= null;
Document thisJob =null;
DocumentCollection col = lookup.getAllDocumentsByKey(ID, true);
if (col != null){
Job= col.getFirstDocument();
while (job!= null) {
thisJob.createDocument()
thisJob =Job;
thisJob.replaceItemValue("DocID",thisJob.getUniversalID());
thisJob.save(true);
if(nextJob!= null){
nextJob.replaceItemValue("TaskSuccessor",thisJob.getUniversalID());
nextJob.save(true);
}
nextJob= thisJob
tmpDoc = Job;
Job = col.getNextDocument(Job);
}
}
了解currentTask的对象类型(第7行)会很有用。currentJob看起来像是一个NotesDocument,但是你可以在它上面调用createDocument(),它是NotesDatabase类的一个方法。 –
我已经更新了上面的问题,以便能够在第二个和第二个中存储或保存第一个Document的UNID,以便我可以在工作流中上下移动,但使用上面的代码在documentcollection中,我可以将第二个文档的docid存储在第一个和第三个文档中,依此类推,并且字段TaskSuccessor保存下一个 –
的ID,重新考虑您的方法。不要在文档中存储文档的单一文件。更好的主意是拥有视图或文件夹。 –