我的案例

一、关账前那批要手工搬的凭证

每月末,财务的桌面上会并排开着两个窗口:左边是用友 U8 的总账,右边是勤哲 Excel 服务器里归集的业务表。业务侧的收入、成本、往来,要按科目、按辅助核算一项项录成凭证,录完再回头核一遍借贷平不平。

这类活不难,但慢,而且错不起。一张凭证的科目挂错,月底的报表就要重出;辅助核算项漏填,下期余额对不上,又得从头翻。

要解决它,未必要换掉任何一套系统。更现实的做法是让两边通个话:业务数据留在勤哲 Excel 服务器里,通过用友开放的接口把凭证取过来,也能把凭证送回去。

下面记录的就是一次完整的对接过程——勤哲 Excel 服务器 V2023 版套餐 7 的 WebAPI 功能,对接用友 U8(12.51 版本)的 OpenAPI,以总账模块的凭证为例走一遍。

二、先划边界:这次只打通"凭证"这一段

对接最怕一上来就想全打通。系统之间字段体系不同,科目、辅助核算、单据类型各有各的编码,全面铺开的结果往往是每一处都差一点,最后哪一段都不敢上线。

这次选了一个最小闭环:凭证。它同时满足两个条件——用友侧的接口成熟,勤哲侧只要一张模板就能承接。

路径分两步:先"取",把总账里的凭证列表拉进勤哲的表单里看;再"写",把勤哲归集好的业务数据生成凭证回写到总账。取通了,写才有参照物。

动手前要先接受一件事:用友的 OpenAPI 是收费接口,具体费用得向自己的用友服务商确认。这笔成本要算进项目预算,别等到联调时才发现额度不够。

三、第一关:在开放平台注册,拿到应用身份

第一步不在勤哲里,而在用友。访问用友开放平台注册用户,企业客户可以快速注册;登录后进入应用中心创建应用,具体步骤照着平台文档走即可。

这一步看着是流程性工作,其实决定了后面能不能调通。应用创建后会得到一组身份凭据,后面的 token 就靠它换取;凭据失效,接口一律返回鉴权失败。

用友U8+开放平台注册页面,填写企业信息
图1 在用友开放平台注册,企业客户可快速开通
用友开放平台登录界面
图2 登录开放平台,进入应用中心
创建应用的说明文档与参数填写页
图3 创建应用:按文档填写应用名称与回调等信息

创建应用时会遇到一个绕不开的前提:接口是收费的。平台文档里写明了计费方式,实际额度以商务确认为准。

这句话值得单独拎出来说。很多对接项目卡在这一步,不是因为技术做不到,而是预算里没算接口费,签完合同才发现调用要另外买。

用友OpenAPI接口收费说明页面
图4 接口收费说明:调用前先确认额度与计费方式
用友接口详情页,列出接口地址与请求参数
图5 接口详情:地址、方法、参数都在这一页

四、第二关:让 U8 客户端能对外说话

光有开放平台的应用还不够。真正跟 U8 账套打交道的是本地客户端工具:先下载 U8 OpenAPI 客户端,安装到用友软件所在的那台服务器上。

装好之后,在服务器上打开"EAI 接口设置",做三项基本配置:服务器地址、U8 帐套用户名密码、数据源选择。

用友开放平台客户端下载入口页面
图6 客户端下载入口在开放平台的工具区
下载页底部的版本与安装包列表
图7 下载页底部:按 U8 版本选择对应安装包
客户端安装包下载按钮
图8 点击下载,装到用友应用服务器上
安装完成后桌面上的客户端图标
图9 安装完成:桌面多了一个客户端图标

这三项配置对应三件事。服务器地址告诉客户端去哪儿找 U8;帐套用户名密码决定它能进哪个账套、以什么身份进;数据源选择则指向账套背后的数据库。

最容易出的问题是装错机器。客户端要装在用友应用服务器上,装到办公电脑上连不到内网数据库;EAI 设置也必须在那台机器上做,换一台机器就得重来一遍。

用友服务器上的EAI接口设置菜单入口
图10 在 U8 服务器上找到 EAI 接口设置
EAI基本设置界面:服务器地址、帐套用户名与数据源
图11 EAI 基本设置:地址、帐套、数据源三件套
开放平台客户端参数配置界面
图12 客户端参数配置:把应用凭据填进来
客户端参数配置示例,含地址与密钥字段
图13 一组可用的配置示例,照着自己的环境替换

五、第三关:配好 WebAPI,先把 token 拿到手

轮到勤哲这一侧了。以"获取凭证列表信息"这个接口为例,先打开用友的接口文档,看清请求地址、参数和返回结构,重点确认 token 怎么取。

token 是访问用友系统的必需参数,通常有有效期。配置 WebAPI 时就要想清楚两件事:多久换一次,以及换不到时表单该给什么提示。

用友接口参考文档目录,列出凭证相关接口
图14 接口文档:先找到凭证列表那一条
凭证列表接口的请求参数与返回示例
图15 参数与返回示例,照着填就不会错位
token获取接口文档说明
图16 token 提取:拿应用凭据换一个临时通行证
在配置中填写token参数
图17 把 token 填进请求头,接口才认这次调用

接下来在勤哲 Excel 服务器客户端里新建 WebAPI,把地址、方法、请求头、请求体按文档填好。凭证查询通常还要带账套、会计期间、凭证类别这些条件,少一个就可能返回空结果。

填完先单独测一次。能返回一段结构正确的数据,说明链路通了;返回鉴权错误,就回到 token 和凭据;返回空,多半是条件写错了。

勤哲Excel服务器客户端WebAPI配置界面
图18 在勤哲里建一个 WebAPI,填地址与参数
WebAPI配置完成后的参数列表
图19 配置完成:这条接口已经可以被模板调用

六、第四关:让公式去调接口,而不是让人去点

接口配好只说明"能调",要让它进入日常流程,还得挂到表单上。做法是在模板里加一条表间公式:触发条件设成填报或刷新,动作指向刚配好的 WebAPI,返回结果按列写进明细表。

这样,业务人员在表单上选好期间、点一下执行,凭证数据就落进表里。他不需要记接口地址,也不需要再打开第二个软件。

模板中新增表间公式并选择执行WebAPI
图20 表间公式里选"执行 WebAPI",把接口接进流程
表间公式参数映射配置界面
图21 公式配置:返回字段逐一映射到表格列

字段映射是这一步的细活。接口返回的是 JSON,表单要的是列,哪一项落到哪一列必须一一对应;金额、日期这类字段还要处理格式,否则进表之后成了一串字符,汇总时算不了。

七、验证:两边数字对上了,才算通

验证的方法很朴素:同一账套、同一期间,把勤哲取到的凭证列表和用友总账里的列表并排看。凭证号、日期、摘要、科目、借贷金额逐列对,能对上才算真的通了。

对不上时先查三处:期间条件是否一致、辅助核算有没有带出、金额单位是否相同。多数偏差不是接口的问题,而是查询条件差了一点。

勤哲Excel服务器表单中提取出的凭证列表
图22 勤哲侧:表单里排好的凭证数据
用友U8总账中的凭证列表,用于逐条比对
图23 用友侧:总账凭证列表,与上图逐条一致

八、再往前一步:从取数到回写

取通之后,反方向的路也就清楚了。用友提供的不只是查询接口,也有写入接口:勤哲里归集好的业务单据,按科目规则生成凭证,再通过 WebAPI 回写到总账。

这一步的意义是"一次录入,两处成账"。业务侧录的是事实,财务侧要的是凭证,中间那层翻译交给公式,人手不再介入,也就没有了转录误差。

用友凭证写入接口文档,说明可回写总账
图24 回写接口:业务单据生成凭证,直接送进总账

回写要比取数谨慎。写错了要冲销,碰上已结账期间还会被直接拒绝。稳妥的做法是先在测试账套跑通,确认科目映射和辅助核算都对,再动生产账套。

九、几个容易被忽略的细节

版本要对齐U8 12.51 的接口与老版本有差异,文档要按自己的版本取,别照抄网上的示例
帐套要一致EAI 里选的帐套、token 对应的账套、公式里的期间,三处必须是同一套账
token 会过期有效期一到就取不到数,配置里要留出重新获取的余量,别等报表空了才查
接口要花钱OpenAPI 按接口和调用量计费,联调前先确认额度,避免测试阶段就把量跑完
字段要翻译科目编码、辅助核算项在两套系统里各有一套值,映射表要提前整理好
先测后上取数可以在生产账套试,回写务必先在测试账套验证,再切正式环境

把这六条捋清楚,对接这件事就不再神秘:一边是被调用的接口,一边是发起调用的表单,中间靠 token 和字段映射连起来。真正花时间的,从来不是点哪几个按钮,而是把两套系统的"说法"对上。

欢迎光临

游客,您好!

登录后享受更多精彩内容

最新主题

开始您的数字化转型之旅

免费下载试用,一周上手,一个月见效,万家企业的共同选择

Archiver| 手机版| Excel服务器APP应用之家

( 京ICP备17007816 )

联系客服 下载试用 勤哲社区 返回顶部