Доступ: Как открыть вторую форму для той же записи, что и первая?

Это должно быть так просто, но почему-то продолжает открывать вторую форму как новую запись! Я не создавал базу данных в течение многих лет и с тех пор у меня было двое детей, поэтому, пожалуйста, будьте осторожны с моим желе!

Это база данных сообщений об авариях, которую мы хотим каждый раз проходить по каждому разделу вопросов в новом окне, как в мастере. В первом разделе спрашивается, хотите ли вы сообщить о новом инциденте или о других параметрах навигации, команда для сообщения о новом инциденте была в порядке, построитель макросов, открытая форма, имя формы: о затронутом человеке 02, установите режим данных "добавить" в заходите в новую запись каждый раз. Пока все хорошо.

Автономер идентификатора формы генерируется, когда вы вводите имя, адрес и т. Д., А затем есть кнопка, чтобы нажать для перехода к следующему разделу. Я предположил, что, так как идентификатор уже был заполнен, и эта запись была создана в таблице, что, если я настрою командную кнопку для открытия формы и фильтрации на основе идентификатора, она появится в следующей форме (поле идентификатора отображается в верхнем углу каждой формы), но по какой-то причине он не фильтруется, просто выводит новую запись каждый раз в каждом разделе. Каждый раздел сохраняется независимо как его собственная запись.

Я попытался отфильтровать через конструктор макросов (установив режим данных для "редактирования" для этих последующих форм), и я попытался следовать за мастером командных кнопок и связать их, отношения есть, первая форма все еще открыта в то время, когда я думал, что, может быть, если я настрою макрос, чтобы закрыть его, когда открылся другой, то у него не будет данных для поиска? Теперь хватаюсь за соломинку, чтобы попытаться заставить ее работать, но я столько раз делал подобные вещи, и у меня никогда не было этой проблемы!!

Любая помощь или предложения будут высоко оценены, спасибо!

2 ответа

Я думаю, что у меня есть... после большого разочарования! Если кто-то еще ищет решение этой проблемы, Альберт Д. Каллал был прав: он БЕЗ сохранил данные, но сначала открывал новую форму, затем, когда предыдущая форма была закрыта, он сохранял данные, чтобы они появились в моей таблице, но еще не существует, чтобы перейти к следующей форме. Простое исправление, изменен порядок команд на макросе. Я полагаю, что предложенный им код тоже сработал бы, если бы он не был в руках кого-то с серьезным заболеванием детского мозга...

Тот факт, что автоматический номер создан, не означает, что запись была создана, и не означает, что запись была сохранена. Если пользователь нажимает "Отменить" и "Выход", то данные никогда не сохраняются, и на самом деле автоматический номер пропускается и никогда не используется. Это объясняет, почему вы часто можете видеть пробелы в автоматическом номере, если не произошло удаление.

Простое решение перед запуском другой / следующей формы - убедиться, что данные в текущей форме записаны в таблицу. Следующий код достигнет этой цели:

If me.dirty = true then me.dirty = false

Docmd.OpenForm "Form2",,,"id = " & me!id

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

Другие вопросы по тегам