Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Звіт_ОПІ.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
891.9 Кб
Скачать

Лабораторна робота №8

Тема: Розробка головного модуля системи.

Мета: Навчитися управляти проектами в середовищі Builder C++ 6. Отримати навички редагувати БД: змінювати структуру таблиці, модифікувати набори даних, вибирати записи по складних критеріях із одної чи декількох таблиць, сортувати записи використовуючи SQL – запити.

Лістинг програми:

//Form1:

#include <vcl.h>

#include <cstdlib>

#pragma hdrstop

#include "Unit1.h"

#include "Unit9.h"

#include "Unit7.h"

#include "Unit8.h"

#include "Unit2.h"

#include "Unit6.h"

#include "search_modul.h"

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

String memotext;

__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { }

void __fastcall TForm1::N11Click(TObject *Sender)

{ Form7->Show(); Form7->Visible=false; Form7->QuickRep1->Preview(); }

void __fastcall TForm1::N12Click(TObject *Sender)

{ Form8->Show(); Form8->Visible=false; Form8->QuickRep1->Preview(); }

void __fastcall TForm1::N13Click(TObject *Sender)

{ Form9->Show(); Form9->Visible=false;

Form9->QuickRep1->Preview(); }

void __fastcall TForm1::N15Click(TObject *Sender)

{ Form2->ShowModal(); }

void __fastcall TForm1::N14Click(TObject *Sender)

{ Form1->Close(); }

void function_diagnozi()

{ Form1->Width=512;Form1->DataSource1->DataSet=Form1->Query2;

Form1->Label1->Caption="Д²АГНОЗИ"; }

void __fastcall TForm1::N2Click(TObject *Sender)

{ function_diagnozi(); }

void function_kvitancii()

{ Form1->Width=729;Form1->DataSource1->DataSet=Form1->Query3;

Form1->Label1->Caption="КВИТАНЦ²¯"; }

void __fastcall TForm1::N3Click(TObject *Sender)

{ function_kvitancii(); }

void function_priparati()

{ Form1->Width=538;Form1->DataSource1->DataSet=Form1->Query4;

Form1->Label1->Caption="ПРИПАРАТИ"; }

void __fastcall TForm1::N4Click(TObject *Sender)

{ function_priparati(); }

void __fastcall TForm1::Button1Click(TObject *Sender)

{ if((Memo1->Text!="")) { Form1->Query1->Close();

Form1->Query1->SQL=Memo1->Lines; Form1->Query1->Open(); DataSource1->DataSet=Query1;} }

void __fastcall TForm1::Memo1Click(TObject *Sender)

{ if(Memo1->Text=="Поле для SQL запиту") { Memo1->Clear(); } }

void __fastcall TForm1::FormCreate(TObject *Sender)

{ function_diagnozi();Form1->Width=Form1->Width+1;

Memo1->Text="Поле для SQL запиту"; }

void __fastcall TForm1::BitBtn1Click(TObject *Sender)

{ if((Memo1->Text!="")&&(Memo1->Text!="Поле для SQL запиту")) {

memotext=Memo1->Text; Query1->Close(); Query1->SQL->Clear();

Query1->SQL->Add(memotext); Query1->ExecSQL(); function_diagnozi();} }

void __fastcall TForm1::N17Click(TObject *Sender)

{ Memo1->Text=""; AnsiString text[]={"SELECT","FROM"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N16Click(TObject *Sender)

{ Memo1->Text=""; AnsiString text[]={"INSERT INTO","VALUES"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N18Click(TObject *Sender)

{ Memo1->Text=""; AnsiString text[]={"DELETE FROM","WHERE"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N34Click(TObject *Sender)

{ Memo1->Text=""; AnsiString text[]={"UPDATE","SET"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++)

Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N22Click(TObject *Sender)

{ Memo1->Text=""; AnsiString text[]={"insert into DIAGNOZI","(KOD_DIAGNOZI, KOD_PRIPARATY, TERMINOLOGIA, TERMIN_LIKYVANNYA)",

"values","(\":KOD_DIAGNOZI\", \":KOD_PRIPARATY\", \":TERMINOLOGIA\", \":TERMIN_LIKYVANNYA\")"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++)

Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N23Click(TObject *Sender)

{ Memo1->Text=""; AnsiString text[]={"delete from DIAGNOZI",

"where KOD_DIAGNOZI = \":OLD_KOD_DIAGNOZI\" and KOD_PRIPARATY = \":OLD_KOD_PRIPARATY\" and TERMINOLOGIA = \":OLD_TERMINOLOGIA\" and TERMIN_LIKYVANNYA = \":OLD_TERMIN_LIKYVANNYA\""};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++)

Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N24Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={"update DIAGNOZI",

"set KOD_DIAGNOZI = \":KOD_DIAGNOZI\", KOD_PRIPARATY = \":KOD_PRIPARATY\", TERMINOLOGIA = \":TERMINOLOGIA\", TERMIN_LIKYVANNYA = \":TERMIN_LIKYVANNYA\""};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++)

Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N25Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={"SELECT KOD_DIAGNOZI, KOD_PRIPARATY, TERMINOLOGIA, TERMIN_LIKYVANNYA", "FROM DIAGNOZI Diagnozi"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N26Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={"insert into KVITANCIA","(KOD_KVITANCII, KOD_KLIENTA, VSOGO_DO_OPLATI, DATA_VIDACHI, PIB_KLIENTA, DIAGNOZ)",

"values","(\":KOD_KVITANCII\", \":KOD_KLIENTA\", :VSOGO_DO_OPLATI, \":DATA_VIDACHI\", \":PIB_KLIENTA\",\":DIAGNOZ\")"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++)

Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N27Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={"delete from KVITANCIA","where KOD_KVITANCII = \":OLD_KOD_KVITANCII\" and KOD_KLIENTA = \":OLD_KOD_KLIENTA\"",

"and VSOGO_DO_OPLATI = :OLD_VSOGO_DO_OPLATI and","DATA_VIDACHI = \":OLD_DATA_VIDACHI\" and PIB_KLIENTA = \":OLD_PIB_KLIENTA\" and DIAGNOZ = \":OLD_DIAGNOZ\""};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N28Click(TObject *Sender)

{ Memo1->Text=""; AnsiString text[]={" update KVITANCIA","set",

"KOD_KVITANCII = \":KOD_KVITANCII\", KOD_KLIENTA = \":KOD_KLIENTA\", VSOGO_DO_OPLATI = :VSOGO_DO_OPLATI,",

"DATA_VIDACHI = \":DATA_VIDACHI\", PIB_KLIENTA = \":PIB_KLIENTA\", DIAGNOZ = \":DIAGNOZ\""};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N29Click(TObject *Sender)

{ Memo1->Text=""; AnsiString text[]={"SELECT KOD_KVITANCII, KOD_KLIENTA, VSOGO_DO_OPLATI, DATA_VIDACHI, PIB_KLIENTA, DIAGNOZ", "FROM KVITANCIA Kvitancia"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N30Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={"insert into PRIPARATI","(KOD_PRIPARATY, NAZVA_PRIPARATY, DATA_VIGOTOVLENNYA, TERMIN_PRIDATNOSTI)",

"values","(\":KOD_PRIPARATY\", \":NAZVA_PRIPARATY\", \":DATA_VIGOTOVLENNYA\", \":TERMIN_PRIDATNOSTI\")"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N31Click(TObject *Sender)

{ Memo1->Text=""; AnsiString text[]={"delete from PRIPARATI","WHERE",

"KOD_PRIPARATY = \":OLD_KOD_PRIPARATY\" and NAZVA_PRIPARATY = \":OLD_NAZVA_PRIPARATY\" and",

"DATA_VIGOTOVLENNYA = \":OLD_DATA_VIGOTOVLENNYA\" and TERMIN_PRIDATNOSTI = \":OLD_TERMIN_PRIDATNOSTI\""};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N32Click(TObject *Sender)

{ Memo1->Text=""; AnsiString text[]={"update PRIPARATI","set",

"KOD_PRIPARATY = \":KOD_PRIPARATY\", NAZVA_PRIPARATY = \":NAZVA_PRIPARATY\",",

"DATA_VIGOTOVLENNYA = \":DATA_VIGOTOVLENNYA\", TERMIN_PRIDATNOSTI = \":TERMIN_PRIDATNOSTI\""};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::N33Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={"SELECT KOD_PRIPARATY, NAZVA_PRIPARATY, DATA_VIGOTOVLENNYA, TERMIN_PRIDATNOSTI", "FROM PRIPARATI Priparati"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]);}

void __fastcall TForm1::N37Click(TObject *Sender)

{ Memo1->Height=Memo1->Height+20; }

void __fastcall TForm1::N38Click(TObject *Sender)

{ Memo1->Height=Memo1->Height-15; }

void __fastcall TForm1::SELECT1Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={"SELECT TERMINOLOGIA, TERMIN_LIKYVANNYA",

"FROM DIAGNOZI Diagnozi"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::DELETE1Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={"delete from DIAGNOZI", "where TERMINOLOGIA = \"Pulpit\""};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::SELECT2Click(TObject *Sender)

{ Memo1->Text=""; AnsiString text[]={"delete from KVITANCIA","where",

" and PIB_KLIENTA = \"Kapitan Lidija\""};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::UPDATE2Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={" update KVITANCIA","set",

"VSOGO_DO_OPLATI = VSOGO_DO_OPLATI*0.8"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::INSERT1Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={"insert into KVITANCIA","(KOD_KVITANCII, KOD_KLIENTA, VSOGO_DO_OPLATI, DATA_VIDACHI, PIB_KLIENTA, DIAGNOZ)",

"values","(\"999000\", \"0303\", 790, \"27.08.1999\", \"Rydolf Sasha\",\"Skolioz\")"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++) Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::INSERT2Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={"insert into PRIPARATI","(KOD_PRIPARATY, NAZVA_PRIPARATY, DATA_VIGOTOVLENNYA, TERMIN_PRIDATNOSTI)",

"values","(\"777888\", \"Tiagsolin\", \"23.03.15\", \"23.09.16\")"};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++)

Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::DELETE2Click(TObject *Sender)

{ Memo1->Text="";

AnsiString text[]={"delete from PRIPARATI","WHERE",

"NAZVA_PRIPARATY = \"Analgin\""};

for(unsigned t=0; t<sizeof(text)/sizeof(int); t++)

Memo1->Lines->Add(text[t]); }

void __fastcall TForm1::restart1Click(TObject *Sender)

{ ShellExecute(0,0,Application->ExeName.c_str(),0,0,SW_SHOW); //запуск коп³¿ програми

Close(); //закриваºмо стару }

void __fastcall TForm1::BitBtn2Click(TObject *Sender)

{ if((Memo1->Text!="")&&(Memo1->Text!="Поле для SQL запиту")) {

memotext=Memo1->Text; Query1->Close(); Query1->SQL->Clear();

Query1->SQL->Add(memotext); Query1->ExecSQL(); function_priparati(); }}

void __fastcall TForm1::BitBtn3Click(TObject *Sender)

{ if((Memo1->Text!="")&&(Memo1->Text!="Поле для SQL запиту")) {

memotext=Memo1->Text;

Query1->Close(); Query1->SQL->Clear(); Query1->SQL->Add(memotext);

Query1->ExecSQL(); DataSource1->DataSet=Query1;function_kvitancii(); } }

void __fastcall TForm1::N40Click(TObject *Sender)

{ system("C:\\OPI\\lab\\lab_8_opi\\lab_9_opi\\1-masin\\Project1.exe"); }

void __fastcall TForm1::N41Click(TObject *Sender)

{ search->ShowModal(); }

Результат роботи:

Висновок. Я навчився управляти проектами в середовищі Builder C++ 6. Отримав навички редагувати БД: змінювати структуру таблиці, модифікувати набори даних, вибирати записи по складних критеріях із одної чи декількох таблиць.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]