多样性数据源在报表开发中越来越常见,润乾集算报表对多样性数据源的有效支持使得这类报表开发变得非常简单,目前集算报表支持的数据源类型除传统的关系型数据库外,还支持:TXT文本、Excel、JSON、HTTP、Hadoop、mongodb等。
在集算报表中除了单独使用以上数据源,还可以混合使用。支持混合多数据源是集算报表多样性数据源的又一表现。下面通过一个实例说明使用过程。
员工每月应发工资跟员工的基本工资、考勤以及绩效有关,考勤信息来源于人力部门从考勤系统中导出的文本文件,基本工资和绩效信息则存储在财务系统(hsql数据库)中。现需要使用两部分数据计算员工应发工资。
应发工资计算公式:基本工资*(1-考勤系数+绩效分)。
使用集算脚本编辑器编写计算脚本,读取数据库数据与文本数据,并完成关联运算。
A1:连接数据源demo;
A2-A3:分别取员工和绩效表数据;
A4:关闭数据库连接;
A5:使用f.import()读入文本中的考勤数据;
A6:根据员工表左关联绩效和考勤表数据;
A7:计算员工应发工资;
A8:为报表返回结果集。
连接报表数据源demo
设置数据集
使用集算报表设计器新建报表模板,并设置集算器数据集,调用上面编辑好的脚本。
其中,dfx文件路径既可以是绝对路径,也可以是相对路径,相对路径是相对选项中配置的dfx主目录的。
设置报表表达式
编辑报表表达式,直接使用集算脚本返回的结果集,使用简单的列表表达式,完成报表制作。
可以看到,使用集算器脚本可以为报表实现多数据源混合计算,而且外置的集算脚本具有可视化的编辑调试环境,编辑好的脚本还可以复用(被其他报表或程序调用)。不过,如果脚本已经调试好,而且不需要复用的时候,要维护两个文件(集算脚本和报表模板)的一致性会比较麻烦,这时候直接使用集算报表的脚本数据集就比较简单了。
在脚本数据集中可以分步编写脚本完成计算任务,语法与集算器一致,还可以直接使用报表定义好的数据源和参数。使用脚本数据集可以这样完成:
1.在数据集设置窗口中点击“增加”按钮,弹出数据集类型对话框,选择“脚本数据集”;
2.在弹出的脚本数据集编辑窗口中编写脚本。
在脚本数据集中直接使用报表定义的数据源demo进行查询,而不必像独立的集算脚本一样必须使用connect()函数连接数据源。
报表表达式与使用集算器数据集方式一致,不再赘述。
本文出自 “高性能报表数据计算” 博客,请务必保留此出处http://report5.blog.51cto.com/8028595/1568785
原文地址:http://report5.blog.51cto.com/8028595/1568785