Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчет БД.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
12.88 Mб
Скачать

Тема 10 Проектирование клиентской части приложения

Форма «Тарификация»

Рисунок 10.38 Окно «тарификация» приложения

Код:

f (Edit_fio.Text<>'') and (Edit_Familiya.Text<>'')

and (ComboBox_Pck.Text<>'') then begin

Zapros_BDE:=TQuery.Create(nil);

Zapros_BDE.DatabaseName:=DM_BDE.Database.DatabaseName;

Zapros_BDE.Active:=false;

Zapros_BDE.SQL.Clear;

Zapros_BDE.SQL.Add('select номер_пцк from ПЦК where название='+#39+ComboBox_Pck.Text+#39);

Zapros_BDE.Active:=true;

Zapros_BDE_1:=TQuery.Create(nil);

Zapros_BDE_1.DatabaseName:=DM_BDE.Database.DatabaseName;

Zapros_BDE_1.Active:=false;

Zapros_BDE_1.SQL.Clear;

Zapros_BDE_1.SQL.Add('insert into преподаватели (фио, фамилия, имя, отчество, дата_рождения, адрес, телефон, пцк) values'+

'('+chr(39)+Edit_fio.Text+chr(39)+','+chr(39)+Edit_Familiya.Text+chr(39)+

','+chr(39)+Edit_Ima.Text+chr(39)+','+chr(39)+Edit_Otchestvo.Text+chr(39)+

','+chr(39)+MaskEdit_Data_rogdeniya.Text+chr(39)+','+chr(39)+Edit_Adres.Text+chr(39)+

','+chr(39)+Edit_Telefon.Text+chr(39)+','+IntToStr(Zapros_BDE.fieldbyname('номер_пцк').Value)+')');

Zapros_BDE_1.ExecSQL;

F_Prepodavateli.Edit_PCKChange(Sender);

F_Prepodavateli.Button4Click(Sender);

F_Dobavleniya_Prepodavatela.Close;

end else Application.MessageBox('Обязательно заполняемые поля: "Фамилия И.О.", "Фамилия" и "ПЦК"','Предупреждение!',MB_OK+MB_ICONERROR);

end;

Форма «Преподаватели»

Рисунок 10.39 Окно «Преподаватели» приложения

Код:

unit U_Prepodavateli;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ExtCtrls, Buttons, DB, Grids, DBGrids, DBTables;

type

TF_Prepodavateli = class(TForm)

DBGrid_Prepodavateli: TDBGrid;

DataSource_Prepodavateli: TDataSource;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

BitBtn3: TBitBtn;

BitBtn4: TBitBtn;

Bevel1: TBevel;

Label1: TLabel;

Edit_Poisk: TEdit;

Bevel2: TBevel;

Label2: TLabel;

BitBtn5: TBitBtn;

Label3: TLabel;

Edit_Pck: TEdit;

Bevel3: TBevel;

Label4: TLabel;

Label5: TLabel;

Bevel4: TBevel;

Label6: TLabel;

BitBtn_Dobavit: TBitBtn;

BitBtn7: TBitBtn;

BitBtn8: TBitBtn;

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure BitBtn3Click(Sender: TObject);

procedure BitBtn4Click(Sender: TObject);

procedure BitBtn_DobavitClick(Sender: TObject);

procedure BitBtn5Click(Sender: TObject);

procedure Edit_PckChange(Sender: TObject);

procedure FormShow(Sender: TObject);

procedure BitBtn8Click(Sender: TObject);

procedure BitBtn7Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

F_Prepodavateli: TF_Prepodavateli;

implementation

uses U_DM_BDE, U_Dobavleniya_Prepodavatela, U_Izmenenie_Prepodavatela;

{$R *.dfm}

procedure TF_Prepodavateli.BitBtn1Click(Sender: TObject);

begin

DM_BDE.Query_Prepodavateli.First;

end;

procedure TF_Prepodavateli.BitBtn2Click(Sender: TObject);

begin

DM_BDE.Query_Prepodavateli.prior;

end;

procedure TF_Prepodavateli.BitBtn3Click(Sender: TObject);

begin

DM_BDE.Query_Prepodavateli.next;

end;

procedure TF_Prepodavateli.BitBtn4Click(Sender: TObject);

begin

DM_BDE.Query_Prepodavateli.last;

end;

procedure TF_Prepodavateli.BitBtn_DobavitClick(Sender: TObject);

begin

F_Dobavleniya_Prepodavatela.showmodal;

end;

procedure TF_Prepodavateli.BitBtn5Click(Sender: TObject);

begin

DM_BDE.Query_Prepodavateli.Locate('фамилия',Edit_Poisk.Text,[loCaseInsensitive,loPartialKey]);

end;

procedure TF_Prepodavateli.Edit_PckChange(Sender: TObject);

begin

DM_BDE.Query_Prepodavateli.Active:=false;

DM_BDE.Query_Prepodavateli.ParamByName('PCK').AsString:=Edit_PCK.Text+'%';

DM_BDE.Query_Prepodavateli.Active:=true;

end;

procedure TF_Prepodavateli.FormShow(Sender: TObject);

begin

Edit_PckChange(Sender);

end;

procedure TF_Prepodavateli.BitBtn8Click(Sender: TObject);

begin

if Application.MessageBox(pchar('Удалить преподавателя: '

+DM_BDE.Query_Prepodavateli.FieldByName('фио').AsString+

' ?'),'Предуприждение!',MB_YESNO+MB_ICONQUESTION)=6 then begin

Zapros_BDE:=TQuery.Create(nil);

Zapros_BDE.DatabaseName:=DM_BDE.Database.DatabaseName;

Zapros_BDE.Active:=false;

Zapros_BDE.SQL.Clear;

Zapros_BDE.SQL.Add('delete from преподаватели where код_преподавателя='+IntToStr(DM_BDE.Query_Prepodavateli.FieldByName('код_преподавателя').Value));

Zapros_BDE.ExecSQL;

Edit_PCKChange(Sender);

end;

end;

procedure TF_Prepodavateli.BitBtn7Click(Sender: TObject);

begin

F_Izmenenie_Prepodavatela.ShowModal;

end;

Форма «Добавление»

Рисунок 10.40 Окно «Добавление» приложения

Код:

if Application.MessageBox(pchar('Добавить преподавателя: '

+DM_BDE.Query_Prepodavateli.FieldByName('фио').AsString+ ' ?'),'Предуприждение!',MB_YESNO+MB_ICONQUESTION)=6 then begin

Zapros_BDE:=TQuery.Create(nil);

Zapros_BDE.DatabaseName:=DM_BDE.Database.DatabaseName;

Zapros_BDE.Active:=false;

Zapros_BDE.SQL.Clear;

Zapros_BDE.SQL.Add('delete from преподаватели where код_преподавателя='

+IntToStr(DM_BDE.Query_Prepodavateli.FieldByName('код_преподавателя').Value));

Zapros_BDE.ExecSQL;

Edit_PCKChange(Sender);

end;

Форма «ПЦК»

Рисунок 10.41 Окно «ПЦК» приложения

Код:

unit U_PCK;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ExtCtrls, Buttons, DB, Grids, DBGrids, DBClient,

SimpleDS;

type

TF_PCK = class(TForm)

DBGrid_PCK: TDBGrid;

DataSource_PCK: TDataSource;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

BitBtn3: TBitBtn;

BitBtn4: TBitBtn;

Bevel1: TBevel;

Label1: TLabel;

Bevel2: TBevel;

BitBtn5: TBitBtn;

BitBtn6: TBitBtn;

BitBtn7: TBitBtn;

Label2: TLabel;

SimpleDataSet_Prepodavateli: TSimpleDataSet;

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure BitBtn3Click(Sender: TObject);

procedure BitBtn4Click(Sender: TObject);

procedure FormShow(Sender: TObject);

procedure BitBtn7Click(Sender: TObject);

procedure BitBtn5Click(Sender: TObject);

procedure BitBtn6Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

F_PCK: TF_PCK;

implementation

uses U_DM_dbExpress, U_Glavnaya;

{$R *.dfm}

procedure TF_PCK.BitBtn1Click(Sender: TObject);

begin

DM_dbExpress.SimpleDataSet_PCK.First

end;

procedure TF_PCK.BitBtn2Click(Sender: TObject);

begin

DM_dbExpress.SimpleDataSet_PCK.prior

end;

procedure TF_PCK.BitBtn3Click(Sender: TObject);

begin

DM_dbExpress.SimpleDataSet_PCK.next

end;

procedure TF_PCK.BitBtn4Click(Sender: TObject);

begin

DM_dbExpress.SimpleDataSet_PCK.last

end;

procedure TF_PCK.FormShow(Sender: TObject);

begin

DBGrid_PCK.Columns.Items[1].PickList.Clear;

SimpleDataSet_Prepodavateli.Active:=false;

SimpleDataSet_Prepodavateli.Active:=true;

while not SimpleDataSet_Prepodavateli.Eof do

begin

DBGrid_PCK.Columns.Items[1].PickList.Add(SimpleDataSet_Prepodavateli.fieldbyname('фио').Value);

SimpleDataSet_Prepodavateli.Next;

end;

end;

procedure TF_PCK.BitBtn7Click(Sender: TObject);

begin

DM_dbExpress.SimpleDataSet_PCK.Delete;

end;

procedure TF_PCK.BitBtn5Click(Sender: TObject);

begin

DM_dbExpress.SimpleDataSet_PCK.Append;

end;

procedure TF_PCK.BitBtn6Click(Sender: TObject);

begin

DM_dbExpress.SimpleDataSet_PCK.Edit;

end;

end.

Форма «Статистика»

Рисунок 10.42 Окно «Статистика» приложения

Код :

unit U_Statistika;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, DB, ADODB, Grids, DBGrids, DBTables, DBCtrls,

DBClient, SimpleDS;

type

TF_Statistika = class(TForm)

GroupBox1: TGroupBox;

ADOStoredProc_Po_prepodavatelam: TADOStoredProc;

DataSource_Po_prepodavatelam: TDataSource;

DBGrid_Po_prepodavatelam: TDBGrid;

GroupBox2: TGroupBox;

DBGrid_Disciplini: TDBGrid;

Query_Spisok_prepidavateley: TQuery;

DataSource_Spisok_prepodavateley: TDataSource;

DBLookupComboBox_Prepodavateli: TDBLookupComboBox;

StoredProc_Prepodavatel: TStoredProc;

DataSource_Prepodavatel: TDataSource;

StoredProc_Kolichectvo_chasov: TStoredProc;

Label_Kolichestvo_chasov: TLabel;

ADOStoredProc_Kolichestvo_Prepodavateley: TADOStoredProc;

Label_Kolichestvo_prepodavateley: TLabel;

SimpleDataSet_Statistika_grupp: TSimpleDataSet;

GroupBox3: TGroupBox;

DBGrid_Gruppi: TDBGrid;

DataSource_Statistiga_gruppi: TDataSource;

SimpleDataSet_Statistika_gruppDSDesigner: TStringField;

SimpleDataSet_Statistika_grupp_: TIntegerField;

procedure DBLookupComboBox_PrepodavateliClick(Sender: TObject);

procedure FormShow(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

F_Statistika: TF_Statistika;

implementation

uses U_DM_ADO, U_DM_dbExpress, U_DM_BDE;

{$R *.dfm}

procedure TF_Statistika.DBLookupComboBox_PrepodavateliClick(

Sender: TObject);

begin

StoredProc_Prepodavatel.Active:=False;

StoredProc_Prepodavatel.ParamByName('@fio').Value:=DBLookupComboBox_Prepodavateli.Text;

StoredProc_Kolichectvo_chasov.ParamByName('@fio').Value:=DBLookupComboBox_Prepodavateli.Text;

amValues['@kol'];

end;

procedure TF_Statistika.FormShow(Sender: TObject);

begin

ADOStoredProc_Kolichestvo_Prepodavateley.Active:=false;

+IntToStr(ADOStoredProc_Kolichestvo_Prepodavateley.Parameters.ParamByName('@kol').Value);

ADOStoredProc_Kolichestvo_Prepodavateley.Active:=true;

{ StoredProc_Kolichectvo_chasov.Active:=false;

StoredProc_Kolichectvo_chasov.ExecProc;

Label_Kolichestvo_chasov.Caption:='Всего: ' +IntToStr(StoredProc_Kolichectvo_chasov.Params.ParamByName('@kol').Value);

StoredProc_Kolichectvo_chasov.Active:=true; }

end;end.

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