金蝶EAS_WebService总账_新接口开发指南(七):使用接口查询核算项目余额
概述
核算项目的期初余额,期间发生额,期未余额都是比较常用的数据,特别是在进行多系统集成时,往往需要将这些数据取出与第三方系统进行比较对数。以往我们想要获取这些数据,要么通过EAS的报表进行查询,要么通过sql脚本从后台查询,前者只能是人工处理,不方便集成,后者因为逻辑复杂sql难写,容易出错。为了更加方便第三方系统与EAS进行集成,简化二开开发,我们提供新接口来查询此类数据。本指南将介绍如何使用接口查询核算项目余额数据。
1、如果还没有下载凭证用wsdl服务描述文件和导入架包,请参考金蝶EAS_WebService总账_新接口开发指南(二):将凭证引入到EAS系统中文章中的第1、2步。
2、使用接口WSVoucher.nGetBalance查询核算项目余额数据,以下是相关的代码片段(完整代码在附件工程中的类client.GetAsstActBalanceTest):
如果看到下面类似的信息,说明查询成功:
接口的参数jsonParams它是一个Map<key, value>形式的json字符串,目前支持以下参数项:
参数名 | 参数值 | 说明 |
isCompress | true或false,默认为false | 是否对传输的数据经过压缩处理,当值为true时,返回后使用com.kingdee.eas.fi.gl.ZipUtils.gunzip(jsonResult)进行解压。如果传输的数据量较大(超过2000行),建义压缩处理。该工具类可以在eas\client\lib\patch\ sp-fi_gl-client.jar中找到。 |
rptType | AsstActBalance | 必填,核算项目余额表。 |
companyNumber | 公司编码 | 必填(没提供orgTreeId时),支持虚体,支持多组织,查多个时请使用;分隔。查虚体时,通常指定一个上级即可,系统会将它下面的所有实体数据汇总,如果指定多个虚体,不要出现多个同级的最上级虚体,即保证所有组织在一颗树上。另外,虚体多组织查询时,下级组织有范围过滤的作用,比如有1级组织org1,它下面有2级组织org21,org22,org23,传递org1;org21时,org22,org23将会被排除。 |
companyDisplayMode | level或details,默认为level | 选填,展示方式,level:逐级,companyNumber为虚体时有效,是指将数据从未级组织一级一级上向汇总到最上级,details:平级,是指将数据直接从未级组织汇总到最上级,中间级的虚体不展示。 |
companyLevel | 大于等于0的整数,默认为0 | 选填,虚体查询逐级显示有效,它起到过滤作用,比如从最上级虚体到未端组织有5级数据,0不过滤,1只显示最上级数据,2只显示上面的两级数据,3只显示上面的三级数据,... |
orgTreeId | 合并范围的ID | 选填,合并范围的ID,当提供合并范围时,优先使用合并范围过滤组织,否则使用companyNumber过滤组织。 |
unionNumber | 合并单元编码 | 选填,合并范围下合并单元的编码,支持多个,用;分隔。 |
periodTypeNumber | 期间类型编码 | 选填,默认为组织当前使用的期间类型。 |
fromPeriodNumber | 开始期间编码 | 选填,如果不填,默认为公司的当前期间。 |
toPeriodNumber | 结束期间编码 | 选填,如果不填,默认为公司的当前期间。 |
currencyNumber | 币别编码 | 选填,空表示查询所有原币币别。 |
balType | 1或5,默认为5 | 选填,1:包含未过账余额,5:过账余额。 |
notIncludePLVoucher | true或false,默认为false | 选填,不包含结转损益凭证。 |
accountTableNumber | 科目表编码 | 选填,默认为组织当前的科目表。 |
fromAccountNumber | 开始科目编码 | 选填。 |
toAccountNumber | 结束科目编码 | 选填。 |
accountNumber | 科目编码 | 选填,支持多个,用;分隔,这个会严格匹配科目的编码,与上面的from、to有所区别,指定上级科目,目前的实现不会显示下级科目。 |
fromAccountLevel | 大于等于0的整数,默认为0 | 选填,科目开始级次,它起到过滤作用,0不过滤。 |
toAccountLevel | 大于等于0的整数,默认为0 | 选填,科目结束级次,它起到过滤作用,0不过滤,它的值应大于等于fromAccountLevel。 |
showOnlyLeafAccount | true或false,默认为false | 选填,只显示明细科目。 |
notShowZero | true或false,默认为false | 选填,余额为零不显示。 |
notShowNoCurrent | true或false,默认为false | 选填,无发生不显示。 |
notShowZeroAndNoCurrent | true或false,默认为false | 选填,余额为零且无发生不显示。 |
notShowNoYear | true或false,默认为false | 选填,本年无发生不显示。 |
notShowZeroAndNoYear | true或false,默认为false | 选填,余额为零且本年无发生不显示。 |
showFor | true或false,默认为false | 选填,是否显示原币。 |
showLocal | true或false,默认为false | 选填,是否显示本位币。 |
showRpt | true或false,默认为false | 选填,是否显示报告币。 |
showQty | true或false,默认为false | 选填,是否显示数量列。 |
showByStandardMU | true或false,默认为false | 选填,showQty为true时有效,转换为标准计量单位显示。 |
showYear | true或false,默认为false | 选填,显示本年数据。 |
showCompanyLongNumber | true或false,默认为false | 选填,显示公司长编码。 |
showCompanyLevel | true或false,默认为false | 选填,显示公司级次。 |
showCompanyName | true或false,默认为false | 选填,显示公司名称。 |
showCompanyBizUnit | true或false,默认为false | 选填,显示公司是否实体。 |
showCurrencyNumber | true或false,默认为false | 选填,显示币别编码。 |
showCurrencyName | true或false,默认为false | 选填,显示币别名称。 |
showAccountName | true或false,默认为false | 选填,显示科目名称。 |
showAccountLevel | true或false,默认为false | 选填,显示科目级次。 |
showAccountDc | true或false,默认为false | 选填,显示科目余额方向。 |
showBizCode | true或false,默认为false | 选填,使用客商分析码。 |
fromBizCode | 开始客户分析码 | 选填。 |
toBizCode | 结束客户分析码 | 选填。 |
bizCode | 客户分析码 | 选填。 |
showCompose | true或false,默认为false | 选填,带数量核算的数据和不带数量核算的数据是否一并显示。 |
asstActTypes | 核算项目列表 | 如果没有使用客商分析码,该项必填,可以添加多个,在下面的表格具体说明。 |
showAsstActNumber | true或false,默认为false | 选填,显示核算项目编码。 |
showAsstActLongNumber | true或false,默认为false | 选填,显示核算项目长编码。 |
showAsstActLevel | true或false,默认为false | 选填,显示核算项目级次 |
showAsstActName | true或false,默认为false | 选填,显示核算项目名称 |
updateBalance | true或false,默认为false | 选填,查询前是否先更新余额。 |
threadCount | 大于等于1小于等于64的整数 | 选填,查询用线程数,受系统参数 GL_RptMax_ThreadCount限制,应小于等于GL_RptMax_ThreadCount值。 |
asstActTypes具体项 | ||
type | 核算项目类型编码 | 必填。 |
from | 开始核算项目编码 | 选填。 |
to | 结束核算项目编码 | 选填。 |
number | 核算项目编码 | 选填。 |
standard | 分类标准编码 | 选填,如果指定了分类标准,逐级显示时将使用该分类向上汇总。 |
group | 分类编码 | 选填。 |
displayMode | LEVEL或LEAF,默认LEVEL | 选填,显示模式,LEVEL逐级,LEAF明细。 |
level | 大于等于0的整数 | 选填,级次,0不过滤,只显示小于该级次的核算项目。 |
接口返回的数据也是一个Map<key, value>形式的json字符串,如果调用时参数isCompress设置为true,应先对它进行解压,它有以下项目:
项目名 | 项目值 | 说明 |
totalTime | 长整型 | 后端处理总用时,单位毫秒。 |
errs | List<String> | 错误信息,它是过滤条件的校验信息,如果校验失败(也就是说errs有数据),则不会进行查询处理。它的格式为:key[value]:错误信息。 |
rows | List<List<String>> | 核算项目余额数据列表。 |
batchNames | List<String> | 分批名列表,核算项目余额数据可能量比较大,后台会将数据进行分批,如果返回值有内容,你需要进行批次查询,分批大小由系统参数GL_RptMax_BatchSize决定,单位为万行。服务端分批时,是将数据缓存到文件系统上,所以一旦返回分批名称,请一定要执行批次查询,要不然分批缓存将无法清除。 |
批次查询也是调用同样的接口,只是参数不同:
参数名 | 参数值 | 说明 |
isCompress | true或false,默认为false | 是否对返回的数据进行压缩。 |
rptType | getBatch | 必填。 |
batchName | 批次名 | 必填。 |
下面是核算项目余额的数据项目说明:
项目名 | 说明 |
asstActNumber1 | 核算项目编码,如果asstActTypes添加了多组,该项及下面的三项也会出现多组 |
asstActLongNumber1 | 核算项目长编码 |
asstActLevel1 | 核算项目级次 |
asstActName1 | 核算项目名称 |
isBizUnit | 是否实体 |
accountNumber | 科目编码 |
accountName | 科目名称 |
accountLevel | 科目级次 |
accountDc | 科目余额方向 |
currencyNumber | 币别编码 |
currencyName | 币别名称 |
companyNumber | 公司编码 |
companyLongNumber | 公司长编码 |
companyName | 公司名称 |
companyLevel | 公司级次 |
yearBeginBalanceFor | 年初余额(原币) |
beginBalanceFor | 期初余额(原币) |
debitFor | 本期借方(原币) |
creditFor | 本期贷方(原币) |
yearDebitFor | 本年借方(原币) |
yearCreditFor | 本年贷方(原币) |
endBalanceFor | 期未余额(原币) |
yearBeginBalanceLocal | 年初余额(本位币) |
beginBalanceLocal | 期初余额(本位币) |
debitLocal | 本期借方(本位币) |
creditLocal | 本期贷方(本位币) |
yearDebitLocal | 本年借方(本位币) |
yearCreditLocal | 本年贷方(本位币) |
endBalanceLocal | 期未余额(本位币) |
yearBeginBalanceRpt | 年初余额(报告币) |
beginBalanceRpt | 期初余额(报告币) |
debitRpt | 本期借方(报告币) |
creditRpt | 本期贷方(报告币) |
yearDebitRpt | 本年借方(报告币) |
yearCreditRpt | 本年贷方(报告币) |
endBalanceRpt | 期未余额(报告币) |
measureUnitName | 计量单位名称 |
yearBeginQty | 年初数量 |
beginQty | 期初数量 |
debitQty | 本期借方数量 |
creditQty | 本期贷方数量 |
yearDebitQty | 本年借方数量 |
yearCreditQty | 本年贷方数量 |
endQty | 期未数量 |
版本迭代说明(不完全统计,新的在上):
补丁号(EAS861) | 发布时间 | 更新内容 |
PT168486 | 2022-10-28 | 修正勾选不包含结转损益凭证,且开始期间不是从01期开始,年初数的计算逻辑。 |
PT168279 | 2022-10-14 | 虚体查询时增加限制只允许出现一颗组织树。 查询结果增加输出组织的最高级次companyTopLevel。 权限校验优化。 |
PT168028 | 2022-09-23 | 增加按合并范围过滤组织。 逐级核算项目汇总时,不再将其它核算项目也进行分组。 调整核算项目排序。 |
PT167546 | 2022-08-26 | 首次发布 |
补丁号(EAS850) | 发布时间 | 更新内容 |
PT168509 | 2022-10-28 | 修正勾选不包含结转损益凭证,且开始期间不是从01期开始,年初数的计算逻辑。 |
PT167841 | 2022-10-14 | 虚体查询时增加限制只允许出现一颗组织树。 查询结果增加输出组织的最高级次companyTopLevel。 权限校验优化。 |
PT167317 | 2022-09-23 | 增加按合并范围过滤组织。 逐级核算项目汇总时,不再将其它核算项目也进行分组。 调整核算项目排序。 |
PT167540 | 2022-08-26 | 首次发布 |
补丁号(EAS820) | 发布时间 | 更新内容 |
PT168617 | 2022-10-28 | 修正勾选不包含结转损益凭证,且开始期间不是从01期开始,年初数的计算逻辑。 |
PT168234 | 2022-10-14 | 虚体查询时增加限制只允许出现一颗组织树。 查询结果增加输出组织的最高级次companyTopLevel。 权限校验优化。 |
PT168049 | 2022-09-23 | 增加按合并范围过滤组织。 逐级核算项目汇总时,不再将其它核算项目也进行分组。 调整核算项目排序。 |
PT166472 | 2022-08-26 | 首次发布 |
补丁号(EAS810) | 发布时间 | 更新内容 |
? | ? | 未发布 |
补丁号(EAS800) | 发布时间 | 更新内容 |
PT168709 | 2022-10-28 | 修正勾选不包含结转损益凭证,且开始期间不是从01期开始,年初数的计算逻辑。 虚体查询时增加限制只允许出现一颗组织树。 查询结果增加输出组织的最高级次companyTopLevel。 增加总账接口使用权限的控制。 |
PT167703 | 2022-09-22 | 增加按合并范围过滤组织。 逐级核算项目汇总时,不再将其它核算项目也进行分组。 调整核算项目排序。 |
PT167362 | 2022-08-26 | 首次发布 |
注:本接口是新开发的接口,有些东西还没有考虑全,不是特别稳定,后续应该还会有所调整。
附件工程:
相关文章:
金蝶EAS_WebService总账_新接口开发指南(一):环境准备
金蝶EAS_WebService总账_新接口开发指南(二):将凭证引入到EAS系统中
金蝶EAS_WebService总账_新接口开发指南(三):将凭证从EAS系统引出
金蝶EAS_WebService总账_新接口开发指南(四):基础资料查询
金蝶EAS_WebService总账_新接口开发指南(五):凭证操作
金蝶EAS_WebService总账_新接口开发指南(六):使用接口查询科目余额
金蝶EAS_WebService总账_新接口开发指南(七):使用接口查询核算项目余额
金蝶EAS_WebService总账_新接口开发指南(八):使用接口查询明细分类账
金蝶EAS_WebService总账_新接口开发指南(七):使用接口查询核算项目余额
本文2024-09-22 18:23:23发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-100460.html