fastreport简单的合计问题。200分。 ( 积分: 200 )

  • 主题发起人 主题发起人 aialee
  • 开始时间 开始时间
A

aialee

Unregistered / Unconfirmed
GUEST, unregistred user!
在报表的最后一行显示上面所有收费记录的和,其实合计数我程序已经有了,放在EditSum.text或adoquery2.FieldbyName('b3').Value里。但报表中不知怎显示。
报表:a b 收费
1 2 3
3 4 5
5 7 7
收费合计:15。
表格显示是没有问题的,但合计却没办法显示。我试过以下几种方法都不行。请大家赐教。
1.fastreport开发指南里讲可以使用delphi中的变量
1.使用变量; frReport1.memo1:=EditSum.text;
但不行,delphi说不知道fastreport中的memo1.
2.直接调用。直接在fastreport中输入[EditSum.text]也不行,fastrepost说不知道delphi中的EditSum.
2.在fastreport中用sum,因我的表格是动态生成的,
我试[adoquery1."收费"]结果显示最后一个数据是7,
我试[数据库名."收费"]系统说不认识“数据库名”,
我试[sum([adoquery1."收费"])]结果显示是0。
3.合计的band放在column footer中是不是就可以了?

另外,我报表设计了A4纸横向打印,其他票据打印用Printer.Canvas.TextOut,但每次横向打完报表后,打票据也横向旋转90度,怎样调回原来的方向啊?
 
在报表的最后一行显示上面所有收费记录的和,其实合计数我程序已经有了,放在EditSum.text或adoquery2.FieldbyName('b3').Value里。但报表中不知怎显示。
报表:a b 收费
1 2 3
3 4 5
5 7 7
收费合计:15。
表格显示是没有问题的,但合计却没办法显示。我试过以下几种方法都不行。请大家赐教。
1.fastreport开发指南里讲可以使用delphi中的变量
1.使用变量; frReport1.memo1:=EditSum.text;
但不行,delphi说不知道fastreport中的memo1.
2.直接调用。直接在fastreport中输入[EditSum.text]也不行,fastrepost说不知道delphi中的EditSum.
2.在fastreport中用sum,因我的表格是动态生成的,
我试[adoquery1."收费"]结果显示最后一个数据是7,
我试[数据库名."收费"]系统说不认识“数据库名”,
我试[sum([adoquery1."收费"])]结果显示是0。
3.合计的band放在column footer中是不是就可以了?

另外,我报表设计了A4纸横向打印,其他票据打印用Printer.Canvas.TextOut,但每次横向打完报表后,打票据也横向旋转90度,怎样调回原来的方向啊?
 
给你点思路:
1。你的第一点用法不正确,查一下使用手册,findobject方法。
2。根本不可能成功,传递参数的方法你没有搞明白。
我不是高手,但是我觉得应该是这样!
 
应该用
1,frReport1.FindObject('Memo1').Memo.Text :=EditSum.text
2,在sum中用变量,让系统自己计算
3,可以
 
感谢sytgoodluck,lngdtommy的指教.我学会了用变量.(60分)
有谁能教一下我在fastreport中sum的用法?因我的表格是动态生成的,我试[sum([adoquery1."收费"])]为何合计结果显示是0,但在master data中表格用[adoquery1."收费"]又没有问题.(60分)
另外,我报表用fastreport设置了A4纸横向打印,其他票据打印用Printer.Canvas.TextOut,但每次横向打完报表后,打票据也横向旋转90度,怎样调回原来的方向啊?横向打印的问题有谁遇到过.(80分)
 
adoquery1."收费"
是不是数值类型呀。如果不是数值型Sum就是0,Findobject还是可以的。
 
你要在fastreportgetvalue事件里写frReport1.memo1:=EditSum.text
 
我一般是这么做
比如:
主数据头
a , b, c 合计
主数据项
11, 12, 13 (这个我看还是用SQL语句较好)
12, 13, 14 --
13, 14, 15 --
数据脚
合计 [SUM([ADOT."a"])],[SUM([ADOT."b"])],[SUM([ADOT."c"])] ---
 
zptang.ys168.com
 
www.zptang.ys168.com
 
adoquery1."收费"
是双精度数值型。 虽然用Findobject已经也可以。但为何用[sum([adoquery1."收费"])]不行呢?不是说fastreport怎么都可以吗?郁闷中。。。

看来fastreport设置了A4纸横向打印,打完以后再怎样转回原来的方向,是没有多少人会的了,唯有自己再试了。
 
后退
顶部