我想用ADOQUERY+ADOCONNECT+DBGRID作设备台帐,比如
型号 资产编号 资产名称 安装地点 价格 。。备注
11    13212   12121     23324  500,00          fsdfs
sdfsd sdfsdf sdfsfd     sdfsdf 600,00          wersdr
                 合计         (总值)请问如何在Dbgrid 最后一个记录行下出现
合计   (总值)。。
就是。合计   (总值)。。总在最后一个记录下出现,也显示在dbgrid中。

解决方案 »

  1.   

    用ehlib里面的dbgird吧,自动算的。
      

  2.   

    使用stringgrid,我用过,数据量不大的话,可以用。
      

  3.   

    建立一张临时表temptable保存你上面的所有数据
      
    ADOQuery.Close();
    ADOQuery.SQL.Clear();
    ADOQuery.SQL.Text := '(select * from temptable)  union (select “”,“”,“”,“”,“合计”,“”,“”,sum(“价格 ”),
    “”,“”,“”,“” from temptable)';  
    ADOQuery.SQL.Open();
    在和DBGrid绑定即可!
    请确保union前后的字段数目一致。其中“”是用来填充间隔的
      

  4.   

    up,
    ehlib和 rikky(读书、心知、生活) 都行
    rikky的用dbgrid就可
      

  5.   

    ehlib里面的dbgirdeh,可以为dbgrideh加一个footer,可以计算平均值,求和,统计记录数
    我一直用它
      

  6.   

    ehlib 在 http://www.51delphi.com/delphi/ 
    有得下
      

  7.   

    adoquery1.close;
    adoquery1.clear;
    adoquery1.sql.add('select * ,sum(jiage) as jghj from tablename');
    adoquery1.sql.add('group by fieldlist');
    adoquery1.open;
    adoquery1.append;
    adoquery1.fieldbyname('型号').asstring:='合计';
    adoquery1.fieldbyname('价格').asfloat:=adoquery1.fieldbyname('jghj').asfloat;
    就可以了,不过,在关闭数据集的时候记得删除最后刚刚添加的记录
    哥们,先试试吧