При создании раскрывающегося списка с помощью Мастера в форме привязанной к источнику данных, Access предлагает сделать этот компонент средством перехода к нужной записи в форме.
Для решения этой задачи установим в Мастере списков переключатель Поиск записи в форме на основе значения, которое содержит поле со списком. В следующем диалоговом окне выберем поля, которые образуют столбцы элементов списка. Затем настроим ширину столбцов и при необходимости установим флажок Скрыть ключевой столбец. В последнем диалоговом окне вводится текст метки, поясняющей назначение списка.
Полученное поле удобно и тем, что значение в нем можно не только выбирать, но и просто ввести первые буквы текста – необходимый элемент будет выбран автоматически.
Действие созданного поля со списком обеспечивается процедурой обработки события После обновления, сгенерированного мастером.
Еще один прием синхронизации данных Динамическая фильтрация данных. Он позволяет задать интерактивно в главной форме некоторые условия для отбора интересующих записей в подчиненной форме.
Решения этой задачи можно добиться применяя фильтр для источника данных подчиненной формы. Фильтр можно применить двумя способами:
- с помощью интерфейса Access (команд главного меню и т.д.);
- с помощью изменения значений свойств формы.
Первый способ аналогичен применению фильтра в режиме Таблицы. В этом случае применяются свойства формы Фильтр и Фильтр включен. Свойство Фильтр содержит строковое значение – предложение Where на языке SQL (без ключевого слова Where). Свойство Фильтр включен определяет, применен ли фильтр, указанный в свойстве Фильтр, к форме. Свойство Фильтр можно задать и в режиме Конструктора, в окне свойств формы, чтобы фильтр применялся в момент загрузки формы.
Динамическое изменение фильтра можно реализовать с помощью процедуры VBA.