guoqp 发表于 2022-12-28 17:03:06

利用活字格接口功能与文件管理功能实现泛微OA流程附件同步到活字格

先说下业务场景

这是我们泛微OA上的一个合同评审流程,因合同管理及项目管理需要,我需要将这个流程结束后的终版合同扫描件同步到活字格应用内(自动作为项目管理的合同附件,同时上传一份到专用的合同管理目录以便于大家的查阅使用)。

实现表单数据同步一个POST就解决了,但如何实现附件的同步这可难坏了我,想了好多办法都未成功,最后在我们CIO的技术支持下,由他解决了OA中附件的提取并以BASE64编码POST给我,我拿到加密后的文件再进行还原处理就解决了。

先看下同步后的效果


下边看如何实现
1、在OA中提取流程附件,并BASE64编码传给活字格接口,这部分不是用活字格实现就不展示了

2、活字格应用上做一个接口

3、用了一个7Z解压的功能

1525755450 发表于 2022-12-30 11:19:44

厉害

放下 发表于 2022-12-30 21:41:12

:):):):)厉害,

dlxubo 发表于 2023-1-29 16:09:41

:hjyzw:

w2331175 发表于 2023-2-21 11:45:03

大佬是否可以将BASE64编码传给活字格接口分享一下,谢谢!!

guoqp 发表于 2023-2-21 13:45:51

w2331175 发表于 2023-2-21 11:45
大佬是否可以将BASE64编码传给活字格接口分享一下,谢谢!!

给你几个思路
1、POST 提交表单数据,即formdata格式,这个处理有点麻烦,目前活字格没有现成的插件可用,要自己处理,反正我是放弃了这个方法。
2、readAsDataURL,这是js自带的功能,可以将file控件的附件进行base64编码传送,但这个好像仅支持file类型表单控件,刚开始我用了下,后来也放弃了,因为泛微里自带的附件上传好像取不到,要实现这个功能就要在表单里用脚本生成一个file控件,体验不太好。
3、直接从数据库里找到文件,然后将文件进行base64编码传送,这个是最直接的,但前提是你要能接触到服务器后台数据库与文件,至于用java还是其它语言无所谓,泛微对java支持比较好,我就是用的这个方法,但我因为接触不到后台数据库,所以我让这边IT管理人员给我弄的,大致原理说一下,就是流程表单里回传一个请求,表示我这个流程要同步附件,传的参数有流程ID,根据这个流程ID就可以找到附件的实体文件,然后将这个文件读入并以base64编码传送给我活字格的接口,据说并不复杂,就是java一个内置函数就解决了。因不是我做的,所以这个我提供不了,只能给你一个思路

dlxubo 发表于 2023-2-21 13:54:09

:i0tw:

w2331175 发表于 2023-2-23 14:22:10

guoqp 发表于 2023-2-21 13:45
给你几个思路
1、POST 提交表单数据,即formdata格式,这个处理有点麻烦,目前活字格没有现成的插件可用 ...

非常感谢!你的指导与帮助。

settings0 发表于 2023-3-5 15:37:36

厉害,

jinxinwork 发表于 2023-8-31 17:19:12

厉害
页: [1]
查看完整版本: 利用活字格接口功能与文件管理功能实现泛微OA流程附件同步到活字格