Вход/Регистрация
Access 2002. Самоучитель
вернуться

Дубнов Павел Юрьевич

Шрифт:

Сопоставляя возможности макросов и языка SQL, отметим, что макросы могут использоваться для ситуаций, привязанных к событиям [13] , возникающим независимо от пользователя, для выполнения разветвляющихся операций (например, в условных логических выражениях). Макросы удобны для простых ответов на события, но имеют свои ограничения и не всегда помогают пользователю справляться с разнообразным сложностями, возникающими в реальной практике, особенно если речь идет об Access. Например, нельзя использовать макрос для того, чтобы задать обработку события или выполнить цикл действий по записи транзакций. Макрос не возвращает значение, поэтому не может применяться для извлечения введенной пользователем информации, рассчитанного значения или результата сравнения.

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

Теоретически нет препятствий к тому, чтобы включить в макрос также и процедуру VBA. Однако на деле все обстоит скорее наоборот: макросы используются как составная часть этих программ, тем более что любой макрос легко конвертировать или включить в процедуру VBA.

Процедуры VBA

Как уже отмечалось, макросы обычно представляют собой только линейную последовательность действий. Но на практике этого недостаточно – требуется весь арсенал средств программирования: ветвления и циклы, вызов вспомогательных процедур и передача параметров, организация диалога с пользователем, проверка и изменение состояния различных элементов документа и т. д.

По сравнению с SQL и макросами язык VBA является более современным, развитым и сложным, поэтому может использоваться для выполнения любых действий в ходе работы приложения. Данный язык включает в себя объекты, семейства, события, методы, процедуры, операторы и свойства. Программа VBA – это процедура, которая выполняет определенную операцию или рассчитывает и возвращает значение. Кроме того, очень важно, что VBA-язык программирования, управляемый событиями. Иначе говоря, с помощью программы VBA можно установить необходимую реакцию объекта Access на определенное событие. Итак, язык VBA позволяет сделать все, что выполняют макросы, и даже существенно больше. В принципе с помощью VBA можно создавать и запросы. Однако специализированный язык, каким является SQL, приспособлен для этого значительно лучше. (Ниже будет показано, что использование языка SQL в самом деле заметно упрощает построение запросов.)

Существуют два вида процедур VBA: подпрограммы (subprocedures) и функции.

Подпрограммы выполняют одну или больше операций, однако не возвращают значение. Функции не только выполняют операции, но и возвращают значение. В справочной системе Access вы найдете множество примеров процедур событий. Эти процедуры можно скопировать и связать со свойствами события элемента управления. Затем вы можете изменить код и имена переменных, чтобы они соответствовали вашему приложению. Для создания собственных процедур используйте построитель программ (см. главу 12).

Язык XML

Для хранения данных используются многочисленные форматы, и часто это связано с применением разных форматов в различных приложениях. Это делает обмен данными между приложениями исключительно сложной задачей, требующей значительных временных затрат. В Microsoft Access 2002 пользователю предоставляется удобный способ сбора, адаптации и совместного использования данных в неограниченном числе приложений и форматов – XML (Extensible Markup Language – расширяемый язык разметки).

Передача информации через Internet и между различными программами всегда была трудной задачей из-за разницы в форматах и структурах данных разных разработчиков программного обеспечения. Язык HTML, хорошо подходящий для отображения текста и изображений в Web-обозревателях, ограничен в своих возможностях определения данных и структуры данных. HTML описывает внешний вид Web-страницы, тогда как XML определяет данные и описывает их структурирование. Язык XML определяет формат обмена данными, обеспечивающий обмен данными между разными компьютерами и приложениями, и позволяет разделить процессы определения и презентации данных. В результате данные XML могут представляться по-разному с помощью различных файлов презентации.

Протокол XML представляет набор правил и соглашений для форматов и структур данных. Он обеспечивает способ создания файлов, которые легко разрабатываются и читаются разными компьютерами и приложениями.

Можно рассматривать три наиболее общих сценария использования языка XML с программой Microsoft Access: импорт данных из различных источников, экспорт данных Microsoft Access в файл XML и преобразование данных XML в другой формат.

Импорт данных из других источников

Обычно для выполнения задания необходимо собрать данные, преобразовать их в доступный для обработки формат и открыть доступ к ним для других сотрудников. Сложность заключается в том, что большая часть данных обычно разбросана по множеству внутренних и внешних источников данных и хранится в разных форматах. Данные могут поступать чаще всего из следующих источников:

• внутренних серверов Microsoft SQL;

• электронных таблиц Microsoft Excel;

• других внешних источников данных;

• текстовых файлов;

• приложений с собственными форматами данных.

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

Предположим, требуется периодически объединять данные из разных источников для создания отчета, просматриваемого руководителями и сотрудниками.

  • Читать дальше
  • 1
  • ...
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: