Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.09.05;
Скачать: [xml.tar.bz2];

Вниз

Изменение списка полей в 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 вся ветка

Форум: "Базы";
Текущий архив: 2004.09.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.031 c
3-1091679619
RDen
2004-08-05 08:20
2004.09.05
не выполняется запрос по полю с названием DATE


1-1092724954
DK
2004-08-17 10:42
2004.09.05
RTTI


3-1091157284
Fynjy
2004-07-30 07:14
2004.09.05
При попытке редактировать запрос получаю сообщение.


14-1092621406
Думкин
2004-08-16 05:56
2004.09.05
С днем рождения! 16 августа


14-1092758228
Ega23
2004-08-17 19:57
2004.09.05
Навеяло недавними обсуждениями





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский