钉钉和金蝶云星空接口打通对接实战
接通系统:钉钉
钉钉(DingTalk)是阿里巴巴集团专为中国企业打造的免费沟通和协同的多端平台,提供PC版,Web版和手机版,有考勤打卡、签到、审批、日志、公告、钉盘、钉邮等强大功能。
写入目标:金蝶云星空
金蝶K/3Cloud(金蝶云星空)是移动互联网时代的新型ERP,是基于WEB2.0与云技术的新时代企业管理服务平台。金蝶K/3Cloud围绕着“生态、人人、体验”,旨在帮助企业打造面向新时代的生态互联与协同平台,围绕生态中的每个角色,提供随手可得的云服务,最终实现敏捷协同,智慧运营的企业运营新境界。整个产品采用SOA架构,完全基于BOS平台组建而成,业务架构上贯穿流程驱动与角色驱动思想,结合中国管理模式与中国管理实践积累,精细化支持企业财务管理、供应链管理、生产管理、供应链协同管理、人力资源管理等核心应用。技术架构上该产品采用平台化构建,支持跨数据库应用,支持本地部署、私有云部署与公有云部署三种部署方式,同时还在公有云上开放中国第一款基于ERP的协同开发云平台。任何一家使用金蝶K/3Cloud产品的企业,其拥有的是包含金蝶在内的众多基于同一个平台提供服务的IT服务伙伴。
配置集成方案
使用轻易云系统数据集成平台对应的模块:数据集成方案。然后选择开始创建数据集成方案。在方案配置表单中选择对应的源业务系统:钉钉,然后选择对应的连接器。选择对应的获取审批实例详情作为数据对接来源。然后再通过写入目标平台配置目标系统为金蝶云星空,并且选择对应连接器(关于金蝶云星空的接口如何配置可以在轻易云数据集成社区论坛中找到相关信息,选择好对应的新增付款单接口作为数据写入动作,既可以完成第一步的数据对接配置。
钉钉接口明细
- 调用接口:topapi/processinstance/get
- 接口名称:获取审批实例详情
- 方法:POST
请求参数
字段 | 字段名称 | 类型 | 配置值 |
process_code | 审批流的唯一码 | string | PROC-12B1B605-2D28-43FE-80FB-13ECE6165313 |
start_time | 审批实例开始时间。Unix时间戳,单位毫秒。 | string | _function ( {{LAST_SYNC_TIME}} - ( 3600 * 96) ) * 1000 |
end_time | 审批实例结束时间,Unix时间戳,单位毫秒 | string | {{CURRENT_TIME}}000 |
size | 分页参数,每页大小,最多传20。 | string | 20 |
cursor | 分页查询的游标,最开始传0,后续传返回参数中的next_cursor值。 | string | |
响应参数
字段 | 字段名称 | 类型 | 配置值 |
费用归属项目 | 费用归属项目 | string | |
报销类别 | 报销类别 | string | |
TextNote_7L0ZKXODKW40 | TextNote_7L0ZKXODKW40 | string | |
行政报销类型 | 行政报销类型 | string | |
项目报销类型 | 项目报销类型 | string | |
报销明细 | 报销明细 | array | |
报销明细.费用发生日期 | 费用发生日期 | string | |
报销明细.报销金额(元) | 报销金额(元) | string | |
报销明细.费用明细 | 费用明细 | string | |
报销明细.项目费用明细 | 项目费用明细 | array | |
报销明细.项目费用明细.componentName | componentName | string | |
报销明细.项目费用明细.componentType | componentType | string | |
报销明细.项目费用明细.props | props | string | |
报销明细.项目费用明细.总金额 | 总金额 | string | |
报销明细.项目费用明细.关联审批单 | 关联审批单 | string | |
报销明细.项目费用明细.TextNote-KDE5B2G3 | TextNote-KDE5B2G3 | string | |
报销明细.项目费用明细.电子发票 | 电子发票 | string | |
报销明细.项目费用明细.收款账号 | 收款账号 | string | |
报销明细.项目费用明细.公司帐号付款(如需公司帐号付款请选择) | 公司帐号付款(如需公司帐号付款请选择) | string | |
报销明细.项目费用明细.报销凭证拍照上传 | 报销凭证拍照上传 | string | |
报销明细.项目费用明细.附件 | 附件 | string | |
报销明细.项目费用明细.id | id | string | |
报销明细.项目费用明细.title | title | string | |
报销明细.项目费用明细.extend | extend | object | |
报销明细.项目费用明细.extend.create_time | create_time | string | |
报销明细.项目费用明细.extend.finish_time | finish_time | string | |
报销明细.项目费用明细.extend.originator_userid | originator_userid | string | |
报销明细.项目费用明细.extend.originator_dept_id | originator_dept_id | string | |
报销明细.项目费用明细.extend.status | status | string | |
报销明细.项目费用明细.extend.result | result | string | |
报销明细.项目费用明细.extend.business_id | business_id | string | |
报销明细.项目费用明细.extend.originator_dept_name | originator_dept_name | string | |
报销明细.项目费用明细.extend.biz_action | biz_action | string | |
金蝶云星空接口明细
- 调用接口:batchSave
- 接口名称:新增付款单
- 方法:POST
请求参数
字段 | 字段名称 | 类型 | 配置值 |
FBillNo | 单据编号 | string | {{extend.business_id}} |
FBillTypeID | 单据类型 | string | FKDLX04_SYS |
FDATE | 业务日期 | string | {{extend.create_time}} |
FSETTLEORGID | 结算组织 | string | findCollection find Number from 723e2cb6-f80f-3823-8b4f-6e98b9713ba3 where Name={{费用归属项目}} |
FPAYORGID | 付款组织 | string | _findCollection find Number from 723e2cb6-f80f-3823-8b4f-6e98b9713ba3 where Name={{费用归属项目}} |
FCURRENCYID | 币别 | string | PRE001 |
FCONTACTUNITTYPE | 往来单位类型 | string | BD_Department |
FCONTACTUNIT | 往来单位 | string | {{费用归属部门关联}} |
FRECTUNITTYPE | 收款单位类型 | string | BD_Department |
FRECTUNIT | 收款单位 | string | {{费用归属部门_关联}} |
FREMARK | 备注 | string | {{title}}+{{报销明细.0.费用明细}} |
FSETTLECUR | 结算币别 | string | PRE001 |
FPAYBILLENTRY | 付款单明细 | array | 报销明细 |
FPAYBILLENTRY.FSETTLETYPEID | 结算方式 | string | {{付款方式}} |
FPAYBILLENTRY.FPURPOSEID | 付款用途 | string | SFKYT002 |
FPAYBILLENTRY.FPAYTOTALAMOUNTFOR | 应付金额 | string | {{报销明细.报销金额(元)}} |
FPAYBILLENTRY.FCOSTID | 费用项目 | string | findCollection find FNumber from b02f1e34-b500-3075-8b14-08fec61d08a4 where FName={{项目报销类别}} |
FPAYBILLENTRY.FCOMMENT | 备注 | string | {{报销明细.费用明细}} |
FPAYBILLENTRY.FOPPOSITEBANKACCOUNT | 对方银行账号 | string | _function CASE LOCATE('ALIPAY_ACCOUNT','{{收款信息.identityType}}') WHEN 0 THEN '{{收款信息.cardNo}}' ELSE '{{收款信息.logonId}}' END |
FPAYBILLENTRY.FOPPOSITECCOUNTNAME | 对方账户名称 | string | {{收款信息.name}} |
FPAYBILLENTRY.FDepartment | 部门 | string | {{费用归属部门_关联}} |
FPAYBILLENTRY.F_VAOJ_SQR | 申请人 | string | {{extend.originator_userid}} |
FPAYBILLENTRY.FormId | 业务对象表单Id | string | AP_PAYBILL |
FPAYBILLENTRY.Operation | 执行的操作 | string | BatchSave |
FPAYBILLENTRY.IsAutoSubmitAndAudit | 提交并审核 | bool | false |
FPAYBILLENTRY.IsVerifyBaseDataField | 验证基础资料 | bool | false |
响应参数
字段 | 字段名称 | 类型 | 配置值 |
callBackStrategy | 回写方案 | object | |
callBackStrategy.strategyId | 方案ID | string | 950d161e-e92d-3d49-9d70-342c1503f694 |
callBackStrategy.id | 审批实例ID | string | {{id}} |
callBackStrategy.business_id | 审批编号 | string | {{extend.business_id}} |
callBackStrategy.name | 收款信息 | string | {{收款信息.name}} |
callBackStrategy.originator_userid | 发起人 | string | {{extend.originator_userid}} |
系统对接概况
当企业规模逐渐增大时,作为支撑业务运营的IT建设也变得越来越重要,不过往往企业的IT建设过程中会发现某一家软件供应商基本不能完全覆盖企业所有的业务运营流程,这样的结果就是,企业上的IT系统很多很全,从ERP到HR、CRM、PDM、OA等,貌似所有的业务都覆盖到了,但实际上因为这些系统的不集成,而形成了企业很多新的信息孤岛,非常不利于企业的后续的管理和战略发展。从现今和往后的发展趋势来看,也不可避免会遇到上述问题,毕竟企业经营的多样化,并不是所有的业务都能在一个系统中完成,所以我们必须在产品架构上支持更好的与外部系统进行协同。通过轻易云集成平台统一的API管理平台,对API进行显性化、可视化,使所有API服务成为企业的数字资产,提升API利用率,发挥业务系统价值,实现企业IT资产的可插拔、可复用、可组成。