我正在制作自定义工作流程,并且我想与受让人共享我创建工作流程的文件,因为否则,用户只能通过“我最近修改过”访问该文件,并且当任务完成后,该文件消失。
当我与受让人创建工作流时,如何共享文件?
提前致谢。
我正在制作自定义工作流程,并且我想与受让人共享我创建工作流程的文件,因为否则,用户只能通过“我最近修改过”访问该文件,并且当任务完成后,该文件消失。
当我与受让人创建工作流时,如何共享文件?
提前致谢。
在工作流开始时使用 executionflowlistener 来获取工作流包中的节点,然后将“用户主目录”noderef 添加为辅助父级。
获取工作流包节点:
ActivitiScriptNode packageItemsbpm = (ActivitiScriptNode) execution.getVariable(BPM_PACKAGE);
List<ChildAssociationRef> packageitemAssociations = nodeService.getChildAssocs(packageItemsbpm.getNodeRef());
然后迭代这些 wf 包节点,并将它们添加到受让人的主文件夹中:
for(String assigneeName : assigneesList) {
ResultSet rs = getServiceRegistry().getSearchService().query(StoreRef.STORE_REF_WORKSPACE_SPACESSTORE, SearchService.LANGUAGE_LUCENE, "PATH:\"/app:company_home/app:user_homes/cm:"+ assigneeName +"\"");
if(rs.length() > 0){
NodeRef assigneeHome = rs.getNodeRef(0);
nodeService.addChild(assigneeHome, nodeRef, ContentModel.ASSOC_CONTAINS, nodeService.getPrimaryParent(nodeRef).getQName());
}
}