Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сохранение данных с основной формы в подчиненные через Поле со списком / 3 сообщений из 3, страница 1 из 1
22.12.2016, 10:37
    #39372617
K0LbAzzeR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение данных с основной формы в подчиненные через Поле со списком
Решил изучить и разобраться с Access. И вот первые грабли. Подскажите (если такое возможно вообще реализовать средствами Access), хочу сделать следующее, сохранять данные с основной формы в подчиненные таблицы через поля со списком. Пока у меня вылетает ошибка при попытке "внести" данные через это поле со списком (если таких данных нет в подчиненной таблице). Вообще возможно что бы Access сам автоматом создавал новую запись которой нету в подчиненной таблице, при условии что все связи установлены.

Во вложении сама БД и скрин ошибки при попытке ввода значения которого нету в подчиненной таблице.
...
Рейтинг: 0 / 0
22.12.2016, 12:57
    #39372806
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение данных с основной формы в подчиненные через Поле со списком
K0LbAzzeR,
дословно не помню-но как-то так: таблица должна полно описывать сущность (в данном случае человек и для этого создавать лишние таблицы совершенно ни к чему.На будущее-сначала заполняются справочники-таблицы со стороны ОДИН а затем таблицы со стороны многие) Добавить запись в справочник из можно так:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Private Sub полеСоСпискомСисточникомСправочник_NotInList(NewData As String, Response As Integer)
    Dim intNewCategory As Integer, intTruncateName As Integer, strTitle As String, intMsgDialog As Integer
      Dim rs As DAO.Recordset
    strTitle = "Такой пункт отсутствует в списке "
    intMsgDialog = vbYesNo + vbQuestion + vbDefaultButton1
    intNewCategory = MsgBox("Добавить новый пункт?", intMsgDialog, strTitle)
If intNewCategory = vbYes Then
DoCmd.RunCommand acCmdUndo
 Set rs = CurrentDb.OpenRecordset("имяТаблицыВкоторуюДобавляете") если справочник-одно поле
        rs.AddNew
        rs!имяПоля = NewData
        rs.Update
Set rs = Nothing
'DoCmd.OpenForm "формаНаСправочнике", acNormal, , , acAdd, acDialog, NewData -если справочник несколько полей
'в процедуре открытия передать OpenArgs в форму
        Response = acDataErrAdded
    End If
End Sub
...
Рейтинг: 0 / 0
22.12.2016, 13:18
    #39372847
K0LbAzzeR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение данных с основной формы в подчиненные через Поле со списком
sdkuK0LbAzzeR,
дословно не помню-но как-то так: таблица должна полно описывать сущность (в данном случае человек и для этого создавать лишние таблицы совершенно ни к чему.На будущее-сначала заполняются справочники-таблицы со стороны ОДИН а затем таблицы со стороны многие) Добавить запись в справочник из можно так:


За пример СПС, попробую разобраться с VBA

По части примера, пример чисто абстрактный, для примера, мне намного важнее освоить сам метод добавления в подчиненные таблицы с основной формы через это поле со списком.

И еще я понимаю что нужно сначала заполнить "справочники", но это жутко не удобно, куда приятнее будет если ты при заполнении основной формы написал в поле значение, нажал Tab, система проверила что такого значения нету в подчиненной таблице и предложила его вставить, и сообщила о результатах вставки, либо вставка прошла с успехом, либо нет.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сохранение данных с основной формы в подчиненные через Поле со списком / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]