多个横向扩展区域的报表的设计方法

在报表的设计过程中,会遇到一个复杂报表中有多个区域,这样的报表如果只包含纵向的扩展,设计起来还是比较容易的,但是当遇到有一个或者多个横向扩展的报表的话,如果按照原来的设计方法进行设计,不仅不够美观,而且数据可能不够准确,所以这类报表不能按照原有的方法来实现,需要根据具体的需求进行分析,从而找到合适的设计方法。

当报表出现横向扩展的时候,导致横向扩展所在列也横向扩展,这样就会影响此扩展格的上方和下方的单元格,这个就是问题产生的原因。

1:嵌入式或者引入式的主子表

此种方法由于子报表放在固定了宽度的单元格中,所以子报表在扩展的时候不会影响到其他单元格,这样,在子报表的横向扩展就对其他区域有什么影响了。

两种报表浏览样式如下(这两种报表的具体设计方法请参照初级设计教程):

可以看到两个报表都有横向扩展而且展示出来的结果是不一样的。嵌入式主子表的优点是固定了单元格的大小,而由于每个单元格内容都不同,所以有可能出现列无法对其的现象;引入式主子表没有出现这个问题,但是如果横向扩展过多,也会影响美观。

2:横向扩展的强制换行

这种方法使得所有区域的报表都是横向扩展的,这样就可以控制横向扩展了多少单元格,让报表可以只横向扩展固定个数的单元格就进行换行,这样就可以避免上述不美观的情况。

这种横向扩展强制换行方法有以下两种:

(a):使用to函数进行强制换行,这种方法可以参考强制换行这篇文章,里面有详细介绍。

(b):使用to函数加valueat函数,实现动态的取数,这样也可以实现报表的强制换行,这种方法可以参考valueat函数的使用方法和相关文章的介绍。

注意:由于使用to函数实现了横向扩展固定的列数,当报表区域过多时,可能会出现有的单元格根本不需要扩展但也随着横向扩展了的情况,这样就需要对报表进行修改了。

3:这种方法是将以上两种方法进行中和,将有横向扩展的子报表进行横向的强制换行,这样在显示的时候就在横向上进行了控制,既取到了想要的数据,又使得页面变得美观。

综合比较上面的几种方法,如果需求比较简单,可以选择方法1和2,设计起来比较简单;如果需求比较复杂而且对美观度要求比较高的话,可以采用方法3。

浏览次数:0 ; 发布日期:2010/07/27

热门文章

  • 申请试用授权 - 49,853 views
  • 使用入门教程简介 - 30,987 views
  • .NET报表产品概况 - 27,730 views
  • 联系我们 - 13,867 views
  • 技术支持 - 10,185 views
  • 高效报表设计 - 9,033 views
  • Web报表工具的新起点 - 7,563 views
  • 复杂报表的制作 - 7,033 views
  • Web报表软件的采购成本 - 6,530 views
  • Web报表软件的集成方案 - 5,075 views