Базы данных: модели, разработка, реализация

Проектирование реляционных баз данных с использованием декомпозиционного и ER–методов. Вопросы поддержки целостности, защиты информации и параллельной обработки данных. Приложения для работы с базами данных с использованием СУБД Access и языка VBA.

Рубрика Программирование, компьютеры и кибернетика
Вид учебное пособие
Язык русский
Дата добавления 01.03.2011
Размер файла 211,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

- Выбирается в меню Формат команда Закрепить столбцы.

После активизации указанной команды маркированное поле перемещается в левую часть таблицы и даже после перехода в последние поля остается видимым.

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

3.2.4 Работа с запросами

Вопросы, формулируемые по отношению к базе данных, называются запросами.

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

В Access, как и во многих современных СУБД, для формирования запросов используется "Запрос по образцу" (Query by Example или QBE).

Запрос по образцу - это таблично ориентированный язык для выбора данных из одной или нескольких таблиц.

Для создания запроса необходимо открыть базу данных, в окне базы перейти на вкладку Запросы и щелкнуть по кнопке Создать.

На экране появится диалоговое окно Новый запрос, предназначенное для выбора способа построения запроса. Могут быть использованы следующие способы создания запросов:

Конструктор - самостоятельное создание нового запроса;

Простой запрос - создание запроса на выборку из определенных полей;

Перекрестный запрос - создание запроса, выводящего данные в компактной форме, подобном формату электронной таблицы;

Повторяющиеся записи - создание запроса на поиск повторяющихся записей в простой таблице или запросе;

Записи без подчиненных - создание запроса на поиск записей, которым не соответствует ни одна запись в подчиненной таблице.

Мастер Простой запрос служит для создания простых запросов. Запрос создается при помощи Мастера по шагам. При этом имеется два варианта запроса: в запрос включаются все поля таблицы, включая и поля связанных между собой таблиц; в запрос включаются итоговые значения из таблицы (например, подсчитаны суммы по записям, определены средние арифметические и т.д.). Выбор варианта запроса производится на втором шаге Мастера установкой флажка Подробный или Итоговый.

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

Запросы для выборки повторяющихся записей и записей, которым не соответствует ни одна запись в подчиненной таблице не требуют особых пояснений. Смысл их очевиден из названия.

Конструктор запросов является основным средством по работе с запросами, поэтому рассмотрим работу с ним.

.Для запуска его необходимо выбрать значение Конструктор в окне Новый запрос и нажать на кнопку ОК.

В результате на экране появятся два окна: окно конструктора запросов Запрос на выборку и окно выбора таблиц Добавление таблицы.

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

В окне конструктора запросов появится небольшое окно с заголовком таблицы и списком ее полей.

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

Имя поля (и даже несколько маркированных имен) можно перенести в бланк запроса методом Drag and Drop.

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

Если больше никаких условий не требуется, то создание запроса можно завершить, закрыв окно конструктора запросов и присвоив запросу имя, в появившемся окне Сохранение .

Имя сохраненного запроса программа включает в список, находящийся на вкладке Запросы окна базы данных. Результат выполнения запроса отображается после нажатия кнопки Открыть в окне базы данных или кнопки Запуск (кнопка с изображением восклицательного знака) на панели инструментов Создание запросов, а также после двойного щелчка на имени запроса. При этом не имеет значения, открыта таблица с данными или нет.

В таблице с результатами выполнения запроса данные обрабатываются так же, как и в обыкновенной таблице. При этом можно использовать команды как из контекстного меню окна запроса, так и из меню Формат.

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

Сортировка данных в запросе. В Access существует несколько способов сортировки данных, отобранных посредством запроса. Быстро выполнить сортировку в окне запроса позволяют команда Сортировка из меню Записи, а также кнопки По возрастанию и По убыванию панели инструментов. Для этого следует включить в запрос поля таблицы, по которым будут рассортированы записи, и определить способ сортировки - по возрастанию или по убыванию. Данные можно упорядочить по алфавиту, а также по убыванию или возрастанию. При алфавитно-цифровой сортировке по возрастанию данные сортируются в таком порядке: сначала - элементы, начинающиеся со знаков пунктуации или специальных символов, затем - элементы, начинающиеся с цифр, а затем - элементы, которые начинаются с букв.

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

Чтобы ускорить сортировку, следует размещать рядом поля, данные которых необходимо рассортировать.

Через окно запроса в исходную таблицу можно вставить новые записи, как при заполнении таблицы. Добавляемые или изменяемые данные помещаются в таблицу, на основе которой создан запрос. В результате ввода новых данных в таблицу может нарушиться порядок следования данных в запросе. Для восстановления порядка необходимо повторить вызов запроса и сортировку данных.

Выполнить сортировку данных можно и в окне конструктора запросов. Для этого необходимо нажать кнопку Открыть на вкладке Запросы окна базы данных. В окне выбора таблиц отметить имя таблицы, в которой следует выполнить сортировку данных, после чего нажать кнопки Добавить и Закрыть. Отметить в списке все имена полей, дважды щелкнув на заголовке списка, и переместить его в QBE-область. Для нужного поля задать в строке Сортировка способ сортировки. Сохранить запрос.

Применение специальных критериев. До сих пор мы рассматривали запросы, выполняющие отбор полей таблицы. При создании запроса можно задать дополнительные критерии, вследствие чего он будет осуществлять отбор только нужных сведений в каждом поле. Для формирования такого запроса необходимо в QBE-области ввести значение в ячейку, расположенную на пересечении строки Условия отбора и колонки с нужным именем.

Критерии, устанавливаемые в QBE-области, необходимо заключать в кавычки. Если Access идентифицирует введенные символы как критерий отбора, то заключает их в кавычки автоматически, а если нет, то сообщает о синтаксической ошибке. Программа Access не может распознать как критерий комбинацию символов и знаков подстановки.

В запросах символы подстановки * и ? применяются так же, как и во всех приложениях Microsoft Office. Символ звездочки заменяет любое количество букв или цифр, а знак вопроса - только один символ.

Все строки в QBE-области, расположенные под строкой Условия отбора, служат для задания критериев отбора. Таким образом, для одного поля можно определить два, три и более критериев отбора данных. По умолчанию все элементы критерия объединяются оператором ИЛИ. Это значит, что запрос выберет те записи, которые соответствуют хотя бы одному критерию.

Чтобы объединить несколько условий отбора оператором И, следует привести их в одной строке. Например, если необходимо выбрать записи из таблицы Зарплата, в которых указаны оклады от 1000 до 1500, в столбце Оклад надлежит ввести следующий критерий: Between 1000 and 1500. Другой формой записи этого критерия является выражение >1000 And <1500.

В результате будут отобраны только те записи, которые удовлетворяют обоим условиям, т.е. оклады, значения которых находятся в интервале от 1000 до 1500.

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

Исключить группу данных из состава анализируемых запросом записей (например, оклад 1100) позволяет следующий критерий: Not 1100. Другая форма записи этого критерия: <>1100.

В этом случае можно не использовать кавычки.

Операторы And и Or применяются как отдельно, так и в комбинации. Следует помнить, что условия, связанные оператором And, выполняются раньше условий, объединенных оператором Or.

Вычисления в запросе. Запросы становятся еще эффективнее, если в них включены вычисления. Над полученными в результате выполнения запроса данными можно провести вычисления, используя предоставляемые Access функции.

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

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

Для установки связи между полями таблиц необходимо выполнить следующие действия:

- Закрыть все таблицы, между которыми существует связь.

- Активизировать команду Схема данных в меню Сервис или нажать соответствующую кнопку на панели инструментов.

- Если вместо диалогового окна Добавление таблицы откроется окно Схема данных (это может произойти при наличии связей между таблицами, установленных ранее), необходимо выбрать в меню команду Добавление таблицы или нажать соответствующую кнопку на панели инструментов.

- Выбрать нужную таблицу в списке, расположенном на вкладке Таблицы или Таблицы и запросы, и нажать кнопку Добавить. Затем добавить другую таблицу и нажать кнопку Закрыть. В окне Схема данных появятся два небольших окна со списками полей выбранных таблиц.

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

- На экране появится диалоговое окно Связи, в котором отображаются имена связываемых полей обеих таблиц.

При необходимости их можно изменить.

- Активизировать опцию Обеспечение целостности данных. При этом будет установлено отношение One-To-Many (один ко многим), что отразится в области Тип отношения. Это означает, что одной записи главной таблицы могут быть поставлены в соответствие несколько записей подчиненной таблицы. Такое отношение является наиболее распространенным в реляционных базах данных.

- В заключение нажать кнопку Создать. В окне Связи программа графически обозначит связь между полями таблиц.

Запрос для таблиц, между которыми установлена связь, создается следующим образом:

- Открыть окно конструктора запросов, нажав кнопку Создать на вкладке Запросы окна базы данных.

- Выполнить двойной щелчок на имени главной таблицы, в диалоговом окне Запрос на выборку, вследствие чего она будет помещена в QBE-область.

- Повторить эту операцию для подчиненной таблицы.

- Закрыть диалоговое окно Добавление таблицы посредством кнопки Закрыть.

- Включить в запрос нужные поля.

- Запустить запрос. Благодаря однозначности отношения между полями таблиц осуществляется корректное сопоставление записей, идентифицируемых посредством поля соединенного поля.

3.2.5 Создание форм

Формы используются для достижения комфорта в работе с Access и при обработке базы данных несколькими пользователями. Форма может служить средством защиты базы от действий неквалифицированных пользователей, а также ширмой, заслоняющей от любопытных глаз конфиденциальную информацию.

В Access существует несколько способов создания форм:

- Автоформа - автоматическое создание формы с использованием одного из стандартных шаблонов. Это наиболее простой и быстрый способ создания формы.

- Мастер форм - создание формы с помощью мастера; в зависимости от назначения формы мастер предлагает на выбор стандартные шаблоны и стили оформления.

- Режим конструктора - создание формы на основе пустого бланка при помощи инструментальных средств конструктора форм.

- Мастер диаграмм - создание формы с диаграммой на основе выбранных полей таблицы.

- Мастер сводных таблиц - создание сводной таблицы Excel на основе таблиц или запросов Access.

Формы создаются на основе таблиц и запросов. При каждом открытии сохраненной формы обновляются данные запроса, на основе которого создается форма. Благодаря этому содержимое формы всегда соответствует информации в таблицах и запросах.

Для обработки готовых форм предназначен конструктор форм. Чтобы создать форму, необходимо на вкладке Формы окна базы данных нажать кнопку Создать. На экране появится диалоговое окно Новая форма, в котором программа предлагает пользователю выбрать способ создания формы.

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

Виды формы и их особенности приведены в таблице.

Виды формы

Особенности

В один столбец

Для каждой записи отводится отдельная страница формы. Подходит для записей с большим числом полей

Ленточная форма

Каждая запись размещается в одной строке таблицы. Позволяет наглядно представить нескольких записей.

Табличная форма

Имеет вид таблицы и выступает в качестве подчиненной формы в составных формах.

Составная

Состоит из главной и подчиненной форм, связанных отношением One-To- Many

Диаграмма

Диаграмма создается на основе числовых значений одного или нескольких полей таблицы.

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

Создание форм с помощью мастера. Если не знать, как создаются формы, то можно воспользоваться помощью мастера форм, который выполняет поэтапное руководство процессом создания формы.

При создании формы на основе стандартного шаблона должно быть открыто окно базы данных. Средства построения форм доступны независимо от того, в каком режиме находится система: в режиме конструктора или в режиме таблицы. Более того, таблица, для которой создается форма, может быть закрыта.

Построение стандартной формы осуществляется следующим образом:

- В окне базы данных открывается вкладка Формы и нажимается кнопка Создать.

- В появившемся окне Новая форма задается создание формы с помощью мастера форм и нажимается кнопка ОК.

- В первом диалоговом окне мастера форм выбирается в списке Таблицы/ Запросы нужная таблица, а в списке Доступные поля - поля для подготавливаемой формы. С помощью кнопки с двойной стрелкой (>>) переносятся все поля в список Выбранные поля и, нажатием кнопки Далее, осуществляется переход в следующее окно мастера форм.

-Во втором окне мастера форм активизируется переключатель В один столбец и нажимается кнопка Далее.

-В третьем окне мастера задается стиль оформления, после чего нажимается кнопка Далее.

-В последнем окне мастера вводится заголовок формы и нажимается кнопка Готово.

Перемещение и редактирование полей формы. Работать с формой удобнее, если для ее окна задано полноэкранное представление.

Чтобы на экране полностью были видны все элементы формы, необходимо использовать команду По размеру формы из меню Окно. Данная команда недоступна, если окно открыто в полноэкранном представлении.

Просмотр записей в форме осуществляется с помощью кнопок со стрелками, расположенными в нижней части окна формы, а также посредством клавиш [PgUp] и [PgDn]. Переход из поля в поле выполняется с помощью клавиши [Tab] или клавиш управления курсором. Содержимое активизированного поля маркируется. Режим редактирования, в котором можно изменять содержимое полей формы, устанавливается в результате нажатия клавиши [F2]. При изменении содержимого поля в колонке маркировки окна формы появляется изображение карандаша.

В форму можно вводить новые записи. Для этой цели предназначена команда Ввод данных из меню Записи. В результате ее активизации появляется пустая запись, которая может быть заполнена новой информацией. Вернуться к просмотру всех записей позволяет команда Удалить фильтр из меню Записи.

Удаление записей из формы производится с помощью клавиши [Del]. Удаляемую запись необходимо маркировать. Для этого достаточно щелкнуть в столбце маркировки (левый столбец в окне). Выделение записи отменяется при выполнении щелчка вне столбца маркировки.

Маркированные записи могут быть вставлены в буфер обмена посредством команд Вырезать и Копировать из меню Правка.

В формах возможно выполнение операций поиска и замены.

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

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

Существует три способа создания фильтров в форме:

Фильтр по выделенному и Исключить выделенное - позволяет создать фильтр, основанный на выбранном тексте или значении.

Фильтр по форме - создает пустую форму или таблицу, в которую можно ввести данные, которые необходимо отображать.

Расширенный фильтр - позволяет ввести более сложные условия фильтрации и сортировки способом, аналогичным написанию запроса.

Форма ленточного типа. Выбрав форму ленточного типа, пользователь получает в свое распоряжение логическую структуру, определяющую столбцы и строки формы, которая очень близка к исходной таблице, а при выборе табличной формы - структуру, идентичную таблице. Преимуществом форм этих типов является возможность одновременного отображения на экране нескольких записей. Для каждой записи в форме отводится по одной строке.

Если форма содержит небольшое количество полей, все они, как правило, видны на экране. Чтобы отобразить невидимую область формы, следует использовать полосу прокрутки. Форма ленточного типа подходит для отображения информации из таблиц с большим числом записей.

Создание диаграмм. Access позволяет представлять в виде диаграммы сведения, содержащиеся в форме. При этом диаграмму не обязательно строить на основе всех данных. Ее можно создать на основе данных, удовлетворяющих заданным условиям, например, на основе сведений, полученных в результате фильтрации.

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

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

Диаграмму часто сопровождают легендой - поясняющим текстом и сводом условных знаков.

В Access существует несколько способов построения диаграмм. Самый простой - создание стандартных диаграмм с помощью мастера диаграмм. Более эффектные диаграммы создаются посредством программы Microsoft Graph, входящей в состав пакета Microsoft Office.

Access позволяет создавать диаграммы 15-ти типов.

Поскольку возможности мастера диаграмм ограничены, для оформления и редактирования диаграмм лучше использовать Microsoft Graph, запуск которого осуществляется после выполнения двойного щелчка на диаграмме в режиме Вид/Заголовок/Примечание формы.

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

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

Главная форма включает содержимое некоторой записи главной таблицы, а подчиненная - зависимые записи подчиненной таблицы. Подчиненная форма встраивается в главную форму таким образом, чтобы они обе были видны в общем окне. Связь между таблицами можно проследить в окне Схема данных, которое открывается в результате активизации одноименной команды из меню Сервис.

Каждый вызов составной формы сопровождается обновлением данных соответствующих таблиц.

Access позволяет устанавливать связь не только между таблицами, но и между формами. Если во втором окне мастера форм активизировать опции Связанные формы, выбранные поля из связанных таблиц будут включены в разные формы (окна). В этом случае можно просматривать подчиненную форму параллельно с главной при условии, что кнопка вызова подчиненной формы, расположенная в левом верхнем углу окна, нажата.

Применение элементов управления в формах. Во время редактирования формы в режиме конструктора на экран автоматически выводится Панель элементов, которая содержит инструменты для создания элементов управления. Наличие их в форме увеличивает эффективность работы и делает ее более комфортной. Одна из кнопок на панели инструментов - Мастера элементов - определяет, каким способом создаются новые элементы управления. Если кнопка нажата, то для создания элемента запускается соответствующий мастер.

Если от услуг мастера отказаться, а для этого достаточно отжать кнопку Мастера элементов, то элемент управления создается как заготовка, без определения многих свойств. Их необходимо будет задать на дальнейших этапах разработки.

Вставлять элементы управления лучше в поля данных и примечания. В форму можно вставить любой элемент, имеющийся на панели элементов.

Списки в формах. В Access существуют две разновидности списков как элементов управления: Список и Поле со списком. Рассмотрим работу с ними на примере поля со списком. Для создания этого элемента в форме надо выполнить следующую последовательность действий:

1. В режиме конструктора формы нажать кнопку Поле со списком и нарисовать мышью прямоугольник -- место будущего списка. Запустится мастер полей со списком.

2. На первом шаге мастера установить переключатель в положение «Таблица или запрос содержат значения, которые использует поле со списком».

3. На втором шаге мастера указать необходимую таблицу или запрос.

4. На третьем шаге мастера задать поля таблицы. Порядок выбора полей определяет порядок следования их в списке, когда последний раскрывается в форме.

5. На четвертом шаге мастера необходимо настроить ширину колонок списка.

5. На пятом шаге мастера необходимо задать поле, которое будет однозначно определять строку списка. Значения этого поля будут заноситься в поле списка.

7. На шестом шаге мастера определяется, каким образом предполагается использовать список. Первое положение переключателя («Запомнить») пpедполагает, что выбранное из списка значение будет применяться для управления формой или другим объектом. Второе положение переключателя («Сохранить в поле») подразумевает заполнение поля базы данных путем выбора значений из списка. Этот выбор целиком зависит от конкретной задачи.

8. На седьмом шаге мастера надо определить подпись для списка. После того как мастер закончит работу, необходимо задать обязательные свойства списка. Высоту рамки списка целесообразно выбрать равной высоте строки в форме.

Раскрыв контекстное меню, относящееся к списку, выбрать команду Свойства и посмотреть, какое имя программа дала списку. Имена назначаются так, чтобы избежать повторений. Затем на вкладке Макет найти свойство Заглавия столбцов. По умолчанию там стоит Нет, то есть заголовки не выводятся. Установить это свойство как Да, потому что списки, состоящие из нескольких столбцов, лучше смотрятся, когда у последних есть заголовки. Выбрать вкладку События. Она предназначена для создания подпрограмм, которые позволят списку нормально функционировать. Необходимо выбрать строку Нажатие кнопки. Ясно, что в приложении должно что-нибудь происходить, когда пользователь раскроет список и щелкнет мышью один из его элементов. Поэтому для такого события надо предусмотреть реакцию системы. Справа от строки свойства имеется кнопка с тремя точками, которая позволяет раскрыть окно модуля (окно построителя) для редактирования подпрограмм. Щелкнем эту кнопку и выберем Программы. В списке Процедура укажем Click, что соответствует обрабатываемому событию, и введем команду

MsgBox "Выбрано из списка; " & ПолеСоСпискомN

Здесь N - номер, который присвоила программа.

Это приведет к тому, что в дальнейшем при выборе элемента списка будет раскрываться окно сообщения. Далее необходимо закрыть окно, где вводился код.

В реальной программе в качестве элементов списка лучше использовать текстовые поля для удобства в работе.

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

1. Для добавления графического поля типа OLE в форму нужно выбрать инструмент Присоединенная рамка объекта на панели элементов.

2. Нажать мышью место, где нужно добавить поле. Удерживая кнопку мыши в нажатом состоянии, переместить указатель по диагонали так, чтобы получилась рамка требуемого размера.

3. Открыть окно свойств созданного объекта.

4. Чтобы связать созданное поле с полем таблицы, выбрать свойство Данные. В поле ввода свойства необходимо воспользоваться кнопкой раскрытия списка и из списка полей открытой таблицы выбрать поле типа OLE.

5. Просмотреть форму в режиме формы. Если рисунок не помещается в рамке целиком, нужно вернуться в режим конструктора и увеличить размер поля.

3.2.6 Отчеты в Access

В Access отчет представляет собой форму специального типа, предназначенную для вывода на печать.

В Access существует несколько способов создания отчетов:

- Конструктор - самостоятельное создание отчетов;

- Мастер отчетов - автоматическое создание отчета на основе выбранных полей;

- Автоотчет: в столбец - автоматическое создание отчетов с полями ,расположенными в один столбец;

-Автоотчет: ленточный - автоматическое создание ленточных отчетов;

- Мастер диаграмм - создание отчета с диаграммой;

- Почтовые наклейки- создание отчета, отформатированного для печати почтовых наклеек.

В работе более подробно рассмотрим работы с мастером отчетов, но вначале кратко рассмотрим другие способы построения отчетов.

Автоотчеты. Самый простой способ создать отчет - поручить сделать это программе. Access позволяет строить автоотчеты двух типов: «в столбец» и «ленточные». В отчетах первого типа поля располагаются по вертикали, а в отчетах второго типа - по горизонтали. Для построения автоотчета достаточно нажать кнопку Создать на вкладке Отчеты, выбрать соответствующий автоотчет и указать имя таблицы, по которой создается отчет. Следует отметить, что получить хороший ленточный отчет можно только для таблиц или запросов, имеющих небольшое количество полей.

Конструктор отчетов. Режимы конструктора форм и отчетов очень похожи. Вся область отчета разделена несколькими горизонтальными линейками на зоны: Заголовок отчета, Верхний колонтитул, Область данных, Нижний колонтитул, Примечание отчета. Высоту зон можно менять при помощи мыши. Все элементы отчета представлены в режиме конструктора в качестве объектов. После выбора объекта он окружается рамкой с черными квадратиками, служащими для изменения размеров объекта. Пользователь может перемещать объекты, задавать их свойства и программировать обработку событий, связанных с объектом. Каждый объект снабжен контекстным меню, которое позволяет выполнять указанные действия. Кроме того, объекты можно копировать через буфер обмена. Для удобства позиционирования в поле отчета выведена сетка. Программа позволяет автоматически выравнивать объекты по сетке. Соответствующие команды находятся в меню Формат.

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

Следует отметить, что режим конструктора доступен для любого созданного отчета.

Мастер диаграмм. Мастер диаграмм, как и любой мастер, руководит процессом создания диаграммы. Созданная мастером диаграмма может не удовлетворить пользователя. Для внесения изменений в полученную диаграммы нужно перейти в режимом конструктора, раскрыть контекстное меню, связанное с диаграммой, и выбрать из него команду Объект Chart/Изменить. В результате будет запущена программа Graph, с помощью которой можно внести необходимые изменения в диаграмму.

Мастер отчетов. Рассмотрим основные этапы процесса проектирования отчета.

- Нажать кнопку Создать на вкладке Отчеты окна базы данных.

- Запустить Мастер отчетов.

- В первом диалоговом окне мастера скопировать в список необходимые поля из выбранной таблицы.

- Перейти во второе окно мастера отчетов.

- В этом окне изменяется представление данных в отчете путем выбора различных элементов в списке. Необходимо выбрать тип представления данных. Нажать кнопку Далее, чтобы подтвердить предложенный вариант и перейти к следующему окну.

- В этом окне Добавить уровни группировки? можно добавить новые уровни группировки данных в отчете. В окне, которое открывается посредством кнопки Группировка, определяются уровни группировки числовых и текстовых данных. Числовые данные могут группироваться по десять, сто и т.д. Для текстовых полей предоставляется возможность группировки по первой букве, первым трем буквам и т.д. и нажать кнопку Далее.

- В открывшемся окне мастера определяется способ сортировки данных в отчете. В отчете следует создать поля для итоговой информации. Параметры итоговой информации устанавливаются в диалоговом окне Итоги, открываемом одноименной кнопкой. В этом окне можно задать вычисление в отчете суммы нескольких значений (Sum) и среднего арифметического (Avg), а также определение минимального (Min) и максимального (Мах) значений.

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

- Можно поэкспериментировать, задавая различные варианты форматирования отчета, и выбрать понравившийся.

- В следующем окне выбрать стиля отчета.

- В последнем окне мастера ввести заголовок отчета и нажать кнопку Готово.

В режиме Просмотр отчет отображается в том виде, который он будет иметь на бумаге после печати. Масштаб отображения отчета в этом режиме изменяется при выполнении щелчка на документе.

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

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

Вычисляемым можно сделать любой элемент управления. Для этого его нужно маркировать на панели элементов в режиме Конструктор, вставить элемент в отчет и ввести подлежащее вычислению выражение. В формуле для вычисления вначале ставится знак "=", а наименования полей, участвующих в вычислениях, заключаются в квадратные скобки.

При написании формул необходимо следить за тем, чтобы названия вводимых полей полностью соответствовали названиям в таблице.

Печать отчета. Печать таблиц, запросов, форм и отчетов в Access практически не отличается от печати документов в других приложениях Microsoft Office. Формат и ориентация страницы, размеры полей и колонок, а также параметры принтера устанавливаются в диалоговых окнах Параметры страницы и Печать.

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

В режиме Предварительный просмотр возможен одновременный просмотр нескольких страниц. Для этого нужно активизировать кнопку Две страницы или Несколько страниц панели инструментов Предварительный просмотр либо выбрать в меню Вид команду Число страниц и задать в появившемся подменю отображение 1,2,4,8 или 12 страниц.

3.2.7 Макросы в Access

Access предоставляет пользователям два средства автоматизации работы с базами данных: язык макросов и язык Visual Basic for Applications (VBA).

Язык VBA имеет преимущества перед языком макросов. Несмотря на это последний можно использовать для создания сложных программ и для автоматизации большинства операций по управлению базой данных.

В отличие от Excel и Word, в Access автоматическая запись макросов не выполняется.

Окно макросов открывается в результате нажатия кнопки Создать на вкладке Макросы окна базы данных. Оно включает четыре столбца: Имя макроса, Условия, Макрокоманда и Примечание. При создании нового макроса по умолчанию отображаются только столбцы Макрокоманда и Примечание. Показ остальных столбцов можно установить, используя команды Имя макроса и Условия из меню Вид или же одноименные кнопки на панели инструментов Создание макроса.

В столбце Имя макроса указывается имя макроса, которое надлежит задавать, если окно содержит несколько макросов. В столбце Условия осуществляется ввод условия (логическое выражение) для выполнения только части макроса. В столбце Макрокоманда перечисляются подлежащие выполнению действия (макрокоманды) в нужной последовательности. Столбец Примечание, содержащий комментарии к программе, при выполнении макроса программой игнорируется, однако заполнять его рекомендуется, поскольку в этом случае текст макроса понятнее.

Удобно разрабатывать макросы для автоматизации несложных процессов, таких как открытие и закрытие нескольких форм или отчетов, вывод на экран или на печать нескольких документов, отмена/восстановление отображения панелей инструментов и т.д.

Создание макросов. После нажатия кнопки Создать на вкладке Макросы пользователь получает доступ к бланку макроса. В каждой строке этой таблицы размещается одна макрокоманда. Для определения ее параметров пользователь должен заполнить предложенные программой формы в нижней части бланка. Чаще всего оператору СУБД удается определить все параметры макрокоманды «по ходу дела», не штудируя справочник.

Запуск макроса может осуществляться следующими способами:

1. Щелчок по кнопке Запуск на панели инструментов (на ней изображен восклицательный знак).

2. Вызов команды Запуск макроса из меню Сервис.

3. Маркировка имени макроса и нажатие кнопки Запуск на вкладке Макросы окна базы данных.

4. Двойной щелчок на имени, запускаемого макроса.

После того как макрос написан, разработчик приложения или пользователь должен определить способ запуска макроса. Кроме тривиального пути - при помощи меню Сервис -- макросы можно вызывать программным путем - автоматически или посредством элементов управления в формах и отчетах. Если макрос должен запускаться независимо от желания пользователя, то он должен быть поставлен в соответствие некоторому событию, которое, в свою очередь, связано с определенным объектом. Достаточно при определении свойств объекта в строке, соответствующей событию, указать имя макроса.

Кнопка, запускающая макрос. Макрос может быть вызван после щелчка мышью элемента управления в форме или отчете. Существуют задачи, в которых пользователю необходимо переходить от формы к форме в определенной последовательности. Естественно, ему будет удобно, если правильная очередность форм будет заложена в программу, чтобы не приходилось думать о том, какую форму открывать следующей. В самом Access подобные кнопки используются для перехода по рекламно - учебным окнам и при выполнении мастеров.

Кнопка с контекстным меню. С элементом управления (в частности, с кнопкой) может быть связано контекстное меню с командами, определенными пользователем. Каждая из них будет запускать на выполнение макрос или подпрограмму Visual Basic. Определим последовательность действий, которые нужно выполнить, чтобы создать такое меню, связанное с кнопкой. Предположим, что в меню должны входить три команды, которые запускают макросы Макро-1, Макро-2 и Макро-3.

Для решения этой задачи необходимо выполнить следующие действия.

Открыть форму в режиме конструктора и создать новую кнопку.

Раскрыть окно свойств кнопки и определить ее подпись, например «Новое меню».

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

Указать шаблон «Пустая строка меню».

Ввести в строку Название имя меню, например Мое меню, и нажать кнопку Далее. Введенный текст переместится в нижнюю часть окна.

Напечатать в строке Название имя первой команды меню. В нашем примере это Команда меню 1. Нажать кнопку с изображением стрелки вправо. Название команды появится в нижней части окна с отступом. Это является признаком команды меню, в отличие от имени меню, которое выводится без отступа.

В строке Макрокоманда выбрать из списка ЗапускМакроса.

В строке Аргументы ввести имя макроса Макро-1 и нажать кнопку Далее.

Повторить пункты 5--8 для второго и третьего элементов меню, задав соответствующие названия команд и имена макросов.

10. Нажать кнопку ОК и ввести в открывшемся окне Сохранение название меню, например «Новое меню».

Теперь, если раскрыть форму в режиме просмотра и щелкнуть созданную нами кнопку правой кнопкой мыши, то появляется контекстное меню. Выбор команды в нем приведет к выполнению соответствующего макроса.

Возможности построителя меню шире, чем показано в этом примере. При создании меню можно определять «горячие клавиши», связанные с его элементами, вводить разделители групп команд, добавлять подкоманды и т.д.

Контекстное меню вызывается после щелчка элемента управления правой кнопкой мыши. С каким событием надо связать новый макрос, если нужно, чтобы он запускался после обычного щелчка того же элемента управления? С событием Нажатие кнопки. Оно возникает, если вы щелкаете объект мышью.

А можно связать с объектом еще один макрос, который запускался бы при двойном щелчке? Нет, нельзя. При двойном щелчке возникает событие Нажатие кнопки и будет выполняться тот же макрос, что и при простом щелчке. А можно запускать макрос при помощи двойного нажатия кнопки мыши, если обработка события Нажатие кнопки не определена? Да, можно. В этом случае макрос должен вызываться событием Двойное нажатие кнопки.

Access имеет обширный набор макрокоманд, обсуждение которых выходит за рамки данного пособия.

Редактирование макросов. Структура таблицы в окне макросов напоминает структуру обычной таблицы базы данных. Все известные команды редактирования текста, используемые для удаления, переноса, копирования содержимого ячеек, могут применяться и в рамках таблицы макроса,

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

Отладка макроса. Макрос не всегда функционирует так, как было задумано. Можно выделить две категории ошибок в макросах: - синтаксические; - логические.

Чаще всего появление ошибок в макросах обусловлено несоблюдением синтаксических правил. В случае выбора макрокоманд или значений аргументов в списках вероятность возникновения ошибки крайне мала. Совсем по-другому обстоит дело с аргументами, значения которых задаются "вручную". Если в имени объекта допущена ошибка, действие не может быть выполнено. Подобная ситуация возникает и при удалении или переименовании объекта. Если макрос, в котором есть ссылки на такие объекты, не изменен соответствующим образом, при его выполнении появится сообщение об ошибке.

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

Типичной является логическая ошибка при задании условия, которая может привести к появлению бесконечного цикла. Завершить цикл может только закрытие Access. Во избежание подобных ситуаций пользователь должен проверить все условия, прежде чем запускать макрокоманду.

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

Синтаксические ошибки легко распознаются программой Access, которая выдает сообщение о них .

При этом отображаются имя макроса (поле Имя макроса) и макрокоманды (поле Имя макрокоманды) с синтаксической ошибкой. В области Аргументы приводится список аргументов макрокоманды, разделенных точками с запятой. Их следует проверить, так как чаще всего они являются причиной ошибки.

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

Если в качестве аргумента используется выражение, начинающееся знаком равенства, Access вычисляет результат и отображает его в поле Аргументы.

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

Объединение макросов в макрогруппу. Для работы с одним объектом базы данных могут понадобиться десятки макросов, каждый из которых автоматизирует некоторый процесс. Такие макросы можно разработать отдельно и запускать по очереди. Однако все макросы, предназначенные для обработки одного объекта, целесообразно объединить в группу, присвоив им уникальные в пределах группы имена. Объединенные в группы макросы доступны в одном окне макроса (столбец Имя макроса должен отображаться).

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

- Открыть окно конструктора макроса, в которое должны быть помещены группируемые макросы.

- Щелкнуть на кнопке Имя макроса (на ней изображены литеры xyz) или активизировать команду Имя макроса из меню Вид, чтобы отобразить на экране столбец Имя макроса.

- В первую ячейку столбца Имя макроса ввести имя первого макроса.

- В ячейки столбца Макрокоманда ввести макрокоманды, составляющие тело проектируемого макроса.

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

- Написать остальные макросы и сохранить макрогруппу с помощью команды Сохранить как из меню Файл, задав, имя.

Способ вызова макроса, входящего в макрогруппу, отличается от способа вызова отдельно сохраненного макроса. В результате щелчка на кнопке Запуск выполняется только первый макрос макрогруппы. То же происходит при попытке запустить макрогруппу путем двойного щелчка на ее имени в окне базы данных.

Вызов макроса из макрогруппы осуществляется путем указания точных имен макрогруппы и макроса в группе. Эти имена разделяются точкой. Если макрогруппа в окне базы данных имеет имя Все макросы, а необходимый макрос - имя Тест1, то для вызова последнего необходимо:

- вызвать команду Запуск макроса из меню Сервис;

- в открывшемся диалоговом окне ввести текст Все макросы. Тест1;

- запустить макрос, щелкнув на кнопке ОК.

В созданную макрогруппу в любой момент можно добавить новые макросы.

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

Автоматизировать эти действия можно путем создания соответствующих макрокоманд. Некоторые из них эквивалентны командам меню. Задать команду меню, которую необходимо выполнить, позволяет макрокоманда ВыполнитьКоманду. Например, в случае необходимости найти запись в таблице, запросе или форме можно воспользоваться макрокомандой ВыполнитьКоманду с аргументом Find. При выполнении этой макрокоманды открывается диалоговое окно для указания критериев поиска.

Поскольку команда поиска используется довольно часто, в состав доступных макрокоманд введена макрокоманда НайтиЗапись. В списке аргументов этой макрокоманды - все элементы диалогового окна поиска, которое открывается с помощью команды Find. Установив значения для этих аргументов на стадии разработки макроса, можно избавить себя от необходимости заполнять поля диалогового окна поиска при выполнении макрокоманды. Конечно, таким образом можно задавать только неизменные условия поиска. Для поиска записи по содержимому, которое изменяется, необходимо использовать макрокоманду ВыполнитьКоманду с аргументом Find и с последующим заполнением полей диалогового окна поиска, в котором и указывается оригинальное искомое значение.

События в Access. В базе данных хранится информация о состоянии ее объектов. Любое изменение состояния формы или отчета называется событием. Каждый из этих объектов имеет свой набор событий.

Поскольку макросы часто требуется «привязывать» к событиям, разработчик базы данных должен иметь представление о том, какие события вообще существуют. Это позволит составить план разработки приложения и выбрать верный путь решения пользовательских задач -- запрограммировать реакцию СУБД на действия пользователя и обеспечить доступ оператора к инструментам и подпрограммам. Можно выделить события, связанные с клавиатурой и мышью; события данных; события управления объектами; события печати.

Связывание макросов с событиями. С событиями удобно связывать макросы. Если необходимо выполнить макрос при загрузке базы данных, то этому макросу необходимо присвоить имя Autoexec (макрос с таким именем автоматически выполняется при загрузке базы данных). При этом можно произвольным образом пользоваться строчными и прописными буквами. При каждом открытии базы данных Access проверяет, присутствует ли в ней макрос с именем AutoExec, и, если находит, выполняет его. В противном случае открытие базы не сопровождается дополнительными действиями. Внутри одной базы данных можно использовать только один макрос AutoExec.

Если имя AutoExec присвоено макрогруппе, то при открытии базы данных будет выполнен только первый макрос этой группы. Чтобы при загрузке базы последовательно приводились в исполнение несколько макросов, необходимо ввести в макрос AutoExec макрокоманду ЗапускМакроса, что позволит выполнить макрос с произвольным именем (имя задается аргументом) и вернуться к следующей за ЗапускМакроса макрокоманде в макросе AutoExec.

Макрос AutoExec не выполняется, если перед открытием база данных нажать и удерживать клавишу [Shift].

Выполнение макроса с условием. Порядок выполнения макрокоманд, содержащихся в макросе, определяется условиями, задаваемыми в столбце Условие - это логическое выражение, принимающее значение True или False. Посредством условий осуществляется управление запуском и выполнением макроса.

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

Если при выполнении определенного условия должны приводиться в исполнение несколько макрокоманд, следующих друг за другом, достаточно записать условие в первой строке столбца Условие, а не повторять его в каждой строке. В остальных подлежащих условному выполнению строках надлежит ввести многоточие (...) в столбцы Условие.

Управление представлением объектов из макроса. Немалую роль в создании комфортных условий работы в среде Access играет представление на экране окон. При работе с каталогом телефонов клиентов наиболее удобно полноэкранное представление окна формы. При этом пользователь сразу увидит значительную часть информации. Установить такой режим представления формы можно с помощью простого макроса с использованием макрокоманды Развернуть. Есть и другие способы выбора представления окна посредством макроса. Задать представление окна формы можно с помощью аргумента Режим окна макрокоманды ОткрытьФорму. Доступны следующие значения аргумента Режим окна:


Подобные документы

  • Базы данных с двумерными файлами и реляционные системы управления базами данных (СУБД). Создание базы данных и обработка запросов к ним с помощью СУБД. Основные типы баз данных. Базовые понятия реляционных баз данных. Фундаментальные свойства отношений.

    реферат [57,1 K], добавлен 20.12.2010

  • Базы данных (БД) и системы управления базами данных (СУБД) как основы современной информационной технологии, их роль в хранении и обработке информации. Этапы реализации БД, средств ее защиты и поддержки целостности. Протоколы фиксации и отката изменений.

    презентация [364,2 K], добавлен 22.10.2013

  • Реализация приложения "Книжный магазин" средствами систем управления базами данных. Проектирование структуры базы данных, определение сущности и атрибутов. Логическое проектирование базы данных и реализация базы данных в СУБД Microsoft Office Access.

    курсовая работа [7,8 M], добавлен 13.02.2023

  • Основные этапы проектирования базы данных. Access как система управления базами данных (СУБД), ее предназначение, отличительные возможности. Работа с таблицами, их создание и редактирование. Порядок создания запросов. Способы защиты баз данных.

    лабораторная работа [3,1 M], добавлен 18.08.2009

  • Системы управления базами данных: сущность и характеристика. Типы данных и свойства полей СУБД Access. Объекты базы данных: таблицы, схемы данных, формы, запросы, отчеты. Разработка и проектирование базы данных "Продажи книг" в среде Microsoft Access.

    курсовая работа [1,8 M], добавлен 04.02.2013

  • Базы данных и системы управления базами данных. Структура простейшей базы данных, свойства полей. Понятие языка SQL. Проектирование баз данных, режимы работы, объекты. СУБД Microsoft Access. Создание базы данных "Электротовары" средствами Visual FoxPro.

    курсовая работа [5,7 M], добавлен 29.04.2014

  • Изучение основных понятий баз данных: структура простейшей базы данных, компоненты базы данных Microsoft Access. Проектирование базы данных "Туристическое агентство" в СУБД Access 2010, в которой хранятся данные о клиентах, которые хотят поехать отдыхать.

    курсовая работа [3,3 M], добавлен 20.09.2013

  • Основные принципы проектирования реляционных баз данных и их практическая реализация в MS Access. Концептуальная и логическая модели реляционной базы данных, ее физическое проектирование. Автоматизация процесса взаимодействия с клиентами и поставщиками.

    курсовая работа [2,8 M], добавлен 10.03.2015

  • Операции в системе управления базами данных (СУБД). MS Access как функционально полная реляционная СУБД. Разработка реляционных моделей баз данных экономического направления. Применение прикладных программ для решения экономико-управленческих задач.

    курсовая работа [2,1 M], добавлен 14.01.2015

  • Понятие и сущность базы данных, их классификация и характеристика. Системы управления базами данных. СУБД структуры "сервер-клиент", его суть. Microsoft Access - функционально полная реляционная СУБД. Предназначение СУБД Access, и описание ее работы.

    реферат [44,3 K], добавлен 27.02.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.