在设计报表的过程中,最简单、最理想的情况就是数据来自于一个表。这样直接选择这个表就可以了。
稍复杂的情况,是建立一个不是很复杂的视图。许多报表工具实际支持这项功能。
但是,也有很多情况,数据很复杂,在报表中实现起来会感到很困难。这种时候,有些用户会提出对于报表工具本身的很多要求。其实,报表工具更主要的作用是表现,数据更多的应该是通过数据库来进行准备。这主要是两种方法:
一种是不需要再去计算,在数据库中定义视图来实现。这种视图可能是比较复杂的视图。这时要注意的关键一点就是不光要能把数据生成出来,还要考虑其效率。
另一种是要做一些预处理。有些是提前或定时生成好相应的数据,有些是要在生成报表前临时计算。预处理的数据可以放在表里,也有很多Web报表工具支持虚拟数据源。这种情况往往用于视图无法实现或效率太低的情况。
从另一方面讲,也不能过分依赖数据库。有些计算和数据是在报表中更容易实现与完成的,没有必要在数据库中费力写很多东西。
可以说,如何为报表准备数据没有一定之规。但有一点是肯定的,就是在有了Web报表工具后,就应该用更多的精力去仔细琢磨如何准备数据。应该从可行性、制作方便性、运行效率三方面进行考虑与权衡,切忌简单化。