Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.04;
Скачать: CL | DM;

Вниз

Как динамически добавить поле типа Lookup в TClientDataSet?   Найти похожие ветки 

 
serg128   (2004-06-08 12:57) [0]

Т.е. я делаю следующее:

   TStringField *fld = new TStringField(Owner);
   fld->FieldKind = fkLookup;
   fld->Size = 200;
   fld->FieldName = "ANALIT";
   fld->KeyFields = "ID";            
   fld->LookupDataSet = ld;
   fld->LookupKeyFields = "SIID";    
   fld->LookupResultField = "ANAL";  
   fld->Name = "ldsAnalit";
   fld->DisplayWidth = 200;
   fld->DataSet = lds;

   lds = new TLocalDataSet(NULL, frmMain->Connection, sSQL, 20);
   lds->Fields->Add(fld);
   lds->FieldDefs->Update();
   lds->Open();

Потом, при проходе по DBGrid вылетает сообщение типа "Field ANALIT has no DataSet"? Помогите плиз, что я неправильно сделал?


 
Clickmaker ©   (2004-06-08 13:35) [1]


> fld->DataSet = lds;
>
>    lds = new TLocalDataSet(NULL, frmMain->Connection, sSQL,
> 20);

Поменяй местами эти строки
И вот это
lds->Fields->Add(fld);
lds->FieldDefs->Update();
здесь не нужно, достаточно
fld->DataSet = lds;


 
serg128   (2004-06-08 13:57) [2]

>  fld->KeyFields = "ID";    

Когда я открываю lds, он пишет, что поле ID не найдено, мне нужно наверно его как-то добавить, но как?


 
Шаман   (2004-06-08 14:26) [3]

Самое странное также :)



Страницы: 1 вся ветка

Текущий архив: 2004.07.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.047 c
14-1087370201
IceBeerg
2004-06-16 11:16
2004.07.04
2а вопроса


9-1078916732
ZAROLF
2004-03-10 14:05
2004.07.04
Ядерный взрыв в 2D аркаде


14-1084969501
nikkie
2004-05-19 16:25
2004.07.04
Fritz8 - Мастера Дельфи


6-1083932405
Tishaishy
2004-05-07 16:20
2004.07.04
Как организовать выкачку одного файла несколькими потоками(частям


1-1087487286
sherbacov
2004-06-17 19:48
2004.07.04
Как в TTreeNode добавить Tag?.