Access 2007
.pdf
Рис. 14.5. Список слева отображает разные варианты систематизации области переходов.
Вы не увидите варианты Дата создания и Дата изменения, поскольку их невозможно настроить. Список справа отображает группы в выбранной в данный момент категории
Рис. 14.6. Для перемещения группы просто выделите ее. На экране рядом с группой появляются стрелки, направленные вверх и вниз. Можно щелкнуть эти кнопки мышью для переноса группы вверх или вниз
471
Единственный элемент, который нельзя переместить, — Несвязанные объекты, всегда отображаемый в конце списка. И вообще нельзя изменить порядок групп в категории
Тип объекта.
6.Щелкните мышью кнопку ОК для закрытия окна.
Подсказка
Многие БД в целом становятся гораздо понятнее, когда скрыты дополнительные объекты. Если вы снабдили вашу БД полным комплектом форм и отчетов, возможно, только эти объекты и стоит отображать. Почему не пойти дальше и не скрыть низкоуровневые таблицы, запросы и код?
Скрытие объектов
Скрытие групп, которые вы не хотите видеть, — это замечательно, но что если есть только один объект, который нужно скрыть от глаз? Возможно, необходимы гарантии того, что пользователи, применяющие вашу БД, не будут сбиты с толку несколькими потенциально опасными запросами на обновление (см. главу 8), которые на самом деле они не должны использовать. Нет проблем. Просто щелкните правой кнопкой мыши запрос в области переходов и выберите команду Скрыть в этой группе (Hide in this Group).
Примечание
Когда скрывается объект, он исчезает в текущем режиме отображения, в текущей группе. (Напоминаю, что в режиме Таблицы и связанные представления некоторые объекты могут появляться в нескольких группах.) Если нужно скрыть объект повсеместно, необходимо отследить его в каждой группе и скрыть.
Для отображения скрытого объекта сначала необходимо настроить область переходов так, чтобы она выводила на экран скрытые объекты. Для этого щелкните правой кнопкой мыши полосу заголовка, выберите команду Параметры переходов и установите флажок Показывать скрытые объекты, а затем нажмите мышью кнопку ОК. Теперь скрытые объекты отображаются в области переходов, но они слегка обесцвечены, поэтому вы можете отличить их от других, нескрытых объектов. Для того чтобы сделать объект видимым, щелкните его правой кнопкой мыши и выберите команду Показать в этой группе (Unhide in this Group).
Все эти методы — фильтрация, создание пользовательских групп, скрытие объектов — разработаны для облегчения использования БД. Но они не обеспечивают никакой защиты (пользователь, который действительно хочет использовать объект БД, может просто измерить параметры области переходов и получить доступ к нему.)
Примечание
В разд. "Подготовка вашей базы данных" главы 18 вы узнаете, как разделить БД на отдельные файлы — наилучший способ сохранения некоторых объектов в стороне от преступных рук. Но независимо от того, что вы делаете, программу Access нельзя назвать пуленепробиваемой. Access разработана в расчете на интуицию, податливость и легкость ее применении. В отличие от серверных БД, таких как SQL Server (см. разд. "Нужно ли переходить на SQL Server?" главы 20),
она не предназначена для блокирования злоумышленников, захвативших файлы вашей БД.
472
Использование групп Custom
Обычные пользователи не оперируют таблицами и объектами БД. Они думают о задачах, которые следует выполнить. Ни один из готовых вариантов группировки не соответствует такому подходу. К счастью, можно сформировать собственные группы, соответствующие ему. Далее описано, как это сделать.
1.Щелкните кнопкой мыши направленную вниз стрелку в зоне заголовка области переходов и выберите команду Custom (пользовательская группировка).
В новой БД вы начинаете с двух групп в режиме Custom. Первая, Custom Group 1, пуста. Вторая, Неназначенные объекты (Unassigned Objects), содержит все объекты вашей БД.
2.Можно создать новую группу и перенести в нее объект за один шаг. Для этого щелкните правой кнопкой мыши объект, который хотите переместить (в разделе Неназначенные
объекты) и выберите Добавить в группу → Создать группу (Add To Group → New Group).
Введите имя группы и нажмите клавишу <Enter>. На рис. 14.7 показан результат.
Повторите этот пункт для создания всех нужных групп. Если нужно перенести объект в существующую группу, щелкните его правой кнопкой мыши, выберите команду Добавить в группу (Add To Group) и затем укажите имя соответствующей группы.
Подсказка
Для ускорения работы просто перетащите мышью объекты в соответствующие группы.
Рис. 14.7. Зачастую удобно создавать группы с именами, отражающими типы задач, как в данной БД
Ваши группы можно переименовывать, удалять и реорганизовывать. Легчайший способ для этого — применение диалогового окна Параметры переходов. Щелкните правой кнопкой мыши заголовок области переходов и выберите Параметры переходов.
Диалоговое окно Параметры переходов позволяет выполнять несколько полезных задач, относящихся к группам:
□задать другое имя, выделив группу и щелкнув мышью кнопку Переименовать группу;
□удалить группу, просто выделив ее и щелкнув мышью кнопку Удалить группу;
473
□добавить первоначально пустую группу, щелкнув мышью кнопку Добавить группу;
□переупорядочить группы, щелкнув кнопкой мыши одну из них и используя появившиеся пиктограммы стрелок для перемещения группы вверх или вниз;
□переместить вашу пользовательскую категорию в другое место в списке, что повлияет на способ отображения меню, появляющегося на экране при щелчке мышью направленной вниз стрелки в области переходов;
□скрыть группу (временно или на длительный срок), сбросив флажок, расположенный рядом с именем группы.
Единственное, чего нельзя сделать в диалоговом окне Параметры переходов, — изменить состав группы. (Для этого нужно мышью перетащить объекты в области переходов, как описано в пункте 2.)
Рис. 14.8. Причина, по которой может возникнуть необходимость разных представлений, — использование вашей БД разными людьми. В примере с БД Cacophone Studios администрация просматривает формы для создания классов и регистрации студентов (с помощью представления Administration), в то время как преподаватели должны печатать ведомости посещаемости и создавать домашние задания студентам (с помощью представления Teachers, выделенного в данном примере). Как видно, это представление содержит группы Attendance and Marking (посещаемость и успеваемость) и Payments (платежи). У каждой из них свой набор форм и отчетов
Можно также изменить имя представления, содержащего все ваши группы. Первоначально эта категория называется Custom, но можно задать более информативное имя, выбрав категорию в диалоговом окне Параметры переходов и щелкнув мышью кнопку Переименовать элемент. Если хочется большего, можно создать несколько режимов
474
отображения пользовательских категорий верхнего уровня. Щелкните мышью кнопку Добавить элемент, чтобы вставить новую категорию, и кнопку Удалить элемент для удаления категории. На рис. 14.8 приведен пример с несколькими пользовательскими категориями.
3. Когда завершите внесение изменений, щелкните мышью кнопку ОК.
Поиск в списке области переходов
Если вам не нравится, когда что-то исчезает из вида, возможно, в этом случае придется выводить в области переходов громоздкий список объектов. Но у программы Access есть удобный инструмент, позволяющий экономить время на прокрутке, — поле поиска, которое помогает перейти к объекту почти мгновенно при условии, что вы знаете его имя.
Для отображения поля поиска выполните следующие действия.
1.Щелкните правой кнопкой мыши полосу заголовка области переходов и выберите команду Параметры переходов.
2.В окне Параметры переходов установите флажок Показывать строку поиска.
3.Щелкните мышью кнопку ОК.
Поле поиска появится над списком объектов в области переходов. По мере ввода программа Access фильтрует список объектов так, чтобы он включал только объекты, соответствующие строке поиска (рис. 14.9).
Рис. 14.9. Объекты, соответствующие строке поиска, содержат введенный текст. Если ввести "Class", вы увидите такие объекты, как Classes и Students_Classes
Построение форм со средствами автоматического перехода
Область переходов — неоценимое средство перемещения в вашей БД, но оно устраивает не всех. Пользователи, никогда раньше не работавшие в программе Access, могут счесть его несколько замысловатым и лишенным защиты от произвольного изменения параметров переходов (и открытия объектов, которые открывать не следует).
475
Для получения дополнительных средств управления и создания дружественной внешней оболочки многие специалисты Access встраивают средства переходов в свои формы (и иногда в отчеты). В конце концов, форма предоставляет практически неограниченные возможности настройки. Можно вставить абзац текста, добавить яркий выигрышный фон и эмблему компании и ограничить приводящие в замешательство варианты несколькими простыми дружественными кнопками.
Если вы твердо решили использовать формы для переходов, прежде всего, нужно выбрать тип формы для проектирования. Программа Access предлагает несколько вариантов, включая встроенную поддержку объекта, именуемого кнопочной формой.
Создание кнопочной формы
Кнопочная форма — это форма, единственная цель которой перенаправить вас к другим формам (обычно при щелчке мышью кнопки формы). Она — своего рода главное меню вашей БД. Такая форма — одновременно и отправная точка, и центр действий. Типичная кнопочная форма содержит набор кнопок, направляющих в разные места.
На рис. 14.10 показана разновидность кнопочной формы, создаваемая программой Access.
Примечание
Созданная кнопочная форма подобна форме любого другого типа, поэтому после ее создания можно использовать навыки, приобретенные в последних двух главах, для придания вашей кнопочной форме внешней привлекательности.
Рис. 14.10. Эта кнопочная форма программы Access предоставляет доступ к пяти разным формам одним щелчком кнопки мыши. Достоинство кнопочных форм Access заключается в возможности построения собственного варианта за считанные секунды. К недостаткам можно отнести несколько старомодный внешний вид, заставляющий впечатлительных пользователей проектировать собственные кнопочные формы с нуля
476
Для автоматического создания кнопочной формы следует применять Мастер форм (Form wizard). Далее описывается, как он работает.
1. Выберите на ленте Работа с базами данных → Работа с базами данных → Диспетчер кнопочных форм (Database Tools → Database Tools → Switchboard Manager).
Когда вы первый раз в БД щелкните мышью эту кнопку, программа Access сообщит о том, что не может найти кнопочную форму и предложит ее создать. Щелкните кнопку Да для продолжения работы Диспетчера кнопочных форм (рис. 14.11).
Если кнопочная форма уже существует, переходите к пункту 2, в котором можно редактировать текущую кнопочную форму.
Рис. 14.11. Диспетчер кнопочных форм выводит на экран список страниц. Каждая страница — отдельная часть меню кнопочной формы. У самых простых кнопочных форм только одна страница, что означает поддержку формой одного уровня глубины и выполнение каждой кнопкой полезного действия (например, открытие формы или отчета)
Рис. 14.12. Окно Изменение страницы кнопочной формы позволяет создавать команды меню, удалять те, которые больше не нужны, изменять порядок их следования (этот порядок определяет порядок команд на кнопочной форме)
477
2.Щелкните мышью кнопку Изменить для редактирования страницы кнопочной формы.
На экране появляется окно Изменение страницы кнопочной формы (рис. 14.12). Именно здесь определяются реальные команды меню.
3.Для создания новой команды меню щелкните мышью кнопку Создать.
На экран выводится окно Изменение элемента кнопочной формы (рис. 14.13). Для создания команды меню необходимо предоставить две порции информации: текст, появляющийся на форме, и команду, которую должна выполнить программа Access, когда вы щелкните мышью кнопку.
Рис. 14.13. Эта команда запускает отчет Attendance (посещаемость).
Из раскрывающегося списка Команда выберите действие, которое должна выполнять команда
4. Введите текст меню и затем выберите действие, которое должна выполнять кнопка. Возможны следующие варианты:
o Перейти к кнопочной форме (Go to Switchboard) — переходит на другую страницу кнопочной формы. Страницы кнопочной формы можно использовать для разбиения действительно длинных меню на несколько более коротких:
o Открыть форму для добавления (Open Form in Add Mode) — открывает форму в режиме ввода данных, поэтому можно вставлять новые записи;
oОткрыть форму для изменения (Open Form in Edit Mode) — открывает форму в обычном режиме для просмотра и редактирования записей. Этот режим не разрешает редактировать форму, вопреки вводящему в заблуждение названию;
oОткрыть отчет (Open Report) — открывает отчет в режиме предварительного просмотра;
oКонструктор приложения (Design Application) — открывает окно Диспетчера кнопочных форм, таким образом, позволяя редактировать меню кнопочной формы. Этот вариант редко требуется включать в меню;
o Выйти из приложения (Exit Application) — завершает программу Access:
oВыполнить макрос (Run Macro) и Выполнить программу (Run Code) — запускают созданный вами макрос (см. главу 15) или написанный вами код на языке Visual Basic
(см. главу 16).
5.Повторяйте пункты 3 и 4 до тех пор, пока не создадите все нужные команды. Затем щелкните мышью кнопку Закрыть для возвращения в главное окно Диспетчера кнопочных форм.
Укнопочных форм есть неприятный секрет. На каждой странице можно поместить только восемь команд меню. Если вам нужно больше (а кому же не нужно?), следует добавить дополнительные страницы в ваше меню.
478
На профессиональном уровне. Кнопочные формы с несколькими страницами
В каждый момент времени кнопочная форма отображает одну страницу с командами меню. Когда такая форма создается впервые, у нее всего одна страница. Но вы можете легко добавить дополнительные в окне Диспетчера кнопочных форм (см. рис. 14.11) с помощью кнопки Создать.
У кнопочных форм нет встроенных средств перехода с одной страницы на другую. Вместо этого вы должны самостоятельно вставить команду Перейти к кнопочной форме (Go to Switchboard). Допустим, у вас есть три страницы — главная и еще две с дополнительными командами. На главной странице вам понадобятся две команды Перейти к кнопочной форме, каждая будет переходить на одну из новых страниц. На новых страницах также нужна команда Перейти к кнопочной форме, которая позволит вернуться на главную страницу.
Применение нескольких страниц в кнопочных формах нельзя назвать идеальным. Они очень напоминают досаждающие кнопочные меню тонального набора в автоматизированных системах голосовой почты. Прежде чем вы освоите их, вы вынуждены переходить на страницы, у которых есть дополнительные страницы и так пробираться через все команды, пока не найдете нужную. Поэтому, если возможно, ограничьте вашу кнопочную форму восемью задачами. Если вы Достаточно искусны, то можете собрать вместе несколько форм, используя либо подчиненные формы, либо кнопки, позволяющие переходить к связанным записям. Если же вам действительно и непременно нужна более сложная кнопочная форма, подумайте о разработке собственной. В этом случае вы сможете разделить все кнопки переходов на отдельные секции, нарисовать границы вокруг логически связанных кнопок, добавить надписи с пояснительным текстом и т. д.
Врезультате она, возможно, будет выглядеть гораздо лучше.
1.Если вы решили использовать несколько страниц в кнопочной форме, щелкните мышью кнопку Создать для добавления страницы, введите имя страницы и щелкните мышью кнопку ОК. Далее щелкните мышью кнопку Изменить для вставки команд и в завершение кнопку Закрыть.
Следуйте инструкциям, приведенным в пунктах 3—5 для вставки команд на данную страницу.
2.Когда создание кнопочной формы завершено, щелкните мышью кнопку Закрыть в окне Диспетчера кнопочных форм.
Для того чтобы испытать вашу кнопочную форму, найдите новую, созданную программой Access кнопочную форму и дважды щелкните ее кнопкой мыши.
Кнопочные формы не всегда корректно отображаются в режиме окон со вкладками, используемом программой Access. Главным образом у них появляется дополнительное пустое пространство внизу и справа. Для решения этой проблемы можно отобразить кнопочную форму как всплывающее окно, которое выводится поверх всех остальных окон. В этом случае размер окна отображается корректно. Для внесения этого изменения откройте форму в Конструкторе. Настройте форму с помощью Окна свойств, выбрав на вкладке Другие свойство Всплывающее окно и задав в нем значение Да.
479
За кадром.
Меню кнопочных форм сохраняются в БД
Если вы относитесь к типу людей, которым нравится беспокоиться о потенциальных проблемах, которые могут возникнуть на горизонте, то, возможно, уже заметили в мире кнопочных форм кое-что подозрительное. Легко представить себе сценарий, в котором вы создали замечательную кнопочную форму, а затем решили перепроектировать свою БД с помощью нескольких новых форм. В этой ситуации не хотелось бы иметь новые формы и старую кнопочную форму, в которой нет кнопок, предназначенных для отображения новых форм.
К счастью, разработчики корпорации Microsoft, создавшие кнопочные формы, подумали о проблеме именно такого рода и решили заставить программу Access сохранять меню кнопочной формы в БД.
Вот как действует это средство. Когда создается кнопочная форма, Access добавляет в БД таблицу, названную Switchboard Items (Элементы кнопочной формы). Когда вы вводите пункты меню в кнопочную форму, программа Access вводит их в упомянутую таблицу. Для того чтобы такая система функционировала, программа должна выполнить несколько дополнительных действий. А именно, когда открывается кнопочная форма, Access выполняет макрос (см. главу 15), который извлекает список элементов кнопочной формы из таблицы и использует его для формирования набора кнопок, отображаемых на кнопочной форме.
Воспользоваться этим можно следующим образом. Если после создания кнопочной формы вы решили, что хотите ее изменить, это нетрудно. Просто откройте Диспетчер кнопочных форм (выберите на ленте Работа с базами данных → Работа с базами данных → Диспетчер кнопочных форм) и затем отредактируйте элементы формы. Программа Access обновит записи в таблице Switchboard Items. Саму кнопочную форму изменять не нужно. Таким образом, если вы настроили кнопочную форму (добавив свое содержимое или собственные кнопки), она нисколько не пострадает.
Обычно нет нужды открывать непосредственно таблицу Switchboard Items, следовательно, почему бы не скрыть ее в области переходов и избежать осложняющих ситуаций? В разд. "Область переходов "главы 1 написано, как это сделать.
Назначение стартовой формы
Взгляд на кнопочную форму как на интерфейс для вашей БД — хорошая отправная точка для пользователей, собирающихся работать с этой БД. Вы можете заставить программу Access открывать любую форму (например, кнопочную) автоматически, когда кто-нибудь в первый раз открывает БД. Вот как это делается.
1.Выберите последовательность Office → Параметры Access (Office → Access Options). На экране откроется окно Параметры Access.
2.В списке слева щелкните кнопкой мыши категорию Текущая база данных (Current Database).
На экране появятся параметры текущей БД.
3.Под заголовком Параметры приложений (Application Options) найдите поле Форма просмотра (Display Form). Выберите в списке кнопочную форму.
480
