码迷,mamicode.com
首页 > 其他好文 > 详细

FastReport 使用说明

时间:2014-06-18 16:18:13      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:des   style   class   ext   com   get   

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); 使用指定的导出过滤器(exportfilter)导出报表內容。因为下列的方法只提供一种服务在大部分的情況之下,你并不须要使用它们。在增強 FastReport 的报表功能方面,他们可能是很有用的。例如,当撰写自定义的报表元件时。 function Calc(const Expr: String): Variant; 计算“Expr” 运算式并返回结果。 function GetAlias(DataSet: TfrxDataSet): String; 返回指定数据集 (dataset)的别名。 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 = ‘‘); 加入使用者自定函数至报表的函数列表。 TfrxReport 元件拥有下列属性: property EngineOptions: TfrxEngineOptions; 与 FastReport引擎相关的属性集合。 property IniFile: String; 储存 fastReport 环境变量设定的文档或注册码的名称。 property Preview: TfrxCustomPreview; 连接到“TfrxPreview” 元件,完成的报表将显示在此元件上。假如此属性空白,报表将 显示于标准的预览窗口。 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” 元件,经由该连接,你可以为你的报表脚本语言加入变量、类型、函数以供以后调用。 property Style: TfrxStyle; 报表式样。 property Variables: TfrxVariables readonly; 报表变量列表。 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 = setof 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”方法提供自 定义函数。 TfrxDBDataset TfrxUserDataset 数据存取元件。FastReport使用这些元件读取及参考数据库的字段,这两个 元件都源于 “TfrxDataSet” 并继承其大部分的功能。 TfrxUserDataSet元件允许构建未连接到数据库的报表,而由其它来源接收 数(据如:数列、文件等)。在此同时,程序员仅需提供浏览此数据集的功能,资料 接收并非由此元件执行,而是用其它的方法(例如,经由 “TfrxReport.OnGetValue”事件)。 TfrxUserDataSet 元件有下列的属性: property RecNo: Integer readonly; 目前记录编号,首笔的记录编号是“ ” 0 property Enabled: Boolean default True; 定义此元件是否可在designer里面使用。 property RangeBegin: TfrxRangeBegin default rbFirst; 数据导航(navigation)的起点。下列的值可以使用: rbFirst – 从数据的第一笔记录开始。 rbCurrent – 从当前的记录开始。 property RangeEnd: TfrxRangeEnd default reLast; 数据导航(navigation)的起点。下列的值可以使用: reLast – 直到数据结束。 ReCurrent – 直到目前的记录。 reCount – 依“RangeEndCount” 属性而定。 property RangeEndCount: Integer; 数据集中的数据个数,此功能只在“RangeEnd”属性等于 reCount 有效。 property UserName: String; 符号名称。在报表设计环境(Designer)下,将被显示于DataSet 的下方。 property OnCheckEOF: TfrxCheckEOFEvent; TfrxCheckEOFEvent=procedure(Sender:TObject;varEof:Boolean) of object; 此事件在数据集的尾端时,Eof参数将返回 True。 property OnFirst: TNotifyEvent; 数据集移至第一笔的位置时,会触发此事件。 property OnNext: TNotifyEvent; 数据集移至下一笔的位置时,会触发此事件。 property OnPrior: TNotifyEvent; 数据集移至上一笔的位置时,会触发此事件。 TfrxDBDataSet 元件用来连接以 TDataSet, TTable 及 TQuery 为基类的数 据库元件,有关数据的导航及字段的参考都是自动的,程序员不需特殊的设定。除 上述属性外,该元件有下列的属性: property CloseDataSource: Boolean default False; 报表创建完成后,关闭数据库。 property OpenDataSource: Boolean default True; 在报表创建之前打开数据库。 property FieldAliases: TStrings; 数据集字段的符号名称 别名 。 ( ) property DataSet: TDataSet; property DataSource: TDataSource; 连结至 TDataSet 或 TDataSource 类型的元件。 property OnClose: TNotifyEvent; 当关闭数据集时触发此事件。 property OnOpen: TNotifyEvent; 当打开数据集时触发此事件 TfrxDesigner TfrxDesigner 元件是报表设计器,当使用此元件,你的工程文件就可以使 用报表设计器,此元件它只包含一些报表设计器的设定,当加入”frxDesign” 单 元到uses 清单中,就表明与报表设计器连接上了。 此元件包含下列的属性: property CloseQuery: Boolean default True; 定义结束设计报表是否询问储存报表之用。 property OpenDir: String; 打开报表的预置数据目录。 property SaveDir: String; 储存报表的预置数据目录。 property Restrictions: TfrxDesignerRestrictions; 报表设计环境下,限制不同的报表操作标识 (flag),此标识包含单一或混合数据 值: drDontInsertObject – 禁止插入物件 drDontDeletePage – 禁止刪除页面 drDontCreatePage – 禁止建立新的页面 drDontChangePageOptions – 禁止修改页面属性 drDontCreateReport – 禁止建立新报表 drDontLoadReport – 禁止载入报表 drDontSaveReport – 禁止储存报表 drDontPreviewReport – 禁止预览报表 drDontEditVariables – 禁止编辑变量 drDontChangeReportOptions – 禁止修改报表属性 property OnLoadReport: TfrxLoadReportEvent; TfrxLoadReportEvent = function(Report: TfrxReport): Boolean of object; 此事件发生在载入报表之时。利用此事件,你可以从数据库载入报表。 property OnSaveReport: TfrxSaveReportEvent; TfrxSaveReportEvent = function(Report: TfrxReport; SaveAs:Boolean): Boolean of object; 此事件发生在储存报表之时。利用此事件,你可以将报表储存于数据库中。 property OnShow: TNotifyEvent; 此事件发生在启动报表设计环境时。 TfrxPreview 此元件专供建立自定义报表合预览窗口使用。 procedure AddPage; 加入空白页面到报表末端。 procedure DeletePage; 删除当前页。 procedure Print; 打印报表。 procedure LoadFromFile; 显示文件载入窗口。 procedure LoadFromFile(FileName: String); 载入指定的文件。 procedure SaveToFile; 显示文件储存窗口。 procedure SaveToFile(FileName: String); 储存文件到指定的文件名称。 procedure Edit; 载入当前页至设计模式供编辑使用。 procedure Export(Filter: TfrxCustomExportFilter); 使用指定的导出过滤器导出报表。 procedure First; 第一页。 procedure Next; 下一页。 procedure Prior; 上一页。 procedure Last; 最后一页。 procedure PageSetupDlg; 显示页面设定窗口。 procedure Find; 显示文字搜寻窗口。 procedure FindNext; 继续找下一个。 procedure Cancel; 取消创建报表。 procedure Clear; 清除报表。 你可以使用下列属性: property PageCount: Integer readonly; 报表页数。 property PageNo: Integer; 目前报表页码 起始值为 。要移至其它页面,指定此属性的值即可。 ( 1) property Tool: TfrxPreviewTool; 选取工具。 property Zoom: Extended; 显示比例,“1” 代表 100% 。 property ZoomMode: TfrxZoomMode; 显示模式,可以的显示模式如下: zmDefault – 预置值,显示比例根据“Zoom” 属性而定 zmWholePage – 整页模式 zmPageWidth – 与页面宽度相同 zmManyPages – 一屏显示多页 property OutlineVisible: Boolean; 是否显示报表大纲 树状结构 。

FastReport 使用说明,布布扣,bubuko.com

FastReport 使用说明

标签:des   style   class   ext   com   get   

原文地址:http://www.cnblogs.com/m0488/p/3791189.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!