- Цена товара - похоже, что это характеристика товара. Отличается ли эта характеристика от цены в накладной?
- Единица измерения - явная характеристика товара.
- Номер накладной - явная уникальная характеристика накладной.
- Дата накладной - явная характеристика накладной.
- Список товаров в накладной - список не может быть атрибутом. Вероятно, нужно выделить этот список в отдельную сущность.
- Количество товара в накладной - это явная характеристика, но характеристика чего? Это характеристика не просто "товара", а "товара в накладной".
- Цена товара в накладной - опять же это должна быть не просто характеристика товара, а характеристика товара в накладной. Но цена товара уже встречалась выше - это одно и то же?
- Сумма накладной - явная характеристика накладной. Эта характеристика не является независимой. Сумма накладной равна сумме стоимостей всех товаров, входящих в накладную.
- Наименование склада - явная характеристика склада.
В ходе дополнительной беседы с менеджером удалось прояснить различные понятия цен. Оказалось, что каждый товар имеет некоторую текущую цену. Эта цена, по которой товар продается в данный момент. Естественно, что эта цена может меняться со временем. Цена одного и того же товара в разных накладных, выписанных в разное время, может быть различной. Таким образом, имеется две цены - цена товара в накладной и текущая цена товара.
С возникающим понятием "Список товаров в накладной" все довольно ясно. Сущности "Накладная" и "Товар" связаны друг с другом отношением типа много-ко-многим. Такая связь, как мы отмечали ранее, должна быть расщеплена на две связи типа один-ко-многим. Для этого требуется дополнительная сущность. Этой сущностью и будет сущность "Список товаров в накладной". Связь ее с сущностями "Накладная" и "Товар" характеризуется следующими фразами - "каждая накладная обязана иметь несколько записей из списка товаров в накладной", "каждая запись из списка товаров в накладной обязана включаться ровно в одну накладную", "каждый товар может включаться в несколько записей из списка товаров в накладной", " каждая запись из списка товаров в накладной обязана быть связана ровно с одним товаром". Атрибуты "Количество товара в накладной" и "Цена товара в накладной" являются атрибутами сущности " Список товаров в накладной".
Точно также поступим со связью, соединяющей сущности "Склад" и "Товар". Введем дополнительную сущность "Товар на складе". Атрибутом этой сущности будет "Количество товара на складе". Таким образом, товар будет числиться на любом складе и количество его на каждом складе будет свое.
При работе с БД пользователю, как правило, не требуется видеть одновременно всю информацию, которая хранится в той или иной таблице БД. Наоборот, часто бывает необходимость отображать содержимое сразу нескольких таблиц, соответствующее определенным условиям.
В Access есть мощное средство обработки данных в связанных таблицах, которое позволяет отображать нужную информацию, соответствующую указанным требованиям - запрос.
Существует два основных типа запросов: запрос на выборку и запрос на изменение данных.
Запрос на выборку наиболее распространенный. При его выполнении формируется набор записей, информация для которых берется из одной или нескольких таблиц. Его мы и будем использовать в нашей базе данных.
Создадим четыре запроса: запрос на количество товара, на цену, стоимость и на товар.
Заметим, что с использованием запросов мы можем вывести на экран только необходимую в данный момент информацию. Нам не обязательно пролистывать целые таблицы в целях нахождения требуемых данных, что существенно экономит как время, так и силы. В нашем примере таблицы отличаются сравнительно небольшим объемом. Но ведь в большинстве случаев приходится оперировать с большим количеством таблиц и данных. Поэтому роль запросов в работе с БД сложно переоценить.
Работа с данными в БД осуществляется непосредственно в таблицах и запросах. При этом предлагаемые возможности изменения структур таблиц и содержащихся в них данных полезны скорее разработчику, нежели пользователю. Кроме того, для удобства работы, в Accessимеются широкие возможности создания интерфейса пользователя при помощи форм. Создавая форму, разработчик преследует несколько целей:
- отображение и изменение данных. Наиболее часто формы используются как раз для этого. При этом разработчик может задать любой вид отображения информации;
- ввод данных. Формы могут использоваться для ввода новых данных в таблицу. При этом ввод будет выполняться пользователем в том формате, который задан разработчиком. Другими словами, пользователь может вводить значения только для тех полей, которые представлены в форме;
- печать. Несмотря на то, что для печать данных в БД используются отчеты, содержимое формы также можно распечатать;
- сообщения. Дополнительная возможность использования форм заключается в создании с их помощью различных сообщений, отображаемых в последствии в той или иной ситуации для облегчения работы пользователя. В таком виде формы используются в приложениях.
В зависимости от того, с какой целью создается форма, разработчик определяет особенности ее внешнего вида. Выделим следующие:
- многостраничная - поля записи выводятся в один столбец. При этом в один и тот же момент времени в форме отображается только содержимое текущей записи (например форма «количество товара»);
- ленточная - все поля записи выводятся в одну строку, при этом в форме отображаются все записи (например, форма «цена реализации»);
-табличная - отображение записей осуществляется в виде таблицы.
Для представления в печатном виде информации из БД в Access предназначены отчеты. По сравнению с остальными способами печати при использовании отчетов можно, помимо отображения содержимого полей из таблиц и запросов, вычислять различные итоговые значения, а также группировать данные. В БД «Техносила» представлены отчеты о количестве на складе, стоимости и цене реализации.
MicrosoftAccess содержит различные типы макрокоманд, позволяющие автоматизировать работу приложения. Макросом называют набор из одной или более команд, выполняющих определенные операции. Приведем примеры ситуаций, когда удобно использовать в приложениях макросы:- для выполнения простых задач, таких как открытие и закрытие форм, вывод на экран и скрытие панелей инструментов или запуск отчетов;
- в случаях, когда не требуется отслеживать и обрабатывать ошибки;
- для определения общих назначенных клавиш;
- для создания специальной строки меню, а также подчиненных меню для форм;
- для выполнения макрокоманды или набора макрокоманд при открытии базы данных.
Макросы позволяют:
- открывать таблицу, запрос, форму или отчет в любом доступном режиме. Они также позволяют закрыть открытую таблицу, запрос, форму, отчет;
- открывать отчет в режиме предварительного просмотра или непосредственно вывести либо весь отчет на принтер, либо только выделенную его часть;
- выполнять запрос на выборку или запрос на изменение;
- выполнять действия в зависимости от значений в базе данных, форме или отчете;
- осуществлять как переход к любой записи, так и выполнять поиск данных, удовлетворяющих условиям поиска, в источнике данных формы;
- выполнять команды меню Access и т.д.
В нашей БД представлен макрос, вызывающий отчет о стоимости и о цене реализации.
Теперь составим каскадную модель жизненного цикла АИС «Техносила».
Модель жизненный цикл - структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач, выполняемых на протяжении жизненного цикла.
Наибольшее распространение получили две основные модели жизненного цикла:
1)каскадная модель2)спиральная
Каскадный способ - разбиение всей разработки на этапы, причём переход с одного этапа на следующий происходит после того, как будет полностью завершена работа на текущем.
1. Анализ:
При анализе АИС «Техносила» был выделен ряд требований:
- АИС «Техносила» должна иметь данные о товаре, его цене и наличии;
- Клиенту должна быть предоставлена информационная база о товарах магазина;
2. Проектирование:
Все данные о товаре, его наличии и цене заносятся в общую Базу Данных для дальнейшего использования. В общую базу входит три таблицы с описанием товара и всех данных о нем.
3. Реализация:
Созданная База Данных для АИС «Техносила» должна быть полностью или частично доступна сотрудникам. Для этого необходимо запустить Базу Данных в корпоративную сеть.
4. Внедрение:
После внедрения Базы Данных в корпоративную сеть необходимо проследить за её работоспособностью.
5. Сопровождение:
По окончанию срока эксплуатации необходимо выявить все изменения в Программном Обеспечении для исправления ошибок и внесения новой функциональности.
Итак, мы создали базу данных магазина техники, создав при этом таблицы, содержащие информацию о товаре, запросы, отчеты и макросы. Данная БД поможет упорядочить данные в единое целое, обеспечить гибкий доступ и более удобную работу. Созданные в процессе отчеты, запросы и макросы не являются универсальными. Пользователь, самостоятельно или с помощью мастера, может дополнить базу новыми, необходимыми для него запросами, отчетами и макросами. Не составит большого труда, при желании, расширить базу. Для этого необходимо создать новые таблицы, ввести в них необходимые данные, после чего осуществить новые связи между уже существующими таблицами и созданными.
Наша жизнь настолько насыщена различной информацией, что хранить ее без помощи средств вычислительной техники уже практически невозможно. Работа с большими объемами информации без помощи компьютера уже оказывается неприемлемой как с точки зрения затрат на ее хранение, так и с точки зрения управления информацией и скорости доступа к ней.