Работа из интегрированной среды с различными СУБД
Microsoft Visual SourceSafe – это система управления версиями файлов всех типов, включая текстовые, графические, двоичные, звуковые и видеофайлы. С помощью Visual SourceSafe можно отслеживать изменения, сделанные в файле, начиная с момента его создания, а также объединять изменения из двух и более разных версий файла в один файл.
В редакцию Microsoft Office 97 для разработчика входит Microsoft Access Source Code Control, интегрирующий функции Visual SourceSafe в среду разработки Microsoft Access.
Рабочая группа, разрабатывающая приложения в Microsoft Access, с помощью Visual SourceSafe сможет избежать конфликтных ситуаций и потери данных. Visual SourceSafe:
• предотвращает случайное удаление информации или файлов;
• организует файлы в иерархическую структуру проектов и вложенных проектов;
• сравнивает версии при записи на сервер и чтении с него, снабжая их примечаниями для описания того, что было сделано;
• позволяет нескольким сотрудникам совместно использовать файлы в разных проектах, ОС и сетях с общими ресурсами;
• хранит файлы любого типа, текстовые или двоичные, включая документы Microsoft Office, книги Microsoft Excel и файлы Visual Basic, Visual C++, Visual FoxPro и Microsoft Access;
• помогает в разработке приложений для разных операционных систем;
• работает с модульно-ориентированным и объектно-ориентированным кодом;
• поддерживает одновременную работу нескольких пользователей с одной версией;
• отслеживает изменения в файле, совершенные пользователями;
• сохраняет старые версии файлов для устранения ошибок и для других целей;
• отображает различия между двумя версиями файла;
• отслеживает дату и время изменения всех файлов в базе данных;
• создает отчеты по частоте использования файла или проекта;
• создает журналы, отображающие все изменения проекта;
• контролирует доступ к файлам – Visual SourceSafe поддерживает защиту проектов, так что каждый новый пользователь имеет доступ либо на чтение и запись, либо только на чтение.
Рассмотрим систему Lotus Notes как еще один пример СУБД. Lotus Notes обеспечивает разработку и выполнение приложений, которые создают, организуют и совместно используют информацию, представленную в виде документов.
Приложения Lotus Notes хранятся в базах данных на серверах локальных компьютерных сетей. Каждая база данных содержит документы, формы (которые определяют внешний вид документов, включающих разнородную информацию: текст, видео-, аудиоинформацию) и виды (которые отражают различные подмножества множества всех документов и упорядочивают документы по категориям, а также определяют, какая информация будет отображаться по каждому документу).
Наличие средств работы с формами, видами и специального языка описания формул, сходного с языком электронных таблиц, позволяет переложить большую часть работы по созданию приложений на специалистов, которые не обладают квалификацией 3GL- или 4GL-программистов. Управление базами данных централизовано незначительно.
На каждом сервере Lotus Notes (т.е. для каждой инсталляции Lotus Notes) базы данных определены и поддерживаются независимо друг от друга. Тем не менее, такие базы данных связаны между собой. Для отслеживания связей и управления базами данных используются сервисы ПО промежуточного слоя.
На этом уровне также определены и используются функции для управления представлением для различных платформ и функции, обеспечивающие двоичную совместимость приложений, баз данных и сетевых сообщений. Строго говоря, эти функции не являются функциями платформы. Дело в том, в архитектуре Lotus Notes имеет место сетевой компонент, который изолирует более высокие уровни от сетевых архитектур. Кроме того, он скрывает детали транспортного уровня передачи сообщений. В архитектуре Lotus Notes также имеет место не зависящий от платформы интерфейс с пользователем, который скрывает от более высоких уровней детали и различия в оконных системах.
Многие специфичные для интегрирующей среды (ИС) независимые от платформы сервисы ПО промежуточного слоя расположены выше уровня сервисов платформы. Доступ к ним осуществляется через С-функции, которые определяют Lotus Notes API (application programming interface – интерфейс программирования приложений – набор функций, позволяющих прикладной программе запрашивать выполнение операционной системой низкоуровневых сервисных процедур). Определены следующие сервисы:
· сервис управления объектами – обеспечивает обработку элементарных типов данных и хранение недетализированной информации;
· сервис управления документами – использует сервис управления объектами, именует документы, организует их и поддерживает язык формул (язык сценариев для создания приложений);
· сервис защиты – поддерживает шифрование, цифровые подписи, произвольное управление доступом;
· сервис индексации – обеспечивает индексированный доступ к содержанию документов (за счет использования средств контекстного поиска компании Verity Corp.) и к дескрипторам документов;
· сервис сообщений – поддерживает адресацию (в том числе адресацию к группам имен и иерархически организованным именам) и передачу почтовых сообщений;
· сервис событий – осуществляет оповещение посредством почтовых сообщений или за счет использования механизма регистрации;
· сервис регистрации – выполняет функции аудита событий, происходящих в базах данных;
· сервис именования – поддерживает взаимодействие клиента и сервера; интегрирован с транспортным сервисом и сервисом защиты;
· функции управления системой, в том числе функции управления конфигурацией приложений, установки сервера Lotus Notes и администрирования (обеспечивает управление системой с удаленной консоли).
В Lotus Notes некоторые традиционные функции ПО промежуточного слоя выполняются независимыми процессами сервера, которые можно было бы классифицировать и как инструменты, и как сервисы, например, следующие.
Replicator (репликатор) – данный компонент определяет и поддерживает связь между двумя серверами и обеспечивает синхронизацию общих для этих серверов баз данных. Для каждой такой связи Репликатор копирует новые и обновленные вхождения каждой базы данных в соответствующие базы данных другого сервера. В случае конфликта (например, независимого обновления одного и того же объекта на обоих серверах) Репликатор разрешает конфликт, выбрав вхождение-“победитель” и пометив флагом вероятного “проигравшего”.
Catalog– данный компонент поддерживает глобальный каталог всех баз данных сети Notes. Он представляет собой процесс, который периодически обновляет специальную базу данных каталогов, используя информацию о локальных базах данных.
Router– данный компонент передает почтовые сообщения между серверами.
Design. В Lotus Notes базы данных содержат не только данные и их описания, но и определение всех компонентов приложений. Notes поставляется вместе с набором шаблонов, которые представляют собой готовые базы данных. Пользователи применяют шаблоны в качестве первого приближения при создании собственных баз данных. Процесс Design дублирует информацию о приложениях в шаблонах или базах данных на серверах, что очень напоминает работу Репликатора.
Chronos– это фоновый процесс, который выполняет формулы (на языке формул).
Event, Report– представляют собой процессы (программы) администрирования.
Server– выполняет планирование и запуск указанных выше процессов. Существуют и другие встроенные сервисы; пользователи могут разработать свои собственные системные сервисы и зарегистрировать их при помощи сервисов ПО промежуточного слоя.
В Lotus Notes поддерживается множество других инструментов, в том числе инструмент для редактирования форм (Editor), средство создания видов и навигации по видам (View), инструмент для организации доступа к приложениям (Desk). Каждый инструмент также включает частный сервис для конкретных функций, например, проверки орфографии, отправки сообщений и преобразования форматов документов. Lotus Notes – типичная интегрирующая среда нового типа, которая использует специфичные для ИС сервисы ПО промежуточного слоя и уникальный API интегрирующей среды. Если и другие ИС подобного типа завоюют популярность, то можно ожидать появления общих для них сервисов ПО промежуточного слоя и стандартного API.
Генерация отчетов
Отчет – эффективный способ представления данных БД Microsoft Access в формате, пригодном для печати. Пользователь полностью контролирует размеры и внешний вид всего, что есть в отчете, и может отобразить информацию как хочет. Отчет строится на основе данных, полученных из таблиц, запросов или с помощью SQL-инструкций, и информации, заданной в самой конструкции отчета. В отчетах применяются элементы управления и шаблоны.
Кроме объектов БД, обсуждавшихся выше, отчеты в базах данных Microsoft Access содержат дополнительную группу объектов – элементы управления. Они обеспечивают просмотр данных, выполнение действий и оформления форм и отчетов. Например, можно использовать текстовое окно в форме или отчете для вывода данных, командную кнопку – для открытия другой формы или элемент управления типа “линия” или “прямоугольник”, чтобы сгруппировать другие элементы управления (это облегчит их восприятие).
В состав Microsoft Access входят встроенные элементы управления и управляющие элементы ActiveX; все они доступны из панели инструментов в режимеКонструктор (Design view). Microsoft Access содержит следующие типы встроенных элементов управления: поле, надпись, группа, переключатель, флажок, выключатель, поле со списком, список, кнопка, рисунок, присоединенная рамка объекта, свободная рамка объекта, набор вкладок, подчиненная форма/отчет, разрыв страницы, линия и прямоугольник и дополнительные элементы ActiveX.
Элементы управления могут быть связанными, свободными или вычисляемыми. Связанный элемент управления присоединен к полю базовой таблицы или запроса и используется для отображения, ввода или обновления значений из полей базы данных. Для вычисляемого элемента управления в качестве источника данных применяется выражение. В выражении могут участвовать данные из поля базовой таблицы или запроса для формы или отчета, а также данные другого элемента управления формы или отчета. Для свободного элемента управления источника данных не существует. Свободные элементы управления применяются для вывода на экран информации, линий, прямоугольников и рисунков.
Если отчет создается с помощью мастера, стандартные характеристики отчета (по умолчанию) задаются шаблоном. Шаблон определяет, какие разделы будут содержаться в создаваемом документе, а также размеры этих разделов. Он также определяет стандартные настройки свойств отчета, их разделов и содержащихся в них элементов управления.
Для форм или отчетов (по умолчанию) используются шаблоны с названием “Обычный”, но пользователь может выбрать в качестве шаблона имя любой существующей формы или отчета. Выбор шаблона осуществляется на вкладкеФормы/Отчеты (Forms/Reports) диалогового окнаПараметры (Options) менюСервис (Tools). Информация о нестандартном шаблоне заносится в разделHKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Access\Setting реестра Windows и применяется ко всем новым отчетам, создаваемым данным пользователем. Шаблоны (точнее, отчеты, предназначенные для применения в качестве шаблонов) можно импортировать в новую и экспортировать в существующие БД.
Шаблон отчета определяет:
• включать ли в отчет верхний и нижний колонтитулы;
• включать ли верхний и нижний колонтитулы на странице;
• размеры (высоту и ширину) разделов;
• какие свойства (по умолчанию) подпадают под действие элементов управления. Однако шаблоны не создают элементов управления в новых отчетах.
Чтобы создать и определить шаблон отчета:
1. Необходимо создать форму или отчет с форматированием иэлементами управления, которые желательно использовать как основу шаблона.
2. В менюФайл (File) выбрать командуСохранить (Save).
3. В диалоговом окнеСохранить как (Save As) ввести имя отчета.
4. В менюСервис (Tools) выбрать пунктПараметры (Options), а затем вкладку Формы/Отчеты (Forins/Reports).
5. Чтобы задать шаблон отчета, нужно ввести имя отчета в полеШаблон отчета (Report Template).