Переход на определенную запись в форме
Переход на определенную запись в форме
Типичной задачей является организация более удобного чем последовательный перебор перехода по записям в форме, задавая значения каких-то полей записи, для ее поиска по ним. Например, в форме с информацией для большого количества сотрудников хотелось бы быстро перейти к карточке сотрудника с известной фамилией. Это можно сделать с помощью специального списка для выбора фамилии.
В разд. "Создание элементов управления с помощью панели элементов" гл. 5 мы упомянули о том, что при создании списка/поля со списком с помощью Мастера в форме, привязанной к источнику данных, Access предлагает сделать его средством перехода к нужной записи в форме. Рассмотрим пример создания такого списка:
-
Откройте в режиме Конструктора форму "Сотрудники" (Employees) базы данных "Борей" (Northwind).
-
Убедитесь, что на панели инструментов
Панель элементов (Toolbox) нажата кнопка Мастера (Control Wizards). Нажмите кнопку Поле со списком (Combo Box) и разместите новый элемент в разделе заголовка формы, начертив мышью прямоугольник нужного размера.
-
Появится первое диалоговое окно Мастера списков. Выберите переключатель
Поиск записи в форме на основе значения, которое содержит поле со списком
(Find a record on my form based on the value I selected in my combo box) и нажмите кнопку
Далее
(Next).
-
В следующем диалоговом окне мастера выберите поля, которые образуют столбцы элементов списка: "КодСотрудника" (EmployeeID), "Фамилия" (LastName) и "Имя" (FirstName). Нажмите кнопку
Далее
(Next).
-
В следующем диалоговом окне Мастера списков предлагается настроить ширину столбцов списка. Столбец с ключевым полем "КодСотрудника" рекомендуется сделать скрытым (установите флажок
Скрыть ключевой столбец
(Hide key column)). Оставьте предложенные параметры и нажмите кнопку Далее (Next).
-
В последнем диалоговом окне мастера требуется ввести текст метки, поясняющей назначение списка. Введите текст: Фамилия: и нажмите кнопку
Готово
(Finish).
Действие созданного поля со списком обеспечивается процедурой обработки события После обновления (After Update), сгенерированной мастером (см. также разд. "Создание процедур обработки событий"гл. 13).