主题:软件开发 - 一定要会做的30张报表之十三 - 累计值的计算
在软件开发 - 一定要会做的30张报表之七 - 复杂表头与横向运算中,我们提到了一些表内的计算,但那里所讲的计算,是横向计算,即计算是不跨行的,只在同一行内算来算去。
另外一种计算是纵向的求和、平均之类的,如软件开发 - 一定要会做的30张报表之二 - 分组报表中所出现的。
但表内计算的情况并不都这么简单。首先我们看一个稍微复杂一点的:
[img]http://www.blog.com.cn/user7/20839/upload/522229072.jpg[/img]
这张表中,累计销售额中的值,是左边的数+上一行的数(第一行只是左边的数)。这个一个在Excel中很容易实现、也非常典型的报表(但Excel中的数据是固定的,而这个报表中数据是动态展开的)。
这种累计值,实际已经是跨行的计算了,需要引用上一行的值。
实际实现起来,有不同情况:
1、如果报表工具功能很弱,就要预先用程序算好。
2、有些报表工具支持引用上一行的值。
3、有些报表工具支持层次座标的概念,即可以在设计时即对展开的格子定位,所以可以非常灵活地引用跨行、跨组的格子。
这个例子还只是跨行计算中最初级的例子,后面我们会进一步介绍一些复杂的例子。
[url=http://rqrpt.blog.com.cn/archives/2006/906570.shtml]软件开发 - 一定要会做的30张报表之十四 - 本周/本月的合计[/url]
另外一种计算是纵向的求和、平均之类的,如软件开发 - 一定要会做的30张报表之二 - 分组报表中所出现的。
但表内计算的情况并不都这么简单。首先我们看一个稍微复杂一点的:
[img]http://www.blog.com.cn/user7/20839/upload/522229072.jpg[/img]
这张表中,累计销售额中的值,是左边的数+上一行的数(第一行只是左边的数)。这个一个在Excel中很容易实现、也非常典型的报表(但Excel中的数据是固定的,而这个报表中数据是动态展开的)。
这种累计值,实际已经是跨行的计算了,需要引用上一行的值。
实际实现起来,有不同情况:
1、如果报表工具功能很弱,就要预先用程序算好。
2、有些报表工具支持引用上一行的值。
3、有些报表工具支持层次座标的概念,即可以在设计时即对展开的格子定位,所以可以非常灵活地引用跨行、跨组的格子。
这个例子还只是跨行计算中最初级的例子,后面我们会进一步介绍一些复杂的例子。
[url=http://rqrpt.blog.com.cn/archives/2006/906570.shtml]软件开发 - 一定要会做的30张报表之十四 - 本周/本月的合计[/url]