Создание бизнес логики

 

База данных состоит из таблиц, хранящих информацию о следующих объектах – клиенты, заказы, инженеры, детали, виды расчета.

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

 Первая таблица «Клиенты» содержит следующую информацию: номер клиента, ФИО клиента, адрес клиента, телефон клиента.

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

Третья таблица «Детали» содержит сведения о номере детали, о наименовании детали, о технических характеристиках, о производителе.

В четвертой таблице «Инженеры» хранится информация о номере инженера, ФИО инженера, содержит телефон и адрес.

Для полей таблиц нужны различные типы данных. Задаем их согласно предполагаемым записям (см. таблицу 1, таблицу 2).

 

Таблица №1 – Создание доменов

Имя домена Тип Длина Not Null Ограничения
D_INDEX smallint   + >0
D_NAME varchar 50    
D_STOIM varchar 10    
D_DATE DATE     <TODAY
D_ADRES varchar 50    
D_TELEPHONE varchar 15    

 


Таблица 2 – Создание таблиц и определение их типов полей

Имя таблицы Поле Тип Длина Not Null PK Имя домена

client

ID_CLIENT smallint   + + D_INDEX
FIO_CL varchar 50     D_NAME
ADRES varchar 50     D_ADRES
TELEPHONE varchar 15     D_TELEPHONE
           

detail

ID_DETAIL smallint   + + D_INDEX
NAME_DETAIL varchar 50     D_NAME
TECH_HAR varchar 50     D_NAME
PROIZVOD varchar 50     D_NAME

ingener

ID_ING smallint   + + D_INDEX
FIO_ING varchar 50 +   D_NAME
TELEPHONE varchar 15     D_TELEPHONE
ADRES varchar 50     D_ADRES

raschet

Id_rasch smallint   + + D_INDEX
Nalich_R varchar 50     D_NAME
Beznalich_R varchar 50     D_NAME

zakaz

Id_zak smallint   + + D_INDEX
DATE_PR DATE       D_DATE
ID_CLIENT smallint   +   D_INDEX
ID_ING smallint   +   D_INDEX
ID_DET smallint   +   D_INDEX
ID_RASCH smallint   +   D_INDEX
DATE_V DATE       D_DATE
STOIMOST VARCHAR 10     D_STOIM

 

Создали таблицы с помощью запроса SQL. Это можно увидеть по рисунку 4, рисунку 5, рисунку 6, рисунку 7, рисунку 8.

 

Рисунок 4 - Создание таблицы “Клиенты”

 

        Рисунок 5 - Создание таблицы “Детали ”

 

Рисунок 6 - Создание таблицы “Инженер”

 

Рисунок 7 - Создание таблицы “Расчеты”

Рис. 8 – Создание таблицы «Заказы»

 

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

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

Рис. 9. Список генераторов

 

В результате было создано по 5 триггеров и генераторов:

Рис. 10. Генераторы и триггеры базы данных

 


Представление «Список клиентов» (CLIENT_INFO)

Рисунок 11 - Создание просмотра CLIENT_INFO

 

Рисунок 12 - Результат просмотра CLIENT_INFO

 

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

 

Примеры создания хранимых процедур:

Процедура «Добавить клиента» (ADD_CLIENT)

Рисунок 13 - Создание хранимой процедуры ADD_ CLIENT


Процедура «Удалить заказ» (DEL_ZAK)

Рисунок 14 - Создание хранимой процедуры DEL_ZAK

 

Рисунок 15 - Список созданных хранимых процедур

 

Было создано исключение. Исключения представляют собой именованное сообщение об ошибке.

Рисунок 16 - Список созданных исключений

Исключение KEY_EX внедряется следующим образом:

Рисунок 17 - Исключение KEY_EX в хранимой процедуре. На примере процедуры ADD_ZAK.

 

2.3 Реализация программного средства «Автоматизированное рабочее место инженера по сервисному обслуживанию компьютерной техники»

 

C++Builder предоставляет разработчикам следующие компоненты для разроботки приложений:

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

· Компоненты вкладки Standart (Button, Label, Edit, RadioButton, CheckBox, RadioGroup, Panel)

· Компоненты доступа к данным Data Access - адресуют фактические данные, хранящиеся в файле базы данных.

· Компоненты вкладки QReport (QuickRep, QRSubDetail, QRLabel, QRDBText, QRBand, QRSysData), создание отчетов

· Компоненты Interbase (IBDatabase, IBTransaction, IBTable, IBStoredProc)

Наличие на форме большого количества невидимых компонентов в ряде случаев затрудняет проектирование пользовательского интерфейса. Кроме того, нередко бывает удобно отделить компоненты, отвечающие за доступ к данным и бизнес-логику информационной системы, от интерфейсных элементов, например, для обегчения ее дальнейшей модернизации. Для этой цели в C++ Builder имеется специальный тип, называемый модулем данных - TDataModule. На рис.18 представлен модуль данных разрабатываемого клиентского приложения.

Рисунок 18 -  Компонент DataModule2

Рисунок 19 - Результат заполнения таблицы “Клиенты ”

 

Рисунок 20 - Результат заполнения таблицы “Заказы”

 

Рисунок 21 - Результат заполнения таблицы “Детали”

 

Рисунок 22 - Результат заполнения таблицы “Инженеры”

 

Рисунок 23 - Результат заполнения таблицы “Виды расчета”

 





Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: