Автоматизация работы строительной фирмы

Автор работы: Пользователь скрыл имя, 05 Января 2012 в 01:57, курсовая работа

Описание

Важной частью работы является разработка пользовательского интерфейса. Microsoft Visual Studio 2008 представляет множество средств его создания, а также для управления и манипулирования данными. Необходимо учесть все тонкости работы в данной предметной области, чтобы создать удобный интерфейс, который обладал эстетической привлекательностью и в то же время в полной мере – функциональностью.

Работа состоит из  1 файл

Пояснительная записка.doc

— 733.00 Кб (Скачать документ)

     T_material_1 записывает при удалении записей из таблицы «материалы» в отдельную таблицу информацию о удаленном материале. Перед созданием такого триггера необходимо создать таблицу Mater_ud, куда будет производиться запись;

     T_sotrudnik_1  записывает при удалении записей из таблицы «Сотрудники» в отдельную таблицу информацию о удаленном сотруднике. Перед созданием такого триггера необходимо создать таблицу sotrudnik_ud, куда будет производиться запись; 

     Индексирование  отношений

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

     В таблице «Материалы» создан индекс по атрибуту «Стоимость_материалов», т.к. индекс позволяет ускорить поиск необходимых записей.

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

     В таблице «материалы» создан не кластерный индекс по атрибуту «Количество_материала», т.к. индекс позволяет ускорить поиск необходимых записей.

     В таблице «клиенты» создан кластерный индекс по атрибуту «Ответственное_лицо», т.к. индекс позволяет ускорить поиск необходимых записей.

     В таблице «Сотрудники» создан кластерный индекс по атрибуту «Номер_паспорта», т.к. индекс позволяет ускорить поиск необходимых записей.

     В таблице «Сотрудники» создан не кластерный индекс по атрибуту «Оклад», т.к. индекс позволяет ускорить поиск необходимых записей.

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

     В таблице «заказы» создан кластерный индекс по атрибуту «Адрес_объекта», т.к. индекс позволяет ускорить поиск необходимых записей.

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

     ER-диаграмма физического уровня представлена на рисунке 16 и в приложении В.

     Рисунок 16 – ER-диаграмма физического уровня

     2.2.3. Определение представлений, хранимых  процедур серверной компоненты. ER-диаграмма в режиме отображения представлений

     Представление (View) для конечных пользователей выглядит как таблица, но при этом само не содержит данных, а лишь представляет данные, расположенные в таблице. Физически представление реализовано в виде SQL-запроса, на основе которого производится выборка данных из одной или нескольких таблиц или представлений.

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

     Для приложения были разработаны следующие  представления:

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

     Инфо_поставщик - вывод информации о поставщиках, которые поставляют материал, стоимость которого меньше 150000 и количество материала больше 30. Даные берутся из таблиц поставщики и материалы, сопоставляя даные двух таблиц, выводим результат на экран;

     Инфо_материалы - вывод информации о кматериалах, количество которых 10 либо 20. Данные берутся из таблицы материалы;

     Информация_Сотрудники - информация о сотрудниках фамилия, которых заканчивается на «ов».Данные берутся из таблицы Сотрудники;

     Информация_Количество_материалов – вывод информации о материалах количество, которых находится в диапазоне от 30до 50 . Данные берутся из таблицы иатериалы , BETWEEN- диапазон для проверки;

     Количество_клиентов – вывод количества клиентов, сделавших заказ. Данные берутся из таблицы клиенты;

     Максимальная_услуга_по_стоимости – вывод стоимости услуги, у которой стоимость максимальная. Данные берутся из таблицы услуги;

     минимальное_количество_в_бригаде – вывод информации о бригаде с минимальным количеством человек. Данные берутся из таблицы Бригады;

     Инфо_оклад_сотрудников - вывод информации о сотрудниках, оклад которых больше чем 1600000 или равен 1200000. Данные берутся из таблицы Сотрудники;

     Стоимость_всех_материалов – вывод общей стоимости всех материалов. Данные берутся из таблицы материалы;

     услуга_со_стоимостью_ниже_средней – вывод информации об услуге, стоимость которой ниже чем средняя стоимость вснх товаров;

     Заказы_которые_зданы – вывод информациии о заказах, дата здачи у которых меньше текущей. Данные берутся из таблицы заказы;

     Объекты_которые_будут_зданы_через_30_дней – вывод информации о заказах которые планируется сдать в течении 30 следующих дней. Данные берутся из таблицы заказы;

     Клиенты_с_заказом_больше_60_дней – вывод информации о клиенте, у которого прошло более 60 дней после даты заказа. Данные берутся из таблицы клиенты;

     Информация_о_клиентах – вывод информации о клиенте. Данные берутся из таблицы клиенты;

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

     Сотрудники_первой_бригады– вывод информации о сотрудниках,  которые работают в первой бригаде. Данные берутся из таблицы Сотрудники;

     Сотрудники_инженер_проектировщики – вывод информации о сотрудниках должность, у которых инженер-проектировщик. Данные берутся из таблицы Сотрудники;

     Поставщик_103 – вывод информации о поставщике, у которого ИД равен 103. Данные берутся из таблицы поставщики;

          Поставщики_поставляющие_материал_с_кодом_116 - вывод информации о поставщике и материале, у которого код равен 116.Данные берутся из таблиц поставщики и материалы. 

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

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

     - для вставки новых данных: 

     VstavkaKlienti - Вставка в таблицу Клиенты

     VstavkaMaterial - Вставка в таблицу Материалы

     VstavkaPostavchik - Вставка в таблицу Поставщики

     VstavkaSotr - Вставка в таблицу Сотруники

     VstavkaUslugi - Вставка в таблицу Услуги 

     -для  удаления данных:

     DeleteKlient - Удаление Клиентов из таблицы Клиенты по номеру клиента

     DeleteMaterial - Удаление Материалов из таблицы Материалы по номеру

     DeletePost - Удаление Поставщика из таблицы Поставщики по его номеру

     DeleteSotr - Удаление Сотрудника из таблицы сотрудники по его номеру табельному номеру

     DeleteUslugi - Удаление услуги по ее номеру 

     -на  выборку данных:

     VivodKlient - Выводит по номеру клиента информацию о клиенте из таблицы Клиенты

     VivodPost - Выводит по номеру поставщика информацию о поставщике из таблицы Поставщики

     VivodMater - Выводит по номеру материала информацию о материале из таблицы Материалы

     VivodSakaz - Выводит по дате заказа информацию о заказе из таблицы Заказы, Услуги_заказы, Услуги

     VivodSotr - Выводит по табельному номеру сотрудника информацию о сотруднике из таблицы Бригады, Сотрудники 

     -на  обновления данных:

     UpdateBrig - Обновление таблицы Бригады по номеру бригады меняем количество человек

     UpdateKlient - Обновление таблицы Клиенты по номеру клиента меняем отсветственное лицо

     UpdateSakaz - Обновление таблицы Заказаы по номеру заказа меняем дату заказа

     UpdateSotr - Обновление таблицы Сотрудники по ид_номеру меняем оклад

     UpdateUslug - Обновление таблицы Услуги по табельный номер сотрудника меняем оклад 

            
 
 
 
 
 
 

2.3. Верификация спроектированной  логической модели  представлена 

в таблице 1

Arrow Name Entity Name Attribute Name
Информация  о  сотрудниках Сотрудники  
    Табельный_номер
    ФИО
    Номер_паспорта
    Адрес
    Оклад
    Должность
    Стаж
    Номер_бригады
    Номер_соц_страховки
Информация  о  поставщиках поставщики  
    ИД_поставщика
    Название_организации
    Адрес_организации
    Телефон_организации
    EMAIL
Информация  об объектах заказы  
    Номер_заказа
    Адрес_объекта
    Дата_здачи
Информация  о материалах материалы  
    Код_материала
    Стоимость_материалов
    Наименование_материалов
    Количество_материала
  поставщики  
    ИД_поставщика
    Название_организации
    Адрес_организации
    Телефон_организации
    EMAIL
Информация  о заказах клиенты  
    Номер_клиента
    Дата_заказа
    Ответственное_лицо
  услуги  
    Номер_услуги
    Услуга
    Стоимость_услуги
Информация  о дате заказа клиенты  
    Номер_клиента
    Дата_заказа
    Ответственное_лицо
Информация  о стаже рабочего Сотрудники  
    Табельный_номер
    ФИО
    Стаж
    Номер_бригады
Информация  о соц страховки сотрудника Сотрудники  
    Табельный_номер
    ФИО
    Номер_соц_страховки
    Номер_бригады
Вывод информации о специальности Сотрудники  
    Табельный_номер
    ФИО
    Должность
    Номер_бригады
Информация о количестве поставленного материала материалы  
    Код_материала
    Стоимость_материалов
    Наименование_материалов
    Количество_материала
  поставщики  
    ИД_поставщика
    Название_организации
    EMAIL
Информация  о стоимости материала материалы  
    Код_материала
    Стоимость_материалов
    Наименование_материалов
    Количество_материала

      

     

     3.Реализация  системы

     3.1 T-SQL-определения регламентированных запросов

     /*1.Вывод  ограниченной информации о бригадах с не с нулевым номером заказа.*/

  Create view Инфо_бригады /*Указываем имя представления*/

  As

  Select /*Указываем, какие поля будут выведены*/

  Бригады.Номер_бригады,

  Бригады.ФИО_бригадира,Бригады.Количество_в_бригаде

  from Бригады /*Из какой таблицы*/

  where Бригады.Номер_заказа is not Null /*Выбор бригады не с пустым номером заказа*/

         

           /*2.Вывод информации о материале, стоимость которого менее 150000 и количеством более 30 */

  Create view Инфо_поставщик  /*Указываем имя представления*/

  As

  Select   /*Указываем, какие поля будут выведены*/

  поставщики.Название_организации,поставщики.Адрес_организации,поставщики.Телефон_организации,

  поставщики.EMAIL,материалы.Код_материала,материалы.Наименование_материала,

  материалы.Стоимость_материалов,материалы.Количество_материала

  from поставщики_материалы

  Inner Join поставщики  on поставщики_материалы.ИД_поставщика=поставщики.ИД_поставщика

  Inner Join материалы  on поставщики_материалы.Код_материала=материалы.Код_материала   /*Из каких таблиц и как таблицы связаны между собой*/

  where (материалы.Стоимость_материалов<150000) and (материалы.Количество_материала>30) /*Выбор материала стоимостью менее 150000 и количеством более 30*/ 

 /*3. Вывод информации о материале количество, которого 10 либо 20*/

 Create view Инфо_материалы /*Указываем имя представления*/

 As

 Select  /*Указываем, какие поля будут выведены*/

 материалы.Код_материала,материалы.Наименование_материала,

 материалы.Стоимость_материалов,материалы.Количество_материала

 from материалы  /*Из какой таблицы*/

Информация о работе Автоматизация работы строительной фирмы