FastReport 4 介绍(Dephi)

TfrxDBDataset  

TfrxUserDataset 数据存取元件。

FastReport 使用这些元件读取及参考数据库的字段,这两个元件都源于 “TfrxDataSet” 并继承其大部分的功能。 TfrxUserDataSet 元件允许构建未连接到数据库的报表,而由其它来源接收数(据如:数列、文件等)。在此同时,程序员仅需提供浏览此数据集的功能,资料接收并非由此元件执行,而是用其它的方法(例如,经由“TfrxReport.OnGetValue”事件)。

 TfrxUserDataSet 元件有下列的属性: 

   (1) property RecNo: Integer readonly;目前记录编号,首笔的记录编号是“0”

   (2) property Enabled: Boolean default True;定义此 件是否可在designer 里面使用。

  (3) property RangeBegin: TfrxRangeBegin default rbFirst;数据导航(navigation)的起点。

    下列的值可以使用: rbFirst – 从数据的第一笔记录开始。rbCurrent – 从当前的记录开始

   (4)property RangeEnd: TfrxRangeEnd default reLast;数据导航(navigation)的起点。

    下列的值可以使用: reLast – 直到数据结束。ReCurrent – 直到目前的记录。reCount – “RangeEndCount” 属性而                  定。

   (5)   property RangeEndCount: Integer;数据集中的数据个数,此功能只在“RangeEnd”属性等于reCount 有效。

    (6)   property UserName: String;符号名称。在报表设计环境(Designer)下,将被显示于DataSet 的下方。

    (7)   property OnCheckEOF: TfrxCheckEOFEvent; TfrxCheckEOFEvent = procedure(Sender: TObject; var Eof: Boolean)of                   object; 此事件在数据集的尾端时,Eof 参数将返回True

    (8)   property OnFirst: TNotifyEvent;数据集移至第一笔的位置时,会触发此事件。

      (9)   property OnNext: TNotifyEvent;数据集移至下一笔的位置时,会触发此事件。

     (10) property OnPrior: TNotifyEvent;数据集移至上一笔的位置时,会触发此事件。

2.   TfrxDBDataSet 元件用来连接以TDataSet, TTable TQuery 为基类的数据库元件,有关数据的导航及字段的参考都是自动的,程序员不需特殊的设定。

除上述属性外,该元件有下列的属性:

 (1)   property CloseDataSource: Boolean default False;报表创建完成后,关闭数据库。

 (2)   property OpenDataSource: Boolean default True;在报表创建之前打开数据库。

   (3)   property FieldAliases: TStrings;数据集字段的符号名称(别名)

  (4)    property DataSet: TDataSet;

  (5)    property DataSource: TDataSource;连结至TDataSet TDataSource 类型的元件。

  (6)    property OnClose: TNotifyEvent;当关闭数据集时触发此事件。

 (7)    property OnOpen: TNotifyEvent;当打开数据集时触发此事件

3.    TfrxDesigner TfrxDesigner 元件是报表设计器,当使用此元件,你的工程文件就可以使用报表设计器,此元件它只包含一些报表设计器的设定,当加入”frxDesign” 单元到uses 清单中,就表明与报表设计器连接上了。

        此元件包含下列的属性:

        (1)   property CloseQuery: Boolean default True;定义结束设计报表是否询问储存报表之用。

property OpenDir: String;打开报表的预置数据目录

        ( 3)   property SaveDir: String;储存报表的预置数据目录。

         (4)   property Restrictions: TfrxDesignerRestrictions;报表设计环境下,限制不同的报表操作标识(flag),此标识包含单一或混合数据值: drDontInsertObject – 禁止插入物件drDontDeletePage – 禁止刪除页面drDontCreatePage – 禁止建立新的页面 drDontChangePageOptions – 禁止修改页面属性drDontCreateReport – 禁止建立新报表 drDontLoadReport – 禁止载入报表drDontSaveReport – 禁止储存报表 drDontPreviewReport – 禁止预览报表drDontEditVariables – 禁止编辑变量 drDontChangeReportOptions – 禁止修改报表属性

       (5)    property OnLoadReport: TfrxLoadReportEvent; TfrxLoadReportEvent = function(Report: TfrxReport): Boolean of object; 此事件发生在载入报表之时。利用此事件,你可以从数据库载入报表。

       (6)    property OnSaveReport: TfrxSaveReportEvent; TfrxSaveReportEvent = function(Report: TfrxReport;SaveAs:Boolean): Boolean of object; 此事件发生在储存报表之时。利用此事件,你可以将报表储存于数据库中。

      (7)   property OnShow: TNotifyEvent;此事件发生在启动报表设计环境时。

4.   TfrxPreview 此元件专供建立自定义报表合预览窗口使用。

      (1)   procedure AddPage;加入空白页面到报表末端。

      (2)   procedure DeletePage;删除当前页。

      (3)   procedure Print;打印报表。

      (4)   procedure LoadFromFile;显示文件载入窗口。

      (5)   procedure LoadFromFile(FileName: String);载入指定的文件。

      (6)   procedure SaveToFile;显示文件储存窗口。

      (7)   procedure SaveToFile(FileName: String);储存文件到指定的文件名称

      (8)   procedure Edit;载入当前页至设计模式供编辑使用。

      (9)   procedure Export(Filter: TfrxCustomExportFilter);使用指定的导出过滤器导出报表。

      (10) procedure First;第一页。

      (11) procedure Next;下一页。

      (12) procedure Prior;上一页

      (13) procedure Last;最后一页。

      (14) procedure PageSetupDlg;显示页面设定窗口。

      (15) procedure Find;显示文字搜寻窗口。

      (16) procedure FindNext;继续找下一个。

      (17) procedure Cancel;取消创建报表。

      (18) procedure Clear;清除报表。

      你可以使用下列属性:

       (1)   property PageCount: Integer readonly;报表页数。

       (2)   property PageNo: Integer;目前报表页码(起始值为1)。要移至其它页面,指定此属性的值即可。

       (3)   property Tool: TfrxPreviewTool;选取工具。

       (4)   property Zoom: Extended;显示比例,“1” 代表100%

       (5)   property ZoomMode: TfrxZoomMode;显示模式,可以的显示模式如下:zmDefault – 预置值,显示比例根据“Zoom” 属性而定zmWholePage – 整页模式zmPageWidth – 与页面宽度相同 zmManyPages – 一屏显示多页

      (6)   property OutlineVisible: Boolean;是否显示报表大纲(树状结构)

      (7)   property OnPageChanged: TfrxPageChangedEvent;目前页面要改变时,此事件将被触发。

----------------------------------------------------

----------------------------------------------------

 

 

1date给字段设置别名:

使用FRXDBDATASET FieldAliases属性,示例如下:
with TfrxDBDataset(Sender) do
begin
 FieldAliases.Clear;
 for f:=0 to Dataset.FieldCount-1 do
 begin
  FieldAliases.Add(dataset.Fields[f].FullName+'='+dataset.Fields[f].DisplayLabel);//
设置FRXDBDATASET的字段别名为对应的数据集字段的DisplayLabel
  end;
end;
注意:FRXDBDATASET的字段别名的格式为"字段名=别名"

2 TfrxUserDataSet 给设置别名: 设置属性UserName

property UserName: String;符号名称。在报表设计环境(Designer)下,将被显示于DataSet 的下方。

3 Running a report 执行报表应用下列两个“TfrxReport”元件的方法启动报表:procedure ShowReport(ClearLastReport: Boolean = True);

4, Designing a report 设计报表通过“TfrxReport.DesignReport”方法调用报表设计器(reportdesigner),要具有设计报表的功能,你必须在工程文件中加入“TfrxDesigner”元件,或在uses 加入“frxDesgn”单元。

5, 加载、储存报表

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) 。报表预置的后缀名称为“FR3”

范例: frxReport1.LoadFromFile('c:/1.fr3'); frxReport1.SaveToFile('c:/2.fr3');

6 Building a composite report (batch printing) 建立复合报表(批量打引)

在某些情况下,我们必须一次打印数份报表,或封装及实现多份报表于同一个预览窗口。要执行这项工作,在FastReport 中有多个工具,允许建立一份新的报表,置于另一份已存在的报表末端,«TfrxReport.PrepareReport»方法有此«ClearLastReport», «True»,此参数定义是否清除前一份已建立的报表。下列的程序码示范如何从两个报表定义文件,批次建立一份报表: frxReport1.LoadFromFile('1.fr3'); frxReport1.PrepareReport; frxReport1.LoadFromFile('2.fr3'); frxReport1.PrepareReport(False); frxReport1.ShowPreparedReport; 我们载入第一个报表并在后台处理报表(不显示),然后我们载入第二份报表到同一«TfrxReport»物件,并置参数 «ClearLastReport» 的值为假(False)建立报表。此功能允许第二份报表的结果接在第一份报表的后面。最后,我们将两份报表显示在同一个预览窗口中。

7 Numbering of pages in a composite report 复合报表中的页数你可以使用 «Page», «Page#», «TotalPages» «TotalPages#» 系统变量显示页码或总页数。在复合式报表,这些变量代表的意义如下:Page -目前报表的页码Page# -批次报表的页码TotalPages -目前报表的总页数(报表必须设定为two-pass)TotalPages# -批次报表的总页数 Combination of pages in a composite report 复合报表的合并页如上所述,当打印时,报表设计的属性 «PrintOnPreviousPage»可以利用前一页的可用空间打印下一页的内容。在复合报表中,它允许你在前一份报表最后一页的可用空间上建立一份新的报表,要执行此功能,必须在每一份连续报表的第一个设计页面启动属性«PrintOnPreviousPage»

8 Interactive reports 交互式报表在交互式报表中,我们可以在预览窗口定义任何报表物件对鼠标按下的反应。例如,使用者选择数据列,然后做一份新的报表,显示选取列的明细数据。任何报表都可以成为交互式报表,要执行此操作,你只需建立TfrxReport.OnClickObject 事件处理程序。下面是此事件处理的范例:

procedure TForm1.frxReport1ClickObject(Page:TfrxPage;View:TfrxView;Button: TMouseButton; Shift: TShiftState; var Modified: Boolean);

begin

if View.Name = 'Memo1' then

ShowMessage('Memo1 contents:' + #13#10 + TfrxMemoView(View).Text);

if View.Name = 'Memo2' then

begin

TfrxMemoView(View).Text:=InputBox('Edit','Edit.Memo2.text:', TfrxMemoView(View).Text);

Modified := True;

end;

end;

 

第一章 设计 7 1.1、控制键 8 1.2、鼠标操作 9 1.3、工具栏 10 1.3.1、设计模式工具栏 10 1.3.2、“标准”工具栏 10 1.3.3、“文本”工具栏 11 1.3.4、“边框”工具栏 12 1.3.5、“对齐”工具栏 12 1.4、设计选项 13 1.5、报表设置 15 1.6 页面设置 16 第二章 创建报表 19 2.1、报表对象 20 2.2、“世界,你好!”报表示例 20 2.3、“Text”组件 21 2.4、在“Text”组件中使用HTML标记 23 2.5、通过“Text”组件显示公式 24 2.6、FastReport中的Bands 25 2.7、Data Band 26 2.8、TfrxDBDataSet组件 27 2.9、“客户列表”报表 27 2.10、通过text组件显示数据表字段 29 2.11别名 30 2.12、变量。 30 2.13、“Picture”控件 32 2.14、图形报表 33 2.15、多行文本显示 34 2.16、文本拆分 36 2.17、组件的Wrap 37 2.18、显示数据表中的数据 38 2.19、标签式打印 40 2.20、子bands 42 2.21、组件的移动 43 2.22、两个数据阶的报表(主—细) 43 2.23、页首和页尾数据Band 46 2.24、多页报表 47 第三章 分组集合体 50 3.1、分组打印 51 3.2、其他分组特性 53 3.3页码的重设 55 3.4、组的操作 55 3.5、行数 56 3.6、函数集 57 3.7、页和报表的统计 60 3.8、插入汇总函数 61 第四章 格式化、加强 62 4.1、格式化输出结果 63 4.2、内嵌格式化 63 4.3、条件显示 65 4.4、分行显示数据行的颜色 66 第五章 嵌套报表 68 5.1嵌套报表 69 5.2、设计子报表 69 5.3、子报表中的限制 69 5.4、PrintOnParent选项 70 第六章 脚本 72 6.1、体验脚本语言 73 6.2、脚本结构 76 6.3、“世界你好!”脚本 78 6.4、脚本中组件对象的使用 79 6.5、调用报表变量列表中的变量。 79 6.6、调用数据表子段 80 6.7、脚本中调用汇总函数 80 6.8、报表中变量值的显示 80 6.9、事件 81 6.10、一个使用“OnBeforePrint”事件的例子 82 6.11、在组头打印组的汇总信息 84 6.12、“OnAfterData”事件 88 6.13、Service组件 89 6.13.1、Report组件 89 6.13.2、Engine组件 90 6.13.3、“OutLine”组件 91 6.13.4、引擎组件的使用 91 6.15 Anchors 94 6.16 “Outline” 组件的使用方法 96 6.17 “OnManualBuild” 页面事件 98 6.18 脚本中的组件的建立 104 第七章 交叉报表 106 7.1、创建交叉报表 108 7.2、改变显示 110 7.3、使用函数 112 7.4、对结果进行排序 112 7.5、组合标题的表格 113 7.6、调整单元格的宽度 115 7.7、字体颜色和突出显示 117 7.8、使用脚本语言管理组件 118 7.9、调整行和列的大小 123 7.10、手动填充表格单元 124 7.11、在表格单元中加入其他组件 126 7.12、一些有用的设置 129 第八章 制图表 132 8.1、chart数据中数字的限制 137 8.2、设置 137 8.3、指定数字制表 138 8.4、利用脚本进行制表 139 8.5、在delphi环境中创建的报表的打印 139 第九章 点阵报表 140 9.1、点阵报表使用交叉报表 144 9.2、点阵报表的打印 145 9.3、命令组件 146 第十章 对话框窗体 147 10.1、控件 148 10.2、“世界你好!”报表 149 10.3、输入参数,并传递到报表中 150 10.4、组件的交互 150 10.5、多个对话框表单 151 10.6、对话框窗体的管理 152 第十一章 数据访问组件 155 11.1、组件的描述 156 11.1.1、TfrxDBLookupCombobox组件 157 11.1.2、TfrxADOTable组件 157 11.1.3、TfrxAdoQuery组件 159 11.1.4、TfrxADODatabase组件 161 11.2、创建报表 161 11.3、简单的列表式报表 162 11.4、参数查询报表 163 11.5、其他可用配置 164 第十二章 报表的继承性 166 12.1、创建报表 167 12.2、修改基础模板 169 12.3、组件的继承 170 第十三章 报表向导 171 13.1、新报表向导 172 13.2、数据连接向导 175 13.3、新table向导 176 13.4、新query向导 177 13.5、查询语句生成 177 第十四章 报表的预览 打印 导出 180 14.1、控制键 182 14.2、鼠标控制 182 14.3、报表的打印 183 14.4、报表中的文字搜索 183 14.5、报表的导出 184
详细介绍FastReport 4的在delphi中的使用方法,没有比这更详细的了。   FastReport是功能齐全的报表控件,使开发者可以快速并高效地为.NET/VCL/COM/ActiveX应用程序添加报表支持。   复杂的业务型应用系统,报表不仅是组成应用的重要部分,还常常是相当复杂的。现在很多应用系统都要求提供自定义报表的功能——即客户可以自行设计、修改报表。   在C/S结构系统中,报表问题有很多成熟的解决方法。如DELPHI开发工具不仅自带有报表控件,还可以利用第三方控件来实现快速灵活的报表制作和打印,其中有名的控件是FR-Software & A.Tzyganenko 的FastReportFastReport提供了能与DELPHI无缝集成的从设计到打印的完整控件包,提供的设计界面友好灵活,对于开发可让用户自定义报表的C/S应用来说,是一种很好的解决方式。   FastReport是非常强大的报表控件,相比QuickReportReportBuilder更加灵活,又非常小巧,速度快。 Fast Reports, Inc.   成立于1998年,Fast Reports, Inc.开发了快速报表软件:应用程序、库和插件。   FastReports, Inc.公司的旗舰产品—FastReport,由于其独特的编程原则成为了Delphi平台最优秀的报表控件。对于如此年轻的企业来说这是巨大的成功。FastReport VCL版本在2001年荣获Delphi人最受欢迎类的读者杂志“最佳报表控件”第二名。  FastReport报表生成器(无论VCL平台还是.NET平台),跨平台的多语言脚本引擎FastScript,桌面OLAP FastCube,如今都被世界各地的开发者所认可,这些名字被等价于“速度”、“可靠”和“品质”。 FastReports公司是国际型的报表控件开发商,在美国,欧洲和非洲不同国家均设有办事处。FastReports网站有10种不同语言的介绍FastReports报表拥有40种语言的本地化的信息。  现在,FastReports拥有50多个国家的经销商和合作伙伴,20,000多个来自世界各地的客户。
### 回答1: FastReport 4.3支持 Delphi 11,这是因为FastReport是一款专业的报表生成工具,它提供了与多种开发平台的集成,包括Delphi等。通过FastReport,用户可以快速、方便地生成高质量的报表。支持Delphi 11说明FastReport 4.3与该版本的Delphi具有良好的兼容性,可满足用户在该版本Delphi下的报表生成需求。此外,FastReport 4.3还提供了多种数据源和报表模板,可满足不同用户需求。总之,FastReport 4.3支持Delphi 11,可以为开发者提供更加便捷、高效的报表生成体验。 ### 回答2: FastReport是一款非常受欢迎的报表生成工具,它可以帮助开发人员快速简便地生成高质量的报表。在FastReport版本4.3中,它已经支持Delphi 11,这意味着您可以在Delphi 11开发环境中使用FastReport 4.3,为您的项目添加功能强大的报表功能。 FastReport 4.3支持Delphi 11的好处在于可以更好地满足Delphi 11的开发需求,特别是在生成报表方面。可以将FastReport库文件插入Delphi 11中,通过可视化的界面进行报表设计器的设计、预览和导出。同时,FastReport 4.3还提供了多种报表元素,可以进行报表的自由布局和排版。 通过与Delphi 11整合,FastReport4.3还增加了一些新的功能,如报表设计器中的模板、样式,使其比以往任何时候都更加灵活和易于使用。在Delphi 11环境中,FastReport 4.3的使用将更加简便、灵活和高效,为Delphi 11开发者提供了另一个强大的工具。 总之,FastReport4.3的支持和适配Delphi 11,为Delphi 11开发者提供了更加多样化的报表生成功能,使其更加便捷、高效、灵活地生成和管理报表
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值