MS Access 2003/2007 - передача данных через переменную в несвязанных формах против скрытого текстового поля - PullRequest
0 голосов
/ 05 июля 2010

Хорошо, поэтому я надеюсь, что заголовок вопроса совпадает с тем, что я собираюсь задать, но вот что я пытаюсь получить:

Итак, у меня есть база данных доступа, которая использует несколько несвязанных форм,и целью форм является сбор данных и их сохранение в различных таблицах с событиями щелчков VBA с использованием операторов SQL (INSERT или UPDATE в зависимости от того, присутствует ли идентификатор записи в форме в скрытом текстовом поле).При вводе новой записи (через INSERT) я получаю номер строки с

MyRow = db.openrecordset("SELECT @@Identity")(0)  'thanks David

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

Так что мой вопрос: есть ли лучший способ сделать это?это касается передачи этого значения (или просто использования этого значения) с использованием переменной вместо этого неудобного метода.Поэтому я понимаю, что многие люди пойдут с очевидным ответом: «Почему бы просто не связать свои формы вместо всего этого кода» ... и я уверен, что это правильный ответ, однако я унаследовал эту базу данных, котораябыл уже собран таким образом, и реструктуризация это будет непростой задачей.

Любые советы или учебные ресурсы очень ценятся, как и всегда!

Ответы [ 2 ]

2 голосов
/ 06 июля 2010

Я использую несвязанные элементы управления в формах для всех этих типов значений.Текущее решение использования несвязанной формы более надежно, чем использование глобальных переменных или переменных уровня формы.Если я правильно помню детали во время отладки кода и нажал кнопку «Стоп», вы потеряете все глобальные переменные или переменные уровня формы.Или если пользователь попадает в необработанную ошибку.

1 голос
/ 05 июля 2010

Вы смотрели на OpenArgs?

 DoCmd.OpenForm "Form1", , , , , , "Hello"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...