比如   我有dbgrid1和dbgrid2        两个grid中都有显示内容   而且结构相同 
问题一:
我要把dbgrid2中的一行,注意是一行内容 添加到dbgrid1中,显示在dbgrid1中原有内容的下一行,求代码;
问题二
我要把dbgrid2中所有的内容添加早dbgrid1中,也保持所有dbgrid1中所有内容两个dbgrid都是用adodataset以下是我写的一些代码,但是都是将dbgrid2中的内容 显示到dbgrid1中,但是dbgrid1中的原有内容没有了
请各位回帖的时候清楚点,随便一句没有证明过的方法请别回,谢谢。因为现在论坛中实在又一些人浑水摸鱼求大神指教。
  with mdyhform.ADODataSet1  do
    begin
    close;
    commandtext:=mysql1;
    open;
    end;  //for i:=0 to adodataset1.fieldcount-1 do
  while not adodataset1.Eof do
  begin
    if loDataset.Locate('pro_id',adodataset1.fieldbyname('snp_pro_id').AsString,[]) then
    begin
      loDataset.Edit;
      loDataset.FieldByName('on_order_qty').AsInteger:=loDataset.FieldByName('on_order_qty').AsInteger+adodataset1.fieldbyname('on_order_qty').AsInteger;
      loDataset.Post;
    end
    else
    begin
    //for i:=0 to adodataset1.fieldcount-1 do
      loDataset.append;
      mdyhform.ADODataSet1.Fields[0].Value:=adodataset1.Fields[0].Value;
      mdyhform.ADODataSet1.Fields[1].Value:=adodataset1.Fields[1].Value;
      mdyhform.ADODataSet1.Fields[2].Value:=adodataset1.Fields[2].Value;
      mdyhform.ADODataSet1.Fields[3].Value:=adodataset1.Fields[3].Value;
      mdyhform.ADODataSet1.Fields[4].Value:=adodataset1.Fields[4].Value;
      mdyhform.ADODataSet1.Fields[5].Value:=adodataset1.Fields[5].Value;
      mdyhform.ADODataSet1.Fields[6].Value:=adodataset1.Fields[6].Value;
      mdyhform.ADODataSet1.Fields[7].Value:=adodataset1.Fields[7].Value;
      mdyhform.ADODataSet1.Post;    end;
    adodataset1.Next;  end;

解决方案 »

  1.   

    自己使用断点跟踪一下看看,问题出现了哪里?
    貌似如下代码有问题:
    loDataset.append;
      mdyhform.ADODataSet1.Fields[0].Value:=adodataset1.Fields[0].Value;
    疑问是:loDataSet添加,为什么给mdyhform.ADODataSet1赋值?
      

  2.   

    哦,因为之前是lodataset 的目标dataset就是mdyhform.adodataset1
      

  3.   

    首先要有一个排序字段,然后grid2中插入,从grid1中读数据填充,更新排序,排序