水晶报表开发中的一点建议

1:如果你是嵌入程序开发,而不是使用CR Enterprise 或 BOE Infoview的话,建议你使用自定义字段方式
而不是直接连数据库
可参考以下的几篇文章

创建不受数据库限制的报表
VB版本
http://www.cnblogs.com/babyt/archive/2005/03/11/116878.html
http://www.cnblogs.com/babyt/archive/2005/03/11/116880.html

VB.Net(2003)版本
http://www.cnblogs.com/babyt/archive/2005/03/13/118097.html
http://www.cnblogs.com/babyt/archive/2005/03/13/118098.html

C#(2005)版本
http://www.cnblogs.com/babyt/archive/2008/01/03/1024941.html

使用该方法的好处是便于控制,无论是数据集的规整或者是各种参数条件的获取,都可从程序界面接管控制
通过SQL语句拼接或者参数隐式传递到报表

对于如何进行参数交互,我这里说一下
首先参数大致可分为两类,
一是页面呈现类的,比如说输入个制表人啊(这个可以使用水晶报表自带参数),或者参数控制节的显示与隐藏啦(可实现按权限显示内容)
另一类就是作为SQL过滤条件的
这两种参数在制作模板的过程时如何应用我想就不用多说了,说一下如何交互这个部分

也可以分为两种情况
一是水晶报表直接做的,CR11之后的版本显示为以下样式

不过一般与程序整体风格一般都不怎么搭调,呵呵

另外一种是程序直接接管的,就是在程序Form中由用户输入
对于SQL过滤类的,可以传给水晶报表,如果你采取前面所提到的报表实现方法,那么这一层也可以直接通过SQL语句的拼接
对于程序中参数的传递,可以参考
http://www.cnblogs.com/babyt/archive/2005/03/11/116880.html
中的代码,当然可能因为水晶版本的不同,提供的方法也会有差异

2:如果使用上面的方法,水晶报表的一些比较高级的功能就用不上了。
我想说的是,对于10万级别以上的明细表,如果再关联其他的表,会产生相当多的数据
(可能更不幸的是,为了显示格式的需要,你还要使用外链接)
这样的话,除了建基本的索引外,我建议使用中间汇总表,如日汇总,月汇总,年度汇总
以空间换效率(这些汇总表甚至可以部署在不同的数据库、服务器上)。
指定数据库的Job,每天数据库空闲时可安排自动作业
使用中间表的好处是,可以排除一些大数据报表的操作影响整体性能


3:有了基础数据,那么水晶报表就可以来呈现了,同样的数据,既可以呈现成数据列表,也可以呈现为丰富的图表
两者不是互斥的,这是个基本概念,但是还是说一下吧(因为...)

4:在保存报表时,请注意

如果你不是为了交换数据,而是嵌在程序中的,请务必去掉此选项。防止影响报表的实际展现。

5:有时候,有些报表用水晶报表实现起来很困难。
也别老较劲,尽量跟用户协商一下,如果一定要用水晶报表来实现的化,就把报表改造一下,呵呵

 

转载自:http://www.cnblogs.com/babyt/archive/2008/01/12/1036450.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值