ГБОУ СПО «Тверской химико-технологический колледж» Методические указания к практическим занятиям

advertisement
ГБОУ СПО «Тверской химико-технологический колледж»
Методические указания к практическим занятиям
по профессиональному модулю
ПМ.01 Эксплуатация и модификация информационных систем
для специальности 230401 Информационные системы (по отраслям)
Тверь
2013
ОДОБРЕНЫ
на заседании ЦК дисциплин
профессионального цикла
Протокол № _____
от «___»__________ 201__ г.
Принято
Методическим Советом
Протокол
№ ___ от «___»__________ 201__ г.
Председатель ЦК
__________ Н.А. Щеголева
Составлены в соответствии с учебным
планом и рабочей программой профессионального модуля ПМ.01 Эксплуатация и
модификация информационных систем
для подготовки по специальности 230401
Информационные системы (по отраслям)
Составитель: А.А. Пирогова
Преподаватель ЦК дисциплин профессионального цикла ГБОУ СПО «Тверской
химико-технологический колледж»
Содержание
1 Пояснительная записка ……………………………………………………………...
3
2 Инструкция по технике безопасности ……………………………………………...
6
3 Перечень практических работ ………………………………………………………
7
4 Методические указания к практическим занятиям ………………………………..
9
Список литературы …………………………………………………………………….
273
2
1 Пояснительная записка
Методические указания к практическим работам по профессиональному модулю
ПМ.01 Эксплуатация и модификация информационных систем предназначены для студентов по специальности 230401 Информационные системы (по отраслям).
Цель методических указаний: оказание помощи студентам в выполнении практических работ по ПМ.01 Эксплуатация и модификация информационных систем.
Настоящие методические указания содержат практические работы, которые
позволят студентам закрепить теорию по наиболее сложным разделам профессионального
модуля и направлены на формирование следующих компетенций:
ОК 1. Понимать сущность и социальную значимость своей будущей профессии,
проявлять к ней устойчивый интерес.
ОК 2. Организовывать собственную деятельность, выбирать типовые методы и
способы выполнения профессиональных задач, оценивать их эффективность и качество.
ОК 3. Принимать решения в стандартных и нестандартных ситуациях и нести за
них ответственность.
ОК 4. Осуществлять поиск и использование информации, необходимой для
эффективного выполнения профессиональных задач, профессионального и личностного
развития.
ОК
5.
Использовать
информационно-коммуникационные
технологии
в
профессиональной деятельности.
ОК 6. Работать в коллективе и команде, эффективно общаться с коллегами,
руководством, потребителями.
ОК 7. Брать на себя ответственность за работу членов команды (подчиненных),
результат выполнения заданий.
ОК 8. Самостоятельно определять задачи профессионального и личностного
развития,
заниматься
самообразованием,
осознанно
планировать
повышение
квалификации.
ОК 9. Ориентироваться в условиях частой смены технологий в профессиональной
деятельности.
ОК 10. Исполнять воинскую обязанность, в том числе с применением полученных
профессиональных знаний (для юношей).
3
ПК 1.1. Сбор данных для анализа использования и функционирования информационной системы, участие в составлении отчетной документации, участие в разработке проектной документации на модификацию информационной системы.
ПК 1.2. Взаимодействие со специалистами смежного профиля при разработке методов, средств и технологий применения объектов профессиональной деятельности.
ПК 1.3. Выполнение модификации отдельных модулей информационной системы в
соответствии с рабочим заданием, документирование произведенных изменений.
ПК 1.4. Участие в экспериментальном тестировании информационной системы на
этапе опытной эксплуатации, фиксирование выявленных ошибок кодирования в разрабатываемых модулях информационной системы.
ПК 1.5. Разработка фрагментов документации по эксплуатации информационной
системы.
ПК 1.6. Участие в оценке качества и экономической эффективности информационной системы.
ПК 1.7. Выполнение инсталляции и настройки информационной системы в рамках
своей компетенции, документирование результатов работ.
ПК 1.8. Консультирование пользователей информационной системы и разработка
фрагментов методики обучения пользователей информационной системы.
ПК 1.9. Выполнение регламентов по обновлению, техническому сопровождению и
восстановлению данных информационной системы, работа с технической документацией.
ПК 1.10. Обеспечение организации доступа пользователей информационной системы в рамках своей компетенции.
В результате выполнения практических работ по профессиональному модулю
студенты должны уметь:
- осуществлять сопровождение информационной системы, настройку под конкретного пользователя, согласно технической документации;
- поддерживать документацию в актуальном состоянии;
- принимать решение о расширении функциональности информационной системы,
о прекращении эксплуатации информационной системы или ее реинжиниринге;
- идентифицировать технические проблемы, возникающие в процессе эксплуатации
системы;
- производить документирование на этапе сопровождения;
- осуществлять сохранение и восстановление базы данных информационной системы;
4
- составлять планы резервного копирования, определять интервал резервного копирования;
- организовывать разноуровневый доступ пользователей информационной системы
в рамках своей компетенции;
- манипулировать данными с использованием языка запросов баз данных, определять ограничения целостности данных;
- выделять жизненные циклы проектирования компьютерных систем;
- использовать методы и критерии оценивания предметной области и методы определения стратегии развития бизнес-процессов организации;
- строить архитектурную схему организации;
- проводить анализ предметной области;
- осуществлять выбор модели построения информационной системы и программных средств;
- оформлять программную и техническую документацию, с использованием стандартов оформления программной документации;
- применять требования нормативных документов к основным видам продукции
(услуг) и процессов;
- применять документацию систем качества;
- применять основные правила и документы системы сертификации Российской
Федерации.
Практические занятия по профессиональному модулю проводятся в лаборатории
информационных технологий, оборудованной:
- рабочими местами обучающихся и преподавателя (персональные компьютеры с
доступом к сети Интернет);
- мультимедийным проектором с экраном;
- программным обеспечением профессионального назначения.
5
2 Инструкция по технике безопасности
СТРОГО ЗАПРЕЩАЕТСЯ:

Трогать разъёмы соединительных кабелей.

Прислоняться к экрану и тыльной стороне монитора.

Включать и выключать компьютер без разрешения преподавателя.

Прислоняться к проводам и устройствам заземления.

При обнаружении запаха гари немедленно остановить работу, выключить
компьютер и сообщить преподавателю.
ПЕРЕД НАЧАЛОМ РАБОТЫ:

Убедитесь в отсутствии видимых повреждений рабочего места.

Запрещается работать во влажной одежде, в верхней одежде, с влажными
руками.

На рабочем месте размещаются тетрадь и учебные пособия так, чтобы они
не мешали работе.
ВО ВРЕМЯ РАБОТЫ:
 При работе находитесь на расстоянии 60-80 см от компьютера.
 Строго выполняйте вышеуказанные правила.
 Следите за исправностью аппаратуры.
 Немедленно прекратите работу при появлении звука и немедленно сообщите
преподавателю.
 Пользуйтесь клавиатурой с чистыми руками.
 Никогда не пытайтесь сами устранить неисправность при работе с аппаратурой.
 Не вставайте со своих мест, когда входит посетитель.
ПО ОКОНЧАНИИ РАБОТЫ:

Выключите компьютер, наведите порядок на рабочем месте.

Сдайте рабочее место преподавателю, сообщите о всех неполадках.
6
3 Перечень практических работ
МДК.01.01. Эксплуатация информационной системы.
Раздел 4. Практикум по администрированию баз данных.
Тема 4.1. Выполнение операций с базой данных.
Практическая работа № 1: Требования к современной СУБД. Функции администратора
СУБД. СУБД Microsoft Access. Функции администратора СУБД MS Access.
Практическая работа № 2: Архивирование, сжатие и восстановление базы данных. Защита
информации в БД различными способами.
Тема 4.2. Изучение структуры базы данных.
Практическая работа № 3: Сбор сведений об объектах БД. Получение и изучение отчета
Архивариуса.
Практическая работа № 4: Изучение таблицы в режиме Конструктора. Просмотр связей
между таблицами. Изучение взаимодействия объектов.
Практическая работа № 5: Оптимизация базы данных.
Тема 4.3. Выполнение операций обмена данными.
Практическая работа № 6: Обмен данными между приложениями Access и Word.
Практическая работа № 7: Обмен данными между приложениями Access и Excel.
Практическая работа № 8: Обмен данными между БД Access.
Тема 4.4. Сопровождение баз данных.
Практическая работа № 9: Создание и подключение справочников.
Практическая работа № 10: Корректировка текущих и создание новых пользовательских
запросов.
Практическая работа № 11: Формирование отчетов.
Практическая работа № 12: Создание пользовательского интерфейса.
МДК.01.02. Методы и средства проектирования информационных систем.
Раздел 1. Основы технологии проектирования ИС.
Тема 1.1. Основные понятия проектирования.
Практическая работа № 1: Офисные АИС. Экспертные АИС.
Практическая работа № 2: Сравнительная характеристика моделей ЖЦ ИС.
Раздел 2. Анализ и описание предметной области ИС.
Тема 2.2. Описание предметной области.
Практическая работа № 3: Международный стандарт ISO/IEC 12207.
Практическая работа № 4: Унифицированный язык моделирования UML.
Практическая работа № 5: Структура UML: метамодель и диаграммы.
Практическая работа № 6: Разработка UML-диаграмм.
Практическая работа № 7: Структурное проектирование ИС.
Тема 2.3. Системы автоматизированного проектирования ИС.
Практическая работа № 8: CASE-средство Silverrun.
Практическая работа № 9: CASE-средство JAM.
Практическая работа № 10: CASE-средство Vantage Team Builder.
Практическая работа № 11: CASE-средство Designer2000.
Практическая работа № 12: Локальные CASE-средства.
Практическая работа № 13: Объектно-ориентированные CASE-средства.
Практическая работа № 14: Средства конфигурационного управления.
Практическая работа № 15: Средства документирования и тестирования.
Практическая работа № 16: Средства визуального программирования.
Практическая работа № 17: Технология COM.
Практическая работа № 18: Технология MICROSOFT NET
7
Практическая работа № 19: Коллективная разработка ИС.
Раздел 3. Разработка программно-информационного ядра ИС на основе СУБД.
Тема 3.2. Проектирование баз данных.
Практическая работа № 20: Концептуальные модели данных.
Практическая работа № 21: Базовые понятия реляционных баз данных.
Практическая работа № 22: Проектирование реляционных баз данных методом нормализации.
Практическая работа № 23: Модель «сущность-связь». ER-диаграммы.
Практическая работа № 24: Виды нотаций.
Практическая работа № 25: Средства автоматизированного проектирования структур баз
данных.
Практическая работа № 26: Язык структурных запросов SQL.
Практическая работа № 27: Объекты базы данных (таблицы и представления).
Практическая работа № 28: Объекты базы данных (хранимые процедуры и триггеры).
Практическая работа № 29: Объекты базы данных (функции пользователя, индексы, пользовательские типы данных).
Практическая работа № 30: Объекты базы данных (ограничения целостности, умолчания,
правила).
Тема 3.3. Практикум по проектированию ИС.
Практическая работа № 31: Анализ и описание предметной области.
Практическая работа № 32: Разработка модели «сущность-связь». Построение ERдиаграммы.
Практическая работа № 33: Создание объектов базы данных.
Практическая работа № 34: Манипулирование данными в SQL.
Практическая работа № 35: Стандартные запросы в SQL.
Раздел 4. Проектирование автоматизированных систем управления.
Тема 4.2. Практикум по проектированию АСУП.
Практическая работа № 36: Изучение ассортимента продукции и технологического процесса.
Практическая работа № 37: Изучение процесса снабжения предприятия.
Практическая работа № 38: Изучение организационной структуры предприятия и кадровой политики.
Практическая работа № 39: Изучение учетной политики предприятия.
Практическая работа № 40: Изучение финансовых результатов работы предприятия.
Практическая работа № 41: Разработка технического проекта АСУП.
Практическая работа № 42: Выбор технического средства проектирования.
Практическая работа № 43: Разработка плана производства.
Практическая работа № 44: Разработка технологических карт.
Практическая работа № 45: Разработка плана закупок.
Практическая работа № 46: Разработка закупочных актов.
Практическая работа № 47: Расчет численности персонала, составление штатного расписания.
Практическая работа № 48: Составление отчета по продажам и ведомости затрат.
Практическая работа № 49: Составление отчета о прибылях и убытках.
Практическая работа № 50: Решение задач по регулированию деятельности предприятия.
8
4 Методические указания к практическим занятиям
МДК.01.01. Эксплуатация информационной системы.
ПРАКТИЧЕСКАЯ РАБОТА № 1:
ТРЕБОВАНИЯ К СОВРЕМЕННОЙ СУБД. ФУНКЦИИ АДМИНИСТРАТОРА
СУБД.
СУБД MS ACCESS. ФУНКЦИИ АДМИНИСТРАТОРА СУБД MS ACCESS.
9
10
11
СУБД MS Access. Функции администратора СУБД MS Access.
Характеристика СУБД MS Access.
Microsoft Access является настольной СУБД (система управления базами данных)
реляционного типа. Достоинством Access является то, что она имеет очень простой графический интерфейс, который позволяет не только создавать собственную базу данных,
но и разрабатывать приложения, используя встроенные средства.
В отличие от других настольных СУБД, Access хранит все данные в одном файле,
12
хотя и распределяет их по разным таблицам, как и положено реляционной СУБД. К этим
данным относится не только информация в таблицах, но и другие объекты базы данных.
Для выполнения почти всех основных операций Access предлагает большое количество Мастеров (Wizards), которые делают основную работу за пользователя при работе
с данными и разработке приложений, помогают избежать рутинных действий и облегчают
работу неискушенному в программировании пользователю.
Особенности MS Access, отличающиеся от представления об «идеальной» реляционной СУБД.
Создание многопользовательской БД Access и получение одновременного доступа
нескольких пользователей к общей базе данных возможно в локальной одноранговой сети
или в сети с файловым сервером. Сеть обеспечивает аппаратную и программную поддержку обмена данными между компьютерами. Access следит за разграничением доступа
разных пользователей к БД и обеспечивает защиту данных. При одновременной работе.
Так как Access не является клиент серверной СУБД, возможности его по обеспечению
многопользовательской работы несколько ограничены. Обычно для доступа к данным по
сети с нескольких рабочих станций, файл БД Access (с расширением *.mdb) выкладывается на файловый сервер. При этом обработка данных ведется в основном на клиенте – там,
где запущено приложение, в силу принципов организации файловых СУБД. Этот фактор
ограничивает использование Access для обеспечения работы множества пользователей
(более 15-20) и при большом количестве данных в таблицах, так как многократно возрастает нагрузка не сеть.
В плане поддержки целостности данных Access отвечает только моделям БД небольшой и средней сложности. В нем отсутствуют такие средства как триггеры и хранимые процедуры, что заставляет разработчиков возлагать поддержание бизнес логики БД
на клиентскую программу.
В отношении защиты информации и разграничения доступа Access не имеет
надежных стандартных средств. В стандартные способы защиты входит защита с использованием пароля БД и защита с использованием пароля пользователя. Снятие такой защиты не представляет сложности для специалиста.
Однако при известных недостатках MS Access обладает большим количеством
преимуществ по сравнению с системами подобного класса.
В первую очередь можно отметить распространенность, которая обусловлена тем,
что Access является продуктом компании Microsoft, программное обеспечение и операционные системы которой использует большая часть пользователей персональных компьютеров. MS Access полностью совместим с операционной системой Windows, постоянно
обновляется производителем, поддерживает множество языков.
В целом MS Access предоставляет большое количество возможностей за сравнительно небольшую стоимость. Также необходимо отметить ориентированность на пользователя с разной профессиональной подготовкой, что выражается в наличии большого количества вспомогательных средств (Мастеров, как уже отмечалось), развитую систему
справки и понятный интерфейс. Эти средства облегчают проектирование, создание БД и
выборку данных из нее.
MS Access предоставляет в распоряжение непрограммирующему пользователю
разнообразные диалоговые средства, которые позволяют ему создавать приложения не
прибегая к разработке запросов на языке SQL или к программированию макросов или модулей на языке VBA.
Access обладает широкими возможностями по импорту/экспорту данных в различные форматы, от таблиц Excel и текстовых файлов, до практически любой серверной
СУБД через механизм ODBC.
Еще одно немаловажное преимущество MS Access заключается в развитых встроенных средствах разработки приложений. Большинство приложений, распространяемых
среди пользователей, содержит тот или иной объем кода VBA (Visual Basic for
13
Applications). Поскольку VBA является единственным средством для выполнения многих
стандартных задач в Access (работа с переменными, построение команд SQL во время работы программы, обработка ошибок, использование Windows API и т.д.), для создания более-менее сложных приложений необходимо его знание и знание объектной модели MS
Access.
Одним из средств программирования в Access является язык макрокоманд. Программы, созданные на этом языке, называются макросами и позволяют легко связывать
отдельные действия, реализуемые с помощью форм, запросов, отчетов. Макросы управляются событиями, которые вызываются действиями пользователями при диалоговой работе с данными через формы или системными событиями.
Функциональные возможности MS Access.
Рассмотрим подробнее основные функции MS Access, чтобы иметь более ясное
представление о его возможностях.
В Access база данных обозначает файл, содержащий набор информации. База данных в Access может содержать следующие типы объектов (см. рис. 1): таблица, запрос,
форма, отчёт, страница, макрос, модуль.
Рисунок 1. Окно объектов базы данных
Access может работать одновременно только с одной базой данных. Но одна БД
Access может включать множество таблиц, форм, запросов, отчётов, макросов и модулей,
которые хранятся в одном файле с расширением mdb.
Таблица – это объект, соответствующий понятию «таблица» в теории реляционных
баз данных. Для каждой таблицы в Access можно определить первичный ключ и один или
несколько индексов с целью увеличения скорости доступа к данным.
Access позволяет создавать структуру таблицы в трех режимах – в режиме конструктора, с помощью мастера и путем ввода данных. Разница предполагает использование этих средств пользователями с разным уровнем подготовки, разными целями и перспективами использования данных.
Естественно имеется возможность просматривать, редактировать, удалять и добавлять записи, осуществлять поиск, замену, сортировку данных, изменять вид таблицы.
Связи между таблицами определяются специальным средством, которое называется «Схема данных» (см. рис. 2).
14
Рисунок 2. Схема данных
Это удобный графический инструмент, позволяющий создавать связи между определенными полями таблиц, задавать различные типы отношений, устанавливать ограничения ссылочной целостности. При этом изменения сразу применяются в базе данных
(естественно, если содержащиеся данные удовлетворяют всем условиям) Полученную
диаграмму таблиц и связей можно распечатать, что, несомненно, удобно для разработчика.
Запрос – объект, содержащий текст SQL запроса, имеющий уникальное имя в
определенной базе данных. Создать запрос можно с помощью мастера и в режиме конструктора. В первом случае пользователю в интерактивном режиме предлагается выбрать
имя таблицы и поля для выборки. Во втором случае можно выбрать несколько таблиц или
запросов, связать их графическим способом и определить поля выборки. Также можно задать дополнительные условия для каждого поля и параметры сортировки (см. рис. 3).
Рисунок 3. Конструктор запроса
Есть еще один способ создания запроса, который встроен в конструктор, – это
написание запроса вручную на языке SQL. Однако текстовый редактор, предназначенный
для этого имеет явно скудные возможности в плане удобства и наглядности оформления
кода. Видимо этот способ не позиционировался разработчиками как основной.
Форма – это специальный объект-контейнер для других интерфейсных компонен15
тов, таких как поля ввода и отображения данных, кнопки и др. На форме разработчик располагает компоненты для ввода, корректировки, просмотра и группировки данных, в зависимости от специфики приложения. Форму также можно создать двумя способами – в режиме конструктора и с помощью мастера. В первом случае разработчик располагает набором компонентов (при необходимости можно зарегистрировать свои ActiveX), которые
свободно размещает на форме и задает их параметры. В режиме мастера пользователь
просто выбирает таблицу, поля и стиль оформления, а форма генерируется автоматически.
Отчёт – объект, предназначенный для создания документа, который впоследствии
может быть распечатан либо включён в документ другого приложения. Этот документ содержит результаты выборки из базы данных в виде структурированной информации
(например в виде таблицы или списка). MS Access обладает богатыми возможностями по
оформлению и форматированию отчетов. Те же два режима создания есть и у отчета. В
режиме мастера у пользователя имеется возможность задать множество параметров, практически полностью определяющих желаемый внешний вид отчета. Для создания нестандартных отчетов лучше пользоваться конструктором.
Страницы – средство публикации данных в локальной сети или Internet. Создаваемая страница проектируется подобно форме (с некоторыми отличиями в используемых
компонентах), при работе с ней можно не только просматривать, но и изменять данные в
базе. После сохранения страницы как объекта в БД ее можно экспортировать в виде файла
в формате HTML и использовать для доступа к данным через интернет-браузер.
Макрос – это объект, представляющий собой последовательность макрокоманд для
автоматизации наиболее часто выполняемых действий при работе с базой. Макрокоманды
выбираются из имеющего списка, а параметры задаются разработчиком. Выполнить макрос можно по нажатию на кнопку и программным методом в коде.
Модуль – контейнер программного кода на VBA. Для их редактирования и просмотра используется оболочка Редактора Visual Basic. Весь программный код приложения
содержится в наборе модулей. Здесь он имеет то же смысловое значение, как и в любом
языке программирования.
Это полный список объектов, которые можно хранить в базе данных MS Access,
который, впрочем, похож и в других настольных СУБД подобного класса, например
Paradox.
Какие возможности предоставляет Access в функциональном плане.
1. Ввод данных. Ввод данных может осуществляться следующими способами:

вручную прямо в таблицу (сюда же относится вставка содержимого буфера
обмена);

вручную в поля формы;

прямой импорт данных из других источников (базы Access, текстовые файлы, формат DBF, электронные таблицы, источники данных ODBC);

программным методом, который может сочетать в себе любые средства, которые возможно реализовать на VBA.
Последний способ обладает наибольшей гибкостью и представляет практически
неограниченные возможности, однако он самый сложный в реализации и требует определенного уровня знаний программирования.
2. Изменение данных. Редактирование возможно следующими способами:

вручную прямо в таблице;

в полях форм;

в окне браузера, в котором загружена web-страница из БД;

программным методом.
3. Вывод данных. Здесь Access предоставляет такие возможности:

вывод на экран монитора в табличном виде, полях форм или отчетов;

экспорт в другие форматы данных (те же, что при импорте);
16

вывод на печать, в основном в виде отчетов;

вывод данных в интернет-браузер с помощью объекта Страница в пределах
определенной сети;

программный экспорт и вывод информации.
4. Взаимодействие с другими источниками и потребителями информации. В этом
плане Access может выступать как сервер или клиент автоматизации. Особенно прозрачно
настраиваются связи с другими продуктами пакета Microsoft Office..
5. Использование базы данных MS Access другими приложениями. Такой вариант
использует файл MDB как хранилище данных. Программа, которая обращается к данным,
может быть написана на любом языке высокого уровня.
6. Средства создания приложений. Создание приложений на Access во многом подобно всем остальным средствам автоматизации Microsoft Office. Здесь используется интерпретируемый язык Visual Basic for Applications, что приводит, как и при использовании
любого интерпретируемого языка, к определенному увеличению затрат процессорного
времени и уменьшению скорости работы программ и обработки данных.
7. Особенности управления данными. При работе с Базами Данных в многопользовательском режиме возникают ситуации, когда необходимо ограничить число обращающихся пользователей к данным. Это делается для того, чтобы предотвратить одновременное обновление одной и той же записи, при глобальном обновлении данных или при техническом обслуживания самой Базы Данных.
Ядро БД Access обеспечивает три уровня блокировок:

Блокировка базы данных. На этом уровне блокировки к БД может обращаться только один пользователь. Такой уровень блокировки применяется для глобального изменения или обновления данных или при техническом обслуживании Базы Данных сжатии;

Блокировка таблицы. На этом уровне блокировки к таблице может обращаться только один пользователь. Такой уровень блокировки применяется в тех случаях,
когда необходимо обработать сразу несколько записей таблицы.

Блокировка страницы. На этом уровне к заблокированной странице может
обращаться только один пользователь. Это самый нижний уровень блокировки. Процессор Microsoft Jet автоматически устанавливает блокировку страницы и не может контролироваться вашей программой. Страница данных может содержать несколько записей,
размер его равен 26 кб. Блокировка страницы означает блокировку всех записей, находящейся на этой странице. Если длина записи – 512 байтов, то будет заблокированной 4 записи, а если 50 байтов то 40 записей. Точное число записей нельзя заранее ни определить,
ни задать, т.к. таблица может содержать удаленные записи (которые удаляются только во
время уплотнения).

Блокировка на уровне таблицы имеет два режима – пессимистический и оптимистический. По умолчанию устанавливается пессимистическая блокировка.
8. Администрирование. Преимущество монопольного режима работы фактически привело к вырождению функций администрирования БД и в связи с этим — к отсутствию инструментальных средств администрирования в обычном понимании этого
слова в MS Access.
Область применения MS Access.
Проанализировав характеристики области применения Microsoft Access можно выделить следующие структуры:

применение в малом и среднем бизнесе (бухгалтерский учет, ввод заказов,
ведение информации о клиентах, ведение информации о деловых контактах, кадрах и
т.п.);

при разработке программ и хранилищ данных на заказ (разработка внутриотраслевых приложений, разработка межотраслевых приложений, автоматизация неко17
торых функций предприятий);

в крупных корпорациях (приложения для рабочих групп, системы обработки
информации, документооборот);

в качестве персональной СУБД (справочник по адресам, ведение инвестиционного портфеля, поваренная книга, каталоги книг, пластинок, видеофильмов и т. п.);

в качестве средства хранения данных, которое используется в других приложениях. Например, один из лидеров среди геоинформационных систем – ArcGis, создает и использует файлы MDB в качестве «персональной геобазы», то есть хранилища данных, где не требуется одновременное многопользовательское редактирование.
Это сферы использования СУБД Microsoft Access, хотя их конкретных реализаций
может быть неизмеримо много, как и областей применения информационных технологий
в целом.
Функции администратора СУБД MS Access.
Коллективное использование базы данных требует административного контроля.
Необходимо поручить эти обязанности одному или нескольким сотрудникам, которые будут исполнять роль администраторов базы данных. Некоторые ошибочно полагают, что
использование базы данных небольшим коллективом пользователей не требует специального обслуживания, и считают нецелесообразным выделение специальных средств на административную поддержку приложения, аргументируя это отсутствием свободных
штатных сотрудников и нехваткой служебного времени. Однако если этот вопрос будет
проигнорирован, рано или поздно такое положение дел приведет к нежелательным последствиям. Однажды база данных может быть испорчена и не окажется резервных копий.
Невозможно будет решить некоторые часто возникающие задачи администрирования,
требующие определенной квалификации, которой пользователи обычно не имеют. При
этом может возникнуть такая ситуация, что не будет возможности немедленно связаться с
разработчиками или база данных просто была приобретена без заключения договора о сопровождении.
Среди задач администрирования можно, например, выделить такие задачи, как:

создание резервных копий файлов (для баз данных и проектов Access);

периодическое сжатие файлов (для баз данных);

защита файлов средствами шифрования (для баз данных);

изменение пароля для открытия файла (для баз данных);

управление учетными записями и правами доступа для приложений, защищённых на уровне пользователей (для баз данных и проектов [Установка и управление
параметрами системы защиты на уровне пользователей для баз данных выполняются
средствами Access, а для проектов — средствами SQL Server]);

установка приложения, разделенного на файл объектов данных и файл объектов приложения, на новую рабочую станцию и обновление ссылок на связанные таблицы (для баз данных);

установка клиентского приложения на новую рабочую станцию и корректное подключение ее к базе данных, установленной на сервере (для проектов).
При использовании базы данных коллективом в десятки человек подобные задачи
возникают достаточно часто и их спектр достаточно широк, в этом случае рекомендуется
разделить административные обязанности между несколькими специалистами. Для поддержки комплексных сетевых бизнес-приложений вводят специальные должности.
ЗАДАНИЕ:
Разработать тест по изученному материалу (10 вопросов, 3 варианта ответа).
Среда разработки – MS Excel или MS Power Point.
18
ПРАКТИЧЕСКАЯ РАБОТА № 2:
АРХИВИРОВАНИЕ, СЖАТИЕ И ВОССТАНОВЛЕНИЕ БАЗЫ ДАННЫХ.
ЗАЩИТА ИНФОРМАЦИИ В БД РАЗЛИЧНЫМИ СПОСОБАМИ.
Чтобы застраховаться от потери данных, создайте резервную копию базы данных
или проекта Access. Чтобы увеличить производительность базы данных и уменьшить ее
размер, используйте операцию сжатия базы данных или проекта Access. Начиная с версии
Access, сжатие и восстановление базы данных объединены в один процесс.
Создание резервной копии базы данных или проекта Access.
Есть несколько путей создания резервной копии базы данных или проекта. При
наличии достаточного объема свободного места на диске можно создать резервную копию
обычным копированием файла. Создать копию файла можно с помощью приложения
Проводник (Explorer), входящего в состав операционной системы Windows, с помощью
команды операционной системы сору, с помощью инструкции FileCopy в процедуре на
VBA (только, если база данных или проект в это время не открыты в другом окне приложения Access). Чтобы сэкономить место на диске, можно создать сжатую копию файла с
помощью программы архивирования, например с помощью стандартной утилиты архивирования файлов Backup, входящей в состав операционной системы Windows, или с помощью утилит сторонних производителей, таких как WinZip или WinRar. В случае повреждения файла исходной базы данных или проекта Access его можно будет заменить резервной копией.
Замечание.
Если в базе данных установлена защита на уровне пользователей, необходимо создать также резервную копию соответствующего файла рабочей группы операцией копирования или архивирования соответствующего файла с расширением mdw.
Для проектов Access появилась также возможность создания резервной копии
средствами Access. С помощью команды Сервис, Служебные программы, Архивировать SQL-базу данных (Tools, Database Utilities, Backup SQL Database) можно создать резервную копию проекта Access, а затем, при необходимости, восстановить из этой копии
сохраненный проект с помощью команды Сервис, Служебные программы, Восстановить SQL-базу данных (Tools, Database Utilities, Restore SQL Database). А также появилась команда для сохранения данных на SQL Server или MSDE2000 из проекта Access в
виде файла mdf: Сервис, Служебные программы, Копировать файл базы данных
(Tools, Database Utilities, Copy Database File). Еще одна новая команда Access позволяет
удалить источник данных проекта Access с SQL Server или MSDE2000: Сервис, Служебные программы, Удалить базу данных SQL (Tools, Database Utilities, Drop SQL
Database). Это очень удобно, т. к. раньше для этих целей приходилось использовать только утилиту Enterprise Manager для SQL Server или специальные инструкции на TransactSQL. Все эти новые команды работают только, если на компьютере установлен
MSDE2000 или SQL Server.
Сжатие базы данных или проекта Access.
При удалении данных или объектов файл базы данных или проекта Access становится фрагментированным, это приводит к тому, что дисковое пространство используется
неэффективно. Сжатие базы данных или проекта позволяет получить копию, в которой
данные и объекты сохраняются более рационально, что значительно экономит место на
диске.
Сжатие повышает производительность баз данных и проектов Access. Однако сжатие проекта не влияет на объекты, такие как представления и таблицы, хранящиеся в базе
данных на SQL Server. Сжатие проекта не влияет также на таблицы, содержащие поле
счетчика в проектах Access, как это происходит с базами данных. Если из базы данных,
перед сжатием из таблицы, содержащей поле счетчика, были удалены последние записи,
19
после сжатия номер первой пустой записи сбрасывается. Добавленная после этого запись
получит в поле счетчика номер, на единицу превышающий значение счетчика в последней
оставшейся записи.
Замечание.
Сжатие баз данных, созданных в предыдущих версиях Microsoft Access, не приводит к их преобразованию в формат Microsoft Access.
Перед сжатием совместно используемой базы данных убедитесь, что она не открыта ни одним из пользователей сети. Для сжатия базы данных необходимо обладать правами на ее открытие, запуск и открытие в монопольном режиме. Чтобы сжать открытую базу данных или проект Access:
1.
Перед сжатием сетевой базы данных, расположенной в общей папке или на
сервере, убедитесь, что она не открыта другими пользователями.
2.
Выберите команду Сервис, Служебные программы, Сжать и восстановить базу данных (Tools, Database Utilities, Compact and Repair Database).
Чтобы сжать закрытую в данный момент базу данных или проект Access:
1.
Если в данный момент открыта другая база данных или проект Access, закройте ее (его). Если база данных или проект расположены в общей папке или на сервере,
убедитесь, что они не открыты другими пользователями.
2.
Выберите команду Сервис, Служебные программы, Сжать и восстановить базу данных (Tools, Database Utilities, Compact and Repair Database).
3.
Появится диалоговое окно База данных для сжатия (Database To Compact
From) (рис. 1), похожее на окно открытия базы данных. Укажите базу данных или проект,
который необходимо сжать, и нажмите кнопку Сжать (Compact).
Рис. 1. Диалоговое окно База данных для сжатия
4.
Появится диалоговое окно Сжатие базы данных под именем (Compact
Database Into). Выберите диск и папку и введите имя для сохранения сжатой базы данных.
Нажмите кнопку Сохранить (Save).
Замечание.
В обоих случаях процесс сжатия можно прервать с помощью комбинации клавиш
<Ctrl>+<Break> или клавиши <Esc>.
Допускается сжатие файла базы данных или проекта Access в файл с тем же именем, что и имя исходного файла, или создание файла с новым именем. При указании того
20
же имени, диска и папки и при успешном сжатии базы данных исходный файл автоматически заменяется на сжатый файл.
Можно настроить Access так, чтобы конкретная база данных или проект автоматически сжимались при закрытии.
Чтобы установить автоматическое сжатие базы данных Access:
1.
Откройте базу данных, которую нужно сжать.
2.
Выберите команду Сервис, Параметры (Tools, Options). В появившемся
диалоговом окне Параметры (Options) раскройте вкладку Общие (General).
3.
Установите флажок Сжимать при закрытии (Compact on Close) и нажмите
кнопку ОК.
Установка автоматического сжатия проекта Access выполняется аналогично.
Замечание.
Автоматическое сжатие не происходит, если при этом размер базы данных (или
проекта) не будет уменьшен, по крайней мере, на 256 Кбайт, а также, если эта база данных
(или проект) в текущий момент открыта другим пользователем в сети.
Восстановление поврежденной базы данных.
В большинстве случаев Microsoft Access определяет, что база данных повреждена,
при попытке открыть, зашифровать или дешифровать ее. Тогда пользователю предоставляется возможность восстановить базу данных, выполнив ее сжатие. Но в некоторых ситуациях не удается определить, что база данных повреждена. Если база данных ведет себя
непредсказуемым образом, выполните ее сжатие.
При серьезных проблемах, которые приводят к вынужденному завершению работы
Access, это приложение перезапускается и автоматически создается резервная копия открытой базы данных или проекта Access с тем же именем и расширением, что и исходный
файл, только с суффиксом _Backup (резервный).
Защита информации: с помощью шифрования, на SQL-сервер, с помощью пароля.
Защита информации с помощью шифрования.
Защита информации в базе данных Access производится с помощью операции
шифрования. Операция шифрования в Access приводит к сжатию файла базы данных. После выполнения операции шифрования просмотр данных с помощью специальных программ и текстовых редакторов становится невозможен. Операция дешифрования отменяет
результаты операции шифрования. Для проектов Access операция шифрования не реализована.
Операция шифрования или дешифрования неприменима к открытой базе данных.
Если база данных используется в сети, то, прежде чем приступить к выполнению операции шифрования или дешифрования, убедитесь, что она не открыта ни одним из пользователей.
Чтобы выполнить операцию шифрования или дешифрования:
1.
Запустите Access, не открывая базу данных.
2.
Выберите команду Сервис, Защита, Шифровать/дешифровать (Tools,
Security, Encrypt/Decrypt Database).
3.
Появится диалоговое окно База данных для шифрования или дешифрования (Encrypt/Decrypt Database). Укажите имя базы данных, которую требуется зашифровать или дешифровать, и нажмите кнопку ОК.
4.
Если выбранная на предыдущем шаге база данных не является зашифрованной, появится диалоговое окно Шифрование базы данных под именем (Encrypt Database
As), иначе появится диалоговое окно Дешифрование базы данных под именем (Decrypt
Database As). Укажите имя, диск и папку для конечной базы данных и нажмите кнопку
Сохранить (Saye).
Замечание.
21
Можно указать новое имя или имя, совпадающее с именем исходного файла. Если
указаны те же имя, диск и папка, а шифрование или дешифрования выполнены успешно,
то исходный файл будет заменен на зашифрованный или дешифрованный. Если же операция приводит к ошибке, то исходный файл удален не будет. Кроме того, исходный файл
не будет удален, пока операция шифрования не завершится. Поэтому необходимо иметь
достаточно места на диске для двух версий базы данных — зашифрованной и незашифрованной. Рекомендуется перед операцией шифрования делать резервную копию базы данных перед ее шифрованием.
Если для базы данных определена защита на уровне пользователей, то для ее шифрования или дешифрования необходимо быть владельцем базы данных или входить в
группу Admins и иметь разрешение на монопольное открытие базы данных. В противном
случае попытка шифрования или дешифрования окажется неудачной. Шифрование базы
данных не препятствует доступу к ней легальных пользователей или групп в Access. Разрешения на доступ к объектам являются частью системы защиты базы данных на уровне
пользователей.
Администрирование защищенных баз данных и проектов Access.
Существует несколько способов защиты базы данных Access от несанкционированного доступа:

база данных может быть защищена паролем;

для базы данных Access может быть установлена система защиты на уровне
пользователей;

программный код на VBA может быть защищен паролем.
В отличие от баз данных, проект (файл ADP) не может быть защищен с помощью
пароля или посредством установки защиты на уровне пользователей средствами Access.
Однако, как и в базах данных, в проектах можно защищать паролем программный код на
VBA. На практике защита проектов сводится к помещению файла проекта в общую папку
на файловом сервере, к которой пользователям сети предоставляется доступ только для
чтения. Файл проекта может быть отправлен пользователям по почте. Пользователи
должны защитить свою локальную копию файла проекта, используя средства защиты
файловой системы личного компьютера, и периодически создавать резервные копии файла проекта при добавлении в него новых форм или отчетов, чтобы в случае повреждения
файла проекта иметь возможность его восстановить.
Кроме того, в проектах используется система защиты баз данных, хранящихся на
SQL Server.
Есть еще способы защиты объектов в базе данных или проекте Access — преобразовать файл в формат МОЕ или ADE или использовать параметры запуска для ограничения доступа к программам VBA и некоторым параметрам среды Access, можно также
скрыть некоторые объекты от пользователей с помощью диалогового окна Параметры
(Options). Администрирование баз данных, защищенных с помощью пароля, сводится к
изменению пароля защиты (когда это необходимо). Задача администрирования приложений, для которых установлена защита на уровне пользователей, существенно сложнее.
Защита баз данных на SQL Server.
SQL Server имеет встроенную систему защиты баз данных на уровне пользователей. Подключиться к SQL Server и базе данных на нем может только зарегистрированный
на сервере пользователь, обладающий соответствующими правами. Подробную информацию об использовании системы защиты для проектов Access можно найти в документации
SQL Server.
Защита объектов баз данных на SQL Server.
В проектах Access существует две возможности защиты данных и других объектов
(таблиц, представлений, хранимых процедур и схем данных), которые сохраняются на
SQL Server.
22
Можно выполнить шифрование представлений, хранимых процедур и триггеров. После шифрования структуру представления невозможно изменить. Хотя представление по-прежнему можно будет использовать для .правки данных в источнике, Информацио о том, как зашифровать представление, можно найти в документации к SQL Server.
Шифрование хранимой процедуры или триггера можно выполнить, отредактировав их и
записав инструкцию Transact-SQL специального вида, например: CREATE PROCEDURE
... WITH ENCRYPTION.

Можно использовать полный набор средств защиты, предоставляемых SQL
Server, с помощью программы SQL Server Enterprise Manager. Описание этих средств защиты можно найти в документации SQL Server.
Если есть вероятность того, что структуру зашифрованного представления понадобится изменить в будущем, воспользуйтесь следующим советом. Сохраните инструкцию
SQL, определяющую представление, в текстовом файле. Сохраните твердую копию в
надежном месте. Зашифруйте представление. При необходимости изменить структуру зашифрованного представления:
1.
Удалите прежнее зашифрованное представление.
2.
Создайте новое представление с таким же именем, как у прежнего представления.
3.
Скопируйте в буфер обмена инструкцию SQL из текстового файла, в котором она была сохранена. Вставьте ее в область ввода инструкции SQL в окне Конструктора нового представления.
4.
Измените структуру представления.
5.
Сохраните измененную инструкцию SQL в текстовом файле. Поместите этот
файл в надежном месте.
6.
Зашифруйте новое представление.
Управление учетными записями на SQL Server.
В справке Access сказано, что в проекте Access можно выполнять задачи администрирования системы безопасности с помощью команды Access Безопасность базы данных (Database Security) в меню Сервис (Tools). Эта команда доступна только в том случае, если SQL Server установлен на том же самом компьютере, где хранится проект
Access. С помощью этого средства можно добавлять, удалять и изменять учетные записи
для регистрации на SQL Server, учетные записи пользователей базы данных и роли.
Замечание.
Для новой версии ядра баз данных MSDE2000, меню Безопасность базы данных
(Database Security) а также меню Репликация (Replication) недоступны. Так говорится в
справке Access. Однако нам не удалось получить названные меню даже в проекте Access,
подключенном к SQL Server 2000, установленом на том же компьютере. Используйте инструкции Transact-SQL или Enterprise Manager для защиты и репликации данных на SQL
Server. (Подробнее см. справку SQL Server.)
Существует две системы безопасности, применяемые для регистрации на SQL
Server:

Встроенная система защиты SQL Server. Для регистрации на сервере требуется указать имя пользователя сервера и пароль.

Интегрированная система защиты с Windows NT, использующая учетные
записи пользователей NT. В этом случае аутентификация пользователя производится в
момент регистрации в сети на базе Windows NT. SQL Server принимает учетную запись
Windows NT и не требует дополнительной регистрации пользователя.
Чтобы использовать встроенную систему защиты SQL Server:
1.
Так как по умолчанию эта возможность выключена, сначала выберите команду меню Вид, Свойства сервера (View, Server Properties) и в появившемся диалоговом окне установите флажок Учетная запись системного администратора (SA) (Enable
system administrator (SA) user name). Нажмите кнопку ОК.

23
2.
Откройте окно свойств соединения с SQL Server Свойства подключения
(Data Link Properties) с помощью команды меню Файл, Подключение (File, Connection).
3.
На вкладке Соединение (Connection) установите флажок Использовать имя
пользователя и пароль (Use a specific username and password).
4.
Если при открытии проекта Access нужно каждый раз требовать ввод пароля
регистрации пользователя, сбросьте флажок Сохранять пароль (Allow saving of
password). Если ввод пароля при повторной регистрации на сервере не требуется, установите этот флажок.
С такой системой защиты вы сможете поменять пароль учетной записи SQL Server,
использующейся для регистрации в проекте Access, с помощью команды меню Access
Сервис, Защита, Задать пароль для входа (Tools, Security, Set Login Password). He забудьте установленный пароль, чтобы не потерять доступ к проекту!
Чтобы использовать интегрированную с Windows NT систему защиты SQL Server:
1.
Откройте окно свойств соединения с SQL Server Свойства подключения
(Data Link Properties).
2.
На вкладке Соединение (Connection) выберите переключатель Использовать интегрированную систему защиты с Windows NT (Use Windows NT Integrated
Security).
В этом случае ввод пароля при регистрации на SQL Server требоваться не будет,
поскольку будет действовать идентификация пользователя в сети Windows NT или
Windows 2000.
Защита базы данных Access с помощью пароля.
Самый простой способ защиты базы данных — с помощью пароля. Можно назначить пароль базе данных Access, который будет требоваться всякий раз при ее открытии.
Установка и снятие пароля защиты базы данных.
Чтобы установить пароль для защиты базы данных:
1.
Закройте базу данных. Если база данных совместно используется в сети,
убедитесь, что остальные пользователи ее закрыли.
2.
Сделайте резервную копию базы данных и сохраните ее в надежном месте.
3.
В меню Access выберите команду Файл, Открыть (File, Open).
4.
Выделите файл базы данных.
5.
Щелкните по стрелке, расположенной справа от кнопки Открыть (Open). В
раскрывающемся списке режимов открытия базы данных выделите элемент Монопольно
(Open Exclusive). База данных откроется в режиме монопольного доступа.
6.
Выберите команду Сервис, Защита, Задать пароль базы данных (Tools,
Security, Set Database Password).
7.
В появившемся диалоговом окне введите в поле Пароль (Password) пароль
для защиты базы данных с учетом регистра символов.
8.
Введите пароль еще раз в поле Подтверждение (Verify).
9.
Нажмите кнопку ОК.
Теперь база данных защищена паролем и всякий раз, когда пользователь будет открывать базу данных, будет отображаться диалоговое окно с требованием ввести пароль.
Запомните или сохраните пароль в надежном месте. Если вы забудете пароль, базу данных
будет невозможно открыть.
Замечание.
Не защищайте базу данных паролем перед ее репликацией, иначе ее нельзя будет
синхронизировать с другими репликами.
Если база данных защищена на уровне пользователей, установить пароль для ее открытия может только пользователь, обладающий административными правами. Установка
пароля не влияет на систему защиты на уровне пользователя. Эти два способа защиты могут использоваться одновременно. Пароль базы данных сохраняется в базе данных, а не в
файле рабочей группы.
24
Чтобы удалить пароль защиты базы данных:
1.
Откройте базу данных в режиме монопольного доступа.
2.
В диалоговое окно Необходимо ввести пароль (Password Required) ведите
пароль.
3.
Выберите команду Сервис, Защита, Удалить пароль базы данных (Tools,
Security, Unset Database Password). Появится диалоговое окно Удаление пароля базы
данных (Unset Database Password).
4.
Введите текущий пароль базы данных.
5.
Нажмите кнопку ОК.
Установка связи с таблицами базы данных, защищенной паролем.
Чтобы установить связь с таблицами базы данных, защищенной паролем, требуется
ввести пароль. Если пароль был указан верно, он сохраняется вместе с другой информацией о ссылках на таблицы. После этого любой пользователь, работающий с базой данных
со связанными таблицами, может открыть эти таблицы без указания пароля. Если пароль
защищенной базы данных будет изменен, в следующий раз при открытии базы данных,
содержащей связанные таблицы, потребуется ввести пароль.
Замечание.
Microsoft Access сохраняет пароль в базе данных, содержащей связанные таблицы
защищенной базы данных, в незашифрованном виде. Если это уязвляет систему защиты
базы данных, не используйте средство защиты с помощью пароля. Установите систему
защиты на уровне пользователей, чтобы ограничить доступ к объектам базы данных.
ЗАДАНИЕ:
Самостоятельно, используя HELP приложения MS Access 2007, выполните с
базой данных «Клиенты и заказы»:
1) создание резервной копии;
2) архивирование и разархивирование;
3) сжатие и восстановление;
4) шифрование, а затем дешифрование;
5) установление, а затем снятие пароля.
При выполнении этих заданий каждый шаг необходимо подтвердить скриншотом
экрана. Скриншоты должны быть вставлены в хронологическом порядке в файл Word и
снабжены подписями.
Пример оформления:
Практическая работа № 2
Архивирование, сжатие и восстановление базы данных.
Защита информации в БД различными способами.
Задание 1. Создание резервной копии.
1. Открываем БД:
25
2. Входим в меню «Сервис», пункт «Управление». Выбираем опцию «Резервная копия базы данных».
3. Указываем место и имя БД для архивирования, нажимаем «Сохранить»:
4. Находим архивированный экземпляр БД в указанной папке:
Архивированная БД имеет объем на 28 КБ меньше, чем неархивированная.
26
ПРАКТИЧЕСКАЯ РАБОТА № 3:
СБОР СВЕДЕНИЙ ОБ ОБЪЕКТАХ БД.
ПОЛУЧЕНИЕ И ИЗУЧЕНИЕ ОТЧЕТА АРХИВАРИУСА.
Изучение таблиц, форм, запросов и других объектов в базе данных может значительно облегчить выполнение многих различных задач, таких как введение данных в форму, добавление или удаление таблиц, поиск и замена данных, выполнение запросов.
В Access пользователю предлагаются несколько инструментов, которые можно использовать для изучения структуры определенной базы данных.
Основные сведения о базе данных Access.
База данных представляет собой набор сведений, относящихся к определенному
предмету или служащих определенной цели, такой как отслеживание заказов клиентов
или обработка коллекции музыкальных записей. База данных может не храниться на компьютере пользователя совсем, или же на компьютере могут храниться только части базы
данных. В этих случаях имеется возможность отслеживать данные из различных источников, которые необходимо скоординировать и организовать.
Например, предположим, что номера телефонов ваших поставщиков хранятся в
различных местах: в файле, содержащем номера телефонов поставщиков, в папках сведений о продуктах в картотеке и в электронной таблице, содержащей сведений о заказах.
Если телефон поставщика изменится, вам придется обновлять данные три раза во всех
трех местах. В хорошо организованной базе данных Access номер телефона сохраняется
только один раз, поэтому обновлять сведения придется тоже только один раз. В результате при обновлении номера телефона поставщика этот номер будет автоматически обновлен везде, где он используется в базе данных.
Файлы баз данных Microsoft Access.
Можно использовать Access для управления всеми данными в одном файле. В файле базы данных Access можно использовать следующие элементы:

таблицы для сохранения данных;

запросы для поиска и извлечения только необходимых данных;

формы для просмотра, добавления и изменения данных в таблицах;

отчеты для анализа и печати данных в определенном формате.
27
Данные сохраняются один раз в одной таблице, но просматриваются из различных расположений. При изменении данных они автоматически обновляются везде, где
появляются.
Данные извлекаются при помощи запроса.
Просмотр и ввод данных выполняется с помощью формы.
Отображение и печать данных осуществляется с помощью отчета.
Все эти элементы — таблицы, запросы, формы и отчеты — являются объектами базы данных.
Примечание. Некоторые базы данных Access содержат ссылки на таблицы, которые хранятся в других базах данных. Например, может быть одна база данных Access,
содержащая только таблицы, и другая база данных Access, содержащая ссылки на эти таблицы, а также запросы, формы и отчеты, которые основываются на таблицах, на которые
указывают ссылки. В большинстве случаев не имеет значения, является ли таблица таблицей, на которую указывает ссылка, или же эта таблица фактически хранится в базе данных.
Таблицы и связи.
Для хранения данных создается одна таблица для каждого типа отслеживаемой информации. Типы информации могут включать сведения о клиентах, продукты и другие
подробности. Чтобы собрать данные из нескольких таблиц в одном запросе, форме или
отчете, необходимо задать связи между таблицами.
Сведения о клиентах, которые содержались в списке рассылки, теперь находятся в таблице «Клиенты».
Сведения о заказах, которые содержались в электронной таблице, теперь находятся в таблице «Заказы».
Уникальный код в поле «ИД клиента» позволяет отличить одну запись в таблице от других. Добавляя поле с уникальным кодом из одной таблицы в другую и задавая
связи между двумя полями, в Access можно сопоставлять связанные записи из обеих таблиц и выводить их в форму, отчет или запрос.
Запросы.
28
Запрос помогает находить и извлекать данные, удовлетворяющие заданным условиям, включая данные из нескольких таблиц. Запрос можно также использовать для обновления или удаления нескольких записей одновременно и для выполнения предписанных или пользовательских расчетов на основе данных.
Таблица «Клиенты» содержит данные о клиентах.
Таблица «Заказы» содержит данные о заказах клиентов.
Этот запрос извлекает данные об ИД заказа и дате отгрузки из таблицы «Заказы» и данные о названии организации и городе из таблицы «Клиенты». Запрос возвращает
только заказы, которые были отгружены в апреле и были сделаны клиентами из Москвы.
Формы.
Форма используется для облегчения просмотра, ввода и изменения данных по одной строке за раз. С помощью форм можно также выполнять другие действия, такие как
отправка данных в другое приложение. Обычно формы содержат элементы управления,
которые связаны с базовыми полями в таблицах. Когда пользователь открывает форму,
Access извлекает данные из одной или нескольких таблиц, затем данные отображаются в
представлении, выбранном при создании формы. Можно создать форму, используя одну
из команд группы Форма на ленте или мастер форм, а также можно создать форму самостоятельно в «Конструкторе форм».
29
В таблице одновременно отображаются многие записи, но может потребоваться
воспользоваться прокруткой по горизонтали, чтобы увидеть все данные в одной записи.
Кроме того, при просмотре таблицы нельзя обновлять данные из нескольких таблиц одновременно.
В форме внимание сосредоточено на одной записи, также могут отображаться
поля из нескольких таблиц. Кроме того, форма позволяет отображать рисунки и другие
объекты.
Форма может содержать кнопку, нажатием которой можно распечатать отчет,
открыть другие объекты или каким-либо другим образом автоматизировать выполнение
задач.
Отчеты.
Отчет можно использовать, чтобы быстро проанализировать данные или представить их определенным образом на печати или в других форматах. Например, можно отправить коллеге по работе отчет, в котором данные будут сгруппированы определенным
образом и подсчитаны итоговые значения. Или можно создать отчет с адресными данными, отформатированными для печати почтовых наклеек.
Отчет используется для создания почтовых наклеек.
Отчет используется для отображения итогов в диаграмме.
Отчет используется для отображения подсчитанных итогов.
Теперь, когда вы познакомились с основной структурой баз данных Access, продолжите чтение и узнайте, как использовать встроенные инструменты для изучения определенной базы данных Access.
Просмотр подробных сведений об объектах в базе данных.
Один из способов изучить определенную базу данных — воспользоваться архивариусом. Архивариус используется для построения отчета, содержащего подробные сведения об объектах в базе данных. Сначала следует выбрать, какие объекты будут подробно
рассмотрены в отчете. Когда запускается архивариус, его отчет содержит все данные о
выбранных объектах базы данных.
1.
Откройте базу данных, которую требуется задокументировать.
2.
На вкладке Работа с базами данных в группе Анализ щелкните Архивариус.
3.
В диалоговом окне Архивариус щелкните вкладку, на которой представлен
тот тип объекта базы данных, который нужно задокументировать. Чтобы создать отчет по
всем объектам в базе данных, щелкните вкладку Все объекты.
30
4.
Выберите один или несколько объектов из перечисленных на вкладке. Чтобы выбрать все объекты на вкладке, щелкните Выделить все.
5.
Щелкните ОК.
Архивариус создает отчет, который содержит подробные данные о каждом выделенном объекте, и затем открывает отчет в окне предварительного просмотра. Например,
если запустить архивариус по форме ввода данных, то полученный отчет будет содержать
свойства для каждого раздела этой формы, свойства для всех кнопок, надписей, текстовых
полей и других элементов управления, которые присутствуют в форме, а также любые
программные модули и разрешения пользователей, которые связаны с этой формой.
6.
Чтобы распечатать отчет, на вкладке Предварительный просмотр в группе
Печать щелкните Печать.
ЗАДАНИЕ:
Изучите базы данных:
1) «Клиенты и заказы»
2) «Музей»
3) «Спортивный клуб»
ПЛАН ИЗУЧЕНИЯ:
1. Перечень объектов БД.
Тип объекта
Кол-во объектов данного типа
2. Характеристика таблиц БД.
№
Наименование
Кол-во
п.п.
таблицы
полей
3. Характеристика форм.
№
Наименование формы
п.п.
4. Характеристика запросов.
№
Наименование запроса
п.п.
5. Характеристика отчетов.
№
Наименование отчета
п.п.
Кол-во
записей
Подчиненные
таблицы
Тип формы
Наименование таблицы
Тип запроса
Наименование запроса
6. Отчет Архивариуса, экспортированный в Word.
31
Управляющие
таблицы
ПРАКТИЧЕСКАЯ РАБОТА № 4:
ИЗУЧЕНИЕ ТАБЛИЦЫ В РЕЖИМЕ КОНСТРУКТОРА.
ПРОСМОТР СВЯЗЕЙ МЕЖДУ ТАБЛИЦАМИ.
ИЗУЧЕНИЕ ВЗАИМОДЕЙСТВИЯ ОБЪЕКТОВ.
Изучение таблицы в режиме конструктора.
Открытие таблицы в режиме конструктора позволяет увидеть подробную структуру таблицы. Например, можно найти настройку типа данных для каждого поля, любые
маски ввода или узнать, используются ли в таблице какие-либо поля подстановки — поля,
которые используют запросы для извлечения данных из других таблиц. Эти сведения полезны, поскольку типы данных и маски ввода могут повлиять на возможность поиска данных и запуска запросов на обновление. Например, нужно использовать запрос на обновление для обновления определенных полей в одной таблице посредством копирования
данных в сходные поля из другой таблицы. Запрос не будет выполняться, если типы данных для каждого поля в исходной и конечной таблицах не совпадают.
1.
Откройте базу данных, которую нужно проанализировать.
2.
В области переходов щелкните правой кнопкой мыши таблицу, которую хотите изучить, и затем в контекстном меню выберите Конструктор.
3.
Просмотрите название каждого поля таблицы и тип данных, назначенный
каждому полю.
Тип данных, назначенный полю, может ограничивать размер и тип данных, вводимых пользователями в это поле. Например, количество знаков, вводимых пользователями
в текстовое поле, может быть ограничено 20 знаками или нельзя вводить текстовые данные в поле, настроенное с типом данных «Числовой».
4.
Чтобы определить, является ли поле полем подстановки, щелкните вкладку
Подстановка в нижнем разделе таблицы, озаглавленном Свойства поля.
Поле подстановки отображает одно множество значений (одно или несколько полей, таких как имя и фамилия), но обычно в нем хранится другое множество значений
(одно поле, такое как числовой ИД). Например, поле подстановки может хранить номер
ИД клиента (хранимое значение), но отображать имя клиента (отображаемое значение).
Когда поле подстановки используется в выражениях или операциях поиска и замещения,
используется хранимое значение, а не отображаемое значение. Изучение хранимых и
отображаемых значений поля подстановки поможет вам добиться того, чтобы выражения
или операции поиска и замещения, использующие поля подстановки, работали должным
образом.
На следующей иллюстрации показано типичное поле подстановки. Помните, что
настройки, отображаемые в свойстве Источник строк этого поля, будут изменяться.
Показанное на рисунке поле подстановки использует запрос для извлечения данных из другой таблицы. Можно также увидеть другой тип поля подстановки, которое
называется списком значений и использует жестко закодированный список вариантов. На
рисунке показан типичный список значений.
32
По умолчанию списки значений используют тип данных «Текстовый».
Лучший способ найти списки значений и подстановки — перейти на вкладку Подстановка и затем щелкнуть записи в столбце Тип данных для каждого поля в таблице.
Просмотр связей между таблицами.
Чтобы увидеть графическое представление таблиц в базе данных, полей в каждой
таблице и связей между этими таблицами, используйте вкладку объекта Связи. Вкладка
объекта Связи предоставляет полную картину структуры таблицы и связей базы данных — важнейшую информацию при создании или изменении связей между таблицами.
Примечание. Можно также использовать вкладку объекта Связи для добавления, изменения и удаления связей.

Откройте базу данных, которую нужно проанализировать.

На вкладке Средства базы данных в группе Скрыть/Отобразить выберите
команду Отношения.
Отображается вкладка объекта Связи, на которой показаны связи между всеми
таблицами в открытой базе данных.
Просмотр взаимодействия объектов.
В области Зависимости объектов показано, как объекты базы данных, например
таблицы, формы, запросы и отчеты, взаимодействуют с другими объектами или зависят от
них.
Область Зависимости объектов можно использовать, чтобы избегать случайного
удаления источников записи. Например, предположим, что был выполнен запрос по заказам за квартал в базу данных «Продажи», результаты запроса больше не нужны. Прежде
чем удалить запрос, необходимо выяснить, не используют ли какие-либо другие объекты в
базе данных, такие как форма или отчет, этот запрос в качестве источника данных. Затем
можно либо изменить зависимые объекты, чтобы удалить ссылки на запрос, либо можно
удалить зависимые объекты вместе с запросом. Просмотр полного списка зависимых объектов может помочь вам сэкономить время, поскольку уже не потребуется вручную проверять свойства объектов и исправлять ошибки, возникшие в результате пропуска какихлибо значимых деталей во время проверки вручную.
Если требуется изменить внешний вид объекта базы данных, можно использовать
область Зависимости объектов, чтобы посмотреть, как вносимые изменения затронут
другие объекты. Следует использовать область Зависимости объектов для планирования
значительных изменений оформления.
Использование области Зависимости объектов.
1.
Откройте базу данных, которую хотите изучить.
33
2.
В области переходов выделите или откройте таблицу, форму, отчет или за-
прос.
3.
На вкладке Работа с базами в группе Показать или скрыть щелкните Зависимости объектов.
4.
Если появится подсказка, щелкните ОК, чтобы обновить сведения о зависимостях.
Отобразится область Зависимости объектов.
5.
Чтобы отобразить список объектов, которые используют объект, выбранный
на шаге 2, щелкните Объекты, зависящие от данного в верхней части области. Чтобы
отобразить список объектов, которые использует выбранный объект, щелкните Объекты,
от которых зависит данный.
6.
Чтобы отобразить сведения о зависимостях объекта, щелкните значок разворачивания (+) рядом с объектом. В Access отображается до четырех уровней зависимостей
для объекта.
Во время использования области Зависимости объектов следует помнить о следующих фактах:

Сведения о зависимостях доступны только в том случае, если у пользователя
есть разрешения открывать объект в «Конструкторе».

Сведения о макросах и программных модулях в этой области не отображаются.

Область работает только для таблиц, форм, отчетов и запросов, кроме следующих типов запросов:

Запрос на изменение — запросы, с помощью которых добавляются, обновляются или удаляются данные

SQL-запросы, в том числе запросы на объединение, управляющие запросы,
запросы к серверу

Подзапросы
Когда в Access встречаются вложенные запросы, сведения о зависимостях создаются только для самого внешнего запроса. Это правило также применяется к исходным таблицам и запросам подтаблицы запроса, а также к полям подстановки.
34
Сведения о зависимостях создаются в Access посредством поиска сопоставлений имен и применением функции автозамены имен — функции, которая автоматически исправляет общие побочные эффекты, которые возникают при переименовании форм,
отчетов, таблиц, полей или элементов управления в формах и отчетах. Если отслеживание
сведений об автозамене имен отключено, появится подсказка с предложением включить
эту функцию, прежде чем можно будет просмотреть сведения о зависимостях.

ЗАДАНИЕ:
1. Выберите одну из трех баз данных («Клиенты и заказы», «Музей», «Спортивный клуб») по своему усмотрению.
2. Для выбранной базы данных:
1) Изучите все таблицы в режиме Конструктора. Найдите поля, которые можно более эффективно заполнять путем подстановки, и сделайте соответствующую
настройку на вкладке «Подстановка».
Проделанную работу проиллюстрируйте скриншотами.
2) Изучите схему данных. Проанализируйте ее на предмет возможных ошибок
(неверно установленных связей). Исправьте ошибки (если они есть).
Проделанную работу проиллюстрируйте скриншотами (если вы делали исправления, то скриншоты «до» и «после»).
3) Изучите взаимодействие объектов базы данных. Постройте схему, показывающую зависимость объектов друг от друга.
Например:
Таблица «Клиенты»
Запрос
1
Таблица «Сотрудники»
Таблица «Заказы»
Запрос
2
Запрос
3
35
Таблица «Товары»
Запрос
4
ПРАКТИЧЕСКАЯ РАБОТА № 5: ОПТИМИЗАЦИЯ БАЗЫ ДАННЫХ.
Под оптимизацией базы данных понимаются действия, направленные на:
1) уменьшение объема, занимаемого данными;
2) ускорение выполнения запросов, генерации отчетов и др. операций.
С целью проведения оптимизации необходимо установить, какие проблемы (ошибки), имеющиеся в базе данных, придают ей ненужный дополнительный объем и тормозят
работу запросов. Для выявления подобных проблем MS Access предлагает ряд инструментов.
Анализ быстродействия.
Кнопка «Анализ быстродействия» располагается на вкладке «Работа с базами данных».
Инструмент позволяет протестировать на возможные погрешности (ошибки) целый
ряд объектов БД:
- таблицы;
- запросы;
- формы;
- отчеты;
- макросы;
- модули;
- текущую базу данных (т.е. ее схему)
или все объекты сразу.
Необходимо лишь выбрать (проставить «галочки») нужные объекты и нажать
кнопку «ОК». Если база идеальна, никаких предложений от Access не последует. Если же
при анализе быстродействия будут обнаружены погрешности в БД, Access сформулирует
свои предложения. Например, так:
Не нужно думать, что Access всегда предлагает идеально правильный вариант, поскольку СУБД анализирует базу, хотя и тщательно, но все же со своей («машинной») точки зрения. Однако часто предложения Access оказываются достаточно полезными и конструктивными. Поэтому каждое из них имеет смысл проанализировать и, возможно, внести в БД соответствующие исправления.
36
Анализ таблицы.
Этот инструмент, расположенный также на вкладке «Работа с базами данных»,
анализирует только таблицы, определяя правильность их структуры. При этом возможно
два варианта работы с этим инструментом:
- автоматическое изменение структуры таблицы, которая показалась Access «неидеальной»; в этом случае Access предложит свой вариант, с которым можно согласиться,
а можно и отменить;
- ручное изменение структуры таблицы пользователем; этот вариант – для разработчиков с опытом, которые сами видят допущенные ошибки и наилучшие варианты их
исправления.
ЗАДАНИЕ:
1. Выберите одну из трех баз данных («Клиенты и заказы», «Музей», «Спортивный клуб») по своему усмотрению.
2. Для выбранной базы данных:
1) Проанализируйте все объекты на быстродействие. Рассмотрите предложенные Access исправления и при необходимости выполните их.
Проделанную работу проиллюстрируйте скриншотами.
2) Проанализируйте все таблицы с помощью инструмента «Анализ таблицы».
Рассмотрите варианты автоматического изменения структуры, предложенные
Access. Если они действительно более удачны, чем имеющиеся варианты, внесите
исправления.
Проделанную работу проиллюстрируйте скриншотами.
37
ПРАКТИЧЕСКАЯ РАБОТА № 6:
ОБМЕН ДАННЫМИ МЕЖДУ ПРИЛОЖЕНИЯМИ ACCESS И WORD.
Импорт данных или связывание с данными текстового файла.
Существует несколько способов переноса данных из текстового файла в Microsoft
Office Access 2007. Если требуется создать копию данных, доступную для изменения в
Access, файл следует импортировать в новую или существующую таблицу с помощью мастера импорта текстовых файлов. Если требуется просматривать обновленные исходные
данные в Access и использовать расширенные функции запросов и отчетов, следует создать в базе данных связь с текстовым файлом с помощью мастера связывания с текстовыми файлами.
Текстовые файлы и поддерживаемые форматы.
Текстовый файл содержит текст без форматирования. Это могут быть буквы и числа, а также специальные знаки, такие как знаки табуляции, перевода строки и возврата каретки. В Access поддерживаются следующие форматы файлов: TXT, CSV, ASC и TAB.
Чтобы использовать текстовый файл в качестве исходного файла для импорта или
связывания, необходимо структурировать его содержимое таким образом, чтобы Мастера
импорта и связывания могли разделить его на записи (строки), а каждую запись — на поля
(столбцы). Текстовые файлы с правильной структурой делятся на два типа:

Файлы с разделителями. В таком файле каждая запись занимает отдельную строку, а поля отделяются одним знаком разделителя. В качестве разделителя можно
использовать любой знак, который не входит в значения полей, например, знак табуляции,
точку с запятой, запятую, пробел и т.д.
1,Company A,Anna,Bedecs,Owner
2,Company C,Thomas,Axen,Purchasing Rep
3,Company D,Christina,Lee,Purchasing Mgr.
4,Company E,Martin,O’Donnell,Owner
5,Company F,Francisco,Pérez-Olaeta,Purchasing Mgr.
6,Company G,Ming-Yang,Xie,Owner
7,Company H,Elizabeth,Andersen,Purchasing Rep
8,Company I,Sven,Mortensen,Purchasing Mgr.
9,Company J,Roland,Wacker,Purchasing Mgr.
10,Company K,Peter,Krschne,Purchasing Mgr.
11,Company L,John,Edwards,Purchasing Mgr.
12,Company M,Andre,Ludick,Purchasing Rep
13,Company N,Carlos,Grilo,Purchasing Rep

Файлы с фиксированной длиной записей. В таком файле каждая запись
занимает отдельную строку, а длина полей остается постоянной во всех записях. Например, первое поле каждой записи всегда содержит семь знаков, второе поле – 12 и т.д. Если
фактическая длина значения поля меняется, короткие значения должны быть дополнены
пробелами.
1 Company A Anna
Bedecs
Owner
2 Company C Thomas Axen
Purchasing Rep
3 Company D Christina Lee
Purchasing Mgr.
4 Company E Martin O’Donnell
Owner
5 Company F Francisco Pérez-Olaeta Purchasing Mgr.
6 Company G Ming-Yang Xie
Owner
7 Company H Elizabeth Andersen
Purchasing Rep
8 Company I Sven
Mortensen
Purchasing Mgr.
9 Company J Roland Wacker
Purchasing Mgr.
10 Company K Peter
Krschne
Purchasing Mgr.
11 Company L John
Edwards
Purchasing Mgr.
38
12 Company M Andre
13 Company N Carlos
Ludick
Grilo
Purchasing Rep
Purchasing Rep
Импорт данных из текстового файла.
Если в базе данных Access требуется сохранить все данные текстового файла или
их часть, содержимое файла следует импортировать в новую таблицу или добавить к существующей. Импортируемые данные можно просматривать и редактировать, не внося
изменений в исходный текстовый файл.
В ходе операции импорта пользователь может задать структуру исходного файла и
выбрать вариант импорта: в новую или существующую таблицу.
В конце операции импорта можно сохранить сведения об операции в виде спецификации. Использование спецификации позволяет выполнять операцию импорта повторно без использования мастера.
Стандартные сценарии импорта текстового файла в Access.
Обычно текстовые данные импортируются в Access по следующим причинам.

Часть данных хранится в формате, который не поддерживается в Access, но
их требуется объединить с базой данных. Исходные данные можно сначала экспортировать в текстовый файл, а затем импортировать этот файл в таблицу Access.

Вы используете Access для управления данными, но при этом регулярно получаете данные в текстовом формате от пользователей другой программы. Операция импорта данных выполняется регулярно, но этот процесс требуется упростить для экономии
времени и усилий.
Примечание. При открытии текстового файла в Access (нажмите кнопку
Microsoft Office
, выберите команду Открыть и в диалоговом окне Открыть в поле
со списком Тип файла выберите элемент Все файлы, затем выберите текстовый файл)
будет открыт мастер связывания с текстовыми файлами, с помощью которого можно создать ссылку на текстовый файл, не импортируя содержимое файла. Связывание с файлом
отличается от операции импорта.
Подготовка исходного файла.
1.
Откройте исходный файл в текстовом редакторе, например, в блокноте.
Примечание. В ходе одной операции импорта можно импортировать лишь один
файл. Чтобы импортировать несколько файлов, операцию импорта следует повторить для
каждого файла.
2.
Просмотрите данные исходного файла и выполните необходимые действия в
соответствии с приведенной ниже таблицей.
Элемент
Описание
С разделителя- Убедитесь, что содержимое файла соответствует выбранному формату.
ми или фикси- Если это файл с разделителями, найдите разделитель. Если это файл с
рованной дли- фиксированной длиной записей, убедитесь, что длина значения поля
ной записей
одинакова во всех записях.
Ограничители
Некоторые файлы с разделителями могут содержать значения полей,
строк
заключенные в одинарные или двойные кавычки, как показано ниже:

"Андрей Гладких",25,05.04.2006,"Нижний Новгород"

"Евгений Куликов",27,2000,"Самара"
Знак, используемый для ограничения значения поля, называется ограничителем строк. Ограничители не являются обязательными, но их рекомендуется использовать, если выполняется одно из следующих условий.

Разделитель поля является частью значения. Например, если в
качестве разделителя используется запятая, которая входит в допустимое значение Нижний Новгород, Самара, это значение следует окру39
жить ограничителями, например: "Нижний Новгород, Самара".

Нетекстовые значения, такие как 0452934 и 0034539, требуется
обрабатывать в Access как текстовые и хранить в текстовом поле.
В ходе операции импорта можно указать, используется ли в файле
ограничитель, и, если он используется, задать соответствующий знак.
Следует убедиться, что в файле используется один ограничитель строк,
и что он применяется только к текстовым значениям.
Число полей
Число исходных полей не должно превышать 255 , т. к. Access поддерживает не более 255 полей в таблице.
Пропуск запи- Если требуется перенести лишь часть исходного текстового файла, его
сей и значений
следует отредактировать перед началом операции импорта, т.к. пропуск
записей в ходе операции невозможен.
Если данные добавляются в новую таблицу, некоторые поля можно
пропустить, но эта функция недоступна при добавлении в существующую таблицу. В случае добавления данных в имеющуюся таблицу
структура исходных данных должна соответствовать структуре конечной таблицы. Другими словами, в исходном файле должно быть то же
число столбцов, что и в конечной таблице, а типы данных должны совпадать с типами данных в конечной таблице.
Пустые строки Удалите все лишние пустые строки из файла. При наличии пустых пои поля
лей добавьте в них отсутствующие данные. Если планируется добавлять записи в существующую таблицу, убедитесь, что соответствующие поля таблицы допускают использование пустых значений. Поле
допускает использование пустых значений, если свойство Обязательное (Required) имеет значение Нет, а свойство Условие
(ValidationRule) не запрещает пустые значения.
Лишние знаки
Проверьте файл и удалите лишние знаки, такие как знаки табуляции,
перевода строки и возврата каретки.
Типы данных
Во избежание ошибок во время импорта следует убедиться, что тип
данных всех исходных полей в одной строке совпадает. Access считывает первые 25 строк файла, чтобы определить тип данных для полей
таблицы. Настоятельно рекомендуется проверить, что первые 25 исходных строк не содержат данные разных типов. Кроме того, нетекстовые значения, которые требуется обрабатывать как текстовые, необходимо заключить в одинарные или двойные кавычки.
Если исходный файл содержит смешанные значения в строках, следующих за 25-й строкой, в ходе операции импорта значения могут быть
пропущены или неправильно преобразованы.
Имена полей
Если файл с разделителями не содержит имена полей, их рекомендуется указать в первой строке. В ходе операции импорта можно выбрать
обработку значений в первой строке как имен полей. При импорте файлов с фиксированной длиной записей такая функция в Access недоступна. Примечание. Если текстовый файл с разделителями добавляется в существующую таблицу, убедитесь, что имя каждого столбца в
точности соответствует имени поля. Если имя столбца отличается от
имени соответствующего поля в таблице, операция импорта завершится
сбоем. Чтобы просмотреть имена полей, откройте конечную таблицу в
режиме конструктора.
3.
Закройте исходный файл, если он открыт. В случае если файл остается открытым в ходе операции импорта, могут возникнуть ошибки преобразования данных.
Начало процесса импорта в Access.
1.
Откройте базу данных Access для импорта данных.
40
Если ни одна из существующих баз данных не подходит для сохранения данных,
создайте пустую базу данных.
Как создать пустую базу данных?
Нажмите кнопку Microsoft Office
, а затем выберите команду Создать.
2.
Перед началом операции импорта следует определить, где будут сохранены
данные: в новой или существующей таблице.

Создание новой таблицы. Если выбран вариант сохранения данных в новой таблице, в Access создается таблица, к которой добавляются импортируемые данные.
Если таблица с указанным именем уже существует, Access перезаписывает содержимое
таблицы импортируемыми данными.

Добавление в существующую таблицу. Если данные добавляются в существующую таблицу, в процессе импорта данные дописываются к указанной таблице.
Важно отметить, что в большинстве случаев операция добавления данных завершается сбоем из-за несоответствия структуры исходных данных структуре и параметрам полей конечной таблицы. Чтобы избежать этой ошибки, откройте таблицу в режиме конструктора и проверьте следующие параметры:

Первая строка. Если первая строка исходного текстового файла не содержит имена полей, следует убедиться, что расположение и тип данных каждого столбца
соответствует нужному полю таблицы. Если первая строка файла с разделителями содержит заголовки столбцов, совпадение порядка следования столбцов и полей необязательно,
но имя и тип данных каждого столбца должны в точности совпадать с именем и типом
данных соответствующего поля. При импорте файлов с фиксированной длиной записей
функция использования значений в первой строке в качестве имен полей в Access недоступна.

Отсутствующие или лишние поля. Если в конечной таблице отсутствует
одно или несколько полей, добавьте их до начала операции импорта. Если же таблица содержит поля, отсутствующие в исходном файле, их не требуется удалять из таблицы, если
для них разрешены пустые значения.
Совет. Поле допускает использование пустых значений, если свойство Обязательное (Required) имеет значение Нет, а свойство Условие (ValidationRule) не запрещает пустые значения.

Первичный ключ. Если таблица содержит поле первичного ключа, исходный файл должен содержать столбец со значениями, совместимыми с полем первичного
ключа. Кроме того, импортируемые значения ключа должны быть уникальными. Если
импортируемая запись содержит значение первичного ключа, которое уже существует в
таблице, операция импорта завершается, и отображается сообщение об ошибке. Нужно
отредактировать исходные данные таким образом, чтобы они содержали уникальные значения ключа, а затем повторить операцию импорта.

Индексированное поле. Если свойство Индексированное (Indexed) поля
таблицы имеет значение Да (без повторов), соответствующий столбец исходного текстового файла должен содержать уникальные значения.
3.
На вкладке Внешние данные в группе Импорт выберите команду Текстовый файл.
Примечание. Команды Импорт доступны только для открытой базы данных.
4.
В диалоговом окне Внешние данные - Текстовый файл в поле Имя файла
укажите имя исходного файла.
5.
Выберите способ сохранения импортируемых данных.

Чтобы сохранить данные в новой таблице, выберите вариант Импортировать данные источника в новую таблицу в текущей базе данных. Будет отображено
окно для указания имени таблицы.
41
Чтобы добавить данные в существующую таблицу, выберите вариант Добавить копию записей в конец таблицы: и выберите таблицу в раскрывающемся списке.
6.
Нажмите кнопку ОК.
Access считывает содержимое файла и предлагает предпочтительную структуру.
Если в файле используются специальные знаки для разделения полей, следует выбрать
вариант с разделителями. Если импортируется файл с фиксированной длиной записей,
необходимо установить флажок фиксированная ширина полей. Если тип файла неизвестен, см. предыдущий раздел Подготовка исходного файла.
Примечание. Если исходный текстовый файл содержит знаки табуляции или
другие специальные знаки, в мастере импорта текстовых файлов они отображаются в виде
полей между столбцами данных.
7.
Нажмите кнопку Далее.
В зависимости от выбранного варианта (файл с разделителями или фиксированной
шириной полей) мастер отображает нужные сведения.

Файл с разделителями
Выберите или укажите знак разделителя для значений полей. Если в файле
используется ограничитель строк, выберите в поле Ограничитель текста: двойные (") или одинарные (') кавычки. Если первая строка исходного файла содержит
имена полей, установите флажок Первая строка содержит имена полей. Затем
нажмите кнопку Далее.
Файл с фиксированной шириной полей
В мастере отображается содержимое файла. Если Access обнаруживает
столбцы данных, для разделения полей вставляются вертикальные черты. Просмотрите предлагаемую мастером структуру и при необходимости добавить, удалить или исправить строки следуйте инструкциям мастера. Затем нажмите кнопку
Далее.
8.
Если выбран вариант добавления данных в существующую таблицу, перейдите к шагу 12. Если же данные импортируются в новую таблицу, нажмите кнопку Далее,
чтобы просмотреть свойства полей, отображаемые в мастере.
Примечание. Страница мастера, на которой можно указать сведения об импортируемых полях, не отображается при добавлении записей в существующую таблицу.
9.
Щелкните столбец в нижней части окна мастера, чтобы отобразить свойства
соответствующего поля. Просмотрите и при необходимости измените имя и тип данных
конечного поля.
В Access выполняется проверка первых 25 строк каждого столбца, чтобы определить заданный по умолчанию тип данных для соответствующего поля. Если первые 25
строк любого столбца на листе содержат значения разных типов, например, текст и числа,
мастер предлагает использовать тип данных, совместимый со всеми или большинством
значений столбца — как правило, это текстовый тип данных. Хотя есть возможность выбрать другой тип данных, следует помнить, что значения, не совместимые с этим типом,
пропускаются или преобразуются неправильно.
10.
Чтобы создать индекс для поля, укажите для свойства индекс значение Да.
Чтобы пропустить весь исходный столбец, установите флажок не импортировать (пропустить) поле. Затем нажмите кнопку Далее.
11.
Если записи добавляются в новую таблицу, мастер предлагает указать первичный ключ для таблицы. При выборе варианта автоматически создать ключ Access
добавляет поле счетчика в первое поле конечной таблицы и автоматически заполняет его
уникальными кодами, которые начинаются с 1. Нажмите кнопку Далее.
Примечание. Страница мастера, на которой можно указать сведения об импортируемых полях, не отображается при добавлении записей в существующую таблицу.
42
12.
В Access будет отображена последняя страница мастера. Если записи импортируются в новую таблицу, укажите имя конечной таблицы. Введите имя таблицы в
поле Импорт в таблицу. Если такая таблица уже существует, отображается запрос о перезаписи содержимого этой таблицы. Нажмите кнопку Да, чтобы продолжить, или кнопку
Нет, чтобы указать другое имя конечной таблицы.
Назначение кнопки Дополнительно
Кнопка Дополнительно в мастере импорта текстовых файлов служит для
создания или открытия спецификаций импорта в формате, который использовался
в предыдущих версиях Access. Кнопку Дополнительно рекомендуется использовать, только если спецификации импорта, созданные в предыдущих версиях Access,
требуется использовать в Office Access 2007. Если требуется сохранить сведения об
операции импорта, следует выполнить шаги с 13 по 20. Спецификации импорта, созданные в предыдущих версиях Access, не совместимы со спецификациями, созданными в Office Access 2007.
13.
Для импорта данных нажмите кнопку Готово.
В Access предпринимается попытка импортировать данные. Если все данные или
хотя бы их часть импортированы, в мастере отображается диалоговое окно, в котором
указывается состояние операции импорта. Если же операция закончилась сбоем, в Access
отображается сообщение об ошибке Ошибка при попытке импорта файла.
14.
Откройте конечную таблицу в режиме таблицы. Сравните данные в таблице
с исходным файлом, чтобы убедиться в их правильности.
Сохранение параметров импорта как спецификации.
1.
На последней странице мастера импорта текстовых файлов установите флажок Сохранить шаги импорта.
Появится набор дополнительных элементов
2.
В поле Сохранить как задайте имя спецификации импорта.
3.
При необходимости введите описание в поле Описание.
4.
Нажмите кнопку Сохранить импорт.
-илиЕсли требуется выполнять операцию через определенные временные интервалы
(например, еженедельно или ежемесячно), установите флажок Создать задачу Outlook и
нажмите кнопку Сохранить импорт. В результате создается задача Microsoft Office
Outlook 2007, которая позволяет выполнять спецификацию повторно.
Если не создать задачу Office Outlook 2007, приложение Access сохранит спецификацию. Если создать задачу Outlook, появится диалоговое окно Импорт-имя - Задача.
Чтобы получить сведения об использовании этого диалогового окна, выполните следующие шаги.
Примечание. Если программа Outlook не установлена, при нажатии кнопки Сохранить импорт в Access отображается сообщение об ошибке. Если Outlook не настроен,
в Access открывается мастер настройки Outlook. Для настройки Outlook следуйте инструкциям мастера.
Создание задачи Outlook.
1.
В диалоговом окне Импорт-имя - Задача программы Outlook просмотрите
и измените параметры задачи, такие как Срок и Напоминание.
Чтобы сделать задачу повторяющейся, установите флажок Повторение. На этом
рисунке показан планировщик задач с некоторыми типичными параметрами:
43
2.
Нажмите кнопку Сохранить и закрыть.
Выполнение сохраненной задачи.
1.
В области переходов Outlook выберите пункт Задачи и дважды щелкните
задачу, которую нужно выполнить.
2.
На вкладке Задача в группе Microsoft Office Access нажмите кнопку Выполнить импорт
.
3.
Откройте таблицу и проверьте содержимое.
Сведения о поиске отсутствующих и неверных значений см. в следующем разделе.
Разрешение вопросов, связанных с отсутствующими и неверными значениями
в импортированной таблице.
Сообщение Ошибка при попытке импорта файла указывает на то, что операция
завершилась сбоем. Если же после операции импорта отображается страница, на которой
предлагается сохранить сведения об операции, это означает, что данные успешно импортированы полностью или частично. В сообщении о состоянии указывается также имя таблицы ошибок, которая содержит описание всех ошибок, возникших в ходе операции импорта.
Важно отметить, что даже если в сообщении о состоянии указывается, что операция завершилась успешно, перед началом использования таблицы пользователь должен
просмотреть ее содержимое и структуру, чтобы убедиться в правильности всех данных.
Откройте конечную таблицу в режиме таблицы, чтобы убедиться в том, что в таблицу были успешно добавлены все данные. После этого откройте таблицу в режиме конструктора, чтобы проверить типы данных и параметры свойств для полей.
В приведенной ниже таблице дается описание шагов по разрешению вопросов, связанных с отсутствующими или неверными значениями.
Совет. Если при разрешении вопросов обнаружено лишь несколько отсутствующих значений, их можно добавить непосредственно в таблицу в режиме таблицы. Если же
отсутствует или импортирован неправильно целый столбец либо большой объем данных,
следует исправить исходный файл. После устранения всех возможных проблем необходимо повторно выполнить операцию импорта.
Вопрос
Решение
Значения 1 или 0
Если исходный файл содержит поле, в котором используются
только значения True или False либо «Да» или «Нет», и для
него был выбран логический тип данных, в таблице будут
отображаться значения -1 и 0. Откройте таблицу в режиме
конструктора и задайте для свойства Формат значение Истина/Ложь или Да/нет.
Поля, одновременно до- В Access импорт нескольких значений в одно поле не подпускающие
несколько держивается. Список значений рассматривается как одно зназначений
чение и помещается в текстовое поле, разделенное точкой с
44
запятой.
В случае усечения данных в столбце попытайтесь увеличить
ширину столбца в режиме таблицы. Если устранить проблему
таким образом не удается, возможно причина в том, что тип
данных числового поля имеет значение Длинное целое вместо Двойное с плавающей точкой.
Отсутствующие данные в Импортируемые записи содержат повторяющиеся значения,
полях первичного ключа которые нельзя поместить в поле первичного ключа конечной
или индексированных по- таблицы или в любое поле, у которого свойство Индексиролях
вано (Indexed) имеет значение Да (совпадения не допускаются) в базе данных Access. Удалите повторяющиеся значения в исходном файле и повторите операцию импорта.
Пустые значения
При открытии таблицы в режиме таблицы может оказаться,
что некоторые поля оставлены пустыми. Чтобы свести к минимуму число пустых значений в таблице или избавиться от
них совсем, выполните следующие действия:

Если первые 25 строк исходного файла содержат значения с разными типами данных, откройте исходный файл и
измените расположение строк таким образом, чтобы первые
25 строк не содержали смешанные значения. После этого повторите попытку импорта.

Заключите все нетекстовые значения, которые требуется сохранить как текстовые, в одинарные или двойные кавычки.

В ходе операции импорта выберите подходящий тип
данных для каждого поля. Если тип данных указан неправильно, весь столбец может содержать пустые или неверные
значения.
Кроме того, может потребоваться просмотреть таблицу ошибок, о которой говорится на последней странице мастера, в режиме таблицы. Таблица содержит три поля: «Ошибка», «Поле» и «Строка». В каждой строке содержатся данные об определенной
ошибке, и данные поля ошибки можно использовать при разрешении вопросов.
Полный список строк ошибок и советов по разрешению вопросов
Ошибка
Описание
Обрезание полей
Значение в поле превышает размер, заданный свойством Размер поля (FieldSize) этого поля.
Ошибка преобразования Значение в текстовом файле не соответствует типу данных потипа
ля. Это значение может быть заменено пустым или неверным
значением в конечном поле. Дополнительные сведения о разрешении этого вопроса см. в предыдущей таблице.
Нарушение уникально- Значение первичного ключа записи совпадает со значением,
сти ключа
уже имеющимся в таблице.
Нарушение условия на Значение противоречит
значению свойства
Условие
значение
(ValidationRule), заданному для этого поля или таблицы.
Пустое значение в обя- Пустое значение недопустимо для данного поля, поскольку его
зательном поле
свойство Обязательное (Required) имеет значение Да.
Пустое значение в поле Импортируемые данные содержат пустое значение (Null), и
счетчика
выполнялась попытка добавить его в поле счетчика.
Неинтерпретируемая
Текстовое значение содержит знак разделителя (как правило,
запись
это прямые кавычки). Если значение содержит знак разделителя, он должен содержаться в текстовом файле дважды; наприУсеченные данные
45
мер:
по 10 дискет 3 1/2"" в коробке
Связывание с текстовым файлом.
Связывание позволяет использовать данные из другого файла, не импортируя их.
В этом случае можно просматривать обновленные данные как в исходной программе, так
и в файле Access. При этом не требуется создавать и обновлять копию данных в Access.
Если вместо копирования текстового файла в базу данных Access требуется использовать
его для выполнения запросов и создания отчетов, следует использовать не операцию импорта, а функцию связывания с текстовым файлом.
При связывании с текстовым файлом в Access создается новая таблица, которая
связывается с исходным файлом. Все изменения, вносимые в исходный файл, применяются к связанной таблице. При этом изменение данных таблицы в Access не разрешается.
Если требуется внести изменения в содержимое или структуру файла, следует открыть
исходный файл и изменить его.
Стандартные сценарии связывания с текстовым файлом из Access.

Используется программа, которая сохраняет выходные данные в текстовом
формате, однако эти данные требуется использовать для анализа и создания отчетов в
других приложениях, в том числе в Access.

Данные, необходимые для работы, обновляются сотрудниками другого отдела или рабочей группы. Необходимо просматривать обновленные данные, но не требуется изменять и обновлять копию этих данных.
Первое связывание с текстовым файлом.

При связывании с текстовым файлом в Access создается новая таблица, которая называется также связанной таблицей. В ней отображаются данные исходного файла; при этом они не сохраняются в базе данных.

Текстовый файл невозможно связать с существующей таблицей базы данных. Другими словами, операция связывания не позволяет добавлять данные в существующую таблицу.

База данных может содержать несколько связанных таблиц.

Все изменения, вносимые в исходный файл, автоматически отображаются в
связанной таблице. Однако содержимое и структура связанной таблицы Access недоступны для изменения.

При открытии текстового файла в Access создается пустая база данных, и
автоматически запускается мастер связи с текстом.
Шаги по созданию связи с текстовым файлом.
1.
Найдите текстовый файл и откройте его в текстовом редакторе, например, в
Word или блокноте.
Обратите внимание, что в ходе одной операции связывания можно создать связь
лишь с одним текстовым файлом. Чтобы создать связь с несколькими текстовыми файлами, операцию связывания следует повторить для каждого файла.
2.
Просмотрите данные исходного файла и выполните необходимые действия в
соответствии с приведенной ниже таблицей.
Элемент
Описание
С разделителями Убедитесь, что содержимое файла соответствует выбранному форили фиксирован- мату. Если это файл с разделителями, найдите разделитель. Если это
ной длиной запи- файл с фиксированной длиной записей, убедитесь, что длина значесей
ния поля одинакова во всех записях.
Ограничители
Некоторые файлы с разделителями могут содержать значения полей,
строк
заключенные в одинарные или двойные кавычки, как показано ниже:
"Андрей Гладких",25,05.04.2006,"Нижний Новгород"
46
"Евгений Куликов",27,2000,"Самара"
Знак, используемый для ограничения значения поля, называется
ограничителем строк. Ограничители не являются обязательными, но
их рекомендуется использовать, если:

Разделитель поля является частью значения. Например, если в
качестве разделителя используется запятая, которая входит в допустимое значение Нижний Новгород, Самара, это значение следует
окружить ограничителями, например: "Нижний Новгород, Самара".

Нетекстовые значения, такие как 0452934 и 0034539, требуется обрабатывать в Access как текстовые и сохранять в текстовом поле.
В ходе операции связывания можно указать, используется ли в файле ограничитель, и, если он используется, задать соответствующий
знак.
Убедитесь в том, что в файле используется один ограничитель строк
и что он применяется только к текстовым значениям.
Число полей
Число исходных полей не должно превышать 255, т. к. Access поддерживает не более 255 полей в таблице.
Пропуск записей и Можно пропустить некоторые поля, но нельзя пропустить записи.
полей
Пустые строки и Удалите все лишние пустые строки из файла. При наличии пустых
поля
полей попробуйте добавить в них отсутствующие данные в исходном файле.
Лишние знаки
Проверьте файл и удалите лишние знаки, такие как знаки табуляции,
перевода строки и возврата каретки.
Типы данных
Чтобы избежать возникновения ошибок во время операции связывания, следует убедиться, что тип данных всех исходных полей в одной строке совпадает. Access считывает первые 25 строк файла, чтобы определить тип данных для полей таблицы. Настоятельно рекомендуется проверить, что первые 25 исходных строк не содержат
данные разных типов. Кроме того, необходимо убедиться, что нетекстовые значения, которые требуется обрабатывать как текстовые,
заключены в одинарные или двойные кавычки.
Если исходный файл содержит смешанные значения в строках, следующих за 25-ой строкой, в ходе операции связывания могут возникнуть ошибки или неправильно преобразованные значения.
Имена полей
Если файл с разделителями не содержит имена полей, их рекомендуется указать в первой строке. В ходе операции связывания можно
выбрать обработку значений в первой строке как имен полей. Однако при импорте файлов с фиксированной длиной записей такая
функция в Access недоступна.
3.
Закройте исходный файл, если он открыт.
4.
Откройте базу данных, в которой требуется создать связь. Убедитесь, что
база данных доступна не только для чтения, и что есть необходимые права на изменение
базы данных.
Если ни одна из существующих баз данных не подходит для сохранения связи, создайте пустую базу данных.
5.
На вкладке Внешние данные в группе Импорт выберите команду Текстовый файл.
Примечание. Команды Импорт доступны только для открытой базы данных.
47
6.
В диалоговом окне Внешние данные - Текстовый файл укажите имя текстового файла, который содержит данные для связывания, в поле Имя файла.
7.
Выберите вариант Создать связанную таблицу для связи с источником
данных и нажмите кнопку ОК.
Будет открыт мастер связи с текстом, который позволяет выполнить процедуру
связывания.
8.
Access считывает содержимое файла и предлагает предпочтительную структуру. Если в файле используются специальные знаки для разделения полей, следует выбрать вариант с разделителями. Если импортируется файл с фиксированной длиной записей, выберите вариант фиксированная ширина полей.
9.
Нажмите кнопку Далее.
10.
В зависимости от выбранного варианта (файл с разделителями или фиксированной шириной полей) мастер отображает нужные сведения на следующей странице.
Файлы с разделителями. Выберите или укажите знак разделителя для значений
полей. Если в файле используется ограничитель строк, выберите в поле Ограничитель
текста: значение " (двойные кавычки) или ' (одинарные кавычки). Если первая строка исходного файла содержит имена полей, выберите вариант Первая строка содержит имена
полей. Затем нажмите кнопку Далее.
Файлы с фиксированной шириной полей. В мастере отображается содержимое
файла. Если Access обнаруживает столбцы данных, для разделения полей вставляются
вертикальные черты. Просмотрите предлагаемую мастером структуру и при необходимости добавить, удалить или исправить строки следуйте инструкциям мастера. Затем нажмите кнопку Далее.
11.
На следующей странице мастера будут отображены свойства полей. Щелкните столбец в нижней части страницы мастера, чтобы отобразить свойства соответствующего поля. Просмотрите и при необходимости измените имя и тип данных конечного
поля.
В Access выполняется проверка первых 25 строк каждого столбца, чтобы определить заданный по умолчанию тип данных для соответствующего поля. Если первые 25
строк любого столбца на листе содержат значения разных типов, например, текст и числа,
мастер предлагает использовать тип данных, совместимый со всеми или большинством
значений столбца — как правило, это текстовый тип данных. Хотя есть возможность выбрать другой тип данных, следует помнить, что значения, не совместимые с этим типом,
приводят к возникновению ошибок или преобразуются неправильно.
12.
Нажмите кнопку Далее.
13.
На последней странице мастера укажите имя связанной таблицы и нажмите
кнопку Готово. Если таблица с указанным именем существует, будет отображен запрос на
перезапись существующей таблицы. Нажмите кнопку Да, чтобы перезаписать файл, или
кнопку Нет, чтобы задать другое имя файла.
Access предпримет попытку создать связанную таблицу. В случае успешного создания таблицы будет отображено сообщение Завершено связывание таблицы.... Откройте связанную таблицу и просмотрите поля и данные, чтобы убедиться в их правильности.
Разрешение вопросов, связанных со значениями #Число! и другими неверными значениями в связанной таблице
Даже после отображения сообщения Завершено связывание таблицы следует открыть таблицу в режиме таблицы и проверить, что все строки и столбцы содержат правильные данные.
При наличии в таблице ошибок или неверных данных необходимо выполнить действия, описанные в приведенной ниже таблице, и повторить попытку связывания. Следует
помнить, что добавить значения непосредственно в связанную таблицу невозможно, т. к.
она доступна только для чтения.
48
Вопрос
Решение
Значения -1 или Если исходный файл содержит поле, в котором используются только
0
значения «Истина» или «Ложь» либо «Да» или «Нет», и для него был
выбран тип данных Да/Нет , в таблице будут отображаться значения -1
или 0. Откройте таблицу в режиме конструктора и задайте для свойства Формат (Format) значение Истина/Ложь или Да/Нет.
Поля, одновре- При импорте данных в новую таблицу Access импорт нескольких знаменно допуска- чений в одно поле не поддерживается. Список значений рассматривающие несколько ется как одно значение и помещается в текстовое поле, значения раззначений
деляются точкой с запятой.
Усеченные дан- В случае усечения данных в столбце попытайтесь увеличить ширину
ные
столбца в режиме таблицы. Если устранить проблему таким образом
не удается, возможно причина в том, что тип данных для числового
поля имеет значение «Длинное целое» вместо «Двойное с плавающей
точкой».
#Число!
При открытии таблицы в режиме таблицы может оказаться, что некоторые поля содержат значение #Число!. Чтобы свести к минимуму
число пустых значений в таблице или избавиться от них совсем, выполните следующие действия:

Заключите все нетекстовые значения, которые требуется сохранить как текстовые, в одинарные или двойные кавычки.

В ходе операции связывания выберите подходящий тип данных
для каждого поля. Если выбран неверный тип данных, весь столбец
может содержать только значения #Число во всех строках.
В приведенной ниже таблице содержится список случаев, в которых
будут появляться значения ошибки #Число!.
Тип отсутствующих значений
Текст
Дата
Числовой
Тип конечДействие
ного поля
Числовое
Замените все текстовые данные
поле или по- значениями, соответствующими
ле даты
типу данных конечного поля, и
повторите попытку связывания.
Числовое
Замените все значения даты чисполе
ловыми значениями и повторите
попытку связывания.
Поле даты
Замените все числовые значения
значениями даты и повторите
попытку связывания.
Экспорт данных в Word.
Из базы данных Microsoft Office Access 2007 данные можно экспортировать в документ Microsoft Office Word 2007 с помощью мастера экспорта.
Экспорт данных в Word: основы.
Можно экспортировать в Office Word 2007 таблицу, запрос, форму или отчет. При
экспорте объекта с помощью мастера экспорта Office Access 2007 создает копию данных
этого объекта в файле Microsoft Word формата RTF. Отображаемые поля и записи таблиц,
запросов и форм экспортируются в документ Word в виде таблицы. Мастер экспортирует
данные отчета и их представление, пытаясь обеспечить как можно более точное соответствие документа Word отчету.
49
Запуск операции в Access. Для экспорта данных из Access в Word необходимо открыть приложение Access. В приложении Word нет средства импорта данных из
базы данных Access. Можно также сохранить базу данных или таблицу Access в виде документа Word с помощью команды Сохранить как в приложении Access.

Объекты для экспорта. Можно экспортировать таблицу, запрос, форму или
отчет. Можно также экспортировать отдельные записи, выбранные в определенном представлении. Нельзя экспортировать макросы и модули. При экспорте формы или таблицы с
подчиненными формами или таблицами экспортируется только главная форма или таблица. Все подчиненные формы и подтаблицы следует экспортировать в Word отдельно. При
экспорте отчета, напротив, все подчиненные формы и отчеты экспортируются вместе с
главным отчетом.

Результат операции. Мастер экспорта всегда экспортирует форматированные данные. Это означает, что экспортируются только видимые в объекте или представлении поля и записи, а также параметры формата отображения. Столбцы и записи, скрытые из-за применения фильтра, не экспортируются. Макет отчета при экспорте сохраняется.

Слияние с имеющимся документом. При экспорте данных из приложения
Access в документ Word всегда создается новый файл Word. Если требуется вставить данные в имеющийся документ Word, необходимо сначала экспортировать данные из Access
в новый документ Word, а затем скопировать их из нового документа и вставить в имеющийся документ. Можно также скопировать строки непосредственно из таблицы, запроса,
формы или отчета Access и вставить их в имеющийся документ.
Экспорт данных в Word.
Процесс экспорта данных в документ Word включает следующие основные этапы:

подготовку исходных данных к экспорту. На этом этапе необходимо убедиться, что данные не содержат ошибок, а также решить, экспортировать все данные в исходной таблице или их часть;

запуск мастера экспорта;

при необходимости — сохранение параметров в виде спецификации экспорта для дальнейшего использования.
Подготовка к экспорту.
1.
Откройте исходную базу данных.
2.
В области переходов выделите объект, который содержит данные для экспорта.
Это может быть таблица, запрос, форма или отчет.
3.
Просмотрите исходные данные, чтобы убедиться в отсутствии индикаторов
(треугольников зеленого цвета) или значений ошибок, например #Число!.
Устраните все ошибки до экспорта данных в Word. В противном случае значения
ошибки будут заменены значениями Null.
4.
Если конечный документ Word существует и открыт, закройте его перед выполнением операции. Перед перезаписью файла мастер запрашивает подтверждение.
Примечание. Добавление данных в существующий документ Word невозможно.
5.
Если требуется экспортировать только часть таблицы, запроса или формы,
откройте нужный объект в базе данных и выделите записи для экспорта.
Экспорт данных.
1.
На вкладке Внешние данные в группе Экспорт выберите команду Word.

Примечание. Команды группы Экспорт доступны только для открытой базы
данных.
2.
В мастере экспорта укажите имя конечного файла.
50
3.
Мастер всегда экспортирует форматированные данные. Если требуется просмотреть документ Word после завершения операции экспорта, установите флажок Открыть целевой файл после завершения операции экспорта.
4.
Если записи для экспорта были выделены до запуска операции, можно установить флажок Экспортировать только выбранные записи. Если же требуется экспортировать все отображаемые записи, флажок необходимо снять.
Примечание. Если записи не выделены, этот флажок недоступен (отображается
затененным).
5.
Нажмите кнопку ОК.
6.
Если конечный документ уже существует, отображается диалоговое окно, в
котором нужно нажать кнопку Да, чтобы перезаписать файл. Чтобы изменить имя конечного файла, нажмите кнопку Нет. Затем снова нажмите кнопку ОК.
Access выполнит экспорт данных и откроет конечный документ в программе Word,
в зависимости от параметров экспорта, указанных в мастере. Кроме того, на последней
странице мастера будет отображено состояние операции. Если нужно сохранить параметры импорта, выполните описанные ниже действия.
Сохранение параметров экспорта.
1.
На последней странице мастера экспорта установите флажок Сохранить
шаги экспорта.
Появится набор дополнительных элементов управления.
2.
В диалоговом окне Сохранить как введите имя для спецификации экспорта.
3.
При необходимости введите описание в поле Описание.
4.
Нажмите кнопку Сохранить экспорт.
или
Если требуется выполнять операцию экспорта через определенные временные интервалы, например еженедельно или ежемесячно, установите флажок Создать задачу
Outlook и нажмите кнопку Сохранить экспорт. В результате создается задача Microsoft
Office Outlook 2007, которая позволяет выполнять спецификацию в дальнейшем.
Если задача Outlook не создана, Access сохраняет спецификацию. Если выбрано создание задачи Outlook, Access отображает диалоговое окно Экспорт-имя — Задача. Чтобы получить сведения об использовании этого диалогового окна, перейдите к следующему этапу.
Примечание. Если программа Outlook не установлена, при нажатии кнопки Сохранить экспорт в Access отображается сообщение об ошибке. Если программа Outlook
не настроена, в Access открывается мастер настройки Outlook. Для настройки Outlook следуйте инструкциям мастера.
Создание задачи Outlook.
1.
В диалоговом окне Экспорт-имя — Задача программы Outlook просмотрите и измените параметры задачи, такие как Срок и Напоминание.
Чтобы сделать задачу повторяющейся, установите флажок Повторение. На следующем рисунке показан планировщик задач Outlook с типичными параметрами.
51
2.
Закончив настройку параметров, нажмите кнопку Сохранить и закрыть.
Выполнение сохраненной задачи.
1.
В области переходов Outlook нажмите кнопку Задачи и дважды щелкните
задачу, которую нужно выполнить.
2.
На вкладке Задача в группе Microsoft Office Access нажмите кнопку Выполнить экспорт
.
3.
Откройте текстовый файл и проверьте содержимое файла.
Сведения о поиске отсутствующих и неверных значений см. в следующем разделе.
Общие сведения об экспорте объектов Access в Word.
В следующей таблице описано, как Access экспортирует разные объекты и значения в Word. Возможно, это поможет определить причину неполадки, если операция экспорта будет выполняться не так, как ожидается.
Элемент
Факторы экспорта
Имена полей
При экспорте таблиц, запросов и форм имена полей помещаются в первую строку таблицы в документе Word. В случае
экспорта отчета расположение имен полей зависит от макета
отчета.
Поля, одновременно до- Поле, одновременно допускающее несколько значений, экспускающие
несколько портируется из Access в один столбец в Word. Значения раздезначений
ляются запятыми (,).
Рисунки, объекты и вло- Все графические элементы, такие как эмблемы, содержимое
жения
полей объектов OLE и вложения, которые содержатся в исходных данных, не экспортируются.
Диаграммы
Объекты Microsoft Graph не экспортируются.
Выражения
Выражения не экспортируются в документ Word. Экспортируются только результаты выражений.
Подчиненные формы и При экспорте формы или таблицы экспортируется только
подтаблицы
главная форма или таблица. Для всех подчиненных форм и
подтаблиц необходимо повторно выполнять операцию экспорта.
ЗАДАНИЕ:
1. Выберите одну из трех баз данных («Клиенты и заказы», «Музей», «Спортивный клуб») по своему усмотрению.
2. Для выбранной базы данных:
1) Экспортируйте в Word все таблицы.
2) Добавьте в режиме Word по 5 записей в каждую таблицу.
3) Импортируйте добавленные записи из Word в конец соответствующих таблиц Access.
4) Установите связь любой из таблиц БД с текстовым файлом.
52
ПРАКТИЧЕСКАЯ РАБОТА № 7:
ОБМЕН ДАННЫМИ МЕЖДУ ПРИЛОЖЕНИЯМИ ACCESS И EXCEL.
Импорт или связывание данных в книге Excel.
Существуют различные способы импорта данных из книги Microsoft Office Excel
2007 в Microsoft Office Access 2007. Можно копировать данные с открытого листа и вставить их в таблицу, импортировать лист в новую или существующую таблицу либо связать
лист с базой данных Access.
Общее представление об импорте данных из Excel.
Если требуется сохранить данные одного или нескольких листов Excel в Access,
следует импортировать содержимое листа в новую или существующую таблицу Access.
При импорте данных в Access создается их копия в новой или существующей таблице;
при этом исходный файл Excel не изменяется.
Стандартные сценарии импорта данных Excel в Access.

Опытному пользователю Excel требуется использовать Access для работы с
данными. Для этого необходимо переместить данные из листов Excel в одну или несколько новых таблиц Access.

В отделе или рабочей группе используется Access, но иногда данные поступают в формате Excel, и их необходимо объединять с базами данных Access. Требуется
выполнять импорт полученных листов Excel в базу данных.

Пользователь применяет Access для управления данными, однако получает
еженедельные отчеты от остальных участников команды в виде книг Excel. Требуется организовать процесс импорта таким образом, чтобы данные импортировались в базу данных каждую неделю в заданное время.
Первый импорт данных из Excel.

Сохранить книгу Excel в виде базы данных Access невозможно. В Excel не
предусмотрена функция создания базы данных Access с данными Excel.

При открытии книги Excel в Access (для этого следует открыть диалоговое
окно Открытие файла, выбрать в поле со списком Файлы Microsoft Office Excel значение Файлы Microsoft Office Excel и выбрать файл) создается ссылка на эту книгу, но
данные не импортируются. Связывание с книгой Excel кардинально отличается от импорта листа в базу данных.
Импорт данных из Excel.
В этом разделе описано, как подготовиться к операции импорта и выполнить ее, а
также описано, как сохранить параметры импорта в виде спецификации для дальнейшего
использования. Помните, что данные можно одновременно импортировать только из одного листа. Нельзя импортировать все данные из книги сразу.
Подготовка листа.
1.
Найдите исходный файл и выделите лист с данными, которые требуется импортировать в Access. Если необходимо импортировать лишь часть данных листа, можно
определить именованный диапазон, который содержит только те ячейки, которые требуется импортировать.
Создание именованного диапазона в Excel
1.
Перейдите в Excel и откройте лист, который нужно импортировать.
2.
Выделите диапазон ячеек, содержащих данные, которые необходимо
импортировать.
3.
Щелкните выделенный диапазон правой кнопкой мыши и выберите
команду Имя диапазона.
4.
В диалоговом окне Создание имени укажите имя диапазона в поле
Имя и нажмите кнопку ОК.
53
Обратите внимание, что в ходе одной операции импорта можно импортировать
лишь один лист. Чтобы импортировать данные нескольких листов, операцию импорта
следует повторить для каждого листа.
2.
Просмотрите исходные данные и выполните необходимые действия в соответствии с приведенной ниже таблицей.
Элемент
Описание
Число столб- Число исходных столбцов для импорта не должно превышать 255-ти, т. к.
цов
Access поддерживает не более 255-ти полей в таблице.
Пропуск
В исходный лист или именованный диапазон рекомендуется включать
столбцов и только те строки и столбцы, которые требуется импортировать.
строк
Строки В ходе операции импорта невозможна фильтрация или пропуск
строк.
Столбцы В ходе операции экспорта пропуск столбцов невозможен, если
данные добавляются в существующую таблицу.
Табличный
Убедитесь в том, что ячейки имеют табличный формат. Если лист или
формат
именованный диапазон содержит объединенные ячейки, их содержимое
помещается в поле, соответствующее крайнему левому столбцу, а остальные поля остаются пустыми.
Пустые
Удалите все лишние пустые столбцы и строки из листа или диапазона.
столбцы,
При наличии пустых ячеек добавьте в них отсутствующие данные. Если
строки
и планируется добавлять записи к существующей таблице, убедитесь, что
ячейки
соответствующие поля таблицы допускают использование пустых (отсутствующих или неизвестных) значений. Поле допускает использование пустых значений, если свойство Обязательное поле (Required) имеет значение Нет, а свойство Условие на значение (ValidationRule) не запрещает пустые значения.
Значения
Если одна или несколько ячеек на листе или в диапазоне содержат значеошибок
ния ошибок, например #ЧИСЛО и #ДЕЛ, исправьте эти значения до
начала операции импорта. Если исходный лист или диапазон содержит
значения ошибок, соответствующее поле таблицы Access остается пустым.
Тип данных
Чтобы исключить возникновение ошибок в ходе импорта, убедитесь в том,
что все исходные столбцы имеют одинаковый тип данных в каждой строке. Access считывает первые восемь исходных строк и определяет по ним
тип данных для полей таблицы. Настоятельно рекомендуется исключить в
первых восьми строках всех столбцов значения разных типов.
Рекомендуется также отформатировать все исходные столбцы в Excel и
назначить им определенный формат данных перед началом операции импорта. Форматирование является необходимым, если столбец содержит
значения с различными типами данных. Например, столбец «Номер рейса» может содержать числовые и текстовые значения, такие как 871, AA90
и 171. Чтобы исключить отсутствующие или неверные значения, следует
выполнить следующие действия.
1.
Щелкните столбец правой кнопкой мыши и выберите команду
Формат ячеек.
2.
На вкладке Числовой в группе Категория выберите формат. Для
столбца «Номер рейса» лучше выбрать значение Текстовый.
3.
Нажмите кнопку ОК.
Если исходные столбцы отформатированы, но все же содержат смешанные значения в строках, следующих за восьмой строкой, в ходе операции
импорта значения могут быть пропущены или неправильно преобразованы.
Первая стро- Если первая строка листа или именованного диапазона содержит имена
54
ка
столбцов, в Access можно указать, что данные первой строки должны рассматриваться как имена полей в ходе операции импорта. Если исходный
лист или диапазон не содержит имен, рекомендуется добавить их в исходные данные до операции импорта.
Примечание. Если планируется добавить данные в существующую таблицу, убедитесь, что имя каждого столбца в точности соответствует имени
поля. Если имя столбца отличается от имени соответствующего поля в
таблице, операция импорта завершится сбоем. Чтобы просмотреть имена
полей, откройте таблицу в режиме конструктора в Access.
3.
Закройте исходную книгу, если она открыта. В случае, если исходный файл
остается открытым в ходе операции импорта, могут возникнуть ошибки преобразования
данных.
Подготовка конечной базы данных.
1.
Откройте базу данных Access, в которой будут храниться импортируемые
данные. Убедитесь, что база данных доступна не только для чтения и что есть права на ее
изменение.
-илиЕсли ни одна из существующих баз данных не подходит для хранения импортируемых данных, создайте пустую базу данных. Для этого выполните следующие действия.
Нажмите кнопку Microsoft Office
, а затем выберите команду Создать.
2.
Перед началом операции импорта следует определить, в какой таблице будут храниться данные: новой или существующей.
Создание новой таблицы. Если данные требуется сохранить в новой таблице, в
Access создается таблица, в которую добавляются импортируемые данные. Если таблица с
указанным именем уже существует, в Access содержимое существующей таблицы перезаписывается импортируемыми данными.
Добавление в существующую таблицу. Если данные добавляются в существующую таблицу, строки из файла Excel добавляются в указанную таблицу.
Следует помнить, что ошибки в ходе операции добавления зачастую объясняются
тем, что исходные данные не соответствуют структуре и параметрам полей в конечной
таблице. Чтобы избежать таких ошибок, откройте таблицу в режиме конструктора и проверьте следующие параметры.

Первая строка. Если первая строка исходного листа или диапазона не содержит заголовки столбцов, убедитесь, что расположение и тип данных каждого столбца
соответствуют нужному полю таблицы. Если же первая строка содержит заголовки столбцов, совпадение порядка следования столбцов и полей необязательно, но имя и тип данных каждого столбца должны в точности совпадать с именем и типом данных соответствующего поля.

Отсутствующие или лишние поля. Если одно или несколько полей исходного листа отсутствуют в конечной таблице, их следует добавить до начала операции импорта. Если же таблица содержит поля, которые отсутствуют в исходном файле, их не
требуется удалять из таблицы, если они допускают использование пустых значений.
Совет. Поле допускает использование пустых значений, если его свойство Обязательное поле (Required) имеет значение Нет, а свойство Условие на значение
(ValidationRule) не запрещает пустые значения.

Первичный ключ. Если таблица содержит поле первичного ключа, исходный лист или диапазон должен содержать столбец со значениями, совместимыми с полем
первичного ключа. Кроме того, импортируемые значения ключа должны быть уникальными. Если импортируемая запись содержит значение первичного ключа, которое уже
существует в таблице, операция импорта завершается, и отображается сообщение об
ошибке.
55
Индексированное поле. Если свойство Индексировано поля таблицы имеет значение Да (без повторов), соответствующий столбец исходного листа или диапазона
должен содержать уникальные значения.
Для выполнения операции импорта перейдите к следующим действиям.
Запуск операции импорта.
1.
На вкладке Внешние данные в группе Импорт выберите команду Excel.

Примечание. Вкладка Внешние данные становится доступной, только если открыта база данных.
2.
В диалоговом окне Внешние данные - Электронная таблица Excel в поле
Имя файла следует указать имя файла Excel, который содержит данные для импорта.
-илиЧтобы указать необходимый для импорта файл, нажмите кнопку Обзор и используйте диалоговое окно Открытие файла.
3.
Укажите способ сохранения импортируемых данных.
Чтобы сохранить данные в новой таблице, выберите вариант Импортировать данные источника в новую таблицу в текущей базе данных. Будет отображено окно для
указания имени таблицы.
Чтобы добавить данные в существующую таблицу, выберите вариант Добавить
копию записей в конец таблицы и выберите таблицу из раскрывающегося списка. Этот
вариант недоступен, если база данных не содержит таблиц.
4.
Нажмите кнопку ОК.
Будет открыт мастер импорта электронных таблиц, с помощью которого выполняется процесс импорта. Перейдите к следующим шагам.
Использование мастера импорта электронных таблиц.
1.
На первой странице мастера выберите лист, содержащий данные для импорта, и нажмите кнопку Далее.
2.
На второй странице мастера выберите листы или именованные диапазоны, затем выберите лист или именованный диапазон, который необходимо импортировать, и нажмите кнопку Далее.
3.
Если первая строка исходного листа или диапазона содержит имена полей,
выберите вариант Первая строка содержит заголовки столбцов и нажмите кнопку Далее.
Если данные импортируются в новую таблицу, заголовки столбцов используются в
Access в качестве имен полей в таблице. Эти имена можно изменить в ходе операции импорта или после ее завершения. Если данные добавляются к существующей таблице, убедитесь, что заголовки столбцов исходного листа в точности соответствуют именам полей
конечной таблицы.
Если данные добавляются к существующей таблице, перейдите к шагу 6. Если данные добавляются в новую таблицу, выполните оставшиеся шаги.
4.
Мастер предложит просмотреть свойства полей. Щелкните столбец в нижней части страницы, чтобы отобразить свойства нужного поля. При необходимости выполните следующие действия.

Просмотрите и измените имя и тип данных конечного поля.
В Access выполняется проверка первых восьми строк каждого столбца, чтобы
определить тип данных для соответствующего поля. Если первые восемь строк любого
столбца на листе содержат значения разных типов, например текст и числа, мастер предлагает использовать тип данных, совместимый со всеми значениями столбца — как правило, это текстовый тип данных. Хотя есть возможность выбрать другой тип данных, следует помнить, что значения, несовместимые с этим типом, будут пропущены или преобразованы неправильно в процессе импорта.
56
Чтобы создать индекс для поля, укажите для свойства Индексировано
(Indexed) значение Да.

Чтобы пропустить весь исходный столбец, установите флажок Не импортировать (пропустить) поле.
После этого нажмите кнопку Далее.
5.
На следующем экране задайте первичный ключ для таблицы. При выборе
варианта автоматически создать ключ Access добавляет поле счетчика в качестве первого поля конечной таблицы и автоматически заполняет его уникальными значениями кодов, начиная с 1. После этого нажмите кнопку Далее.
6.
В последнем окне мастера укажите имя конечной таблицы. Введите имя
таблицы в поле Импорт в таблицу. Если такая таблица уже существует, в Access отображается запрос о перезаписи содержимого этой таблицы. Нажмите кнопку Да, чтобы продолжить, или кнопку Нет, чтобы указать другое имя конечной таблицы. Затем нажмите
кнопку Готово, чтобы импортировать данные.
Если импорт части или всех данных в Access был завершен успешно, в мастере
отображается страница с состоянием операции импорта. Кроме того, пользователь может
сохранить сведения об операции в виде спецификации для будущего использования. Если же операция закончилась сбоем, в Access отображается сообщение об ошибке Ошибка
при попытке импорта файла.
7.
Нажмите кнопку Да, чтобы сохранить сведения об операции для будущего
использования. Сохранение сведений позволяет выполнять операцию повторно без использования мастера.
Сохранение параметров импорта в виде спецификации.
1.
В поле Сохранить как введите имя для спецификации импорта. При необходимости введите описание в поле Описание.
2.
Если требуется выполнять операцию через определенные временные интервалы, например, еженедельно или ежемесячно, установите флажок Создать задачу
Outlook. В результате создается задача Microsoft Office Outlook 2007, которая позволяет
выполнять спецификацию повторно.
3.
Нажмите кнопку Сохранить импорт.
Access запустит Outlook, если эта программа установлена.
Примечание. Если программа Outlook не установлена, в Access отображается сообщение об ошибке. Если Outlook не настроен, в Access открывается мастер запуска
Outlook. Для настройки Outlook следуйте инструкциям мастера.
4.
В программе Outlook просмотрите и измените параметры задачи, такие как
Срок и Напоминание.
Чтобы сделать задачу повторяющейся, установите флажок Повторение. На этом
рисунке изображен планировщик задач с некоторыми типичными параметрами.

5.
Нажмите кнопку Сохранить и закрыть.
57
Выполнение сохраненной задачи.
1.
В области переходов Outlook нажмите кнопку Задачи, затем дважды щелкните задачу, которую необходимо выполнить.
2.
На вкладке Задача в группе Microsoft Office Access нажмите кнопку Выполнить импорт
.
3.
Откройте конечную таблицу в режиме таблицы. Сравните данные в таблице
с исходным листом, чтобы убедиться в их правильности.
Разрешение вопросов, связанных с отсутствующими и неверными значениями.
Сообщение Ошибка при попытке импорта файла указывает на то, что операция
импорта завершилась сбоем. Если же после операции импорта отображается диалоговое
окно, в котором предлагается сохранить сведения об операции, это означает, что данные
успешно импортированы полностью или частично. В сообщении о состоянии указывается
также имя таблицы, которая содержит описание всех ошибок, возникающих в ходе операций импорта.
Важно отметить, что даже если в сообщении о состоянии указывается, что операция завершилась успешно, перед началом использования таблицы пользователь должен
просмотреть ее содержимое и структуру, чтобы убедиться в правильности всех данных.
Откройте конечную таблицу в режиме таблицы, чтобы убедиться в том, что в таблицу были добавлены все данные. После этого откройте таблицу в режиме конструктора,
чтобы проверить типы данных и параметры свойств для полей.
В приведенной ниже таблице дается описание шагов по разрешению вопросов, связанных с отсутствующими или неверными значениями.
Совет. Если при разрешении вопросов обнаружено лишь несколько отсутствующих значений, можно добавить их непосредственно в таблицу. Если же отсутствует или
импортирован неправильно целый столбец либо большой объем данных, следует исправить исходный файл. После устранения всех возможных проблем необходимо повторно
выполнить операцию импорта.
Вопрос
Решение
Графические
Графические элементы, такие как логотипы, диаграммы и рисунки, не
элементы
импортируются. Их следует добавить в базу данных вручную после завершения операции импорта.
Вычисляемые
Импортируются результаты вычисляемого столбца или ячейки, а не базначения
зовая формула. В ходе операции импорта можно указать тип данных,
совместимый с результатами формулы, например, числовой.
Значения TRUE Если исходный лист или диапазон включает столбец, который содерили FALSE и -1 жит только значения TRUE или FALSE, в Access для этого столбца соили 0
здается логическое поле, в которое вставляется значение -1 или 0. Если
же исходный лист или диапазон включает столбец, который содержит
только значения -1 или 0, в Access для этого столбца по умолчанию создается числовое поле. Чтобы избежать этой проблемы, можно изменить тип данных для логического поля в ходе операции импорта.
Поля, одновре- При импорте данных в новую или существующую таблицу Access не
менно допуска- поддерживает поля, одновременно допускающие несколько значений,
ющие несколько даже если исходный столбец содержит список значений, разделенных
значений
точкой с запятой (;). Список значений рассматривается как одно значение и помещается в текстовое поле.
Усеченные дан- В случае усечения данных в столбце таблицы Access попытайтесь увеные
личить ширину столбца в режиме таблицы. Если не удается решить
проблему с помощью этого способа, это означает, что объем данных в
числовом столбце Excel слишком велик для конечного поля в Access.
58
Например, в базе данных Access свойство FieldSize конечного поля
может иметь значение Байт, а длина исходных данных может превышать 255-ти знаков. Исправьте значения исходного файла и повторите
операцию импорта.
Формат
отоб- Чтобы обеспечить правильное отображение значений в режиме таблиражения
цы, может потребоваться изменить свойство Формат некоторых полей
в режиме конструктора. Ниже приведены примеры.

После завершения операции импорта логическое поле в режиме
таблицы отображает значения -1 и 0. Чтобы устранить эту проблему,
необходимо изменить значение свойства Формат для этого поля на
Да/Нет, чтобы разрешить отображение флажков.

Длинный и средний формат даты отображается в Access в виде
краткого формата даты. Чтобы устранить эту проблему, необходимо
открыть конечную таблицу в режиме конструктора в Access и изменить
свойство Формат для поля даты на Длинный формат даты или Средний формат даты.
Примечание. Если исходный лист содержит элементы формата RTF,
например, полужирный шрифт, подчеркивание или курсив, текст импортируется без форматирования.
Повторяющиеся Импортируемые записи могут содержать повторяющиеся значения, козначения
торые невозможно сохранить в поле первичного ключа в конечной таб(нарушение
лице или в поле, для которого свойство Индексировано имеет значеуникальности
ние Да (без повторов). Удалите повторяющиеся значения в исходном
ключа)
файле и повторите операцию импорта.
Сдвиг значений Значения полей дат, импортированных с листа Excel, оказываются
дат на 4 года
сдвинутыми на четыре года. В Excel для Windows используется система
дат 1900, в которой даты представляются целыми числами от 1 до
65380, соответствующими датам от 1 января 1900 до 31 декабря 2078. В
Excel для Macintosh используется система дат 1904, в которой даты
представляются целыми числами от 0 до 63 918, соответствующими
датам от 1 января 1904 до 31 декабря 2078.
Прежде чем импортировать данные, необходимо изменить систему дат
для книги Excel или после добавления данных необходимо выполнить
запрос на обновление, используя выражение [имя поля даты] + 1462
для корректировки дат.
Пустые значе- После завершения операции импорта может быть отображено сообщения
ние об ошибке, в котором говорится об удалении или потере данных в
ходе операции. Кроме того, при открытии таблицы в режиме таблицы
могут обнаружиться пустые поля. Если исходные столбцы в Excel не
отформатированы либо первые восемь строк содержат значения с разными типами данных, откройте исходный лист и выполните следующие
действия:

Отформатируйте исходные столбцы.

Переместите строки таким образом, чтобы первые восемь строк
каждого столбца не содержали значения с разными типами данных.

В ходе операции импорта выберите подходящий тип данных для
каждого поля. Если тип данных указан неправильно, после завершения
операции весь столбец может содержать пустые или неверные значения.
Описанные выше шаги позволяют свести к минимуму количество пустых значений. В приведенной ниже таблице содержится список случаев, в которых пустые значения будут появляться.
59
Тип отсутствующих значений
Текст
Конечный
объект импорта
Новая таблица
Тип конечного
поля
Поле даты
Решение
Замените все текстовые данные значениями даты и повторите
попытку
импорта.
Текст
Существующая Числовое
Замените все тектаблица
поле или стовые данные знаполе даты чениями, соответствующими
типу
данных конечного
поля, и повторите
попытку импорта.
Замена значе- Случайные пятизначные числа отображаются вместо фактических знаний дат число- чений дат в следующих случаях:
выми значения- 
Первые восемь строк исходного столбца на листе содержат
ми
только числовые значения, а последующие строки включают значения
дат, которые будут преобразованы неправильно.

Некоторые из первых восьми строк содержат значения дат, которые импортировались в числовые поля. Эти значения дат были преобразованы неправильно.
Чтобы избежать этой проблемы, замените значения дат числовыми значениями в исходном столбце и повторите попытку импорта.
В некоторых случаях, если столбец содержит в основном значения дат
и несколько текстовых значений, все значения дат отображаются в виде
случайных пятизначных чисел. Чтобы избежать этой проблемы, замените текстовые значения значениями дат и повторите попытку импорта.
Замена число- Случайные значения даты отображаются вместо фактических числовых
вых
значений значений в следующих случаях:
значениями да- 
Первые восемь строк исходного столбца содержат только значеты
ния даты, а последующие строки включают числовые значения, которые были преобразованы неправильно.

Некоторые из первых восьми строк содержат числовые значения, которые импортировались в поля даты. Эти числовые значения
были преобразованы неправильно.
Чтобы избежать этой проблемы, замените числовые значения значениями даты в исходном столбце и повторите попытку импорта.
Кроме того, может потребоваться просмотреть таблицу ошибок, о которой говорится на последней странице мастера, в режиме таблицы. Таблица содержит три поля: «Ошибка», «Поле» и «Строка». В каждой строке содержатся данные об определенной
ошибке, и данные поля «Ошибка» можно использовать при разрешении вопросов.
Полный список строк ошибок и советов по разрешению вопросов
Ошибка
Описание
Обрезание полей
Значение в поле превышает размер, заданный свойством
FieldSize этого поля.
Ошибка преобразования Значение на листе не соответствует типу данных поля. Это знатипа
чение может быть заменено пустым или неверным значением в
конечном поле. Дополнительные сведения о разрешении вопросов см. в предыдущей таблице.
60
Нарушение уникальности ключа
Нарушение условия на
значение
Пустое значение в обязательном поле
Пустое значение в поле
счетчика
Неинтерпретируемая
запись
Значение первичного ключа записи совпадает со значением,
уже имеющимся в таблице.
Значение противоречит значению свойства ValidationRule, заданному для этого поля или таблицы.
Пустое значение недопустимо для данного поля, поскольку его
свойство Обязательное поле (Required) имеет значение Да.
Импортируемые данные содержат пустое значение (NULL), и
выполнялась попытка добавить его в поле счетчика.
Текстовое значение содержит знак разделителя (как правило,
это прямые кавычки). Если значение содержит знак разделителя, он должен содержаться в текстовом файле дважды; например:
по 10 дискет 3 1/2"" в коробке
Связывание с данными Excel.
С помощью связывания базы данных Access с данными другой программы можно
использовать инструменты запросов и отчетов Access без необходимости поддерживать
копию данных Excel в базе данных.
При связывании с листом или именованным диапазоном Excel в Access создается
новая таблица, связанная с исходными ячейками. Все изменения, вносимые в исходные
ячейки в Excel, применяются к связанной таблице. При этом изменение данных таблицы в
Access не разрешается. Если требуется добавить, изменить или удалить данные, изменения следует вносить в исходный файл.
Стандартные сценарии связывания с листом Excel из Access.
Обычно связывание с файлом Excel (вместо импортирования) производится по следующим причинам.

Требуется хранить данные в листах Excel, но иметь возможность использовать удобные функции запросов и отчетов Access.

В отделе или рабочей группе используется Access, однако приходится также
работать с внешними источниками данных, такими как листы Excel. Создавать копии
внешних данных нецелесообразно, однако необходимо работать с данными в Access.
Первое связывание с листом Excel.

Обратите внимание, что в Excel невозможно создать связь с базой данных
Access.

При связывании с файлом Excel в Access создается новая таблица, которая
называется также связанной таблицей. В ней отображаются данные исходного листа или
именованного диапазона; при этом они не сохраняются в базе данных.

Данные Excel невозможно связать с существующей таблицей базы данных.
Это означает, что операция связывания не позволяет добавлять данные в существующую
таблицу.

База данных может содержать несколько связанных таблиц.

Все изменения, вносимые в исходные данные Excel, автоматически отображаются в связанной таблице. Однако содержимое и структура связанной таблицы Access
недоступны для изменения.

При открытии книги Excel (для этого в диалоговом окне Открытие файла
необходимо изменить значение поля со списком Тип файлов на Файлы Microsoft Office
Excel и выбрать нужный файл) в Access создается пустая база данных и автоматически
запускается мастер связи с электронной таблицей.
Подготовка данных Excel
1.
Найдите файл Excel и лист или диапазон, содержащий нужные данные. Если
нет необходимости создавать связь со всем листом, можно определить именованный диапазон, который включает только нужные ячейки.
61
Обратите внимание, что в ходе одной операции связывания можно создать связь
лишь с одним листом или диапазоном. Чтобы создать связь с несколькими местами в книге, следует повторить операцию связывания для каждого листа или диапазона.
2.
Просмотрите исходные данные и выполните необходимые действия в соответствии с приведенной ниже таблицей.
Элемент
Описание
Табличный
Убедитесь в том, что ячейки имеют табличный формат. Если диапазон
формат
содержит объединенные ячейки, их содержимое помещается в поле, соответствующее крайнему левому столбцу, а остальные поля остаются
пустыми.
Пропуск
Пропуск исходных столбцов и строк в ходе операции связывания не разстолбцов
и решается. Однако можно скрыть поля и применить к записям фильтрастрок
цию. Для этого следует открыть связанную таблицу в режиме таблицы
после импорта записей в Access.
Число столб- Число исходных столбцов не должно превышать 255, т.к. Access подцов
держивает не более 255 полей в таблице.
Пустые столб- Удалите все лишние пустые столбцы и строки из листа Excel или диапацы, строки и зона. При наличии пустых ячеек попытайтесь заполнить отсутствующие
ячейки
данные.
Значения оши- Если одна или несколько ячеек на листе или в диапазоне содержат знабок
чения ошибок, исправьте эти значения до начала операции импорта. Обратите внимание, что если исходный лист или диапазон содержит значения ошибок, в Access в соответствующее поле таблицы вставляется пустое значение.
Тип данных
Изменять тип данных и размер полей в связанной таблице невозможно.
Перед началом операции связывания следует проверить тип данных в
каждом столбце.
Настоятельно рекомендуется отформатировать все столбцы, которые
содержат значения с разными типами данных. Например, столбец «Номер рейса» может содержать числовые и текстовые значения, такие как
871, AA90 и 171. Чтобы исключить отсутствующие или неверные значения, следует выполнить следующие действия:
1.
Щелкните столбец правой кнопкой мыши и выберите команду
Формат ячеек.
2.
На вкладке Числовой в группе Категория выберите формат.
3.
Нажмите кнопку ОК.
Первая строка Если первая строка листа или именованного диапазона содержит имена
столбцов, в Access можно указать, что данные первой строки должны
рассматриваться как имена полей в ходе операции связывания. Если
лист не содержит имен или какое-либо имя столбца не соответствует соглашению об именах полей в Access, всем полям назначается допустимое имя.
3.
Закройте исходный файл, если он открыт.
Подготовка конечной таблицы.
1.
Откройте базу данных, в которой требуется создать связь. Убедитесь, что
база данных доступна не только для чтения и что у вас есть права на внесение в нее изменений.
Если ни одна из существующих баз данных не подходит для сохранения связи, создайте пустую базу данных.
Нажмите кнопку Microsoft Office
, а затем выберите команду Создать.
После этого можно начать операцию связывания.
62
Создание связи.
1.
На вкладке Внешние данные в группе Импорт выберите команду Excel.
Примечание. Вкладка Внешние данные становится доступной, только если открыта база данных.
2.
В диалоговом окне Внешние данные - Электронная таблица Excel, в поле
Имя файла укажите имя файла Excel, который содержит данные для связывания.
3.
Выберите вариант Создать связанную таблицу для связи с источником
данных. и нажмите кнопку ОК.
Будет открыт мастер связи с электронной таблицей, который поможет выполнить
процедуру связывания.
4.
На первой странице мастера выберите лист или именованный диапазон с
нужными данными и нажмите кнопку Далее.
5.
Если первая строка исходного листа или диапазона содержит имена полей,
выберите вариант Первая строка содержит заголовки столбцов. В Access эти заголовки
столбцов используются в качестве имен полей в таблице. Если имя столбца включает специальные знаки, его невозможно использовать как имя поля в Access. В таких случаях
отображается сообщение об ошибке, в котором говорится, что полю в Access будет назначено допустимое имя. Нажмите кнопку ОК для продолжения.
6.
На последней странице мастера укажите имя связанной таблицы и нажмите
кнопку Готово. Если таблица с указанным именем уже существует, будет открыт запрос
на перезапись существующего файла. Нажмите кнопку Да, чтобы перезаписать файл, или
кнопку Нет, чтобы задать другое имя файла.
Access предпримет попытку создать связанную таблицу. В случае успешного завершения операции в Access отображается сообщение Завершено связывание таблицы.
Откройте связанную таблицу и просмотрите поля и данные, чтобы убедиться в их правильности.
При наличии значений ошибок или неверных данных необходимо устранить ошибки в исходных данных.
Разрешение вопросов, связанных со значениями #Число! и другими неверными значениями в связанной таблице.
Даже после отображения сообщения Завершено связывание таблицы следует открыть таблицу в режиме таблицы и убедиться, что строки и столбцы содержат правильные
данные.
При наличии в таблице ошибок или неверных данных необходимо выполнить действия, описанные в приведенной ниже таблице, и повторить попытку связывания. Следует
помнить, что добавить значения непосредственно в связанную таблицу невозможно, т.к.
она доступна только для чтения.
Вопрос
Решение
Графические
эле- Графические элементы листов Excel, такие как логотипы, диаграмменты
мы и рисунки, не могут быть включены в связь с Aсcess.
Формат отображе- Чтобы обеспечить правильное отображение значений в режиме
ния
таблицы, может потребоваться изменить свойство Формат некоторых полей в режиме конструктора.
Вычисляемые зна- В Access в соответствующем поле отображаются результаты вычения
числяемого столбца или ячейки, а не формула (выражение).
Усеченные тексто- Увеличьте ширину столбца в режиме таблицы. Если даже после
вые значения
этого значение не отображается целиком, возможно, его длина превышает 255 знаков. В Access связывание возможно только для первых 255 знаков, поэтому вместо связывания следует использовать
импорт данных.
63
Сообщение о пере- Связанная таблица может отображаться правильно, но впоследполнении числового ствии при выполнении запроса с использованием этой таблицы
поля
может быть открыто сообщение об ошибке Переполнение числового поля. Это может объясняться конфликтом между типом данных поля в связанной таблице и типом данных, хранимых в этом
поле.
Значения TRUE или Если исходный лист или диапазон включает столбец, который соFALSE и -1 или 0
держит только значения TRUE или FALSE, в Access в связанной
таблице для этого столбца создается логическое поле. Если же исходный лист или диапазон включает столбец, который содержит
только значения -1 или 0, в Access для этого столбца по умолчанию
создается числовое поле, тип данных для которого невозможно изменить в таблице. Если требуется, чтобы в связанной таблице было
создано логическое поле, убедитесь, что исходный столбец содержит значения TRUE и FALSE.
Поля, одновременно В Access поля, допускающие несколько значений, не поддерживадопускающие
не- ются, даже если исходный столбец содержит список значений, разсколько значений
деленных точкой с запятой (;). Список значений рассматривается
как одно значение и помещается в текстовое поле.
#Число!
В Access значение ошибки #Число! отображается в полях вместо
данных в следующих случаях:

Если исходный столбец, который содержит в основном текстовые значения, включает также несколько числовых значений
или значений даты, числовые значения и значения даты не импортируются.

Если исходный столбец, который содержит в основном числовые значения, включает также несколько текстовых значений,
текстовые значения не импортируются.

Если исходный столбец, который содержит в основном значения даты, включает также несколько текстовых значений, текстовые значения не импортируются.
Чтобы свести к минимуму число пустых значений в таблице, выполните следующие действия:
1.
Убедитесь, что исходный столбец не содержит значения с
разными типами данных.
2.
Отформатируйте столбцы в файле Excel.
3.
В ходе операции связывания выберите подходящий тип данных для каждого поля. Если выбран неверный тип данных, конечный столбец может содержать только значения #Число во всех
строках.
Замена
числовых Если поле содержит случайные пятизначные числа, проверьте исзначений значения- ходный столбец с числовыми значениями на наличие значений дами даты
ты. Значения даты в числовых столбцах неправильно преобразуются в числа. Замените значения даты числовыми значениями и повторите попытку связывания.
Замена значений дат Если поле содержит случайные значения даты, проверьте исходный
числовыми значе- столбец со значениями даты на наличие числовых значений. Чисниями
ловые значения в столбцах даты неправильно преобразуются в даты. Замените числовые значения значениями даты и повторите попытку связывания.
64
Экспорт данных в Excel.
Для переноса данных из базы данных Microsoft Office Access 2007 на лист Microsoft
Office Excel 2007 необходимо экспортировать объект базы данных на лист. Для этого используется мастер экспорта Office Access 2007.
Экспорт данных в Excel: основы.
Чтобы на время или навсегда перенести данные из Access в Office Excel 2007, следует экспортировать данные из базы данных Access в книгу Excel. При этом Access создает копию выделенных данных или объекта базы данных, а затем сохраняет эту копию на
листе Excel.
Экспорт прекрасно подходит для частого копирования данных из Access в Excel.
При выполнении этой операции можно сохранить ее параметры для дальнейшего использования или запланировать операцию экспорта для автоматического выполнения через
заданные временные интервалы.
Стандартные сценарии экспорта данных в Excel.

В отделе или рабочей группе для работы с данными используется как
Access, так и Excel. Данные хранятся в базах данных Access, но для анализа и распространения его результатов используется Excel. Группа выполняет экспорт данных в Excel по
мере необходимости, но этот процесс требуется сделать более эффективным.

Вы используете Access, но ваш руководитель предпочитает работать с данными в Excel. Вам приходится регулярно копировать данные в Excel, но вам хотелось бы
автоматизировать этот процесс ради экономии времени.
Первый экспорт данных в Excel.

Для экспорта данных из Access в Excel необходимо запустить Access (в
Excel не предусмотрена возможность импорта данных из базы данных Access). Нельзя сохранить базу данных или таблицу Access в виде листа Excel с помощью команды Сохранить как в Access. Необходимо отметить, что команда Сохранить как в Access позволяет сохранить объект текущей базы данных только как другой объект базы данных Access.

Можно экспортировать таблицу, запрос или форму. Можно также экспортировать отдельные записи представления.

Экспортировать макросы и модули нельзя. При экспорте формы, отчета или
таблицы с подчиненными формами, отчетами или таблицами экспортируется только главная форма, отчет или таблица. Все подчиненные формы, отчеты и таблицы следует экспортировать в Excel отдельно.

В ходе операции экспорта можно экспортировать лишь один объект базы
данных. Однако после завершения нескольких операций экспорта можно выполнить слияние данных нескольких листов в Excel.
Подготовка к операции экспорта.
1.
Откройте исходную базу данных.
2.
В области переходов выделите объект, который содержит данные для экспорта.
Можно экспортировать таблицу, запрос, отчет или форму.
3.
Просмотрите исходные данные, чтобы убедиться в отсутствии индикаторов
или значений ошибок.
Ошибки необходимо устранить до экспорта данных в Excel. В противном случае
ошибки могут возникнуть в ходе операции экспорта, и в поля могут быть вставлены значения Null.
4.
Если исходным объектом является таблица или запрос, определите, как требуется экспортировать данные: с сохранением форматирования или без него.
Выбранный способ экспорта влияет на два аспекта конечного файла: объем экспортируемых данных и формат отображения данных. В приведенной ниже таблице представлено описание результатов экспорта форматированных и неформатированных данных.
65
Экспорт
Исходный объект
Поля и записи
Без форматиро- Таблица или запрос
Экспортируются
вания
Примечание. Формы все поля и записи
и отчеты невозможно базового объекта.
экспортировать
без
форматирования.
С форматирова- Таблица, запрос, отчет Экспортируются
нием
или форма
только поля и записи, отображаемые в текущем
представлении или
объекте. Фильтрованные
записи,
скрытые столбцы
таблицы, а также
не отображаемые в
форме или отчете
поля не экспортируются.
Форматирование
Параметры свойства
Формат (Format) игнорируются в ходе
операции.
Для подстановочных
полей экспортируются
только значения кодов
подстановки.
Содержимое
полей
гиперссылок экспортируется
в
виде
столбца текста, в котором ссылки отображаются в формате
displaytext#address#.
В мастере соблюдаются параметры свойства
Формат
Для подстановочных
полей экспортируются
только значения подстановки.
Для полей гиперссылок значения экспортируются в виде гиперссылок.
Для полей форматированного текста текст
экспортируется
без
форматирования.
5.
Выберите конечную книгу и ее формат.
В процессе экспорта Access предлагает указать имя конечной книги. В приведенной ниже таблице представлена сводка случаев создания новой книги или перезаписи
имеющейся.
Конечная Исходный Данные для эксРезультат
книга
объект
порта
Не суще- Таблица,
Данные с форма- В ходе операции экспорта создается книствует
запрос,
тированием
или га.
отчет или без него
форма
Существует Таблица
Данные без форма- Файл не перезаписывается. В книгу доили запрос тирования
бавляется новый лист, которому присваивается имя объекта, из которого экспортируются данные. Если лист с таким
именем уже существует, Access предлагает либо заменить содержимое соответствующего листа, либо указать другое
имя нового листа.
Существует Таблица,
Данные с форма- Файл перезаписывается экспортируемызапрос,
тированием
ми данными. Все имеющиеся листы уда66
отчет или
форма
ляются, и создается новый лист с именем
экспортируемого объекта. Данные листа
Excel наследуют параметры форматирования исходного объекта.
Данные всегда добавляются в новый лист. Невозможно добавить данные в имеющийся лист или именованный диапазон.
Выполнение экспорта.
1.
Если конечная книга Excel открыта, закройте ее перед выполнением операции.
2.
На панели навигации исходной базы данных выберите объект, который требуется экспортировать.
Экспорт только части данных
Если объектом является таблица, запрос или форма и требуется экспортировать только часть данных, откройте объект в режиме таблицы и выберите необходимые записи.
Открытие формы в режиме таблицы.
1.
Чтобы открыть форму, дважды щелкните ее.
2.
Щелкните форму правой кнопкой мыши, а затем щелкните элемент Режим
таблицы. Если он недоступен, выполните действия, описанные ниже.
1.
Щелкните элемент Режим конструктора.
2.
Нажмите клавишу F4 для отображения панели задач «Страница свойств».
3.
В раскрывающемся списке в верхней части этой панели выберите пункт
Форма.
4.
На вкладке «Формат» панели «Страница свойств» установите значение Да
для свойства Режим таблицы.
5.
На вкладке Конструктор в группе Представления щелкните элемент Режим таблицы.
Примечание. Часть отчета экспортировать нельзя. Однако можно выбрать или
открыть таблицу или запрос, на которых основан отчет, и затем экспортировать часть
данных в этот объект.
3.
На вкладке Внешние данные в группе Экспорт выберите команду Excel.
4.
В диалоговом окне Экспорт - Электронная таблица Excel просмотрите
предлагаемые имена файлов рабочей книги Excel (Access использует имена исходных
объектов). При необходимости имя файла можно изменить.
5.
В поле Формат файла выберите нужный формат файла.
6.
Если при экспорте таблицы или запроса требуется сохранить форматирование данных, установите флажок Экспортировать данные с макетом и форматированием.
Примечание. При экспорте формы или отчета этот флажок установлен по умолчанию и недоступен для изменения.
7.
Чтобы просмотреть конечный файл Excel после завершения операции экспорта, установите флажок Открыть целевой файл после завершения операции экспорта.
Если исходный объект был открыт и одна или несколько записей для экспорта выделены до запуска операции, можно установить флажок Экспортировать только выбранные записи. Если требуется экспортировать все отображаемые записи, этот флажок
необходимо снять.
Примечание. Если записи не выделены, этот флажок недоступен (неактивен).
8.
Нажмите кнопку ОК.
67
Если в ходе операции экспорта возникает ошибка, в Access отображается сообщение с описанием причины ошибки. В противном случае в соответствии с параметрами
экспорта, заданными в мастере, Access экспортирует данные и либо открывает конечный
файл в Excel, либо нет. Затем в Access открывается диалоговое окно, в котором можно создать спецификацию со сведениями об экспорте.
Сохранение спецификации экспорта.
1.
Нажмите кнопку Да, чтобы сохранить сведения об операции экспорта для
дальнейшего использования.
Сохранение сведений позволяет выполнять операцию повторно без использования
мастера.
2.
В диалоговом окне Сохранить как введите имя для спецификации экспорта. При необходимости введите описание в поле Описание.
3.
Если требуется выполнять операцию через определенные временные интервалы, например еженедельно или ежемесячно, установите флажок Создать задачу
Outlook.
В результате создается задача Microsoft Office Outlook 2007, которая позволяет выполнять спецификацию при нажатии соответствующей кнопки.
4.
Нажмите кнопку Сохранить экспорт.
Access запустит Outlook, если эта программа установлена.
Примечание. Если программа Outlook не установлена, в Access отображается сообщение об ошибке. Если программа Outlook не настроена, в Access открывается мастер
запуска Outlook. Для настройки Outlook следуйте инструкциям мастера.
5.
В Outlook просмотрите и измените параметры задачи, такие как Срок и
Напоминание.
Чтобы сделать задачу повторяющейся, установите флажок Повторение. На этом
рисунке изображен планировщик задач с некоторыми типичными параметрами:
6.
Нажмите кнопку Сохранить и закрыть.
Выполнение сохраненной задачи.
1.
В области переходов Outlook нажмите кнопку Задачи и дважды щелкните
задачу, которую нужно выполнить.
2.
На вкладке Задача в группе Microsoft Office Access нажмите кнопку Выполнить импорт
.
3.
Откройте конечную книгу в Excel и проверьте, скопированы ли данные в
нужные ячейки.
Если в процессе экспорта данные без форматирования копировались в имеющуюся
книгу, она может содержать несколько листов. Найдите нужный лист и просмотрите
ячейки.
Разрешение вопросов, связанных с отсутствующими и неверными значениями
на листе.
68
В приведенной ниже таблице описываются различные способы устранения типичных ошибок.
Совет. Если отсутствует всего несколько значений, введите их в книгу Excel самостоятельно. В противном случае исправьте исходный объект в базе данных Access и повторите операцию экспорта.
Вопрос
Описание и разрешение
Многозначные поля
Поля, одновременно допускающие несколько значений, экспортируются в виде списка значений, разделенных точкой с
запятой (;). Для получения дополнительных сведений см.
справку Microsoft Excel.
Рисунки, объекты и Графические элементы (например, эмблемы, содержимое полей
вложения
объектов OLE и вложения, которые содержатся в исходных
данных) не экспортируются. Их следует добавить на лист
вручную после завершения операции экспорта.
Диаграмма
При экспорте формы или отчета, содержащего объект Microsoft
Graph, этот объект не экспортируется.
Данные в неверном Значения Null на конечном листе иногда заменяются данными,
столбце
которые должны находиться в следующем столбце.
Отсутствующие значе- Значения дат, предшествующих 1 января 1900 г., не экспортиния даты
руются. Соответствующие ячейки на листе содержат значения
Null.
Отсутствующие выра- Выражения, которые используются для вычислений, не экспоржения
тируются в Excel. Экспортируются только результаты вычислений. Формулу следует добавить в рабочий лист Excel вручную после завершения операции экспорта.
Отсутствующие подчи- При экспорте формы, отчета или таблицы экспортируется
ненные формы, отчеты и только главная форма, отчет или таблица. Необходимо повтотаблицы
рить операцию экспорта для всех подчиненных форм, отчетов
и таблиц, которые требуется экспортировать.
Отсутствующие или не- Если ни один из столбцов на конечном листе не отформатироправильно форматиро- ван, повторите операцию экспорта, установив флажок Экспорванные столбцы
тировать данные с макетом и форматированием в мастере.
Если же только некоторые столбцы имеют форматирование,
отличное от исходного, выполните нужные действия в Excel
вручную.
Значение «#» в столбце
Значение # может содержаться в столбце, который соответствует логическому полю формы. Это может быть результатом
запуска операции экспорта из области переходов или режима
формы. Чтобы устранить эту ошибку, откройте форму в режиме таблицы, прежде чем экспортировать данные.
Индикаторы или значе- Проверьте ячейки на наличие индикаторов ошибки (треугольния ошибки
ников зеленого цвета в углу ячеек) или значений ошибки
(строк, которые начинаются со знака #, а не с нужных данных).
ЗАДАНИЕ:
1. Выберите одну из трех баз данных («Клиенты и заказы», «Музей», «Спортивный клуб») по своему усмотрению.
2. Для выбранной базы данных:
1) Экспортируйте в Excel все таблицы.
2) Добавьте в режиме Excel по 5 записей в каждую таблицу.
69
3) Импортируйте добавленные записи из Excel в конец соответствующих таблиц Access.
4) Установите связь любой из таблиц БД с листом Excel.
ПРАКТИЧЕСКАЯ РАБОТА № 8:
ОБМЕН ДАННЫМИ МЕЖДУ БАЗАМИ ДАННЫХ ACCESS.
Импорт данных из другой базы данных Access или связывание с данными в
ней.
Существуют различные способы передачи данных из одной базы данных Access в
другую. Наиболее простым из них является копирование и вставка данных, однако импорт
и связывание данных обеспечивают более широкие возможности управления передаваемыми данными и способами их переноса в конечную базу данных.
Общие представления об импорте и связывании данных из другой базы данных Access.
В процессе импорта данных из другой базы данных Access в конечной базе автоматически создается копия данных или объектов без изменения данных источника. Во время
операции импорта можно выбирать объекты для копирования, управлять параметрами
импорта таблиц и запросов, указывать, должны ли импортироваться связи между таблицами, и т.д.
Обычные сценарии импорта данных или объектов из базы данных Access.
Обычно импорт данных осуществляют по следующим причинам:

Две базы данных можно объединить, копируя все объекты одной базы данных в другую. В ходе импорта можно за одну операцию скопировать в другую базу данных все таблицы, запросы, формы, отчеты, макросы и модули, а также связи таблиц.

Можно создать несколько таблиц аналогичных таблицам, которые существуют в другой базе данных. Копировать можно таблицу целиком или только определения таблицы, чтобы не создавать структуру таблиц вручную. Если импортируется только
определение таблицы, будет создана пустая таблица. Другими словами, в конечную базу
данных копируются только поля и свойства полей — сами данные таблицы не копируются. Еще одним преимуществом импорта в сравнении с операцией копирования и вставки
является возможность импорта связей между таблицами вместе с импортом самих таблиц.

Может потребоваться скопировать в другую базу данных набор связанных
объектов (например, скопировать таблицу «Сотрудники» и форму «Сотрудники»). Импорт
позволяет в одной операции скопировать объект и все связанные с ним объекты в другую
базу данных.
Примечание. Если требуется добавить записи из одной базы данных в имеющуюся таблицу другой базы данных, следует выполнить импорт записей в новую таблицу с
последующим созданием запроса на добавление. Добавление записей в существующую
таблицу во время операции импорта невозможно.
Обычные сценарии создания связи с таблицей базы данных Access.
Связывание данных производят в следующих случаях:

В организации используется несколько баз данных Access, однако данные
некоторых таблиц, например таблицы «Сотрудники», должны быть общими в различных
базах данных. Вместо дублирования таблицы в каждой базе данных можно сохранять ее в
одной базе данных и создать связи с ней из других баз данных.

Рабочим группам или отделам требуется добавлять данные в базу данных
организации и использовать их, но структура таблиц в базе данных организации должна
изменяться централизованно.
Импорт данных из базы данных Microsoft Access.
В процессе импорта данных выполняются следующие основные шаги:

Подготовка к операции импорта

Запуск мастера импорта
70
При необходимости сохранение параметров импорта в качестве спецификации для дальнейшего использования
Следующие пошаговые инструкции поясняют выполнение каждого из действий.
Подготовка к импорту.
1.
Найдите исходную базу данных и определите объекты, которые нужно импортировать.
Если формат исходного файла MDB или ACCDB, можно импортировать таблицы,
запросы, формы, отчеты, макросы и модули. Если формат исходного файла MDE или
ACCDE, возможен импорт только таблиц.
2.
Импортируя данные из базы данных Access в первый раз, можно воспользоваться некоторыми полезными советами из приведенной ниже таблицы.
Элемент
Описание
Несколько объ- За одну операцию импорта можно импортировать несколько объектов.
ектов
Новый объект
В процессе каждой операции импорта в конечной базе данных создается новый объект. Перезаписывание существующего объекта или добавление записей в имеющуюся таблицу с помощью операции импорта
невозможно.
Импорт связан- Если таблица-источник (например, «Сотрудники1» в базе данных
ной таблицы
«Продажи») фактически является связанной таблицей (таблицей, которая связана с таблицей «Сотрудники» в базе данных «Ведомость»), текущая операция импорта заменяется операцией связывания. По окончании операции будет отображаться связанная таблица (например, с
именем «Сотрудники1»), которая связана с исходной таблицейисточником («Сотрудники» в базе данных «Ведомость»).
Пропуск полей и Во время импорта данных из таблицы или запроса пропуск части полей
записей
или записей запрещен. Однако если какие-либо записи в таблице импортировать не требуется, можно импортировать только определение
таблицы.
Связи
Разрешается импортировать связи между исходными таблицами.
Определение
Можно импортировать всю таблицу или только определение таблицы.
таблицы
Когда импортируется только определение, автоматически создается
таблица, которая имеет такие же поля, как и в исходной таблице, но не
содержит данных.
Объекты источ- В процессе импорта запроса, формы или отчета базовые источники заников записей
писей не импортируются автоматически. Следует импортировать все
базовые источники записей, иначе запрос, форма или отчет работать не
будет.
Поля подстано- Если поле в таблице-источнике служит для подстановки значений из
вок
другой таблицы или запроса, необходимо импортировать связанную
таблицу или запрос, если требуется, чтобы в конечном поле отображались значения подстановок. Если импорт связанной таблицы или запроса выполнен не будет, в конечном поле будут отображаться только
коды подстановок.
Подчиненные
Во время импорта формы или отчета включенные подчиненные формы
формы и отчеты или отчеты автоматически не импортируются. Необходимо импортировать каждую подчиненную форму и каждый подчиненный отчет, а
также их базовые источники записей, чтобы работа формы или отчета в
конечной базе данных стала возможной.
Запросы
Запрос может быть импортирован как запрос или как таблицу. Если
запрос импортируется как запрос, необходимо импортировать базовые

71
таблицы.
3.
Закройте исходную базу данных. Убедитесь, что никто из пользователей не
открыл ее в монопольном режиме.
4.
Откройте конечную базу данных. Убедитесь, что она не является доступной
только для чтения, и у вас имеются необходимые разрешения на добавление объектов и
данных в эту базу данных.
Если исходная база данных защищена паролем, необходимо вводить пароль всякий
раз, когда она будет использоваться в качестве источника для операции импорта.
Примечание. Если нужно импортировать данные в новую базу данных, перед
началом операции импорта следует создать пустую базу данных, не содержащую таблиц,
форм и отчетов. Нажмите кнопку Microsoft Office
, а затем выберите команду Создать.
В этой операции перезапись или изменение существующих таблиц или объектов не
производится. Если в конечной базе данных уже существует объект с таким же именем,
как у исходного объекта, к имени импортируемого объекта автоматически добавляется
число (1, 2, 3 и т. д.). Предположим, что таблица «Вопросы» импортируется в базу данных, в которой уже существует таблица с таким же именем. В этом случае импортированная таблица получит имя «Вопросы1». Если имя «Вопросы1» уже используется, новой
таблице будет присвоено имя «Вопросы2» и т. д.
Важно помнить, что если требуется добавить записи исходной таблицы в таблицу
конечной базы данных, вместо выполнения операции импорта необходимо использовать
запрос на добавление.
Импорт данных.
1.
На вкладке Внешние данные в группе Импорт выберите команду Access.
Примечание. Вкладка Внешние данные доступна, только если база данных открыта.
2.
В текстовом поле Имя файла введите имя исходной базы данных или
нажмите кнопку Обзор, чтобы вывести на экран диалоговое окно Открытие файла.
3.
Select Import tables, queries, forms, reports, macros, and modules into the
current database and click ОК.
4.
В диалоговом окне Импорт объектов откройте каждую вкладку и выделите
требуемые объекты.
Чтобы отменить выделение объекта, щелкните его еще раз.
5.
Чтобы указать дополнительные параметры, нажмите кнопку Параметры. В
приведенной ниже таблице описано, какое влияние каждый параметр оказывает на результаты операции.
Элемент
Описание
Флажок Связи
Устанавливается, чтобы импортировать связи между выбранными
таблицами.
Флажок меню и па- Устанавливается, чтобы импортировать пользовательские меню и
панели инструментов, имеющиеся в исходной базе данных. Меню
нели
и панели инструментов отображаются на вкладке Надстройки.
Флажок специфика- Устанавливается, чтобы импортировать спецификации импорта и
экспорта, имеющиеся в исходной базе данных.
ции
Флажок Группы об- Устанавливается, чтобы импортировать пользовательские группы
в области переходов, имеющиеся в исходной базе данных.
ласти переходов
Переключатель
Устанавливается, чтобы импортировать структуру и данные всех
структура и данные выделенных таблиц.
Переключатель
Устанавливается, чтобы импортировать только поля в выбранных
72
таблицах. Исходные записи при этом не импортируются.
только структура
Переключатель как Устанавливается, чтобы импортировать выделенные запросы в виде запросов. В данном случае следует помнить, что вместе с зазапросов
просами необходимо импортировать все базовые таблицы.
Переключатель как Устанавливается, чтобы импортировать запросы в виде таблиц. В
этом случае базовые таблицы импортировать не нужно.
таблиц
6.
Нажмите кнопку ОК, чтобы завершить операцию.
Программа Access копирует данные и при обнаружении каких-либо проблем выводит сообщения об ошибках. Если операция импорта данных выполнена успешно, на последней странице мастера можно сохранить сведения о данной операции в виде спецификации импорта для дальнейшего использования. На следующих шагах показано, как сохранить сведения об операции в виде спецификации.
Сохранение спецификации импорта.
1.
Нажмите кнопку Сохранить шаги импорта, чтобы сохранить сведения об
операции.
Сохранение сведений позволяет выполнять операцию повторно без использования
мастера.
2.
В поле Сохранить как введите имя спецификации импорта. При необходимости введите описание в поле Описание.
3.
Чтобы выполнять операцию регулярно через определенные интервалы времени, например, еженедельно или ежемесячно, установите флажок Создание задачи
Outlook.
Будет создана задача Microsoft Office Outlook 2007, которая позволит в дальнейшем
выполнять эту спецификацию.
4.
Нажмите кнопку Сохранить импорт.
Если флажок Создать задачу Outlook не установлен, Access сохраняет спецификацию импорта и импортирует указанные объекты. Теперь можно просмотреть импортированные таблицы и другие объекты, чтобы убедиться, что они были импортированы корректно.
Если установить флажок Создать задачу Outlook, Access запустит Outlook. Используйте эту процедуру, чтобы завершить следующие шаги.
Примечание. Если программа Outlook не установлена, будет выведено сообщение об ошибке. Если программа Outlook не настроена, откроется мастер запуска Outlook.
Для настройки Outlook следуйте инструкциям мастера.
1.
В программе Outlook просмотрите и измените параметры задачи, такие как
Срок и Напоминание.
Чтобы сделать задачу повторяющейся, установите флажок Повторение. На этом
рисунке изображен планировщик задач с некоторыми типичными параметрами:
2.
Нажмите кнопку Сохранить и закрыть.
73
Чтобы в дальнейшем выполнить эту спецификацию, откройте задачу в Outlook и на
вкладке Задача, в группе Microsoft Office Access нажмите кнопку Выполнить импорт
.
3.
В программе Access просмотрите импортированные таблицы и другие объекты, чтобы убедиться, что все данные и объекты скопированы.
Создание связи с данными другой базы данных Access.
Связывание позволяет создать связь с данными другой базы данных без их импорта, так что самые свежие данные можно будет просматривать и изменять в исходной и конечной базах данных, не создавая и не поддерживая две копии одних и тех же данных.
Нельзя создавать связи с запросами, формами, отчетами, макросами и модулями.
При создании связи с таблицей базы данных Access автоматически создается новая
таблица, называемая связанной, которая обеспечивает связь с исходными записями и полями. Любые изменения данных в исходной базе данных отражаются в связанной таблице
конечной базы данных, и наоборот. Однако изменить структуру связанной таблицы в конечной базе данных нельзя. Другими словами, в связанной таблице невозможны такие изменения, как добавление или удаление полей или изменение типа данных поля.
Подготовка к созданию связей с таблицами базы данных Access.
1.
Найдите исходную базу данных.
Допустимыми форматами файлов являются MDB, MDE, ACCDB и ACCDE. Если
исходная база данных защищена паролем, во время операции связывания будет предложено ввести пароль.
2.
Определите таблицы для связывания.
Можно создавать связи с таблицами, но нельзя создавать связи с запросами, формами, отчетами, макросами и модулями.
Создавая связи с таблицами другой базы данных Access в первый раз, можно воспользоваться некоторыми полезными советами из приведенной ниже таблицы.
Элемент
Описание
Несколько объек- В одной операции связывания возможно создание связей с нескольтов
кими таблицами. Для каждой исходной таблицы создается связанная
таблица.
Связанные табли- Создание связи с таблицей, которая уже является связанной таблицы в качестве ис- цей в исходной базе данных, невозможно.
точника
Предположим, что таблица «Сотрудники1», которую требуется связать с базой данных «Продажи», фактически является связанной
таблицей, имеющей связь с таблицей «Сотрудники» в базе данных
«Ведомость». Использование таблицы «Сотрудники1» в базе данных
«Продажи» в качестве исходной таблицы невозможно. Вместо этого
следует создать непосредственную связь с таблицей «Сотрудники»
базы данных «Ведомость».
Новая или суще- В каждой операции связывания для каждой исходной таблицы соствующая таблица здается новая связанная таблица. Перезапись данных существующей
таблицы или их добавление с помощью операции связывания невозможно.
Связи
Если выбираются несколько исходных таблиц, связи между таблицами автоматически переносятся в конечную базу данных. Однако
изменение или удаление связей в конечной базе данных запрещено.
Поля подстановок
Если поле в таблице-источнике служит для подстановки значений из
другой таблицы, необходимо создать связь со связанной таблицей,
если требуется, чтобы в конечном поле отображались значения подстановок. Если связь со связанной таблицей или запросом создана не
будет, в конечном поле будут отображаться только коды подстано74
вок.
3.
Закройте исходную базу данных. Убедитесь, что никто из пользователей не
открыл ее в монопольном режиме.
4.
Откройте конечную базу данных. Убедитесь, что она не является доступной
только для чтения и у вас имеются необходимые разрешения на добавление объектов и
данных в базу данных.
Примечание. Если необходимо создать связи в новой базе данных, перед началом операции импорта следует создать пустую базу данных (в которой не содержатся таблицы, формы или отчеты).
Нажмите кнопку Microsoft Office
, а затем выберите команду Создать.
В этой операции перезапись или изменение существующих таблиц или объектов не
производится. Если в конечной базе данных уже существует объект с таким же именем,
как у исходного объекта, к имени связанной таблицы автоматически добавляется число (1,
2, 3 и т. д.). Например, если связь с таблицей «Вопросы» создается из базы данных, в которой уже существует таблица с таким же именем, то в этом случае связанная таблица получит имя «Вопросы1». Если имя «Вопросы1» уже используется, новой таблице будет
присвоено имя «Вопросы2» и т. д.
Важно отметить, что если требуется добавить записи исходной таблицы в таблицу
конечной базы данных, вместо выполнения операции связывания необходимо использовать запрос на добавление.
Связь с данными.
1.
На вкладке Внешние данные в группе Импорт выберите команду Access.
Примечание. Вкладка Внешние данные доступна, только если база данных открыта.
2.
В текстовом поле Имя файла введите имя исходной базы данных или
нажмите кнопку Обзор, чтобы отобразить диалоговое окно Открытие файла.
3.
Установите переключатель Создать связанную таблицу для связи с источником данных и нажмите кнопку ОК.
4.
В диалоговом окне Связь с таблицами выделите таблицы, с которыми
необходимо создать связь.
Чтобы отменить выделение, щелкните таблицу еще раз.
5.
Для завершения операции нажмите кнопку ОК.
Будут созданы связанные таблицы.
6.
Откройте связанные таблицы в режиме таблицы, чтобы убедиться, что данные отображаются правильно.
Экспорт объектов базы данных в другие базы данных Access.
Существует много способов скопировать из текущей базы данных в другую такой
объект, как таблица или форма. Скопировать и вставить объект проще, но экспорт объекта
предоставляет больше возможностей. Например, можно экспортировать описание таблицы и содержащиеся в ней данные либо только описание таблицы (пустую копию таблицы). Можно также сохранить сведения об операции в виде спецификации экспорта для
дальнейшего использования.
Общее представление об экспорте данных и объектов в другие базы данных
Access.
Из одной базы данных Access в другую можно экспортировать таблицу, запрос,
форму, отчет, макрос или модуль. При экспорте объекта Access создает копию объекта в
конечной базе данных.
75
Примечание. Невозможно экспортировать часть объекта. Например, невозможно
экспортировать выделенные в представлении поля или записи. При необходимости копирования части объекта вместо экспорта скопируйте и вставьте эту часть.
Экспорт объектов базы данных необходим в случаях, когда следует:

скопировать структуру таблицы, находящейся в текущей базе данных, в другую базу для быстрого создания новой таблицы;

скопировать структуру или макет формы или отчета, находящихся в текущей базе данных, в другую базу данных для быстрого создания новой формы или отчета;

периодически, через равные промежутки времени, копировать последнюю
версию таблицы или формы в другую базу. Для этого нужно создать экспортную спецификацию при первом экспорте объекта и затем использовать спецификацию для ускорения операции экспорта.
Обратите внимание, что экспорт объекта в другую базу данных мало отличается от
импорта объекта во вторую открытую базу данных из первой. Основные различия между
импортом и экспортом объектов из одной базы данных Access в другую заключаются в
следующем:

Можно импортировать несколько объектов за одну операцию, но нельзя одновременно экспортировать несколько объектов. Если требуется одновременно экспортировать несколько объектов другую базу данных, проще открыть конечную базу данных и
произвести операцию импорта.

В дополнение к объектам базы данных, можно импортировать отношения
между таблицами, спецификации импорта и экспорта, а также строки меню и панели инструментов. Можно также импортировать запрос как таблицу. Экспорт не предоставляет
таких возможностей.
Экспорт объекта базы данных в другую базу Access.
Пошаговые инструкции данного раздела поясняют, как подготовиться к операции
экспорта, запустить мастер экспорта, а затем сохранить и выполнить спецификацию экспорта.
Подготовка к экспорту.
1.
Откройте исходную базу данных, если она еще не открыта. Формат файла
может быть MDB или ACCDB. Если формат файла MDE или ACCDE, экспортируемый
объект должен быть таблицей, запросом или макросом. Нельзя экспортировать формы,
отчеты и модули из файлов MDE или ACCDE.
Примечание. Если база данных предназначена только для чтения или у вас нет
разрешения на внесение в нее изменений, можно выполнить операцию экспорта, но нельзя
сохранить экспортные спецификации.
2.
Выберите объект экспорта. Если экспорт данных в базу данных Access производится впервые, запомните следующее:
Элемент
Описание
Один объект за За одну операцию можно экспортировать только один объект. Для эксодну операцию
порта нескольких объектов повторите операцию для каждого объекта
или импортируйте объекты из конечной базы данных.
Новая таблица
Каждая экспортная операция создает новый объект в базе назначения.
Если объект с таким же именем уже существует, можно выбрать существующий объект, заменить его либо указать новое имя для нового
объекта.
Примечание. В ходе операции экспорта нельзя добавлять записи в
существующую таблицу. Чтобы добавить записи, сделайте запрос на
добавление.
Экспорт связан- Если экспортируемая таблица является связанной, операция экспорта
ных таблиц
создает связанную таблицу в конечной базе. Новая связанная таблица
76
будет связана с исходной таблицей.
Например, если экспортируется связанная таблица Сотрудники1 в базе
данных Продажи, которая связана с таблицей Сотрудники в базе данных «Платежная ведомость», экспортная операция создает связанную
таблицу в конечной базе. Новая связанная таблица связана непосредственно с таблицей Сотрудники в базе данных Платежная ведомость.
Экспорт части Нельзя экспортировать часть объекта или несколько выделенных запиобъекта
сей.
Отношения
Поскольку можно экспортировать только одну таблицу за операцию,
при экспорте не происходит копирование отношений. Если нужно импортировать несколько таблиц вместе с их отношениями, откройте конечную базу данных и импортируйте эти объекты.
Определение
Можно выбрать: либо экспортировать таблицу полностью, либо только
таблицы
определение таблицы. При экспорте только определения таблицы
Access создает пустую копию исходной таблицы в конечной базе данных.
Источники запи- При экспорте запроса, формы или отчета базовые источники записей
сей
автоматически не экспортируются. Их нужно экспортировать отдельно, иначе запрос, форма или отчет работать не будут.
Поля подстано- Если поле подстановочных значений находится в другой таблице или
вок
запросе, нужно экспортировать связанную таблицу или запрос, чтобы
конечное поле отображалось вместе с подстановками. Если не экспортировать связанную таблицу или запрос, в поле будут отображаться
только коды подстановок.
Подчиненные
При экспорте формы или отчета подчиненные формы или отчеты, вхоформы и отчеты дящие в форму или отчет, не экспортируются автоматически. Необходимо экспортировать каждую подчиненную форму или отчет и их базовые источники записей отдельно.
3.
Откройте конечную базу данных. Формат файла должен быть MDB или
ACCDB. Также возможны форматы файлов MDE или ACCDE. Убедитесь, что она не
предназначена только для чтения и имеется разрешение на внесение изменений.
Примечания.

Если не удается открыть базу данных, возможно, она уже открыта другим
пользователем в режиме монопольного доступа. Необходимо найти такого пользователя и
запросить, чтобы он закрыл базу данных, а затем открыл снова в нормальном (многопользовательском) режиме.

Если база данных защищена паролем, потребуется вводить пароль при каждом запуске мастера экспорта или сохраненной спецификации.

Если нужно экспортировать объект в новую базу данных, перед экспортом
необходимо создать пустую базу данных (без таблиц, форм, отчетов) Нажмите кнопку
Microsoft Office
, а затем выберите команду Создать.
4.
Если объект с таким же именем, как и у экспортируемого, уже существует в
базе назначения, необходимо решить — либо заменить существующий объект новым, либо задать другое имя для нового объекта.
Теперь все готово для осуществления операции экспорта. Перейдите к дальнейшим
действиям.
Примечание. Если необходимо добавить записи из исходной базы данных в базу
назначения, вместо операции экспорта воспользуйтесь запросом на добавление.
Запуск мастера экспорта.
77
1.
На вкладке Внешние данные в группе Экспорт щелкните Дополнительно,
а затем выберите команду База данных Access.
Примечание. Команда Экспорт доступна только при открытой базе данных.
2.
В поле Имя файла укажите имя базы назначения и нажмите кнопку ОК.
3.
В диалоговом окне Экспорт введите новое имя экспортируемого объекта,
если не надо заменять существующий объект с таким же именем в базе данных назначения.
4.
Если выбранный объект является таблицей, укажите будут ли экспортироваться вместе с определением таблицы и данные, или только определение таблицы.
5.
Нажмите кнопку ОК, чтобы завершить операцию.
Если в базе данных назначения существует объект с таким же именем, будет рекомендовано либо заменить существующий объект, либо ввести другое имя для экспортируемого объекта. Нажмите кнопку Да, чтобы заменить объект, или кнопку Нет, чтобы вернуться в диалоговое окно Экспорт. Введите имя, которое не используется в базе назначения, и нажмите кнопку ОК.
Access экспортирует объекты. В случае ошибки отображается сообщение об ошибке. В противном случае появляется последнее окно мастера, в котором можно создать
спецификацию, сохраняющую параметры операции экспорта.
Сохранение спецификации экспорта.
1.
Чтобы сохранить параметры операции и использовать их в дальнейшем,
нажмите кнопку Сохранить шаги экспорта. Сохранение спецификации позволит повторить операцию позже без прохождения всех шагов мастера.
2.
В поле Сохранить как введите имя экспортной спецификации. Можно дополнительно ввести описание в поле Описание.
3.
Если необходимо повторять операцию периодически, еженедельно или ежемесячно, установите флажок Создать задачу Outlook. Это создаст задачу в Outlook для
выполнения спецификации нажатием кнопки.
4.
Нажмите кнопку Сохранить экспорт.
5.
Выполните одно из следующих действий:

Если установить флажок Создать задачу Outlook, Access запустит
Microsoft Office Outlook 2007. Чтобы настроить задачу Outlook, выполните оставшиеся
шаги в этой процедуре.

Если флажок Создать задачу Outlook не установлен, операция считается
завершенной. Откройте конечную базу и проверьте экспортированный объект, чтобы убедиться, что операция прошла успешно.
6.
В окне «Задача» в Outlook просмотрите и измените параметры задачи Срок
и Напоминание.
Чтобы выполнение задачи повторялось, нажмите кнопку Повторение. Дополнительные сведения о параметрах задач см. в справке Outlook.
7.
Нажмите кнопку Сохранить и закрыть.
8.
Откройте в Access конечную базу и проверьте экспортированный объект,
чтобы убедиться, что операция прошла успешно.
Выполнение спецификации экспорта.
Чтобы выполнить спецификацию экспорта из задачи Outlook, выполните следующие действия. Запуск Access не потребуется.
1.
В зависимости от того когда нужно выполнить экспорт, выполните следующие действия.

В запланированное время Когда Outlook отобразит для задачи диалоговое окно Напоминание, нажмите кнопку Открыть.

В любое время Откройте задачу нажатием кнопки Задачи в области переходов Outlook и щелкните задачу, которую нужно выполнить.
78
2.
На вкладке Задача в группе Надстройка Microsoft Office Access Outlook
нажмите кнопку Выполнить экспорт
.
3.
Нажмите кнопку ОК, чтобы выполнить операцию.
ЗАДАНИЕ:
1. Создайте пустую базу данных под именем «Объединенная».
2. Экспортируйте в объединенную базу все объекты баз: «Клиенты и заказы»,
«Музей» и «Спортивный клуб».
3. Настройте схему данных объединенной базы таким образом, чтобы все связи между таблицами были корректными и не было лишних связей.
4. Заархивируйте объединенную базу и определите ее объем.
79
ПРАКТИЧЕСКАЯ РАБОТА № 9: СОЗДАНИЕ И ПОДКЛЮЧЕНИЕ СПРАВОЧНИКОВ.
Создание справочников.
В каждой базе данных есть справочники, которые служат для хранения часто вводимых данных. Например, если в таблице "Атрибуты заказчика" есть поля типа "Страна",
"Город", то вместо того, чтобы постоянно вводить вручную эти данные, можно завести
соответствующие справочники городов и подставлять данные из них. Но дело в том, что
справочники могут быть как простые, состоящие из одной таблицы, так и сложные, составные (многоуровневые). Рассмотрим примеры организации различного рода справочников.
Как правильно установить связи между справочными таблицами и основной, в которую вставляются данные из справочников? Рассмотрим это на примере базы, в которой
есть такая таблица:
Имя таблицы
Имя поля
Тип поля
Адресат
idАдресат
Счетчик
idСтрана
Длинное целое
idРегион
Длинное целое
idГород
Длинное целое
Улица
Текстовое
Дом
Текстовое
(id – означает identification number, т.е. номер).
Разумеется, в базе окажется множество адресатов из одной страны, региона, да и
города тоже. Что нужно сделать, чтобы не вводить вручную постоянно повторяющуюся
информацию?
Создаем три справочные таблицы:
Справочник страны
Справочник регионы
Справочник города.
В каждой таблице обязательно должно быть соответствующее ей ключевое поле
(Тип Счетчик) - id.
Обычно ключевое поле таблицы, которое является уникальным идентификатором
записи в этой таблице, называют внутренним ключом (в нашем случае это поля типа
"Счетчик"), а ключевые поля, через которые внешние таблицы привязаны к данной – соответственно внешними ключами (в нашем случае это числовые поля Длинное целое).
Получается следующая взаимосвязь между таблицами:
Имя таблицы
Имя поля
Тип поля
Связанная
Поле в связанной
таблица
таблице
Адресат
idАдресат
счетчик
idСтрана
Длинное целое Справочник
idСтрана
страны
idРегион
Длинное целое Справочник
idРегион
регионы
idГород
Длинное целое Справочник
idГород
города
Улица
Текстовое
80
Дом
Текстовое
Справочник
id
счетчик
Адресат
idСтрана
страны
Обозначение
Текстовое
Справочник
id
счетчик
Адресат
idРегион
регионы
Обозначение
Текстовое
Справочник
id
счетчик
Адресат
idГород
города
Обозначение
Текстовое
Как видно, в справочниках только два поля: ключевое и обозначение. А основная
таблица состоит в основном из числовых полей, кроме полей "Улица" и «Дом». Мы видим, что проявляется основная особенность построения реляционных баз данных: вместо
того, чтобы хранить в таблице "Адресат" наименования стран, регионов, городов в виде
текста, сохраним их лучше в виде чисел (значений ключевых полей справочников).
При установке связей между основной таблицей и справочной Access, обнаружив
ключевое поле в основной таблице, пойдет по установленной связи в справочную и считает оттуда соответствующее значение из поля таблицы. Из какого поля – это будет зависеть
от запроса.
Справочники "Улицы" и "Дома" создавать нет смысла. Улиц будет слишком много,
их проще ввести вручную. С домами – то же самое.
Также в справочных таблицах не помешает сделать поле "Обозначение" уникальным, не допускающим повторений. Для этого в конструкторе таблицы в свойстве поля
"Индексированное поле" выберем "Да. Повторения не допускаются". Если теперь нажать
в конструкторе таблиц на кнопку "Индексы" (на ней значок молнии), то увидим, что в
таблицу кроме основного индекса ключевого поля добавился еще один - "Обозначение".
Имена полей таблиц не должны содержать пробелов, иначе могут быть проблемы с
VBA, и однозначно возникнут проблемы, при переносе базы на SQL Server. Если имя поля
состоит из двух слов, то можно выбрать например такай вариант: НазваниеУлицы или
Название_улицы.
Хотя согласно Help, имя может включать любую комбинацию букв, цифр, и специальных знаков за исключением точки (.), восклицательного знака (!), надстрочного знака
(`) и квадратных скобок ([ ]), но желательно не использовать в именах полей таблицы никаких символов, кроме букв и цифр. Дело в том, что например имя поля таблицы типа
"Улица№" в проекте mdb скорей всего не вызовет никаких конфликтов, а вот при переносе базы на SQL Server, мастер переноса просто "выкинет" его из таблицы.
При создании однотипных справочных таблиц дело пойдет быстрее, если в окне
проекта "Таблицы" выделить таблицу, затем Ctrl+C или в контекстном меню при правом
щелчке мыши выбрать "копировать", затем выбираем вставить, в появившемся окне задаем имя новой таблицы и жмем "ОК". Для быстрого создания нескольких справочников на
основе одного, первого имеет смысл вводить во всех справочниках однотипное поля: "id",
"Обозначение". В таблице "Адресат" также создаем внешние ключевые поля (Длинное
Целое) – idСтрана, idРегион, idГород. Не забываем убрать в них значение по умолчанию =
0.
Теперь осталось только установить связи между таблицами. Жмем в окне проекта
на кнопку "Схема данных" или правой кнопкой мыши, и в контекстном меню выбираем
"Схема данных". Появилась диалоговое окно "Добавление таблицы". Щелкаем дважды по
всем названиям таблиц и закрываем окно.
Располагаем таблицы например так: слева основная - "Адресат", справа остальные
(справочники). Наводим курсор в таблице "Адресат" на поле "idСтрана" нажимаем и тащим на поле "idСтрана" в таблице Справочник страны. В появившемся диалоговом окне
"Изменение связей" устанавливаем флажки: "Обеспечение целостности данных", "Каскадное обновление связанных полей" и жмем "ОК".
81
Флажок "Обеспечение целостности данных".
Его установили для того, чтобы исключить возможность ввода в таблицу "Адресат"
в поле "idСтрана" значения, которого нет в аналогичном поле справочной таблицы "Справочник страны". Лучше всегда так поступать. Этим Вы во многом избавитесь от проблемы
"мусора" в базе данных – наличия ни с чем не связанных записей. Правда есть и другие
способы "замусоривания", но не лишним будет уже в структурной схеме базы постараться
свести их к минимуму.
Флажок "Каскадное обновление связанных полей".
В данном случае его можно было бы и не ставить. Дело в том, что ситуация, когда
нужно обновлять связанные поля, здесь вряд ли произойдет, ведь ключевое поле в справочной таблице изменить можно только программно. Тем не менее, в нашем случае хуже
от этого не будет.
А вот флажок "Каскадное удаление связанных записей" в данном примере лучше не ставить. Иначе может возникнуть весьма печальная ситуация: пользователь решит
удалить название города из соответствующего справочника (мол, больше не нужен), а
вместе с ним удалятся и все связанные с ним записи в таблице "Адресат" – это и есть каскадное удаление. Правда, при всякой попытке удаления Access выдает соответствующее
предупреждение, но надеяться на то, что пользователь адекватно среагирует на него, не
стоит. Каскадное удаление имеет смысл ставить в случае, например при связи таблиц "Заказы" и "Заказы данные". Удаляете заказ, а вместе с ним автоматически и все данные по
нему, так как зачем данные по заказу, которого больше нет.
Многоуровневые справочники.
Для создания подобного рода справочников потребуется немного другая структура
базы данных. Дело в том, что подобные справочники создают для облегчения выбора значения из списка с большим количеством записей, которые фильтруются по выбранному
значению (параметру) в другом списке. А это значит, что потребуется связать две справочные таблицы, организовав из них составной справочник.
Многоуровневый справочник – это одна (!) справочная таблица, в которой хранятся
данные всех справочников. Для этого потребуется еще одно поле – идентификатор "справочной таблицы", чтобы определить, к какому справочнику относится данная запись. А
для реализации двухуровнего справочника создадим вторую таблицу, в которой будут
храниться связанные с первой таблицей записи.
Имя таблицы
Имя поля
Тип поля
СПРАВОЧНИК
id
счетчик
Name
Текстовое
Type
Длинное целое
СПРАВОЧНИК Sub
id
счетчик
id1
Длинное целое
Name
Текстовое
При установке связей между таблицами СПРАВОЧНИК и СПРАВОЧНИК Sub
установим флажок "Каскадное удаление связанных записей" - это как раз тот случай, когда такая процедура будет полезной. Ведь при удалении записи из таблицы "СПРАВОЧНИК" связанные с ней данные становятся не нужными.
Если Вы откроете схему данных, то увидите только две связанные между собой
справочные таблицы. В предыдущем примере к основной таблице "Адресат" были привязаны все справочники, и я еще подробно рассказывал о связях, флажках… Дело в том, что
при данной схеме организации справочной системы мы не сможем прицепить таблицу
"СПРАВОЧНИК" к какому либо полю, ведь в ней теперь хранятся все справочные данные. Да в этом и нет надобности. Если учесть, что пользователь будет работать с базой
исключительно через формы, то вероятность ввода в основную таблицу записей, которых
нет в справочной, сводится практически к нулю.
82
ЗАДАНИЕ:
1. Выберите одну из трех баз данных («Клиенты и заказы», «Музей», «Спортивный клуб») по своему усмотрению.
2. Проанализируйте таблицы выбранной базы данных: какие поля в них лучше заполнять не вручную, а подстановкой из справочника?
3. Создайте необходимые справочники, подключите их к заполняемым таблицам и заполните поля таблиц теперь уже из справочников.
ПРАКТИЧЕСКАЯ РАБОТА № 10:
КОРРЕКТИРОВКА ТЕКУЩИХ И СОЗДАНИЕ
НОВЫХ ПОЛЬЗОВАТЕЛЬСКИХ ЗАПРОСОВ.
В СУБД Access 2007 можно создавать запросы для отображения требуемых полей
из записей одной или нескольких таблиц.
В СУБД Access 2007 применяются различные типы запросов:
- на выборку,
- на обновление,
- на добавление,
- на удаление,
- перекрестные,
- с вычислениями,
- на создание таблиц.
Наиболее распространенным является запрос на выборку. Применяются два типа
запросов: запрос по образцу (QBE) и запрос на основе структурированного языка запросов
(SQL).
Запросы на выборку используются для отбора требуемой пользователю информации, содержащейся в нескольких таблицах. Они создаются только для связанных таблиц.
Запросы могут основываться как на нескольких таблицах, так и существующих запросах.
СУБД Access 2007 включает такие средства создания запросов, как Мастер и Конструктор.
Кроме того, в СУБД Access 2007 существует множество средств для поиска и отображения информации, которая хранится в базе данных. Данные в таблицах можно отсортировать на основе любого поля или комбинации полей. Для извлечения из базы данных
необходимых записей можно отфильтровать таблицу, применив средства фильтрации.
Рассмотрим создание запроса на выборку с помощью Конструктора.
Для создания нового пустого запроса в режиме конструктора надо щелкнуть на
пиктограмме Конструктор запросов (рисунок 1).
Рис. 1.
Откроется активное окно диалога Добавление таблицы (рисунок 2) на фоне неактивного окна «Запрос1». В этом окне можно выбрать таблицы и запросы для создания новых запросов.
83
Рис. 2.
В окне Добавление таблицы следует выбрать несколько таблиц из представленного
списка таблиц, на основе которых будет проводиться выбор данных, и щелкнуть на кнопке Добавить. После этого закрыть окно Добавление таблицы, а окно «Запрос1» станет активным (рисунок 3).
Рис. 3.
Окно Конструктора состоит из двух частей – верхней и нижней. В верхней части
окна размещается схема данных запроса, которая содержит список связанных таблиц. В
нижней части окна находится Бланк построения запроса QBE, в котором каждая строка
выполняет определенную функцию.
Переместим имена полей с таблиц-источников в Бланк. Из таблицы Группы студентов переместим поле Название в первое поле Бланка, из таблицы Студенты переместим поле Фамилии во второе поле, а из таблицы Успеваемость переместим поле Оценка в
третье поле и из таблицы Дисциплины переместим поле Название в четвертое поле Бланка
запросов.
При необходимости можно задать принцип сортировки (по возрастанию или по
убыванию) результатов запроса. В строке "Вывод на экран" автоматически устанавливается флажок просмотра информации.
Условия ограниченного поиска или критерий поиска информации вводится в строке "Условия" отбора и строке "Или". Например, введем критерий поиска - "5/A" в строке
"Условия" для поля Оценка. В этом случае в результате выполнения запроса на экране будут отображаться все фамилии студентов, которые получили оценку 5/A (рисунок. 4).
84
Рис. 4.
Далее надо закрыть окно запроса Запрос1, появится окно диалога Сохранить, ответить - Да и ввести имя запроса, например "Успеваемость студентов". Для запуска запроса
дважды щелкнем на запрос "Успеваемость студентов", откроется таблица с результатами
выполненного запроса (рис. 5).
Рис. 5.
Далее создаем параметрический запрос или запрос с параметрами. Создаем этот запрос также как и предыдущий, в режиме конструктора, но только в строке Условия отбора
для поля Фамилия введем условие отбора в виде приглашения в квадратных скобках,
например [Введите фамилию]. В этом случае в результате выполнения запроса на экране
будет отображаться фамилия студента и все дисциплины, по которым он получил оценку.
Закрыть окно запроса на выборку. На вопрос о сохранении изменения ответить - Да
и ввести имя запроса, например "Параметрический запрос". Запустим Параметрический
запрос, дважды щелкнув на нем. В открывшемся на экране окне диалога «Введите значение параметра» надо ввести фамилию студента, информацию об успеваемости которого
необходимо получить (рис. 6).
85
Рис. 6.
Затем надо щелкнуть на кнопке ОК, откроется таблица с результатами выполненного запроса (рис. 7).
Рис. 7.
ЗАДАНИЕ:
1. Выберите одну из трех баз данных («Клиенты и заказы», «Музей», «Спортивный клуб») по своему усмотрению.
2. Для выбранной базы данных:
1) Проанализируйте имеющиеся в БД запросы. Рассмотрите их конструкцию и
определите, по какому принципу они отбирают данные. Переименуйте эти запросы в
соответствии с тем, что они делают.
2) Разработайте и сконструируйте новые запросы таким образом, чтобы в качестве условия отбора в них каждое поле каждой таблицы было задействовано минимум один раз.
86
ПРАКТИЧЕСКАЯ РАБОТА № 11: ФОРМИРОВАНИЕ ОТЧЕТОВ.
Отчет (report) — это объект базы данных, который используется для вывода на
экран, в печать или файл структурированной информации. Отчеты позволяют извлечь из
таблиц или запросов базы данных необходимую информацию и представить ее в виде,
удобном для восприятия. Отчет содержит заголовок, область данных, верхний и нижний
колонтитулы, примечание и разбит на страницы.
В Microsoft Access 2007 для создания отчетов можно использовать различные
средства (рис. 1):

Мастер отчетов

Конструктор отчетов

Инструмент Отчет

Пустой отчет
Рис. 1.
Отчеты целесообразно выполнять с помощью Мастера или других указанных инструментов, а дорабатывать их, т.е. вносить необходимые изменения можно в режиме макета или конструктора. В Microsoft Access 2007 предусмотрено два режима внесения изменений и дополнений в отчеты: режим макета и режим конструктора.
Режим макета — это более наглядный режим редактирования и форматирования
(изменения) отчетов, чем режим конструктора. В тех случаях, когда в режиме макета невозможно выполнить изменения в отчете, то целесообразно применять режим конструктора.
Мастер отчетов. Для создания отчета при помощи Мастера отчетов необходимо
выполнить следующие действия:

В окне базы данных Access щелкнуть на вкладке Создание и затем щелкнуть
на кнопке Мастер отчетов в группе Отчеты. Появится диалоговое окно Создание отчетов.

В поле Таблицы и отчеты щелкнуть на стрелке и выбрать в качестве источника данных таблицу Студенты.

Щелкнуть на кнопке ОК (рис. 2).
Рис. 2.
87

Все "Доступные поля" переведем в "Выбранные поля", выделив их и щелкнув на кнопку >>.

На следующем шаге (Добавить уровни группировки?) щелкаем далее.

На шаге "Выберите порядок сортировки записей". В раскрывающемся списке выберем "Фамилия" для сортировки по возрастанию.

На шаге "Выберите вид макета для отчета". Выбираем: Макет - блок, ориентация - книжная. Щелкнуть на кнопке Далее.

На шаге " Выберите требуемый стиль". Выбираем - Изящная.

Следующий шаг - "Задайте имя отчета". Вводим имя - Студенты мастер_отчетов. Дальнейшие действия: Просмотреть отчет; Изменить макет отчета. Выбираем Просмотреть, щелкаем на кнопке Готово. Отчет открывается в режиме Предварительного просмотра, который позволяет увидеть, как будет выглядеть отчет в распечатанном
виде.
Рис. 3.
Перейдите в режим Конструктора и выполните редактирование и форматирование отчета. Для перехода из режима предварительного просмотра в режим конструктора необходимо в области переходов щелкнуть правой кнопкой мыши на имени отчета и
в контекстном меню выбрать режим конструктора. На экране появится отчет в режиме
Конструктора.

Рис. 4.
Редактирование:
1) удалите поля КодСтудента в верхнем колонтитуле и области данных;
2) удалите поля КодГруппы в верхнем колонтитуле и области данных;
88
3) На место поля КодГруппы переместить поле "Название" из списка "Группы студентов";
4) переместите влево все поля в верхнем колонтитуле и области данных.
5) Измените надпись в заголовке страницы, введите НТУ «ХПИ» и нажмите Enter.
6) Переместите Надпись. В Нижнем колонтитуле выделить поле = Now() и перетащить его в Заголовок под название Студенты. Дата будет отображаться под заголовком.
Форматирование:
1) Выделите заголовок Студенты НТУ «ХПИ».
2) Измените гарнитуру, начертание и цвет шрифта, а также цвет заливки фона.
Report в режиме конструктора примет вид, представленный на рисунке 5.
Рис. 5.
3) Перейдите в режим предварительного просмотра. Для перехода в режим предварительного просмотра необходимо щелкнуть правой кнопкой мыши на названии отчета в
области переходов и в контекстном меню выбрать режим "Предварительный просмотр"
(рис. 6).
Рис. 6.
Инструмент Отчет. Для быстрого создания отчета, т.е. создания одним щелчком
мыши можно воспользоваться инструментом Отчет. В этом случае отчет формируется на
базе существующей таблицы или запроса. В созданном отчете будут отображаться все записи таблицы или запроса, на базе которых создается отчет. Но созданный отчет можно
будет изменить в режиме макета или конструктора.
Для создания отчета необходимо выполнить следующее. В области переходов надо
выделить таблицу (например, Студенты), на основе которой нужно создать отчет. Затем
89
перейти на вкладку Создание и щелкнуть на пиктограмме Отчет. На экране будет отображен простой Отчет на основе текущей таблицы Студенты.
Средство Пустой отчет. Инструмент "Пустой отчет" позволяет создавать отчеты с
нуля в режиме макета. Для этого надо щелкнуть Пустой отчет в группе Отчеты на вкладке
Создание. В окне редактирования Access 2007 появится Отчет1 с пустой областью данных, а в правой части окна будет отображаться область "Список полей" существующих
таблиц. Щелкнув на знак "+" таблицы (например, Студенты), откроется список необходимых полей.
Перетащите требуемые поля из этого списка в отчет, нажав и удерживая левую
клавишу мыши. С помощью инструментов из группы "Элементы управления" на вкладке
Формат, можно доработать отчет, добавив заголовок, номера страниц, дату и время. При
необходимости его можно доработать в режиме конструктора. Сохраните отчет.
ЗАДАНИЕ:
1. Откройте базу данных, для которой вы создавали дополнительные запросы.
2. Для выбранной базы данных создайте отчеты на основе всех запросов.
Настройте внешний вид отчетов.
90
ПРАКТИЧЕСКАЯ РАБОТА № 12:
СОЗДАНИЕ ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА.
Как создать кнопочную форму в Access?
Кнопочная форма в Microsoft Access является одним из основных элементов навигации, который позволяет перенаправлять вас или других пользователей в различные места, заданные во время создания кнопочной формы. На начальном этапе ознакомления с
программой лучше всего воспользоваться автоматическим способом создания, для этого
следует запустить мастер создания кнопочных форм. Стоит отметить, что этот мастер
позволяет не только создавать, но и редактировать уже имеющиеся кнопочные формы.
Рассмотрим процесс создания данной формы на примере Access 2007. Для начала
следует найти вкладку «Работа с базами данных», на ней выбрать подпункт с точно таким
же названием, после чего уже в нем выбрать «Диспетчер кнопочных форм». В том случае,
если вы еще не создавали форму, мастер предложит ее создать, если же она уже существует, нужно будет щелкнуть кнопку «Изменить», для начала редактирования.
В открывшемся окне следует ввести всю необходимую информацию, но для начала
следует нажать кнопку «Создать». В частности, в данном окне, нужно будет ввести текст,
который будет отображаться на кнопке, а также выбрать команду, которую будет выполнять программа Access, при нажатии на кнопку. Команд, которые может выполнять программа по нажатию на кнопку достаточно много, в частности, нажатие может открывать
кнопочную форму, закрывать приложение, открывать формы для ввода данных и многое
другое. Естественно, что многие из этих команд могут пригодиться, поэтому можно создавать столько кнопок сколько нужно.
После того, как все нужные кнопки созданы, можно нажимать кнопку «Закрыть».
ЗАДАНИЕ:
1. Откройте базу данных, для которой вы создавали дополнительные запросы
и отчеты.
2. Для выбранной базы данных создайте пользовательский интерфейс в виде
кнопочных форм. При помощи кнопок пользователь должен иметь возможность перейти к любому объекту БД: к таблице, к форме, запустить запрос, просмотреть отчет.
91
МДК.01.02. Методы и средства проектирования информационных систем.
ПРАКТИЧЕСКАЯ РАБОТА № 1: ОФИСНЫЕ АИС. ЭКСПЕРТНЫЕ АИС.
1. Офисные АИС
Автоматизация документооборота заключается в комплексной автоматизации задач разработки, согласования, распространения, поиска и архивного хранения документов
организации. Выполнение этой задачи возлагается на офисные АИС.
Постоянное увеличение количества информации, необходимой для принятия правильного управленческого решения, приводит к тому, что традиционные методы работы с
документами становятся неэффективными. Так, по сведениям компании Delphi, 15% бумажных документов безвозвратно теряются и для их поиска сотрудники тратят до 30%
своего рабочего времени. При переходе к электронным документам и автоматизации документооборота рост производительности сотрудников увеличивается на 25-50%, сокращается время обработки одного документа более чем на 75%, на 80% уменьшаются расходы на оплату площади для хранения документов (оценка Nortan Nolan Institute).
Тенденцию перехода от традиционных технологий организации документооборота
к компьютерным отражают следующие цифры: соотношение количества бумажных и
электронных документов через пять лет составит 50 на 50%, через десять лет – 30 на 70%;
количество электронных документов удваивается за год, а бумажных документов растет
только на 7% (данные компании XPLOR).
В конце 80-х - начале 90-х гг. появились и начали интенсивно развиваться ряд новых технологий, успешно используемых в современных системах автоматизации документооборота:
 технологии обработки изображений документов (Imaging System, IS);
 системы оптического распознавания символов (Optical Character Recognition
System, OCR);
 системы управления документами, СУД (Document Management System, DMS);
 полнотекстовые базы данных (Full-Text System);
 системы автоматизации деловых процедур, АДП (Work-Flow System);
 программное обеспечение для рабочих групп (Groupware).
Системы обработки изображений документов предназначены для ввода, обработки, хранения и поиска графических образов бумажных документов. Подобные системы
целесообразно применять в организациях с большим объемом документооборота. Техническое обеспечение систем включает высокоскоростные сканеры, документные контроллеры (выполняют быструю и высокоэффективную компрессию/декомпрессию документов
и обеспечивают скоростную работу со сканерами и принтерами), библиотеки-автоматы на
базе оптических накопителей с автоматической подачей дисков. Компьютерные образы
документов находятся на сервере изображений и просматриваются на рабочих станцияхклиентах.
Системы обработки изображений осуществляют сканирование документов, запись
их на сервер, их классификацию по различным критериям, передачу изображений на рабочую станцию для просмотра, модификации или печати. Подобные системы предусматривают также определение маршрута передачи изображений по сети, их рассылку по факсу или электронной почте, поиск изображений по отдельным элементам.
Так как файлы изображений достигают больших размеров, существуют различные
варианты организации их хранения. В целях экономии памяти на запоминающем устройстве большинство систем сжимают изображения и создают специальный индекс изображений, где содержатся соответствующие значения атрибутов документов, например
наименование, автор, тема.
В высокопроизводительных системах реализованы технологии, позволяющие увеличить скорость работы. Например, предварительная выборка и перенос изображений с
92
медленных оптических носителей на более быстрые магнитные; адаптируемое кэширование, позволяющее хранить часто используемые изображения в памяти сервера; вывод на
лазерный диск; групповое сканирование, обеспечивающее считывание нескольких страниц за одну операцию.
Оптическое распознавание символов. Применение OCR позволяет решить проблему перевода бумажных документов в электронную форму в виде текстового файла.
Системы OCR позволяют получать электронную копию документа с печатного листа либо
копию документа, пришедшего по факсу. Существуют экспериментальные системы, позволяющие подобным образом обрабатывать также и рукописные материалы (Intelligent
Character Recognition). Кратко функционирование системы OCR можно представить следующим образом. С помощью сканирующего устройства считывается изображение документа. В результате распознавания текста изображение документа отображается в файл,
отформатированный как текстовый. Таким образом, бумажный документ, минуя низкопроизводительный и трудоемкий ручной ввод, автоматически преобразуется в электронную форму.
Выделяют два класса систем OCR — обучаемые и интеллектуальные. Принцип
действия систем первого класса основан на поточечном сравнении оцифрованного символа с образцом из справочника («маской»). При совпадении образца и символа последний
считается распознанным и добавляется в результирующий файл. При таком способе распознавания размеры образца и шрифта документа должны совпадать, т.е. в системе необходимо иметь маски для каждого размера каждого типа шрифта, поэтому подобная система более эффективна в случае однотипного и качественного текста. Во втором случае
«маска» символа заменяется на его «образ», который может быть использован для любых
размеров шрифтов.
Для повышения точности распознавания интеллектуальные системы могут выполнять ряд проверок результирующего текста, например, осуществлять частотный анализ
текста и сравнивать частоту появления данного символа в тексте с его частотой в языке
оригинала, или обнаруживать неправильное сочетание символов исходя из правил орфографии.
В реальных системах OCR сочетаются различные распознавательные механизмы,
что дает возможность обрабатывать любые шрифты и любые тексты.
На сегодняшний день известно несколько достаточно качественных программных
продуктов по распознаванию текста, в том числе  две системы отечественных фирм, ориентированных прежде всего на распознавание русскоязычных текстов (FineReader и CuneiForm). Средняя скорость работы системы OCR на оборудовании средней мощности составляет примерно одну машинописную страницу в минуту. Качество распознавания  в
среднем одна-две ошибки на 1000 знаков в тексте среднего качества.
Можно рекомендовать следующие критерии выбора системы OCR:
 совместимость с существующим или приобретаемым программным и аппаратным обеспечением;
 скорость сканирования и распознавания преобладающего в данной организации
типа текста, например: факс — русский язык, ксерокопия различного качества, машинопись различного качества и др.;
 качество распознавания текстов различных типов, например количество ошибок
на 1000 знаков;
 способность распознавать редкие шрифты;
 способность обучения новым символам;
 наличие элементов семантического анализа текста;
 наличие модуля проверки орфографии;
 удобство пользовательского интерфейса.
Системы управления документами (СУД) предназначены для автоматизации
хранения, поиска и управления электронными документами разнообразных форматов, в
93
том числе и изображениями документов. Можно сказать, что СУД фактически выполняют
роль СУБД для неструктурированной информации.
Развитые системы управления документами осуществляют следующие функции:
 индексирование документов;
 полнотекстовый поиск по ключевым словам;
 управление конфигурацией документа с установлением взаимосвязи между отдельными структурными компонентами;
 ассемблирование документов, позволяющее объединить все части составного
документа для отображения на экране;
 организация доступа к документу независимо от места его хранения;
 поиск и управление документами с помощью ключевых компонентов, таких,
как оглавление или название раздела;
 многоуровневая защита данных, которая разрешает доступ к документам только
отдельным пользователям или устанавливает виды доступа, например «только для чтения»;
 администрирование учета и архивирования;
 организация выдачи/возврата документа;
 контроль версий документа;
 рассылка документов.
Выполнение функции выдачи/возврата аналогична блокировке записи в БД. Если
документ уже выдан, другие пользователи редактировать его не могут. Он остается доступным только для просмотра и копирования.
Функция контроля версий используется для отслеживания различных версий документа, позволяет использовать предыдущие редакции документа, которые для экономии
памяти часто автоматически архивируются.
Функция рассылки документов осуществляется путем интегрирования системы с
приложениями электронной почты. Это позволяет перемещать документы по сети масштаба предприятия и передавать документы от одного сотрудника к другому.
Развитие сети Internet определяет появление ряда новых функций современных
СУД. Например, возможность помещения документов на Web-узле; поддержка обмена
документами по интрасети между сотрудниками фирмы, а по Internet  с клиентами и
партнерами фирмы.
Системы управления документами базируются на архитектуре клиент-сервер, состоящей из четырех основных элементов:
1) центрального приложения, находящегося на сервере;
2) программ клиентов, работающих на сетевых рабочих станциях и образующих
пользовательский интерфейс;
3) программного обеспечения для индексирования и поиска, размещенного на
сервере СУБД и работающего с базой данных, в которой регистрируется место хранения
документа;
4) документов, которые рассматриваются системой как объекты, состоящие из
файлов различных типов  текстов, изображений, и могут храниться как на жестких дисках рабочих станций, так и на серверах.
Лидером на мировом рынке СУБД является компания Documentum (продукт Enterprise Document Management).
Программное обеспечение для рабочих групп (Groupware) предназначено для
организаций, сотрудникам которых по характеру их деятельности требуется постоянный
обмен документами. Осуществляет задачи хранения, просмотра и совместного использования документов. Системы класса groupware позволяют автоматизировать такую деятельность, которая не вписывается в стандартные схемы реляционных баз данных.
Например, взаимодействие большого числа людей, исполняющих различные работы в фи94
зически удаленных друг от друга местах. Такие приложения могут обрабатывать как
структурированную, так и неструктурированную информацию.
Основными функциями ПО для рабочих групп являются:
 электронная почта;
 поддержка видеоконференций/совещаний;
 управление изображениями документов;
 совместное использование документов;
 маршрутизация документов;
 календарное планирование.
Лучшими системами класса groupware считаются: Lotus Notes компании Lotus Development, Link Works компании Digital Equipment, Group Wise компании Novel.
Продукт Lotus Notes - это среда с архитектурой клиент-сервер, предназначенная для
разработки и совместного использования приложений коллективной работы. В Lotus
Notes входят три основные составляющие:
1) средства маршрутизации и обработки документов;
2) средства обеспечения защиты/управления документами;
3) распределенная база данных (документов).
В базах данных Lotus Notes хранятся документы различных форматов, в том числе
структурированная информация, различные тексты, электронные таблицы, изображения,
видео- и аудиоинформация. Lotus Notes позволяет создавать OLE-серверные приложения,
т.е. графики, электронные таблицы, рисунки можно встраивать в документы. Специальные приложения Lotus Notes могут быть связаны с записями и полями реляционных баз
данных. Также имеется возможность полнотекстового поиска.
Lotus Notes имеет развитую систему управления доступом, который осуществляется на нескольких уровнях: базы данных, документа или частей документа. Управлять доступом можно также на уровне одного пользователя или групп пользователей. В системе
выделяется восемь видов доступа: от открытости для всех пользователей до полного запрета доступа.
Важнейшим достоинством Lotus Notes является возможность синхронизации баз
данных. Базы данных разных компьютеров синхронизируются через определенные интервалы времени путем минимально необходимого для этого обмена по каналам связи. Тиражирование (процесс двусторонней синхронизации копий распределенной базы данных)
дает возможность пользователям различных сетей работать с одной и той же информацией. Через заданные интервалы времени серверы Lotus Notes связываются друг с другом и
синхронизируют все изменения в документах и списках управления доступом.
Lotus Notes интегрирован с системой электронной почты Notes Mail, позволяющей
посылать корреспонденцию другим пользователям или группам.
Базовыми средствами для разработки приложений в Lotus Notes являются формы,
представления и макрокоманды. Представления — это форма вывода данных на экран или
принтер (аналогичны отчетам в реляционных СУБД).
Достоинством Lotus Notes является высокая платформенная независимость. Система работает на платформах OS/2, Windows NT, UNIX различных версий, Macintosh System
7. Приложения Lotus Notes достаточно легко масштабируются, их можно адаптировать
как к малой рабочей группе, так для организации работы в масштабе предприятия.
В последнюю версию Lotus Notes 4.0 включены средства совместимости с Internet
(встроен броузер, редактор Web-страниц, почтовая программа, работающая со стандартным Internet-протоколом); расширены инструменты разработки приложений (включен
язык LotusScript, являющийся расширенным аналогом Visual Basic).
Система GroupWise компании Novel включает средства электронной почты, личного и группового календарного планирования, управления заданиями и документами. Последние версии системы базируются на архитектуре клиент-сервер и поддерживают стандарты Internet, отличаются высокой производительностью и масштабируемостью.
95
Основными составляющими системы являются хранилище документов (библиотека) и три объектно-ориентированные базы данных в формате Novel. Библиотека содержит
документы (тексты, электронные таблицы, графические файлы). Все операции с документами регистрируются. Доступ к документам осуществляется под контролем средств защиты.
Первая БД хранит так называемые сообщения (почтовые, речевые сообщения, факсы, расписания встреч, перечень заданий, заметки). Вторая БД содержит информацию о
связях между пользователями и сообщениями/документами. Третья БД хранит характеристики документов.
В Group Wise имеется возможность поиска данных как по полному тексту, так и с
помощью фильтров. Для обеспечения безопасности применяются пароли и средства
управления правами доступа.
Достоинством последней версии Group Wise являются развитые средства управления документами. В систему интегрирована СУБД Soft Solutions, которая ранее выпускалась той же компанией, но отдельным продуктом.
Продукт Link Works также относится к классу group ware и является объектноориентированной офисной системой. Предоставляет конечным пользователям возможность управления как их персональными, так и связанными с рабочей группой документами при помощи единой объектно-ориентированной среды для настольных систем. Администратор размещает групповые и персональные папки документов на серверах Link
Works, а конечные пользователи настраивают среду настольных систем на обмен документами между персональными и групповыми папками. В состав Link Works входят: система персонального документооборота (графический аналог рабочего стола); электронная почта; организация совместного использования документов и контроля версий.
Системы автоматизации деловых процедур (АДП) предназначены для создания
сложных прикладных систем коллективной обработки документов в процессе осуществления конкретных бизнес-процессов. Документальные потоки на предприятии привязываются к существующим бизнес-процессам и регламенту их взаимодействия. При жесткой
маршрутизации документа заранее прописывается движение документа по всем рабочим
местам. Определяются права пользователей на документ в каждой точке маршрута. При
свободной маршрутизации исполнитель может определить дальнейший путь движения
документа, обычно на один уровень.
Примером систем АДП может служить продукт фирмы Staffware. Документы в системе обрабатываются по принятому организации алгоритму и перемещаются в рамках
корпоративной системы между отдельными подразделениями и исполнителями заранее
определенным маршрутам. Система основана на технологии клиент-сервер, интегрируется
с программными продуктами, работающими на платформах Windows NT, Windows 95,
UNIX. В состав системы может входить графический построитель процедур (Graphical
Workflow Definer), описывающий документопоток в виде диаграмм с указанием логических шагов, маршрутизации, предельных сроков и форм отчетов. Является инструментом
для разработки модели бизнес-процессов.
В последнее время наблюдается тенденция сближения и пересечения функциональных возможностей вышеописанных систем. Так, в системах, классифицируемых как
groupware, могут использоваться технологии полнотекстовых баз данных, систем управления документами и автоматизации деловых процедур. Поэтому в современных системах
автоматизации документооборота вышеуказанные технологии могут применяться как в
качестве отдельных, так и интегрированных компонент.
2. Экспертные АИС
Назначение экспертных систем. В начале восьмидесятых годов в исследованиях
по искусственному интеллекту сформировалось самостоятельное направление, получившее название "экспертные системы" (ЭС). Цель исследований по ЭС состоит в разработке
программ, которые при решении задач, трудных для эксперта-человека, получают резуль96
таты, не уступающие по качеству и эффективности решениям, получаемым экспертом.
Исследователи в области ЭС для названия своей дисциплины часто используют также
термин "инженерия знаний", введенный Е. Фейгенбаумом как "привнесение принципов и
инструментария исследований из области искусственного интеллекта в решение трудных
прикладных проблем, требующих знаний экспертов".
Программные средства (ПС), базирующиеся на технологии экспертных систем, или
инженерии знаний (в дальнейшем будем использовать их как синонимы), получили значительное распространение в мире. Важность экспертных систем состоит в следующем:
 технология экспертных систем существенно расширяет круг практически значимых задач, решаемых на компьютерах, решение которых приносит значительный экономический эффект;
 технология ЭС является важнейшим средством в решении глобальных проблем
традиционного программирования: длительность и, следовательно, высокая стоимость
разработки сложных приложений;
 высокая стоимость сопровождения сложных систем, которая часто в несколько
раз превосходит стоимость их разработки; низкий уровень повторной используемости
программ и т.п.;
 объединение технологии ЭС с технологией традиционного программирования
добавляет новые качества к программным продуктам за счет: обеспечения динамичной
модификации приложений пользователем, а не программистом; большей "прозрачности"
приложения (например, знания хранятся на ограниченном ЕЯ, что не требует комментариев к знаниям, упрощает обучение и сопровождение); лучшей графики; интерфейса и
взаимодействия.
По мнению ведущих специалистов, в недалекой перспективе ЭС найдут следующее
применение:
 ЭС будут играть ведущую роль во всех фазах проектирования, разработки, производства, распределения, продажи, поддержки и оказания услуг;
 технология ЭС, получившая коммерческое распространение, обеспечит революционный прорыв в интеграции приложений из готовых интеллектуальновзаимодействующих модулей.
ЭС предназначены для так называемых неформализованных задач, т.е. ЭС не отвергают и не заменяют традиционного подхода к разработке программ, ориентированного
на решение формализованных задач.
Неформализованные задачи обычно обладают следующими особенностями:
 ошибочностью, неоднозначностью, неполнотой и противоречивостью исходных
данных;
 ошибочностью, неоднозначностью, неполнотой и противоречивостью знаний о
проблемной области и решаемой задаче;
 большой размерностью пространства решения, т.е. перебор при поиске решения
весьма велик;
 динамически изменяющимися данными и знаниями.
Следует подчеркнуть, что неформализованные задачи представляют большой и
очень важный класс задач. Многие специалисты считают, что эти задачи являются наиболее массовым классом задач, решаемых ЭВМ.
Экспертные системы и системы искусственного интеллекта отличаются от систем
обработки данных тем, что в них в основном используются символьный (а не числовой)
способ представления, символьный вывод и эвристический поиск решения (а не исполнение известного алгоритма).
Экспертные системы применяются для решения только трудных практических (не
игрушечных) задач. По качеству и эффективности решения экспертные системы не уступают решениям эксперта-человека. Решения экспертных систем обладают "прозрачностью", т.е. могут быть объяснены пользователю на качественном уровне. Это качество
97
экспертных систем обеспечивается их способностью рассуждать о своих знаниях и умозаключениях. Экспертные системы способны пополнять свои знания в ходе взаимодействия
с экспертом. Необходимо отметить, что в настоящее время технология экспертных систем
используется для решения различных типов задач (интерпретация, предсказание, диагностика, планирование, конструирование, контроль, отладка, инструктаж, управление) в самых разнообразных проблемных областях, таких, как финансы, нефтяная и газовая промышленность, энергетика, транспорт, фармацевтическое производство, космос, металлургия, горное дело, химия, образование, целлюлозно-бумажная промышленность, телекоммуникации и связь и др.
Коммерческие успехи к фирмам-разработчикам систем искусственного интеллекта
(СИИ) пришли не сразу. На протяжении 1960-1985 гг. успехи ИИ касались в основном исследовательских разработок, которые демонстрировали пригодность СИИ для практического использования. Начиная примерно с 1985 г. (в массовом масштабе с 1988-1990 гг.),
в первую очередь ЭС, а в последние годы системы, воспринимающие естественный язык
(ЕЯ-системы), и нейронные сети (НС) стали активно использоваться в коммерческих приложениях.
Следует обратить внимание на то, что некоторые специалисты (как правило, специалисты в программировании, а не в ИИ) продолжают утверждать, что ЭС и СИИ не
оправдали возлагавшихся на них ожиданий и умерли. Причины таких заблуждений состоят в том, что эти авторы рассматривали ЭС как альтернативу традиционному программированию, т.е. они исходили из того, что ЭС в одиночестве (в изоляции от других программных средств) полностью решают задачи, стоящие перед заказчиком. Надо отметить,
что на заре появления ЭС специфика используемых в них языков, технологии разработки
приложений и используемого оборудования (например, Lisp-машины) давала основания
предполагать, что интеграция ЭС с традиционными, программными системами является
сложной и, возможно, невыполнимой задачей при ограничениях, накладываемых реальными приложениями. Однако в настоящее время коммерческие инструментальные средства (ИС) для создания ЭС разрабатываются в полном соответствии с современными технологическими тенденциями традиционного программирования, что снимает проблемы,
возникающие при создании интегрированных приложений.
Причины, приведшие СИИ к коммерческому успеху, следующие.
Интегрированность. Разработаны инструментальные средства искусственного интеллекта (ИС ИИ), легко интегрирующиеся с другими информационными технологиями и
средствами (с CASE, СУБД, контроллерами, концентраторами данных и т.п.).
Открытость и переносимость. ИС ИИ разрабатываются с соблюдением стандартов, обеспечивающих открытость и переносимость.
Использование языков традиционного программирования и рабочих станций. Переход от ИС ИИ, реализованных на языках ИИ (Lisp, Prolog и т.п.), к ИС ИИ, реализованным на языках традиционного программирования (С, C++ и т.п.), упростил обеспечение
интегрированности, снизил требования приложений ИИ к быстродействию ЭВМ и объемам оперативной памяти. Использование рабочих станций (вместо ПК) резко увеличило
круг приложений, которые могут быть выполнены на ЭВМ с использованием ИС ИИ.
Архитектура клиент-сервер. Разработаны ИС ИИ, поддерживающие распределенные вычисления по архитектуре клиент-сервер, что позволило: снизить стоимость оборудования, используемого в приложениях, децентрализовать приложения, повысить надежность и общую производительность (так как сокращается количество информации, пересылаемой между ЭВМ, и каждый модуль приложения выполняется на адекватном ему
оборудовании).
Проблемно/предметно-ориентированные ИС ИИ. Переход от разработок ИС ИИ
общего назначения (хотя они не утратили свое значение как средство для создания ориентированных ИС) к проблемно/предметно-ориентированным ИС ИИ обеспечивает: сокращение сроков разработки приложений; увеличение эффективности использования ИС;
98
упрощение и ускорение работы эксперта; повторную используемость информационного и
программного обеспечения (объекты, классы, правила, процедуры).
Структура экспертных систем.
Типичная статическая ЭС состоит из следующих основных компонентов (рис. 1.):
 решателя (интерпретатора);
 рабочей памяти (РП), называемой также базой данных (БД);
 базы знаний (БЗ);
 компонентов приобретения знаний;
 объяснительного компонента;
 диалогового компонента.
База данных (рабочая память) предназначена для хранения исходных и промежуточных данных решаемой в текущий момент задачи. Этот термин совпадает по названию,
но не по смыслу с термином, используемым в информационно-поисковых системах (ИПС)
и системах управления базами данных (СУБД) для обозначения всех данных (в первую
очередь долгосрочных), хранимых в системе.
База знаний (БЗ) в ЭС предназначена для хранения долгосрочных данных, описывающих рассматриваемую область (а не текущих данных), и правил, описывающих целесообразные преобразования данных этой области.
Решатель, используя исходные данные из рабочей памяти и знания из БЗ, формирует такую последовательность правил, которые, будучи примененными к исходным данным, приводят к решению задачи.
Компонент приобретения знаний автоматизирует процесс наполнения ЭС знаниями, осуществляемый пользователем-экспертом.
Объяснительный компонент объясняет, как система получила решение задачи (или
почему она не получила решение) и какие знания она при этом использовала, что облегчает эксперту тестирование системы и повышает доверие пользователя к полученному результату.
Диалоговый компонент ориентирован на организацию дружественного общения с
пользователем как в ходе решения задач, так и в процессе приобретения знаний и объяснения результатов работы.
В разработке ЭС участвуют
представители следующих специальностей:
 эксперт в проблемной области, задачи которой будет решать
ЭС;
 инженер по знаниям специалист по разработке ЭС (используемые им технологию, методы
называют технологией (методами)
инженерии знаний);
 программист
по разработке инструментальных средств
(ИС), предназначенных для ускорения разработки ЭС.
Необходимо отметить, что отсутствие среди участников разработки инженеров по
знаниям (т. е. их замена программистами) либо приводит к неудаче процесс создания
ЭС, либо значительно удлиняет его.
Эксперт определяет знания (данные и правила), характеризующие проблемную область, обеспечивает полноту и правильность введенных в ЭС знаний.
Инженер по знаниям помогает эксперту выявить и структурировать знания, необходимые для работы ЭС; осуществляет выбор того ИС, которое наиболее подходит для
99
данной проблемной области, и определяет способ представления знаний в этом ИС; выделяет и программирует (традиционными средствами) стандартные функции (типичные для
данной проблемной области), которые будут использоваться в правилах, вводимых экспертом.
Программист разрабатывает ИС (если ИС разрабатывается заново), содержащее в
пределе все основные компоненты ЭС, и осуществляет его сопряжение с той средой, в которой оно будет использовано.
Экспертная система работает в двух режимах: режиме приобретения знаний и в
режиме решения задачи (называемом также режимом консультации или режимом использования ЭС).
В режиме приобретения знаний общение с ЭС осуществляет (через посредничество инженера по знаниям) эксперт. В этом режиме эксперт, используя компонент приобретения знаний, наполняет систему знаниями, которые позволяют ЭС в режиме решения
самостоятельно (без эксперта) решать задачи из проблемной области. Эксперт описывает
проблемную область в виде совокупности данных и правил. Данные определяют объекты,
их характеристики и значения, существующие в области экспертизы. Правила определяют
способы манипулирования с данными, характерные для рассматриваемой области.
Отметим, что режиму приобретения знаний в традиционном подходе к разработке
программ соответствуют этапы алгоритмизации, программирования и отладки, выполняемые программистом. Таким образом, в отличие от традиционного подхода в случае ЭС
разработку программ осуществляет не программист, а эксперт (с помощью ЭС), не владеющий программированием.
В режиме консультации общение с ЭС осуществляет конечный пользователь, которого интересует результат и (или) способ его получения. Необходимо отметить, что в
зависимости от назначения ЭС пользователь может не быть специалистом в данной проблемной области (в этом случае он обращается к ЭС за результатом, не умея получить его
сам), или быть специалистом (в этом случае пользователь может сам получить результат,
но он обращается к ЭС с целью либо ускорить процесс получения результата, либо возложить на ЭС рутинную работу). В режиме консультации данные о задаче пользователя после обработки их диалоговым компонентом поступают в рабочую память. Решатель на
основе входных данных из рабочей памяти, общих данных о проблемной области и правил из БЗ формирует решение задачи. ЭС при решении задачи не только исполняет предписанную последовательность операции, но и предварительно формирует ее. Если реакция системы не понятна пользователю, то он может потребовать объяснения:
"Почему система задает тот или иной вопрос?", "Как ответ, собираемый системой,
получен?".
Структуру, приведенную на рис. 1, называют структурой статической ЭС. ЭС
данного типа используются в тех приложениях, где можно не учитывать изменения окружающего мира, происходящие за
время решения задачи. Первые
ЭС, получившие практическое
использование, были статическими.
На рис. 2 показано, что в
архитектуру динамической ЭС
по сравнению со статической ЭС
вводятся два компонента: подсистема моделирования внешнего
мира и подсистема связи с внешним окружением. Последняя
Рис. 2. Структура
осуществляет связи с внешним
динамической ЭС.
миром через систему датчиков и
100
контроллеров. Кроме того, традиционные компоненты статической ЭС (база знаний и машина вывода) претерпевают существенные изменения, чтобы отразить временную логику
происходящих в реальном мире событий.
Подчеркнем, что структура ЭС, представленная на рис. 1 и 2, отражает только компоненты (функции), и многое остается "за кадром".
Этапы разработки экспертных систем.
Разработка ЭС имеет существенные отличия от разработки обычного программного продукта. Опыт создания ЭС показал, что использование при их разработке методологии, принятой в традиционном программировании, либо чрезмерно затягивает процесс
создания ЭС, либо вообще приводит к отрицательному результату.
Использовать ЭС следует только тогда, когда разработка ЭС возможна, оправдана
и методы инженерии знаний соответствуют решаемой задаче. Чтобы разработка ЭС была возможной для данного приложения, необходимо одновременное выполнение по крайней мере следующих требований:
1) существуют эксперты в данной области, которые решают задачу значительно
лучше, чем начинающие специалисты;
2) эксперты сходятся в оценке предлагаемого решения, иначе нельзя будет оценить
качество разработанной ЭС;
3) эксперты способны вербализовать (выразить на естественном языке) и объяснить
используемые ими методы, в противном случае трудно рассчитывать на то, что знания
экспертов будут "извлечены" и вложены в ЭС;
4) решение задачи требует только рассуждений, а не действий;
5) задача не должна быть слишком трудной (т.е. ее решение должно занимать у
эксперта несколько часов или дней, а не недель);
6) задача хотя и не должна быть выражена в формальном виде, но все же должна
относиться к достаточно "понятной" и структурированной области, т.е. должны быть выделены основные понятия, отношения и известные (хотя бы эксперту) способы получения
решения задачи;
7) решение задачи не должно в значительной степени использовать "здравый
смысл" (т.е. широкий спектр общих сведений о мире и о способе его функционирования,
которые знает и умеет использовать любой нормальный человек), так как подобные знания пока не удается (в достаточном количестве) вложить в системы искусственного интеллекта.
Использование ЭС в данном приложении может быть возможно, но не оправдано.
Применение ЭС может быть оправдано одним из следующих факторов:
 решение задачи принесет значительный эффект, например экономический;
 использование человека-эксперта невозможно либо из-за недостаточного количества экспертов, либо из-за необходимости выполнять экспертизу одновременно в различных местах;
 использование ЭС целесообразно в тех случаях, когда при передаче информации эксперту происходит недопустимая потеря времени или информации;
 использование ЭС целесообразно при необходимости решать задачу в окружении, враждебном для человека.
Приложение соответствует методам ЭС, если решаемая задача обладает совокупностью следующих характеристик:
1) задача может быть естественным образом решена посредством манипуляции с
символами (т.е. с помощью символических рассуждений), а не манипуляций с числами,
как принято в математических методах и в традиционном программировании;
2) задача должна иметь эвристическую, а не алгоритмическую природу, т.е. ее решение должно требовать применения эвристических правил. Задачи, которые могут быть
гарантированно решены (с соблюдением заданных ограничений) с помощью некоторых
формальных процедур, не подходят для применения ЭС;
101
3) задача должна быть достаточно сложна, чтобы оправдать
затраты на разработку ЭС. Однако
она не должна быть чрезмерно
сложной (решение занимает у эксперта часы, а не недели), чтобы ЭС
могла ее решать;
4) задача должна быть достаточно узкой, чтобы решаться
методами ЭС, и практически значимой.
При разработке ЭС, как
правило, используется концепция
"быстрого прототипа". Суть этой концепции состоит в том, что разработчики не пытаются
сразу построить конечный продукт. На начальном этапе они создают прототип (прототипы) ЭС. Прототипы должны удовлетворять двум противоречивым требованиям: с одной
стороны, они должны решать типичные задачи конкретного приложения, а с другой - время и трудоемкость их разработки должны быть весьма незначительны, чтобы можно было
максимально запараллелить процесс накопления и отладки знаний (осуществляемый экспертом) с процессом выбора (разработки) программных средств (осуществляемым инженером по знаниям и программистом). Для удовлетворения указанным требованиям, как
правило, при создании прототипа используются разнообразные средства, ускоряющие
процесс проектирования.
Прототип должен продемонстрировать пригодность методов инженерии знаний
для данного приложения. В случае успеха эксперт с помощью инженера по знаниям расширяет знания прототипа о проблемной области. При неудаче может потребоваться разработка нового прототипа или разработчики могут прийти к выводу о непригодности методов ЭС для данного приложения. По мере увеличения знаний прототип может достигнуть такого состояния, когда он успешно решает все задачи данного приложения. Преобразование прототипа ЭС в конечный продукт обычно приводит к перепрограммированию
ЭС на языках низкого уровня, обеспечивающих как увеличение быстродействия ЭС, так и
уменьшение требуемой памяти. Трудоемкость и время создания ЭС в значительной степени зависят от типа используемого инструментария.
В ходе работ по созданию ЭС сложилась определенная технология их разработки,
включающая шесть следующих этапов (рис. 3): идентификацию, концептуализацию, формализацию, выполнение, тестирование, опытную эксплуатацию.
На этапе идентификации определяются задачи, которые подлежат решению, выявляются цели разработки, определяются эксперты и типы пользователей.
На этапе концептуализации проводится содержательный анализ проблемной области, выявляются используемые понятия и их взаимосвязи, определяются методы решения
задач.
На этапе формализации выбираются ИС и определяются способы представления
всех видов знаний, формализуются основные понятия, определяются способы интерпретации знаний, моделируется работа системы, оценивается адекватность целям системы
зафиксированных понятий, методов решений, средств представления и манипулирования
знаниями.
На этапе выполнения осуществляется наполнение экспертом базы знаний. В связи с
тем, что основой ЭС являются знания, данный этап является наиболее важным и наиболее
трудоемким этапом разработки ЭС. Процесс приобретения знаний разделяют на извлечение знаний из эксперта, организацию знаний, обеспечивающую эффективную работу системы, и представление знаний в виде, понятном ЭС. Процесс приобретения знаний осу102
ществляется инженером по знаниям на основе анализа деятельности эксперта по решению
реальных задач.
Методы поиска решений в экспертных системах.
Методы решения задач, основанные на сведении их к поиску, зависят от особенностей предметной области, в которой решается задача, и от требований, предъявляемых
пользователем к решению. Особенности предметной области с точки зрения методов решения можно характеризовать следующими параметрами:
 размер, определяющий объем пространства, в котором предстоит искать решение;
 изменяемость области, характеризует степень изменяемости области во времени и пространстве (здесь будем выделять статические и динамические области);
 полнота модели, описывающей область, характеризует адекватность модели,
используемой для описания данной области. Обычно если модель не полна, то для описания области используют несколько моделей, дополняющих друг друга за счет отражения
различных свойств предметной области;
 определенность данных о решаемой задаче, характеризует степень точности
(ошибочности) и полноты (неполноты) данных. Точность (ошибочность) является показателем того, что предметная область с точки зрения решаемых задач описана точными (неточными) данными; под полнотой (неполнотой) данных понимается достаточность (недостаточность) входных данных для однозначного решения.
Требования пользователя к результату задачи, решаемой с помощью поиска, можно
характеризовать количеством решений, свойствами результата и (или) способом его получения. Параметр "количество решений" может принимать следующие основные значения:
одно решение, несколько решений, все решения. Параметр "свойства" задает ограничения,
которым должен удовлетворять полученный результат или способ его получения. Так,
например, для системы, выдающей рекомендации по лечению больных, пользователь может указать требование не использовать некоторое лекарство (в связи с его отсутствием
или в связи с тем, что оно противопоказано данному пациенту). Параметр "свойства" может определять и такие особенности, как время решения ("не более чем", "диапазон времени" и т.п.), объем памяти, используемой для получения результата, указание об обязательности (невозможности) использования каких-либо знаний (данных) и т.п.
Итак, сложность задачи, определяемая вышеприведенным набором параметров, варьируется от простых задач малой размерности с неизменяемыми определенными данными и отсутствием ограничений на результат и способ его получения до сложных задач
большой размерности с изменяемыми, ошибочными и неполными данными и произвольными ограничениями на результат и способ его получения. Из общих соображений ясно,
что каким-либо одним методом нельзя решить все задачи. Обычно одни методы превосходят другие только по некоторым из перечисленных параметров.
Рассмотренные ниже методы могут работать в статических и динамических проблемных средах. Для того чтобы они работали в условиях динамики, необходимо учитывать время жизни значений переменных, источник данных для переменных, а также обеспечивать возможность хранения истории значений переменных, моделирования внешнего
окружения и оперирования временными категориями в правилах.
Существующие методы решения задач, используемые в экспертных системах,
можно классифицировать следующим образом:
 методы поиска в одном пространстве - методы, предназначенные для использования в следующих условиях: области небольшой размерности, полнота модели, точные и
полные данные;
 методы поиска в иерархических пространствах - методы, предназначенные для
работы в областях большой размерности;
 методы поиска при неточных и неполных данных ;
103
методы поиска, использующие несколько моделей, предназначенные для работы с областями, для адекватного описания которых одной модели недостаточно.
Предполагается, что перечисленные методы при необходимости должны объединяться для того, чтобы позволить решать задачи сложность которых возрастает одновременно по нескольким параметрам.
Инструментальный комплекс для создания статических экспертных систем
(на примере интегрированного комплекса ЭКО).
Рассмотрим особенности инструментальных средств для создания статических ЭС
на примере комплекса ЭКО, разработанного в РосНИИ ИТ и АП. Наиболее успешно комплекс применяется для создания ЭС, решающих задачи диагностики (технической и медицинской), эвристического оценивания (риска, надежности и т.д.), качественного прогнозирования, а также обучения.
Комплекс ЭКО используется: для создания коммерческих и промышленных экспертных систем на персональных ЭВМ, а также для быстрого создания прототипов экспертных систем с целью определения применимости методов инженерии знаний в некоторой конкретной проблемной области.
На основе комплекса ЭКО было разработано более 100 прикладных экспертных систем. Среди них отметим следующие:
 поиск одиночных неисправностей в персональном компьютере;
 оценка состояния гидротехнического сооружения (Чарвакская ГЭС);
 подготовка деловых писем при ведении переписки с зарубежными партнерами;
 проведение скрининговой оценки иммунологического статуса;
 оценка показаний микробиологического обследования пациента, страдающего
неспецифическими хроническими заболеваниями легких.
Комплекс ЭКО включает три компонента. Ядром комплекса является интегрированная оболочка экспертных систем ЭКО, которая обеспечивает быстрое создание эффективных приложений для решения.
При разработке средств представления знаний оболочки преследовались две основные цели: эффективное решение достаточно широкого и практически значимого класса задач средствами персональных компьютеров; гибкие возможности по описанию пользовательского интерфейса и проведению консультации в конкретных приложениях. При
представлении знаний в оболочке используются специализированные (частные) утверждения типа "атрибут - значение" и частные правила, что позволяет исключить ресурсоемкую операцию сопоставления по образцу и добиться эффективности разрабатываемых
приложений. Выразительные возможности оболочки удалось существенно расширить за
счет интегрированности, обеспечиваемой путем вызова внешних программ через сценарий консультации и стыковки с базами данных (ПИРС и dBase IV) и внешними программами. В оболочке ЭКО обеспечивается слабая структуризация БЗ за счет ее разделения на
отдельные компоненты - для решения отдельных подзадач в проблемной среде - модели
(понятию "модель" ЭКО соответствует понятие "модуль" базы знаний системы G2).
С точки зрения технологии разработки ЭС оболочка поддерживает подходы, основанные на поверхностных знаниях и структурировании процесса решения.
Оболочка функционирует в двух режимах: в режиме приобретения знаний и в режиме консультации (решения задач). В первом режиме разработчик ЭС средствами диалогового редактора вводит в БЗ описание конкретного приложения в терминах языка представления знаний оболочки. Это описание компилируется в сеть вывода с прямыми адресными ссылками на конкретные утверждения и правила. Во втором режиме оболочка решает конкретные задачи пользователя в диалоговом или пакетном режиме. При этом решения выводятся от целей к данным (обратное рассуждение).
Для расширения возможностей оболочки по работе с глубинными знаниями комплекс ЭКО может быть дополнен компонентом К-ЭКО (конкретизатором знаний), который позволяет описывать закономерности в проблемных средах в терминах общих (аб
104
страктных) объектов и правил. К-ЭКО используется на этапе приобретения знаний вместо
диалогового редактора оболочки для преобразования общих описаний в конкретные сети
вывода, допускающие эффективный вывод решений средствами оболочки ЭКО. Таким
образом, использование конкретизатора обеспечивает возможность работы с проблемными средами типа 2.
Третий компонент комплекса - система ИЛИС, позволяющая создавать ЭС в статических проблемных средах за счет индуктивного обобщения данных (примеров) и предназначенная для использования в тех приложениях, где отсутствие правил, отражающих
закономерности в проблемной среде, возмещается обширным экспериментальным материалом. Система ИЛИС обеспечивает автоматическое формирование простейших конкретных правил и автономное решение задач на их основе; при этом используется жесткая
схема диалога с пользователем. Поскольку при создании реальных приложений эксперты
представляют, как правило, и знания о закономерностях в проблемной среде, и экспериментальный материал (для решения частных подзадач), возникает необходимость в использовании правил, сформированных системой ИЛИС, в рамках более сложных средств
представления знаний. Комплекс ЭКО обеспечивает автоматический перевод таких правил в формат оболочки ЭКО. В результате удается получить полное (адекватное) представление реальной проблемной среды, кроме того, задать гибкое описание организации
взаимодействия ЭС с конечным пользователем.
Контрольные вопросы
1. Офисные АИС
1. Что собой представляет процесс
автоматизации
документооборота?
2. Какие операции выполняют системы обработки изображений?
3. Как организовано хранение
больших изображений в системах
обработки изображений?
4. Чем отличается электронная
форма документа в системах IS и
OCR?
5. Чем различается процесс распознавания текста в обучаемых и
интеллектуальных системах? Что
такое качество распознавания
текста?
6. Назовите 4 составляющие системы управления документами.
Где они находятся?
7. В чем особенность выдачи/возврата документа в системе
управления документами?
8. Что собой представляет маршрутизация документов в системах
Groupware?
9. В чем сущность синхронизации
и тиражирования баз данных в
системе Groupware?
10. Назовите разновидность АИС,
105
позволяющую «привязать» документооборот к графику бизнеспроцесса.
2. Экспертные АИС
1. Сформулируйте в одном предложении назначение экспертных систем.
2. Чем отличаются неформализованные
задачи, для решения которых применяются ЭС?
3. Назовите 6 компонентов статической экспертной системы.
4. Укажите место хранения:
а) исходных данных задачи;
б) знаний о предметной области задачи.
5. Кто работает с экспертной системой?
а) в режиме приобретения знаний?
б) в режиме решения?
Для кого из них предназначена «прозрачность» экспертной системы?
6. Назовите 3 критерия, определяющие
целесообразность разработки экспертной системы.
7. Запишите этапы разработки экспертной системы в хронологическом
порядке.
8. Какие 3 требования со стороны пользователя принимаются в расчет при поиске решения в экспертной системе?
9. Какие средства разработки экспертных систем вам известны?
10. Из каких компонентов состоит комплекс ЭКО?
ПРАКТИЧЕСКАЯ РАБОТА № 2:
106
СРАВНИТЕЛЬНАЯ ХАРАКТЕРИСТИКА МОДЕЛЕЙ ЖЦ ИС.
ТЕОРЕТИЧЕСКИЙ МАТЕРИАЛ
Жизненный цикл АИС, его процессы и структура.
1. Понятие о жизненном цикле АИС. Жизненный цикл (ЖЦ) АИС представляет
собой непрерывный процесс, начало которого – принятие решения о создании ИС, а окончание – полное изъятие ее из эксплуатации.
Существует международный стандарт ISO/IEC 12207, в котором описан ЖЦ информационных систем
* ISO – International Organization of Standardization (Международная организация по
стандартизации)
IEC – International Electrotechnical Commission (Международная комиссия по
электротехнике)
Согласно международному стандарту, жизненный цикл АИС складывается из 3-х
групп процессов:
Приобретение
Поставка
Разработка
ОСНОВНЫЕ процессы
ЖИЗНЕННЫЙ
ЦИКЛ
АИС
Документирование
Управление
конфигурацией
Обеспечение
качества
ВСПОМОГАТЕЛЬНЫЕ
процессы
Эксплуатация
Сопровождение
Верификация
Аттестация
Оценка
Аудит
Разрешение
проблем
Улучшение ЖЦ
Управление
проектами
Обучение
Создание
инфраструктуры
2. Основные процессы ЖЦ. Наиболее важными
основными процессами ЖЦ явпроекта
ляются разработка, эксплуатация и сопровождение.
ОРГАНИЗАЦИОННЫЕ
процессы
РАЗРАБОТКА включает в себя:
- все работы по созданию программного обеспечения АИС в соответствии с заданными требованиями;
- оформление проектной и эксплуатационной документации;
- подготовку материалов, необходимых для тестирования АИС;
- разработку материалов, необходимых для обучения персонала.
Разработка – важнейший процесс ЖЦ. Она включает:
Стратегическое планирование → Анализ → Проектирование → Реализация (программирование)
ЭКСПЛУАТАЦИЯ. Можно выделить подготовительные и основные эксплуатационные работы.
Подготовительные работы:
- конфигурирование базы данных и рабочих мест пользователей;
- обеспечение пользователей эксплуатационной документацией;
- обучение персонала.
Основные работы:
- непосредственно эксплуатация;
- выявление проблем и их устранение;
- модификация программного обеспечения;
107
- подготовка предложению по усовершенствованию АИС;
- развитие и модернизация АИС.
СОПРОВОЖДЕНИЕ. Служба технической поддержки играет большую роль. Для
организации квалифицированного техобслуживания АИС необходимо:
- выделить наиболее ответственные узлы системы и определить для них степень
опасности простоя или выхода из строя;
- определить задачи техобслуживания и разделить их на внутренние (решаемые силами обслуживающего персонала) и внешние (за которые будут отвечать сервисные организации);
- проанализировать ресурсы, необходимые для техобслуживания (гарантия на оборудование, состояние ремонтных средства, квалификация персонала);
- подготовить план технического обслуживания (этапы, сроки исполнения, затраты
и ответственные лица).
3. Вспомогательные процессы ЖЦ. Одно из главных мест занимает управление
конфигурацией. Этот процесс поддерживает основные процессы ЖЦ, прежде всего разработку и сопровождение. При разработке сложных АИС, состоящих из множества компонентов, управление конфигурацией систематически учитывает изменения, внесенные в
отдельные компоненты АИС, контролирует их и увязывает в единую систему.
Обеспечение качества проекта связано с верификацией, проверкой и тестированием
АИС. Верификация отвечает на вопрос, соответствует ли текущее состояние разработки
требованиям на данном ее этапе. Проверка устанавливает, соответствуют ли параметры
разработки исходным требованиям. Тестирование проводится для определения различий
между действительными и ожидавшимися результатами оценки АИС.
4. Организационные процессы. Управление проектом связано с планированием
работ, созданием коллектива разработчиков и контролем за сроками и качеством. Организационные процессы:
- выбор методов и средств для реализации проекта;
- определение методов описания стадий разработки;
- разработка методов и средств испытаний АИС;
- обучение персонала.
5. Структура ЖЦ. Полный ЖЦ, как правило, имеет вид:
Стратегическое планирование → Анализ → Проектирование → Реализация (программирование) →
→ Внедрение → Эксплуатация
Часто ЖЦ делят на стадии: начало, уточнение, конструирование и передача в эксплуатацию.
НАЧАЛЬНАЯ СТАДИЯ. Устанавливается область применения АИС и определяются границы ее применения. Для этого нужно выявить все объекты, с которыми должна
взаимодействовать разрабатываемая система, понять, как будет происходить это взаимодействие. В зависимости от этого определяются все функции, которые должна выполнять
будущая АИС, описываются главные из них. На начальной стадии:
- составляются критерии оценки будущей АИС;
- оценивается риск;
- оцениваются ресурсы;
- составляется календарный план разработки.
СТАДИЯ УТОЧНЕНИЯ. Производится анализ прикладной области АИС, разрабатывается ее архитектура. В зависимости от нее намечаются способы проектирования,
устранения факторов риска в проекте.
СТАДИЯ КОНСТРУИРОВАНИЯ. Разрабатывается законченный продукт – АИС,
готовая к передаче заказчику. Определяется ее работоспособность.
108
СТАДИЯ ПЕРЕДАЧИ В ЭКСПЛУАТАЦИЮ. АИС передается заказчику. Начинается ее сопровождение, выявление ошибок и недоработок. В итоге определяется, достигнуты ли поставленные перед разработчиками цели или нет.
Каскадная модель жизненного цикла АИС.
1. Каскадная модель ЖЦ. Модель ЖЦ отражает последовательность процессов,
происходящих на протяжении ЖЦ АИС, а также взаимосвязь между этими процессами.
В стандарте ISO/IEC 12207 описаны две основные модели ЖЦ АИС:
- каскадная (модель водопада);
- спиральная.
Каскадная модель начала использоваться в 70-80-е г.г. 20 века, и сейчас считается
классической. По этой модели работы организуются последовательно. Вся разработка
разбивается на этапы, причем переход с одного этапа на другой происходит только после
того, как полностью завершены все работы. Каждый этап завершается выпуском полного
комплекта документации для команды, которая приступит к выполнению следующего
этапа.
2. Разработка АИС по каскадной модели.
Анализ
Проектирование
Разработка
Тестирование
Сдача
АНАЛИЗ требований заказчика: исследуется проблема, четко формулируются требования заказчика. В результате составляется техзадание, согласованное со всеми заинтересованными сторонами.
ПРОЕКТИРОВАНИЕ: разрабатываются проектные решения. В результате создается комплект проектной документации, в котором изложены все данные по реализации
проекта.
РАЗРАБОТКА (реализация): разработка программного обеспечения в соответствии
с проектными решениями. В результате создается готовый программный продукт.
ТЕСТИРОВАНИЕ: полученное программное обеспечение проверяется на соответствие требованиям, заявленным в техзадании, проводится опытная эксплуатация. В результате выявляются и устраняются скрытые недостатки.
СДАЧА проекта: заказчику показывают, что все его требования выполнены в полной мере.
3. Достоинства каскадной модели.
1) На каждом этапе формируется законченная проектная документация, полная и
согласованная. В заключение разрабатывается еще и пользовательская документация, в
которой описаны все виды обеспечения АИС (организационное, методическое, информационное, программное, аппаратное).
2) Выполняемые последовательно этапы работы облегчают планирование сроков и
затрат.
Каскадная модель разрабатывалась для решения инженерных задач, а потому хорошо себя зарекомендовала при разработке таких АИС, для которых с самого начала
можно точно и полно сформулировать все требования. В таком случае у разработчиков
будет свобода выбора в плане методов разработки. К таким АИС относятся сложные расчетные системы и системы реального времени.
4. Недостатки каскадной модели. При разработке ряда АИС каскадная модель
оказывается либо совсем неприменимой, либо приводит к затягиванию сроков и перерасходу средств. Причина – недостатки каскадной модели:
- существенная задержка в получении результатов;
109
- ошибки и недоработки на любом из этапов проявляются на следующих этапах, и
приходится возвращаться назад;
- невозможно вести параллельную работу нескольких команд по проекту;
- информационная перенасыщенность на каждом этапе;
- сложности в управлении проектом;
- высокий уровень риска и ненадежность инвестиций.
ЗАДЕРЖКА В ПОЛУЧЕНИИ РЕЗУЛЬТАТОВ – главный недостаток каскада. За то
время, что требуется для полного завершения работ данного этапа, могут устареть данные,
произойти изменения в законодательстве, финансовой сфере и т.д. Таким образом, по завершении данного этапа может оказаться, что АИС не соответствует требованиям.
ВОЗВРАТ НА РАННИЕ СТАДИИ – следствие предыдущего недостатка. Возврат к
предыдущим стадиям для устранения обнаруженных ошибок – это срыв графика работ и
конфликты между группами разработчиков. В связи с таким недостатком каскадной схемы ее реальное исполнение выглядит так:
Анализ
Проектирование
Разработка
Тестирование
Сдача
Одной из причин данной ситуации является то, что будущие пользователи системы
иногда не могут четко сформулировать, что они хотели бы получить. Кроме того, заказчики и разработчики часто неправильно понимают друг друга, поскольку заказчики далеки
от программирования, а программисты, к примеру, от бухгалтерии или делопроизводства.
ПАРАЛЛЕЛЬНОЕ ВЕДЕНИЕ РАБОТ при каскадной схеме затруднительно. Даже
если отдельные части проекта делаются одновременно разными командами, все равно
приходится постоянно их согласовывать (синхронизировать). Чем сильнее взаимосвязаны
эти части, тем сильнее зависят друг от друга команды разработчиков, и преимущества параллельной работы просто теряются. Одна группа разработчиков задерживает другую.
Группа предыдущего этапа нашла более эффективное решение, но уже не может его применить: проект ушел на следующий этап. Между командами зреют конфликты.
ИНФОРМАЦИОННАЯ ПЕРЕНАСЫЩЕННОСТЬ возникает вследствие сильной зависимости между группами разработчиков. При внесении изменений в одну из частей
проекта нужно оповестить всех программистов, которые используют эту часть в своей работе. Они должны ознакомиться с изменениями, определить, нужно ли что-то переделывать. И если нужно, то как это затронет других разработчиков, ведь их надо оповестить и
т.д. Документация в итоге растет, как снежный ком. И это не говоря уже о ситуациях, когда меняются сами разработчики (новому нужно изучить массу документации, чтобы приступить к работе).
СЛОЖНОСТЬ В УПРАВЛЕНИИ ПРОЕКТОМ. Одни группы разработчиков должны ожидать результатов работы других групп. Начальство согласовывает сроки и состав
передаваемой документации. В случае обнаружения ошибок требуется время на их исправление. Начальство «отдувается» перед заказчиком за срыв сроков.
ВЫСОКИЙ УРОВЕНЬ РИСКА. Из-за срыва сроков растут финансовые затраты заказчика. Кроме того, если в области применения будущей АИС происходят постоянные
изменения, то систему можно переделывать до бесконечности (разработка «зацикливается»), и так и не сдать. По данным консалтинговой компании Standish Group (США), 31%
проектов корпоративных АИС заканчиваются неудачей, 53% - завершаются с перерасходом бюджета почти в 2 раза, и только 16% укладываются и в срок, и в бюджет.
ПСИХОЛОГИЧЕСКИЙ КЛИМАТ в коллективе разработчиков также страдает при
каскадной модели. Возврат на предыдущую стадию проекта обычно сопровождается по110
иском виновных. В результате
больше всего ценят тех руководителей, которые умеют «отстоять» своих подчиненных, а не
Формулирование
тех, кто по-настоящему профестребований
сионален. Если группу возглавПроектиляет не профессионал, а управрование
ленец, борющийся только за
Версия 1
дисциплину, то наиболее одаВерсия 2
ренные кадры со временем поВерсия 3
кидают такой коллектив.
Спиральная
модель
жизненного цикла АИС.
1. Спиральная модель
Интеграция
Разработка и
ЖЦ. Итерации. Спиральная
тестирование
модель ЖЦ, в отличие от каскадной, использует итерационный процесс разработки АИС. Процесс разработки начинается с анализа и проектирования. Это наиболее важные этапы, т.к. на них создаются прототипы.
ИТЕРАЦИЯ представляет собой законченный цикл разработки, приводящий к выпуску очередной версии изделия. Изделие совершенствуется с каждой последующей итерацией, т.е. появляются все новые, улучшенные версии, и в итоге получается законченная
АИС. Каждый виток спирали приводит к новой версии изделия. С каждой новой итерацией углубляются и конкретизируются детали проекта, выбирается оптимальный вариант,
который и доводится до окончательной реализации.
Использование «спирального» проектирования позволяет переходить на следующий этап проекта, не дожидаясь полного завершения предыдущего, т.к. недоделанную работу можно будет выполнить на следующей итерации. Главная задача итерации – не создать законченное изделие, а как можно быстрее сделать работоспособный продукт, чтобы
показать заказчику. Это упрощает внесение уточнений и изменений в проект.
2. Достоинства спиральной модели. Спиральное проектирование позволяет преодолеть большинство недостатков каскадного, а также дает дополнительные возможности:
1) Итерационная разработка упрощает внесение изменений в проект по требованию
заказчика.
2) Отдельные элементы АИС включаются (интегрируются) в нее постепенно. А поскольку не нужно сразу объединять и связывать все многочисленные элементы системы (в
каскадной модели на это уходит до 40% времени), а предстоит постепенно подключать
сначала один, потом другой и т.д., то и проблем возникает меньше. Таким образом, интеграция происходит не в конце разработки (как в каскаде), а непрерывно.
3) Уменьшается уровень риска, т.к. он обнаруживается именно во время интеграции. А поскольку интеграция идет постоянно, по мере продвижения разработки уровень
риска снижается, т.к. все больше рисков устраняется.
4) Управление проектом становится боРиски
лее гибким. Можно сократить сроки разработки,
уменьшив количество функций системы, или
Каскад
использовать в качестве составных частей не
собственные разработки, а продукцию других
Спираль
фирм.
5) Спиральная модель дает возможность
Время
компонентного программирования (т.е. повторного использования уже разработанных компоАнализ
111
нентов в других АИС). Итерации как раз и позволяют выявить те компоненты, которые
многократно используются.
6) АИС, разработанная по спирали, более надежна и устойчива, т.к. ошибки и слабые места устраняются на каждой итерации, а не в ходе эксплуатации.
7) Процесс разработки совершенствуется: в ходе каждой итерации проводится анализ, который и позволяет понять, что нужно изменить в организации работы над проектом.
3. Недостатки спиральной модели. Основная проблема «спирали» - определить
момент перехода на следующий виток, к новой итерации. Для решения этой проблемы
вводятся ограничения по времени для каждого этапа ЖЦ. Иначе совершенствовать АИС
можно до бесконечности, а лучшее, как известно – враг хорошего. Поэтому итерацию
обычно завершают в соответствии с планом, даже если не вся запланированная работа закончена. Планирование затрат времени проводится на основе опыта предыдущих проектов и самих разработчиков.
ТЕСТ
«Жизненный цикл автоматизированной информационной системы»
1. Укажите начальную точку жизненного цикла АИС:
а) проектирование АИС;
б) принятие решения о создании АИС;
в) ввод АИС в эксплуатацию.
2. Чем заканчивается жизненный цикл АИС?
а) вводом АИС в эксплуатацию;
б) сопровождением;
в) выводом АИС из эксплуатации.
3. Как правильно обозначается международный стандарт, в котором описывается
жизненный цикл АИС?
а) ISQ/IEC 12200;
б) ISO/IEC 12207;
в) ISO/ICE 12207.
4. Укажите правильное разделение процессов жизненного цикла АИС:
а) подготовительные, основные и заключительные;
б) планирование, проектирование и эксплуатация;
в) основные, вспомогательные и организационные.
5. Какой из перечисленных ниже процессов жизненного цикла АИС является основным:
а) разработка;
б) управление конфигурацией;
в) обучение разработчиков.
6. Какой из перечисленных ниже процессов жизненного цикла АИС является
вспомогательным:
а) верификация;
б) эксплуатация;
в) управление разработкой.
112
7. Какой из перечисленных ниже процессов жизненного цикла АИС является организационным:
а) сопровождение;
б) улучшение жизненного цикла;
в) документирование.
8. Расставьте процессы разработки АИС в хронологическом порядке:
а) Проектирование → Планирование → Реализация → Анализ
б) Анализ → Планирование → Проектирование → Реализация
в) Планирование → Анализ → Проектирование → Программирование
9. Какой из процессов эксплуатации АИС следует осуществить раньше всех
остальных:
а) конфигурирование компьютерной системы предприятия;
б) усовершенствование АИС;
в) обучение персонала предприятия.
10. По какому принципу сопровождение АИС делится на внутреннее и внешнее?
а) внутреннее сопровождение требуется на случай ошибок, вызванных низкой квалификацией персонала; внешнее – на случай ошибок, допущенных разработчиками;
б) внутреннее сопровождение осуществляют сотрудники предприятия, внешнее – сервисные организации;
в) такого деления не существует.
КОНТРОЛЬНОЕ ЗАДАНИЕ № 1 (по лекционному материалу): дайте ответы
на вопросы.
1. Несмотря на принципиальные различия каскадной и спиральной моделей
ЖЦ АИС, их основные этапы остаются одинаковыми. Перечислите эти этапы.
2. Сформулируйте основное различие между каскадной и спиральной моделями ЖЦ АИС.
3. По какой модели следует разрабатывать АИС, чтобы сократить время разработки? За счет чего будет сокращено это время?
КОНТРОЛЬНОЕ ЗАДАНИЕ № 2:
1) ознакомьтесь со статьей «Проектирование и практическая разработка медицинской информационной системы»;
2) ответьте на вопросы.
Проектирование и практическая разработка
медицинской информационной системы
Гусев А.В., член-корр. РАМН Дуданов И.П., Романов Ф.А., Дмитриев А.Г.,
Карельский научно-медицинский центр СЗО РАМН, Петрозаводск
1. Проблемы разработки медицинских информационных систем (МИС)
В последние годы в России появился целый ряд уникальных разработок в области
комплексных медицинских информационных систем (МИС), предназначенных для
113
автоматизации работы учреждений здравоохранения. Одними из самых интересных являются:
- информационная система "Интерин" (Институт программных систем РАН),
- МИС "Артемида",
- МИС "Амулет" и некоторые другие.
Эти системы не только разработаны, но и активно развиваются – распространение
и признание они получили в последние 2-3 года. В литературе опубликованы положительные отзывы коллективов клиник самого разного профиля и масштабов об опыте применения информационных систем в работе. Наметилась тенденция на комплексное решение разносторонних задач лечебного учреждения, что особенно радует и свидетельствует
о качественном росте отечественных разработчиков в области медицинской информатики.
Однако при более глубоком изучении этого процесса все сильнее выделяется существенная проблема: несмотря на наличие глубоко проработанных программных решений, практически отсутствует опыт полного перехода на электронный принцип хранения и обработки информации в лечебном учреждении. Имеется ряд серьезных преград,
через которые не могут перешагнуть даже современно оснащенные клиники в своем
стремлении отказаться от бумажных носителей информации и повысить эффективность в
организации своей работы. Все эти преграды могут быть объединены в несколько групп.
Во-первых, существующая в России правовая база не обеспечивает должного
уровня юридической защиты медицинских работников, применяющих информационные технологии в повседневной практике.
Во-вторых, финансовые ресурсы большинства учреждений здравоохранения
пока не могут позволить им приобрести достаточное количество компьютерной техники и дорогостоящего программного обеспечения для комплексной автоматизации.
Поэтому автоматизация удается лишь в некоторых, зачастую далеких от медицинской
направленности, разделах работы больницы: статистика, бухгалтерия, отдел кадров и т. д.
В-третьих, в России практически отсутствует школа, которая бы готовила
профессионалов высокого уровня в области разработки и внедрения именно комплексных медицинских информационных систем, людей по определению работающих
на стыке сложнейших наук – медицины и прикладной математики. Для становления отечественной школы в этой области творческим коллективам необходимо обмениваться
наблюдениями и мнениями в разработке программных продуктов, накапливая тем самым
специальные знания и формируя потенциально выгодные направления разработки и внедрения комплексных МИС.
2. Технология разработки МИС «КОНДОПОГА»
Коллектив авторов, упомянутый в заглавии работы, имеет 5-летний опыт в разработке медицинской информационной системы. За это время изучена на практике эффективность различных подходов. Применялись:
- Microsoft FoxPro разных версий;
- CA Clipper;
- Lotus Notes, начиная с версии 4.6;
- СУБД Microsoft SQL Server;
- Microsoft Access;
- Borland Paradox;
- MySQL;
- IBM DB2.
Программное обеспечение было написано на Borland Delphi, Java, применялись
Lotus Designer, мультиплатформенный Lotus Script и некоторые другие технологии.
Серверная часть системы работала под управлением Microsoft Windows NT
Server, Microsoft Windows 2000 Server и Red Hat Linux 6.0.
В качестве клиентской операционной системы применялись все версии Windows,
начиная с Microsoft Windows 95.
114
Кроме инструментария, была проведена работа по изучению эффективности различных методик проектирования базы данных МИС. В итоге мы остановились на применении принципа объектно-реляционной методики. В силу особенностей медицинского
учреждения необходимо разрабатывать информационную систему на базе синтеза двух,
различных по своей природе, систем управления базами данных (СУБД) – объектноориентированной и реляционной. Только так удается исключить недостатки обоих
СУБД и использовать их достоинства. В качестве основной СУБД используется Lotus
Domino Server R6.0.3 для функционирования объектной части МИС и MySQL 4.0.17 для
реляционной составляющей системы.
Одной из самых существенных причин увеличения стоимости МИС мы считаем высокую стоимость самой разработки. Изучив причины этого явления, мы пришли к выводу, что не последнюю роль в этом сыграла традиция создания медицинских
информационных систем на основе так называемых АРМ (автоматизированных рабочих мест). Чаще всего разработка АРМ ведется по следующей методике: разработчики
выбирают некоторую общую задачу (например, создание электронной истории болезни
для стационара), проектируют структуру базы данных, разрабатывают приложение для
работы с ней. Нередко это приложение выполняется в виде нескольких версий – АРМ
главного врача, АРМ регистратора, АРМ лаборанта и т. д. Разработка систем в 65% случаев ведется на Borland Delphi. При этом даже на выпуск очень сырой версии АРМ тратится
4-8 месяцев. Затем столько же времени уходит на обкатку. Вместе с тем, по нашим оценкам, разработчику приходится 10-20% времени тратить на создание специфичного для медицинской области кода. Остальная часть, причем самая трудоемкая и ответственная,
приходится на разработку механизмов, обеспечивающих целостность данных, подсистему
безопасности и администрирования МИС, связь с периферийным медицинским оборудованием и т. д.
Не вызывает сомнений, что методика АРМ устарела и значительно уступает новым корпоративным технологиям, над которыми трудятся лучшие специалисты и которые
прошли многолетнюю проверку. На наш взгляд, разработка МИС не должна идти по пути
создания и дальнейшей интеграцией отдельных АРМ. Для создания МИС необходимо
применять готовые программные платформы для групповой работы, уже имеющие в
своем арсенале мощные средства для мультиплатформенной разработки программы, готовые технологии для развертывания и управления подсистемой безопасности. В своей работе мы выбрали пакет групповой работы Lotus Notes/Domino, разрабатываемый в настоящее время корпорацией IBM. Эта платформа является за рубежом стандартной для создания мощных информационных систем, ориентированных на обработку электронных
документов, и мы считаем, что Lotus Notes/Domino наиболее подходит для создания
медицинских информационных систем.
Работа над созданием МИС "Кондопога" на основе Lotus Notes/Domino версии 4.6
начата в сентябре 1999 года. Через 2 месяца МИС была поставлена в эксплуатацию. Разработанная МИС включала:
- подсистему работы врача;
- подсистему клинической и биохимической лаборатории;
- подсистему функциональной и рентгенологической диагностики;
- подсистему аптеки;
- подсистему планирования рабочего времени.
Еще через 2 месяца лечебное учреждение, использующее систему, полностью перешло на электронный способ хранения информации, отказавшись от бумажных носителей.
3. Объектно-реляционная база данных МИС
Другим важным решением явился отказ от проектирования базы данных МИС
по функциональному назначению, когда для отдельной задачи (например, подсистема
лаборатории, функциональной диагностики, консультационная и т. д.) создавалась своя
115
база данных. И хотя такой подход имеет ряд преимуществ (снижаются требования к аппаратной мощности сервера за счет разделения потоков пользовательских запросов), было
избрано проектирование БД МИС таким способом, что вся информация собиралась вокруг пациента и хранилась физически в одной БД.
Количество БД в МИС, в принципе, может быть различным и зависит от количества функциональных групп пользователей, имеющихся в лечебном учреждении. Так, в
стационаре это может быть выделенная БД для каждого отделения или корпуса. Для поликлиники это могут быть БД, разделенные по участкам обслуживания. Кроме того, в
этих БД специальным образом хранится только актуальная информация, а неиспользуемые данные помещаются в БД архива. Для решения ряда задач может быть принята либо
связанная с объектно-ориентированным ядром реляционная БД, либо специальным образом сконструированные регистры (рис. 1).
Проектирование структуры БД таким образом позволяет достичь стабильно малого объема БД МИС в течение практически всего срока ее эксплуатации, а тем самым обеспечить максимально возможную производительность работы МИС. Так, начиная
с 1999 года база данных историй болезни пациентов, проходящих реабилитацию в медицинском центре, имеет объем 26-29 Мбайт. При этом вся информация за время работы
центра сохранена, а скорость работы остается стабильно высокой.
4. Технология использования сервисов middleware
Таким образом, необходимо разработать алгоритмы всех программ МИС так, чтобы они могли корректно работать с базой данных текущих документов, состоящей из одной или нескольких частей. Это вызвано тем, что в некоторых случаях программам необходимо обработать данные не только по отдельной части базы данных, но и по всей имеющейся в ней информации. В связи с этим необходимо перед каждым обращением к серверу выполнять ряд последовательных шагов:
- определить, какое количество физических баз данных и их имен соответственно
установлено на сервере;
- определить возможность доступа к каждой базе данных в отдельности;
- выполнить соответствующий запрос к каждой базе данных, указав в правильном
формате полный адрес, включающий имя сервера и имя базы данных на нем;
- обработать и запомнить полученный ответ;
- повторить шаги 2-4 для каждой базы данных;
- сложить накопленные ответы и обработать их, как единый пакет информации.
Доказано, что для эффективного решения такой задачи необходимо исключить в
текстах программ МИС прямое обращение к базам данных. Взамен этого предложено использовать специальное промежуточное программное обеспечение, называемое сервисами middleware. Сравнение затрат труда при использовании общего кода (middleware)
и уникального кода дано в таблице:
Общий код (middleware)
Уникальный код
Подсистема
% от все- % времени на
% времени на
% от всего
го
разработку
разработку
Документы ИБ и АК
45
10
55
90
Лабораторная подсисте74
38
26
62
ма
Статистика
17
9
83
91
Как представлено в таблице, в некоторых видах ПО доля повторяющегося кода составляет значительную часть. Исключение его из этапа разработки нового приложения
позволило сократить среднее время создания новой программы с 3,8 до 2,9 недель (на
23,68%). Кроме этого, использование проверенных библиотек позволило значительно, на
116
35-50%, сократить количество последующих исправлений ошибок. Фактически вся основная работа над ошибками была связана с исправлением уникального кода, и лишь в редком случае (в среднем 5-7 ошибок на 100 исправлений) – с исправлением используемых
middleware-сервисов.
Анализ ошибок и исправлений в МИС:
Общий код (middleware)
Кол-во
Время
Подсистема
ошибок
исправления
в неделю (часов в неделю)
Микроядро системы
26
4,5
Статистика
8
6,2
Лабораторная подсисте1,2
3,4
ма
Внешние программы
13
14,2
Календари
3
4,4
117
Уникальный код
Кол-во
Время
ошибок
исправления
в неделю (часов в неделю)
2,9
3,5
1,3
0,8
0,2
1,2
2,5
0,4
6,5
1,2
Удаленный доступ с ПК других
ЛПУ
Первичная регистрация пациентов
Регистр
пациентов
с сахарным диабетом
СпециализироРегистр
ванные
регистры
пациентов
пациентов
с гипертонией
База паспортных
данных
БД назначенных консультаций
БД амбулаторных
карт
Доступ на медицинских работников
Сдача
АК в
архив
БД статистики
БД профосмотра
БД историй болезни
Центральный
медицинский
справочник
Ядро системы
БД диспансерного
Реляционная
часть
наблюдения
Архив
Сдача ИБ в архив
БД аптеки
БД календарей
БД стандартов
Документооборот
Информационный сайт
БД других МИС
Дополнительные службы
Рис. 1. Укрупненная схема объектно-реляционной БД МИС
Дополнительно с широким применением базовых библиотек класса middleware,
выполненных в виде динамически подсоединяемых библиотек (Dynamic Link Libraries,
DLL), было предложено встроить во все основные функции единый обработчик ошибок.
В случае фатального прекращения работы какой-то функции middleware он пересылал системе результат, переданный по умолчанию, и дополнительно отправлял максимально
возможную информацию разработчику по e-mail. Это позволило сократить время, необходимое на анализ и исправление ошибки в среднем на 45-55%. Нередко исправление ошибки производилось уже до того, как пользователь сообщал об этом программистам.
Необходимо отметить, что применение модели программного обеспечения системы
на основе использования общих сервисов middleware позволяет применять эволюционный
метод, называемый «спиральной моделью» (Spiral Model). При этом возможно внедрение новых версий информационной системы путем простого подмена базовых сервисов на
новые версии. Эти версии могут работать как со старой информационной системой, так и
118
с новой, без необходимости повторного обучения персонала или исправлений в структуре
существующей базы данных.
Таким образом, применение сервисов middleware позволило в среднем увеличить
появление новых версий программ с 4 до 7 в месяц (на 75%), снизив удельную стоимость
каждой новой версии на 22%. Применение указанных технологий позволило разработать
систему со значительной экономией. Так, разработка крупнейшей отечественной МИС
"Интерин" длится 9 лет, штат разработчиков насчитывает 25 человек. Разработка нашей
ИС осуществляется 4 года, и только 2 последних из них в ней постоянно участвует 2 программиста. Приняв, что данная МИС содержит только 50% от возможностей МИС "Интерин", зарплата одного программиста составляет около $300 (долл. США), а работа ведется
11 месяцев в году, получена экономия по сравнению с традиционными технологиями
около $75900 в год. Таким образом, за 4 года работы стоимость разработки МИС на основе объектно-реляционного подхода составила 5,3% от суммы, которая потребовалась бы
для создания МИС с применением традиционного подхода.
5. Поддержка МИС
На этапе, когда ИС становится пакетом многочисленных программ, остро встает
вопрос их поддержки. Актуальность ее растет вместе со сроком эксплуатации и ростом
количества пользователей. Наряду с начальными капитальными затратами, администрирование информационной системы составляет значительную цифру в смете расходов
ЛПУ. Применение сложных комплексных информационных систем требует высококвалифицированного штата программистов и администраторов. С ростом количества подключенных к базе данных системы пользователей растет и сложность ее обслуживания. В
таблице приведены средние еженедельные затраты времени работы администратора МИС,
полученные в результате хронометрических исследований в медицинском центре.
Трудозатраты администратора МИС
% общего
№
Вид деятельности
Примечание
времени
1 Обслуживание вызовов пользователей на местах
38
2 Установка пакетов исправлений
17
3 Отправка сообщений об ошибках разработчикам системы
7-8
Плановое обслуживание клиентских ПК (дефрагментация
4
6,9
диска, проверка на вирусы)
5 Знакомство с литературой
5
6 Анализ журналов безопасности
4
45,7% при внед7 Установка новых приложений
3,5-45,7
рении системы
Контроль за новыми версиями ПО и публикациями ис8
3,2
правлений
Максимум при
9 Исправление сбоев в клиентских операционных системах 0,1-2,1
Windows 95/98
Внесение исправлений в системные справочники, текуМаксимум – при
10
0,3-8,6
щие изменения настроек приложений
внедрении
11 Прочие
14,2
Использование встроенных в middleware-приложений глобальных обработчиков
ошибок позволяет сократить время по п. 3 (отправка отчетов об ошибках) практически до
нуля, т. к. вся ключевые отчеты система формирует и отправляет автоматически. Обслуживание вызовов пользователей, исправление локальных сбоев на компьютерах пользователей и внесение исправлений в справочники системы являются практически неуправляе119
мыми факторами. Плановое обслуживание компьютеров, анализ журналов работы системы, чтение специальной литературы – это должностная обязанность администратора системы.
Следовательно, управляемыми факторами, способными сократить (перераспределить) трудозатраты технического персонала на обслуживание системы являются:
- установка приложений системы;
- установка исправлений (в т. ч. самой ИС и общесистемного ПО);
- контроль за новыми версиями ПО.
Причиной высоких показателей в этих категориях является традиционный способ
установки прикладного ПО: администратор сети запускает инсталляционные пакеты на
компьютерах пользователей, а затем по мере появления ставит так называемые "заплатки"
к ним. Учитывая высокие показатели в выходе новых версий отдельных программ МИС
на базе ООП, 1 администратор может обслуживать до 22-25 пользователей. По нашему
опыту, время от появления пакета исправлений до его полной инсталляции на всех компьютерах сети может составлять от 2-3 суток при работе 50 станций до 4-7 суток при работе 100-150 станций. Этот факт чреват тем, что злоумышленник может воспользоваться
этим промежутком для нарушения системы безопасности или другого нанесения вреда,
если он знает механизм ошибки, которую планируется исправить "заплаткой".
Анализируя эти проблемы, было предложено использовать новую технологию
установки и обновления приложений. Суть ее работы состоит в следующем: в системе
имеется выделенная база данных дистрибутивов приложений. Все команды на запуск
приложений используют в своей работе специальный сервис, предоставляемый системой.
Ей передается команда на запуск приложения, содержащая код программы и параметры ее
запуска. Всю необходимую работу выполняет система, используя алгоритм:
1) Определяется, имеется ли описание программного продукта с переданным кодом
в центре программ. Если описание не найдено, выдается сообщение об ошибке.
2) Вычисляются из описания программы необходимые данные, в частности: номер
версии ПО, имя исполняемого файла и т. д.
3) Проверяется, имеется ли вызываемое ПО на компьютере пользователя: если нет,
производится инсталляция программного обеспечения – из базы данных извлекаются необходимые файлы и настройки, создается программная папка и выполняется копирование
файлов и т. д. После окончания процесса установки исполняемый файл запускается.
Если вызываемое ПО имеется на компьютере пользователя, проверяется его версия
и сравнивается с версией в центре программ. В случае, если на локальном компьютере содержится устаревшая версия, производится обновление программных файлов в зависимости от настроек одним из следующих способов:
- метод переустановки; он является наиболее простым решением; при его использовании, однако, механизм синхронизации должен оценить следующие факторы: доступность обновленного дистрибутива, его объем и время копирования на данную рабочую
станцию, права доступа данного пользователя к нужному дистрибутиву, возможные ограничения, накладываемые администратором сети на данный дистрибутив;
- метод обновления; он более трудоемкий; его суть в том, что на данном компьютере приложение не переустанавливается целиком, а лишь перезаписывается его исправленная часть; этот метод имеет преимущество в том, что объем данных для исправления значительно меньше по сравнению с полным дистрибутивом;
- метод исправления справочников; применяется, если приложение само не изменило свою версию, однако его справочник устарел по сравнению с эталоном системы.
Если все проверки пройдены, исполняемый файл запускается.
Применение данной технологии позволило сократить время, необходимое на обновление клиентского программного обеспечения с 2-3 дней до 5-10 сек. (в среднем), снизить затраты ЛПУ на администрирование информационной системы на 47,8% за счет
снижения трудозатрат администратора системы и возможности совмещения ставок про120
граммиста и администратора. Ежегодная экономия составляет около $72 на одного пользователя.
КОНТРОЛЬНЫЕ ВОПРОСЫ
1. На какие проблемы в создании медицинских информационных систем (МИС)
указывают авторы статьи?
2. В чем заключается объектно-реляционная методика проектирования МИС?
Назовите СУБД, использованные для работы с каждой из частей данной МИС.
3. Почему использование программного пакета Lotus Notes/Domino более выгодно
при проектировании МИС, чем методика автоматизированных рабочих мест (АРМ)?
4. Чем определяется количество баз данных в МИС, проектируемой по объектнореляционному принципу?
5. Поясните, что собой представляет сервис middlware.
6. В чем состоит выигрыш от применения middlware-сервисов при разработке
МИС?
7. Как работает новая технология установки и обновления приложений, использованная при сопровождении данной МИС?
121
ПРАКТИЧЕСКАЯ РАБОТА № 3:
МЕЖДУНАРОДНЫЙ СТАНДАРТ ISO/IEC 12207.
122
123
124
125
КОНТРОЛЬНЫЕ ВОПРОСЫ:
1. Что определяет международный стандарт ISO/IEC 12207?
2. Дайте определение информационной системы согласно стандарту ISO/IEC
12207.
3. Из чего состоит жизненный цикл АИС согласно стандарту ISO/IEC 12207?
4. Сформулируйте два основных различия между методикой CDM и стандартом ISO/IEC 12207.
5. Назовите процессы жизненного цикла АИС по стандарту ISO/IEC 12207:
Основные
Вспомогательные Организационные
1)
1)
1)
2)
2)
2)
3)
3)
3)
4)
4)
4)
5)
5)
6)
7)
8)
6. Объясните, в чем заключается динамический характер реализации жизненного цикла АИС по стандарту ISO/IEC 12207?
7. Что означает адаптивность стандарта ISO/IEC 12207?
8. Является ли соблюдение стандарта ISO/IEC 12207 обязательным (да, нет, частично)? Поясните, почему.
9. К каким составляющим АИС в стандарте ISO/IEC 12207 предъявляются квалификационные требования?
10. В чем состоит ответственность сторон, использующих стандарт ISO/IEC
12207?
126
ПРАКТИЧЕСКАЯ РАБОТА № 4:
УНИФИЦИРОВАННЫЙ ЯЗЫК МОДЕЛИРОВАНИЯ UML.
1. Универсальный язык моделирования UML. Разработка универсального языка
моделирования UML (Unified Modeling Language) началась в 90-е г.г. ХХ века на базе объектно-ориентированного программирования. В настоящее время этот язык является общепринятым стандартом для документирования процесса создания АИС и программного
обеспечения. Основной вклад в разработку UML внесли Грэди Буч, Джим Румбах, Ивар
Якобсон. Язык UML совершенствуется (современная версия – 2.0).
2. Предшественники UML. Первой причиной создания языка UML послужило то,
что проектируемые АИС становились все более сложными и, соответственно, усложнялась их документация. Когда количество объектов ИС превышает 8-10, человеку уже
сложно работать с информацией по такой системе. В современных АИС количество объектов исчисляется тысячами и десятками тысяч, а число связей между объектами – миллионами. Например, навигационная система размещается на тысячах автомобилей, морских и речных судов, железнодорожных составов, десятках спутников Земли, а число
компьютеров в ней вообще не поддается исчислению. Такие ИС создаются группами разработчиков, с разделением обязанностей на аналитиков, проектировщиков, программистов, тестеров и, конечно, руководителей. Там, где трудится большой коллектив, необходим универсальный язык общения. У инженеров это чертежи, у электронщиков – схемы.
У программистов долгое время таким языком являлись алгоритмические блок-схемы и
человеческий язык. Но даже дилетант знает, что разобраться в коде чужой программы без
пояснений нереально (часто программист не может разобраться в собственной программе,
если она написана давно).
Язык UML служит «иллюстрацией» к программному коду. Создание описаний на
этом языке аналогично созданию проекта здания в строительстве: при строительстве сарая
без него можно обойтись, но чем сложнее здание, тем больше необходимость в четком
проектировании каждого этапа.
Второй причиной создания UML явилось то, что большинство современных АИС
основаны на объектно-ориентированном программировании. Напомним, что в основе таких систем лежит система из множества связанных объектов (иерархия объектов). У каждого объекта – свой набор свойств, свои связи и отношения с другими объектами. Удачно,
изящно построенная иерархия объектов – залог успеха разработки АИС. Создание иерархии – сложный интеллектуальная работа, по ходу которой аналитику необходимо быстро
фиксировать возникающие идеи, но так, чтобы потом всем остальным разработчикам было понятно, что он хотел сказать. Такая возможность появилась в виде UML.
3. Предметная область. Предметная область – реальная область жизни, для которой проектируется АИС. Те аналитики и проектировщики, которые лучше всех разбираются в ней, т.е. работают в постоянном контакте с заказчиком, составляют для всех
остальных разработчиков словарь предметной области.
В СЛОВАРЬ ПО включаются термины, используемые специалистами предметной
области (бухгалтерами, менеджерами, экологами, кем угодно). К каждому термину прилагается его краткая расшифровка. По ходу разработки словарь постоянно дополняется. Основная задача аналитика – провести анализ предметной области, то есть:
- выявить все объекты;
- описать свойства каждого объекта;
- описать отношения и связи между объектами.
В анализе ПО существует несколько методов.
Метод АББОТА. Предметная область описывается на простом человеческом языке,
но с условием: объекты обозначаются только существительными, а связи и отношения
между ними – только глаголами.
127
Метод
CRC-КАРТОЧЕК.
Сокращение
обозначает
Class-ResponsibilitiesCollaborators: Класс-Ответственность-Участники. Метод предложили Кент Бек и Уорд
Каннигхэм. CRC-карточки представляют собой обычные картонные карточки 10х15 см, на
которых карандашом сверху пишется название класса, слева – за что он отвечает, справа –
с какими классами он взаимодействует (сотрудничает, обменивается сообщениями). В ходе анализа появляются новые карточки, в старые вносятся изменения. Крупные классы
разбиваются на подклассы, функции одного класса передаются другому и т.д. Карточки
раскладываются в разном порядке, пока не получится оптимальная иерархия.
Метод БУЧА. Этот метод стал основой языка UML.
128
129
130
131
132
133
ПРАКТИЧЕСКАЯ РАБОТА № 5:
СТРУКТУРА UML: МЕТАМОДЕЛЬ И ДИАГРАММЫ.
1. Структура UML. В языке UML выделяются 2 основные составляющие:
- метамодель;
- диаграммы «сущность-связь» (ER-диаграммы).
2. Метамодель. МЕТАМОДЕЛЬ представляет собой описание структуры языка,
его основных понятий и методов. Основными понятиями UML являются понятия объектно-ориентированного программирования, т.к. именно на нем этот язык основан: класс,
объект, событие, ассоциация, наследование и др.
Метамодель описывается на обычном человеческом языке с применением конструкций языка UML. Она придает языку строгость и четкость.
3. Диаграммы «сущность-связь». Их еще называют UML-диаграммами. Задача
диаграммы – передача информации о строении АИС между участниками проекта. Обычно
задание на проектирование программисту выдается в виде набора UML-диаграмм. На диаграммы распространяется авторское право, так же, как и на программы в машинном коде.
Диаграммы
ПРЕЦЕДЕНТОВ
(вариантов
использования)
Диаграммы
КЛАССОВ
Диаграммы
СОСТОЯНИЙ
UML-диаграммы
Диаграммы
АКТИВНОСТИ
(деятельности)
Диаграммы
КОМПОНЕНТОВ
Диаграммы
РАЗВЕРТЫВАНИЯ
Диаграммы
ВЗАИМОДЕЙСТВИЯ
Диаграммы
ПОСЛЕДОВАТЕЛЬНОСТИ
Диаграммы
КООПЕРАЦИИ
(сотрудничества)
При проектировании АИС может быть составлено множество диаграмм одного вида, а некоторые виды могут вообще отсутствовать. Порядок построения диаграмм свободный.
ДИАГРАММА ПРЕЦЕДЕНТОВ. Служит для выявления и формального представления требований заказчика к проектируемой ИС. ДП описывает, какие возможности будет
предоставлять ИС пользователю, какая информация необходима для выполнения запроса
пользователя.
Для диаграмм в языке UML определена форма записи – НОТАЦИЯ.
Конечный пользователь (человек или устройство) изображается в виде человеческой фигурки (Actor).
Пользователь задействует систему определенным образом – осуществляет прецедент (вариант использования). Прецедент обозначается овалом, внутри которого пишется
наименования варианта использования (Use Case).
Для пояснения содержания диаграмм используют примечания (лист с загнутым углом, внутри – текст примечания). Примечание соединяется пунктирной линией с тем элементом диаграммы, к которому относится.
Совокупность операций, предоставляемых классом или
компонентом системы, называется интерфейсом. Он дает пользователю возможность совершить определенное действие или получить информацию. Интерфейс доступен пользователю в виде датчика, обращения к
базе данных, кнопки, бланка заявления и т.д. Интерфейс обозначается
кружком, рядом с которым указывается его наименование.
134
Примечание: наименования на диаграммах предпочтительнее писать по-английски (это удобнее для программ-компиляторов).
Между компонентами диаграммы прецедентов могут существовать различные отношения. Отношения могут быть между пользователями и прецедентами, между несколькими пользователями, между пользователем и несколькими прецедентами. Отношения записываются на диаграммах согласно правилам нотации:
- отношение ассоциации: устанавливает
роль пользователя в системе, обозначается
сплошной линией между пользователем и прецедентом (а);
- отношение расширения: определяет взаимосвязь прецедента с прецедентом, возможности
которого он может использовать, обозначается пунктирной стрелкой с пометкой «extend»
от дополняющего прецедента к расширяемому. Например, прецедент В может быть дополнен прецедентом А (б);
- отношение обобщения: показывает, что компонент (пользователь или прецедент)
является частным случаем другого компонента, обозначается сплошной стрелкой от общего к частному (в);
- отношение включения: указывает на включение прецедента в другой прецедент в
качестве составной части, причем один и тот же прецедент может быть включен в несколько других, более крупных; обозначается пунктирной стрелкой, направленной от базового прецедента к включаемому с пометкой «include» (г).
Над стрелкой цифрами указывается кратность отношения,
т.е. количество возможных компонентов данного отношения
(сколько раз пользователь может задействовать систему данным
образом). Если это количество любое, то оно обозначается «*».
На диаграмме прецедентов не указывается, в какой последовательности выполняются операции. Данная информация содержится на
диаграммах активности, взаимодействия и состояний.
ДИАГРАММА КЛАССОВ. Классом в языке UML
называется множество объектов, обладающих одинаковой структурой, свойствами, отношениями с другими
объектами. Класс представляется в виде прямоугольника с 4-мя секциями (имя
класса – обязательно, оно
пишется жирно, остальные секции могут отсутствовать); а – общий вид, б – пример. Объекты, входящие в класс, называются экземплярами.
Между компонентами диаграммы классов могут также существовать различные
отношения:
- отношение зависимости: пунктирная стрелка
от зависимого класса к независимому; например,
сумма кредита определяется исходя из характеристик клиента (свойства класса «Кредит» зависят от свойств класса «Клиент»);
135
- отношение ассоциации: устанавливает связь
между классами; например, клиент делает покупки и при этом может купить любой товар или
не купить никакой (0*..), и любой товар может
быть продан любому покупателю или не быть
купленным никем (0*..); если ассоциация связывает много классов (N), она изображается ромбом;
Частные случаи ассоциации:
- исключающая ассоциация (указывает на возможность связи данного класса только с одним
из нескольких классов);
- агрегация (означает включение нескольких
классов в другой класс);
- композиция (показывает, что компонент состоит из нескольких частей, которые не могут существовать отдельно от него).
- отношение обобщения: показывает, что компонент является частным случаем другого компонента (наследует его свойства).
136
ДИАГРАММА СОСТОЯНИЙ. В процессе работы АИС ее объекты принимают различные состояния, переходят из одного состояния в другое, обмениваются сообщениями.
Диаграмма состояний описывает изменения, происходящие с одним экземпляром данного
класса объектов. Состояния объекта показываются прямоугольниками с закругленными
вершинами. В каждом прямоугольнике обязательная секция – имя состояния (глагол, причастие или деепричастие) и несколько других секций – для обозначения действий объекта
в этом состоянии.
Начальное состояние – черный кружок, конечное – черный
кружок в белом кольце. Эти состояния могут отсутствовать
(например, у системы, которая запускается, а дальше работает в
непрерывном режиме, нет конечного состояния).
Переходы между состояниями считаются мгновенными.
Они изображаются стрелками, над которыми могут указываться:
- событие, вызвавшее этот переход (event); в этом случае переход называется триггерным: он не произойдет, пока не случится соответствующее событие; если такого события нет, переход нетриггерный: он произойдет сразу после выполнения всех действий в
данном состоянии;
- условие допустимости этого перехода (сторожевое условие); переход произойдет,
только если это условие выполняется;
- действия, сопровождающие этот переход.
ДИАГРАММА АКТИВНОСТИ. На данной диаграмме показывается движение данных в системе. Начальное и конечное состояние объекта изображаются так же, как на
диаграмме состояний. Действие над данными показывается прямоугольником с закругленными вершинами, внутри указывается производимое действие (текст, математическое
выражение и т.д.). Движение данных показывается сплошной стрелкой. Возле стрелки
может быть указано сторожевое условие, особенно если путь данных разветвляется. Ветвление изображается ромбом, из которого выходят две и более стрелки (как на блок-схеме).
Слияние потоков данных изображается символом:
Диаграмма активности позволяет показать разделение ответственности
за различные операции путем введения дорожек. Например:
ДИАГРАММА ПОСЛЕДОВАТЕЛЬНОСТИ. Отображает процесс обмена сообщениями между объектами. Основные участники диаграммы последовательности – пользователь, объект (прямоугольник с подчеркнутым именем), линия жизни объекта (вертикальная пунктирная линия), сообщение (горизонтальная стрелка) и фокус управления
(прямоугольник на линии жизни). Уничтожение объекта – жирный крест. Фокус управления показывает, какой именно элемент находится в активном состоянии (действует). Фокус может быть одновременно у нескольких объектов, передаваться от одного объекта
другому. Сообщения помечаются пояснительными надписями:
«call» - вызов объектом другого объекта
«return» - возврат значения вызвавшему объекту
«create» - создание объекта
«destroy» - уничтожение объекта
«send» - посылка сигнала
137
Например, система замера температуры и давления в помещении:
138
ПРАКТИЧЕСКАЯ РАБОТА № 6:
РАЗРАБОТКА UML-ДИАГРАММ.
ЗАДАНИЕ 1: заполнить таблицу.
ТАБЛИЦА «ПРАВИЛА НОТАЦИИ»
Наименование объекта UML-диграммы
Изображение объекта
на диаграмме
Пользователь
Объект А
А
Класс объектов
Вариант использования системы (Прецедент)
Операция, выполняемая объектом (Интерфейс)
Примечание
Связь между пользователем и прецедентом (Отношение ассоциации)
Связь между классами А и В (Отношение ассоциации)
А
В
0*..
0*..
Класс А может быть связан либо с классом В, либо с классом
С (Исключающая ассоциация)
В
А
{
xor}
Классы В и С включены в класс А (Агрегация)
А
В
Классы В и С не могут существовать без класса А
А
А
В
139
С
А
В
Компонент В является частным случаем компонента А (Отношение обобщения)
Класс В является частным случаем класса А, наследует его
свойства (Отношение обобщения)
С
С
В
Класс В зависит от класса А (Отношение зависимости)
В
А
«derive»
Прецедент В является составной частью прецедента А (Отношение включения)
Прецедент А используется прецедентом В (Отношение расширения)
Переход объекта из начального состояния в конечное через
промежуточное состояние (или движение данных и действие
над ними)
А
«include»
В
ЗАДАНИЕ 2: составить ДИАГРАММУ ПРЕЦЕДЕНТОВ приема пациента в
больницу после несчастного случая.
Пациент поступает в больницу через приёмный покой. Дежурный врач организует
прием пациента:
- оформляет историю болезни;
- назначает анализы (выписывает направления);
- проводит первичный осмотр;
- оповещает родственников пострадавшего.
Лечащий врач пациента вносит свои записи в историю болезни.
В случае тяжелого состояния пациент направляется в реанимацию.
РЕШЕНИЕ:
ПОЛЬЗОВАТЕЛИ данной информационной системы – это дежурный врач и лечащий врач.
ПРЕЦЕДЕНТ (вариант использования данной системы врачами) – это оформление
приема пациента.
Данный прецедент использует следующие более мелкие ПРЕЦЕДЕНТЫ («extend»):
- оформление истории болезни (с данным прецедентом также связан лечащий
врач, т.к. он тоже вносит записи в историю болезни);
- проведение анализов (здесь необходим ИНТЕРФЕЙС – направление на анализы);
- первичный осмотр;
- оповещение родственников.
При тяжелом состоянии пациента оформление приема может включать («include»)
его направление в реанимацию.
Существенно, что в условии задачи не определено, врачи каких специальностей
должны проводить первичный осмотр (об этом нужно сделать ПРИМЕЧАНИЕ).
140
Не указаны специальности врачей,
проводящих первичный осмотр
Поступление пациента в приемный покой
Проведение
анализов
Первичный
осмотр
Направление
на анализы
«extend»
«extend»
Оформление
приема
пациента
«include»
«extend»
Оформление
истории
болезни
«extend»
Дежурный врач
Лечащий врач
Направление
в реанимацию
Оповещение
родственников
ЗАДАНИЕ 3: составить ДИАГРАММУ АКТИВНОСТИ процесса рассмотрения заявки на получение кредита в банке.
Клиент банка подает заявку на кредит. Регистратор регистрирует заявку и проверяет, нет ли очевидных (формальных) оснований для отказа. Если их нет, то регистратор передает заявку управляющему для предварительного изучения. По распоряжению управляющего специалист по финансовым рискам рассчитывает финансовый риск выдачи кредита данному клиенту, а служба безопасности собирает информацию о клиенте.
Изучив собранные данные, управляющий принимает решение об удовлетворении
заявки (отказе в кредите). Регистратор составляет письменный ответ для клиента по поводу его заявки.
РЕШЕНИЕ:
В данной задаче упомянуты 4 ответственных «лица»: Регистратор, Управляющий, Специалист по финансовым рискам и Служба безопасности. На диаграмме
Управляющего целесообразно расположить между Специалистом по рискам и Службой безопасности (так диаграмма будет выглядеть красивее).
Регистратор выполняет ДЕЙСТВИЯ: Регистрация заявки, Отказ по формальным основаниям и Составление ответа.
Управляющий выполняет ДЕЙСТВИЯ: Предварительное изучение заявки,
Принятие решения.
Специалист по финансовым рискам выполняет ДЕЙСТВИЯ: Расчет финансового риска.
Служба безопасности выполняет ДЕЙСТВИЯ: Сбор информации о клиенте.
141
142
ПРАКТИЧЕСКАЯ РАБОТА № 7:
СТРУКТУРНОЕ ПРОЕКТИРОВАНИЕ ИС.
1. Структурный подход к проектированию АИС. Сущность структурного подхода к разработке АИС заключается в ее ДЕКОМПОЗИЦИИ (разбиении) на автоматизируемые функции: система разбивается на функциональные подсистемы, подсистемы – на
функции, функции – на задачи и так далее. Процесс разбиения продолжается вплоть до
конкретных процедур. При этом АИС сохраняет целостность, все ее компоненты взаимоувязаны. При неправильной разработке системы («снизу-вверх»), т.е. от отдельных задач
ко всей системе, целостность теряется, возникают проблемы при информационной стыковке отдельных компонентов.
В структурном подходе два базовых принципа:
o принцип «разделяй и властвуй» - принцип решения сложных проблем путем их
разбиения на множество меньших независимых задач, легких для понимания и
решения;
o принцип иерархического упорядочивания – принцип организации составных частей системы в иерархические древовидные структуры с добавлением новых
деталей на каждом уровне.
Остальные принципы, хоть и не являются базовыми, но также очень важны:
o принцип абстрагирования – выделение существенных аспектов системы и отвлечение от несущественных;
o принцип формализации – строгое соблюдение стандартов;
o принцип непротиворечивости – обоснованность и согласованность элементов
системы;
o принцип структурирования данных – данные должны быть структурированы и
иерархически организованы.
В структурном анализе используются несколько видов диаграмм:
1) SADT (Structured Analysis and Design Technique) – функциональные диаграммы;
2) DFD (Data Flow Diagrams) – диаграммы потоков данных;
3) ERD (Entity-Relationship Diagrams) – диаграммы «сущность-связь».
На стадии проектирования АИС дополняется диаграммами, отражающими структуру программного обеспечения: архитектуру ПО, структурные схемы программ и диаграммы экранных форм.
2. Технология функционального моделирования SADT. Технология SADT разработана Дугласом Россом. Она представляет собой совокупность методов, правил и процедур, предназначенных для построения функциональной модели объекта какой-либо
предметной области. Функциональная модель SADT отображает производимые объектом
действия и связи между этими действиями.
Функция, выполняемая объектом, представляется на SADT-диаграмме в виде блока. Ввод-вывод данных отображается дугами, соответственно входящими в блок и выходящими из него. Взаимодействие блоков друг с другом описывается интерфейсными дугами, выражающих «ограничения», которые в свою очередь определяют, когда и каким
образом функции выполняются и управляются.
3. Модель «сущность-связь». Для того, чтобы смоделировать в АИС реальную
предметную область, необходима ее концептуальная модель. Основные элементы концептуальной модели – сущности (объекты реального мира) и связи между сущностями.
Поэтому концептуальная модель получила название: модель «сущность-связь».
Модель «сущность-связь» (сущность – Entity, связь – Relation, поэтому есть еще
название «ER-модель») была предложена П. Ченом в 1976 г. Он предложил изображать
предметную область АИС на диаграмме «сущность-связь» (ER-диаграмма), в соответствии со стандартами языка UML.
143
Для изображения ER-диаграммы необходимо представлять себе три ее основных
элемента: сущность, связь и атрибут.
СУЩНОСТЬ – реальный или виртуальный объект, имеющий существенное значение для предметной области, в связи с чем информация о нем важна и подлежит хранению. Каждая сущность должна:
- иметь уникальный идентификатор (например, номер или название);
- содержать один или несколько атрибутов, которые принадлежат этой сущности;
- содержать совокупность атрибутов, по которым можно однозначно идентифицировать (опознать) каждый экземпляр сущности.
Любая сущность может иметь произвольное количество связей с
РАБОТНИК
другими сущностями.
На ER-диаграмме сущность имеет вид прямоугольника, в верхней
части которого указано имя сущности.
АТРИБУТ – характеристика, свойство сущности. Он отображается в прямоугольнике сущности под ее названием.
РАБОТНИК
СВЯЗЬ – соединеФамилия
РАБОТНИК
ФИРМА
ние двух сущностей –
10
Работает
1
Должность
«родителя» и «потомка»,
Оклад
при котором каждый экземпляр «родителя» ассоциирован с
произвольным (в том числе нулевым) количеством экземпляров «потомка», а каждый экземпляр «потомка» ассоциирован только с одним экземпляром «родителя».
Связь показывается в виде линии, связывающей две сущности, причем над линией
указывается наименование связи и количество экземпляров, участвующих с каждой стороны в связи.
ПРИМЕР. ER-диаграмма системы судоремонта.
Сущность
Атрибуты
RABOTA – выполняемая ремонтная работа. Nom – номер работы;
Im – наименование работы.
OBJECT – объект ремонта.
Kodo – код объекта;
Obj – наименование объекта;
Izmo – единица измерения объекта.
MESTO – место выполнения работы.
Mesto – наименование места выполнения
работы.
NORMDOC – нормативные документы, ре- Kodd – код документа;
гламентирующие выполнение работ.
Doc – наименование документа.
MATERIAL – материалы, используемые Kodm – код материала;
при выполнении работ.
Mat – наименование материала;
Izmm – единица измерения материала;
Cena – цена материала.
SPECIAL – специалисты, необходимые для Kods – код специальности;
выполнения работ.
Spec – наименование специальности.
Связи:
RABOTA – OBJECT (одна и та же работа может выполняться для многих объектов,
для одного объекта может выполняться много работ; связь «многие ко многим»);
OBJECT – MESTO (один объект находится в одном месте, но в одном месте может
быть много объектов, связь «многие к одному»);
RABOTA – NORMDOC (одна работа может требовать несколько нормативных документов, но один документ описывает только одну работу; связь «один ко многим»);
RABOTA – MATERIAL (одна работа может требовать много материалов, один материал может использоваться во многих работах; связь «многие ко многим»);
144
RABOTA – SPECIAL (одна работа может требовать участия многих специалистов,
но один специалист выполняет только один вид работ; связь «один ко многим»);
Изобразим ER-диаграмму:
MESTO
Mesto
1:n
OBJECT
m:n
Kodo
Obj
Izmo
RABOTA
1:n
Nom
Im
NORMDOC
Kodd
Doc
m:n
1:n
SPECIAL
MATERIAL
Kods
Spec
Kodm
Mat
Izmm
Cena
145
ПРАКТИЧЕСКАЯ РАБОТА № 8: CASE-СРЕДСТВО SILVERRUN.
1. Структура и функции Silverrun.
CASE-средство Silverrun американской фирмы Сomputer Systems Advisers, Inc.
(CSA) используется для анализа и проектирования АИС бизнес-класса и ориентировано в
большей степени на спиральную модель ЖЦ. Оно применимо для поддержки любой технологии, основанной на раздельном построении функциональной и информационной моделей (диаграмм потоков данных и диаграмм «сущность-связь»).
Настройка на конкретную методологию обеспечивается выбором требуемой графической нотации моделей и набора правил проверки проектных спецификаций. В системе имеются готовые настройки для наиболее распространенных технологий: DATARUN
(основная технология, поддерживаемая Silverrun), Gane/Sarson, Yourdon/DeMarco, Merise,
Ward/Mellor, Information Engineering. Для каждого понятия, введенного в проекте, имеется
возможность добавления собственных описателей. Архитектура Silverrun позволяет наращивать среду разработки по мере необходимости.
Структура и функции Silverrun.
Silverrun имеет модульную структуру и состоит из четырех модулей, каждый из которых является самостоятельным продуктом и может приобретаться и использоваться без
связи с остальными модулями.
Модуль построения моделей бизнес-процессов в форме диаграмм потоков данных
(BPM – Business Process Modeler) позволяет моделировать функционирование обследуемой организации или создаваемой ИС. В модуле BPM обеспечена возможность работы с
моделями большой сложности: автоматическая перенумерация, работа с деревом процессов (включая визуальное перетаскивание ветвей), отсоединение и присоединение частей
модели для коллективной разработки. Диаграммы могут изображаться в нескольких предопределенных нотациях, включая Yourdon/DeMarco и Gane/Sarson. Имеется также возможность создавать собственные нотации, в том числе добавлять в число изображаемых
на схеме дескрипторов определенные пользователем поля.
Модуль концептуального моделирования данных (ERX – Entity-Relationship eXpert)
обеспечивает построение моделей данных «сущность-связь», не привязанных к конкретной реализации. Этот модуль имеет встроенную экспертную систему, позволяющую создать корректную нормализованную модель данных посредством ответов на содержательные вопросы о взаимосвязи данных. Возможно автоматическое построение модели данных из описаний структур данных. Анализ функциональных зависимостей атрибутов дает
возможность проверить соответствие модели требованиям третьей нормальной формы и
обеспечить их выполнение. Проверенная модель передается в модуль RDM.
Модуль реляционного моделирования (RDM – Relational Data Modeler) позволяет
создавать детализированные модели «сущность-связь», предназначенные для реализации
в реляционной базе данных. В этом модуле документируются все конструкции, связанные
с построением базы данных: индексы, триггеры, хранимые процедуры и т.д. Гибкая изменяемая нотация и расширяемость репозитория позволяют работать по любой методологии.
Возможность создавать подсхемы соответствует подходу ANSI SPARC к представлению
схемы базы данных. На языке подсхем моделируются как узлы распределенной обработки, так и пользовательские представления. Этот модуль обеспечивает проектирование и
полное документирование реляционных баз данных.
Менеджер репозитория рабочей группы (WRM – Workgroup Repository Manager)
применяется как словарь данных для хранения общей для всех моделей информации, а
также обеспечивает интеграцию модулей Silverrun в единую среду проектирования.
Платой за высокую гибкость и разнообразие изобразительных средств построения
моделей является такой недостаток Silverrun, как отсутствие жесткого взаимного контроля
между компонентами различных моделей (например, возможности автоматического распространения изменений между DFD различных уровней декомпозиции). Следует, одна146
ко, отметить, что этот недостаток может иметь существенное значение только в случае
использования каскадной модели ЖЦ ПО.
2. Взаимодействие Silverrun с другими CASE-средствами.
Для автоматической генерации схем баз данных у Silverrun существуют мосты к
наиболее распространенным СУБД: Oracle, Informix, DB2, Ingres, Progress, SQL Server,
SQLBase, Sybase. Для передачи данных в средства разработки приложений имеются мосты к языкам 4GL: JAM, PowerBuilder, SQL Windows, Uniface, NewEra, Delphi. Все мосты
позволяют загрузить в Silverrun RDM информацию из каталогов соответствующих СУБД
или языков 4GL. Это позволяет документировать, перепроектировать или переносить на
новые платформы уже находящиеся в эксплуатации базы данных и прикладные системы.
При использовании моста Silverrun расширяет свой внутренний репозиторий специфичными для целевой системы атрибутами. После определения значений этих атрибутов генератор приложений переносит их во внутренний каталог среды разработки или использует при генерации кода на языке SQL. Таким образом, можно полностью определить ядро базы данных с использованием всех возможностей конкретной СУБД: триггеров, хранимых процедур, ограничений ссылочной целостности. При создании приложения на языке 4GL данные, перенесенные из репозитория Silverrun, используются либо для автоматической генерации интерфейсных объектов, либо для быстрого их создания вручную.
Для обмена данными с другими средствами автоматизации проектирования, создания специализированных процедур анализа и проверки проектных спецификаций, составления специализированных отчетов в соответствии с различными стандартами в системе
Silverrun имеется три способа выдачи проектной информации во внешние файлы:
1) Система отчетов. Можно, определив содержимое отчета по репозиторию, выдать
отчет в текстовый файл. Этот файл можно затем загрузить в текстовый редактор или
включить в другой отчет.
2) Система экспорта/импорта. Для более полного контроля над структурой файлов
в системе экспорта/импорта имеется возможность определять не только содержимое экспортного файла, но и разделители записей, полей в записях, маркеры начала и конца текстовых полей. Файлы с указанной структурой можно не только формировать, но и загружать в репозиторий. Это дает возможность обмениваться данными с различными системами: другими CASE-средствами, СУБД, текстовыми редакторами и электронными таблицами.
3) Хранение репозитория во внешних файлах через ODBC-драйверы. Для доступа к
данным репозитория из наиболее распространенных систем управления базами данных
обеспечена возможность хранить всю проектную информацию непосредственно в формате этих СУБД.
3. Возможности групповой работы.
Групповая работа поддерживается в системе Silverrun двумя способами:
1) В стандартной однопользовательской версии имеется механизм контролируемого разделения и слияния моделей. Разделив модель на части, можно раздать их нескольким разработчикам. После детальной доработки модели объединяются в единые спецификации.
2) Сетевая версия Silverrun позволяет осуществлять одновременную групповую работу с моделями, хранящимися в сетевом репозитории на базе СУБД Oracle, Sybase или
Informix. При этом несколько разработчиков могут работать с одной и той же моделью,
так как блокировка объектов происходит на уровне отдельных элементов модели.
4. Среда функционирования.
Имеются реализации Silverrun для трех платформ – MS Windows, Macintosh и OS/2
Presentation Manager – с возможностью обмена проектными данными между ними.
Для функционирования в среде Windows необходимо иметь компьютер с процессором модели не ниже i486 и оперативную память объемом не менее 8 Мб (рекомендуется
16 Мб). На диске полная инсталляция Silverrun занимает 20 Мб.
147
КОНТРОЛЬНЫЕ ВОПРОСЫ:
1. Наименование CASE-средства:
2. Фирма-производитель:
3. Назначение CASE-средства:
4. Поддерживаемая модель ЖЦ АИС:
5. Поддерживаемые технологии проектирования АИС:
6. Структура CASE-средства:
7. Наименование и назначение каждого модуля:
8. Средства проектирования АИС, с
которыми взаимодействует данное
CASE-средство:
9. Способы осуществления групповой
работы:
10. Среда функционирования:
148
ПРАКТИЧЕСКАЯ РАБОТА № 9: CASE-СРЕДСТВО JAM.
1. Структура и функции JAM.
Средство разработки приложений JAM (JYACC's Application Manager) – продукт
фирмы JYACC (США). В настоящее время поставляется версия JAM 7 и готовится к выходу JAM 8. Средство JAM предназначено для разработки приложений (программ).
Основной чертой JAM является его соответствие технологии RAD, поскольку он
позволяет достаточно быстро реализовать цикл разработки приложения, заключающийся
в формировании очередной версии прототипа приложения с учетом требований, выявленных на предыдущем шаге, и предъявить его пользователю. Таким образом, JAM поддерживает спиральную модель жизненного цикла АИС.
Структура и функции JAM.
JAM имеет модульную структуру и состоит из следующих компонент:
 Ядро системы.
 JAM/DBi – специализированные модули интерфейса к СУБД (JAM/DBi-Oracle,
JAM/DBi-Informix, JAM/DBi-ODBC и т.д.).
 JAM/RW – модуль генератора отчетов.
 JAM/CASEi – специализированные модули интерфейса к CASE-средствам
(JAM/CASE-TeamWork, JAM/CASE-Innovator и т.д.).
 JAM/TPi – специализированные модули интерфейса к менеджерам транзакций
(например, JAM/TPi-Server TUXEDO и т.д.).
 Jterm – специализированный эмулятор X-терминала.
Ядро системы (собственно, сам JAM) является законченным продуктом и может
самостоятельно использоваться для разработки приложений. Все остальные модули являются дополнительными и самостоятельно использоваться не могут.
Ядро системы включает в себя следующие основные компоненты:
 Редактор экранов. В состав редактора экранов входят: среда разработки экранов, визуальный репозиторий объектов, собственная СУБД JAM – JDB, менеджер транзакций, отладчик, редактор стилей.
 Редактор меню.
 Набор вспомогательных утилит.
 Средства изготовления промышленной версии приложения.
При использовании JAM разработка внешнего интерфейса приложения представляет собой визуальное проектирование и сводится к созданию экранных форм путем размещения на них интерфейсных конструкций и определению экранных полей ввода/вывода
информации. Проектирование интерфейса в JAM осуществляется с помощью редактора
экранов. Приложения, разработанные в JAM, имеют многооконный интерфейс. Разработка
отдельного экрана заключается в размещении на нем интерфейсных элементов, возможной (но не обязательной) их группировке и конкретизации различных их свойств, включающих визуальные характеристики (позиция, размер, цвет, шрифт и т.п.), поведенческие
характеристики (многообразные фильтры, форматы, защита от ввода и т.п.) и ряд свойств,
ориентированных на работу с БД.
Редактор меню позволяет разрабатывать и отлаживать системы меню. Реализована
возможность построения пиктографических меню (так называемые toolbar). Назначение
каждого конкретного меню тому или иному объекту приложения осуществляется в редакторе экранов.
В ядро JAM встроена однопользовательская реляционная СУБД JDB. Основным
назначением JDB является прототипирование приложений в тех случаях, когда работа со
штатной СУБД невозможна или нецелесообразна. В JDB реализован необходимый минимум возможностей реляционных СУБД за исключением индексов, хранимых процедур,
триггеров и представлений (view). С помощью JDB можно построить БД, идентичную це149
левой БД (с точностью до отсутствующих в JDB возможностей) и разработать значительную часть приложения.
Отладчик позволяет проводить комплексную отладку разрабатываемого приложения. Осуществляется трассировка всех событий, возникающих в процессе исполнения
приложения.
Утилиты JAM включают три группы:
 конверторы файлов экранов JAM в текстовые. JAM сохраняет экраны в виде
двоичных файлов собственного формата. В ряде случаев (например, для изготовления программной документации проекта) необходимо текстовое описание
экранов;
 конфигурирование устройств ввода/вывода; JAM и приложения, построенные с
его помощью, не работают непосредственно с устройствами ввода/вывода; вместо этого JAM обращается к логическим устройствам ввода/вывода (клавиатура,
терминал, отчет); отображение логических устройств в физические осуществляется с помощью средств конфигурирования;
 обслуживание библиотек экранов (традиционные операции с библиотеками).
Одним из дополнительных модулей JAM является генератор отчетов. Компоновка отчета осуществляется в редакторе экранов JAM. Описание работы отчета осуществляется с помощью специального языка. Генератор отчетов позволяет определить данные,
выводимые в отчет, группировку выводимой информации, форматирование вывода и др.
Приложения, разработанные с использованием JAM, не требуют так называемых
исполнительных (run-time) систем и могут быть изготовлены в виде исполняемых модулей. Для этого разработчик должен иметь компилятор C и редактор связей. Для изготовления промышленной версии в состав JAM входит файл сборки (makefile), исходные тексты (на языке C) ряда модулей приложения и необходимые библиотеки.
JAM содержит встроенный язык программирования JPL (JAM Procedural
Language), с помощью которого в случае необходимости можно написать модули, реализующие специфические действия. Данный язык является интерпретируемым, что упрощает отладку. Существует возможность обмена информацией между средой визуально построенного приложения и такими модулями. Кроме того, в JAM реализована возможность
подключения внешних модулей, написанных на каком-либо языке, совместимым по вызовам функций с языком C.
С точки зрения реализации логики приложения JAM является событийноориентированной системой. В JAM определен набор событий, включающий открытие и
закрытие окон, нажатие клавиши клавиатуры, срабатывание системного таймера, получение и передача управления каждым элементом экрана. Разработчик реализует логику приложения путем определения обработчика каждого события. Например, обработчик события «нажатие кнопки на экране» (мышью или с помощью клавиатуры) может открыть
следующее экранное окно. Обработчиками событий в JAM могут быть как встроенные
функции JAM, так и функции, написанные разработчиком на C или JPL. Набор встроенных функций включает в себя более 200 функций различного назначения. Встроенные
функции доступны для вызовов из функций, написанных как на JPL, так и на C.
Промышленная версия приложения, разработанного с помощью JAM, включает в
себя следующие компоненты:
 Исполняемый модуль интерпретатора приложения. В этот модуль могут быть
встроены функции, написанные разработчиками на языках 3-го поколения.
 Экраны, составляющие само приложение (могут поставляться в виде отдельных
файлов, в составе библиотек экранов или же быть встроены в тело интерпретатора).
 Внешние JPL-модули. Могут поставляться в виде текстовых файлов или в прекомпилированном виде, причем прекомпилированные внешние JPL-модули могут быть как в виде отдельных файлов, так и в составе библиотек экранов.
150

Файлы конфигурации приложения – файлы конфигурации клавиатуры и терминала, файл системных сообщений, файл общей конфигурации.
2. Взаимодействие JAM с другими CASE-средствами.
Непосредственное взаимодействие с СУБД реализуют модули JAM/DBi (Data Base
interface). Способы реализации взаимодействия в JAM разделяются на два класса: ручные
и автоматические. При ручном способе разработчик приложения самостоятельно пишет
запросы на SQL, в которых как источниками, так и адресатами приема результатов выполнения запроса могут быть как интерфейсные элементы визуально спроектированного
внешнего уровня, так и внутренние, невидимые для конечного пользователя переменные.
Автоматический режим, реализуемый менеджером транзакций JAM, осуществим для типовых и наиболее распространенных видов операций с БД, так называемых QBE (Query
By Example – запросы по образцу), с учетом достаточно сложных взаимосвязей между
таблицами БД и автоматическим управлением атрибутами экранных полей ввода/вывода в
зависимости от вида транзакции (чтение, запись и т.д.), в которой участвует сгенерированный запрос.
JAM позволяет строить приложения для работы более чем с 20 СУБД: ORACLE,
Informix, Sybase, Ingres, InterBase, NetWare SQL Server, Rdb, DB2, ODBC-совместимые
СУБД и др.
Отличительной чертой JAM является высокий уровень переносимости приложений
между различными платформами (MS DOS/MS Windows, SunOS, Solaris (i80x86, SPARC),
HP-UX, AIX, VMS/Open VMS и др.). Может потребоваться лишь «перерисовать» статические текстовые поля на экранах с русским текстом при переносе между средами DOSWindows-UNIX. Кроме того, переносимость облегчается тем, что в JAM приложения разрабатываются для виртуальных устройств ввода/вывода, а не для физических. Таким образом, при переносе приложения с платформы на платформу, как правило, требуется лишь
определить соответствие между физическими устройствами ввода/вывода и их логическими представлениями для приложения.
Использование SQL в качестве средства взаимодействия с СУБД также создает
предпосылки для обеспечения переносимости между СУБД. При условии переноса структуры самой БД в ряде случаев приложения могут не требовать никакой модификации, за
исключением инициализации сеанса работы. Такая ситуация может сложиться в том случае, если в приложении не использовались специфические для той или иной СУБД расширения SQL.
При росте нагрузки на систему и сложности решаемых задач (распределенность и
гетерогенность используемых ресурсов, количество одновременно подключенных пользователей, сложность логики приложения) применяется трехзвенная модель архитектуры
«клиент-сервер» с использованием менеджеров транзакций. Компоненты JAM/TPi-Client и
JAM/TPi-Server позволяют достаточно просто перейти на трехзвенную модель. При этом
ключевую роль играет модуль JAM/TPi-Server, так как основная трудность внедрения
трехзвенной модели заключается в реализации логики приложения в сервисах менеджеров
транзакций.
Интерфейс JAM/CASE подобен интерфейсу к СУБД и позволяет осуществить обмен информацией между репозиторием объектов JAM и репозиторием CASE-средства
аналогично тому, как структура БД импортируется в репозиторий JAM непосредственно
из БД. Отличие заключается в том, что в случае интерфейса к CASE этот обмен является
двунаправленным. Кроме модулей JAM/CASEi, существует также модуль JAM/CASEi
Developer's Kit. С помощью этого модуля можно самостоятельно разработать интерфейс
(т.е. специализированный модуль JAM/CASEi) для конкретного CASE-средства, если готового модуля JAM/CASEi для него не существует.
Мост (интерфейс) Silverrun-RDM <-> JAM реализует взаимодействие между CASEсредством Silverrun и JAM (перенос схемы базы данных и экранных форм приложения
151
между CASE-средством Silverrun-RDM и JAM версии 7.0). Данный программный продукт
имеет 2 режима работы:
 Прямой режим (Silverrun-RDM -> JAM) предназначен для создания объектов
CASE-словаря и элементов репозитория JAM на основе представления схем в
Silverrun-RDM. В этом режиме мост позволяет, исходя из представления моделей данных интерфейса в Silverrun-RDM, производить генерацию экранов и
элементов репозитория JAM. Мост преобразует таблицы и отношения реляционных схем RDM в последовательность объектов JAM соответствующих типов.
Методика построения моделей данных интерфейса в Silverrun-RDM предполагает применение механизма подсхем для прототипирования экранов приложения. По описанию каждой из подсхем RDM мост генерирует экранную форму
JAM.
 Обратный режим (JAM -> Silverrun-RDM) предназначен для переноса модификаций объектов CASE-словаря в реляционную модель Silverrun-RDM.
Режим реинжиниринга позволяет переносить модификации всех свойств экранов
JAM, импортированных ранее из RDM, в схему Silverrun. На этом этапе для контроля целостности базы данных не допускаются изменения схемы в виде добавления или удаления
таблиц и полей таблиц.
3. Возможности групповой работы.
Ядро JAM имеет встроенный интерфейс к средствам конфигурационного управления (PVCS на платформе Windows и SCCS на платформе UNIX). Под управлением этих
систем передаются библиотеки экранов и/или репозитории. При отсутствии таких систем
JAM самостоятельно реализует часть функций поддержки групповой разработки.
Использование PVCS является более предпочтительным по сравнению с SCCS, так
как позволяет организовать единый архив модулей проекта для всех платформ. Так как
JAM на платформе UNIX не имеет прямого интерфейса к архивам PVCS, то выборка модулей из архива и возврат их в архив производятся с использованием PVCS Version
Manager. На платформе MS-Windows JAM имеет встроенный интерфейс к PVCS и действия по выборке/возврату производятся непосредственно из среды JAM.
4. Среда функционирования.
JAM, как среда разработки, и приложения, построенные с его использованием, не
являются ресурсоемкими системами. Например, на платформе MS-Windows достаточно
иметь 8 MB оперативной памяти и 50 MB дискового пространства для среды разработки.
На UNIX-платформах требования к аппаратуре определяются самой операционной системой.
КОНТРОЛЬНЫЕ ВОПРОСЫ:
1. Наименование CASE-средства:
2. Фирма-производитель:
3. Назначение CASE-средства:
4. Поддерживаемая модель ЖЦ АИС:
5. Поддерживаемые технологии проектирования
АИС:
6. Структура CASE-средства:
7. Наименование и назначение каждого модуля:
8. Средства проектирования АИС, с которыми
взаимодействует данное CASE-средство:
9. Способы осуществления групповой работы:
10. Среда функционирования:
152
ПРАКТИЧЕСКАЯ РАБОТА № 10:
CASE-СРЕДСТВО VANTAGE TEAM BUILDER.
1. Структура и функции Vantage Team Builder.
Vantage Team Builder представляет собой интегрированный программный продукт,
ориентированный на реализацию каскадной модели ЖЦ ПО и поддержку полного ЖЦ
ПО. Производитель – фирма «Westmount I-CASE».
Структура и функции Vantage Team Builder.
Vantage Team Builder обеспечивает выполнение следующих функций:
 проектирование диаграмм потоков данных, «сущность-связь», структур данных,
структурных схем программ и последовательностей экранных форм;
 проектирование диаграмм архитектуры системы – SAD (проектирование состава и связи вычислительных средств, распределения задач системы между вычислительными средствами, моделирование отношений типа «клиент-сервер»,
анализ использования менеджеров транзакций и особенностей функционирования систем в реальном времени);
 генерация кода программ на языке 4GL целевой СУБД с полным обеспечением
программной среды и генерация SQL-кода для создания таблиц БД, индексов,
ограничений целостности и хранимых процедур;
 программирование на языке C со встроенным SQL;
 управление версиями и конфигурацией проекта;
 многопользовательский доступ к репозиторию проекта;
 генерация проектной документации по стандартным и индивидуальным шаблонам;
 экспорт и импорт данных проекта в формате CDIF (CASE Data Interchange
Format).
Vantage Team Builder поставляется в различных конфигурациях в зависимости от
используемых СУБД (ORACLE, Informix, Sybase или Ingres) или средств разработки приложений (Uniface). Конфигурация Vantage Team Builder for Uniface отличается от остальных некоторой степенью ориентации на спиральную модель ЖЦ ПО за счет возможностей
быстрого прототипирования, предоставляемых Uniface. Для описания проекта ИС используется достаточно большой набор диаграмм, конкретные варианты которого для наиболее
распространенных конфигураций приведены ниже в таблице.
Uniface 6.1 – продукт фирмы Compuware (США) – представляет собой средство
разработки крупномасштабных приложений, используемое в программном продукте Vantage Team Builder.
Тип диаграммы
Обозначение
Сущность-связь
Потоков данных
Структур данных
Архитектуры системы
Потоков управления
Типов данных
Структуры меню
Последовательности блоков
Последовательности
форм
ERD
DFD
DSD
SAD
CSD
DTD
MSD
BSD
Vantage Team
Builder
for ORACLE
+
+
+
+
+
+
+
+
FSD
153
Vantage Team
Builder
for Informix
+
+
+
+
+
+
Vantage
Team Builder
for Uniface
+
+
+
+
+
+
+
+
Содержимого форм
FCD
+
+
Переходов состояний
STD
+
+
+
Структурных схем
SCD
+
+
+
При построении всех типов диаграмм обеспечивается контроль соответствия моделей синтаксису используемых методов, а также контроль соответствия одноименных элементов и их типов для различных типов диаграмм.
При построении DFD обеспечивается контроль соответствия диаграмм различных
уровней декомпозиции. Контроль за правильностью верхнего уровня DFD осуществляется
с помощью матрицы списков событий (ELM). Для контроля за декомпозицией составных
потоков данных используется несколько вариантов их описания: в виде диаграмм структур данных (DSD) или в нотации БНФ (форма Бэкуса-Наура).
Для построения SAD используется расширенная нотация DFD, дающая возможность вводить понятия процессоров, задач и периферийных устройств, что обеспечивает
наглядность проектных решений.
При построении модели данных в виде ERD выполняется ее нормализация и вводится определение физических имен элементов данных и таблиц, которые будут использоваться в процессе генерации физической схемы данных конкретной СУБД. Обеспечивается возможность определения альтернативных ключей сущностей и полей, составляющих дополнительные точки входа в таблицу (поля индексов), и мощности отношений
между сущностями.
Наличие универсальной системы генерации кода, основанной на специфицированных средствах доступа к репозиторию проекта, позволяет поддерживать высокий уровень
исполнения проектной дисциплины разработчиками: жесткий порядок формирования моделей; жесткая структура и содержимое документации; автоматическая генерация исходных кодов программ и т.д. – все это обеспечивает повышение качества и надежности разрабатываемых ИС.
Для подготовки проектной документации могут использоваться издательские системы FrameMaker, Interleaf или Word Perfect. Структура и состав проектной документации могут быть настроены в соответствии с заданными стандартами. Настройка выполняется без изменения проектных решений.
При разработке достаточно крупной ИС вся система в целом соответствует одному
проекту как категории Vantage Team Builder. Проект может быть декомпозирован на ряд
систем, каждая из которых соответствует некоторой относительно автономной подсистеме ИС и разрабатывается независимо от других. В дальнейшем системы проекта могут
быть интегрированы.
Процесс проектирования ИС с использованием Vantage Team Builder реализуется в
виде 4-х последовательных фаз (стадий) – анализа, архитектуры, проектирования и реализации, при этом законченные результаты каждой стадии полностью или частично переносятся (импортируются) в следующую фазу. Все диаграммы, кроме ERD, преобразуются в
другой тип или изменяют вид в соответствии с особенностями текущей фазы. Так, DFD
преобразуются в фазе архитектуры в SAD, DSD - в DTD. После завершения импорта логическая связь с предыдущей фазой разрывается, т.е. в диаграммы могут вноситься все
необходимые изменения.
2. Взаимодействие Vantage Team Builder с другими CASE-средствами.
Конфигурация Vantage Team Builder for Uniface обеспечивает совместное использование двух систем в рамках единой технологической среды проектирования, при этом
схемы БД (SQL-модели) переносятся в репозиторий Uniface, и, наоборот, прикладные модели, сформированные средствами Uniface, могут быть перенесены в репозиторий Vantage
Team Builder. Возможные рассогласования между репозиториями двух систем устраняются с помощью специальной утилиты. Разработка экранных форм в среде Uniface выполняется на базе диаграмм последовательностей форм (FSD) после импорта SQL-модели. Технология разработки ИС на базе данной конфигурации показана на рисунке.
154
Проектировщик БД
Разработчик приложений
Результаты общего
обследования предметной области
Результаты обследования
фрагмента предметной области
VTB
Построение
ER-диаграмм
VTB
Интеграция с ранее
построенными моделями
Начальное согласование моделей
ERD
Окончательное согласование моделей
Uniface
(UNIX)
VTB,
Uniface
(UNIX)
ERD
Интегрированная модель
Администратор БД
VTB,
целевая
СУБД
Построение
прикладной модели
Разработка структуры и логики приложения
FSD
Генерация новых таблиц БД и модификация
существующих таблиц
Разработка пользовательского интерфейса
Uniface
(UNIX,
Windows)
БД
Отладка и тестирование
приложения
Uniface
Структура репозитория (хранящегося непосредственно в целевой СУБД) и интерфейсы Vantage Team Builder являются открытыми, что в принципе позволяет интеграцию
с любыми другими средствами.
3. Среда функционирования.
Vantage Team Builder функционирует на всех основных UNIX-платформах (Solaris,
SCO UNIX, AIX, HP-UX) и VMS.
Vantage Team Builder можно использовать в конфигурации «клиент-сервер», при
этом база проектных данных может располагаться на сервере, а рабочие места разработчиков могут быть клиентами.
КОНТРОЛЬНЫЕ ВОПРОСЫ:
1. Наименование CASE-средства:
2. Фирма-производитель:
3. Назначение CASE-средства:
4. Поддерживаемая модель ЖЦ АИС:
5. Поддерживаемые технологии проектирования АИС:
6. Функции CASE-средства:
7. Разделение обязанностей между проектировщиком БД,
администратором БД и разработчиком приложений:
8. Средства проектирования АИС, с которыми взаимодействует данное CASE-средство:
9. Способы осуществления групповой работы:
10. Среда функционирования:
155
ПРАКТИЧЕСКАЯ РАБОТА № 11: CASE-СРЕДСТВО DESIGNER2000.
1. Структура и функции Designer/2000.
CASE-средство Designer/2000 2.0 фирмы ORACLE является интегрированным
CASE-средством, обеспечивающим в совокупности со средством разработки приложений
Developer/2000 поддержку полного ЖЦ ПО для систем, использующих СУБД ORACLE.
Структура и функции Designer/2000.
Designer/2000 представляет собой семейство технологий и поддерживающих их
программных продуктов. Базовая технология Designer/2000 (CASE*Method) – это технология структурного проектирования, полностью охватывающая все этапы жизненного
цикла АИС. В соответствии с этой технологией на этапе планирования определяются цели
создания системы, приоритеты и ограничения, разрабатывается системная архитектура и
план разработки АИС. В процессе анализа строятся модель информационных потребностей (диаграмма «сущность-связь»), диаграмма функциональной иерархии (на основе
функциональной декомпозиции ИС), матрица перекрестных ссылок и диаграмма потоков
данных.
На этапе проектирования разрабатывается подробная архитектура ИС, проектируется схема реляционной БД и программные модули, устанавливаются перекрестные ссылки между компонентами ИС для анализа их взаимного влияния и контроля за изменениями.
На этапе реализации создается БД, строятся прикладные системы, производится их
тестирование, проверка качества и соответствия требованиям пользователей. Создается
системная документация, материалы для обучения и руководства пользователей. На этапах эксплуатации и сопровождения анализируются производительность и целостность системы, выполняется поддержка и, при необходимости, модификация АИС.
Designer/2000 обеспечивает графический интерфейс при разработке различных моделей (диаграмм) предметной области. В процессе построения моделей информация о них
заносится в репозиторий. В состав Designer/2000 входят следующие компоненты:
 Repository Administrator – средства управления репозиторием (создание и удаление приложений, управление доступом к данным со стороны различных
пользователей, экспорт и импорт данных).
 Repository Object Navigator – средства доступа к репозиторию, обеспечивающие
многооконный объектно-ориентированный интерфейс доступа ко всем элементам репозитория.
 Process Modeller – средство анализа и моделирования деловой деятельности, основывающееся на концепциях реинжиниринга бизнес-процессов (BPR –
Business Process Reengineering) и глобальной системы управления качеством
(TQM – Total Quality Management).
 Systems Modeller – набор средств построения функциональных и информационных моделей проектируемой АИС, включающий средства для построения диаграмм «сущность-связь» (Entity-Relationship Diagrammer), диаграмм функциональных иерархий (Function Hierarchy Diagrammer), диаграмм потоков данных
(Data Flow Diagrammer) и средство анализа и модификации связей объектов репозитория различных типов (Matrix Diagrammer).
 Systems Designer – набор средств проектирования АИС, включающий средство
построения структуры реляционной базы данных (Data Diagrammer), а также
средства построения диаграмм, отображающих взаимодействие с данными,
иерархию, структуру и логику приложений, реализуемую хранимыми процедурами на языке PL/SQL (Module Data Diagrammer, Module Structure Diagrammer и
Module Logic Navigator).
 Server Generator – генератор описаний объектов БД ORACLE (таблиц, индексов,
ключей, последовательностей и т.д.). Помимо продуктов ORACLE, генерация и
156
реинжиниринг БД может выполняться для СУБД Informix, DB/2, Microsoft SQL
Server, Sybase, а также для стандарта ANSI SQL DDL и баз данных, доступ к которым реализуется посредством ODBC.
 Forms Generator – генератор приложений для ORACLE Forms. Генерируемые
приложения включают в себя различные экранные формы, средства контроля
данных, проверки ограничений целостности и автоматические подсказки. Дальнейшая работа с приложением выполняется в среде Developer/2000.
 Repository Reports – генератор стандартных отчетов, интегрированный с
ORACLE Reports и позволяющий русифицировать отчеты, а также изменять
структурное представление информации.
Репозиторий Designer/2000 представляет собой хранилище всех проектных данных
и может работать в многопользовательском режиме, обеспечивая параллельное обновление информации несколькими разработчиками. В процессе проектирования автоматически поддерживаются перекрестные ссылки между объектами словаря и могут генерироваться более 70 стандартных отчетов о моделируемой предметной области. Физическая
среда хранения репозитория – база данных ORACLE.
Генерация приложений, помимо продуктов ORACLE, выполняется также для
Visual Basic.
2. Взаимодействие Designer/2000 с другими CASE-средствами.
Designer/2000 можно интегрировать с другими средствами, используя открытый
интерфейс приложений API (Application Programming Interface). Кроме того, можно использовать средство ORACLE CASE Exchange для экспорта/импорта объектов репозитория с целью обмена информацией с другими CASE-средствами.
Developer/2000 обеспечивает разработку переносимых приложений, работающих в
графической среде Windows, Macintosh или Motif. В среде Windows интеграция приложений Developer/2000 с другими средствами реализуется через механизм OLE и управляющие элементы VBX. Взаимодействие приложений с другими СУБД (DB/2, DB2/400, Rdb)
реализуется с помощью средств ORACLE Client Adapter для ODBC, ORACLE Open
Gateway и API.
3. Среда функционирования.
Среда функционирования Designer/2000 и Developer/2000 – Windows 3.x, Windows
95, Windows NT.
КОНТРОЛЬНЫЕ ВОПРОСЫ:
1. Наименование CASE-средства:
2. Фирма-производитель:
3. Назначение CASE-средства:
4. Поддерживаемая модель ЖЦ АИС:
5. Поддерживаемые технологии проектирования
АИС:
6. Функции CASE-средства (его компонентов):
7. Разделение обязанностей между проектировщиком БД, администратором БД и разработчиком приложений (аналогично Vantage Team
Builder):
8. Средства проектирования АИС, с которыми
взаимодействует данное CASE-средство:
9. Способы осуществления групповой работы:
10. Среда функционирования:
157
ПРАКТИЧЕСКАЯ РАБОТА № 12: ЛОКАЛЬНЫЕ CASE-СРЕДСТВА.
1. Средства Erwin и BPWin.
ERwin – средство концептуального моделирования, использующее технологию
структурного проектирования IDEFIX. ERwin реализует проектирование схемы БД, генерацию ее описания на языке целевой СУБД (ORACLE, Informix, Ingres, Sybase, DB/2,
Microsoft SQL Server, Progress и др.) и реинжиниринг существующей БД. ERwin выпускается в нескольких различных конфигурациях, ориентированных на наиболее распространенные средства разработки приложений 4GL. Версия ERwin/OPEN полностью совместима со средствами разработки приложений PowerBuilder и SQLWindows и позволяет экспортировать описание спроектированной БД непосредственно в репозитории данных
средств. Для ряда средств разработки приложений (PowerBuilder, SQLWindows, Delphi,
Visual Basic) выполняется генерация форм и прототипов приложений.
Сетевая версия Erwin ModelMart обеспечивает согласованное проектирование БД и
приложений в рамках рабочей группы.
2. Средство S-Designor.
S-Designor 4.2 представляет собой CASE-средство для проектирования реляционных баз данных. По своим функциональным возможностям и стоимости он близок к
CASE-средству ERwin, отличаясь внешне используемой на диаграммах нотацией. SDesignor реализует стандартную структурную технологию моделирования данных и генерирует описание БД для таких СУБД, как ORACLE, Informix, Ingres, Sybase, DB/2,
Microsoft SQL Server и др. Для существующих систем выполняется реинжиниринг БД.
S-Designor совместим с рядом средств разработки приложений (PowerBuilder,
Uniface, TeamWindows и др.) и позволяет экспортировать описание БД в репозитории
данных средств. Для PowerBuilder выполняется также прямая генерация шаблонов приложений. Имеется возможность многопользовательской работы.
3. Средство CASE.Аналитик.
CASE.Аналитик 1.1 является практически единственным в настоящее время конкурентоспособным отечественным CASE-средством функционального моделирования и реализует построение диаграмм потоков данных в соответствии со структурной технологией. Его основные функции:
 построение и редактирование DFD;
 анализ диаграмм и проектных спецификаций на полноту и непротиворечивость;
 получение разнообразных отчетов по проекту;
 генерация макетов документов в соответствии с требованиями ГОСТ 19.ХХХ и
34.ХХХ.
Среда функционирования: MS Windows. Представлены одно- и многопользовательская версии.
База данных проекта реализована в формате СУБД Paradox и является открытой
для доступа. Средство разработки приложений – Visual Basic.
С помощью отдельного программного продукта (Catherine) выполняется обмен
данными с CASE-средством ERwin. При этом из проекта, выполненного в
CASE.Аналитике, экспортируется описание структур данных и накопителей данных, которое по определенным правилам формирует описание сущностей и их атрибутов.
158
КОНТРОЛЬНЫЕ ВОПРОСЫ:
1. Наименование
CASEсредства:
2.
Назначение
CASE-средства:
3. Поддерживаемые технологии
проектирования
АИС:
4.
Функции
CASE-средства:
5. Совместимые
СУБД:
6. Используемые
средства разработки приложений:
7. Возможность
групповой работы.
ERwin
S-Designor
159
CASE.Аналитик
ПРАКТИЧЕСКАЯ РАБОТА № 13:
ОБЪЕКТНО-ОРИЕНТИРОВАННЫЕ CASE-СРЕДСТВА.
1. Структура и функции Rational Rose.
Rational Rose относится к классу объектно-ориентированных CASE-средств.
Rational Rose – CASE-средство фирмы Rational Software Corporation (США) – предназначено для автоматизации этапов анализа и проектирования ПО, а также для генерации
кодов на различных языках и выпуска проектной документации. Rational Rose использует
синтез-технологию объектно-ориентированного анализа и проектирования, основанную
на подходах трех ведущих специалистов в данной области: Буча, Рамбо и Джекобсона.
Разработанная ими универсальная нотация для моделирования объектов (UML – Unified
Modeling Language) претендует на роль стандарта в области объектно-ориентированного
анализа и проектирования. Конкретный вариант Rational Rose определяется языком, на
котором генерируются коды программ (C++, Smalltalk, PowerBuilder, Ada, SQLWindows и
ObjectPro). Основной вариант - Rational Rose/C++ - позволяет разрабатывать проектную
документацию в виде диаграмм и спецификаций, а также генерировать программные коды
на С++. Кроме того, Rational Rose содержит средства реинжиниринга программ, обеспечивающие повторное использование программных компонент в новых проектах.
Структура и функции Rational Rose.
В основе работы Rational Rose лежит построение различного рода диаграмм и спецификаций, определяющих логическую и физическую структуры модели, ее статические
и динамические аспекты. В их число входят диаграммы классов, состояний, сценариев,
модулей, процессов.
В составе Rational Rose можно выделить 6 основных структурных компонент:
- репозиторий;
- графический интерфейс пользователя;
- средства просмотра проекта (browser);
- средства контроля проекта;
- средства сбора статистики;
- генератор документов.
К ним добавляются генератор кодов (индивидуальный для каждого языка) и анализатор для С++, обеспечивающий реинжиниринг – восстановление модели проекта по исходным текстам программ.
Репозиторий представляет собой объектно-ориентированную базу данных.
Средства просмотра (browser) обеспечивают «навигацию» по проекту, в том числе,
перемещение по иерархиям классов и подсистем, переключение от одного вида диаграмм
к другому и т. д.
Средства контроля и сбора статистики дают возможность находить и устранять
ошибки по мере развития проекта, а не после завершения его описания.
Генератор отчетов формирует тексты выходных документов на основе содержащейся в репозитории информации.
Средства автоматической генерации кодов программ на языке С++, используя информацию, содержащуюся в логической и физической моделях проекта, формируют файлы заголовков и файлы описаний классов и объектов. Создаваемый таким образом скелет
программы может быть уточнен путем прямого программирования на языке С++.
Анализатор кодов С++ реализован в виде отдельного программного модуля. Его
назначение состоит в том, чтобы создавать модули проектов в форме Rational Rose на основе информации, содержащейся в определяемых пользователем исходных текстах на
С++. В процессе работы анализатор осуществляет контроль правильности исходных текстов и диагностику ошибок. Модель, полученная в результате его работы, может целиком
или фрагментарно использоваться в различных проектах. Анализатор обладает широкими
возможностями настройки по входу и выходу. Например, можно определить типы исход160
ных файлов, базовый компилятор, задать, какая информация должна быть включена в
формируемую модель и какие элементы выходной модели следует выводить на экран. Таким образом, Rational Rose/С++ обеспечивает возможность повторного использования
программных компонент.
В результате разработки проекта с помощью генератора документов формируются
следующие документы:
 диаграммы (классов, состояний, диаграммы сценариев, диаграммы модулей,
диаграммы процессов);
 спецификации классов, объектов, атрибутов и операций;
 заготовки текстов программ;
 модель разрабатываемой программной системы.
Последний из перечисленных документов является текстовым файлом, содержащим всю необходимую информацию о проекте (в том числе необходимую для получения
всех диаграмм и спецификаций).
Тексты программ являются заготовками для последующей работы программистов.
Они формируются в рабочем каталоге в виде файлов типов .h (заголовки, содержащие
описания классов) и .cpp (заготовки программ для методов). Система включает в программные файлы собственные комментарии, которые начинаются с последовательности
символов //##. Состав информации, включаемой в программные файлы, определяется либо по умолчанию, либо по усмотрению пользователя. В дальнейшем эти исходные тексты
развиваются программистами в полноценные программы.
2. Взаимодействие Rational Rose с другими CASE-средствами.
Rational Rose интегрируется со средством PVCS для организации групповой работы и управления проектом и со средством SoDA – для документирования проектов. Интеграция Rational Rose и SoDA обеспечивается средствами SoDA.
3. Возможности групповой работы.
Для организации групповой работы в Rational Rose возможно разбиение модели на
управляемые подмодели. Каждая из них независимо сохраняется на диске или загружается
в модель. В качестве подмодели может выступать категория классов или подсистема.
Для управляемой подмодели предусмотрены операции:
 загрузка подмодели в память;
 выгрузка подмодели из памяти;
 сохранение подмодели на диске в виде отдельного файла;
 установка защиты от модификации;
 замена подмодели в памяти на новую.
Наиболее эффективно групповая работа организуется при интеграции Rational Rose
со специальными средствами управления конфигурацией и контроля версий (PVCS). В
этом случае защита от модификации устанавливается на все управляемые подмодели,
кроме тех, которые выделены конкретному разработчику. В этом случае признак защиты
от записи устанавливается для файлов, которые содержат подмодели, поэтому при считывании «чужих» подмоделей защита их от модификации сохраняется и случайные воздействия окажутся невозможными.
4. Среда функционирования.
Rational Rose функционирует на различных платформах: IBM PC (в среде
Windows), Sun SPARC stations (UNIX, Solaris, SunOS), Hewlett-Packard (HP UX), IBM
RS/6000 (AIX).
161
КОНТРОЛЬНЫЕ ВОПРОСЫ:
1. Наименование CASE-средства:
2. Фирма-производитель:
3. Назначение CASE-средства:
4. Поддерживаемые технологии проектирования АИС:
5. Наименование и назначение компонентов CASE-средства:
6. Средства проектирования АИС, с которыми взаимодействует данное CASEсредство:
7. Способы осуществления групповой
работы:
8. Среда функционирования:
162
ПРАКТИЧЕСКАЯ РАБОТА № 14:
СРЕДСТВА КОНФИГУРАЦИОННОГО УПРАВЛЕНИЯ.
1. Средства конфигурационного управления.
Цель конфигурационного управления (КУ) – обеспечить управляемость и контролируемость процессов разработки и сопровождения ПО. Для этого необходима точная и
достоверная информация о состоянии ПО и его компонент в каждый момент времени, а
также обо всех предполагаемых и выполненных изменениях.
Для решения задач КУ применяются методы и средства, обеспечивающие идентификацию состояния компонент, учет номенклатуры всех компонент и модификаций системы в целом, контроль за вносимыми изменениями в компоненты, структуру системы и
ее функции, а также координированное управление развитием функций и улучшением характеристик системы.
2. Средство PVCS.
Наиболее распространенным средством КУ является PVCS фирмы Intersolv (США),
включающее ряд самостоятельных продуктов: PVCS Version Manager, PVCS Tracker,
PVCS Configuration Builder и PVCS Notify.
PVCS Version Manager предназначен для управления всеми компонентами проекта и ведения планомерной многоверсионной и многоплатформенной разработки силами
команды разработчиков в условиях одной или нескольких локальных сетей. Понятие
«проект» трактуется как совокупность файлов. В процессе работы над проектом промежуточное состояние файлов периодически сохраняется в архиве проекта, ведутся записи о
времени сохранения, соответствии друг другу нескольких вариантов разных файлов проекта. Кроме этого, фиксируются имена разработчиков, ответственных за тот или иной
файл, состав файлов промежуточных версий проекта и др. Это позволяет вернуться при
необходимости к какому-либо из предыдущих состояний файла (например, при обнаружении ошибки, которую в данный момент трудно исправить).
PVCS Version Manager предназначен для использования в рабочих группах. Система блокировок, реализованная в PVCS Version Manager позволяет предотвратить одновременное внесение изменений в один и тот же файл. В то же время, PVCS Version
Manager позволяет разработчикам работать с собственными версиями общего файла с полуавтоматическим разрешением конфликтов между ними.
Доступ к архивам PVCS Version Manager возможен не только через сам Version
Manager, но и из более чем 50 инструментальных средств, в том числе MS Visual C и MS
Visual Basic, Uniface, PowerBuilder, SQL Windows, JAM, Delphi, Paradox и др.
Результатом работы PVCS Version Manager является созданный средствами файловой системы репозиторий, хранящий в компактной форме все рабочие версии программного продукта вместе с необходимыми комментариями и метками.
PVCS Version Manager функционирует в среде MS Windows, Windows 95, Windows
NT, OS/2, SunOS, Solaris, HP-UX, AIX и SCO UNIX и может исполняться на любом персональном компьютере с процессором 80386 или выше, рабочих станциях Sun, HP и IBM
(RS-6000).
PVCS Tracker – специализированная надстройка над офисной электронной почтой, предназначенная для обработки сообщений об ошибках в продукте, доставке их исполнителям и контроля за исполнением. Интеграция с PVCS Version Manager дает возможность связывать с сообщениями те или иные компоненты проекта. Отчетные возможности PVCS Tracker включают множество разновидностей графиков и диаграмм, отражающих состояние проекта и процесса его отладки, срезы по различным компонентам проекта, разработчикам и тестировщикам. С их помощью можно наглядно показать текущее
состояние работы над проектом и ее временные тенденции.
Персонал, работающий с PVCS Tracker, делится на пять групп в зависимости от их
обязанностей: пользователи, разработчики, группа тестирования и контроля качества,
163
группа технической поддержки и сопровождения, управленческий персонал. Этим пяти
группам персонала соответствуют пять предопределенных групп PVCS Tracker:
 пользователи (Submitters) - имеют ограниченные права на внесение замечаний и
сообщений об ошибках в базу данных PVCS Tracker;
 разработчики (Development Engineers) - имеют право производить основные
операции с требованиями и замечаниями в базе данных PVCS Tracker. Если
разработчики делятся на подгруппы, то для каждой подгруппы могут быть заданы отдельные списки прав доступа;
 тестировщики (Quality Engineers) - имеют право производить основные операции с требованиями и замечаниями;
 сопровождение (Support Engineers) - имеют право вносить любые замечания,
требования и рекомендации в базу данных, но не имеют прав по распределению
работ и изменению их приоритетности и сроков исполнения;
 руководители (Managers) - имеют право распределять работы между исполнителями и принимать решения об их надлежащем исполнении. Руководителям
разных групп могут заданы различные права доступа к базе данных PVCS
Tracker.
В дополнение к этим пяти предопределенным группам, существует группа администратора базы данных и 11 дополнительных групп, которые могут быть настроены в соответствии со специфическими должностными обязанностями сотрудников, использующих
PVCS Tracker.
Требование или замечание поступающее в PVCS Tracker проходит четыре этапа
обработки:
 регистрация – внесение замечания в базу данных;
 распределение – назначение ответственного исполнителя и сроков исполнения;
 исполнение – устранение замечания, которое в свою очередь может вызвать дополнительные замечания или требования на дополнительные работы;
 приемка – приемка работ и снятие их с контроля или направление на доработку.
Требования и замечания, поступающие в базу данных PVCS Tracker, оформляются
в виде специальной формы, которая может содержать до 18 полей выбора стандартных
значений и до 12 произвольных текстовых строк. При разработке формы следует определить оптимальный набор информации, характерный для всех записей в базе данных.
Для получения содержательной информации о ходе разработки PVCS Tracker позволяет получать три типа статистических отчетов: частотные, тренды и диаграммы распределения.
Частотные отчеты содержат информацию о частоте поступающих замечаний за
один час тестирования программного продукта. Однако универсального частотного отчета
не существует, т.к. на оценку качества влияют тип методов тестирования, серьезность выявленных ошибок и значение дефектных модулей для функционирования всей системы.
Малое число фатальных ошибок, приводящих к полной остановке разработки, хуже большого числа замечаний к внешнему виду интерфейса пользователя. Следовательно, частотные отчеты должны быть настроены на выявление какого-либо конкретного аспекта качества для того, чтобы их можно было использовать для прогнозирования окончания работ
над проектом.
Тренды содержат информацию об изменениях того или иного показателя во времени и характеризуют стабильность и непрерывность процесса разработки. Они позволяют
ответить на вопросы:
- успевает ли группа разработчиков справляться с поступающими замечаниями;
- улучшается ли качество программного продукта и какова динамика этого процесса;
164
- как повлияло то или иное решение (увеличение числа разработчиков, введение
скользящего графика, внедрение нового метода тестирования) на работу группы и т.п.
Диаграммы распределения – наиболее разнообразные и полезные для осуществления оперативного руководства формы отчетов. Они позволяют ответить на вопросы: какой метод тестирования более эффективен, какие модули вызывают наибольшее число
нареканий, кто из разработчиков лучше справляется с конкретным типом заданий, нет ли
перекоса в распределении работ между исполнителями, нет ли модулей, тестированию
которых было уделено недостаточно внимания и т.д.
PVCS Tracker предназначен для использования в рабочих группах, объединенных в
общую сеть. В этом случае центральная база или проект PVCS Tracker находится на общедоступном сервере сети, доступ к которому реализуется посредством ODBC-драйверов,
входящих в состав PVCS Tracker. Главной особенностью PVCS Tracker по сравнению с
обычным приложением СУБД является его способность автоматически уведомлять пользователя о поступлении интересующей его или относящейся к его компетенции информации и гибкая система распределения полномочий внутри рабочей группы. При необходимости PVCS Tracker может использовать для уведомления удаленных членов группы
электронную почту.
PVCS Tracker поддерживает групповую работу в локальных сетях и взаимодействует с СУБД dBase, ORACLE, SQL Server и SYBASE посредством ODBC.
PVCS Tracker может быть интегрирован с любой системой электронной почты,
поддерживающей стандарты VIM, MAPI или SMTP.
PVCS Version Manager и PVCS Tracker окружены вспомогательными компонентами: PVCS Configuration Builder и PVCS Notify.
PVCS Configuration Builder предназначен для сборки окончательного продукта из
компонент проекта. PVCS Configuration Builder позволяет описывать процесс сборки как
на стандартном языке MAKE, так и на собственном внутреннем языке, имеющем существенно большие возможности. PVCS Configuration Builder позволяет осуществлять сборку программного продукта на основании файлов, хранящихся в репозитории PVCS
Version Manager.
Обычная процедура сборки программного продукта с помощью PVCS Configuration
Builder состоит из трех шагов:
 строится файл зависимостей между исходными модулями;
 в полученный файл вносятся изменения с целью его настройки и оптимизации;
 осуществляется сборка программного продукта из исходных модулей.
Результатом работы PVCS Configuration Builder является специальный файл, описывающий оптимальный алгоритм сборки программного продукта, построенный на основе анализа дерева зависимостей между исходными модулями.
PVCS Notify обеспечивает автоматическую рассылку сообщений об ошибках из
базы данных пакета PVCS Tracker по рабочим станциям назначения. При этом используется офисная система электронной почты cc:Mail или Microsoft Mail. PVCS Notify расширяет возможности PVCS Tracker и используется только совместно с ним.
PVCS Notify настраивается из среды PVCS Tracker. Настройка включает в себя
определение интервала времени, через который PVCS Notify проверяет содержимое базы
данных, определение критериев отбора записей для рассылки уведомлений, определение
списков адресов для рассылки. После настройки PVCS Notify начинает работу в автономном режиме, автоматически рассылая уведомления об изменениях в базе данных PVCS
Tracker.
PVCS Configuration Builder и PVCS Notify предназначены для использования в
больших рабочих группах, часть членов которых хотя и доступна только через средства
электронной почты, однако должна иметь оперативную информацию о требованиях на
изменение программного продукта, замечаниях, ошибках, ходе и результатах его тестирования.
165
Результатом работы PVCS Notify являются оформленные в соответствии с одним
из стандартов почтовые сообщения, готовые для рассылки посредством системы электронной почты.
КОНТРОЛЬНЫЕ ВОПРОСЫ:
1. Наименование
CASEсредства:
2. Назначение
CASE-средства:
3. Выходной результат:
4. Средства проектирования
АИС, с которыми взаимодействует
данное
CASE-средство:
5. Возможность
групповой работы:
PVCS Version
Manager
PVCS Tracker
166
PVCS
Configuration
Builder
PVCS Notify
ПРАКТИЧЕСКАЯ РАБОТА № 15:
СРЕДСТВА ДОКУМЕНТИРОВАНИЯ И ТЕСТИРОВАНИЯ.
1. Средство документирования разработки АИС SoDA.
Для создания документации в процессе разработки АИС используются разнообразные средства формирования отчетов, а также компоненты издательских систем. Обычно
средства документирования встроены в конкретные CASE-средства. Исключением являются некоторые пакеты, предоставляющие дополнительный сервис при документировании. Из них наиболее активно используется SoDA (Software Document Аutomation).
Продукт SoDA предназначен для автоматизации разработки проектной документации на всех фазах ЖЦ ПО. Он позволяет автоматически извлекать разнообразную информацию, получаемую на разных стадиях разработки проекта, и включать ее в выходные документы. При этом контролируется соответствие документации проекту, взаимосвязь документов, обеспечивается их своевременное обновление. Результирующая документация
автоматически формируется из множества источников, число которых не ограничено.
SoDA не зависит от применяемых инструментальных средств. Связь с приложениями осуществляется через стандартный программный интерфейс API. Переход на новые
инструментальные средства не влечет за собой дополнительных затрат по документированию проекта.
SoDA содержит набор шаблонов документов, определяемых стандартом на программное обеспечение DOD 2167A. На их основе можно без специального программирования создавать новые формы документов, определяемые пользователями.
Пакет включает в себя графический редактор для подготовки шаблонов документов. Он позволяет задавать необходимый стиль, фон, шрифт, определять расположение
заголовков, резервировать места, где будет размещаться извлекаемая из разнообразных
источников информация. Изменения автоматически вносятся только в те части документации, на которые они повлияли в программе. Это сокращает время подготовки документации за счет отказа от перегенерации всей документации.
SoDA реализована на базе издательской системы FrameBuilder и предоставляет
полный набор средств по редактированию и верстке выпускаемой документации. Разные
версии документации могут быть для наглядности отмечены своими отличительными
признаками. В системе создаются таблицы требований к проекту, по которым можно проследить, как реализуются эти требования. Разные виды документации, сопровождающие
различные этапы ЖЦ, связаны между собой, и можно проследить состояние проекта от
первоначальных требований до анализа, проектирования, кодирования и тестирования
программного продукта.
Итоговым результатом работы системы SoDA является готовый документ (или
книга). Документ может храниться в файле формата SoDA (Frame Builder), который получается в результате генерации документа. Вывод на печать этого документа (или его части) возможен из системы SoDA.
Среда функционирования SoDA – ОС типа UNIX на рабочих станциях Sun
SPARCstation, IBM RISC System/6000 или Hewlett Packard HP 9000 700/800.
2. Средство тестирования QA.
Под тестированием понимается процесс исполнения программы с целью обнаружения ошибок. Регрессионное тестирование – это тестирование, проводимое после усовершенствования функций программы или внесения в нее изменений.
Одно из наиболее развитых средств тестирования QA (новое название – Quality
Works) представляет собой интегрированную, многоплатформенную среду для разработки
автоматизированных тестов любого уровня, включая тесты регрессии для приложений с
графическим интерфейсом пользователя.
167
QA позволяет начинать тестирование на любой фазе ЖЦ, планировать и управлять
процессом тестирования, отображать изменения в приложении и повторно использовать
тесты для более чем 25 различных платформ.
Основными компонентами QA являются:
 QA Partner – среда для разработки, компиляции и выполнения тестов;
 QA Planner – модуль для разработки планов тестирования и обработки результатов. Для создания и выполнения тестов в процессе работы QA Planner вызывается QA Partner;
 Agent – модуль, поддерживающий работу в сети.
Процесс тестирования состоит из следующих этапов:
- создание плана тестирования;
- связывание плана с тестами;
- пометка и выполнение тестов;
- получение отчетов о тестировании и управление результатами.
Создание тестового плана в QA Planner включает в себя составление схемы тестовых требований и выделение уровней детализации. Для этого необходимо определить все,
что должно быть протестировано, подготовить функциональную декомпозицию приложения, оценить, сколько тестов необходимо для каждой функции и характеристики, определить, сколько из них будет реализовано в зависимости от доступных ресурсов и времени.
Эта информация используется для создания схемы тестовых требований.
Для связывания плана с тестами необходимо создать управляющие предложения
(скрипты) на специальном языке 4Test и тесты, которые выполняют требования плана, и
связать компоненты любым способом. Для избежания перегруженности тестов используют управление тестовыми данными.
При выполнении плана результаты записываются в формате, похожем на план. Все
результаты связаны с планом. Есть возможность просмотреть или скрыть общую информацию о выполнении, слить файлы результатов, разметить неудавшиеся тесты, сравнить
результаты предыдущего выполнения тестов, выполнить или отменить отчет.
Одним из атрибутов теста является имя его разработчика, что позволяет при необходимости выполнять тесты, созданные конкретным разработчиком.
Поддерживаемые платформы: Windows 3.x, Windows 95, Windows NT, OS/2,
Macintosh, VMS, HP-UX, AIX, Solaris.
КОНТРОЛЬНЫЕ ВОПРОСЫ:
1. Наименование CASEсредства:
2.
Назначение
CASEсредства:
3. Компоненты CASEсредства:
4. Выходной результат:
5. Среда функционирования:
SoDA
168
QA
ПРАКТИЧЕСКАЯ РАБОТА № 16:
СРЕДСТВА ВИЗУАЛЬНОГО ПРОГРАММИРОВАНИЯ.
1. Средства быстрой разработки приложений.
169
2. Средства визуального программирования.
Среди средств визуального программирования наибольшее распространение получили две технологии:
- технологии COM (Component Object Model – модель составных объектов) и
COM+;
- технология MICROSOFT.NET, явившаяся развитием технологии COM и пришедшая ей на смену.
170
ПРАКТИЧЕСКАЯ РАБОТА № 17: ТЕХНОЛОГИЯ COM.
1. Основы технологии СОМ.
2. СОМ-серверы.
3. СОМ-клиенты.
171
4. Интерфейс.
Базовым интерфейсом всех СОМ-объектов является интерфейс IUnknown. Каждый СОМ-объект должен поддерживать данный интерфейс, в противном случае он
не будет СОМ-объектом. Интерфейс IUnknown имеет три метода: QueryInterface,
AddRef и Release.
5. Библиотеки СОМ.
172
ПРАКТИЧЕСКАЯ РАБОТА № 18: ТЕХНОЛОГИЯ MICROSOFT NET.
1. Технология MICROSOFT.NET.
173
174
2. Структура MICROSOFT.NET.
175
176
ПРАКТИЧЕСКАЯ РАБОТА № 19: КОЛЛЕКТИВНАЯ РАЗРАБОТКА ИС.
1. Задачи коллективной разработки.
177
2. Хранилище файлов.
178
3. Технология Team Source.
179
180
ПРАКТИЧЕСКАЯ РАБОТА № 20:
КОНЦЕПТУАЛЬНЫЕ МОДЕЛИ ДАННЫХ.
181
182
183
184
185
186
ПРАКТИЧЕСКАЯ РАБОТА № 21:
БАЗОВЫЕ ПОНЯТИЯ РЕЛЯЦИОННЫХ БАЗ ДАННЫХ.
187
188
189
190
ПРАКТИЧЕСКАЯ РАБОТА № 22:
ПРОЕКТИРОВАНИЕ РЕЛЯЦИОННЫХ БАЗ ДАННЫХ
МЕТОДОМ НОРМАЛИЗАЦИИ.
191
192
193
194
195
196
197
198
199
200
ПРАКТИЧЕСКАЯ РАБОТА № 23:
МОДЕЛЬ «СУЩНОСТЬ-СВЯЗЬ». ER-ДИАГРАММЫ.
201
202
203
204
205
206
207
208
209
210
ПРАКТИЧЕСКАЯ РАБОТА № 24: ВИДЫ НОТАЦИЙ.
211
212
213
214
215
216
217
218
219
220
221
222
223
224
ПРАКТИЧЕСКАЯ РАБОТА № 25:
СРЕДСТВА АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ
СТРУКТУР БАЗ ДАННЫХ.
225
226
227
228
229
230
231
232
ПРАКТИЧЕСКАЯ РАБОТА № 26:
ЯЗЫК СТРУКТУРНЫХ ЗАПРОСОВ SQL.
233
234
235
236
237
238
ПРАКТИЧЕСКАЯ РАБОТА № 27:
ОБЪЕКТЫ БАЗЫ ДАННЫХ (ТАБЛИЦЫ И ПРЕДСТАВЛЕНИЯ).
239
240
241
242
243
244
ПРАКТИЧЕСКАЯ РАБОТА № 28:
ОБЪЕКТЫ БАЗЫ ДАННЫХ
(ХРАНИМЫЕ ПРОЦЕДУРЫ И ТРИГГЕРЫ).
245
246
247
248
249
ПРАКТИЧЕСКАЯ РАБОТА № 29:
ОБЪЕКТЫ БАЗЫ ДАННЫХ (ФУНКЦИИ ПОЛЬЗОВАТЕЛЯ,
ИНДЕКСЫ, ПОЛЬЗОВАТЕЛЬСКИЕ ТИПЫ ДАННЫХ).
250
251
252
253
254
255
256
ПРАКТИЧЕСКАЯ РАБОТА № 30:
ОБЪЕКТЫ БАЗЫ ДАННЫХ
(ОГРАНИЧЕНИЯ ЦЕЛОСТНОСТИ, УМОЛЧАНИЯ, ПРАВИЛА)
257
258
259
260
ПРАКТИКУМ ПО ПРОЕКТИРОВАНИЮ
ИНФОРМАЦИОННЫХ СИСТЕМ.
ПРАКТИЧЕСКАЯ РАБОТА № 31:
АНАЛИЗ И ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ.
ЭТАП № 1: «ПРЕДМЕТНАЯ ОБЛАСТЬ»
Ателье «Кокетка» оказывает услуги населению по пошиву легкого платья, верхней одежды, меховых изделий, головных уборов, а также детской одежды. Клиенты обращаются в ателье, утверждают особенности эскиза заказа, приходят на примерки. В ателье
работают несколько мастеров с разной специализацией:
o Портной легкого платья – 3 чел.;
o Портной верхней одежды – 1 чел.;
o Мастер по пошиву и ремонту головных уборов (в т.ч. меховых) – 1 чел.;
o Портной детской одежды – 1 чел.
Деятельность ателье осуществляется следующим образом:
1) Клиенты обращаются в ателье для получения услуги по пошиву изделий.
2) У клиента выясняют информацию о характере его заказа (легкое платье, верхняя
одежда и т.п.). Далее ответственный за данную услугу мастер совместно с клиентом рисует эскиз, уточняет детали заказа.
3) Информация о заказе и данные о клиенте регистрируются, оговаривается срок
выполнения заказа и даты примерки.
4) Мастера, используя основные фонды ателье (инструменты, оборудование и т.п.)
в указанные сроки изготавливают изделие (ремонтируют его), напоминают клиенту о
примерке по телефону.
5) Готовое изделие после всех примерок и согласований отдают клиенту. Клиент
оплачивает работу согласно ее стоимости. Если у клиента имеются претензии к качеству
работы, оговариваются сроки устранения претензий.
6) Каждая сумма, полученная от клиента, пробивается по кассовому аппарату.
Сумма выручки за весь день хранится в сейфе. Изъятие выручки и ее инкассирование делает хозяин ателье. Он же решает все хозяйственные вопросы.
Для ведения учета хозяин ателье желает приобрести автоматизированную
информационную систему. Имеются следующие требования:
 АИС должна обеспечивать раздельный учет по портным, клиентам и заказам, т.е. состоять из трех частей: «ПОРТНЫЕ», «КЛИЕНТЫ» и «ЗАКАЗЫ».
 По каждому портному должна быть собрана информация (как минимум):
o № портного;
o Фамилия, имя, отчество портного;
o Дата рождения;
o Специализация;
o Домашний телефон.
 По каждому клиенту должна быть собрана информация (как минимум):
o № клиента;
o Фамилия, имя, отчество клиента;
o Контактный телефон;
o Примечание.
 По каждому заказу должна быть собрана информация (как минимум):
o № заказа;
o № клиента;
o № портного;
o Дата заказа;
261
o Наименование заказа;
o Дата примерки;
o Дата исполнения;
o Стоимость заказа.
 В любой момент АИС должна предоставлять ответ на следующие запросы (как
минимум):
o Список заказов, выполненных в течение заданного периода (№ заказа, №
портного, Наименование заказа, Дата исполнения и Стоимость заказа);
o Список заказов, которые выполняются на данный момент (№ заказа, №
портного, Наименование заказа, Дата исполнения и Стоимость заказа);
o Список заказов, полученных ателье в течение заданного периода (№ заказа, Дата заказа, Наименование заказа, Дата исполнения);
o Список клиентов, заказавших изделие заданного наименования (№ заказа,
Ф.И.О. клиента, Стоимость заказа);
o Список заказов, выполняемых заданным портным (№ заказа, Ф.И.О. клиента, Наименование заказа, Дата исполнения, Стоимость заказа);
o Общая стоимость всех заказов, выполненных заданным портным в течение заданного периода.
Ход работы:
1. Знакомимся с описанием предметной области.
2. Выделяем сущности (см. подсказку): ПОРТНЫЕ, КЛИЕНТЫ и ЗАКАЗЫ.
3. Определяем атрибуты каждой сущности:
ПОРТНЫЕ
КЛИЕНТЫ
ЗАКАЗЫ
№ портного
№ клиента
№ заказа
ФИО портного
ФИО клиента
№ клиента
Дата рождения
Контактный телефон
№ портного
Специализация
Примечание
Дата заказа
Домашний телефон
Наименование заказа
Дата примерки
Дата исполнения
Стоимость заказа
4. Устанавливаем связи между сущностями:
ПОРТНЫЕ – КЛИЕНТЫ (один портной может шить для многих клиентов, один
клиент может заказать изделия многим портным; связь «многие ко многим»).
ПОРТНЫЕ – ЗАКАЗЫ (один портной может выполнять много заказов, но один заказ выполняется только одним портным; связь «один ко многим»).
КЛИЕНТЫ – ЗАКАЗЫ (один клиент может сделать много заказов, но один заказ
может быть сделан только одним клиентом; связь «один ко многим»).
54. ПРАКТИЧЕСКАЯ РАБОТА № 32:
РАЗРАБОТКА МОДЕЛИ «СУЩНОСТЬ-СВЯЗЬ».
ПОСТРОЕНИЕ ER-ДИАГРАММЫ.
(2 ч.)
ЭТАП № 2: «ER-ДИГРАММА»
Ход работы: строим ER-диаграмму АИС «Ателье».
262
m:n
КЛИЕНТЫ
№ клиента
ФИО клиента
Контактный телефон
Примечание
ПОРТНЫЕ
№ портного
ФИО портного
Дата рождения
Специализация
Домашний телефон
1:n
263
1:n
ЗАКАЗЫ
№ заказа
№ клиента
№ портного
Дата заказа
Наименование заказа
Дата примерки
Дата исполнения
Стоимость заказа
ПРАКТИЧЕСКАЯ РАБОТА № 33:
СОЗДАНИЕ ОБЪЕКТОВ БАЗЫ ДАННЫХ.
ЭТАП № 3: «СОЗДАНИЕ ОБЪЕКТОВ в SQL»
Ход работы:
1. Знакомимся с правилами создания объектов в SQL.
Объекты АИС создаются на универсальном языке запросов SQL.
Каждая сущность (объект) имеют в языке SQL вид таблицы. Например, сущность
ПОРТНЫЕ будет иметь вид:
ПОРТНЫЕ
№ портФИО портДата рождеСпециализаДомашний теленого
ного
ния
ция
фон
Наименования граф таблицы – это атрибуты сущности. В языке SQL атрибуты
называются полями.
Таблица создается при помощи команды:
CREATE TABLE таблица ([поле1] тип (размер), [поле2] тип (размер), …),
где:
таблица – имя создаваемой таблицы;
поле1, поле2 и т.д. – имена полей таблицы;
тип – тип данных данного поля (число – INTEGER, текст – TEXT, денежная сумма
– CURRENCY, дата – DATE);
размер – размер поля в символах (только для текстовых полей).
Например: объект ПОРТНЫЕ создается по команде
CREATE TABLE ПОРТНЫЕ ([№ портного] INTEGER, [ФИО портного] TEXT
(30), [Дата рождения] DATE,
[Специализация] TEXT (20), [Домашний телефон] TEXT (10))
Количество символов в поле «ФИО портного» ограничено тридцатью, в поле
«Специализация» - двадцатью.
Заметьте, что «Домашний телефон» - тестовое поле, т.к. в записи телефона обычно
есть разделители, поэтому данное поле не может быть числовым.
2. Создаем на языке SQL объект КЛИЕНТЫ (в поле «Примечание» максимум – 30
символов).
ОТВЕТ:
CREATE TABLE КЛИЕНТЫ ([№ клиента] INTEGER, [ФИО клиента] TEXT
(30),
[Контактный телефон] TEXT (10), [Примечание] TEXT (30))
3. Создаем на языке SQL объект ЗАКАЗЫ (в поле «Наименование заказа» - максимум 20 символов,
ОТВЕТ:
CREATE TABLE ЗАКАЗЫ ([№ заказа] INTEGER, [№ клиента] INTEGER, [№
портного] INTEGER,
[Дата заказа] DATE, [Наименование заказа] TEXT (20), [Дата примерки]
DATE, [Дата исполнения] DATE,
[Стоимость заказа] CURRENCY)
264
ПРАКТИЧЕСКАЯ РАБОТА № 34:
МАНИПУЛИРОВАНИЕ ДАННЫМИ В SQL.
ЭТАП № 4: «МАНИПУЛИРОВАНИЕ ДАННЫМИ в SQL»
Ход работы:
1. Знакомимся с правилами манипулирования данными в SQL.
Манипулирование данными заключается в их добавлении в таблицу, удалении из таблицы, изменении данных по заданному принципу.
Для добавления данных в таблицу используется команда:
INSERT INTO таблица ([поле1], [поле2], …)
VALUES (значение1, значение2, …)
где:
таблица – имя таблицы, в которую добавляются записи;
поле1, поле2 и т.д. – имена полей таблицы, в которые добавляются соответственно
записи значение1, значение2 и т.д.
Например: сделаем запись в таблицу ПОРТНЫЕ.
INSERT INTO ПОРТНЫЕ ([№ портного], [ФИО портного], [Дата рождения],
[Специализация],
[Домашний телефон])
VALUES (1, «Кузнецов Иван Михайлович», #17/03/65#, «Портной легкого платья», «47-13-04»)
Обратите внимание: текстовые значения берутся в кавычки, значения даты – в
«решетки» #.
Удаление записей из таблицы производится по команде:
DELETE
FROM таблица
WHERE условие отбора
где:
таблица – имя таблицы, из которой удаляются записи;
условие отбора – условие, при котором удаляются записи.
ВНИМАНИЕ: удаленные записи восстановлению не подлежат!
Например: удалим из таблицы ПОРТНЫЕ всех портных легкого платья.
DELETE
FROM ПОРТНЫЕ
WHERE [Специализация] = «Портной легкого платья»
Изменение данных в таблице производится по команде:
UPDATE таблица
SET новое значение
WHERE условие отбора
где:
таблица – имя таблицы, в которой изменяются записи;
новое значение – выражение, определяющее обновление записи;
условие отбора – выражение, отбирающее записи, которые должны быть изменены. Будут изменены только те записи, которые удовлетворяют данному условию.
Например: увеличим в таблице ЗАКАЗЫ стоимость всех юбок на 200 рублей.
UPDATE ЗАКАЗЫ
SET [Стоимость заказа] = [Стоимость заказа] + 200
WHERE [Наименование заказа] = «Юбка»
ПРИМЕЧАНИЕ:
- если в команде WHERE должно одновременно выполняться несколько условий,
они разделяются словом AND;
265
- если достаточно выполнения хотя бы одного из нескольких условий, они разделяются словом OR;
- если значение должно быть заключено между определенным начальным и определенным конечным значением, то записывается выражение BETWEEN [Начальное
значение] AND [Конечное значение].
2. Изобразите таблицы ПОРТНЫЕ, КЛИЕНТЫ и ЗАКАЗЫ после выполнения
следующих команд:
INSERT INTO ПОРТНЫЕ ([№ портного], [ФИО портного], [Дата рождения],
[Специализация],
[Домашний телефон])
VALUES (1, «Кузнецов Иван Михайлович», #17/03/65#, «Портной легкого платья», «47-13-04»)
INSERT INTO ПОРТНЫЕ ([№ портного], [ФИО портного], [Дата рождения],
[Специализация],
[Домашний телефон])
VALUES (2, «Антонова Маргарита Павловна», #09/10/70#, «Портной легкого
платья», «19-34-03»)
INSERT INTO ПОРТНЫЕ ([№ портного], [ФИО портного], [Дата рождения],
[Специализация],
[Домашний телефон])
VALUES (3, «Мишакова Елена Петровна», #25/04/74#, «Портной легкого платья», «32-17-29»)
INSERT INTO ПОРТНЫЕ ([№ портного], [ФИО портного], [Дата рождения],
[Специализация],
[Домашний телефон])
VALUES (4, «Трифонов Андрей Сергеевич», #22/07/70#, «Портной верхней
одежды», «нет»)
INSERT INTO ПОРТНЫЕ ([№ портного], [ФИО портного], [Дата рождения],
[Специализация],
[Домашний телефон])
VALUES (5, «Васильчук Федор Тимофеевич», #04/05/52#, «Мастер головных
уборов», «нет»)
INSERT INTO ПОРТНЫЕ ([№ портного], [ФИО портного], [Дата рождения],
[Специализация],
[Домашний телефон])
VALUES (6, «Мальцева Ирина Евгеньевна», #18/011/73#, «Портной детской
одежды», «37-31-40»)
INSERT INTO ПОРТНЫЕ ([№ портного], [ФИО портного], [Дата рождения],
[Специализация],
[Домашний телефон])
VALUES (7, «Супрунова Ольга Николаевна», #06/12/68#, «Портной легкого платья», «27-31-92»)
INSERT INTO КЛИЕНТЫ ([№ клиента], [ФИО клиента], [Контактный телефон], [Примечание])
VALUES (1, «Ельцов Петр Никодимович», «83-75-92», «Скидка 10%»)
266
INSERT INTO КЛИЕНТЫ ([№ клиента], [ФИО клиента], [Контактный телефон], [Примечание])
VALUES (2, «Григорьева Анна Романовна», «92-85-73», «Скидка 5%»)
INSERT INTO КЛИЕНТЫ ([№ клиента], [ФИО клиента], [Контактный телефон], [Примечание])
VALUES (3, «Черемисов Артур Юрьевич», «84-67-29», «Скидка 5%»)
INSERT INTO ЗАКАЗЫ ([№ заказа], [№ клиента], [№ портного], [Дата заказа],
[Наименование заказа],
[Дата примерки], [Дата исполнения], [Стоимость заказа])
VALUES (1, 1, 4, #01/05/09#, «Пальто», #10/05/09#, #20/05/09#, 15000,00)
INSERT INTO ЗАКАЗЫ ([№ заказа], [№ клиента], [№ портного], [Дата заказа],
[Наименование заказа],
[Дата примерки], [Дата исполнения], [Стоимость заказа])
VALUES (2, 2, 1, #05/06/09#, «Платье», #10/06/09#, #15/06/09#, 10000,00)
INSERT INTO ЗАКАЗЫ ([№ заказа], [№ клиента], [№ портного], [Дата заказа],
[Наименование заказа],
[Дата примерки], [Дата исполнения], [Стоимость заказа])
VALUES (3, 3, 5, #10/07/09#, «Шапка (пошив)», #14/07/09#, #17/07/09#, 8000,00)
DELETE
FROM ПОРТНЫЕ
WHERE [№ портного] = 7
UPDATE КЛИЕНТЫ
SET [Примечание] = «Скидка 10%»
WHERE [Примечание] = «Скидка 5%»
UPDATE КЛИЕНТЫ
SET [Примечание] = «Скидка 15%»
WHERE [Примечание] = «Скидка 10%»
UPDATE ЗАКАЗЫ
SET [№ портного] = 2
WHERE [№ портного] = 1
UPDATE ЗАКАЗЫ
SET [Дата исполнения] = [Дата исполнения] + #05/00/00#
UPDATE ЗАКАЗЫ
SET [Стоимость заказа] = [Стоимость заказа]*1,2
WHERE [№ портного] = 5
267
ПРАКТИЧЕСКАЯ РАБОТА № 35:
СТАНДАРТНЫЕ ЗАПРОСЫ В SQL.
ЭТАП № 5: «СТАНДАРТНЫЕ ЗАПРОСЫ в SQL»
Ход работы:
1. Знакомимся с правилами создания запросов в SQL.
Для получения необходимой информации необходимо составить запрос на языке
SQL. Такой запрос называется запросом на выборку (т.к. информационная система выбирает из базы данных необходимые сведения).
Запрос на выборку выполняется по команде:
SELECT [поле1], [поле2], …
FROM таблица
WHERE условие
где:
поле1, поле2 и т.д. – имена полей, из которых должны быть отобраны данные;
таблица – имя таблицы, из которой должны быть отобраны данные; если таблиц
несколько, их мена разделяются словами INNER JOIN;
условие - условие, которому должны удовлетворять отбираемые записи.
Если в ходе отбора данных требуется провести дополнительные расчеты, это отображается в строке SELECT после перечисления полей, через запятую:
- подсчитать количество отобранных записей: Count ([поле]) (где поле – имя поля,
по которому ведется подсчет);
- подсчитать сумму отобранных значений: Sum ([поле]) (где поле – имя поля, значения в котором суммируются).
Например: выполним первый запрос хозяина ателье (см. описание предметной области).
Запрос № 1: Список заказов, выполненных в течение мая 2009 г. (№ заказа, №
портного, Наименование заказа, Дата исполнения и Стоимость заказа).
SELECT [№ заказа], [№ портного], [Наименование заказа], [Дата исполнения],
[Стоимость заказа]
FROM Заказы
WHERE [Дата исполнения] BETWEEN #01/05/09# AND #31/05/09#
2. Составьте остальные пять запросов (см. описание предметной области).
Запрос № 2: Список заказов, которые выполняются на момент 1 февраля 2010
г. (№ заказа, № портного, Наименование заказа, Дата исполнения и Стоимость заказа).
SELECT [№ заказа], [№ портного], [Наименование заказа], [Дата исполнения],
[Стоимость заказа]
FROM Заказы
WHERE [Дата исполнения] < #01/02/10#
Запрос № 3: Список заказов, полученных ателье в течение июня 2009 г. (№ заказа, Дата заказа, Наименование заказа, Дата исполнения).
SELECT [№ заказа], [Дата заказа], [Наименование заказа], [Дата исполнения]
FROM Заказы
WHERE [Дата заказа] BETWEEN #01/06/09# AND #30/06/09#
Запрос № 4: Список клиентов, заказавших брючные костюмы (№ заказа, Ф.И.О.
клиента, Стоимость заказа).
268
SELECT [№ заказа], [ФИО клиента], [Стоимость заказа], [Наименование заказа]
FROM Заказы
WHERE [Наименование заказа] = «Брючный костюм»
Запрос № 5: Список заказов, выполняемых Мальцевой И.Е. на момент 5 марта
2010 г. (№ заказа, Ф.И.О. клиента, Наименование заказа, Дата исполнения, Стоимость заказа).
SELECT [№ заказа], [ФИО клиента], [Наименование заказа], [Дата исполнения], [Стоимость заказа], [ФИО портного]
FROM Заказы INNER JOIN Портные
WHERE [ФИО портного] = «Мальцева Ирина Евгеньевна» AND [Дата исполнения] < #05/03/10#
Запрос № 6: Общая стоимость всех заказов, выполненных Кузнецовым И.М. в
течение 2009 г.
SELECT [Дата исполнения], [Стоимость заказа], [ФИО портного],
Sum([Стоимость заказа])
FROM Заказы INNER JOIN Портные
WHERE [ФИО портного] = «Кузнецов Иван Михайлович» AND [Дата исполнения] BETWEEN #01/01/09# AND #31/12/09#
269
ПРАКТИКУМ ПО ПРОЕКТИРОВАНИЮ АСУП.
ПРАКТИЧЕСКАЯ РАБОТА № 36:
ИЗУЧЕНИЕ АССОРТИМЕНТА ПРОДУКЦИИ
И ТЕХНОЛОГИЧЕСКОГО ПРОЦЕССА.
(Файл MS Word «Пекарня Колобок»)
Изучение:
 сведений о предприятии;
 ассортимента продукции (плана производства);
 технологического процесса (технологических карт).
ПРАКТИЧЕСКАЯ РАБОТА № 37:
ИЗУЧЕНИЕ ПРОЦЕССА СНАБЖЕНИЯ ПРЕДПРИЯТИЯ.
(Файл MS Word «Пекарня Колобок»)
Изучение:
 процесса снабжения предприятия (списка поставщиков, плана закупок, закупочных актов).
ПРАКТИЧЕСКАЯ РАБОТА № 38:
ИЗУЧЕНИЕ ОРГАНИЗАЦИОННОЙ СТРУКТУРЫ ПРЕДПРИЯТИЯ
И КАДРОВОЙ ПОЛИТИКИ.
(Файл MS Word «Пекарня Колобок»)
Изучение:
 организационной структуры предприятия (штатного расписания, приказов о
приеме на работу) и кадровой политики (методики определения численности поваров).
ПРАКТИЧЕСКАЯ РАБОТА № 39:
ИЗУЧЕНИЕ УЧЕТНОЙ ПОЛИТИКИ ПРЕДПРИЯТИЯ.
(Файл MS Word «Пекарня Колобок»)
Изучение:
 учетной политики предприятия (учета продаж и отчета по продажам, учета
затрат и ведомости затрат).
ПРАКТИЧЕСКАЯ РАБОТА № 40:
ИЗУЧЕНИЕ ФИНАНСОВЫХ РЕЗУЛЬТАТОВ
РАБОТЫ ПРЕДПРИЯТИЯ.
(Файл MS Word «Пекарня Колобок»)
Изучение:
 финансовых результатов работы предприятия (отчета о прибылях и убытках).
270
ПРАКТИЧЕСКАЯ РАБОТА № 41:
РАЗРАБОТКА ТЕХНИЧЕСКОГО ПРОЕКТА АСУП.
(Файл MS Word «Пекарня Колобок»)
Разработка технического проекта АСУП (образец – типовой проект, изученный на
лекциях). Формат – MS Word.
ПРАКТИЧЕСКАЯ РАБОТА № 42:
ВЫБОР ТЕХНИЧЕСКОГО СРЕДСТВА ПРОЕКТИРОВАНИЯ.
Выбор технического средства проектирования (MS Excel, MS Access, доступный
язык программирования).
Простейший вариант – MS Excel.
ПРАКТИЧЕСКАЯ РАБОТА № 43:
РАЗРАБОТКА ПЛАНА ПРОИЗВОДСТВА.
(Файл MS Excel «Практикум – Проектирование АСУ предприятия»)
Разработка:
 плана производства.
ПРАКТИЧЕСКАЯ РАБОТА № 44:
РАЗРАБОТКА ТЕХНОЛОГИЧЕСКИХ КАРТ.
(Файл MS Excel «Практикум – Проектирование АСУ предприятия»)
Разработка:
 технологических карт на 7 блюд + на дрожжевое тесто.
ПРАКТИЧЕСКАЯ РАБОТА № 45:
РАЗРАБОТКА ПЛАНА ЗАКУПОК.
(Файл MS Excel «Практикум – Проектирование АСУ предприятия»)
Разработка:
 плана закупок.
ПРАКТИЧЕСКАЯ РАБОТА № 46:
РАЗРАБОТКА ЗАКУПОЧНЫХ АКТОВ.
Разработка:
 закупочных актов (6 – по видам сырья).
ПРАКТИЧЕСКАЯ РАБОТА № 47:
РАСЧЕТ ЧИСЛЕННОСТИ ПЕРСОНАЛА,
СОСТАВЛЕНИЕ ШТАТНОГО РАСПИСАНИЯ.
Расчет численности поваров, составление штатного расписания, форм приказов о
приеме на работу, оргструктуры предприятия.
271
ПРАКТИЧЕСКАЯ РАБОТА № 48:
СОСТАВЛЕНИЕ ОТЧЕТА ПО ПРОДАЖАМ
И ВЕДОМОСТИ ЗАТРАТ.
Составление отчета по продажам и ведомости затрат.
ПРАКТИЧЕСКАЯ РАБОТА № 49:
СОСТАВЛЕНИЕ ОТЧЕТА О ПРИБЫЛЯХ И УБЫТКАХ.
Составление отчета о прибылях и убытках.
ПРАКТИЧЕСКАЯ РАБОТА № 50:
РЕШЕНИЕ ЗАДАЧ ПО РЕГУЛИРОВАНИЮ
ДЕЯТЕЛЬНОСТИ ПРЕДПРИЯТИЯ.
Решение задач по регулированию деятельности предприятия.
272
Список литературы
Основные источники:
1. Гагарина Л.Г., Киселев Д.В., Федотова Е.Л. Разработка и эксплуатация автоматизированных информационных систем: учебное пособие. –М. ИД «ФОРУМ»:
ИНФРА-М, 2012.
2. Голышева А.В., Клеандрова И.А., Прокди Р.Г. Access 2007 без воды. Все, что
нужно для уверенной работы. –М.: Наука и техника, 2013.
3. Горохова Т.Н. Разработка и эксплуатация информационных систем: Учебное
пособие. –СПб.: ГОУ СПО Санкт-Петербургский колледж управления и экономики «Александровский лицей», 2010.
4. Дунаев В. Базы данных. Язык SQL для студента. –СПб: БХВ-Петербург, 2012.
5. Избачков Ю.С., Петров В.Н. Информационные системы. –СПб.: Питер, 2011.
6. Илюшечкин В.М. Основы использования и проектирования баз данных. –М.:
Юрайт, 2011.
7. Карпова И.П. Базы данных. –СПб: Питер, 2013.
8. Советов Б.Я., Цехановский В.В., Чертовской В.Д. Базы данных. Теория и практика. –М.: Юрайт, 2013.
9. Фуфаев Э.В. Базы данных: учебное пособие для студентов среднего профессионального образования. –М.: Издательский центр «Академия», 2012.
10. Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных. –СПб.: КОРОНА
принт, 2011.
Дополнительные источники:
1. Брешенков А.В., Губарь А.М. Проектирование баз данных в среде Access:
Учебное пособие для вузов. –М.: Изд-во МГТУ им. Н.Э. Баумана, 2012.
2. Вендров А.М. CASE-технологии. Современные методы и средства проектирования информационных систем. –М.: Финансы и статистика, 2011.
3. Виноградов Г.П., Кирсанова Н.В. Проектирование структуры и создание реляционных баз данных средствами СУБД Access: Учебное пособие. 1-е изд. –
Тверь: ТГТУ, 2012.
4. Епанешников А.М., Епанешников В.А. Практика создания приложений в
Access. –М.: Диалог-МИФИ, 2009.
5. Информатика и информационные технологии: учебное пособие / под ред. Ю.Д.
Романовой. –М.: Эксмо, 2009.
273
6. Кириллов В., Громов Г. Введение в реляционные базы данных. –СПб: БХВПетербург, 2009.
7. Леонтьев Ю. Microsoft Office 2007. Краткий курс. –СПб.: Питер, 2012.
8. Международный стандарт ISO/IEC 12207 «Жизненный цикл автоматизированных информационных систем».
9. Михеева И.В. Практикум по информационным технологиям в профессиональной деятельности: Учебное пособие для среднего профессионального образования. –М.: Издательский центр «Академия», 2009.
10. Попов В.Б. Основы информационных и телекоммуникационных технологий. –
М.: Финансы и статистика, 2011.
11. Фуфаев Э.В., Фуфаева Л.И. Пакеты прикладных программ: Учебное пособие
для среднего профессионального образования. –М.: Академия, 2009.
12. Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных. –СПб.: КОРОНА
принт, 2011.
Интернет-ресурсы:
1. http://www.interface.ru/ - Разработчикам информационных систем.
2. http://citforum.ru/ - Разработчикам информационных систем.
3. http://www.torins.ru/ - Сайт ассоциации разработчиков информационных систем.
274
Download