fastreport怎么在每一页出现合计数!不是在报表的最后出现!而是在pagefooter出现!
我希望得到的报表是这样的,如:我打印的结果是二张页面!
第一页为:
种类   数量
A       12
B       20
C       8

当页小计:40    合计   61   //就是怎么出现合计数!
第二页为:
种类   数量
J       3
L       8
M       10

当页小计:21    合计   61   //合计数

解决方案 »

  1.   

    在程序中统计合计总共是多少
    然后将这个合计数传给fast report
      

  2.   

    放一个“主项脚”的BAND上去。
      

  3.   

    to :niat97222(Freeman)!
    那是一个办法,我在程序中用select sum语句,得到统计数,在赋值给memo!
    然后在showreport!我想请问一下有没有更简单的办法,或者应该说是在onbeforePrint中写代码!因为我的“全部合计数和当前页合计数”是要在页注脚中显示出来的!谢谢!
      

  4.   

    若想先在程序中统计,你不知道一页会显示多少行,你如何统计?
    我觉得应定义一Band为“栏目脚”类型,则每页会显示该Band中的Memo.定义一全局变量,在报表对象的OnGetValue事件中统计。若Mome为“栏目脚”的合计Mome,则赋值后重设全局变量为0再累加,不知可行否?
      

  5.   

    to:niat97222(Freeman)
    http://www.delphibbs.com/delphibbs/dispq.asp?lid=812695
    我看了这帖子!所以合计的问题解决!
      

  6.   

    to  winsock2000(winsock) :
    因为你说的那张贴子已经被删除了,能否你再贴一遍,感激万分!
    http://www.delphibbs.com/delphibbs/dispq.asp?lid=812695
      

  7.   

    ***************************************
    现在给大家转贴:http://www.delphibbs.com/delphibbs/dispq.asp?lid=812695
    ***************************************来自:onedot, 时间:2001-12-26 3:25:00, ID:812695 [显示:小字体 | 大字体]  
    我现在比较FastReport和ReportBuilder
    各有千秋,似乎都不错。但似乎都找不到合适的方法快速做本期合计和本页合计
    因时间原因,还有其他事情,因此不再自己琢磨,请教各位了!!
    不知道哪位作过?
    另外200分以后另外开个题目送出//DFW现在居然有分数限制,分特;饿
     
     
    来自:onedot, 时间:2001-12-26 4:17:00, ID:812698 
    说明一下:本页合计是针对当前页的合计,本期合计是指这次报表的合计
    eg:
    Paper1
    ......
    本页合计   10  10  10
    本期合计   100  200  200Paper2
    ......
    本页合计   20  40  20 
     
    来自:netatom, 时间:2001-12-26 8:00:00, ID:812712 
    FastReport能满足你的要求,看看DEMO,里面有这样的例子.
     
     
    来自:bigroom, 时间:2001-12-26 11:43:00, ID:813395 
    看看
     
     
    来自:YNTW, 时间:2001-12-26 12:11:00, ID:813494 
    FR中:一定要把本页合计和本期合计都显示在每一页的话,使用页脚Band
     
     
    来自:onedot, 时间:2001-12-26 14:39:00, ID:814001 
    放在页脚我知道,那么本页合计和本期合计又怎么写呢?
    实在是没时间钻研了,希望知道的大侠可以说得稍微清楚点,分数一定送上!! 
     
    来自:myxy, 时间:2001-12-26 15:28:00, ID:814135 
    我也遇到类似的问题,可是总是解决不了...
    一个表格里面有N行及N列,数据库共有10个左右,需要打印表格中的单元格提取的值是来自这
    10个表中,有的是来自10个表中运算才能得到,到底要怎么样才能解决?
      
     
    来自:OopsWare, 时间:2001-12-26 22:14:00, ID:815062 
    中国的报表制度太复杂,过于手工化,使用老外的控件总是难以完成复杂的报表。
    老外在报表上花的功夫相比要少的多了。我就是一个最讨厌做报表的人。  FastReport在自定义报表方面做的比QuickReport完善些,如果只是对付您上面的表
    两者皆可。FastReport有些象PowerBuilder的数据窗口,对熟悉PB的使用起来方便些。
    我只用QuickReport,毕竟不用在安装三方控件了,QuickReport的最新版在使用自定义
    纸张上有了改进。页合计可以使用变量在打印每个Detail时累加,换页时显示到页脚上
     
     
    来自:black猫, 时间:2001-12-27 1:14:00, ID:815239 
    TQRExpr放在groupband不是能分组统计吗?
    要是一页一组的话(想一想肯定有办法),设置TQRExpr.ResetAfterprint=true
    就可以实现本页合计了
     
     
    来自:onedot, 时间:2001-12-27 2:58:00, ID:815247 
    本人讨论的是FASTREPORT,至于QREPORT大家都知道做报表好烦的!
    由于没有什么人可以告诉我,我只好自己熬夜钻研了一下。现在我的报表要求基本都做好了
    我报表要求每页固定行数,最后一页不足要自动填空白行,每页在数据后就是本页合计和本期合计
    其实很多人以前说的方法有弊端或者不全,希望我说的方法可以帮助一些朋友!
    在FastReport里定义一个变量i
    在ReportBand的(OnBeforePrint)里初始i
    在主数据band的(OnBeforePrint)里i:=i+1;
    然后添加分组头,分组条件为[INT([[i]/20])]   ----不要用[LINETHROUGH#]代替i,也许是bug
    然后添加分组尾,里面放本页合计和本期合计的东西
    其中本页合计很简单,就是[SUM([ADOQuery1."Quantity"])]
    本期合计我也没找到合适快速方法,只好用另外一个数据集做ADOQuery1所有数据的sum---[ADOQuery2."Sumquantity"]
    并且在(OnBeforePrint)里
      i:=[i MOD 20];
      While (i<20) and (i>0) Do
      Begin
        ShowBand(Child1);  ------------Child1是一个子Band,里面放自动填充行或格子
        i:=i+1;
      End 最后我的结果是
    1     10  20   20
    .......
    20   10   10   10 
    本页合计      50
    本期合计     350
    xxxxx   xxxxxxxx21     10  20   20
    ......
    38     20  10   0
    39     
    40            
    本页合计      50
    本期合计     350 
     
    来自:arnew, 时间:2001-12-27 8:24:00, ID:815289 
    在页脚中放一个QRExpr3并用它对想求合的字段求合,
    Expression:='sum(qty)';
    如只这样作得出的结果是前几页的合,不是想要的结果,
    只要在QuickRep的EndPage事件中加入QRExpr.Reset;
    procedure TForm1.QuickRep1EndPage(Sender: TCustomQuickRep);
    begin
      QRExpr2.Reset;
    end;
    或者,
    设Resetafterprint 为true
    则每一页的合计为本页合计
    为false
    则每一页的合计为第一页到本页的合计 
     
    来自:onedot, 时间:2001-12-27 15:10:00, ID:816616 
    不要说QREPORT了
     
     
    来自:阿不, 时间:2001-12-30 13:29:00, ID:823929 
    為什麼要這麼複雜呢
    把本頁合計放在groupfooder中,設ForceNewPage=True
    本期合計放在pagefooder中,顯示一個計算值就好了
     
     
    来自:whf, 时间:2001-12-30 21:20:00, ID:825329 
    1.页合计,好办,放个栏目脚band,上面放几个memo就可以了
    2.本期合计,麻烦点,得用script,放个页脚Band,保镖设置中选“两遍报表”
      在page1的OnBeforePrint:
      if not FinalPass then
         hj1 := 0;
      在MasterData1的OnBeforePrint:
      if not FinalPass then
        hj1 := hj1 + [Table1."Jbgz"];
     这样hj1就是本期合计数。