Автоматизация процесса документооборота организации ООО "Ксенокс"

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

?ретной реализации СУБД. Следовательно, одному и тому же логическому уровню модели могут соответствовать несколько разных физических уровней различных моделей. Если на логическом уровне модели не имеет большого значения, какой конкретно тип данных у атрибута (хотя и поддерживаются абстрактные типы данных), то на физическом уровне модели важно описать всю информацию о конкретных физических объектах - таблицах, колонках, индексах, процедурах и т. д. Разделение модели данных на логический и физический уровни позволяет решить несколько важных задач.

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

ERwin позволяет создавать модели трех типов:

модель, имеющую только логический уровень;

модель, имеющую только физический уровень;

модель, имеющую как логический уровень, так и физический уровень.

Создание модели данных, начинается с создания логического уровня. После описания логического уровня выбирается СУБД. В модели, имеющей оба уровня (логический и физический), ERwin автоматически создаст соответствующую физическую модель [Приложение 8]. Это означает, что каждому объекту логического уровня соответствует объект физического, например каждой сущности соответствует таблица. Модель, имеющая только логический уровень, может быть синхронизирована с несколькими моделями, имеющими только физический уровень. Это позволяет эффективно разрабатывать гетерогенные ИС. На основе одной логической модели можно создавать несколько физических, соответствующих СУБД разных производителей (например, Oracle, Informix, MS SQLServer, Sybase и др.). Для генерации программного кода создания базы данных выбираем средства генерации приложений и формируем отчет.

Автоматически генерируется программный код для создания базы данных на языке FoxPro:

CREATE TABLE Заказы (Номер_клие Numeric(8,0) NOT NULL, Дата_заказ Date NULL, Номер_Зака Character(20) NOT NULL, Таб№сотруд Numeric(8,0) NULL, R_i_f_l_ag Numeric(8));

CREATE UNIQUE INDEX XPKE_1 ON Заказы

(Номер_Зака ASC, Дата_заказ ASC, Номер_клие ASC);

CREATE INDEX XIF1Диагно ON Заказы

(Номер_клие ASC);

CREATE INDEX XIF2Диагно ON Заказы

(Таб№сотруд ASC);

CREATE INDEX ON Заказы

(r_i_f_l_ag);

CREATE TABLE Клиенты (Номер_клие Numeric(8,0) NOT NULL, Фамилия Character(18) NULL, Имя Character(10) NULL, Отчество Character(20) NULL, Дата_рожде Date NULL, Место_рожд Date NULL, Адрес Character(20) NULL, Дата_регис Date NULL, Телефон_до Numeric(8,0) NULL, Телефон_ра Numeric(8,0) NULL, R_i_f_l_ag Numeric(8));

CREATE UNIQUE INDEX XPKТранспо ON Клиенты

(Номер_клие ASC);

CREATE INDEX ON Клиенты

(r_i_f_l_ag);

CREATE TABLE Консульт (Номер_Зака Character(20) NOT NULL, Номер_клие Numeric(8,0) NOT NULL, Маркетинго Character(100) NULL, Финанс_кон Character(200) NULL, Дата_заказ Date NOT NULL, R_i_f_l_ag Numeric(8));

CREATE UNIQUE INDEX XPKДиагнос ON Консульт

(Номер_Зака ASC, Номер_клие ASC, Дата_заказ ASC);

CREATE INDEX ON Консульт

(r_i_f_l_ag);

CREATE TABLE Маркетин (Номер_клие Numeric(8,0) NOT NULL, Номер_Зака Numeric(8,0) NOT NULL, Результат_ Character(20) NOT NULL, Результат_ Character(50) NOT NULL, Дата_заказ Date NOT NULL, R_i_f_l_ag Numeric(8));

CREATE UNIQUE INDEX XPKДиагнос ON Маркетин

( Номер_клие ASC, Номер_Зака ASC, Дата_заказ ASC);

CREATE INDEX ON Маркетин

(r_i_f_l_ag);

CREATE TABLE Сотрудни (Таб№сотруд Numeric(8,0) NOT NULL, Фамилия Character(20) NULL, Имя Character(20) NULL, Отчество Character(20) NULL, Дата_рожде Date NULL, Паспорт Character(20) NULL, Рабочий_те Numeric(8,0) NULL, Домашний_т Numeric(8,0) NULL, R_i_f_l_ag Numeric(8));

CREATE UNIQUE INDEX XPKСотрудн ON Сотрудни

(Таб№сотруд ASC);

CREATE INDEX ON Сотрудни

(r_i_f_l_ag);

CREATE TABLE Управлен (Подбор_кад Character(100) NULL, Номер_Зака Character(20) NOT NULL, Дата_заказ Date NOT NULL, Номер_клие Numeric(8,0) NOT NULL, R_i_f_l_ag Numeric(8));

CREATE UNIQUE INDEX XPKE_5 ON Управлен

(Номер_Зака ASC, Дата_заказ ASC, Номер_клие ASC);

CREATE INDEX ON Управлен

(r_i_f_l_ag);

CREATE TABLE Управлен (Дата_заказ Date NOT NULL, Номер_Зака Character(20) NOT NULL, Номер_клие Numeric(8,0) NOT NULL, Результат_ Character(100) NULL, R_i_f_l_ag Numeric(8));

CREATE UNIQUE INDEX XPKДефекто ON Управлен

(Номер_Зака ASC, Дата_заказ ASC, Номер_клие ASC);

CREATE INDEX ON Управлен

(r_i_f_l_ag);

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

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

 

2.4 Проектирование БД в среде MS Access

 

Для формирования базы данных организации ООО Ксенокс создадим 7 таблиц в режиме конструктора: Goroda, Klienty, Sotrudniky, Street, Uslugy и Zakazy.

Таблица Klienty содержит все данные о клиентах, с которыми работает и обслуживает организация.

Таблица Zakazy содержит все данные о заказах, оформленных с клиентом на определенный срок.

Таблица Sotrudniky содержит все данные о сотруднике, который будет выполнять заказ, сделанный клиентом ООО Ксенокс

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

Таблицы Goroda и Street являются справочниками для формирования данных таблицы Klienty.

Построим схему данных, на которой отражены имеющиеся связи.

 

Рисунок 1. Схема данных

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

Наиболее простым из них является запрос Кто предоставляет услуги, который выдает фамилию имя отчество сотрудника организации:

 

Рисунок 2. Окно запроса

 

Результатом данного запроса будет таблица:

 

Рисунок 3. Результат запроса

Следующий запрос приводит