专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »DotNet » 水晶报表字段:水晶报表中如何动态增加字段 »正文

水晶报表字段:水晶报表中如何动态增加字段

来源: 发布时间:星期三, 2008年11月5日 浏览:604次 评论:0
最近项目中要用到水晶报表,水晶报表的功能的确非常强大,但是有一个问题一直困扰着我,那就是它对于每种数据表结构都必须建一个报表文件。尽管它有两种使用方式,“pull”模式和“push”模式。但是推模式下仍然需要先根据dataset的结构生成相应的报表文件。这样就很不灵活,试想如果之前并不知道数据集dataset的结构,怎么用报表?即便知道有哪些表格,如果表格数太多,对于每个表格生成一个报表文件,那也是很繁琐的一件事。所以,有没有方法建立一个通用报表文件,然后可以在运行时根据dataset的具体结构来确定报表的结构呢?查了很多资料,很少有详细的解决方案。
在翻阅了一些资料,借鉴了多种做法后,终于解决了这个问题,下面把思路阐述如下:第一步:
新建一个web网站,然后在项目中新建一个空白报表,命名为CommonReport.rpt,打开报表,在字段资源管理器中右键选“数据库字段”,选择“数据库专家”,在弹出窗口中选“创建新连接”中的OLEDB,然后选择SQL Server的提供程序,点击下一步,跟着向导做下去,中间要输入连接信息,并选择一个数据库,“完成”后,可以看到连上了你所选的数据库,我选了本地SQLServer服务器上的“Northwind”数据库,它是Sql server中自带的一个数据库。然后随便选择这个库里的一张表,这里我选择第一张表“Categories”添加到右面。完成后,可以看到字段资源管理器中的数据库字段里有了一张表Categories,和它的四个字段,此时第一步完成了,后面不需要再管它了。
第二步:
在“字段资源管理器”中建立公式字段,公式字段的个数根据数据库里所有表格中字段最多的那个表格的字段数来定。这里我建立了6个公式字段,注意,这些公式字段都是空的。然后将这6个公式字段依次拖放到报表的详细资料栏里。
右键点击某个公式字段对应的页眉中文本对象弹出菜单,选择“设置对象格式”,得到图中的格式化编辑器对话框。选择对话框中的“抑制显示”复选框后面的图标按钮,然后在弹出的对话框中输入图p4右下方的一段代码
if nextisnull({@test})
then
true
[ft=,,]
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: