MS Access не работает для нескольких пользователей

У меня есть БД, которую я создал как своего рода журнал проверки виртуального клиента в реальном времени. Он будет храниться на сетевом диске интрасети. Теоретически приветствующий может отправить информацию о клиенте обратно, чтобы ее забрал другой работник. Это делается с помощью ряда форм, таблиц и запросов. Когда я тестирую это сам на своем собственном компьютере, открывая формы приветствия и приема, я могу ввести информацию о приветствии, нажать кнопку действия, чтобы отправить ее в таблицу, где задан таймер (содержится в скрытой форме, открытой с помощью AutoExec). макрос) подхватывает текущую запись, а затем отображает ее на форме приема. Все работает отлично. Единственная проблема заключается в том, что когда я пытаюсь протестировать его на нескольких компьютерах, приветствующий может отправить информацию обратно, она появляется на столе, но форма приема никогда не заполняется. Есть идеи, где может быть разрыв?

edit Я решил избавиться от скрытой формы инициализации, поэтому реорганизовал код следующим образом. Это все еще работает, когда я делаю это сам на одном компьютере, но открывая форму приема на другом компьютере, она все равно не заполняется.

Прием 1

Private Sub Form_Timer()

If gClientID > gNextClientID Then
gblnRNC = True
Else: gblnRNC = False
End If

If gblnRNC = True And gblnRec1Free = True Then
gRec1CL = gNextClientID
MsgBox "There is a new client to be seen.", vbSystemModal, "New Client  Warning"
Me.RecordSource = "RecClientIDNum"
End If   
End Sub

person MrRogers    schedule 22.05.2018    source источник
comment
База данных разделена? Есть ли у пользователя, у которого возникли проблемы, правильные разрешения для папки, в которой хранится база данных?   -  person Darren Bartrup-Cook    schedule 22.05.2018
comment
База данных не разделена. Одной из функций, которую я хотел внедрить, была возможность экспортировать копию журналов за день, а затем очищать таблицы, чтобы они были готовы к следующему дню, но одна из них включает поле вложения, и это самый простой способ, который я нашел для обновить эту таблицу, чтобы удалить столбец вложения и повторно добавить его, но если я разделю базу данных, мой код для этого даст мне ошибку 3611. Я не думаю, что проблема в разрешениях, я даже зарегистрировался на двух разных компьютерах и столкнулся с той же проблемой.   -  person MrRogers    schedule 22.05.2018
comment
Пробовали ли вы базу данных на другом компьютере, не пробуя ее на нескольких машинах? Итак, запустите те же тесты, которые вы делаете на своем компьютере, на другом компьютере, все еще есть проблемы или он работает правильно? Кроме того, какой метод вы используете для заполнения рассматриваемой формы (reception form)?   -  person Jiggles32    schedule 22.05.2018
comment
@ Jiggles32 Мне придется подождать, пока кто-нибудь не пойдет на обед, чтобы попробовать это на другом компьютере, у нас довольно загруженный офис и компьютеров едва хватает, чтобы ходить, как есть, но я разместил код, который заполняет форму приема на мой первоначальный вопрос.   -  person MrRogers    schedule 22.05.2018
comment
С другого компа тоже работает корректно.   -  person MrRogers    schedule 22.05.2018
comment
Может ли проблема быть в том, что запущено несколько копий формы инициализации? В настоящее время он открывается для каждого пользователя, открывающего базу данных.   -  person MrRogers    schedule 22.05.2018


Ответы (1)


Так что простите мой нубский вопрос, я как бы вскочил в процедуры программирования, не полностью понимая, как работает Access. Я объявил глобальные переменные, но не понял, что они глобальны только в рамках локального сеанса, работающего на конкретной машине.

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

person MrRogers    schedule 29.05.2018