平台的报表工具是完全自研的,当然也从BIRT等学习了很多东西。之所以自研,是因为市面上的工具无论开源和付费都不能满足要求。我们不要求这个报表工具能够独立使用,它是平台的一部分,需要和平台紧密整合。
市面上报表工具不适合平台的主要原因在于数据大多数是编写SQL语句,这种模式的问题在于很难和权限相结合。例如平台希望定义一套报表,同样的表样,A单位可以使用 B单位也可以使用,出来的数据是各自单位的;前面也说过,平台上一部分业务是自定义表结构,例如人力资源系统,该系统里数据元是系统管理的,例如性别字段是字典类型。定义报表时,是无需了解物理表字段的逻辑关系的。从业务层面来定义更为直观;诸如此类有很多平台上的特殊要求。
系统里的表样分三种:
登记表:描述一个对象的属性,例如员工登记表。
花名册:对象的列表,例如在职员工花名册。
统计表:根据各种条件统计数值。例如薪酬汇总报表。
平台的报表没有图表混合功能,单纯实现表格。图表混合类型的在BI模块中完成。