Delphi FastReport报表常用方法


点击这里!!!厉害了【招聘】互联网独角兽招聘C/B端产品:JavaEE后端工程师,Web前端开发,测试,设计,产品,运营等职位

点击这里!!!改变命运:免费人工智能机器学习深度学习Python视频2018最新版



  1. 1.       单据中有多行




数据,但预览时只显示部分内容,或者打印内容行与行之间有间隔
fastrepor属性中:设置rowcount=0start new pagefalsestretchedtrue.

说明:

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

start new page:打印前先跳页;每页打印一行;

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


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

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

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

%2.2f:显示两位小数;

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


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

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

mm.dd.yyyy:显示月..

mm.dd:显示月.

mm:显示两位的月


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

fastrepor属性中:设置hidezeros(数字前面的0是否显示)为true


  1. 5. 自动换行

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

2stretchmodesmmaxhtightwordwraptruestretchedtrue.

说明:

stretchmode:对象伸缩的行为;

wordwrap:文本是否自动换行;


  1. 6. 合计

[sum(<//退/折表身档."amtn_net">,masterdata2)]


  1. 7. 每页合计

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


  1. 8. 全表合计

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


  1. 9. 金额大写

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

合计金额大写:[convertnumtochinese(sum(<//退/折表身档."amtn_net">,masterdata2))]

负数合计金额大写:[convertnumtochinese(abs(sum(<//退/折表身档."amtn_net">,masterdata2)))]

10. 报表中打印行数

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

11. 连打

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

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

12. 连打打到同一页

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

13. 打印固定行数,不足补空白行代码(语言: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