FastReport

 

FastReport components review

 

FastReport 包含许多元件供报表建立、修改、导出不同的格式及強化报表功能, 让我们探究每一个FastReport 元件栏上的元件。

 

TfrxReport

 

此为最主要的报表元件,一个TfrxReport 元件组成一份报表。在设计时期,双击此元件可打开报表设计器(Report Designer)

 

此元件拥有所有载入、存盘、设计及来看报表必须的属性及方法。让我们检查TfrxReport 提供的方法:

 

procedure Clear;清除报表

 

function LoadFromFile(const FileName: String; ExceptionIfNotFound:Boolean = False): Boolean;

 

从给予的文件载入报表。假如第二个参数等于 “True”且文件不存在,将产生例外状况,假如文件载入成功,返回值为”True ”

 

procedure LoadFromStream(Stream: TStream);从数据流(stream)载入报表。

 

procedure SaveToFile(const FileName: String);保存报表至指定的文件。

 

procedure SaveToStream(Stream: TStream);保存报表至数据流(stream)

 

procedure DesignReport;进入报表设计环境。报表设计环境将嵌入在你的工程文件(要执行此功能,只要在uses 子句加入frxDesign 单元或在工程文件中加入“TfrxDesigner” 元件)

 

procedure ShowReport(ClearLastReport: Boolean = True);

 

开始制作报表并输出结果显示在预览窗口。例如“ClearLastReport” 参数等于“False”

 

报表将会加入至前一个报表的后面,否则前一个建立的报表会被清除(预置值)

 

function PrepareReport(ClearLastReport: Boolean = True): Boolean;开始制作报表,但沒有显示预览窗口。

 

参数指定方式与“ShowReport” 方法(method)相同。假如报表创建成功,此函数返回“True”

 

procedure ShowPreparedReport;显示先前使用“PrepareReport” 所建立的报表。

 

procedure Print;打印报表。procedure Export(Filter: TfrxCustomExportFilter);使用指定的导出过滤器(export filter)导出报表內容。因为下列的方法只提供一种服务,

 

在大部分的情況之下,你并不须要使用它们。在增強FastReport 的报表功能方面,他们可能是很有用的。例如,当撰写自定义的报表元件时。

 

function Calc(const Expr: String): Variant;计算“Expr” 运算式并返回结果。

 

function GetAlias(DataSet: TfrxDataSet): String;返回指定数据集(data set)的别名。

 

function GetDataset(const Alias: String): TfrxDataset;返回指定别名(Alias)的数据集。

 

procedure DoNotifyEvent(Obj: TObject; const EventName: String);执行连接至”Obj” 物件的“EventName”事件处理程序。

 

procedure DoParamEvent(const EventName: String; var Params: Variant);以任意的参数类型执行 “EventName”的事件处理程序。

 

procedure GetDatasetAndField(const ComplexName: String; var Dataset:TfrxDataset; var Field: String);解析“ComplexName” 复合名称(DataSet.”Field”表示),并返回参照的数据集及字段名称。

 

procedure GetDataSetList(List: TStrings; OnlyDB: Boolean = False);

 

List 参数返回报表可用的数据集列表,假如第二个参数为True ,仅返回连接到数据库的数据集。

 

procedure AddFunction(const FuncName: String; const Category: String= ''; const Description: String = '');加入使用者自定函数至报表的函数列表。详细资料参考The functions’ listextension一章。

 

TfrxReport 元件拥有下列属性:

 

property EngineOptions: TfrxEngineOptions;FastReport 引擎相关的属性集合。

 

property IniFile: String;储存fastReport 环境变量设定的文档或注册码的名称。

 

property Preview: TfrxCustomPreview;连接到“TfrxPreview” 元件,完成的报表将显示在此元件上。假如此属性空白,

 

报表将显示于标准的预览窗口。参见“Custom preview windows creating”一章。

 

property PreviewOptions: TfrxPreviewOptions;与报表预览相关的属性。

 

property PrintOptions: TfrxPrintOptions;与报表打印相关的属性。

 

property ReportOptions: TfrxReportOptions;定义报表相关的属性。

 

property ScriptLanguage: String;报表使用的脚本语言(Script la nguage)

 

property ScriptText: TStrings;脚本语言的内容。

 

property AllObjects: TList readonly;报表内所有的物件列表(包括页定义元件)。

 

property DataSets: TfrxReportDataSets readonly;报表可用的数据集列表。

 

property Designer: TfrxCustomDesigner readonly;连结到报表设计元件北ū 砩杓苹肪潮黄舳。

 

property Engine: TfrxCustomEngine readonly;连结报表引擎。对于要使用程序码处理报表是非常有用的,它可以自定义报表处理引擎。

 

property Errors: TStrings readonly;错误清单,发生在一个或其它的进程。

 

property FileName: String;定义报表的文件名称;文件名会显示在设计环境的窗口标题中。

 

property PreviewPages: TfrxCustomPreviewPages readonly;定义一个连结到已完成的报表页面。它可被使用在所有地方,例如打印、存盘及导出等。

 

property Pages[Index: Integer]: TfrxPage readonly;报表页面列表,其中对话框类型也包括在列表中。

 

property PagesCount: Integer readonly;报表的页数。

 

property Script: TfsScript readonly;连结报表的“TfsScript” 元件,经由该连接,你可以为你的报表脚本语言加入变量、类型、函数以供以后调用。更多资料参见“FastScript developer’s manual”

 

property Style: TfrxStyle;报表式样。详细资料参见“operating with styles”相关章节。

 

property Variables: TfrxVariables readonly;报表变量列表。参见“operating with variables”

 

FastReport 引擎的相关属性集合:

 

TfrxEngineOptions = class(TPersistent)

 

published

 

property ConvertNulls: Boolean default True;转换数据库字段的“Null” 值至“0”, “False” 或空字串(依字段型态定)

 

property DoublePass: Boolean default False;使报表进行二次处理,第一次进行资料搜集(例如报表总页数),第二次才实际进行报表处理。

 

property MaxMemSize: Integer default 10;配置报表页面缓存(Cache)的最大内存使用量( Mbytes),当“UseFileCashe” 属性等于“True” 时特别有用。假如在建立期间耗用太多内存,已建立的报表缓存页面将会被写入缓存文件,此属性并不非常的精确,它只大約的決定内存的限制。

 

property PrintIfEmpty: Boolean default True;定义是否要打印空白报表(没有打印资料的报表)。

 

property TempDir: String;指定保存临时文件的目录。

 

property UseFileCache: Boolean default False;定义产生的预览报表是否缓存(Cache)到文件(“MaxMemSize” 属性)

 

end;

 

报表预览的相关属性集合

 

TfrxPreviewOptions = class(TPersistent)

 

published

 

property AllowEdit: Boolean default True;允许或不允许编辑预览窗口中的报表。

 

property Buttons: TfrxPreviewButtons;预览窗口中的可用按钮集合。

 

TfrxPreviewButtons = set of TfrxPreviewButton; TfrxPreviewButton

 

= (pbPrint, pbLoad, pbSave, pbExport, pbZoom, pbFind, pbOutline,

 

pbPageSetup, pbTools, pbEdit, pbNavigator);

 

此属性可用的值如下:

 

pbPrint - 打印     pbLoad - 载入文件  pbSave - 存报表到文件     pbExport - 导出

 

pbZoom - 显示比例  pbFind - 搜寻      pbOutline - 选定报表边框  pbPageSetup - 页面设定

 

pbTools - 工具     pbEdit - 编辑      pbNavigator - 导航

 

上面的值你可以混合使用。

 

property DoubleBuffered: Boolean default True;预览窗口采用双缓存区模式。假如启用(预置值),画面输出时屏幕不会有闪烁的情形,但处理速度会稍微下降。

 

property Maximized: Boolean default True;定义预览窗口是否最大化。

 

property MDIChild: Boolean default False;定义预览窗口是否为MDIChild (MDI 介面使用)

 

property Modal: Boolean default True;定义预览窗口是否为Modal 模示。

 

property OutlineVisible: Boolean default False;定义是否显示报表的大纲。

 

property OutlineWidth: Integer default 120;定义报表大纲显示的宽度。

 

property ShowCaptions: Boolean default False;定义是否显示按钮的标题。当启动该属性时,你应该限制Buttons 属性所显示按钮的个数,因为所有的按钮无法显示于同一画面。

 

property Zoom: Extended;预置的显示百分比率。

 

property ZoomMode: TfrxZoomMode default zmDefault;预置显示模式。

 

可用的值如下:zmDefault - 显示百分比率视“Zoom” 属性而定   zmWholePage - 整页模示

 

zmPageWidth - 页宽 zmManyPages - 两页

 

end;

 

报表打印相关属性的集合:

 

TfrxPrintOptions = class(TPersistent)

 

published

 

property Copies: Integer default 1;预置的打印份数。

 

property Collate: Boolean default True;不管校对份数。

 

property PageNumbers: String;打印的页码。例如,“1,3,5-12,17-“

 

property Printer: String;打印机名称。

 

property PrintPages: TfrxPrintPages default ppAll;

 

定义要打印的方式。可用的值如下:ppAll – 全部  ppOdd – 奇数页   ppEven – 偶数页

 

property ShowDialog: Boolean default True;是否显示打印窗口。

 

end;

 

报表相关属性的集合:

 

TfrxReportOptions = class(TPersistent)

 

published

 

property Author: String;报表作者。property CreateDate: TDateTime;报表建立日期。

 

property Description: TStrings;报表描述。property Name: String;报表名称。

 

property LastChange: TDateTime;报表最后修改日期。

 

property Password: String;报表密码。假如该属性为空白,当打开报表定义档时需要输入密码。

 

property Picture: TPicture;报表图片。

 

property SilentMode: Boolean default False无声(Silent)方式。所有的错误信息将被保存在“TfrxReport.Errors” 属性,而不会在屏幕上显示任何信息。

 

property VersionBuild: String;

 

property VersionMajor: String;

 

property VersionMinor: String;

 

property VersionRelease: String;决定报表版本的属性。

 

end;

 

下列的事件定义于TfrxReport 元件:2

 

property OnAfterPrint: TfrxAfterPrintEvent;发生在处理完每个报表物件之后(打印后)。

 

property OnBeforePrint: TfrxBeforePrintEvent;发生在处理完每个报表物件之前(打印前)。

 

property OnClickObject: TfrxClickObjectEvent;当预览一份报表时,选取报表内的物件时触发该事件。

 

property OnGetValue: TfrxGetValueEvent;当启动一份报表,发现未定义的变量时,该事件必须返回变量的值。

 

property OnManualBuild: TfrxManualBuildEvent;当开始打印报表,假如此事件被启动,然后FastReport 的引擎将被阻断(不处理),报表处理方法将交由程序员所写的程序处理。

 

property OnMouseOverObject: TfrxMouseOverObjectEvent;当报表处于浏览窗口,且鼠标指针移到该物件上时触发此事件。

 

property OnUserFunction: TfrxUserFunctionEvent;当执行报表的过程中,当调用的函数不存在,请使用“AddFunction” 方法提供自定义函数。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

软件功能   fastreport5 源码是一款可以帮助您在网页设计上插入报表的工具,可以结合Visual Basic 编辑工具使用,方便您在web上添加报表、打印报表   在打印期间,可以使用fastreport5 模板将各种来源的数据合并在一起以完成打印作业。 可以将多个数据源连结到一个对象中。 在大多数情况下,模板上的对象均使用单个数据源来确定源的内容。   然而,有时您可能希望将来自两个或多个数据源的信息放入一个web、编码器或文本对象中。 通过将其他数据源附加到对象,您可以使用fastreport5将它们结合起来,以便将它们作为一个字符串输出(这有时称为“字符串连结”)。   名称: 显示数据源的名称(如果指定了数据源)。   打开fastreport5更改数据源名称向导,用于指定所选数据源的唯一名称。 通过命名数据源,您可以将所选数据源的内容与其他数据源共享或参考 VB 脚本中的数据源。   FastReport也可在IB_Objects下工作。IB_Objects是用于Interbase数据库管理系统(DBMS)的功能强大且使用广泛的库。   类型: 显示所选数据源的数据源类型。   打开更改数据源类型向导,用于指定将在所选数据源中打印的数据源。 软件特色   开发WEB应用系统通常都会遇到报表打印问题。简单应用可利用IE的页面打印功能,利用HTML标签控制格式来实现。 但复杂的业务型应用系统,报表不仅是组成应用的重要部分,还常常是相当复杂的。很多应用系统都要求提供。自定义报表的功能——即客户可以自行设计、修改报表。   在C/S结构系统中,报表问题有很多成熟的解决方法。如DELPHI开发工具不仅自带有报表控件,还可以利用第三方控件来实现快速灵活的报表制作和打印,其中有名的控件是FR-Software & A.Tzyganenko 的FastReportFastReport提供了能与DELPHI无缝集成的从设计到打印的完整控件包,提供的设计界面友好灵活,对于开发可让用户自定义报表的C/S应用来说,是一种很好的解决方式。   FastReport是非常强大的报表控件,相比QuickReportReportBuilder更加灵活,又非常小巧,速度快。VCL版本支持Borland Delphi 2-6 and Borland C++Builder 1-6。CLX版本支持Delphi和Kylix。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值