水晶报表原来这么深奥~~
最近在学习水晶报表的drill down和子报表的使用方法,觉得水晶报表不是象以前我想象中那么简单,是有很多不错的功能的。
由于网络上并没有搜到太多很系统介绍这部分的东西,搞懂流程还花了我不少时间的。
目前,基本使用方法已经搞得差不多了,了解到了drill down的本质就是分组的正确建立。
所以,总结一下,drill down的步骤,如下:(我没有用向导操作,新建的是一个空报表)
- Database Field操作。 即,连接数据源。 数据源的种类有很多,这个可以根据具体情况而做选择。 ( 我用的是Sql Server 2000的NorthWind数据库中的Order和Order Detial做数据源。)
- Group Expert操作。 即,建立分组。这个决定了深化的层次。
- Insert Summary操作。即,为每个分组加入汇总(如:sum、count等)。
- Char Expert操作。即,插入图表。ps:Drill Down不仅可以用在图表,也可以用在表格形式的报表。 注意:把要第一个显示的图表放在Report Head位置,其他的图表可依需求依次放在各分组中。在设置每个图表的Data -> LayOut时,要将除了最内层以外的图表设置为Group,然后再在右边做相应详细的选择。对于最内层的图表,要将此项设置为Advanced,然后做相应详细选择。
- Section Expert操作。即,对每个Section的设置进行整体调整。在不同层次Section的Suppress选项添加Formula。(eg:第一层可写: drilldowngroupleavel <>0,若第二层就将0变为1,依次类推。。。)
- 在各图表上右击,选择Format Chart选项,然后在Hyperlink选择卡中选中Report Part Drilldown,进行设置。
- 现在预览一下,Drill Down的功能就实现了~~~ ^O^
- 程序代码的写法就不再罗嗦了,和其他的没什么两样。
- 不过,我还有一个问题没有解决,现在还在找答案中。 就是: 怎么实现动态分组?有时需要用户去选择条件,所以分组的个数会不确定,在这种情况下,直接在水晶报表中设死分组个数是不可行的。
头一篇blog,罗嗦了一点,呵呵~~ 就到这里吧,下回有空接着写