金蝶EAS_WebService总账_新接口开发指南(七):使用接口查询核算项目余额

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-22浏览:1

金蝶EAS_WebService总账_新接口开发指南(七):使用接口查询核算项目余额

概述

  核算项目的期初余额,期间发生额,期未余额都是比较常用的数据,特别是在进行多系统集成时,往往需要将这些数据取出与第三方系统进行比较对数。以往我们想要获取这些数据,要么通过EAS的报表进行查询,要么通过sql脚本从后台查询,前者只能是人工处理,不方便集成,后者因为逻辑复杂sql难写,容易出错。为了更加方便第三方系统与EAS进行集成,简化二开开发,我们提供新接口来查询此类数据。本指南将介绍如何使用接口查询核算项目余额数据。


1、如果还没有下载凭证用wsdl服务描述文件和导入架包,请参考金蝶EAS_WebService总账_新接口开发指南(二):将凭证引入到EAS系统中文章中的第1、2步。


2、使用接口WSVoucher.nGetBalance查询核算项目余额数据,以下是相关的代码片段(完整代码在附件工程中的类client.GetAsstActBalanceTest):

如果看到下面类似的信息,说明查询成功:


接口的参数jsonParams它是一个Map<key, value>形式的json字符串,目前支持以下参数项:

参数名参数值说明
isCompresstrue或false,默认为false是否对传输的数据经过压缩处理,当值为true时,返回后使用com.kingdee.eas.fi.gl.ZipUtils.gunzip(jsonResult)进行解压。如果传输的数据量较大(超过2000行),建义压缩处理。该工具类可以在eas\client\lib\patch\ sp-fi_gl-client.jar中找到。
rptTypeAsstActBalance必填,核算项目余额表。
companyNumber公司编码必填(没提供orgTreeId时),支持虚体,支持多组织,查多个时请使用;分隔。查虚体时,通常指定一个上级即可,系统会将它下面的所有实体数据汇总,如果指定多个虚体,不要出现多个同级的最上级虚体,即保证所有组织在一颗树上。另外,虚体多组织查询时,下级组织有范围过滤的作用,比如有1级组织org1,它下面有2级组织org21,org22,org23,传递org1;org21时,org22,org23将会被排除。
companyDisplayModelevel或details,默认为level选填,展示方式,level:逐级,companyNumber为虚体时有效,是指将数据从未级组织一级一级上向汇总到最上级,details:平级,是指将数据直接从未级组织汇总到最上级,中间级的虚体不展示。
companyLevel大于等于0的整数,默认为0选填,虚体查询逐级显示有效,它起到过滤作用,比如从最上级虚体到未端组织有5级数据,0不过滤,1只显示最上级数据,2只显示上面的两级数据,3只显示上面的三级数据,... 
orgTreeId合并范围的ID选填,合并范围的ID,当提供合并范围时,优先使用合并范围过滤组织,否则使用companyNumber过滤组织。
unionNumber合并单元编码选填,合并范围下合并单元的编码,支持多个,用;分隔。
periodTypeNumber期间类型编码选填,默认为组织当前使用的期间类型。
fromPeriodNumber开始期间编码选填,如果不填,默认为公司的当前期间。
toPeriodNumber结束期间编码选填,如果不填,默认为公司的当前期间。
currencyNumber
币别编码选填,空表示查询所有原币币别。
balType1或5,默认为5选填,1:包含未过账余额,5:过账余额。
notIncludePLVoucher
true或false,默认为false选填,不包含结转损益凭证。
accountTableNumber
科目表编码选填,默认为组织当前的科目表。
fromAccountNumber
开始科目编码选填。
toAccountNumber结束科目编码选填。
accountNumber科目编码选填,支持多个,用;分隔,这个会严格匹配科目的编码,与上面的from、to有所区别,指定上级科目,目前的实现不会显示下级科目。
fromAccountLevel大于等于0的整数,默认为0选填,科目开始级次,它起到过滤作用,0不过滤。
toAccountLevel大于等于0的整数,默认为0选填,科目结束级次,它起到过滤作用,0不过滤,它的值应大于等于fromAccountLevel。
showOnlyLeafAccounttrue或false,默认为false选填,只显示明细科目。
notShowZerotrue或false,默认为false选填,余额为零不显示。
notShowNoCurrenttrue或false,默认为false选填,无发生不显示。
notShowZeroAndNoCurrenttrue或false,默认为false选填,余额为零且无发生不显示。
notShowNoYeartrue或false,默认为false选填,本年无发生不显示。
notShowZeroAndNoYeartrue或false,默认为false选填,余额为零且本年无发生不显示。
showFortrue或false,默认为false选填,是否显示原币。
showLocaltrue或false,默认为false选填,是否显示本位币。
showRpttrue或false,默认为false选填,是否显示报告币。
showQtytrue或false,默认为false选填,是否显示数量列。
showByStandardMUtrue或false,默认为false选填,showQty为true时有效,转换为标准计量单位显示。
showYear
true或false,默认为false选填,显示本年数据。
showCompanyLongNumbertrue或false,默认为false选填,显示公司长编码。
showCompanyLeveltrue或false,默认为false选填,显示公司级次。
showCompanyNametrue或false,默认为false选填,显示公司名称。
showCompanyBizUnittrue或false,默认为false选填,显示公司是否实体。
showCurrencyNumbertrue或false,默认为false选填,显示币别编码。
showCurrencyNametrue或false,默认为false选填,显示币别名称。
showAccountNametrue或false,默认为false选填,显示科目名称。
showAccountLeveltrue或false,默认为false选填,显示科目级次。
showAccountDctrue或false,默认为false选填,显示科目余额方向。
showBizCodetrue或false,默认为false选填,使用客商分析码。
fromBizCode开始客户分析码选填。
toBizCode结束客户分析码选填。
bizCode客户分析码选填。
showComposetrue或false,默认为false选填,带数量核算的数据和不带数量核算的数据是否一并显示。
asstActTypes核算项目列表如果没有使用客商分析码,该项必填,可以添加多个,在下面的表格具体说明。
showAsstActNumbertrue或false,默认为false选填,显示核算项目编码。
showAsstActLongNumbertrue或false,默认为false选填,显示核算项目长编码。
showAsstActLeveltrue或false,默认为false选填,显示核算项目级次
showAsstActNametrue或false,默认为false选填,显示核算项目名称
updateBalancetrue或false,默认为false选填,查询前是否先更新余额。
threadCount大于等于1小于等于64的整数
选填,查询用线程数,受系统参数 GL_RptMax_ThreadCount限制,应小于等于GL_RptMax_ThreadCount值。
asstActTypes具体项

type核算项目类型编码必填。
from开始核算项目编码选填。
to结束核算项目编码选填。
number核算项目编码选填。
standard分类标准编码选填,如果指定了分类标准,逐级显示时将使用该分类向上汇总。
group分类编码选填。
displayModeLEVEL或LEAF,默认LEVEL
选填,显示模式,LEVEL逐级,LEAF明细。
level大于等于0的整数选填,级次,0不过滤,只显示小于该级次的核算项目。


接口返回的数据也是一个Map<key, value>形式的json字符串,如果调用时参数isCompress设置为true,应先对它进行解压,它有以下项目:

项目名
项目值说明
totalTime长整型后端处理总用时,单位毫秒。
errsList<String>错误信息,它是过滤条件的校验信息,如果校验失败(也就是说errs有数据),则不会进行查询处理。它的格式为:key[value]:错误信息。
rowsList<List<String>>核算项目余额数据列表。
batchNames
List<String>分批名列表,核算项目余额数据可能量比较大,后台会将数据进行分批,如果返回值有内容,你需要进行批次查询,分批大小由系统参数GL_RptMax_BatchSize决定,单位为万行。服务端分批时,是将数据缓存到文件系统上,所以一旦返回分批名称,请一定要执行批次查询,要不然分批缓存将无法清除。

批次查询也是调用同样的接口,只是参数不同:

参数名参数值说明
isCompresstrue或false,默认为false是否对返回的数据进行压缩。
rptTypegetBatch必填。
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)发布时间更新内容
PT1684862022-10-28修正勾选不包含结转损益凭证,且开始期间不是从01期开始,年初数的计算逻辑。
PT1682792022-10-14

虚体查询时增加限制只允许出现一颗组织树。

查询结果增加输出组织的最高级次companyTopLevel。

权限校验优化。

PT1680282022-09-23

增加按合并范围过滤组织。

逐级核算项目汇总时,不再将其它核算项目也进行分组。

调整核算项目排序。

PT1675462022-08-26首次发布
补丁号(EAS850)发布时间更新内容
PT1685092022-10-28修正勾选不包含结转损益凭证,且开始期间不是从01期开始,年初数的计算逻辑。
PT1678412022-10-14

虚体查询时增加限制只允许出现一颗组织树。

查询结果增加输出组织的最高级次companyTopLevel。

权限校验优化。

PT1673172022-09-23

增加按合并范围过滤组织。

逐级核算项目汇总时,不再将其它核算项目也进行分组。

调整核算项目排序。

PT1675402022-08-26首次发布
补丁号(EAS820)发布时间更新内容
PT1686172022-10-28修正勾选不包含结转损益凭证,且开始期间不是从01期开始,年初数的计算逻辑。
PT1682342022-10-14

虚体查询时增加限制只允许出现一颗组织树。

查询结果增加输出组织的最高级次companyTopLevel。

权限校验优化。

PT1680492022-09-23

增加按合并范围过滤组织。

逐级核算项目汇总时,不再将其它核算项目也进行分组。

调整核算项目排序。

PT1664722022-08-26首次发布
补丁号(EAS810)发布时间更新内容
??未发布
补丁号(EAS800)发布时间更新内容
PT1687092022-10-28

修正勾选不包含结转损益凭证,且开始期间不是从01期开始,年初数的计算逻辑。

虚体查询时增加限制只允许出现一颗组织树。

查询结果增加输出组织的最高级次companyTopLevel。

增加总账接口使用权限的控制。

PT1677032022-09-22

增加按合并范围过滤组织。

逐级核算项目汇总时,不再将其它核算项目也进行分组。

调整核算项目排序。

PT1673622022-08-26首次发布

注:本接口是新开发的接口,有些东西还没有考虑全,不是特别稳定,后续应该还会有所调整。


附件工程:

EASWebService_GL_20221213.zip


相关文章:

金蝶EAS_WebService总账_新接口开发指南(一):环境准备

金蝶EAS_WebService总账_新接口开发指南(二):将凭证引入到EAS系统中

金蝶EAS_WebService总账_新接口开发指南(三):将凭证从EAS系统引出

金蝶EAS_WebService总账_新接口开发指南(四):基础资料查询

金蝶EAS_WebService总账_新接口开发指南(五):凭证操作

金蝶EAS_WebService总账_新接口开发指南(六):使用接口查询科目余额

金蝶EAS_WebService总账_新接口开发指南(七):使用接口查询核算项目余额

金蝶EAS_WebService总账_新接口开发指南(八):使用接口查询明细分类账

金蝶EAS_WebService总账_新接口开发指南(九):使用接口查询辅助明细账

总账OpenAPI接口说明

金蝶EAS_WebService总账_新接口开发指南(七):使用接口查询核算项目余额

概述  核算项目的期初余额,期间发生额,期未余额都是比较常用的数据,特别是在进行多系统集成时,往往需要将这些数据取出与第三方系统进...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息