关于动态表单附件保存到单据附件问题原创
6人赞赏了该文章
3,552次浏览
编辑于2021年09月16日 17:36:45
动态表单不会自动保存附件数据,你获取到的动态表单的附件是缓存redis中的附件信息,如果要保存就需要自己完成保存过程。
// 获取动态表单附件面板 AttachmentPanel panel = this.getControl("动态表单标识"); // 获取动态表单附件面板内容 List<Map<String, Object>> atts =panel.getAttachmentData(); //创建单据对象 DynamicObject bill = BusinessDataServiceHelper.newDynamicObject("表单标识"); ……设置表单内容
// 保存单据
SaveServiceHelper.saveOperate(TrainConstant.KEY_WORK_LOGS, new DynamicObject[] {bill},null);
for(Map<String, Object> data:atts){
// 将缓存附件保存到文件服务器
String filePath=AttachmentServiceHelper.saveTempToFileService(data.get("url").toString(),
"应用编码","表单编码",bill.getPkValue(),data.get("name").toString());
data.put("url",filePath);
}
// 上传附件
AttachmentServiceHelper.upload("表单标识", bill.getPkValue(), "attachmentpanel", atts);
API参考如下文章:
赞 6
6人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读