Report 报表fr3控件简单用法-delphi

RM(Report Machine)是一个功能强大的Delphi报表控件包。使用它可以制作出非常复杂的报表。下面讲述最简单的用法:

双击RMReport控件,开始设计报表模板。

下面讲一下实际的应用案例如:

1. 对于一张纸要两面打的报表你有什么好办法?
打印时可以选择打奇数页还是打偶数页。


2. 怎么能在一个页面中打印固定的条数,另外最后一页记录不够时怎么打出空白的格子出来啊.
固定条数:设置LinesPerPage
空白格子:设置 AutoAppendBlank=True


3.怎样屏蔽双击报表进入设计报表的界面?
RMReport1.ModifyPrepared := False


4.怎样在报表中增加表合计???
可以放在标题栏,页面设置中选"两遍报表"
汇总框的TotalCalc=True即可


5.我想用代码把参数传递给报表中的某一个TRMMemoView该怎么做?
RMReport1.FindObject(‘Memo1‘).Memo.Text := ‘ddddd‘
或者
RMVariables[‘a1‘] := ‘ddddd‘; //这样就可以在报表中使用变量‘a1‘了。


6.如何能够不打印重复内容?
Suppres=True


7.如何让打印预览时双击不能进入报表编辑器!
设置RMReport.ModifyPreview=False


8.如何在报表程序中控制MEMO的边框是否显示
在delphi中:
memo1.LeftFrame.Visible := False
memo1.TopFrame.Visible := False;
memo1.RightFrame.Visible := False;
memo1.BottomFrame.Visible := False
在报表的script中
memo1.FrameTyp := 15; //这个参数多试几次就知道如何设置了
FrameTyp := 0; //不显示


9.怎样改变page的名称和控制它显示但不打印
可以,在Page1的OnBeforePrint中
begin
Page1.Visible := True;
Page1.Visible := False; //不显示
end;


10.Report Machine中,如何强制每3行一个表格
设置主项数据栏:LinesPerPage=3
如果三人一行有办法:设置主项数据栏的Columns=3
用分组打印,分组条件: NowLine > 3
在分组标头的OnBeforePrint:
begin
NowLine := 1;
end;
在主项数据的OnBeforePrint:
begin
NowLine := NowLine + 1;
end;


11.能否只显示分组统计值而不显示分组数据?
可以,设置主项数据栏:Visible=False
统计框:CalcNoVisible=True


12.能否只对超过长度的单条记录进行折行?
可以,设置文本框:Stretched=True; wordwrap=True
设置文本框所在的栏:Stretched=True; Breaked=True


13.如何实现打印预览的问题
RMReport1.LoadFromFile(‘c:1.rmf‘); //读入报表
RMReport1.ShowReport; //预览
RMReport1.PrintReport; //打印
RMReport1.DesignReport; //设计


14.请问如何在程序中控制:1、纵向打印还是横向打印。2、分组标头是否每组换页。
1.RMReport1.Pages[0].ChangePaper()
2.RMReport1.Pages[0].FindObject(分组标头栏名).Prop[‘NewPage‘] := False;


15.直接打印的方法是什么?
RMReport1.ShowPrintDialog := False;
RMReport1.PrintReport;


16.页边距改变以后,所有控件应该相应的改变位置。
需要在页面设置中不选"缩放到可打印区域"页面居中或
RMReport1.Pages[0].pgMargins := ; //这样试试


17.如何从导入一个rtf文件作为TRMFormReport的PageHeader
var
TempStream : TMemoryStream;
begin
TempStream := TMemoryStream.Create;
RichEdit1.Lines.SaveToStream(TempStream);
TempStream.Position := 0;
RMFormReport1.PageHeader.Caption.LoadFromStream( TempStream);
TempStream.Free;
end;


18.怎样确定报表模版目录?
设置TRMDesigner的TemplateDir


19.我想动态设"虚拟数据集"该怎么设!
(RMReport1.FindObject(‘Band1‘) as TRMBandView).DataSet :=‘RMDBDataSet1‘;


20.在程序中 RMVariables[‘aaa‘] := form1.Caption;
在报表中就可以使用变量‘aaa‘


21.左边距:
CurReport.Pages[0].pgMargins.Left := Round(RMConvertToPixels(毫米 * 10, rmsuMM))


22.RMVariables[‘品牌‘] :=True; RMVariables[‘品名‘] :=‘计算机‘;
在Page1的OnBeforPrint事件中的代码如下:
If 品牌 Then
MessageBox(品名);


23.每页只打10条记录怎么处理啊?

主项数据栏LinePerPage=10


24.怎么实现主项数据的统计啊???
最好用栏目注脚栏,在上面放统计框,然后设置CalcType即可


25.动态生成报表时,RM的页边距如何设定?
TRMPage.pgMargins := Rect(30, 30, 40, 40);


26.如何在程序运行时,在一个预览或者打印窗口中,一次打开多个报表文件
用TRMCompositeReport,
RMCompositeReport1.Reports.Clear;
RMCompositeReport1.Reports.Add(RMReport1);
RMCompositeReport1.Reports.Add(RMReport2);
RMCompositeReport1.ShowReport;


27. rm如何进行套打
Page1不是有个BackGroundPic属性吗,这个就是专门做套打的


28. GridView1 能象Microsoft Excel实现 a3=a1+a2吗?
可以,a3内容
[memo1.CalcValue + memo2.CalcValue]


29. 如何打印中括号如: [2002]
在memoview的OnBeforePrint中
begin
memo := ‘[2002]‘;
end;
或者把‘[‘,‘]‘定义成变量:
RMVariables[‘a1‘] := ‘[‘;

RMVariables[‘a2‘

报表脚本例子:

unit Report;

interface

procedure Memo1OnBeforePrint(Sender: TObject);
implementation

procedure Memo1OnBeforePrint(Sender: TObject);
begin
Memo1.Text := 'test';
end;

procedure Main;
begin

end;

end.

Test_FastReportPrint4万能fr3报表查看器 自设计中支持按文本格式查看fr3报表, 前提是报表中最好不要有图片,否则打开会无响应或反应很慢 测试fr3文件2M左右反应很慢 procedure TFrm_BarCode.FallBitBtn6Click(Sender: TObject); begin //默认设计 MyTmsPrintDropBtn1.FrxReport.DesignPreviewPage end; procedure TFrm_BarCode.FallBitBtn3Click(Sender: TObject); begin //自写设计 MyTmsPrintDropBtn1.PrintRpt_DesignerW(FrptPrintIDX,Frpttitle,FrptFile); end; procedure TFrm_BarCode.FallBitBtn5Click(Sender: TObject); begin //预览 MyTmsPrintDropBtn1.PrintRpt_PreviewNoDialog(FrptPrintIDX,Frpttitle,FrptFile); end; procedure TFrm_BarCode.FallBitBtn4Click(Sender: TObject); begin //无对话框打印 MyTmsPrintDropBtn1.PrintRpt_PrintNow(FrptPrintIDX,Frpttitle,FrptFile); end; procedure TFrm_BarCode.MyTmsPrintDropBtn1BeforeDropMenuClick( Sender: TMenuItem; ItemsTag: Integer; var CanClick: Boolean; var Memo: String); begin MyTmsPrintDropBtn1.RptFileName:=''; end; procedure TFrm_BarCode.AdvStringGrid1GetEditorType(Sender: TObject; ACol, ARow: Integer; var AEditor: TEditorType); begin if (ACol=0 ) and (ARow=0) then begin AEditor:=edComboList; end; end; procedure TFrm_BarCode.MyTmsPrintDropBtn2BeforeDropMenuClick( Sender: TMenuItem; ItemsTag: Integer; var CanClick: Boolean; var Memo: String); begin with MyTmsPrintDropBtn1 do begin RptPrintIDX:=0; RptPrtTitle:='xxxxxx'; RptFileName:=gsPath+'data\test.fr3' end; end; procedure TFrm_BarCode.FallBitBtn1Click(Sender: TObject); begin MyTmsPrintDropBtn1.FrxReport.PreviewPages.Export(frxXLSExport1) ; end; procedure TFrm_BarCode.FallBitBtn8Click(Sender: TObject); begin //初始化数据 with MyTmsPrintDropBtn1 do begin RptPrintIDX:=StrToInt(Trim(lbe_idx.Text)); //打印机 RptPrtTitle:=Trim(lbe_title.Text); //打印时显示的文件名 RptFileName:=Trim(lbe_file.Text) //打印模板 end; end; end.
### 回答1: FR3报表编辑器中文版是一款专门用于设计和生成报表的软件工具。它是一种强大且易于使用的工具,适用于各种类型的报表制作,如财务报表、管理报表等。 FR3报表编辑器中文版具有许多功能和特点,使其成为首选的报表设计工具。首先,它提供了丰富的报表模板和样式库,用户可以根据自己的需求选择合适的模板并进行自定义调整。其次,该软件支持多种数据源的导入和整合,可以轻松地将不同来源的数据整合到一个报表中。 此外,FR3报表编辑器中文版具有强大的数据处理功能。用户可以根据自己的需要对数据进行排序、筛选、计算等操作,以便生成符合需求的报表。同时,它还提供了丰富的图表和图形库,用户可以根据需要插入各种图表和图形,使报表更具可读性和可视化效果。 另外,FR3报表编辑器中文版具有友好的用户界面和操作方式。它提供了直观的拖拽式操作,使用户可以快速进行报表设计和编辑。而且,该软件还支持多种导出格式,如PDF、Excel等,方便用户将报表分享和存档。 总之,FR3报表编辑器中文版是一款功能强大、易于使用的报表设计工具。它可以帮助用户轻松地设计和生成各种类型的报表,提高工作效率和报表质量。无论是财务人员、企业管理者还是其他需要报表的人群,都可以从中受益。 ### 回答2: FR3报表编辑器是一款功能强大的报表制作工具,也是国内用户广泛使用的一种报表软件,在报表制作中起着非常重要的作用。 首先,FR3报表编辑器中文版提供了丰富多样的报表设计元素,用户可以通过拖拽操作,轻松地添加文本框、图表、表格等各种元素到报表中。同时,该编辑器还支持图像、超链接、突显和变量等高级元素,以满足用户复杂报表制作的需求。 其次,该软件拥有友好的图形界面,操作简单易上手。用户可以通过简单的鼠标点击和拖拽,进行报表的设计和排版,并可以自由调整报表中各个元素的样式和位置,实现个性化的报表制作。 另外,FR3报表编辑器中文版还具备强大的数据绑定和数据处理功能。用户可以通过连接各种数据源,如数据库、Excel、文本文件等,将数据与报表进行绑定,实现与数据的实时连接,并可以通过配置数据处理规则,对数据进行筛选、排序、汇总等操作,以生成准确且完整的报表。 最后,该软件还提供了丰富的报表输出功能,用户可以将报表导出为PDF、Excel、Word等常见文件格式,方便与他人共享和打印。同时,还支持在线预览和打印功能,让用户可以更方便地查看和使用报表。 综上所述,FR3报表编辑器中文版具备丰富的报表设计元素、友好的图形界面、强大的数据绑定和数据处理功能,以及多样的报表输出方式,是一款非常实用的报表制作工具。无论是个人用户还是企业用户,在报表制作过程中都可以充分利用其功能,简化工作流程,提高报表制作效率和质量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值