本文连接:https://blog.csdn.net/qq_25439957/article/details/87110559
如下在WINDOWS10 + DELPHI XE 10.3 FireDAC +SQL SERVER 2008 下经过:工具
如下在WINDOWS10 + DELPHI XE 10.3 FireDAC +SQL SERVER 2008 下经过:.net
第一步,建立以下表单:设计
第二步 拖入如下几个控件:orm
frxDBDataset1.DataSet:=SalesTable;对象
双击: FrxReport1打开FastReport设计器;以下blog
在窗口顶部 报表(R)下选择 ‘数据’ 弹出以下图:it
勾选 住 FRXBDATASET1;按肯定。ast
窗口右侧有 数据树如图 class
左侧有点击插入BRAND 页头,页尾,主数据,报表抬头;以下test
把右侧 数据树 数据 下的 FRXDBDataSet1下的字段 ,SalesID,SalesPersonID.等拉到MasterData,以下图:
为了查看即时效果,可打开 菜单 ‘文件(F)‘下的’预览‘。效果以下图:
可看出缺乏 标题 ;
再次选择MasterDATAS下的字段名,复到Pageheader下,如图:
双击PageHeader下的各字段名,修改成中文名字
还能够继续美化:左侧工具栏倒数第二个,插入“线型对象” ,在标题下划一条横线;在MasterDatas下的各字段下划一条横线以下图:
好好看下图的LINE;
按 文件(F)菜单下的预览结果以下图:
达到预期效果;
按 文件(F)菜单下的 另存为,保到一个指定的文件夹里。好比C:\oz\ ,文件名为test.fr3;
双击 “预览” 按钮;输入 如下代码:
procedure TForm1.Button1Click(Sender: TObject);
begin
FDMemTable1.Close();
FDMemTable1.FieldDefs.Clear();
FDMemTable1.FieldDefs.Add('salesID', ftInteger, 0, True);
FDMemTable1.FieldDefs.Add('salesPersonID', ftInteger, 0, True);
FDMemTable1.FieldDefs.Add('CustomerID', ftInteger, 0, True);
FDMemTable1.FieldDefs.Add('productID', ftInteger, 0, True);
FDMemTable1.FieldDefs.Add('Quantity', ftString, 20, false);//创建一个与SalesTable同样的表
FDMemTable1.CreateDataSet();//创建空数据集
FDMemTable1.AppendRecord([
SalesTable.FieldByName('salesID').Value,
SalesTable.FieldByName('salesPersonID').Value,
SalesTable.FieldByName('CustomerID').Value,
SalesTable.FieldByName('productID').Value,
SalesTable.FieldByName('Quantity').Value]);
//把SalesTable表的当前字段复制到FDMemTable1;
FDMemTable2.Active:=false;
FDMemTable2.Data:= FDMemTable1.Data ;//把FDMemTable1.Data复制给FDMemTable2.Data
frxDBDataset1.DataSet:=FDMemTable2;//把FDMemTable2赋值给frxDBDataset1.DataSet;//此举完成了对报表数据集的代替了。
frxReport1.LoadFromFile('C:\oz\test.fr3') ;//加载test.fr3
frxReport1.showReport;//预览
end;
end. ———————————————— 版权声明:本文为CSDN博主「qq_457565758」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处连接及本声明。原文连接:https://blog.csdn.net/qq_25439957/article/details/87110559