因为项目需要,最近去做了Qlik Sense报表开发,学习了Qlik报表的开发方法和一些基础的开发模式,以下是我对Qlik报表开发的一些见解,个人水平有限,欢迎大神指导。
1.Qlik Sense的函数与Excel的函数用法几乎一样,熟悉Excel函数的开发人员可以迅速掌握Qlik的函数语法。
2.Qlik Sense可以很好的满足管理者的报表要求,随心所欲,从你关注的维度去展示报表,前提是你的数据模型搭的好。
3.个人认为Qlik Sense的报表开发,并不是要把以前Excel做的报表一股脑的全做到Qlik里面去,而是找出这些报表的数据关系,将数据模型撘好,至于前台报表如何展示,可以由查看报表的人员去自定义,自己需要什么样的报表就自己根据图形化界面,花个10~20分钟做出来。
4.Qlik Sense不是万能的,而且很多Excel的基本功能在Qlik Sense里面比较难做,遇到这样的报表,我认为应该分析报表的使用程度,以及在Excel里面实现的难易程度,毕竟Qlik Sense跟Excel一样只是一个工具,使用那个工具效率更高,就应该使用哪一个。而且哪些难做的功能,会影响整个应用程序(或者报表)的打开速度,而应用程序是全局的,打开的人会很多。这样算起来,为了实现一个Excel比较简单而Qlik比较难的效果,会产生多余的时间浪费(开发人员的开发时间+用户开启应用程序的等待时间),我觉得这样做是得不偿失的。
5.逻辑太过复杂的报表和人工手工处理复杂的报表,最好在实施的过程中确定报表逻辑的正确性,过于复杂的逻辑是否真的需要?是否有可行的简化方法?是否真的需要开发这个报表?
6.数据结构太复杂,我觉得最好采用独立BI数据库来进行操作。一些报表视图将取得的数据放到BI数据库中去,而Qlik Sense从BI数据库中直接抽取视图的数据,采用这种双层视图的结构,有两个优点:一、不用理会以前开发报表视图的逻辑,直接拿来用即可;二、报表逻辑简单化,便于IT人员对报表的修改和维护。不过有优点也有缺点,需要同步正式环境的DB和BI的DB数据,而且以前开发的报表视图需要执行的时间太长,那就还要考虑到同步两个数据库所花费的时间成本是否大于直接在Qlik Sense中开发视图的成本,取成本最小的即可。
7.开发报表人员需要对系统的数据结构非常数据,如果不熟悉,那简直是寸步难行。如果是乙方公司开发报表,甲方公司最好能提供报表的伪sql,这样能帮助乙方开发人员快速上手,而不是化大量的时间去理解系统的数据结构,这一点是尤为重要的。
以上只是我个人接触Qlik Sense开发近两个月的一些感悟,希望能对一些准备选型Qlik Sense产品的公司作为参考。