delphi fastreport常用打印设置

1.单据中有多行数据,但预览时只显示部分内容,或者打印内容行与行之间有间隔
FASTREPOR属性中:设置RowCount=0,Start New Page为False;Stretched为True.

说明:

RowCount:控制总共打印几行;RowCount=0是打印全部;

Start New Page:打印前先跳页;每页打印一行;

Stretch:表身自动伸缩根据表身内容;

2.在打印中设置0值打印时为空白

在FastReport中设置要显示为指定值的列,在这列有个HideZeros设置为true,当此列值为0时,打印出来后为空白,避免因大量的0看起来晕;

3.在打印中设置金额或数量的小数位数

FASTREPOR属性中:使用DisplayFormat(数据显示格式)——数字——1234.50

%2.0f:以整数形式显示;

%2.2f:显示两位小数;

%2.3f:显示三位小数位,可根据情况进行调整。

4.在打印中设置日期/时间的格式

FASTREPOR属性中:使用DisplayFormat(数据显示格式)——日期/时间——11.28.2002

mm.dd.yyyy:显示月.日.年

mm.dd:显示月.日

mm:显示两位的月

5.当栏位的值为零时显示为空

FASTREPOR属性中:设置HideZeros(数字前面的0是否显示)为True

6.自动换行

1)选择数据单元进行群组;

2)StretchMode为smMaxHtight;WordWrap为True;Stretched为True.

说明:

StretchMode:对象伸缩的行为;

WordWrap:文本是否自动换行;

7.合计

[SUM(<进/销/退/折表身档."AMTN_NET">,MasterData2)]

8.每页合计

将定义好的合计函数放到‘栏尾’中即可。

9.全表合计

将定义好的合计函数放到‘报表合计’中即可。

10.金额大写

在报表设计中使用函数:ConbertNumToChinese()

合计金额大写:[ConvertNumToChinese(SUM(<进/销/退/折表身档."AMTN_NET">,MasterData2))]

负数合计金额大写:[ConvertNumToChinese(Abs(SUM(<进/销/退/折表身档."AMTN_NET">,MasterData2)))]

11.报表中打印行数

在报表设计中使用变量——系统变量Line#

12.连打

1) 单据——速查,查出要打印的单据;

2)打印——查询数据——预览——打印,选择多张单据进行连打。

13.连打打到同一页

打印——设计——页面设置——勾选“打印至前一页”,“伸展至打印区”

14.打印固定行数,不足补空白行代码(语言:PascalScript)

var

PageLine: integer;

PageMaxRow: integer=5; //每页打印的行数

procedure Footer1OnBeforePrint(Sender: TfrxComponent);

var

i: integer;

begin

i := iif(PageLine=0, PageMaxRow, PageLine);

while i < PageMaxRow do begin

i := i + 1;

Engine.ShowBand(Child1); //印空白表格

end;

end;

procedure MasterData2OnBeforePrint(Sender: TfrxComponent);

begin

PageLine := <line> mod PageMaxRow;

if (PageLine = 1) and (<line> > 1) then

Engine.newpage;

end;

begin

end.

14.  电子签名代码(语言:BasicScript)

sub MasterData2OnBeforePrint(Sender)

if length(<进销货表头档.”CHK_MAN”>)>0 then   picture2.visible=true

end sub

发布了366 篇原创文章 · 获赞 3 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_18932003/article/details/104828933