![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Прочие БД - Добавление новых значений связанных полей в Access |
|
Прочие БД - Добавление новых значений связанных полей в Access
|
Новый участник Сообщения: 33 |
Пусть в базе данных Access (располагаю версией 2007) ключевое поле главной таблицы (скажем, текстового типа) связано с неключевым полем подчинённой таблицы по типу «один-ко-многим». Связь осуществилась с помощью Мастера подстановок. При создании связи пусть указано, как по умолчанию: «Ограничиться списком?» -> «Нет», т.е. целостность данных сознательно не обеспечена.
Создаётся форма на основании подчинённой таблицы. Пусть требуется с помощью этой формы создать новую запись. Выбирается через раскрывающийся список соответствующее связанному полю ключевое поле главной таблицы, а нужного значения ключевого поля пока нет. Видится 2 способа его добавления. 1. Закрыть форму, открыть главную таблицу и в ней добавить недостающее значение ключевого поля, что представляется не совсем удобным. 2. Т.к. целостность данных не обеспечена, можно в форме самим вручную написать новое значение поля. Понятно, через копирование и вставку это значение можно впоследствии перенести и в главную таблицу, там его проверка на уникальность автоматически и произойдёт. НО! Можно ли каким-либо образом сделать, чтобы это новое значение связанного поля, добавленное в форме, само подставилось именно в новую запись главной таблицы? Разумеется, если это значение ранее в ней не встречалось. Заранее благодарю. |
|
Отправлено: 12:39, 17-01-2013 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать можно навесить код на VBA на SelectedIndexChanged. В коде проверить, есть ли в таблице выбранная запись. Если ее нет, то вызвать запрос с параметром(его написать заранее), который будет добавлять запись в таблицу.
|
------- Отправлено: 15:18, 18-01-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 33
|
Профиль | Сайт | Отправить PM | Цитировать Ну запрос с параметром - это понятно. Осталось узнать, как навесить код на VBA.
|
Отправлено: 15:21, 18-01-2013 | #3 |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Цитата Доярка:
|
|
------- Отправлено: 09:33, 21-01-2013 | #4 |
Новый участник Сообщения: 33
|
Профиль | Сайт | Отправить PM | Цитировать Осталось бы знать, какой код. Алгоритм представляю.
Индикатор = ложь Для всех записей в добавляемую таблицу: Если значение ключевого поля = значению добавленного текстового поля, то: Индикатор = истина Выход из цикла Конец условного оператора Конец цикла Если не(индикатор), то: Добавить в таблицу запись Значение ключевого поля = значение добавленного текстового поля Конец условного оператора *** Но не знаю, как бы это реализовать на VBA. |
|
Отправлено: 13:48, 21-01-2013 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2010 - Расшифровка значений кодов полей | IRo | Microsoft Office (Word, Excel, Outlook и т.д.) | 2 | 26-01-2011 11:20 | |
VBA - Access Xp | Открыть из формы отчет и изменить значения полей | mrcnn | Программирование и базы данных | 1 | 26-05-2009 19:37 | |
Прочие БД - Oracle SQL Developer: отображение значений полей. | BacuJIuu KypraHoB | Программирование и базы данных | 0 | 28-11-2008 16:10 | |
Прочие БД - [решено] Как подсчитать сумму двух полей в Access 2003 | S-ON | Программирование и базы данных | 2 | 14-04-2008 17:30 | |
Добавление новых полей в форму при нажатии кнопки! | Scorpion666 | Вебмастеру | 1 | 13-11-2006 12:53 |
|