web 报表支持以服务方式提供的数据源吗

 

web 报表的项目现在越来越多的做成前后端分离,后端做成微服务提供数据接口,这也是一类数据源。虽整体框架结构一致,但各家做法及返回结果格式上可能都略有不同,也就导致没有通用的解决方案。

目前来说,针对这类数据源基本都是采用 api 二开的形式解决。现在 java 开发的报表工具较多,基本也都会提供自定义类数据集功能,通过调用客户的微服务获取数据,然后再把数据处理成各家产品认识的数据集对象就行了。

支持服务类的数据源没啥问题,但是通过 api 这种方式其实是有弊端的,应用耦合性太高、不支持热加载且还得有专门的开发人员,报表的数据计算层中便有更详细的解释,供大家参考。

更好的方式,或许我们可以加一个数据计算层(如前面链接文章),使得报表应用成为三层结 【数据蒋堂】第 9 期:报表应用的三层结构 ,计算层专门来处理微服务的数据,并且这个处理过程有专门的计算中间件,支持写简单的脚本完成数据处理过程,且支持热加载。介绍一篇文章报表数据源,里面介绍了为报表增加计算层后的便利性及优势。