Скачиваний:
9
Добавлен:
17.06.2023
Размер:
1.44 Mб
Скачать

ПРИЛОЖЕНИЕ Б

Листинг программы

unit Unit1;

interface uses

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

Dialogs, DB, ADODB, Grids, DBGrids, StdCtrls, Menus; type

TMain = class(TForm) MainMenu1: TMainMenu; N1: TMenuItem;

N3: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

N7: TMenuItem;

N8: TMenuItem;

N9: TMenuItem;

N10: TMenuItem;

N11: TMenuItem;

N12: TMenuItem;

N13: TMenuItem;

N14: TMenuItem;

Cth1: TMenuItem;

N15: TMenuItem;

N16: TMenuItem;

N2: TMenuItem;

N4: TMenuItem;

procedure N7Click(Sender: TObject); procedure N8Click(Sender: TObject); procedure N9Click(Sender: TObject); procedure N10Click(Sender: TObject); procedure N5Click(Sender: TObject); procedure N16Click(Sender: TObject); procedure N11Click(Sender: TObject); procedure N12Click(Sender: TObject); procedure N13Click(Sender: TObject); procedure FormShow(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure N14Click(Sender: TObject); procedure N15Click(Sender: TObject); procedure N4Click(Sender: TObject); procedure N2Click(Sender: TObject);

private

{Private declarations } public

{Public declarations } end;

var

Main: TMain;

implementation

uses Unit2, Unit3, Unit4, Unit6, Unit7, Unit8, Unit11, Unit12, Unit9,

Unit18, Unit20, Unit16, Unit21, Unit22;

{$R *.dfm}

procedure TMain.N7Click(Sender: TObject); begin

fmPrepodavateli.ShowModal;

end;

procedure TMain.N8Click(Sender: TObject); begin

fmGruppi.ShowModal

end;

procedure TMain.N9Click(Sender: TObject); begin

fmDisciplini.ShowModal;

end;

procedure TMain.N10Click(Sender: TObject); begin

fmTarif.ShowModal;

end;

procedure TMain.N5Click(Sender: TObject); var f:boolean;

s:integer; begin

if ex then begin

fmID.ADOQuery2.SQL.Clear;

fmID.ADOQuery2.Active:=false; fmID.ADOQuery2.SQL.Add('select * from f_flag'); fmID.ADOQuery2.Active:=true; fmId.ADOQuery2.First; f:=fmID.ADOQuery2.FieldByName('flag').AsBoolean; s:=fmID.ADOQuery2.FieldByName('id').AsInteger;

fmID.ADOQuery2.Active:=false;

fmID.ADOQuery2.SQL.Clear; fmID.ADOQuery2.SQL.Add('update f_flag set flag=false where id='+inttostr(s));

fmID.ADOQuery2.ExecSQL;

end;

Close;

end;

procedure TMain.N16Click(Sender: TObject); begin

fmRezerv.ShowModal;

end;

procedure TMain.N11Click(Sender: TObject); begin

fmNagruzka.ShowModal;

end;

procedure TMain.N12Click(Sender: TObject); begin

fmOplata.ShowModal;

end;

procedure TMain.N13Click(Sender: TObject); begin

fmGrPrep.ShowModal;

end;

procedure TMain.FormShow(Sender: TObject);

39

begin fmID.Hide; end;

procedure TMain.FormClose(Sender: TObject; var Action: TCloseAction);

var f:boolean; s:integer; begin

if ex then begin

fmID.ADOQuery2.SQL.Clear;

fmID.ADOQuery2.Active:=false; fmID.ADOQuery2.SQL.Add('select * from f_flag'); fmID.ADOQuery2.Active:=true; fmID.ADOQuery2.First; f:=fmID.ADOQuery2.FieldByName('flag').AsBoolean; s:=fmID.ADOQuery2.FieldByName('id').AsInteger; fmID.ADOQuery2.Active:=false;

fmID.ADOQuery2.SQL.Clear; fmID.ADOQuery2.SQL.Add('update f_flag set flag=false where

id='+inttostr(s));

fmID.ADOQuery2.ExecSQL;

end;

halt;

end;

procedure TMain.N14Click(Sender: TObject); begin

fmEkzPrep.ShowModal;

end;

procedure TMain.N15Click(Sender: TObject); begin

fmIzm.ShowModal;

end;

procedure TMain.N4Click(Sender: TObject); begin

fmAbout.ShowModal;

end;

procedure TMain.N2Click(Sender: TObject); begin

fmHelp.ShowModal;

end;

{function Enter:boolean; var f:boolean;

s:integer; begin ex:=true;

main.ADOQuery2.SQL.Clear;

main.ADOQuery2.Active:=false; main.ADOQuery2.SQL.Add('select * from f_flag'); main.ADOQuery2.Active:=true; main.ADOQuery2.First; f:=main.ADOQuery2.FieldByName('flag').AsBoolean; s:=main.ADOQuery2.FieldByName('id').AsInteger;

if f then begin ex:=false;

showmessage('Отказано в доступе!'); main.Close;

end else begin

main.ADOQuery2.Active:=false;

main.ADOQuery2.SQL.Clear; main.ADOQuery2.SQL.Add('update f_flag set flag=true where id='+inttostr(s));

main.ADOQuery2.ExecSQL;

end; } end.

unit Unit2; interface uses

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

Dialogs, DB, ADODB, Grids, DBGrids, Unit8, StdCtrls, Buttons;

type

TfmPrepodavateli = class(TForm) DBGrid1: TDBGrid; ADODataSet1: TADODataSet; DataSource1: TDataSource; ADOQuery1: TADOQuery; ComboBox1: TComboBox; Label1: TLabel;

Button4: TButton; ComboBox2: TComboBox; Button5: TButton;

Edit1: TEdit; Label2: TLabel; Button6: TButton;

ADOQuery2: TADOQuery; BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

BitBtn3: TBitBtn;

procedure Button5Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure Button6Click(Sender: TObject);

procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);

procedure ComboBox2KeyPress(Sender: TObject; var Key: Char);

procedure BitBtn1Click(Sender: TObject); procedure BitBtn2Click(Sender: TObject); procedure BitBtn3Click(Sender: TObject);

private

{Private declarations } public

{Public declarations } end;

var

fmPrepodavateli: TfmPrepodavateli;

implementation

uses Unit15, Unit17, Unit4, Unit9, Unit24; {$R *.dfm}

procedure TfmPrepodavateli.Button5Click(Sender: TObject); begin

If ComboBox2.Text='ФИО' then begin ADODataSet1.Active:=false;

ADODataSet1.CommandText:='select P_Tab_N, P_FIO, C_Kategoria from Prepodavateli, Categoria where P_Kategoria=C_N order by P_FIO';

ADODataSet1.Active:=true; end

else begin

ADODataSet1.Active:=false; ADODataSet1.CommandText:='select P_Tab_N, P_FIO,

C_Kategoria from Prepodavateli, Categoria where P_Kategoria=C_N order by P_Tab_N';

ADODataSet1.Active:=true;

41

end end;

procedure TfmPrepodavateli.Button4Click(Sender: TObject); var s,n:string;

begin

if ComboBox1.Text='ФИО' then begin

s:=Edit1.Text;

n:=inttostr(length(s));

ADODataSet1.Active:=false; ADODataSet1.CommandText:='select P_Tab_N, P_FIO,

C_Kategoria from Prepodavateli, Categoria where P_Kategoria=C_N and left(P_FIO,'+n+')='''+s+'''';

ADODataSet1.Active:=true; end ;

if ComboBox1.Text='ТабНомер' then begin

s:=Edit1.Text;

n:=inttostr(length(s));

ADODataSet1.Active:=false; ADODataSet1.CommandText:='select P_Tab_N, P_FIO,

C_Kategoria from Prepodavateli, Categoria where P_Kategoria=C_N and left(P_Tab_N,'+n+')='''+s+'''';

ADODataSet1.Active:=true;

end;

if ComboBox1.Text='Должность' then begin

s:=Edit1.Text;

n:=inttostr(length(s));

ADODataSet1.Active:=false; ADODataSet1.CommandText:='select P_Tab_N, P_FIO,

C_Kategoria from Prepodavateli, Categoria where P_Kategoria=C_N and left(C_Kategoria,'+n+')='''+s+'''';

ADODataSet1.Active:=true;

end;

end;

procedure TfmPrepodavateli.FormShow(Sender: TObject); begin

ADODataSet1.Active:=false; AdODataSet1.CommandText:='select P_Tab_N, P_FIO, C_Kategoria from Prepodavateli, Categoria'

+' where P_Kategoria=C_N'; ADODataSet1.Active:=true;

end;

procedure TfmPrepodavateli.Button6Click(Sender: TObject); begin

Close;

end;

procedure TfmPrepodavateli.ComboBox1KeyPress(Sender: TObject;

var Key: Char); begin

case key of '0'..'9' :key:=#0; end;

end;

procedure TfmPrepodavateli.ComboBox2KeyPress(Sender: TObject;

var Key: Char); begin

case key of '0'..'9':key:=#0; end;

end;

procedure TfmPrepodavateli.BitBtn1Click(Sender: TObject); begin

fmPrepDob.ShowModal;

end;

procedure TfmPrepodavateli.BitBtn2Click(Sender: TObject); begin

fmPrepRed.ShowModal;

end;

procedure TfmPrepodavateli.BitBtn3Click(Sender: TObject); var a:string;

begin fmUdPrep.ShowModal; end;

end.

unit Unit3; interface uses

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

Dialogs, DB, ADODB, StdCtrls, Grids, DBGrids, Unit8, Buttons;

type

TfmGruppi = class(TForm) DBGrid2: TDBGrid; Edit2: TEdit;

Edit3: TEdit;

ADODataSet2: TADODataSet; DataSource2: TDataSource; ADOQuery1: TADOQuery; Label1: TLabel;

Label2: TLabel; Edit1: TEdit; Button2: TButton; Label3: TLabel;

ComboBox1: TComboBox; Label4: TLabel;

Button3: TButton;

Button5: TButton; Label5: TLabel; Label6: TLabel; Edit4: TEdit; Edit5: TEdit; BitBtn1: TBitBtn; BitBtn3: TBitBtn; Button1: TButton;

procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure Button5Click(Sender: TObject);

procedure Edit3KeyPress(Sender: TObject; var Key: Char); procedure Edit5KeyPress(Sender: TObject; var Key: Char); procedure BitBtn1Click(Sender: TObject);

procedure BitBtn3Click(Sender: TObject); procedure Button1Click(Sender: TObject);

private

{Private declarations } public

{Public declarations } end;

var

fmGruppi: TfmGruppi;

implementation uses Unit9, Unit25; {$R *.dfm}

procedure TfmGruppi.Button2Click(Sender: TObject); var s,n:string;

begin s:=Edit1.Text;

42

n:=inttostr(length(s));

ADODataSet2.Active:=false; ADODataSet2.CommandText:='select G_Gruppa,G_Kolvo

from Gruppi where left(G_Gruppa,'+n+')='''+s+''''; ADODataSet2.Active:=true;

end;

procedure TfmGruppi.Button3Click(Sender: TObject); begin

If ComboBox1.Text='Группа' then begin ADODataSet2.Active:=false;

ADODataSet2.CommandText:='select G_Gruppa,G_Kolvo from Gruppi order by G_Gruppa';

ADODataSet2.Active:=true; end

else begin

ADODataSet2.Active:=false; ADODataSet2.CommandText:='select G_Gruppa,G_Kolvo

from Gruppi order by G_kolvo'; ADODataSet2.Active:=true; end

end;

procedure TfmGruppi.FormShow(Sender: TObject); begin

ADODataSet2.Active:=true;

end;

procedure TfmGruppi.Button5Click(Sender: TObject); begin

Close;

end;

procedure TfmGruppi.Edit3KeyPress(Sender: TObject; var Key: Char);

begin

if not (key in ['0'..'9',#8]) then key:=#0; end;

procedure TfmGruppi.Edit5KeyPress(Sender: TObject; var Key: Char);

begin

if not (key in ['0'..'9',#8]) then key:=#0; end;

procedure TfmGruppi.BitBtn1Click(Sender: TObject); var

i:integer; begin

ADOQuery1.SQL.Clear;

if (Edit2.Text<>'') and (Edit3.Text<>'') then begin

ADOQuery1.SQL.Add('insert into gruppi ( G_Gruppa, G_kolvo) values ('''+Edit2.Text+''','''+Edit3.Text+''')'); ADOQuery1.ExecSQL;

fmGruppi.ADODataSet2.Active:=false;

fmGruppi.ADODataSet2.Active:=true;

Edit2.Text:='';

Edit3.Text:=''; end

else

ShowMessage('Заполнены не все поля!') end;

procedure TfmGruppi.BitBtn3Click(Sender: TObject); begin

fmUdGR.ShowModal;

end;

procedure TfmGruppi.Button1Click(Sender: TObject); var a:string;

begin

a:=fmGruppi.ADODataSet2.FieldValues['G_N']; fmGruppi.ADOQuery1.SQL.Clear;

if (Edit4.Text<>'') and (Edit5.Text<>'') then begin

fmGruppi.ADOQuery1.SQL.Add('update Gruppi set G_Gruppa='''+Edit4.Text+''', G_Kolvo='''+Edit5.Text+''' where G_N='+a+'');

fmGruppi.ADOQuery1.ExecSQL;

fmGruppi.ADODataSet2.Active:=false;

fmGruppi.ADODataSet2.Active:=True;

Edit4.Text:='';

Edit5.Text:=''; end

else

ShowMessage('Заполнены не все поля!') end

end.

unit Unit4; interface uses

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

Dialogs, DB, Grids, DBGrids, ADODB, StdCtrls, Unit8, Buttons, Unit9;

type

TfmDisciplini = class(TForm) ADODataSet1: TADODataSet; DBGrid1: TDBGrid; DataSource1: TDataSource; ADOQuery1: TADOQuery; ComboBox1: TComboBox; Edit1: TEdit;

Button4: TButton; Label1: TLabel;

ComboBox2: TComboBox; Button5: TButton;

Label2: TLabel; Button6: TButton; Button7: TButton; BitBtn1: TBitBtn; BitBtn2: TBitBtn; BitBtn3: TBitBtn;

procedure FormShow(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button7Click(Sender: TObject);

procedure ComboBox2KeyPress(Sender: TObject; var Key: Char);

procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);

procedure BitBtn1Click(Sender: TObject); procedure BitBtn2Click(Sender: TObject); procedure BitBtn3Click(Sender: TObject);

private

{Private declarations } public

{Public declarations } end;

var

fmDisciplini: TfmDisciplini;

implementation

uses Unit5, Unit13, Unit23; {$R *.dfm}

procedure TfmDisciplini.FormShow(Sender: TObject);

43

begin

 

ADODataSet1.Active:=true;

procedure TfmDisciplini.ComboBox1KeyPress(Sender: TObject;

end;

var Key: Char);

procedure TfmDisciplini.Button4Click(Sender: TObject);

begin

var s,n:string;

case key of

begin

'0'..'9' :key:=#0;

if ComboBox1.Text='Дисциплина' Then

end;

begin

end;

s:=Edit1.Text;

procedure TfmDisciplini.BitBtn1Click(Sender: TObject);

n:=inttostr(length(s));

begin

ADODataSet1.Active:=false;

fmDisDob.ShowModal;

ADODataSet1.CommandText:='select *,

end;

IIf(D_RZ,''Да'',''Нет'') as RZ, IIf(D_Ikzamen,''Да'',''Нет'') as EKZ

procedure TfmDisciplini.BitBtn2Click(Sender: TObject);

from Disciplini where left(D_Disciplina,'+n+')='''+s+'''';

begin

ADODataSet1.Active:=true

fmDisRed.ShowModal;

end

end;

else

procedure TfmDisciplini.BitBtn3Click(Sender: TObject);

begin

begin

s:=Edit1.Text;

fmUdDis.ShowModal;

n:=inttostr(length(s));

end;

ADODataSet1.Active:=false;

end.

ADODataSet1.CommandText:='select *,

unit Unit5;

IIf(D_RZ,''Да'',''Нет'') as RZ, IIf(D_Ikzamen,''Да'',''Нет'') as EKZ

 

from Disciplini where left(D_N_semestra,'+n+')='''+s+'''';

interface

ADODataSet1.Active:=true

uses

end;

Windows, Messages, SysUtils, Variants, Classes, Graphics,

end;

Controls, Forms,

procedure TfmDisciplini.Button5Click(Sender: TObject);

Dialogs, StdCtrls, Unit4, DB, ADODB;

begin

type

if ComboBox2.Text='Дисциплина' Then

TfmDisDob = class(TForm)

begin

Edit1: TEdit;

ADODataSet1.Active:=false;

Edit3: TEdit;

ADODataSet1.CommandText:='select *,

Edit4: TEdit;

IIf(D_RZ,''Да'',''Нет'') as RZ, IIf(D_Ikzamen,''Да'',''Нет'') as EKZ

Edit5: TEdit;

from Disciplini order by D_Disciplina';

ComboBox1: TComboBox;

ADODataSet1.Active:=true

ComboBox2: TComboBox;

end

Label1: TLabel;

else

Label2: TLabel;

begin

Label3: TLabel;

ADODataSet1.Active:=false;

Label4: TLabel;

ADODataSet1.CommandText:='select *,

Label5: TLabel;

IIf(D_RZ,''Да'',''Нет'') as RZ, IIf(D_Ikzamen,''Да'',''Нет'') as EKZ

Label6: TLabel;

from Disciplini order by D_N_semestra';

Label7: TLabel;

ADODataSet1.Active:=true;

Edit2: TEdit;

end;

Button2: TButton;

end;

Button1: TButton;

procedure TfmDisciplini.Button6Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

begin

procedure Button1Click(Sender: TObject);

Edit1.Clear;

procedure Edit2KeyPress(Sender: TObject; var Key: Char);

Close;

procedure Edit3KeyPress(Sender: TObject; var Key: Char);

end;

procedure FormCreate(Sender: TObject);

procedure TfmDisciplini.Button7Click(Sender: TObject);

procedure FormShow(Sender: TObject);

begin

procedure Edit4KeyPress(Sender: TObject; var Key: Char);

ADODataSet1.Active:=false;

procedure Edit5KeyPress(Sender: TObject; var Key: Char);

ADODataSet1.CommandText:='select *,

procedure ComboBox1KeyPress(Sender: TObject; var Key:

IIf(D_RZ,''Да'',''Нет'') as RZ, IIf(D_Ikzamen,''Да'',''Нет'') as EKZ

Char);

from Disciplini';

procedure ComboBox2KeyPress(Sender: TObject; var Key:

ADODataSet1.Active:=true

Char);

end;

private

procedure TfmDisciplini.ComboBox2KeyPress(Sender: TObject;

{ Private declarations }

var Key: Char);

public

begin

{ Public declarations }

case key of

end;

'0'..'9' :key:=#0;

var

end;

fmDisDob: TfmDisDob;

end;

 

 

44

implementation {$R *.dfm}

procedure TfmDisDob.Button2Click(Sender: TObject); begin

Close;

end;

procedure TfmDisDob.Button1Click(Sender: TObject); var

r,ek:string; begin

If ComboBox2.ItemIndex=0 then ek:='true' else ek:='false'; If ComboBox1.ItemIndex=0 then r:='true' else r:='false';

if ((Edit1.Text='') or (Edit2.Text='')or (Edit3.Text='') or (Edit4.Text='') or (Edit5.Text=''))then

ShowMessage('Введены не все необходимые данные') else

if Edit2.Text='0' then ShowMessage('Номер семестра не может быть нулевым')

else begin

fmDisciplini.ADOQuery1.SQL.Clear; fmDisciplini.ADOQuery1.SQL.Add('insert into disciplini (D_Disciplina, D_N_semestra, D_Lekcii, D_Laboratornii,D_Practica, D_RZ,D_Ikzamen) values ('''+Edit1.Text+'_'+Edit2.Text+''','''+Edit2.Text+''','''+Edit3.Text+'' ','''+Edit4.Text+''','''+Edit5.Text+''','+r+','+ek+')');

fmDisciplini.ADOQuery1.ExecSQL;

fmDisciplini.ADODataSet1.Active:=false;

fmDisciplini.ADODataSet1.Active:=true;

close;

end;

end;

procedure TfmDisDob.Edit2KeyPress(Sender: TObject; var Key: Char);

begin

if not (key in ['0'..'9',#8]) then key:=#0; end;

procedure TfmDisDob.Edit3KeyPress(Sender: TObject; var Key: Char);

begin

if not (key in ['0'..'9',#8]) then key:=#0; end;

procedure TfmDisDob.FormCreate(Sender: TObject); begin

Edit1.Text:='';

Edit2.Text:='';

Edit3.Text:='';

Edit4.Text:='';

Edit5.Text:='';

end;

procedure TfmDisDob.FormShow(Sender: TObject); begin

Edit1.Text:='';

Edit2.Text:='0';

Edit3.Text:='0';

Edit4.Text:='0';

Edit5.Text:='0';

end;

procedure TfmDisDob.Edit4KeyPress(Sender: TObject; var Key: Char);

begin

if not (key in ['0'..'9',#8]) then key:=#0; end;

procedure TfmDisDob.Edit5KeyPress(Sender: TObject; var Key: Char);

begin

if not (key in ['0'..'9',#8]) then key:=#0; end;

procedure TfmDisDob.ComboBox1KeyPress(Sender: TObject; var Key: Char);

begin

case key of '0'..'9' :key:=#0; end;

end;

procedure TfmDisDob.ComboBox2KeyPress(Sender: TObject; var Key: Char);

begin

case key of '0'..'9' :key:=#0; end;

end;

end.

unit Unit6;

interface uses

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

Dialogs, Grids, DBGrids, DB, ADODB, Unit8, StdCtrls, Buttons;

type

TfmTarif = class(TForm) DataSource1: TDataSource; ADODataSet1: TADODataSet; DBGrid1: TDBGrid;

Button1: TButton; Edit1: TEdit; Label2: TLabel; Button2: TButton;

ADOQuery1: TADOQuery;

procedure Button2Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure Button1Click(Sender: TObject);

procedure Edit1KeyPress(Sender: TObject; var Key: Char); private

{Private declarations } public

{Public declarations } end;

var

fmTarif: TfmTarif;

implementation {$R *.dfm}

procedure TfmTarif.Button2Click(Sender: TObject); begin

Close;

end;

procedure TfmTarif.FormShow(Sender: TObject); begin

AdoDataSet1.Active:=True;

end;

procedure TfmTarif.Button1Click(Sender: TObject); var

a:string; begin

a:=ADODataSet1.FieldValues['C_N']; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('update Categoria set

C_Tarif_v_chas='''+Edit1.Text+''' where C_N='+a+'');

45

ADOQuery1.ExecSQL;

ADODataSet1.Active:=false;

ADODataSet1.Active:=True;

end;

procedure TfmTarif.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if not (key in ['0'..'9',#8]) then key:=#0; end;

end.

nit Unit7; interface uses

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

Dialogs, StdCtrls; type

TfmRezerv = class(TForm) Edit1: TEdit;

Button1: TButton;

Button2: TButton;

Button3: TButton; OpenDialog1: TOpenDialog;

procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject);

procedure Edit1KeyPress(Sender: TObject; var Key: Char); private

{Private declarations } public

{Public declarations } end;

var

fmRezerv: TfmRezerv;

implementation {$R *.dfm}

procedure TfmRezerv.Button1Click(Sender: TObject); begin

OpenDialog1.InitialDir:= Edit1.Text;

if OpenDialog1.Execute then Edit1.Text:= ExtractFilePath(OpenDialog1.FileName); end;

procedure TfmRezerv.Button2Click(Sender: TObject); var i:integer;

d,t:string; begin i:=0;

d:=DateToStr(Date);

t:=TimeToStr(Time); for i:=1 to length(t) do

begin

if t[i]=':' then t[i]:='-'; end;

ForceDirectories(Edit1.text + 'Rezerv\'+d); // создание папки для резервной копии в папке с базой

CopyFile(pansiChar(Edit1.text+'\Oplata.mdb'),

pansiChar(Edit1.text+'Rezerv\'+d+'\OplataRezerv'+t+'.mdb'),Fals e); //Резервное копирование базы в папку DataBase/Резерв

Application.MessageBox('Резервное копирование выполнено!', '', mb_ok);

Close;

end;

procedure TfmRezerv.Button3Click(Sender: TObject); begin

Close;

end;

procedure TfmRezerv.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

case key of '0'..'9':key:=#0; end;

end;

end.

unit Unit8; interface uses

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

Dialogs, StdCtrls, Buttons,Unit1, DB, ADODB, iniFiles, XPMan;

type

TfmID = class(TForm) BitBtn1: TBitBtn; BitBtn2: TBitBtn; Button1: TButton; Par: TEdit;

Label1: TLabel;

Label2: TLabel; Polz: TComboBox;

ADOQuery1: TADOQuery; ADOConnection1: TADOConnection; ADOTable1: TADOTable; ADOQuery2: TADOQuery; XPManifest1: TXPManifest;

procedure BitBtn2Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure FormClose(Sender: TObject; var Action:

TCloseAction);

procedure FormCreate(Sender: TObject);

procedure PolzKeyPress(Sender: TObject; var Key: Char); private

{Private declarations } public

{Public declarations } end;

var

fmID: TfmID; ex:boolean;

implementation

uses Unit10, Unit4, Unit3, Unit2, Unit9; {$R *.dfm}

procedure TfmID.BitBtn2Click(Sender: TObject); begin

Close;

end;

function Enter:boolean; var f:boolean; s:integer;

begin ex:=true;

fmID.ADOQuery1.Sql.Clear;

fmID.ADOQuery1.Active:=false; fmID.ADOQuery1.SQL.Add('select * from f_flag'); fmID.ADOQuery1.Active:=true;

46

fmID.ADOQuery1.First; f:=fmID.ADOQuery1.FieldByName('flag').AsBoolean; s:=fmID.ADOQuery1.FieldByName('id').AsInteger;

if f then begin ex:=false;

showmessage('Отказано в доступе!'); main.Close; FMID.Close;

end else begin

fmID.ADOQuery1.Active:=false;

fmID.ADOQuery1.SQL.Clear; fmID.ADOQuery1.SQL.Add('update f_flag set flag=true where

id='+inttostr(s));

fmID.ADOQuery1.ExecSQL;

end;

end;

procedure TfmID.BitBtn1Click(Sender: TObject); var

IniFile : TIniFile; Baseput : string;

begin ADOConnection1.Connected:=False; ADOTable1.Active:=true;

ADOTable1.Locate('P_Polzovatel',Polz.Text,[]); AdoQuery2.SQL.Clear;

If (Polz.Text='Администратор') and (Par.Text=ADOTable1.FieldByName('P_Parol').AsString) then

begin

Main.Caption:=Main.Caption+' ---=== Режим для администратора===---';

Main.ShowModal; end

else

If (Polz.Text='Методист') and (Par.Text=ADOTable1.FieldByName('P_Parol').AsString) then begin

Main.Caption:=Main.Caption+' ---=== Режим для методиста

===---'; fmDisciplini.BitBtn3.Visible:=false; fmPrepodavateli.BitBtn3.Visible:=false; fmGruppi.BitBtn3.Visible:=false; fmGrPrep.BitBtn2.Visible:=false; main.N15.Enabled:=false; ADOConnection1.Connected := True; Main.Showmodal;

end else begin

Application.MessageBox('Пароль введен неверно!', 'Внимание!', MB_OK);

Par.Text:='';

par.SetFocus;

end;

end;

procedure TfmID.Button1Click(Sender: TObject); begin

fmPut.ShowModal;

end;

procedure TfmID.FormClose(Sender: TObject; var Action: TCloseAction);

var f:boolean; s:integer; begin

if ex then

begin fmID.ADOQuery1.SQL.Clear; fmID.ADOQuery1.Active:=false;

fmID.ADOQuery1.SQL.Add('select * from f_flag'); fmID.ADOQuery1.Active:=true; fmID.ADOQuery1.First; f:=fmID.ADOQuery1.FieldByName('flag').AsBoolean; s:=fmID.ADOQuery1.FieldByName('id').AsInteger;

fmID.ADOQuery1.Active:=false;

fmID.ADOQuery1.SQL.Clear; fmID.ADOQuery1.SQL.Add('update f_flag set flag=false where

id='+inttostr(s));

fmID.ADOQuery1.ExecSQL;

end;

end;

procedure TfmID.FormCreate(Sender: TObject); begin

enter;

end;

procedure TfmID.PolzKeyPress(Sender: TObject; var Key: Char);

begin

case key of '0'..'9' :key:=#0; end;

end;

end.

unit Unit9; interface uses

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

Dialogs,Unit8, DB, ADODB, Grids, DBGrids, StdCtrls, Buttons;

type

TfmGrPrep = class(TForm) Edit1: TEdit;

Button1: TButton;

Button2: TButton; Label2: TLabel;

ComboBox1: TComboBox; Label3: TLabel; ComboBox2: TComboBox; Button6: TButton;

ADODataSet1: TADODataSet; ADOQuery1: TADOQuery; DataSource1: TDataSource; DBGrid1: TDBGrid;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

procedure Button1Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button2Click(Sender: TObject);

procedure ComboBox2KeyPress(Sender: TObject; var Key: Char);

procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);

procedure Edit1KeyPress(Sender: TObject; var Key: Char); procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject); private

{Private declarations } public

{Public declarations }

47

end; var

fmGrPrep: TfmGrPrep;

implementation

uses Unit14, Unit16, Unit4, Unit26; {$R *.dfm}

procedure TfmGrPrep.Button1Click(Sender: TObject); var s,n:string;

begin

If ComboBox1.Text='ФИО' then begin

s:=Edit1.Text;

n:=inttostr(length(s));

ADODataSet1.Active:=false; ADODataSet1.CommandText:='select S_N,C_Kategoria,

P_FIO, D_Disciplina, G_Gruppa from Categoria, Disciplini, Gruppi, Prepodavateli, Svodnai where P_Kategoria=C_N and S_Prepodavatel=P_Tab_N and S_Gruppa=G_N and S_Disciplina=D_N and left(P_FIO,'+n+')='''+s+'''';

ADODataSet1.Active:=true;

end;

If ComboBox1.Text='Группа' then begin

s:=Edit1.Text;

n:=inttostr(length(s));

ADODataSet1.Active:=false; ADODataSet1.CommandText:='select S_N,C_Kategoria,

P_FIO, D_Disciplina, G_Gruppa from Categoria, Disciplini, Gruppi, Prepodavateli, Svodnai where P_Kategoria=C_N and S_Prepodavatel=P_Tab_N and S_Gruppa=G_N and S_Disciplina=D_N and left(G_Gruppa,'+n+')='''+s+'''';

ADODataSet1.Active:=true;

end;

If ComboBox1.Text='Дисциплина' then begin

s:=Edit1.Text;

n:=inttostr(length(s));

ADODataSet1.Active:=false; ADODataSet1.CommandText:='select S_N,C_Kategoria,

P_FIO, D_Disciplina, G_Gruppa from Categoria, Disciplini, Gruppi, Prepodavateli, Svodnai where P_Kategoria=C_N and S_Prepodavatel=P_Tab_N and S_Gruppa=G_N and S_Disciplina=D_N and left(D_Disciplina,'+n+')='''+s+'''';

ADODataSet1.Active:=true;

end;

end;

procedure TfmGrPrep.FormShow(Sender: TObject); begin

ADODataSet1.Active:=false; ADODataSet1.CommandText:='select S_N,C_Kategoria,

P_FIO, D_Disciplina, G_Gruppa from Categoria, Disciplini, Gruppi, Prepodavateli, Svodnai where P_Kategoria=C_N and S_Prepodavatel=P_Tab_N and S_Gruppa=G_N and S_Disciplina=D_N';

ADODataSet1.Active:=true;

end;

procedure TfmGrPrep.Button6Click(Sender: TObject); begin

edit1.Clear;

Close;

end;

procedure TfmGrPrep.Button2Click(Sender: TObject); begin

If ComboBox2.Text='ФИО' then begin

ADODataSet1.Active:=false; ADODataSet1.CommandText:='select S_N, C_Kategoria,

P_FIO, D_Disciplina, G_Gruppa from Categoria, Disciplini, Gruppi, Prepodavateli, Svodnai where P_Kategoria=C_N and S_Prepodavatel=P_Tab_N and S_Gruppa=G_N and S_Disciplina=D_N order by P_FIO';

ADODataSet1.Active:=true;

end;

If ComboBox2.Text='Группа' then begin ADODataSet1.Active:=false;

ADODataSet1.CommandText:='select S_N, C_Kategoria, P_FIO, D_Disciplina, G_Gruppa from Categoria, Disciplini, Gruppi, Prepodavateli, Svodnai where P_Kategoria=C_N and S_Prepodavatel=P_Tab_N and S_Gruppa=G_N and S_Disciplina=D_N order by G_Gruppa';

ADODataSet1.Active:=true;

end;

If ComboBox2.Text='Дисциплина' then begin

ADODataSet1.Active:=false; ADODataSet1.CommandText:='select S_N, C_Kategoria,

P_FIO, D_Disciplina, G_Gruppa from Categoria, Disciplini, Gruppi, Prepodavateli, Svodnai where P_Kategoria=C_N and S_Prepodavatel=P_Tab_N and S_Gruppa=G_N and S_Disciplina=D_N order by D_Disciplina';

ADODataSet1.Active:=true;

end;

end;

procedure TfmGrPrep.ComboBox2KeyPress(Sender: TObject; var Key: Char);

begin

case key of '0'..'9':key:=#0; end;

end;

procedure TfmGrPrep.ComboBox1KeyPress(Sender: TObject; var Key: Char);

begin

case key of '0'..'9':key:=#0; end;

end;

procedure TfmGrPrep.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

case key of '0'..'9':key:=#0; end;

end;

procedure TfmGrPrep.BitBtn1Click(Sender: TObject); begin

fmGrPrepDob.ShowModal

end;

procedure TfmGrPrep.BitBtn2Click(Sender: TObject); begin

fmGP.showmodal;

end;

end.

unit Unit10; interface uses

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

Dialogs, StdCtrls, Buttons, IniFiles;

48

type

TfmPut = class(TForm) Edit1: TEdit;

Label1: TLabel; Button1: TButton;

OpenDialog1: TOpenDialog; BitBtn1: TBitBtn;

BitBtn2: TBitBtn; Edit2: TEdit;

procedure Button1Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure FormShow(Sender: TObject);

private

{Private declarations } public

{Public declarations } end;

var

fmPut: TfmPut;

implementation uses Unit1, Unit8; {$R *.dfm}

procedure TfmPut.Button1Click(Sender: TObject); begin

OpenDialog1.InitialDir:= Edit1.Text; if OpenDialog1.Execute then

begin Edit1.Text:=

ExtractFilePath(OpenDialog1.FileName)+'oplata.mdb';

Edit2.Text:=ExtractFilePath(OpenDialog1.FileName);

end;

end;

procedure TfmPut.BitBtn1Click(Sender: TObject); var

IniFile : TIniFile; Baseput : string;

begin BasePut:=Edit1.Text;

fmID.ADOConnection1.Connected := False; fmID.ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ BasePut+';Persist Security Info=False'; fmID.ADOConnection1.Connected:=True; IniFile:=TIniFile.Create(ExtractFilePath(Application.ExeName)+ 'options.ini');

IniFile.WriteString('Options', 'DBPath', Edit2.Text); IniFile.Free;

fmID.ADOConnection1.Connected := True; Close;

end;

procedure TfmPut.FormShow(Sender: TObject); begin

Edit2.Visible:=false;

end;

end.

unit Unit11; interface uses

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

Dialogs,Unit8, DB, ADODB, Grids, DBGrids, StdCtrls, DBCtrls, WordXP,

OleServer;

type

TfmNagruzka = class(TForm) DBGrid1: TDBGrid; DataSource1: TDataSource; ADODataSet1: TADODataSet; ADOQuery1: TADOQuery; Button1: TButton;

Label1: TLabel; ComboBox1: TComboBox; Label2: TLabel;

Button2: TButton;

Button3: TButton;

Button4: TButton;

WordApplication1: TWordApplication; WordDocument1: TWordDocument; ComboBox3: TComboBox; ComboBox2: TComboBox; ADOQuery2: TADOQuery;

Button5: TButton; ADOQuery3: TADOQuery;

procedure Button1Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button5Click(Sender: TObject);

procedure ComboBox1KeyPress(Sender: TObject; var Key: Char);

procedure ComboBox2KeyPress(Sender: TObject; var Key: Char);

procedure ComboBox3KeyPress(Sender: TObject; var Key: Char);

private

{Private declarations } public

{Public declarations } end;

var

fmNagruzka: TfmNagruzka; implementation

{$R *.dfm}

procedure TfmNagruzka.Button1Click(Sender: TObject); var s:string;

begin

if ComboBox1.Text='Четный' then begin

ADODataSet1.Active:=false; ADODataSet1.CommandText:='select P_FIO,

C_Kategoria,Sum(iif(D_RZ,''1'',''0'')*G_kolvo*0.4*C_Tarif_v_C has+iif(D_ikzamen,''1'',''0'')*G_kolvo*0.4*C_Tarif_v_Chas)'+

'as result from Categoria, Disciplini, Gruppi, Prepodavateli, Svodnai '+

'where P_Kategoria=C_N and S_Prepodavatel=P_Tab_N'

+' and S_Gruppa=G_N and

S_Disciplina=D_N'

+' and D_N_semestra mod 2=0'+

// ' D_N_semestra in ("2","4","6","8","10")'+ ' Group by P_FIO, C_Kategoria';

ADODataSet1.Active:=true;

DBGrid1.Columns[2].Visible:=false; end

else begin

ADODataSet1.Active:=false;

49

Соседние файлы в папке Курсовые работы