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

Изменение списка полей в TTable   Найти похожие ветки 

← →
Korvin   (2004-08-09 10:28) [0]

Помогите, плз! Заклинило чтот, понедельник нав. сказывается...
Делаю:
T1.FieldList.Clear;
nC := T1.FieldCount-1;
For nT := 0 to nC do begin
    T1.FieldList.Add(T1.Fields.Fields[nT].FieldName);
end;

Дак вот FieldList - все время ReadOnly. Зачем тогда ему метод Add? Подскажите, плз, как правильно программно заполнить список полей в TTable?


← →
Соловьев ©   (2004-08-09 10:35) [1]


> Подскажите, плз, как правильно программно заполнить список
> полей в TTable?

зачем?


← →
stone ©   (2004-08-09 10:38) [2]


> Дак вот FieldList - все время ReadOnly. Зачем

Так и есть. см F1


> Зачем тогда ему метод Add?

TFieldDefs.Add + F1


← →
Korvin   (2004-08-09 10:40) [3]

Необходимо закачивать для доработки таблицы сторонних пользователей. Основной набор полей - стандартный, но могут быть различные "левые" служебные поля, значения которых необходимо сохранить (разные программы, работающие с одной таблицей) при возвращении "заказчику"...


← →
46_55_41_44 ©   (2004-08-09 10:42) [4]

Слушай просто всмотрись в в то, что ты написал!
Это не может работать, потому что если ты хочешь изменить структуру БД, то тебе нужно соответственные запросы писать!
Но в любом случае рассмотрим, твой код:
T1.FieldList.Clear; //Ты очистил список полей, ну типа удалил их все!!!
nC := T1.FieldCount-1; //и тут ты ссылаешься на кол-во полей, список которых ты уже обнулил в пердыдущей строке!Значени nC = -1 :)))
For nT := 0 to nC do begin //А тут вообще нечего говорить цикл вообще не начнется!
   T1.FieldList.Add(T1.Fields.Fields[nT].FieldName);//но даже, если бы начался тут какая сумасшедшая рекурсия получается :)
Как можно обращаться к пустому списку, добавлять из этого списка в него же данные?...
end; // Единственная работающая строчка :)))


← →
46_55_41_44 ©   (2004-08-09 10:43) [5]

УППППСССС...
Извинтрест...
Я сам не всмотрелся в твой кодик )))
Но все равно работать не будет!!!
Ты опиши, что тебе надо сделать... Помогу!!


← →
Korvin   (2004-08-09 10:44) [6]

Не, цикл то работает. Именно в нем возникает сообщение о ReadOnly. FieldCount, пардон за неточность, определяется перед FieldList.Clear...


← →
Соловьев ©   (2004-08-09 10:47) [7]

http://delphimaster.net/view/3-1091776227/&web=1


← →
Korvin   (2004-08-09 10:49) [8]

Пасиб, это уже видел, но там ниче конкретного...


← →
Korvin   (2004-08-09 11:04) [9]

Отлучусь на пару часов, спасибо всем откликнувшимся!


← →
Соловьев ©   (2004-08-09 11:10) [10]


> Основной набор полей - стандартный, но могут быть различные
> "левые" служебные поля, значения которых необходимо сохранить
> (разные программы, работающие с одной таблицей) при возвращении
> "заказчику"...

для этого надо физически добавить поле. а для этого надо или SQL использовать или инструменты.


← →
Korvin   (2004-08-09 13:42) [11]

Мда...
Мне всего-то надо получить список полей открываемой таблицы. Было бы здорово просто заполнить FieldList. Метод Add у него - что, просто наследие от предка?


← →
Korvin   (2004-08-09 14:19) [12]

Пришлось через строковый массив и доступ - через FieldByName. Всем пасиб.



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

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



Память: 0.48 MB
Время: 0.021 c
14-1092659199
Anekdot :o)!
2004-08-16 16:26
2004.09.05
:)))


1-1092751588
JUS
2004-08-17 18:06
2004.09.05
Я пытаюсь вникнуть в ООП, возникли вопросы. Помогите!


4-1090504357
Muchacho
2004-07-22 17:52
2004.09.05
как сопоставить номер каждому файлу в папке?


8-1086983977
Daniel_
2004-06-11 23:59
2004.09.05
DirectX-reference


8-1087015047
dimon_programmer
2004-06-12 08:37
2004.09.05
Аналог Scanline в C++




   Наверх