最近公司购买了Style intelligence 出的BI报表工具,接触新的东西不是很容易上手,这个东西是别的项目组用的,我们项目组由于进度比较快就让我先到他们项目组帮他们,为了使用这个东西,他们已经培训了两次,进行了了一个月的摸索,我对这个东西没啥了解,幸好他们已经总结了一些经验,以免我走一些弯路。
1、首先要配置数据源,就是将数据库的URL等配置配到数据源中,使用query做了一个Demo后,又使用model做了一个Demo,两者的差别在于,query使用方便,但需要多表关联时就显得麻烦了,而model则在这时显得很方便了,将多张表的一个或多个字段组合起来,像视图一样。
2、对于分数的显示上也有些问题,在提示显示百分数中,选择定制后按照提示信息填入“{0}”还是不能变成百分号形式,需要参考格式中数字单选框中的下拉列表中的格式,将该格式写在“{}”里面就可以显示百分号了
3、将BI项目集成到我们自己的项目组
将BI项目中lib下面的jar包考到项目中,将classes中的sree.propories、datasource.xml、dashboard.xml、dashboard-config.xml、portal/anonmse/dashboard.xml,还有与classes同目录的其他几个文件夹,有config等。其他配置都会自动产生,还有就是一个asset.dat文件是所有报表的数据文件,如果需要也要考到项目,也可以通过导入jar包的形式产生该数据文件。
4、使用VPM控制权限,是基于数据源进行创建的,还没找到统一的管理接口
5、使用物化视图优化性能,将数据缓存到本地,不用去查询数据库了
MV(物化视图)
1)对于MV update中的条件进行修改后,需要重新创建MV,否则还是原来的worksheet中的MV_update条件
2)对于简单报表MV update没有问题,但是对于多表复杂的并且多数据源时,可能由于编码问题导致乱码问题,该问题只在更新MV是出现,创建MV没有乱码
3)使用物化视图时进行分析时会提示一些失败信息,尽量去掉这些信息,我实践证明由于condition不能从child table move up到parent table占很大比例,另外就是尽量避免使用分组和aggressive列,尽量把分组等操作放到viewsheet中进行。
VPM(数据过滤)
1)可以再trigger中使用变量,写法如parameter['varName']可以拿到变量的值,该变量可以通过URL传入;
URL
1)通过URL访问报表:http://localhost:8080/sree/Reports?op=vs&path=/test_vs&VSPARAM_paramName="paramValue";