WebAPI报表查询接口在PT-163001补丁中增加新参数"ReturnJsonData",支持返回键值对结构的报表数据查询结果,默认值为false,设为true时返回Json格式。同时支持在FieldsKeys里指定“*”返回所有字段,解决动态字段账表查询难题。发布版本V9,上线日期2024/11/21。
之前的WebAPI“查询报表数据”接口,返回数据行是列表结构的,只有字段值而没有字段名,查看各个字段的对应值不方便。因此在PT-163001补丁中,WebAPI报表查询接口增加新参数"ReturnJsonData",支持返回键值对结构的报表数据查询结果。发布版本:V9;上线日期:2024/11/21。
新参数介绍:
在现有报表查询接口里面增加参数ReturnJsonData,控制是否返回key-value键值对模式。此参数默认值为false,此时数据返回格式与之前相同,仅当其设为true时数据返回Json格式。没有这个参数时查询报表数据返回结果为:['Value1','Value2','Value3',...]的模式,用户希望输出格式可以为JSON格式:
[ {'Key1':'Value1','Key2':'Value2',...}, {'Key1':'Value1','Key2':'Value2',...}, ...]
于是新增此参数以满足这项需求。
操作示例:
例如,需查询的字段集合"FieldKeys"为"FBILLNAME,FBILLNUMBER,FBILLDATE,FSALEORGNAME",当ReturnJsonData值为true时,查询报表数据后返回的结果格式如下图所示:
而当不传入ReturnJsonData参数(默认为false)或ReturnJsonData传入值为false时,查询报表数据后返回的结果格式如下图所示:
补充:FieldsKeys里面指定"*"则返回所有列
通过API查询账表时,由于账表最终字段是动态生成的,元数据中无法事先定义好字段,并且事先定义好的字段在最终结果表中并不一定存在,因此用户无法在查询结果出来之前得到结果集中具体的字段名,也就无法事先在FieldsKeys中指定对应的字段名。这一问题导致目前动态字段的账表都很难使用API来查询。
因此,针对Json格式返回结果(ReturnJsonData为true时),WebAPI报表查询接口支持在FieldsKeys里面指定“*”,这样就会把临时表中所有字段都返回。
推荐阅读