
- •1Введение
- •2Анализ деятельности предприятия
- •2.1 Описание предметной области
- •2.2 Анализ структуры компании
- •2.3 Анализ выходных, внутренних документов
- •2.4 Задачи
- •3Инфологическое проектирование
- •4Логическое проектирование
- •4.1 Анализ запросов
- •4.2 Установка дополнительных логических связей
- •4.3 Нормализация
- •5Физическое проектирование
- •6Результат проектирования
- •Заключение
- •Список используемых источников
- •Приложение
6Результат проектирования
Для реализации клиентского приложения использовался язык программирования С++. Сам текст программы приведен в приложении.
При запуске рабочей программы появляется диалоговое оно с меня с выбором дальнейших действий.
Рисунок 13. Главное меню
Как видно из приведенного рисунка пользователь может выбрать одно из действий: просмотра базы данных, редактирование базы данных и выполнение запросов.
По нажатию кнопки «Просмотр БД» открывается дополнительное окно, в котором предлагается выбрать для просмотра одну из таблиц базы данных. После осуществления выбора необходимо нажать кнопку «Просмотр».
Рисунок 14. Окно «Просмотр БД»
Вернемся к окну главного меню. При нажатии на кнопку «Редактирование БД», откроется следующее окно. На данной форме пользователю предлагается осуществить внесение или удаление записей базы данных. Для этого требуется выбрать необходимую вкладку, внести данные и нажать кнопку «Добавить запись». Для удаления следует ввести значение в самую верхнюю строчку и нажать «Удалить запись».
Рисунок 15. Окно «Редактирование.
На окне главного меню осталась кнопка «Запросы». По нажатию на нее пользователю предоставляется возможность осуществить запросы, оговоренные в пункте логическое проектирование. Следует из раскрывающегося списка выбрать запрос, ввести необходимые параметры запроса и нажать кнопку «Выполнить».
Рисунок 16. Окно «Запросы»
Заключение
В ходе проделанной работы была разработана база данных товарооборота сети магазинов «Неократия». Весь процесс проектирования был разбит на четыре основных этапа, а именно: анализ предметной области, инфологическое проектирование, логическое проектирование и физическое проектирование. Помимо разработанной базы данных был написан клиент для работы с ней. Руководство по работе с клиентом было описано в последнем разделе работы.
Помимо перечисленного были разработаны логическая и физическая модель данных.
Таким образом, поставленная в работе задача была выполнена в полном объеме.
Список используемых источников
Архангельский А. Я. Программирование в C++ Builder 6. – М.: Бином, 2003.
Бобышев В. В. Методические указания к курсовому проектированию по дисциплине «Корпоративные информационные системы». – Хабаровск: ТОГУ.
Козявин А. Мир InterBase / А. Ковязин, С. Востриков. – М.: Кудиц-образ, 2002.
Хомоненко А. Д. Ададуров С. Е. Работа с базами данных в C++ Builder. - СПб.: БХВ-Петербург, 2006.
Шкарина Л. Язык SQL. Учебный курс. – СПб.: Питер, 2001.
Приложение
void __fastcall TForm2::Button2Click(TObject *Sender)
{
IBTable1->Active=false;
AnsiString SCode;
switch(CB1->ItemIndex)
{
case 0: SCode = "Gds"; break;
case 1: SCode = "Group"; break;
case 2: SCode = "HO"; break;
case 3: SCode = "Marker"; break;
case 4: SCode = "Check"; break;
case 5: SCode = "Shop"; break;
case 6: SCode = "TOVAR"; break;
case -1: ShowMessage("Выбор");
return;
};
IBTable1->TableName = SCode;
IBTable1->Active = true;
}
void __fastcall TForm4::Button2Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
AnsiString SCode;
switch(CB1->ItemIndex)
{
case 0: SCode = "select * from \"Gds\" where \"id_gds\"=:a";
break;
case 1: SCode = "select * from \"Gds\" where \"id_group\"=:a";
break;
case 2: SCode = "select * from \"Marker\" where \"id_marker\"=:a";
break;
case 3: SCode = "select * from \"Gds\" where \"id_marker\"=:a";
break;
case 4: SCode = "select \"id_gds\", \"id_shop\" from \"Check\" where \"id_gds\"=:a";
break;
case 5: SCode = "";
IBQuery1->SQL->LoadFromFile("qwe.txt"); break;
case -1: ShowMessage("Выбрать");
return;
};
IBQuery1->SQL->Add(SCode);
if (CB1->ItemIndex!=5)
IBQuery1->ParamByName("a")->AsInteger=StrToInt(Edit1->Text);
IBQuery1->Open();
}
void __fastcall TForm3::Button2Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("Insert into \"Gds\" ");
IBQuery1->SQL->Strings[0]=IBQuery1->SQL->Strings[0]+"(\"id_gds\", \"id_group\", \"name\", \"id_marker\", \"amt\", \"price\", \"cost\") ";
IBQuery1->SQL->Strings[0]=IBQuery1->SQL->Strings[0]+"values (:a, :b, :c, :d, :e, :f, :g)";
IBQuery1->ParamByName("a")->AsInteger=StrToInt(Edit1->Text);
IBQuery1->ParamByName("b")->AsInteger=StrToInt(Edit2->Text);
IBQuery1->ParamByName("c")->AsString=Edit3->Text;
IBQuery1->ParamByName("d")->AsInteger=StrToInt(Edit4->Text);
IBQuery1->ParamByName("e")->AsInteger=StrToInt(Edit5->Text);
IBQuery1->ParamByName("f")->AsInteger=StrToInt(Edit6->Text);
IBQuery1->ParamByName("g")->AsInteger=StrToInt(Edit7->Text);
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button3Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("Insert into \"Group\" (\"id_group\", \"group\") values (:a, :b)");
IBQuery1->ParamByName("a")->Value=StrToInt(Edit8->Text);
IBQuery1->ParamByName("b")->AsString=Edit9->Text;
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button4Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("delete from \"Group\" where \"id_group\" = :a");
IBQuery1->ParamByName("a")->Value=StrToInt(Edit8->Text);
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button5Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("delete from \"Gds\" where \"id_gds\" = :a");
IBQuery1->ParamByName("a")->Value=StrToInt(Edit1->Text);
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button6Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("Insert into \"Marker\" ");
IBQuery1->SQL->Strings[0]=IBQuery1->SQL->Strings[0]+"(\"id_marker\", \"name\", \"firm\", \"country\") ";
IBQuery1->SQL->Strings[0]=IBQuery1->SQL->Strings[0]+"values (:a, :b, :c, :d)";
IBQuery1->ParamByName("a")->Value=StrToInt(Edit10->Text);
IBQuery1->ParamByName("b")->AsString=Edit11->Text;
IBQuery1->ParamByName("c")->AsString=Edit12->Text;
IBQuery1->ParamByName("d")->AsString=Edit13->Text;
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button7Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("delete from \"Marker\" where \"id_marker\" = :a");
IBQuery1->ParamByName("a")->Value=StrToInt(Edit10->Text);
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button8Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("Insert into \"HO\" ");
IBQuery1->SQL->Strings[0]=IBQuery1->SQL->Strings[0]+"(\"id_gds\", \"id_marker\", \"Norder\", \"date\") ";
IBQuery1->SQL->Strings[0]=IBQuery1->SQL->Strings[0]+"values (:a, :b, :c, :d)";
IBQuery1->ParamByName("a")->AsInteger=StrToInt(Edit14->Text);
IBQuery1->ParamByName("b")->AsInteger=StrToInt(Edit15->Text);
IBQuery1->ParamByName("c")->AsInteger=StrToInt(Edit16->Text);
IBQuery1->ParamByName("d")->AsDate=Edit17->Text;
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button9Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("delete from \"HO\" where \"id_gds\" = :a");
IBQuery1->ParamByName("a")->Value=StrToInt(Edit14->Text);
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Edit6Change(TObject *Sender)
{
int a,b;
a=StrToInt(Edit5->Text); b=StrToInt(Edit6->Text);
Edit7->Text=IntToStr(a*b);
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button10Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("Insert into \"Shop\" ");
IBQuery1->SQL->Strings[0]=IBQuery1->SQL->Strings[0]+"(\"id_shop\", \"adds\", \"type\") ";
IBQuery1->SQL->Strings[0]=IBQuery1->SQL->Strings[0]+"values (:a, :b, :c)";
IBQuery1->ParamByName("a")->AsInteger=StrToInt(Edit21->Text);
IBQuery1->ParamByName("b")->AsString=Edit22->Text;
IBQuery1->ParamByName("c")->AsString=Edit23->Text;
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button11Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("delete from \"Shop\" where \"id_shop\" = :a");
IBQuery1->ParamByName("a")->Value=StrToInt(Edit21->Text);
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button12Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("Insert into \"Check\" ");
IBQuery1->SQL->Strings[0]=IBQuery1->SQL->Strings[0]+"(\"id_gds\", \"id_marker\", \"id_shop\", \"price_shop\", \"amt_have\", \"amt_sold\") ";
IBQuery1->SQL->Strings[0]=IBQuery1->SQL->Strings[0]+"values (:a, :b, :c, :d, :e, :f)";
IBQuery1->ParamByName("a")->AsInteger=StrToInt(Edit18->Text);
IBQuery1->ParamByName("b")->AsInteger=StrToInt(Edit19->Text);
IBQuery1->ParamByName("c")->AsInteger=StrToInt(Edit20->Text);
IBQuery1->ParamByName("d")->AsInteger=StrToInt(Edit24->Text);
IBQuery1->ParamByName("e")->AsInteger=StrToInt(Edit25->Text);
IBQuery1->ParamByName("f")->AsInteger=StrToInt(Edit26->Text);
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button13Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("delete from \"Check\" where \"id_gds\" = :a");
IBQuery1->ParamByName("a")->Value=StrToInt(Edit18->Text);
IBQuery1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button14Click(TObject *Sender)
{
IBQuery1->SQL->Clear();
IBQuery1->SQL->Add("select * from \"Tovar\" ");
IBQuery1->Open();
}
|
|
|
|
|
КП.080700851.00.00.00 ПЗ |
Лист |
|
|
|
|
|
||
|
||||||
Изм. |
Лист |
№ докум. |
Подп. |
Дата |