金蝶EAS_WebService总账_新接口开发指南(三):将凭证从EAS系统引出
概述
凭证是总账比较重要的数据对象,光有导入接口是不够的,如果你想在第三方系统显示EAS凭证的信息,那你首先需要取出它,下面这个接口WSVoucher.nExportVoucher刚好能满足这样要求。
1、如果还没有下载凭证用wsdl服务描述文件和导入架包,请参考金蝶EAS_WebService总账_新接口开发指南(二):将凭证引入到EAS系统中文章中的第1、2步。
2、编写代码(完整代码在附件工程中的类client.VoucherExportTest),使用凭证引出新接口WSVoucher.nExportVoucher引出凭证,以下是参数构建的代码片段:
以下是发起调用的代码片段:
如果看到下面类似的信息说明已经导出成功:
3、凭证引出新接口WSVoucher.nImportVoucher的参数jsonParams,它是一个Map<key, value>形式的json字符串,目前支持以下参数项:
参数名(控制用) | 参数值 | 说明 |
isColumnAlias | true或false,默认为false | 是否导出列别名。 |
isExpCashflow | true或false,默认为false | 是否导出现金流量。 |
isExpEntry | true或false,默认为true | 是否引出凭证分录 |
isExpRecord | true或false,默认为true | 是否引出凭证辅助账行 |
isExpAccountCustomizedProperty | true或false,默认为true | 是否引出科目自定义属性 |
isExpExtendProperty | true或false,默认为true | 是否引出DEP新增属性 |
isCompress | true或false,默认为false | 是否对传输的数据经过压缩处理,当值为true时,返回后使用 com.kingdee.eas.fi.gl.ZipUtils.gunzip(jsonResult)进行解压。如果传输的数据量较大(超过2000行),建义压缩处理。该工具类可以在eas\client\lib\patch\ sp-fi_gl-client.jar中找到。 |
onlyVoucherId | true或false,默认为false | 是否只返回凭证的ID,如果设置为true,则返回结果中的rows只是凭证ID的列表List<String>。可借用该参数实现分批查询:先查出符合条件的凭证ID,将凭证ID分批后,再传单个组织编码和分批凭证ID查凭证数据。注:这是暂时方案,后面可能会调整。 |
batch | true或false,默认为false | 是否分批查询,与onlyVoucherId配合使用,分批查询时,因为前面的查询已经确定了凭证范围,设置为true可跳过一些逻辑提升一点性能。注:分批查询目前只支持单个组织。 |
参数名(过滤用) | 参数值 | 说明 |
companyNumber | 公司编码 | 支持多个,用;分隔。 |
voucherType | 凭证类型编码 | 支持多个,用;分隔。 |
bizStatus | 凭证状态 | 支持多个,用;分隔,如:0;1;2;3;5。 |
voucherId | 凭证ID | 支持多个,用;分隔。 |
importKey | 全局标识 | 支持多个,用;分隔。 |
voucherNumber | 凭证号 | 支持多个,用;分隔。 |
fromVoucherNumber | 开始凭证号 | |
toVoucherNumber | 结束凭证号 | |
fromPeriodNumber | 开始期间 | 如:202203。 |
toPeriodNumber | 结束期间 | 如:202203。 |
fromBookedDate | 开始记账日期 | 如:2022-03-01。 |
toBookedDate | 结束记账日期 | 如:2022-03-31。 |
sourceSys | 来源系统 | 支持多个,用;分隔,如:11,可填的值请参考com.kingdee.eas.framework.SystemEnum。 |
sourceType | 来源类型 | 支持多个,用;分隔,如:4,可填的值请参考com.kingdee.eas.fi.gl.SourceType。。 |
fromBizDate | 开始业务日期 | 如:2022-03-01。 |
toBizDate | 结束业务日期 | 如:2022-03-31。 |
voucherAbstract | 凭证摘要 | 类似匹配。 |
description | 参考信息 | 类似匹配。 |
creator | 制单人编码 | 支持多个,用;分隔。 |
auditor | 审核人编码 | 支持多个,用;分隔。 |
poster | 过账人编码 | 支持多个,用;分隔。 |
cashier | 复核人编码 | 支持多个,用;分隔。 |
entryDescription | 分录摘要 | 类似匹配。 |
currency | 币别编码 | 支持多个,用;分隔。 |
accountNumber | 科目编码 | 支持多个,用;分隔。 |
fromAccountNumber | 开始科目编码 | |
toAccountNumber | 结束科目编码 | |
entryAmount | 分录金额 | |
entryMinAmount | 分录最小金额 | |
entryMaxAmount | 分录最大金额 |
4、凭证引出接口WSVoucher.nExportVoucher返回的数据也是一个Map<key, value>形式的json字符串,如果调用时参数isCompress设置为true,应先对它进行解压,它有以下项目:
项目名 | 项目值 | 说明 |
totalTime | 长整型 | 后端处理总用时,单位毫秒。 |
voucherCount | 整型 | 引出的凭证数量。 |
errs | List<String> | 错误信息,它是过滤条件的校验信息,如果校验失败(也就是说errs有数据),则不会进行导出处理。它的格式为:key[value]:错误信息。 |
rows | List<List<String>> | 凭证数据,它的数据结构和导入的是一样的,导出的数据能直接用来导入,具体字段请参考金蝶EAS_WebService总账_新接口开发指南(二):将凭证引入到EAS系统中。 |
注:基于减少传输数据量的考虑,接口返回的凭证数据为类似表格List<List<String>>形式的二维数据,比较难以理解和解析,附件提供了一个工具类:client.VoucherConverter,可以将该二维数据转换为更易理解和使用的Map<String, Object>形式的对象数据。
5、关于接口的权限
凭证导出时,只涉及登陆用户,默认情况下是不验权的,目前定义了两个系统参数以进行控制:
1、GL_IfcUsePerm_Enable(是否开启接口使用权限):当参数设置为是时,将会校验登陆用户是否具有gl_ifc_voucherExport(凭证引出接口)权限。
2、GL_IfcBizPerm_Enable(是否开启接口业务权限):当参数设置为是时,将会校验登陆用户是否具有gl_voucher_newExport(凭证引出(高级))权限。
注:建议将参数GL_IfcBizPerm_Enable设置为true,对于开启了安全模式的服务器建议将GL_IfcUsePerm_Enable设置为true。
6、其它
1、GUI下的功能:财务会计->总账->凭证处理->凭证引出(高级)与本接口用的是同一套后台。
2、本接口在850,861版本还支持OpenAPI方式的调用,请参考:总账OpenAPI接口说明。
版本迭代说明(不完全统计,新的在上):
补丁号(EAS881) | 发布时间 | 更新内容 |
PT177015 | 2024-07-12 | 修正科目自定义属性“结算方式”的引出。 |
PT177138 | 2024-06-28 | 支持科目自定义属性费用类别,收款人。 |
PT175119 | 2023-12-29 | 优化凭证大量导出报fetched too much rows错误。 |
PT172690 | 2023-11-24 | 凭证引出的科目名称增加显示科目长名称。 优化核算项目取数性能。 增加输出核算项目组合ID。 |
PT174151 | 2023-11-10 | 凭证引出支持引出用户实名。 |
补丁号(EAS861) | 发布时间 | 更新内容 |
PT176934 | 2024-07-12 | 修正科目自定义属性“结算方式”的引出。 |
PT176991 | 2024-06-28 | 支持科目自定义属性费用类别,收款人。 |
PT175161 | 2023-12-29 | 优化凭证大量导出报fetched too much rows错误。 |
PT174365 | 2023-11-24 | 凭证引出的科目名称增加显示科目长名称。 优化核算项目取数性能。 增加输出核算项目组合ID。 |
PT174198 | 2023-11-10 | 凭证引出支持引出用户实名。 |
PT172773 | 2023-08-11 | 调整参数GL_IfcUsePerm_Enable和GL_IfcBizPerm_Enable在权限验证的控制。 |
PT172152 | 2023-06-30 | 增加凭证号排除选项。 |
PT169858 | 2023-02-10 | 支持引出DEP扩展属性;支持指定引出内容(分录,辅助账,科目自定义属性,DEP新增属性)。 |
PT169207 | 2022-12-09 | 支持引出科目自定义属性(客户,供应商,公司,物料)。 |
PT166675 | 2022-11-25 | 增加引出凭证的ID(voucherId)。 修正辅助账行计量单位(measurement)。 |
PT167843 | 2022-09-09 | 修正偶发的提示:没有凭证引出(高级) 业务权限。 |
PT167546 | 2022-08-26 | 增加引出组织名称(companyName),科目名称(accountName)。 |
PT158933 | 2021-12-24 | 优化权限控制;支持分批导出。 |
PT159585 | 2021-11-26 | 增加按部分分录过滤条件。 |
PT157219 | 2021-07-09 | 首次发布。 |
补丁号(EAS850) | 发布时间 | 更新内容 |
PT177392 | 2024-07-12 | 修正科目自定义属性“结算方式”的引出。 |
PT176890 | 2024-06-28 | 支持科目自定义属性费用类别,收款人。 |
PT175327 | 2024-01-12 | 优化凭证大量导出报fetched too much rows错误。 |
PT174456 | 2023-11-24 | 凭证引出的科目名称增加显示科目长名称。 优化核算项目取数性能。 增加输出核算项目组合ID。 |
PT174098 | 2023-11-10 | 凭证引出支持引出用户实名。 |
PT172882 | 2023-08-11 | 调整参数GL_IfcUsePerm_Enable和GL_IfcBizPerm_Enable在权限验证的控制。 |
PT172079 | 2023-06-30 | 增加凭证号排除选项。 |
PT169931 | 2023-02-11 | 支持引出DEP扩展属性;支持指定引出内容(分录,辅助账,科目自定义属性,DEP新增属性)。 |
PT169000 | 2022-12-09 | 支持引出科目自定义属性(客户,供应商,公司,物料)。 |
PT168966 | 2022-11-25 | 增加引出凭证的ID(voucherId),组织名称(companyName),科目名称(accountName)。 修正辅助账行计量单位(measurement)。 |
PT167317 | 2022-09-23 | 修正偶发的提示:没有凭证引出(高级) 业务权限。 |
PT162987 | 2021-12-24 | 优化权限控制;支持分批导出。 |
PT161657 | 2021-11-26 | 增加按部分分录过滤条件。 |
PT159633 | 2021-07-09 | 支持引入引出现金流量冲抵数据,补充资料,附表调整。 |
PT159022 | 2021-06-02 | 首次发布。 |
补丁号(EAS820) | 发布时间 | 更新内容 |
PT177742 | 2024-08-14 | 修正科目自定义属性“结算方式”的引出。 |
PT177221 | 2024-07-12 | 支持科目自定义属性费用类别,收款人。 |
PT175149 | 2023-12-29 | 优化凭证大量导出报fetched too much rows错误。 |
PT174495 | 2023-11-24 | 凭证引出的科目名称增加显示科目长名称。 优化核算项目取数性能。 增加输出核算项目组合ID。 |
PT174089 | 2023-11-10 | 凭证引出支持引出用户实名。 |
PT172972 | 2023-08-25 | 调整参数GL_IfcUsePerm_Enable和GL_IfcBizPerm_Enable在权限验证的控制。 |
PT172126 | 2023-06-30 | 增加凭证号排除选项。 |
PT169937 | 2023-02-10 | 支持引出DEP扩展属性;支持指定引出内容(分录,辅助账,科目自定义属性,DEP新增属性)。 |
PT169268 | 2022-12-09 | 支持引出科目自定义属性(客户,供应商,公司,物料)。 |
PT169103 | 2022-11-25 | 增加引出凭证的ID(voucherId),组织名称(companyName),科目名称(accountName)。 修正辅助账行计量单位(measurement)。 |
PT168049 | 2022-09-23 | 修正偶发的提示:没有凭证引出(高级) 业务权限。 |
PT162939 | 2021-12-24 | 优化权限控制;支持分批导出。 |
PT162613 | 2021-11-26 | 增加按部分分录过滤条件。 |
PT159465 | 2021-07-09 | 支持引入引出现金流量冲抵数据,补充资料,附表调整。 |
PT159425 | 2021-06-25 | 首次发布。 |
补丁号(EAS810) | 发布时间 | 更新内容 |
PT175533 | 2024-01-26 | 优化凭证大量导出报fetched too much rows错误。 凭证引出的科目名称增加显示科目长名称。 优化核算项目取数性能。 增加输出核算项目组合ID。 凭证引出支持引出用户实名。 支持引出DEP扩展属性;支持指定引出内容(分录,辅助账,科目自定义属性,DEP新增属性)。 支持引出科目自定义属性(客户,供应商,公司,物料)。 |
PT174199 | 2023-11-24 | 增加引出凭证的ID(voucherId),组织名称(companyName),科目名称(accountName)。 修正辅助账行计量单位(measurement)。 优化权限控制。 |
PT166981 | 2022-07-15 | 首次发布。 |
补丁号(EAS800) | 发布时间 | 更新内容 |
PT176969 | 2024-06-28 | 支持科目自定义属性费用类别,收款人。 |
PT175184 | 2024-01-12 | 优化凭证大量导出报fetched too much rows错误。 |
PT174518 | 2023-11-24 | 凭证引出的科目名称增加显示科目长名称。 优化核算项目取数性能。 增加输出核算项目组合ID。 |
PT174350 | 2023-11-10 | 凭证引出支持引出用户实名。 |
PT172867 | 2023-08-11 | 调整参数GL_IfcUsePerm_Enable和GL_IfcBizPerm_Enable在权限验证的控制。 |
PT172298 | 2023-06-30 | 增加凭证号排除选项。 |
PT169930 | 2023-02-10 | 支持引出DEP扩展属性;支持指定引出内容(分录,辅助账,科目自定义属性,DEP新增属性)。 |
PT169270 | 2022-12-09 | 支持引出科目自定义属性(客户,供应商,公司,物料)。 |
PT169034 | 2022-11-25 | 增加引出凭证的ID(voucherId),组织名称(companyName),科目名称(accountName)。 修正辅助账行计量单位(measurement)。 |
PT168709 | 2022-10-28 | 增加总账接口使用权限的控制。 |
PT167362 | 2022-09-09 | 修正偶发的提示:没有凭证引出(高级) 业务权限。 |
PT162814 | 2021-12-23 | 优化权限控制;支持分批导出。 |
PT158365 | 2021-11-26 | 增加按部分分录过滤条件。 |
PT159344 | 2021-07-09 | 支持引入引出现金流量冲抵数据,补充资料,附表调整。 |
PT154906 | 2021-06-25 | 首次发布。 |
附件工程:
相关文章:
金蝶EAS_WebService总账_新接口开发指南(一):环境准备
金蝶EAS_WebService总账_新接口开发指南(二):将凭证引入到EAS系统中
金蝶EAS_WebService总账_新接口开发指南(三):将凭证从EAS系统引出
金蝶EAS_WebService总账_新接口开发指南(四):基础资料查询
金蝶EAS_WebService总账_新接口开发指南(五):凭证操作
金蝶EAS_WebService总账_新接口开发指南(六):使用接口查询科目余额
金蝶EAS_WebService总账_新接口开发指南(七):使用接口查询核算项目余额
金蝶EAS_WebService总账_新接口开发指南(八):使用接口查询明细分类账
金蝶EAS_WebService总账_新接口开发指南(三):将凭证从EAS系统引出
本文2024-09-22 18:12:37发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-99316.html