ОК, поскольку у вас нет кода, я напишу для вас. Это похоже на то, о чем вы говорите, и это работает на моей машине. Так что теперь вы говорите мне, что вы делаете по-другому. Положите два из TClientDataSet , TDataSource , TDBGrid . Подключите их и назовите правильно:
var
idField: TFieldDef;
stringField: TFieldDef;
begin
idField := ds1.FieldDefs.AddFieldDef;
idField.DataType := ftInteger;
idField.Name := 'id';
stringField := ds1.FieldDefs.AddFieldDef;
stringField.DataType := ftString;
stringField.Size := 10;
stringField.Name := 'name';
ds1.CreateDataSet;
ds1.InsertRecord([1, 'Jim McKeeth']);
ds1.InsertRecord([2, 'Mason Wheeler']);
ds1.InsertRecord([3, 'Jeff Atwood']);
ds2.CloneCursor(ds1, true);
ds2.Filter := 'id=1';
ds2.Filtered := True;
end;