说得再清楚一些:
比如说,有两个button,一个用来显示数据,一个用来打印数据。
但是两者对数据的排列顺序不一样。并且要求:如果先点击了显示数据按钮,
再点击打印数据按钮的话,不能重新取数据库。问题就是,用显示数据按钮取出的数据,怎样再用打印时需要的排列顺序对数据进行排列打印。我试了试sort,不行!不知道有没有什么好的方法?
谢谢了先!

解决方案 »

  1.   

    在SQL语句中排序先,不是很好解决?
      

  2.   

    我指的用两个DataSet,多占点内存,没问题吧?
      

  3.   

    关键是要求不能重新取数据库,所以在sql语句中排序是行不通的,又因为对数据的排列顺序是不一样的。所以只能对取出的数据进行重新排序。不知道怎么实现?
      

  4.   

    sort 是可以。但用在 dbgrid的title比较好使用sql如下:
                adodataset1.close;
               adodataset1.Commandtype:=cmdtext;
                adodataset1.CommandText:='select * from test';
                adodataset1.Open;
               showmessage('ok');
      

  5.   

    打印时
    adoquery1进行close,open不要sql.clear
    with adoquery1 do
    begin
      close;
      sort:='...';
      open;
    end;
    应该就行
      

  6.   

    可以。用 ClientDataSet 就可以了。先把数据 Clone 到 ClientDataSet 里。再在 ClientDataSet 里加入一个索引。这样应该可以。但数据太多可能比较慢。
      

  7.   

    直接用sort就行了.别的什么也不用写.我试验成功了