分页报表取数WebApi接口说明

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

分页报表取数WebApi接口说明

关键字:WEBAPI;报表API接口;库存账龄分析报表;物料收发明细报表;物料收发汇总报表;

接口说明:

       分页报表取数接口提供一种供第三方通过WebAPI方式获取分页报表查询结果的能力,可以省去了解报表具体取数细节、二次开发的工作,便于对接第三方系统以及数据再加工。一般情况下,所有分页账表本接口都适用,不限于物料收发明细、物料收发汇总、库存台账、库存汇总统计、库存账龄分析、库龄分析汇总等报表,由于开发以及测试用的都是库存报表,其他模块的分页报表未经验证,如发现问题也可在下述评论区进行反馈,后续版本进行迭代更新。


接口地址:

        http://{服务器地址}/k3cloud/Kingdee.K3.SCM.WebApi.ServicesStub.StockReportQueryService.GetReportData,Kingdee.K3.SCM.WebApi.ServicesStub.common.kdsvc


支持版本:

       2022年3月及之后的补丁,版本号>=PT-146906 [8.0.0.202203]


版本更新记录

        2022年11月补丁,版本:PT-146930 [8.1.0.20221110] 更新以下内容

        1)支持设置返回字段 FieldKeys;

        2)快捷过滤支持单据体类型条件设置;

        3)修复已知问题;

        2022年8月补丁,版本:PT-146922 [8.0.0.20220811] 更新以下内容

        1)接口支持分页查询;

        2)接口支持高级过滤查询;

        3)修复已知BUG;

            注:传了CurQueryId值后不再应用过滤条件,会从首次查询结果中取出指定分页范围内数据


        更新后的过滤参数说明如下:

参数名类型说明
FORMID
String报表FORMID,必录
FSCHEMEIDString过滤方案ID,且不能是默认方案,必录
QuicklyConditionArray对应于过滤框中的快捷页签以及选项页签中的条件,非必录
       FieldNameString
快捷过滤字段绑定属性1
       FieldValueString具体数值
MoreConditionArray高级过滤条件,对应于过滤框中【条件】、【高级】条件,非必录
       LeftString左括号(,有则填,无则留空
       FieldNameString
字段名,【条件】或【高级】页签中的字段标识
       CompareString比较符,如=、>、<
       FieldValueString
过滤值
       RightString右括号)
       LogicString逻辑词,AND或者OR
StartRowInt开始行索引,从0开始,非必录
LimitInt最大返回行数,最大10000,非必录
CurQueryIdString本次查询标识ID,在间隔时间比较短且进行分页查询时使用,根据查询返回的CurQueryId进行填写,非必录
FieldKeysString设置返回字段,多个字段使用英文逗号分隔,为空返回当前过滤方案所有字段,非必录


JSON格式:

{
    "FORMID": "报表FORMID,必录",
    "FSCHEMEID": "过滤方案ID,且不能是默认方案,必录",
    "QuicklyCondition": [/*对应于过滤框中的快捷页签以及选项页签中的条件,非必录*/
        {
            "FieldName": "快捷过滤字段绑定属性1",
            "FieldValue": "具体数值"
        },
        {
            "FieldName": "快捷过滤字段绑定属性2",
            "FieldValue": "具体数值"
        }
    ],
    "MoreCondition": [/*高级过滤条件,对应于过滤框中【条件】、【高级】条件,非必录*/
        {
            "Left": "左括号(,有则填,无则留空",
            "FieldName": "字段名,【条件】或【高级】页签中的字段标识",
            "Compare": "比较符,如=、>、<",
            "FieldValue": "过滤值",
            "Right": "右括号)",
            "Logic": "逻辑词,AND或者OR"
        },
        {
            "Left": "左括号(,有则填,无则留空",
            "FieldName": "字段名",
            "Compare": "比较符,如=、>、<",
            "FieldValue": "过滤值",
            "Right": "右括号)",
            "Logic": "逻辑词,AND或者OR"
        }
    ],
    "StartRow": "开始行索引,从0开始,非必录",
    "Limit": "最大返回行数,最大10000,非必录",
    "CurQueryId": "本次查询标识ID,在间隔时间比较短且进行分页查询时使用,根据查询返回的CurQueryId进行填写,非必录",
    "FieldKeys":"设置返回字段,多个字段使用英文逗号分隔,为空返回当前过滤方案所有字段,非必录"
}

         *注:版本升级后如果需要返回行数超10000,也就是不进行分页,可执行以下SQL:

INSERT INTO T_BAS_SYSTEMPROFILE( FCATEGORY ,FORGID ,FACCOUNTBOOKID ,FKEY ,FVALUE ,FACCTPOLICYID,FACCTSYSTEMID) VALUES 
('STK' ,0 ,0 ,'SCMAPIREPORTPAGESETTING' ,N'1' ,0 ,0)




版本更新记录结束


接口功能:

       根据传入条件获取分页报表数据。

       注意事项:

       1)查询结果需要进行序列化成json,数据量太大会给系统造成压力,需要注意查询时间范围;

       2)报表查询本身数据比较耗时的操作,要注意调用接口频率;


接口参数:

{
    "FORMID": "报表FORMID",
    "FSCHEMEID": "过滤方案ID",
    "QuicklyCondition": [
        {
            "FieldName": "快捷过滤字段绑定属性1",
            "FieldValue": "具体数值"
        },
        {
            "FieldName": "快捷过滤字段绑定属性2",
            "FieldValue": "具体数值"
        }
    ]
}

(*注:过滤方案的主键值,可通过该SQL语句查询得到:

SELECT FSCHEMEID,FSCHEMENAME FROM T_BAS_FILTERSCHEME WHERE FFORMID='报表FORMID' )


调用示例(物料收发明细):

参数:

{
  "parameters": ["{\"FORMID\":\"STK_StockDetailRpt\",\"FSCHEMEID\":\"5fb2412a4f22a3\",
                             \"QuicklyCondition\":[{\"FieldName\":\"BeginMaterialId\",\"FieldValue\":\"041602\"},
                             {\"FieldName\":\"EndMaterialId\",\"FieldValue\":\"041602\"},
                             {\"FieldName\":\"BeginDate\",\"FieldValue\":\"2014-08-01\"},
                             {\"FieldName\":\"EndDate\",\"FieldValue\":\"2020-12-01\"}]}"]
}


分页报表API接口参数说明.webp



这个有点问题 我获取数据 总条数是45210条 然后我每页10000条的请求 结果请求到第5页直接返回45210条数据


他怎么说我是个列名啊我的天


这么操作是不是私有云的?公有云能这样操作么???


老师您好,我这边测试了物流收发汇总表能取数,但是调用【核算维度明细账】报错。过滤方案是当前登录用户的,所以不存在过滤方案冲突的问题。金蝶版本8.1 2023.04.20


您好   我这里显示调用的目标异常  请先登录系统  有啥解决的办法吗


image.webp

加高参就报错   去掉就可以


您好您好,我查询的数据体量比较大,大概一次有30几万条,因为接口一次只能返回1W的数据,所以我在二开时候做了分页循环的查询,但是中间循环到10次左右就会出现这个报错(10W以内没有碰到过)不知道有没有什么好的方法能处理,版本是22年8月的版本



java sdk 调用 webapi 库存账龄分析表 的实例如下:


ParametersBean parametersBean = ParametersBean();
parametersBean.setFORMID(getFormId());
parametersBean.setFSCHEMEID(schemeId); parametersBean.setFieldKeys();

String res = execute(getRequestUrl(), Object[]{parametersBean});
.info(, res);

RptResVo<KczlfxbRpt> resVo = .fromJson(res, TypeToken<RptResVo<KczlfxbRpt>>() {}.getType());


image.webp

image.webp


image.webp



image.webp

折旧明细表,调用该接口报错

分页报表取数WebApi接口说明

关键字:WEBAPI;报表API接口;库存账龄分析报表;物料收发明细报表;物料收发汇总报表;接口说明: 分页报表取数接口提供一种供第三方...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息