- •Міністерство освіти і науки України Смілянський промислово-економічний коледж чдту
- •Практична робота №1
- •Практична робота №2
- •Хід роботи:
- •Практична робота №3
- •Практична робота №4
- •Практична робота №5
- •«Медична діагностична клініка»
- •Практична робота №6
- •Практична робота №7
- •Практична робота №8
- •Лабораторна робота №1
- •Лабораторна робота №2
- •Лабораторна робота №3
- •Лабораторна робота №4
- •Лабораторна робота №5
- •Лабораторна робота №6
- •Лабораторна робота №7
- •Лабораторна робота №8
- •Лабораторна робота №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. Отримав навички редагувати БД: змінювати структуру таблиці, модифікувати набори даних, вибирати записи по складних критеріях із одної чи декількох таблиць.
