两个dbgrid联动,Filtered 过滤,子grid数据乱变为什么啊 选中的值跟实际值不同如下图,我看到的值是 查询号的值是 23 但后台取到的值却是 4
这是为什么呢procedure from1.grdDetailClick(Sender: TObject);
begin
application.MessageBox(pchar(cdsDetail.FieldByName('查询号').asstring),'提示',32);  
end;

解决方案 »

  1.   

    你这是什么grid,具体得看你代码
      

  2.   

      cdsDetail.Filter := DetailSeleFilter +  format('SelectID=%d',[cdsDataList.FieldByName('SelectID').AsInteger]);//过虑条件为主表SelectID
      cdsDetail.Filtered := True;
      

  3.   

    估计你的表没有主键,如果你在dxgrid中设置了keyid,并且表中没有唯一值字段的话,就会出这个问题
      

  4.   

    表有主Key嗎?有主key後,直接show其欄位字段值