ReportBuilder 是用来创建报告、报告组件和报告生成程序的开发环境。因为报告的生成涉及到很多的需求,通常对报告生成工具做具体的限制十分困难。Report Builder 的设计者将需求的范围减少为几个必需的部分:
Data Access 以规范的格式进行数据库表格、文本文件、Delphi对象或其它数据源的数据检索(retrieval of data)
Data Process 主要是进行基于数据和报告设计的中间结果的计算。
Report Layout 是一套用来描述报告外观和感觉的组件,并在报告生成的过程中可以定义组件的行为。
Report Output 是一套用来描述每一页准确内容的组件。
这个组件的每个部分都很基本,如果其中一部分是不被支持,整个报告的生成就会受到影响。
Leveraging Delphi  ReportBuilder 的早期版本致力于report layout 和report output部分,主要是由于Delphi有丰富的用于data access (DataSets, FileStreams, StringLists, etc.)和data process (events 和Object Pascal)部分的解决方案。事实上,对于使用ReportBuilder的程序员来说,利用这些解决方案仍然是很有效的。程序员可以配置标准的Delphi data access组件,通过数据管道将它们连接到报告上,在Delphi的运行期设计并预览报告,然后,如果需要的话,在报告生成过程中可以用Object Pascal中的code event handler来进行计算活修改报告设计。
终端用户报告生成解决方案 ReportBuilder Professional 和Enterprise 版本允许程序员为终端用户提供报告生成解决方案(reporting solution),在其中终端用户可以自己创建和修改报告。在为终端用户提供报告解决方案时,使用ReportBuilder Report Designer的用户同时也希望可以方便地使用data access和data process部分。然而,Delphi程序员无法提供data access和data process。这些情况最终导致了DADE(the Data Access Development Environment)和RAP(the Report Application Pascal programming language)的完成,它们可以为终端用户提供完整的data access 和data process解决方案。ReportBuilder Professional Edition中提供了DADE,而ReportBuilder Enterprise Edition中既包括了DADE,又提供了RAP。
先进的配置:便携式代码(Portable Code) ReportBuilder的DADE和RAP不仅为终端用户提供了完整的报告生成环境,而且让程序员有了选择利用便携式配置结构(用于报告)的权利。有了DADE和RAP,程序员可以创建卓越的报告定义(数据、计算和布置),能被保存在可执行程序的外部。这个开发模块的优点是可执行程序的尺寸可以降到最低,开发者能够最大程度地对报告的更改做出反应。程序可以包括上百了报告,每个报告可以包括百余个对象,这就会导致可执行程序的尺寸变大。而且,如果不重新创建或重新配置程序,报告定义(report definition)也不能更改。通过将报告定义存到可执行程序的外部,则可以迅速修改报告定义,而且花最少的时间、冒最小的风险就可以满足用户的需要。 |