FastReport VCL是用于Delphi,C ++ Builder,RAD Studio和Lazarus的报告和文档创建VCL库。它提供了可视化模板设计器,可以访问最受欢迎的数据源,报告引擎,预览,将过滤器导出为30多种格式,并可以部署到云,Web,电子邮件和打印中。
近日,FastReport VCL更新至v6.9,在新版本中,在PDF导出中增加了对以下对象的交互式表单支持:文本,复选框和图片。能够通过InteractiveFormsFontSubset属性将所需的字形仅包含在交互式形式中。同时修复了多个Bug问题。欢迎下载体验。(点击下方按钮下载)
通常,您将使用设计器创建大多数报告。但是,在某些情况下(例如,当报告的表单未知时),有必要通过代码手动创建报告。
要手动创建报告,应按顺序执行以下步骤:
清除报告组件
添加数据源
添加“数据”页面
添加报告页面
在页面上添加乐队
设置频段的属性,然后将其连接到数据
在每个频段上添加对象
设置对象的属性,然后将它们连接到数据
让我们检查一下“列表”类型的简单报告的创建。假定我们具有以下组件:frxReport1:TfrxReport和frxDBDataSet1:TfrxDBDataSet(最后一个连接到DBDEMOS的数据,«Customer.db»表)。我们的报告将包含一页带有“报告标题”和“主数据”带的页面。在“报告标题”区域中,将出现一个带有“ Hello FastReport!”的对象。文本,而“主数据”将包含一个对象,该对象具有指向“ CustNo”字段的链接。
Pascal:
var
DataPage: TfrxDataPage;
Page: TfrxReportPage;
Band: TfrxBand;
DataBand: TfrxMasterData;
Memo: TfrxMemoView;
{
clear a report }
frxReport1.Clear;
{
add a dataset to the list of ones accessible for a report }
frxReport1.DataSets.Add(frxDBDataSet1);
{
add the "Data" page }
DataPage := TfrxDataPage.Create(frxReport1);
{
add a page }
Page := TfrxReportPage.Create(frxReport1);
{
create a unique name }
Page.CreateUniqueName;
{
set sizes of fields, paper and orientation by default }
Page.SetDefaults;
{
modify paper’s orientation }
Page.Orientation := poLandscape;
{
add a report title