![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как обновлять TAdoTable в одной форме, при изменении в другой?
тимохов © (2009-02-18 08:58:00)Здравствуйте!
Есть 2 MdiChild формы.
На каждой по TAdoTable, смотрящих на одну и ту же таблицу в БД.
Требуется при изменении таблицы в одной форме как-то обновить TAdoTable в другой форме.
Какой для этого у Дельфи существует стандартное решение?
Если нет, то кто как делает в подобных случаях?
тимохов (2009-02-18 10:44:00) [61]
> sniknik © (18.02.09 10:34) [7]
>
> > Какой для этого у Дельфи существует стандартное решение?
>
> датамодуль с ОДНИМ датасетом, а визуальные компоненты с
> обоих форм должны "смотреть" в общий датасоурс в том же
> датам
Была такая идея у меня. Но я используют фильтрацию, т.е. Filtered. Причем теоретически на разных формах свои правила фильтрации. Т.е. один датасет не подходит :(
Датамодуль я сделал - у меня там TAdoConneсtion лежит.
------------
Вообще, какой сейчас по теме мейнстримовый учебник? У меня есть Кен Хендерсон от Дельфи 3, но я так понял, что он устарел уже сильно.
Ega23 (2009-02-18 10:35:00) [62]
> Посему MDI нужен - куда еще 30 форм деть?
Берёшь TPageControl, делаешь 30 вкладок, на каждую - свой фрейм. Общие дб-шные компоненты выносишь в датамодуль, частные (кроме конкретного фрейма нигде не нужные) - на конкретный фрейм.
Для удобства вообще создаёшь базовый фрейм и от него наследуешь все остальные.
Собственно, всё.
sniknik (2009-02-18 10:34:00) [63]> Какой для этого у Дельфи существует стандартное решение?
датамодуль с ОДНИМ датасетом, а визуальные компоненты с обоих форм должны "смотреть" в общий датасоурс в том же датамодуле.
Sergey13 (2009-02-18 09:46:00) [64]> [5] тимохов (18.02.09 09:21)
> и поглотить все наши учетные задачи по работе с клиентами
Громадье планов! 8-)
> Посему MDI нужен - куда еще 30 форм деть?
Почему посему? Потому что планов громадье и боишься просто забыть про некоторые формы?
тимохов (2009-02-18 09:21:00) [65]1) Несмотря на мой опыт в разработке клиентов для баз данных на дельфи я первый раз пользуюсь датабазными компонентами от дельфи :) Решил использовать их для базы, ориентированной на ввод информации о клиентах. Посему и вопросы такие, ламерские :)
2) Ок. Я понял, нужно самому рассылать сообщения. Я думал, что может, если у TAdoTable один TAdoConnetion, то таблицы сами разберутся что к чему.
3) Чем адодатасет лучше?
4)
MsGuns © (18.02.09 09:10) [2]
1) Не следует без крайней нужды "дергать" датасеты неактивных форм
2) Использование компонента TADOTable
Дело в том, что в одной форме у меня заводится информация о клиентах, в другой - используется та же таблица как Lookup, для вставки клиентов в другую таблицу. Сейчас получается, что ввел клиента, а он не виден в другой таблице. Приходится форму открывать и закрывать.
и один вопрос: кавова необходимость в MDI ?
Я вообще планирую данную систему развивать долго и поглотить все наши учетные задачи по работе с клиентами. Своего рода - это доморощенная CRM система будет, учитывающая специфику взаимодействия с клиентами. Посему MDI нужен - куда еще 30 форм деть?
MsGuns (2009-02-18 09:19:00) [66]>Медвежонок Пятачок © (18.02.09 09:12) [3]
Ты знал ! :)
Медвежонок Пятачок (2009-02-18 09:12:00) [67]После сделанных изменений - сообщение из дочерней в главную.
из главной трансляция полученного сообщения всем чайлдам.
при получении сообщения в чайлде делать
Requery
ну и заменить все адотэйбл\адоквери на адодатасет
MsGuns (2009-02-18 09:10:00) [68]Ламерский:
Unit FormChild1
uses Unit2
FormChid2.ADOTable1.ReQuery
Джидайский: послать сообщение и в Unit2 "отреагировать", переоткрыв датасет
ЗЫ. ИМХО, две концептуальные ошибки:
1) Не следует без крайней нужды "дергать" датасеты неактивных форм
2) Использование компонента TADOTable
и один вопрос: кавова необходимость в MDI ?
Anatoly Podgoretsky (2009-02-18 09:08:00) [69]> тимохов (18.02.2009 8:58:00) [0]
Refresh