|
Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » 2007 - Microsoft Office Access 2007 столбец подстановки, выбор определенных значений. |
|
2007 - Microsoft Office Access 2007 столбец подстановки, выбор определенных значений.
|
Забанен Сообщения: 50 |
Здравствуйте уважаемые участники форума.
Давно не могу решить проблему с полем подстановки в Microsoft Office Access 2007 Есть три таблицы: 1. "Контингент обучающихся", со столбцом подстановок "Контингент" с выбором фиксированных значений, столбец предоставляет возможность выбора трех вариантов (порядковые номера поставил для информации, в записях они отсутствуют!) 1. Интерн 2. Слушатель 3. Переподготовщик 2. "Учебный процесс", со столбцом подстановок "Специальность" с выбором значений из таблицы "Справочник специальностей", столбец предоставляет возможность выбора следующих специальностей: (порядковые номера поставил для информации, в записях они отсутствуют!) 1. УЭФ 2. ФТ 3. ФХ и ФГН 4. Фармация 5. КЛД 6. ФПы 7. Наркотика 8. ДЛО 3. "Справочник специальностей" содержит столбцы "КодСпециальности" и "Специальность", ее значения используются для столбца подстановок "Специальность" в таблице 2 ("Учебный процесс") для ввода специальности. Нужно сделать так, чтобы при выборе контингента в столбце "Контингент" из первой таблицы "Контингент обучающихся" во второй таблице "Учебный процесс" в столбце "Специальность" можно было выбирать только специальности, которые соответствуют данному контингенту. Например: 1. Интерн (специальности с 1 по 3) 2. Слушатель (специальности с 1 по 8) 3. Переподготовщик (специальности с 1 по 4) В Интернете я так и не смог найти внятную информацию по этому вопросу. Подскажите пожалуйста как решить проблему. Буду очень благодарен. |
|
Отправлено: 10:49, 27-06-2011 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Надо сделать еще одну таблицу, в которой будут соответствия контингенту данных из других таблиц.
Например, так: Структура таблицы: Т.е. контингенту Интерн соответствуют учебные процессы КЛД и ФПы и т.д. Далее сделать запрос, который будет выбирать данные на основе выбранных значений и подставлять в поле. |
------- Отправлено: 00:50, 28-06-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Забанен Сообщения: 50
|
Вроде бы уже близко к пониманию, но мне все еще не совсем понятны некоторые важные моменты:
1. В Вашей таблице какой формат должен быть у полей - счетчик или числовой? 2. Кроме того, хочу извиниться за то, что предоставил несколько неверную информацию. Вместо таблицы "Справочник специальностей" у меня создана другая таблица, "Справочник Контингент+Специальность", ее структура показана на вложенном файле. Следует ли вместо нее создать вот такие таблицы (я подозреваю что это и нужно для Вашей таблицы) 1.1. "Справочник контингента" содержащую столбцы "КодСпрКонтингента" и "Контингент" 1.2. "Справочник специальностей" содержащую столбцы "КодСпрСпециальности" и "Специальность" 3. С какими таблицами должны быть связи? И какой запрос должен быть создан для связи между таблицами? Кроме того я подозреваю, что в столбцах подстановки "Контингент" таблицы "Контингент обучающихся" и "Специальность" таблицы "Учебный процесс" при той структуре таблицы что Вы предложили будут выбираться лишь цифры, а нужно чтобы выбирался текст. Во втором вложенном файле указана схема данных БД с указанием всех существующих на данный момент связей, названий таблиц и столбцов (В таблице "Учебный процесс" как раз выделен тот столбец, где предполагается создать столбец подстановок с выбором конкретного значения, соответствующего выбору в столбце "Контингент" таблицы "Контингент обучающихся" |
Отправлено: 08:49, 28-06-2011 | #3 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать показываю пример "на пальцах"
И наконец третья, связная таблица, в которой будут соответствия между ними: Т.е. мы привязали в Иванову только ЭТФ и МУИ. Привязали образно. Для того, чтобы в списке выпадали только ЭТФ и МУИ, вместо всего списка, надо написать небольшой запросик, типа такого Запрос выберет все данные из специальности, где пользователь равен Иванову. Вот как то так. По такой же аналогии и в твоем примере. |
------- Отправлено: 09:43, 28-06-2011 | #4 |
Забанен Сообщения: 50
|
Все равно мне непонятно. Твой запрос конечно понятен и работает, но мне нужна немного другая задача, а следовательно более сложный запрос. Попробую поставить задачу следующим образом:
Всего в пробной базе данных 5 таблиц: 1. Контингент, содержит столбцы: 2. КонтингентОбучающихся, содержит столбцы: idКонтингОбуч ФИО Контингент (Контингент является столбцом подстановки из таблицы Контингент) 1 Иванов Иван Иванович Интерн 2 Петров Петр Петрович Слушатель 4. Соответствия, содержит столбцы: КонтингентID СпециальностьID (для попытки вывода в запросе не числовых значений а текста столбец СпециальностьID является столбцом подстановки из таблицы Специальности) 1 УЭФ 1 ФТ 1 ФХ и ФГН 2 УЭФ 2 ФТ 2 ФТ и ФГН 2 Фармация 2 КЛД 2 ФАПы 2 Наркотика 2 ДЛО 3 УЭФ 3 ФТ 3 ФТ и ФГН 3 Фармация idУчПр ФИО (является столбцом подстановки из таблицы КонтингентОбучающихся) Специальность (здесь и предполагается создать поле подстановки для выбора значений, то есть запрос) 1 Иванов Иван Иванович 2 Петров Петр Петрович 1. Выбирать значения в запросе не из таблицы Контингент, а из таблицы КонтингентОбучающихся из столбца Контингент; 2. Обеспечить привязку записей из таблицы КонтингентОбучающихся строго к записям таблицы УчебныйПроцесс, т.е. к полю ФИО, являющемуся столбцом подстановки из таблицы КонтингентОбучающихся для того, чтобы избежать ошибочного выполнения запроса когда поле ФИО таблицы УчебныйПроцесс ничего не содержит (или сделать поле Специальность неактивным пока не введены данные в поле ФИО); 3. Выбирать значения не фиксированные, как в твоем запросе, а только те, которые соответствуют выбранному в поле таблицы КонтингентОбучающихся столбца Контингент. И прикреплю к этому сообщению с базой данных, содержащие жалкие попытки претворить в жизнь вышесказанное. |
|
Отправлено: 09:21, 30-06-2011 | #5 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Возник наводящий вопрос. А данные будут вводиться непосредственно в режиме редактирования данных таблицы или же будет форма для заполнения? В зависимости от ответа и решения будут разные.
И почему в УчебномПроцессе и КонтингентеОбучающихся есть 2 одинаковых поля ФИО? Если во второй таблице подстановка, то и поле надо было назвать idФИО, во избежание путаницы |
------- Отправлено: 01:18, 01-07-2011 | #6 |
Забанен Сообщения: 50
|
Подскажи пожалуйста 2 варианта решения проблемы (и с таблицей и с формой), воспользуюсь и тем и другим. Поля переименую по твоему совету.
|
Отправлено: 08:26, 01-07-2011 | #7 |
Забанен Сообщения: 50
|
Ну что, так и нет ответа? Я так и знал. Это так называемый форум "компьютерной помощи" где сидят так называемые "специалисты", ни на что оказывается неспособные. Я задал конкретный вопрос и хочу получить на него ответ, неужели никто не знает решение проблемы? Проще наверно взять специальную литературу и разобраться самому. В темку заходили и просматривали ее 197 ламеров но ни один не дал ответа. Я уверен что после моего поста начнутся вопли, что типа почему мы должны тебе помогать, тратить свое время? Ответ: так вас силком никто на форум не тащит! Просто помощь нужна была срочно, а ее здесь оказывается нету, только на простые вопросы способны отвечать, которые за 5 минут решаются.
|
Отправлено: 21:42, 07-07-2011 | #8 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Призрак, а ты не думаешь, что тут сидят люди, которые тоже работают и отвечают только в свободное от работы время?
Цитата Призрак:
Цитата Призрак:
Я дал тебе направление, разложил по полочкам как и что делать, и что в итоге получил? Цитата Призрак:
|
|||
------- Отправлено: 01:01, 08-07-2011 | #9 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2007 - Microsoft Office Outlook 2007 Постановка задачи и выбор категории | DailDiggers | Microsoft Office (Word, Excel, Outlook и т.д.) | 1 | 16-08-2010 14:09 | |
2007 - Microsoft Access 2007 | Candyman | Microsoft Office (Word, Excel, Outlook и т.д.) | 17 | 01-06-2010 15:51 | |
Прочие БД - Процедура поиска в БД: Delphi 7 + Microsoft Office Access | Tomplier | Программирование и базы данных | 1 | 09-03-2010 01:22 | |
Прочие БД - Microsoft Office Access | bomberman | Программирование и базы данных | 1 | 08-02-2010 01:45 | |
Использование - Office 2007 This copy of Microsoft Office is not genuine | Vitosha | Лицензирование продуктов Microsoft | 1 | 20-10-2009 19:51 |
|