先新建一个Form,然后放上Quickrep控件、Qrband控件、Qrlabel控件、Qrdbtext控件、Query控件,接着写上相应的SQL语句并让Query控件与相应的Qrdbtext控件连接,其实这个应该不难,找一本关于Delphi的书,应该能解决。

解决方案 »

  1.   

    to hellworld 不向你说的那么轻松。我说的是分组进行合计。
      

  2.   

    用UNION关键字,动态产生SQL语句即可。例如:
    SELECT CODE,SALARY FROM TABLE1 WHERE CODE=:SX
    UNION SELECT CODE,SUM(SALARY) FROM TABLE1 WHERE CODE=SX
    UNION SELECT CODE,SALARY FROM TABLE1 WHERE CODE=:SD
    UNION SELECT CODE,SUM(SALARY) FROM TABLE1 WHERE CODE=SDQuery1.ParamByName('SX').AsString:='111';
    Query1.ParamByName('SD').AsString:='222';当然只是说明思路,外面肯定要加一层循环,你不可能就111,222吧!
      

  3.   

    我想各位是误会我的意思了。其实事情没有各位想的那么复杂,我已经说了。这里只有一个表,而且表里的数据已经确定了。但是我不知道如何进行合计。将qrband的bandtype设置为rbgroupfooter,可惜他无法满足我,他是用在主/明细表的。只是单一的一个表却不能显示计算结果呀。
      

  4.   

    1、加两个TQuery :Query1,Query2
       Query1: select 号码,费用 from table
       Query2: select 号码,费用=sum(费用) from table group by 号码
      构成主从表2、用一个Query:
       select 号码,费用 from table     //明细数据
       union
       select 号码,费用=sum(费用) from table group by 号码   //小计数据
       union
       select 号码,费用=sum(费用) from table    //合计数据
       order by 号码3、直接用 Table 和 QuickReport 来做我还没有做出来过。一般都用上面两方式来解决。
      

  5.   

    只是一个表就很简单:你用GROUPBAND加入到QR中不就结了吗?
    给GROUPBAND的EXPR设为你要的111或112的字段名,表按该字段排序,
    而GOUPBAND的FOOTBAND中就加入EXPRESSION控件使用SUM(。。)就可以了