报表机器试试:
  Report Machine WWW:
     http://rmachine.yeah.net
     http://whf.soim.net
     http://delphiw.126.com 

解决方案 »

  1.   

    Use ereport Control, I can resolve your problem.
      

  2.   

    两种方法:
    (1)临时表法(推荐RxMemoData控件,内存表,速度快)
    思路:就是把各种合计数分别生成后按格式需要插到临时表中,呵呵,什么字段填什么还不是自己说了算?这样再复杂的报表也不成问题啊!
    (2)Query法
    select 产品类别,品牌,型号,Sum(销量),Sum(维修数量) from products 
    group by 产品类别,品牌,型号
    Union
    select 产品类别,品牌,'&' As 型号,Sum(销量),Sum(维修数量) from products 
    group by 产品类别,品牌
    Union
    select 产品类别,'*' As 品牌,'& ' As 型号,Sum(销量),Sum(维修数量) from products 
    group by 产品类别
    Order By 产品类别,品牌,型号思路:利用Gruop By来生成合计,利用Union来组合查询结果,利用字符的大小顺序来生成自己要的表结构,最后在Query控件的GetText事件中设置条件把'&'、'*'替换成'合计'、' '来显示,这样就有了你要的效果了。
      呵呵,第三方控件不好做分组小计的,总合计还可以。
      祝愉快。
      

  3.   

    哦,'&','*'的顺序也许太前,可以倒序或换换字符看看。:-)
      

  4.   

    你去看看DELPHI里的报表DEMO,答案在里面。
      

  5.   

    SQL上不用那么麻烦.(我用的是Delphi.5)
    在报表上先加个QRCroup控件,在Expression中加入产品类别字段,
    然后在加个QRCroup控件,在Expression中加入品牌字段,
    剩下就是普通报表的制作方法了,多试一下,在看看DELPHI5里的报表DEMO.
      

  6.   

    如果您使用过报表控件的话应该不成问题,慢慢作吧.参考一下delphi自己的例子是很容易的.关键是别怕麻烦.
      

  7.   

    Delfly(Delfly),谢谢你,我怎样送分给你!
      

  8.   

    尺有所短,村有所长,不换工具,图增麻烦,实施ereport控件
      

  9.   

    我做过一个比你还要烦的报表 我是在打印机的画布上一笔一画画出来的 
    因为delphi的报表控件太差尽了
      

  10.   

    嘿嘿,我的报表定制控件完全做到!
    优点:
    1.ActiveX控件,随处通用
    2.自定义任何一个字段的位置
    3.自定义字体,边框等等
    4.传入的是数组,随便你的数据从哪来
    5.运行中可自行调整任何一栏的位置(IDE环境?呵呵)
    6.调整好的格式存入模板,下次可直接调用
    缺点:(不好意思)
    1.数据过多内存消耗比较大
    2.只支持单页的(不过你可以分几次调用,就是多页,呵呵)