EAS Cloud 合并报表获取报表项目数据二开最佳实践
一、业务场景
经常有客户第三方系统需要使用EAS Cloud 合并报表项目数据进行分析及出具相关分析报告;而EAS Cloud 合并报表 中项目数据是存储在动态横表中,存储的数据库表名不定,使用ETL工具很难把需要的报表项目数据同步到第三方,而使用旧的Open API接口取数比较复杂,对于二开人员比较难掌握;现提供一种新的简单方便的获取EAS Cloud 合并报表项目数据的二开方法。
二、实践思路
1、标准产品中报表在保存项目数据时,同步保存数据到一张项目数据宽表;
2、二开处理(两种方式)
1、通过第三方ETL工具直接从EAS Cloud系统报表项目宽表中拉数据(不需要编码);
2、编码通过OPEN API接口从报表项目宽表中取数据(需要编码);
三、详细设计
1、说明使用ETL工具直接从EAS Cloud项目表中抽取数据所需的源表数据结构如下:
表名:T_Csl_RptItemData
其中字段FDATASOURCE(报表类型)对应的值如下:
2、OPEN API接口定义如下:
接口:CslRptOpenApiFacade-getRptItemData
参数:
分两部分:第一部分:条件参数,不需要所有的都设置,只需要设置自己需要的参数
第二部分:需要返回的字段参数
[ { --查询的条件参数
'templateName': '模板名称',
'templateNumber': '模板编码',
'year': '年',
'period': '期',
'periodType':'期间类型 1:日报 2:周报 3:月报 4:季报 5:半年报 6:年报',
‘companyNumber’:’公司编码’,
‘currencyNumber’:’币别编码’,
‘itemNumber’:’报表项目编码’,
‘dataElementNumber’:’取数类型编码’,
‘dataSource’:’报表类型 1:普通报表 2:汇总报表 3:合并报表 4:工作底稿’,
‘isAdjusted’:’是否取调整后值 0:调整前值 1:调整值 2:调整后值’,
‘commitstatus’:’提交状态 1未提交 2提交 3集团确认’,
‘sheetName’:’表页名称’
}
[ --需要返回的字段值
‘companyNumber’, -公司编码
‘companyName’, --公司名称
’currencyNumber’, --币别编码
‘currencyName’, --币别名称
‘itemNumber’, --报表项目编码
‘itemName’, --报表项目名称
‘dataElementNumber’,--取数类型编码
‘dataElementName’, --取数类型名称
‘year’, --年
‘period’, --期
‘value’ --金额
]
]
返回值:根据传的要取的字段返回对应字段数据,按传送字段顺序返回
{"errCode":0,
"errMsg":"执行成功",
"errStackTrace":null,
"data":"{\"taskId\":null,\"result\":[[\"主营业务利润\",\"本期发生数\",\"每文深圳南山分公司\",\"人民币\",\"主营业务利润\",\"AMOUNT\",\"1265135.11\"],[\"营业费用\",\"本期发生数\",\"每文深圳南山分公司\",\"人民币\",\"营业费用\",\"AMOUNT\",\"96368.62\"]]}",
"description":null,
"description_cn":null}
四、代码样例
由于每种ETL工具操作不同,对于通过ETL抽取数据操作方式不做说明,此处只说明使用OPEN API接口实现二开取数方式;
1、引入依赖jar包
openapi-client.jar
2、编码
五、注意事项
1、此文档中描述OPEN API接口只有880及以上版本支持;
2、合并报表项目数据表T_Csl_RptItemData只在850及以上版本支持;
相关支持补丁见(六点补丁影响)
六、补丁影响
1、须更新补丁
(1)850 补丁 PT176512
(2)861 补丁 PT176654
(3)88 补丁 PT17615
EAS Cloud 合并报表获取报表项目数据二开最佳实践
本文2024-09-22 18:05:22发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-98534.html