主题:一定要会做的30张报表之十一 - 数据来自多个物理表
到"软件开发 - 一定要会做的30张报表之十"为止,我们讲的都是比较简单的报表。第十一到第二十,计划要讲一些比较复杂的报表,然后第二十一到三十,讲涉及到数据交互的报表。
第十一张,是一个看起来不太复杂的表。但是,表的数据是来自于多个物理表的。
[img]http://www.blog.com.cn/user7/20839/upload/517685458.jpg[/img]
这个表看起来很简单,但实际上数据应该是来自于多个物理表。很可能销售指标、销售额(应该是在销售订单的表中)、回款金额(应该是在收款的表中)、销售费用(应该是在费用的表中,甚至这个还可能包括多个表或者明细表)是多个不同的物理表,而且基本上每项数据都不仅仅是直接取,还涉及计算(而且可能还有期间、产品等)
这种表的解决方法,有三种:
1、先做成一个视图,这样就行了一个很简单的报表了。
2、先用程序计算,把数据集中到一个表中。
3、用支持多集的报表工具,那样做起来就很简单了。
前两种对所有的报表工具都适用,但比较麻烦。并且,对第一种,要注意优化,比如条件要放到对每个物理表的SELECT中,比如期间之类的)。对第二种,也要把相关数据带全,以便根据条件查询等等。如果用润乾这样的支持多集的报表工具,即第三种方案,就比较容易做了。
[url=http://rqrpt.blog.com.cn/archives/2006/874819.shtml]软件开发 - 一定要会做的30张报表之十二 - 分成多片的报表[/url]
第十一张,是一个看起来不太复杂的表。但是,表的数据是来自于多个物理表的。
[img]http://www.blog.com.cn/user7/20839/upload/517685458.jpg[/img]
这个表看起来很简单,但实际上数据应该是来自于多个物理表。很可能销售指标、销售额(应该是在销售订单的表中)、回款金额(应该是在收款的表中)、销售费用(应该是在费用的表中,甚至这个还可能包括多个表或者明细表)是多个不同的物理表,而且基本上每项数据都不仅仅是直接取,还涉及计算(而且可能还有期间、产品等)
这种表的解决方法,有三种:
1、先做成一个视图,这样就行了一个很简单的报表了。
2、先用程序计算,把数据集中到一个表中。
3、用支持多集的报表工具,那样做起来就很简单了。
前两种对所有的报表工具都适用,但比较麻烦。并且,对第一种,要注意优化,比如条件要放到对每个物理表的SELECT中,比如期间之类的)。对第二种,也要把相关数据带全,以便根据条件查询等等。如果用润乾这样的支持多集的报表工具,即第三种方案,就比较容易做了。
[url=http://rqrpt.blog.com.cn/archives/2006/874819.shtml]软件开发 - 一定要会做的30张报表之十二 - 分成多片的报表[/url]