Автор: Пользователь скрыл имя, 22 Августа 2011 в 12:46, дипломная работа
Целью данной выпускной работы является анализ и разработка системы автоматизации документооборота для предприятия ООО «Элси-Медиа».
Компания «ЭЛСИ» была основана в апреле 1999 года.
Она сегодня охватывает практически все направления выбранной сферы деятельности, а именно:
• продажа компьютеров и комплектующих любой сложности;
• продажа любой оргтехники;
• продажа расходных материалов и бумаги;
Продавец
Покупатель
В результате имеется 3 сущности: продавец, продажа и покупатель. Определим, какие данные должных храниться в проектируемой БД:
о товаре (группа товара, наименование товара, склад товара, остаток товара на складе, цена за единицу, срок гарантии);
о покупателях (ФИО, адрес, телефон);
о продажах (номер расходной накладной, тип расходной накладной, дата создания накладной, покупатель, наименование товара, кол-во товара, величина скидки, сумма);
о товарах, поставленных в резерв (наименование товара, дата резервирования, кол-во товара)
Теперь определим, какие задачи должна выполнять разрабатываемая АСУ:
возможность ввода данных;
возможность изменения вносимых данных;
возможность хранения вносимых данных;
возможность учета вносимых данных;
вывод статистики продаж;
оповещение;
В
следующую таблицу внесем необходимые
для разрабатываемой БД данные:
Группа товара |
Наименование товара |
Склад товара |
Остаток товара |
Цена товара |
Срок гарантии |
ФИО покупателя |
Адрес покупателя |
Телефон покупателя |
Номер расходной накладной |
Тип расходной накладной |
Дата расходной накладной |
Кол-во товара |
Величина скидки |
Сумма |
Дата резервирования |
Кол-во товара |
Нормализация данных
Нормализация отношений – это преобразование универсального отношения к их совокупности так, что каждое из полученных отношений содержит только одну полную функциональную зависимость.
Функциональная зависимость — это такая связь между атрибутами А и В одного и того же отношения, когда каждому значению А соответствует только одно значение В. Атрибут А называют ключом. Ключи могут быть составными, т. е. они могут представлять собой не единичные атрибуты, а группы, состоящие из двух и более атрибутов.
Процесс нормализации включает приведение отношения к трем нормальным формам: устранение повторяющихся групп, удаление частично зависимых атрибутов, удаление транзитивно зависимых атрибутов.
Первая нормальная форма.
поля содержат неделимую информацию;
в
таблице отсутствуют
В
результате приведения к первой нормальной
форме, получим таблицы:
Товары
Группа товара |
Наименование товара |
Остаток товара |
Цена товара |
Срок гарантии |
Покупатели
Наименование покупателя |
Адрес покупателя |
Телефон покупателя |
Продажи
Номер расходной накладной |
Тип расходной накладной |
Дата расходной накладной |
Наименование покупателя |
Наименование товара |
Кол-во товара |
Величина скидки |
Сумма |
Резерв
Дата резервирования |
Кол-во товара |
Вторая нормальная форма
таблица должна удовлетворять требованиям первой нормальной формы;
все поля таблицы должны зависеть от первичного ключа, т.е. чтобы первичный ключ однозначно определял запись и не был избыточным;
те
поля, которые зависят только от
части первичного ключа, должны быть
выделены в отдельные таблицы.
Товары
Код товара |
Группа товара |
Наименование товара |
Остаток товара |
Цена товара |
Срок гарантии |
Покупатели
Код покупателя |
Наименование покупателя |
Адрес покупателя |
Телефон покупателя |
Продажи
Код расходной накладной |
Номер расходной накладной |
Тип расходной накладной |
Дата расходной накладной |
Код покупателя |
Код товара |
Кол-во товара |
Величина скидки |
Сумма |
Резерв
Код товара |
Дата резервирования |
Кол-во товара |
Третья нормальная форма
таблица должна удовлетворять требованиям второй нормальной формы;
ни одно из неключевых полей не должно однозначно идентифицироваться значением другого неключевого поля.
В
результате третьей нормальной формы
убираем поле «Сумма» из таблицы
«Продажа», так как оно является
вычисляемым полем:
Товары
Код товара |
Группа товара |
Наименование товара |
Остаток товара |
Цена товара |
Срок гарантии |
Покупатели
Код покупателя |
Наименование покупателя |
Адрес покупателя |
Телефон покупателя |
Продажи
Код расходной накладной |
Номер расходной накладной |
Тип расходной накладной |
Дата расходной накладной |
Код покупателя |
Код товара |
Кол-во товара |
Величина скидки |
Резерв
Код товара |
Дата резервирования |
Кол-во товара |
В итоге, в нашей проектируемой БД получается две справочные таблицы –это «Товар» и «Покупатели» и две транзакционные таблицы – «Продажи» и «Резерв». Справочные, содержат информацию справочного характера, обладают невысокой степенью изменения, выступают в качестве главной таблицы. Должны быть неизбыточными, т.е. хранить только общие сведения для данного предмета. Транзакционные, служат для накопления данных, основанных на значении данных в другой таблице. Таблица «Продажа» связана с таблицами «Товар» и «Фирмы» по составному ключу, то есть по нескольким полям, а именно: через поля «Код товара» и «Код фирмы». Остальные таблицы связаны между собой по Таблицы связаны между собой типом связи "один-ко-многим" – означает, что одной записи главной таблицы в подчиненной таблице может соответствовать несколько записей. Этот вид отношения встречается наиболее часто.
Структура
БД:
Атрибут | Описание |
TovID | Уникальный идентификатор товара |
TovTovGrup | Наименование группы товара |
TovName | Наименование товара |
TovOst | Остаток товара на складе |
TovPrice | Цена товара на складе |
TovTimeOk | Срок гарантийного обязательства |
FirmID | Уникальный идентификатор покупателя |
FirmName | Наименование фирмы |
FirmAdress | Адрес фирмы |
FirmPhone | Телефон фирмы |
RasNaklID | Уникальный
идентификатор расходной |
RasNaklDate | Дата создания расходной накладной |
RasNaklType | Тип расходной накладной (безнал, товарный чек, чекДоплата) |
RasNaklPokup | Получатель расходной накладной |
RasNaklTov | Наименование товара |
RasNaklTKol | Количество товара |
RasNaklSale | Величина скидки в % |
ReservTov | Резервируемый товар |
ReservData | Дата резервирования |
ReservKol | Кол-во резервируемого товара |
Описание
таблиц
Таблица «Товар»:
Поле | Тип данных | Длина | Характеристика |
ТоварID | Счетчик | ключ | |
Группа товара | Числовой(number) | индекс | |
Наименование | Текстовый(alpha) | 50 | |
Остаток | Числовой (number) | ||
Цена | Денежный (money) | ||
Срок гарантии | Числовой (number) |