TcxGrid主从表添加记录时出错, 
错误提示: No corresponding Master Record Found 
请问大家, 是不是还要设置什么地方啊? 怎么设置?我的数据表关联关系是:
主表主键:  ID
从表主键:  ID1, ID2
从表的 ID2关联主表的ID,运行时在从表的cxGrid中新增记录时出现上述错误,请大家帮忙

解决方案 »

  1.   

    数据表 table1结构  ID int, <主键>
                       Name varchar(20),
                       Memo varchar(50)
           table2结构  ID1 int, <主键>
                       ID2 int, <主键>
                       LName varchar(20)
                       LMemo varchar(50)
    中间层: ADOQuery1.SQL为 select * from Table1
            ADOQuery2.SQL为 select * from Table2 where ID2=:ID
            DataSource1.DataSet := ADOQuery1;
            ADOQuery2.DataSource := DataSource1;
            DataSetProvider1.DataSet := ADOQuery1;
    客户端: ClientDataset1.ProviderName := DataSetProvider1;
            ClientDataSet2.DataSetField := ClientDataSet1ADOQuery2
            DataSource1.DataSet := ClientDataSet1;
            DataSource2.DataSet := ClientDataSet2;
            cxGrid1DBTableView1.DataController.DataSource := DataSource1;
            cxGrid2DBTableView1.DataController.DataSource := DataSource2;
    只写了一个添加操作的代码:  主表添加保存都没问题,子表显示数据没问题,
                               子表添加数据时只有一条语句:
    procedure TForm1.Button3Click(Sender: TObject);
    begin
      ClientDataSet2.Append;
    end;
    当在cxGrid2添加完一条记录后保存(或当前子表中已有数据, 将当前行移动到上条记录)时出现此错误(说明:主表记录已经有了,不存在无主表记录的情况)
    "No corresponding Master Record Found"
    在不改变数据库结构的情况下,能解决者另开帖给200分
      

  2.   

    有没有人知道这个问题?
    或dx版本有没有dxDBLookupComBox支持类似于cx版本内的下拉内容用键盘输入过滤的版本?因为下拉列表太多了,很难选择,通过输入进行过滤或定位功能