![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 28.09.2011
Сообщений: 250
|
![]()
Программа выдаёт данные о продукте, и я сделал такую функцию, что пользователь может сам решать, какие поля он хочет видеть, к примеру, он создаёт поля с названиями "Срок годности продукта", и "Наименование продукта", и такие данные в дальнейшем будут выводиться в таблице.
Далее ... В программе пользователь создаёт поле с названием "Фирма изготовитель", программа в sql server-e создаёт поле с именем - "mmm1"(к примеру) Далее, у меня есть компонент DBEdit (создаётся динамически), и я хочу связать его с новосозданной таблицей "mmm1" Код:
================================== Я начал думать, каким образом можно сделать (add fielfs ...) Но так ничего и не придумал. Нашёл в интернете код, как можно динамически добавить поле в "список" ADOQuery, но я повторюсь, что это динамический ... т.е. мне грубо говоря придётся где то хранить перечень всех полей которые добавил пользователь, и каждый раз при открытии формы, он должен будет их по новой добавлять в ADOQuery. Это можно перетерпеть, если всего два поля будет, но если этих полей будет штук 50 ? Я думаю, прога основательно подвиснет при открытии. =================================== = В общем вопрос: Можно ли как то скопом добавить все поля в АДОшку, каким нибудь Рефрешем или Апдейтом ... Помогите выйти из ситуации, пожалуйста ![]() |
![]() |
![]() |
![]() |
#2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#3 |
фонатик DELPHI
Форумчанин
Регистрация: 14.01.2008
Сообщений: 714
|
![]()
Если не объявлять статический поля (не делать addfields) в TDAtaSet (потомком которого есть TADOQuery) , то при открытии таблицы, они автоматически в него добавятся .
--------- К примеру когда я делаю какую то форму с отображением новых таблиц (сцепок таблиц), я сначала добавляю все поля addfileds. Потом настраиваю все контролы в форме, открываю проверяю как работает, а потом удаляю все эти поля с TAdoQuery. В случае, если мне нужно присобачить обработчики по типу Onvalidate OnGet(Set)Text я делаю это на этапе инициализации формы перед открытием TAdoQuery посредством присвоение обработчика в коде
95% сбоев и ошибок приложений, находится в полу метрах от монитора
![]() |
![]() |
![]() |
![]() |
#4 | |
Форумчанин
Регистрация: 28.09.2011
Сообщений: 250
|
![]() Цитата:
Я немного не понял .... Вы имеете в виду, что мне нужно перед подключением нового поля к DBEdit перезапустить АДОшку? Код:
Если так, то .... Я пробовал данный код: (В базе было 12 полей, а в ADOQuery я только 10 добавил) Код:
- Message_#1: 10 Message_#2: 10 - Так что, либо я что то не так понял, либо данное действо не поможет мне ... |
|
![]() |
![]() |
![]() |
#5 | |
фонатик DELPHI
Форумчанин
Регистрация: 14.01.2008
Сообщений: 714
|
![]() Цитата:
Потом, в базе данных в табличку добавть ещё одно поле и опять попробуй код.
95% сбоев и ошибок приложений, находится в полу метрах от монитора
![]() |
|
![]() |
![]() |
![]() |
#6 | |
Форумчанин
Регистрация: 28.09.2011
Сообщений: 250
|
![]() Цитата:
Уже попробовал, прочтите сообщение. Всё сразу отображается, но проблема с изначальным выводом данных в компоненты Последний раз редактировалось Stilet; 22.07.2015 в 19:51. |
|
![]() |
![]() |
![]() |
#7 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Кстати, а зачем тебе понадобилось все это? Чует мое "пэрце", что твою задачу точно можно решить более простым способом.
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#8 | |
фонатик DELPHI
Форумчанин
Регистрация: 14.01.2008
Сообщений: 714
|
![]() Цитата:
Например Код:
95% сбоев и ошибок приложений, находится в полу метрах от монитора
![]() |
|
![]() |
![]() |
![]() |
#9 | ||
Форумчанин
Регистрация: 28.09.2011
Сообщений: 250
|
![]() Цитата:
Цитата:
2) Я ничего не смог придумать лучше этого ... Вроде бы всё просто, только вот с этими полями я замучился ... Последний раз редактировалось Stilet; 23.07.2015 в 10:29. |
||
![]() |
![]() |
![]() |
#10 |
фонатик DELPHI
Форумчанин
Регистрация: 14.01.2008
Сообщений: 714
|
![]()
Если нужна обратная реакция то тогда на OnShow вешается всё для отображения, а на клике снимается. При этом, связка контрол-поле таблицы остаётся корректным на весь сеанс работы с приложением
95% сбоев и ошибок приложений, находится в полу метрах от монитора
![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программное управление кодом поля | DBEER | Microsoft Office Word | 1 | 15.05.2015 16:49 |
Как удалить динамически созданные поля в ADOQuery? | Darlee | Помощь студентам | 3 | 28.04.2014 11:57 |
маска для числового поля adoquery | haker270 | БД в Delphi | 3 | 18.11.2012 22:36 |
Как программно добавить поле Lookup в ADOQuery | aquatell | БД в Delphi | 0 | 04.05.2011 01:15 |
Как добавить все поля в таблицу с кода | tarakan1983 | БД в Delphi | 5 | 24.03.2009 18:14 |