|
88 Кб. |
|
| Всем доброго времени суток. Недавно при работе с MS Access встала следующая задача, о способе решения которой хотелось бы поговорить. Есть данные:
Табл.1 - Содержит информацию из 2-х строк: 1.Консультация; 2.Претензия
Табл.2 - Содержит информацию также из 2-х строк: 1.Интернет 2.Телефон
Табл.3 - Содержит данные согласно теманике Консультация->Интернет
Табл.4 - ........ Консультация->Телефон
Табл.5и6 - ........ Претензия->Интернет и Претензия->Телефон соответственно.
Создаем Поле со списком 1 (данные из табл.1); Поле со списком 2 (данные из табл.2); и поле со списком 3 (в которое должны подставляться данные из таблиц 3-6, согласно выбранных тематик)
Необходимо сделать так, чтоты при выборе из (поля со списком) данных из табл.1 и поля со списком из табл.2 - данные в поле со списком согласно тематик (содержащихся в табл.3-6) подставлялись автоматически.
P.S. Примерный макет см. вложение | |
|
| |
|
|
|
| Вы нас хотели запутать? Табл.1, Табл.2, а в примерном макете какие-то другие названия. Я запутался, а распутываться самому лень...
На первый взгляд Табл.3-6 - это должна быть одна таблица. Если расшифруете, можно будет сказать точнее | |
|
| |
|
|
|
| ОК! Необходимо сделать так, чтоты при выборе данных из раскрывающегося списка (см. БД->Запросы->История запрос) столбики Тип и Услуга - данные из таблиц "Консультация" и "Претензия" автоматически подставлялись в поле "Причина обращения" (БД->Запросы->История запрос).
Проще говоря выбираем Консультация->Интернет - в поле Причина обращения видим:
Настройка VPN
Сетевые сервисы
Статический IP
Cкорость передачи данных
Учетная запись(и)
Хостинг и доменные имена
Электронная почта
Защита информации
............... выбираем Консультация->Телефон - в поле Причина обращения видим:
Программирование аппарата
Настройка АТС
DEF коды (коды городов/стран)
Тарифы
Варианты оплаты | |
|
| |
|
|
|
| >P.S. Примерный макет см. вложение
Раз примерный макет, то не всё ещё потеряно, можно и структуру поменять.
Таблицы "Консультация" и "Претензия" имеют одинаковую структуру. Их имеет смысл объединить в одну таблицу "Причина обращения". В получившейся таблице "Причина обращения" поля "Интернет" и "Телефония" имеют одну и туже смысловую нагрузку - надо сделать из них одно поле (напрашивается название "Услуга", но оно у Вас занято под таблицу с типами услуг - пока не поздно сделайте что-нибудь с этим).
Для различения консультации и претензии в объединённую таблицу надо добавить поле внешней связи "Тип обращения" - у Вас имеется таблица "Тип обращения" там добавьте ключевое поле. Также свяжите таблицу "Услуга" с таблицей "Причина обращения", добавив соответствующие поля в таблицы.
Аналогично, надо добавить связь таблицы "Причина обращения" с таблицей "История" по полю "Причина обращения", соответственно, добавив ключевое поле в таблицу "Причина обращения". Обратите при этом внимание на тип полей для связи.
Следовательно, из таблицы "История" поля "Услуга" и "И надо убрать.
По-моему так ;-) | |
|
| |
|
|
|
| Если можно на примере ... | |
|
| |
|
|
|
| Какой пример? Всё ручками ;-) Можете и не переделывать, а оставить как есть. Это уж я предложил своё видение проблемы. Т.к. при Вашей структуре чтобы сделать то, что Вы хотите надо слишком много программировать... да и не делается так ;-)
А с удобной структурой данных, иногда даже вопросы сами собой отпадают... | |
|
| |
|
|
|
| Структура дело несомненно правильное. Но как сделать автоподстановку данных из в combobox3 при выборе нужных значений из первого и второго? Непонятен сам принцип!
Какким образом это реализовать возможно, с чего начинать ?
Был бы уместен пример с любыми данными - отражающий схему. или ссылку на пример (ресурс).
!PLZ! | |
|
| |
|
49 Кб. |
|
| Афтар, дерижите пример. В нем в зависимости от выбранного значения в первом комбобоксе формируется второй комбобокс, а уже потом заполняется подчиненная форма.
Думаю, что принцип понять сможете. | |
|
| |