日期:2012-03-05  浏览次数:20328 次

在报表中重用

报表设计过程中最苛刻和最消耗时间的部分是将你的所有报表格式化成统一的外观。许多公司要求报表设计者遵照企业标准,比如:信头或者是 GAAP/SEC 规范的某些要求。

在理想世界里,这只需较少的工作,如果允许报表设计者集中精力格式化一个报表,并且将它用作其它所有要求形象化和展示质量的报表的指南。当一个报表完成相应的格式化后,为何不把它的内容和格式应用到其它报表呢?在水晶报表 10 里,将现有报表的布局应用到其它报表是非常简明的。通过定制化的报表模板功能,这将成为可能。

本白皮书旨在帮助你更多的了解水晶报表 10 中的报表模板功能,以及如何使用它改善组织中报表设计的效率和生产力。


目录

在报表中重用
了解报表模板
  使用报表模板
使用现有的水晶报表作为模板
为何模板优于先前版本中的风格 (STYLES)
创建有效的报表模板
  设计高效模板的注意事项
使用模板字段对象
使用报表模板简化报表创建的工作量
应用多个模板
总结


了解报表模板

报表模板可以被认为是数据(原始报表中的)和布局(模板报表)之间的婚姻。模板包含了基本结构 - 当相应字段被添加到报表时,如何显示和格式化报表。

报表模板实际上是通常的报表文件 (RPT)。这意味着你能够使用事实上任何 RPT 文件作为报表模板。模板能够被应用到其它报表,所以它们的格式化和布局能够用作其它报表的基础。把模板应用到其它报表,布局等格式化将被应用到报表。此种例子是一个在详细资料节有四个字段的报表,应用展示质量的模板前,所有的节是挤压在一起的。应用模板后,模板中字段的位置迫使现有报表中的字段延伸,并且应用了字体。

使用报表模板

模板能够存储许多类型的对象。报表设计过程中的集中数据部分完成后,这些对象能够被应用到报表。将现有的模板应用到报表能够节省几小时,甚至几天的,普通格式化任务。

通过将模板应用到报表,能够完成的一些任务类型是:

●添加企业的标识和其它图像
●格式化成一致的页号
●将字体风格/颜色/字体应用到数据字段
●格式化字段边框和背景
●调整字段大小
●格式化组眉和组脚
●格式化汇总字段
●添加水印
●应用其它复杂的格式化
●插入线
●插入框
●使用储备库对象
●添加报表标题
●维护网站链接
●基于数据字段的类型进行格式化

选择使用模板事实上无任何限制。


为何模板优于先前版本中的风格 (STYLES)

水晶报表 9 之前,用户能够使用水晶报表的风格 (Styles) 特性。风格特性允许设计者将一套格式化风格应用到报表。报表风格的作用相当有限,因为它们不能被定制。例如,你甚至不能改变组名字段的颜色,因为没有办法打开风格来进行修改。

报表风格也被限制用于数据和组字段。不包括任何图像或者静态文本对象。风格被硬编码进水晶报表设计器,所以不能够使用任何外部的 RPT 文件。

有了水晶报表 10 的报表模板,你能够在报表对象级别上,将任何报表对象或者格式用作一种可应用的风格。这样,模板采纳了先前版本的风格特性,并且增强了它,使它能够适用于更多的对象类型及应用。


使用现有的水晶报表作为模板

通过应用模板能够完成许多报表格式化任务。如果通过手工完成,其中的许多任务将会花费报表设计者几个小时的时间。比如,从水晶报表 10 的模板子文件夹应用“机密”示例模板。

之前:                之后:



通过应用定制的模板,可以自动完成下列任务:

●从 Crystal 储备库将 Powered by Crystal 标识添加到报表(连同它的工具提示和超链接)
●添加一个显示“机密”的图像,作为每一页报表的衬底
●修改所有数据库字段的字体和位置
●在报表里显示记录选定公式
●在详细资料节的所有项目之间添加虚线
●在纪录选定公式的周围添加一个圆角框
●使用圆角框显示组的起点和终点
●将每个数据字段的字段标题移动到组眉,并使用双线格式化它们

模板中最有用的特性之一是,即使目标报表的详细资料节中有更多的字段,它仍然为这些额外字段复制数据字段的格式化。模板将它们放入一个分离的详细资料节(通常命名为“详细资料 B”),所以它们将会一起出现,但不会彼此覆盖。无需担心手工应用相同的格式化,字段能够被移动到周围。


创建有效的报表模板

因为任何报表都能够用作模板的基础,报表设计者也许只需要提炼少数功能或者格式化特征,就能够使现有报表更加健壮,可以用作正式模板。

设计高效模板的注意事项

就象以前提到的,数据采集完成后,模板能够以更快的速度完成格式化任务。因为任何报表都能够用作模板,报表设计者可能已经拥有一个充满创意的报表库了。

如果每个报表所连结的数据库在架构,结构,或者内容方面都完全不同,将报表的布局作为其它报表的模板可能会引发一些问题。不过,运用适当的设计,模板报表能够克服这些问题。

例如,公式可能出现问题。因为大多数公式需要数据库字段来运行,它们与报表中实际的数据库和数据结构紧密相关。可是,使用一些工具能够最小化这种后果。使用自定义函数代替预写的公式能够减轻某些数据依赖性,比如使用 CurrentFieldValue 求值程序作为格式化公式。

有时候,仅仅专注于页眉或者页脚,就能够大大有利于高效报表模板的设计。通过减少普通的页格式化所需的重复性工作,你能够提高报表设计的生产力。


使用模板字段对象

在设计报表模板的过程中,可能会产生一种需求,即为字段提供一些特定的格式化,并不基于它们在报表中的位置,而是相反,基于字段的类型。比如,公司可能需要所有日期/时间值以 24 小时格式显示,而不管操作系统的默认设置,"6:02 p.m. on March 31, 2004" 必须显示成 "03/31/04 18:02"。

这些需求属于常见的团体或者工业标准需求,例如 ISO 9000 标准。创建模板时,这些字段在报表中的位置或者数量是未知的。报表设计者能够利用模板字段对象促成这种努力。

当设计报表用作模板时,模板字段对象将代替报表中常规的数据库字段,并且能够放置在任何地方。它们甚至能够用作组字段。

模板字段对象是一种特殊类型的公式字段,它不包含数据,但是允许在其上应用格式化,就象其它所有的数据类型。模板字段对象有一个特殊的对话框,提供格式化编辑器的所有格式化标签,而不管类型如何。这提供了满足你所有格式化需求的一站式服务工作室,并且与报表中指定位置的字段的数据类型无关。

提示:取消模板是水晶报表中提供的一个有用的选项。如果你不喜欢应用模板带给报表的外观,只需返回模板专家,并在对话框的底部选择取消命令。通过选择该选项,然后单击 OK,水晶报表恢复成模板应用前的原始报表。水晶报表通过打开在模板应用前,它保存的临时备份 RPT 来实现该选项。


使用报表模板简化创建报表的工作量

模板能够完成许多与设计相关的任务,包括:

●条件格式化
●突出显示字段
●页眉/页脚
●图表标准
●线/框/边框
●颜色标准
●标识和图像
●网站/超链接/电子邮件地址
●标准自定义函数
●储备库对象
●锁定对象的大小或位置
●特殊字段

这些只是应用模板能够自动完成的一些典型任务。

应用多个模板

因为任何报表都能够用作模板,你可以将多个模板应用到一个报表。

如果这些模板用于做不同的事情,这被证明是非常有用的。例如,一个模板可以将标准页眉和页脚应用到公司中的所有报表,但是另一个模板能够将根据部门变化的颜色应用到详细资料节。因为两个模板被独立封装,所以它们能够被分别应用,并且不会相互影响;它们增加了报表的价值。生成的报表将拥有企业的风格(页眉和页脚),和特定部门的颜色(在详细资料节)。

提示:单一模板不能多次应用到同一个报表,即使在初次应用模板后,报表又添加了新字段。只要在模板专家中选择重新应用上一模板,就可让模板应用到任何新字段。


总结

报表模板能够在报表设计过程中提高生产力,设计者一次性完成格式化操作,然后单击按钮就可将这些修改应用到多个报表。

创建模板无需特别的知识,因为它们只不过是报表文件。不过,模板字段对象能够用来提高创建模板的水准。