Рассмотрим подробнее реализацию программного средства «Автоматизированное рабочее место инженера по сервисному обслуживанию компьютерной техники».
Рисунок 24 - Модульная структура программного обеспечения
Рисунок 25 - Просмотр содержимого таблицы “Клиенты”
Имя таблицы задается в свойствах компонента IBTable. В свойствах компонента DataSource указываем свойство DataSet->IBTable.
Чтобы данные отображались в компоненте DBGrid, в свойстве DataSource указывается DataModule2->DataSource.
Рисунок 26 – Результат работы процедуры добавления данных
Для внесения данных во все таблицы была использована одна форма, чтобы сократить время на внесение пользователем данных в таблицу и упростить контроль над правильностью введенных данных.
Пользователь может заполнять данные по таблицам “Заказы”, “Клиенты”, “Детали ”, “Инженеры”.
Ввод значения поля в таблицу осуществляется, например, такой строкой как:
DataModule2->IBStoredProc1->ParamByName("FIO_CL")->AsString=Form1->Edit1->Text;
Удаление записи из таблиц происходит посредством следующего кода:
|
|
DataModule2->IBStoredProc3->ParamByName("ID_CLIENT")->AsString=DBEdit1->Text;
Осуществляется каскадное удаление – из таблицы «Клиенты».
При нажатии на кнопку “Удалить” запись удаляется.
Рисунок 27 – Результат работы процедуры удаления данных
Рисунок 28 - Редактирование данных
Изменение записей в таблицах БД осуществляется программно:
DataModule2->IBStoredProc2->ParamByName("ID_CLIENT")->AsString=DBEdit1->Text;
DataModule2->IBStoredProc2->ParamByName("FIO_CL")->AsString=Edit4->Text;
Вывод данных в отчет также осуществляется программно с помощью компонента Button:
Form3->QuickRep1->Preview();
Form3->Visible=false;
Рисунок 29 - Вывод данных в отчет
В зависимости от того, вкладка с какой таблицей выбрана в данный момент, при вводе нужных данных происходит поиск в таблице:
if (RadioButton1->Checked)
{TLocateOptions LO;
DataModule2->IBTable1->Locate("FIO_CL", Edit7->Text, LO<<loPartialKey<< loCaseInsensitive);}
Рисунок 30 - Результат работы поиска в таблице «Клиенты»