Мне нужно программно создать lookup поле в ADOTable.
В ADOTable1 есть поле *k4* - его нужно заменить на lookup
В ADOTable2 справочник откуда и берем данные, там есть ключевое поле *id* и поле *value*
Код:
ADOTable1.Active:=false;
with TStringField.Create(ADOTable1) do
begin
FieldName := 'L4';
FieldKind := fkLookup;
DataSet := ADOTable1;
Name := 'lookup' + FieldName;
KeyFields := 'k4';
LookUpDataSet := ADOTable2;
LookUpKeyFields := 'id';
LookUpResultField:= 'value';
ADOTable2.FieldDefs.Add(Name, ftString, 20, false);
end;
ADOTable1.Active:=true;
Код выдает ошибку, что в ADOTable1 *k4* не найдено, хотя оно там есть. Подскажите, в чем может быть проблема?