本文档仅限描述几种(但不限于以下)数据集成方案,用户集成请参考 SSO 和其他相关文档
立足Joget端
从Joget读取外部系统
# | 方式 | Joget端工具 | 涉及技术 | 外部系统配合 | 备注 |
---|---|---|---|---|---|
1 | 直接读取数据库 | sql | 为Joget服务器开通数据库/表读取权限 | 适用于表单/字段值集/数据列表的数据获取 | |
Beanshell | java | 为Joget服务器开通数据库/表读取权限 | 通过java自己创建jdbc连接 | ||
2 | 通过API获取数据 | JSON Tool | json | 提供相关的API | 标准工具仅限后台调用,前端调用需写前端脚本,非异步请求也可用beanshell |
SOAP Tool | xml | 提供相关的API | 标准工具仅限后台调用,前端调用需写前端脚本,非异步请求也可用beanshell | ||
Beanshell | java | 提供相关的API | 由后台java请求获取数据 |
从Joget写入外部系统
# | 方式 | Joget端工具 | 涉及技术 | 外部系统配合 | 备注 |
---|---|---|---|---|---|
1 | 直接写入数据库 | sql | 为Joget服务器开通数据库/表写入权限 | 适用表单保存(包括表单明细行) | |
Database update tool | sql | 为Joget服务器开通数据库/表写入权限 | 流程Tool环节 | ||
Beanshell | java | 为Joget服务器开通数据库/表写入权限 | 通过java自己创建jdbc连接 | ||
2 | 通过API更新数据 | JSON Tool | json | 提供相关的API | 标准工具仅限后台调用,前端调用需写前端脚本,非异步请求也可用beanshell |
SOAP Tool | xml | 提供相关的API | 标准工具仅限后台调用,前端调用需写前端脚本,非异步请求也可用beanshell | ||
Beanshell | java | 提供相关的API | 由后台java请求对方API更新数据 |
立足外部系统端
从外部系统读取Joget数据
# | 方式 | Joget端工作 | 涉及技术 | 备注 |
---|---|---|---|---|
1 | 标准API | 无额外开发工作 (可设置白名单) 调用 标准API | JSON | |
2 | 直接读数据库 | 开通Joget数据库相关表读取权限 | sql | |
3 | 客户化API | 开发 web service 插件 | java | |
API 设计器定制(仅限V7) | 无代码或java | 引用标准的API时无需代码开发 可用于前后端分离开发模式 | ||
4 | 页面嵌入 | 无,提供标准的embed页面供外部调用 | 前端脚本(js等) | 需要考量数据权限的方案 |
从外部系统更新Joget数据
# | 方式 | Joget端工作 | 涉及技术 | 备注 |
---|---|---|---|---|
1 | 标准API | 无额外开发工作 (可设置白名单) 调用 标准API | JSON | |
2 | 直接更新数据库 | 开通Joget数据库相关表写入权限 | sql | |
3 | 客户化API | 开发 web service 插件 | java | |
API 设计器定制(仅限V7) | 无代码或java | 引用标准的API时无需代码开发 可用于前后端分离开发模式 | ||
4 | 页面嵌入 | 无,提供标准的embed页面供外部调用 | 前端脚本(js等) | 需要考量数据权限的方案 |
定时任务
- 可通过 Scheduler Plugin(菜单插件)定义定时任务
通过中间文件同步数据
- 如果某些数据即时性要求不高,也可以通过双方指定目录和格式的文件进行数据同步
- Joget端通过插件可读取和解析文件,或则导出数据为指定格式到Joget工作目录(wflow下)
特殊方案 - RPA
在以上方案均不可行的情况下,可以采用RPA模拟人员操作的方式进行数据集成。
例如,在一个采购申请的场景中,有两个数据同步点:
- ERP物料清单同步到Joget - RPA机器人定时查询ERP中新建或更新的物料数据,录入到Joget系统中
- Joget通过的申请写入ERP - Joget触发RPA机器人将审批的PR转化为PO写入ERP(或者直接写入PR)