报表生成器FastReport教程:如何在Delphi / Lazarus / C ++ Builder中将数据库数据转换为文档

在可以创建,填充,修改和管理数据的许多DBMS中,Oracle DB,MySQL,Microsoft SQL Server,PostgreSQL,FireBird可能是最受欢迎的,但绝不是全部。

Fastreport.NET在线购买价更低,专享85折起!赶紧加入购物清单吧!

如何将大量数据转化为内容丰富的报告/strong>

在可以创建,填充,修改和管理数据的许多DBMS中,Oracle DB,MySQL,Microsoft SQL Server,PostgreSQL,FireBird可能是最受欢迎的,但绝不是全部。

报表生成器FastReport教程:如何在Delphi / Lazarus / C ++ Builder中将数据库数据转换为文档

通常,他们会在很长一段时间内都充满这些数据(例如,在计时系统,货物定单中,以及“如何从中获取信息的问题)(可读性,视觉和人眼均可理解,以供进一步分析)推迟到以后。让我们考虑“然后”做什么-当我们拥有“完整的数据库”并且我们(或公司的管理层)想知道“实际情况是什么我们有效地利用我们在流程中收集的数据,从这些数据中获取信息并基于该信息做出决策!”。基本上,这就是用简单语言定义的商业智能(BI)。

创建它们(报告)的可能性很多,但是在这里我们将看一下FastReport VCL。有一个用于生成模板的设计器,一个预览图和许多其他功能可以执行不同级别的任务-我们在其他文章中已经介绍过它们,但仍然没有全部看到。

FastReport可以同时使用多个数据源(数据库),或者从所谓的用户源(不是数据库)(数组或常规文件)中检索它们。

如何在Delphi中从DB获取信息/strong>

为了连接数据源,必须从组件面板中应用连接器(TfrxDBDataSet)。这是数据和FastReport之间的链接。

现在,我将简要介绍一下这些组件的作用:

TfrxDBDataSet是用于处理数据源的元素,它也与TDataSet兼容,但是TfrxIBODataSet用于IB对象,TfrxUserDataSet也用于其他资源-数组,文件等。

首先,使用DataSet属性连接到查询或表本身,或者数据源(它连接到TDataSource组件)。

为了使数据已经存在于报告中,您需要指定将哪些数据放入我们的报告中!这也很容易做到。

在FastReport VCL设计器中的菜单Report-> Data中选择。

FastReport VCL

选择必要的元素,然后单击“确定”! 

FastReport VCL

将此数据源连接到频段。在其属性中选择DataSet(表)。现在将表/请求字段拖放到适当的区域。单次拖动后,在基带-字段上具有自动链接的特殊性。

如果需要查看生成的报告,可以使用预览!不要忘记,您几乎可以添加任何东西,无论是QR码,地图 还是其他附件,在FastReport VCL中就足够了。

预习:

在左上角选择“文件”。

FastReport VCL

设置列表将立即出现。在其中选择“预览”。

而已!完成此操作后,您将看到完成的报告的外观。

FastReport VCL

如果您满意,则可以保存为其他格式,然后导出到云存储或PC内存以及进行打印。

选择“保存”和所需的格式。
所选的将被发送到指定位置进行保存/导出!

FastReport VCL 根据代码生成报告需要执行以下步骤:
-清除报告。
FastReport VCL

FastReport VCL

FastReport VCL

-添加数据源。

FastReport VCL FastReport VCL -添加“数据”页面

FastReport VCL -添加报告页面。

FastReport VCL -在页面上添加乐队。

FastReport VCL

FastReport VCL -设置频段属性并将其连接到数据。

FastReport VCL -在每个频段上添加对象。

FastReport VCL

FastReport VCL -设置对象属性并将其连接到数据。

FastReport VCL 保存模板,然后按“预览”! 

FastReport VCL 报告准备好了!我们还可以将其保存为XML,PDF,甚至CSV或DBF,以便进行进一步分析!

我知道,如此大量的屏幕截图会使人感到沮丧。但是在撰写本文时,制作所有这些屏幕截图是最长,最耗时的任务。编写报告本身大约需要5分钟。并且如果它更快并且没有截图/span>
在Delphi / Lazarus的数据库中创建报告-代码!

考虑创建一个简单的“列表”类型的报告。假设我们有组件frxReport1:TfrxReport和frxDBDataSet1:TfrxDBDataSet(后者与来自DBDEMOS表Customer.db的数据连接)。我们的报告将包含一页,其中包含报告标题和主数据库。报告标题栏将包含一个带有文本“ Hello FastReport!”的对象。并且主数据将具有一个引用字段“ CustNo”的对象。

在Delphi / Lazarus / C ++ Builder中将数据库数据转换为文档

 var DataPage: TfrxDataPage; Page: TfrxReportPage; Band: TfrxBand; DataBand: TfrxMasterData; Memo: TfrxMemoView;{ Clear the report }frxReport1.Clear;{ add data source to the available list for the report }frxReport1.DataSets.Add(frxDBDataSet1);{ add “data” page }DataPage := TfrxDataPage.Create(frxReport1);{ add page }Page := TfrxReportPage.Create(frxReport1);{ create unique name }Page.CreateUniqueName;{ set page properties by default }Page.SetDefaults;{ change page orientation }Page.Orientation := poLandscape;{ add report title }Band := TfrxReportTitle.Create(Page);Band.CreateUniqueName;{ it’e enough for a band to set coordinate Top and hight }{ both coordinates are in pixels }Band.Top := 0;Band.Height := 20;{ add object on report title }Memo := TfrxMemoView.Create(Band);Memo.CreateUniqueName;Memo.Text := 'Hello FastReport!';Memo.Height := 20;{ this object will be aligned with the band width }Memo.Align := baWidth;{ add master data }DataBand := TfrxMasterData.Create(Page);DataBand.CreateUniqueName;DataBand.DataSet := frxDBDataSet1;{ coordinate Top shouldn’t cross the previous band! }DataBand.Top := 100;DataBand.Height := 20;{ add object on master data }Memo := TfrxMemoView.Create(DataBand);Memo.CreateUniqueName;{ connect to data }Memo.DataSet := frxDBDataSet1;Memo.DataField := 'CustNo';Memo.SetBounds(0, 0, 100, 20);{ align text on the right side of the object }Memo.HAlign := haRight;{ show the report }frxReport1.ShowReport;

因此-我们已经了解了如何将不可见但已收集的数据转换为报告-文档。您现在可以发布它们或将其传递给分析师!


还想要更多吗可以点击阅读【FastReport 报表2020最新资源盘点】查找需要的教程资源。让人兴奋的是FastReport .NET报表正在网火热销售中!惠享超低折扣,低至3701元起!>>查看价格详情

标签:

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月2日
下一篇 2021年1月2日

相关推荐

发表回复

登录后才能评论