Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Прочие БД - Добавление новых значений связанных полей в Access

Ответить
Настройки темы
Прочие БД - Добавление новых значений связанных полей в Access

Аватара для Доярка

Новый участник


Сообщения: 33
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Пусть в базе данных Access (располагаю версией 2007) ключевое поле главной таблицы (скажем, текстового типа) связано с неключевым полем подчинённой таблицы по типу «один-ко-многим». Связь осуществилась с помощью Мастера подстановок. При создании связи пусть указано, как по умолчанию: «Ограничиться списком?» -> «Нет», т.е. целостность данных сознательно не обеспечена.
Создаётся форма на основании подчинённой таблицы. Пусть требуется с помощью этой формы создать новую запись. Выбирается через раскрывающийся список соответствующее связанному полю ключевое поле главной таблицы, а нужного значения ключевого поля пока нет. Видится 2 способа его добавления.
1. Закрыть форму, открыть главную таблицу и в ней добавить недостающее значение ключевого поля, что представляется не совсем удобным.
2. Т.к. целостность данных не обеспечена, можно в форме самим вручную написать новое значение поля. Понятно, через копирование и вставку это значение можно впоследствии перенести и в главную таблицу, там его проверка на уникальность автоматически и произойдёт.
НО! Можно ли каким-либо образом сделать, чтобы это новое значение связанного поля, добавленное в форме, само подставилось именно в новую запись главной таблицы? Разумеется, если это значение ранее в ней не встречалось.
Заранее благодарю.

Отправлено: 12:39, 17-01-2013

 

Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


можно навесить код на VBA на SelectedIndexChanged. В коде проверить, есть ли в таблице выбранная запись. Если ее нет, то вызвать запрос с параметром(его написать заранее), который будет добавлять запись в таблицу.

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)


Отправлено: 15:18, 18-01-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Доярка

Новый участник


Сообщения: 33
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Ну запрос с параметром - это понятно. Осталось узнать, как навесить код на VBA.

Отправлено: 15:21, 18-01-2013 | #3


Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


Цитата Доярка:
как навесить код на VBA. »
Свойства текстового поля в режиме конструктора формы. Ищем нужное свойство. Прописываем туда код.

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)


Отправлено: 09:33, 21-01-2013 | #4


Аватара для Доярка

Новый участник


Сообщения: 33
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Осталось бы знать, какой код. Алгоритм представляю.
Индикатор = ложь
Для всех записей в добавляемую таблицу:
Если значение ключевого поля = значению добавленного текстового поля, то:
Индикатор = истина
Выход из цикла
Конец условного оператора
Конец цикла
Если не(индикатор), то:
Добавить в таблицу запись
Значение ключевого поля = значение добавленного текстового поля
Конец условного оператора
***
Но не знаю, как бы это реализовать на VBA.

Отправлено: 13:48, 21-01-2013 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Прочие БД - Добавление новых значений связанных полей в Access

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
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




 
Переход