Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

удаление Fields из ibQuery


Itonix ©   (2006-09-05 10:16:00) 

Создал массив филдов:
fField:array [0..10] of  TField;
fFieldDef:array [0..10] of TFieldDef;

....
проверяю наличие такого филда, если его нет, то создаю:
...
if ibNumDistr.Fields.FindField('nom_isled') = nil then
 begin
  ibNumDistr.FieldDefs.Add('nom_isled', ftInteger);
  fFieldDef[0] := ibNumDistr.FieldDefs.Find('nom_isled');
  fField[0] := fFieldDef[0].CreateField(ibNumDistr);
  fField[0].FieldName := 'nom_isled';
  fField[0].Name := 'nom_isled';
 end;
...
далее по ходу программы если этот филд существует, то его надо прибить. делаю так:
  if (ibNumDistr.Fields.FindField('nom_isled')<>nil) then
  begin
   ibNumDistr.FieldDefs.Delete(ibNumDistr.FieldDefs.IndexOf('nom_isled'));
   ibNumDistr.Fields.Remove(fField[0]);
  end;

и вылазит ошибка что такое поле не найдено :(


Плохиш   (2006-09-05 11:41:00) [1]


> Itonix ©   (05.09.06 10:16)  

Ну что ж, распечатаем телепатор.

> if ibNumDistr.Fields.FindField('nom_isled') = nil then
>  begin
>   ibNumDistr.FieldDefs.Add('nom_isled', ftInteger);
>   fFieldDef[0] := ibNumDistr.FieldDefs.Find('nom_isled');
>
>   fField[0] := fFieldDef[0].CreateField(ibNumDistr);
>   fField[0].FieldName := 'nom_isled';
>   fField[0].Name := 'nom_isled';
>  end;

Ты создаёшь поле, которого нет в запросе, и говоришь, что данные для него надо брать из БД. Что ж ты хочешь? Система культурно просит данные, а ей говорят, что не знают такого поля.

PS. Создавай вычисляемое поле.


Itonix   (2006-09-05 10:30:00) [2]

К сожелению нет времи разбираться с КлиентДатаСет.как можно решить проблему удаления для моего примера?


ANB   (2006-09-05 10:20:00) [3]


> Itonix ©   (05.09.06 10:16)

А, это - а зачем весь огород ? ClientDataSet ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо