金蝶EAS_WebService总账_新接口开发指南(五):凭证操作
概述
如果EAS总账与外部系统有交互,那么最常见的就是凭证做为外部系统单据的下游单据存在。当外部系统的单据提交或审核时,可以通过我们前面提供的接口(金蝶EAS_WebService总账_新接口开发指南(二):将凭证引入到EAS系统中)把凭证引入到EAS系统中。当外部系统的单据有调整时,之前引入到EAS系统的凭证往往也要做出相应的调整:比如先删除,再重新引入,以保证同步。下面这个接口WSVoucher.nOperateVoucher可以处理这样的需求。
1、如果还没有下载凭证用wsdl服务描述文件和导入架包,请参考金蝶EAS_WebService总账_新接口开发指南(二):将凭证引入到EAS系统中文章中的第1、2步。
2、编写代码(完整代码在附件工程中的类client.VoucherOperateTest),使用凭证操作新接口WSVoucher.nOperateVoucher操作凭证,以下是参数构建和发起调用的代码片段:
以下是调用结果分析处理的代码片段:
如果看到下面类似的信息说明操作已经成功:
3、凭证操作时,系统会先使用过滤条件找到凭证,然后再执行凭证操作。接口查找凭证目前分为三种模式:ID模式、importKey模式,一般模式。ID模式,你只需要提供凭证的ID(voucherId)就行;importKey模式,你只需要提供凭证的importKey就行;一般模式,提供了组织编码(companyNumber),如果提供了组织编码,依然提供了凭证的ID或importKey,也会认为是一般模式,且voucherId,importKey仍然起作用,只不过是作为普通条件使用。voucherId,importKey或companyNumber三者至少有一个要有值。
4、凭证操作新接口WSVoucher.nOperateVoucher的参数jsonParams,它是一个Map<key, value>形式的json字符串,目前支持以下参数项:
参数名(控制) | 参数值 | 说明 |
operate | submit、audit、post、antiPost、antiAudit、delete、check、antiCheck、cancel或antiCancel | 对凭证执行何种操作,各参数值的意思为:提交、审核、过账、反过账、反审核、删除,复核、反复核、作废或生效。 |
force | true或false,默认为false | 是否对凭证执行连续操作,默认情况下,只能对凭证执行一步操作,比如一个已审核的凭证,只能“反审核”或“过账”,不能直接“删除”,但是你确实需要把它删除,当参数force为true时,系统会在一个事务里,先“反审核”再“删除”。 |
isUseWorkflow | true或false,默认为true | 是否走工作流,总账参数GL_032为否,isUseWorkflow无效;总账参数GL_032为是,isUseWorkflow为true,走工作流,isUseWorkflow为false,不走工作流。该参数主要是为了应对接口操作的凭证不走工作流,手工凭证要走工作流,该场景要求工作流流程入口做一定的区分,使接口操作的凭证不走工作流。 |
nCreator | 制单人编码 | 凭证提交时的制单人编码 |
nAuditor | 审核人编码 | 凭证审核时的审核人编码 |
nPoster | 过账人编码 | 凭证过账时的过账人编码 |
nCashier | 复核人编码 | 凭证复核时的复核人编码 |
参数名(过滤) | 参数值 | 说明 |
voucherId | 凭证ID | 要操作的目标凭证的ID,可以多选,用“;”分隔。 |
importKey | 导入Key | 要操作的目标凭证的外部标识,具体意义请参考引入接口说明,可以多选,用“;”分隔。 |
companyNumber | 公司编码 | 公司编码,可以多选,用“;”分隔。 |
voucherType | 凭证类型 | 凭证类型,可以多选,用“;”分隔。 |
voucherNumber | 凭证编码 | 凭证编码,可以多选,用“;”分隔。 |
fromPeriodNumber | 开始期间 | 开始期间,如202312。 |
toPeriodNumber | 结束期间 | 结束期间,如202312。 |
fromBookedDate | 记账开始日期 | 记账开始日期,格式yyyy-MM-dd,如2023-12-01。 |
toBookedDate | 记账结束日期 | 记账结束日期,格式yyyy-MM-dd,如2023-12-31。 |
fromBizDate | 业务开始日期 | 业务开始日期,格式yyyy-MM-dd,如2023-12-01。 |
toBizDate | 业务结束日期 | 业务结束日期,格式yyyy-MM-dd,如2023-12-31。 |
bizStatus | 0、1、2、3、5或空,默认空 | 业务状态,可以多选,用“;”分隔,如0;1。 |
isCheck | true、false或空,默认空 | 是否复核。 |
creator | 制单人编码 | 制单人编码,支持多个,用“;”分隔。 |
auditor | 审核人编码 | 审核人编码,支持多个,用“;”分隔。 |
poster | 过账人编码 | 过账人编码,支持多个,用“;”分隔。 |
cashier | 复核人编码 | 复核人编码,支持多个,用“;”分隔。 |
description | 参考信息 | 参考信息,模糊匹配。 |
voucherAbstract | 凭证摘要 | 凭证摘要,模糊匹配。 |
sourceSys | 来源系统 | 来源系统,可以多选,用“;”分隔,如:11,可填的值请参考com.kingdee.eas.framework.SystemEnum。 |
sourceType | 来源类型 | 来源类型,可以多选,用“;”分隔,如:4,可填的值请参考com.kingdee.eas.fi.gl.SourceType。 |
category | 1、2、3或空,默认空 | 凭证类别,各参数值的意思为财务凭证、预算凭证、平行记账,可以多选,用“;”分隔,只支持EAS850以上版本。 |
entryDescription | 分录摘要 | 分录摘要,模糊匹配。 |
currency | 币别编码 | 币别编码,支持多个,用“;”分隔。 |
accountNumber | 科目编码 | 科目编码,支持多个,用“;”分隔。 |
fromAccountNumber | 科目开始编码 | 科目开始编码。 |
toAccountNumber | 科目结束编码 | 科目结束编码。 |
entryAmount | 分录原币金额 | 分录原币金额。 |
entryMinAmount | 分录原币最小金额 | 分录原币最小金额。 |
entryMaxAmount | 分录原币最大金额 | 分录原币最大金额。 |
注:
1、使用一般模式时,请指定好比较精确的条件,以免匹配到太多的凭证,另外force=true的条件慎用,特别是delete操作时。
2、对于分录的过滤条件,只要一条分录符合条件,就认为该凭证符合条件。
5、凭证操作接口WSVoucher.nOperateVoucher返回的数据也是一个Map<key, value>形式的json字符串,它有以下项目:
errs:错误信息,是一个List<String>形式的数据,主要是用来表示参数的各钟错误。
vchs:凭证信息,是一个Map<key, value>形式的数据,key是凭证的ID(ID模式时)或importKey(importKey模式时),value是凭证信息,仍然是一个Map<key, value>形式的数据,它有以下子项:
id:凭证的ID。
importKey:importKey(importKey模式时)。
companyNumber:公司编码。
voucherNumber:凭证编码。
err:错误信息,如果有这项信息,说明操作对该凭证是失败的,反之没有这项信息,说明操作对该凭证是成功的。
ex:异常信息,如果凭证操作发生异常时,就有该项信息,单次调用,最多返回10个异常信息。
6、关于接口的权限
凭证操作时,涉及两类用户,一类是登陆用户,一类是凭证操作的用户,默认情况下都是不验权的,目前定义了两个系统参数以进行控制:
1、GL_IfcUsePerm_Enable(是否开启接口使用权限):当参数设置为是时,将会校验登陆用户是否具有gl_ifc_voucherOperate(凭证操作接口)权限。
2、GL_IfcBizPerm_Enable(是否开启接口业务权限):当参数设置为是时,将会校验凭证数据中nCreator, nAuditor, nPoster, nCashier的凭证操作权限。
注:建议将参数GL_IfcBizPerm_Enable设置为true,对于开启了安全模式的服务器建议将GL_IfcUsePerm_Enable设置为true。
版本迭代说明(不完全统计,新的在上):
补丁号(881) | 发布时间 | 更新内容 |
PT174965 | 2023-12-22 | 首次发布。 |
补丁号(861) | 发布时间 | 更新内容 |
PT174763 | 2023-12-22 | 首次发布。 |
补丁号(850) | 发布时间 | 更新内容 |
PT174916 | 2023-12-22 | 首次发布。 |
补丁号(820) | 发布时间 | 更新内容 |
PT175010 | 2023-12-22 | 首次发布。 |
补丁号(810) | 发布时间 | 更新内容 |
待发布 | 待发布 | 待发布 |
补丁号(800) | 发布时间 | 更新内容 |
PT175018 | 2023-12-22 | 首次发布。 |
附件工程:
相关文章:
金蝶EAS_WebService总账_新接口开发指南(一):环境准备
金蝶EAS_WebService总账_新接口开发指南(二):将凭证引入到EAS系统中
金蝶EAS_WebService总账_新接口开发指南(三):将凭证从EAS系统引出
金蝶EAS_WebService总账_新接口开发指南(四):基础资料查询
金蝶EAS_WebService总账_新接口开发指南(五):凭证操作
金蝶EAS_WebService总账_新接口开发指南(六):使用接口查询科目余额
金蝶EAS_WebService总账_新接口开发指南(七):使用接口查询核算项目余额
金蝶EAS_WebService总账_新接口开发指南(八):使用接口查询明细分类账
金蝶EAS_WebService总账_新接口开发指南(九):使用接口查询辅助明细账
金蝶EAS_WebService总账_新接口开发指南(五):凭证操作
本文2024-09-22 18:23:28发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-100469.html