Вниз
Скачать: CL | DM;

удаление Fields из ibQuery   Найти похожие ветки 

 
Itonix ©   (2006-09-05 10:16) [0]

Создал массив филдов:
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;

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


 
ANB ©   (2006-09-05 10:20) [1]


> Itonix ©   (05.09.06 10:16)

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


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

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


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


> 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. Создавай вычисляемое поле.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.027 c
3-1157358772
SergP.
2006-09-04 12:32
2006.10.29
Получить текст с сообщением об ошибке.


2-1160666423
i-am-vladko
2006-10-12 19:20
2006.10.29
потоки...


2-1160638881
Volodya_
2006-10-12 11:41
2006.10.29
TOleContainer


2-1160771283
Succumb
2006-10-14 00:28
2006.10.29
как пакеты через прокси пустить


2-1160472137
RebroFF
2006-10-10 13:22
2006.10.29
LookUp в Fast Report




   Наверх