![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Добавление LookUp поля [D7, Win2k]
Mr. Chel © (2004-02-03 15:06:00)
Как можно корректно добавить LookUp поле в Query?
Такой код выдает ошибку "Filed: "FIMS_TYPE" cannot be calculated or lookup field":
var F : TField;
begin
qrDistrib.Close;
qrPtype.Close;
F := TField.Create(nil);
qrDistrib.Fields.Add(F);
with F do
begin
Lookup:=true;
Required := false;
Origin:="";
FieldName:="FIMS_TYPE";
KeyFields := "FIMS_TYPE";
LookupDataSet := qrPtype;
LookupKeyFields := "DIC_VALUE";
LookupResultField := "DIC_NAME";
end;
qrPtype.open;
qrDistrib.Open;
Mr. Chel (2004-02-03 16:43:00) [1]
http://www.rxlib.ru/faqs/faqd_en/17146.html
Все, сделал. ;)
Спасибо.
Mr. Chel (2004-02-03 16:11:00) [2]
Если предварительно в запросе создать FieldDef-ы то опять начинает падать на AV.
Mr. Chel (2004-02-03 16:05:00) [3]
> FieldName:="FIMS_TYPE";
> KeyFields := "FIMS_TYPE";
Да согласен это гон.. Уже исправил, но ошибка field not found, начала выпадать после исправления.
clickmaker (2004-02-03 16:01:00) [4]
и как это кстати может быть
FieldName:="FIMS_TYPE";
KeyFields := "FIMS_TYPE";
У тебя ж есть уже FIMS_TYPE с данными, а лукап это для его выбора, т.е. FIMS_TYPE_NAME например
Mr. Chel (2004-02-03 15:55:00) [5]
Так с AV разобрался. Тут в другом стала проблема. Выдает такое сообшение qrDistr: Field "FIMS_TYPE" not found. Вроде как пытается наладить лукап связь, а поля "FIMS_TYPE" еще нет(запрос еще не открыт)
clickmaker (2004-02-03 15:47:00) [6]
F := TStringField.Create(Self);
F.FieldKind := fkLookup;
F.DataSet := qrDistrib;
Mr. Chel (2004-02-03 15:39:00) [7]
Поставил TStringField, стало еще хуже - теперь AV вылетает. ;( в момент qrDistrib.Open;
clickmaker (2004-02-03 15:22:00) [8]
Нельзя создавать просто TField - это абстрактный класс. TStringField, TIntegerField и т.д.