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

5.5 Программно-аппаратные ресурсы пк

Минимальными требованиями к аппаратному и программному обеспечению, для корректной работы программы:

– процессор: Pentium II 350 МГц и выше;

– видеокарта NVIDIA Geforce3 или выше;

– объем оперативной памяти: 5Мбайт;

– Операционная система: Windows XP, Windows Vista, Windows 7;

– свободное место на жестком диске не менее 50 Мбайт;

– наличие мыши.

6 Применение

Данную программу могут использовать администраторы интернет-кофе, компьютерных клубов и абсолютно любые пользователи, чему способствует несложный и интуитивно понятный интерфейс. Программа проста в использовании и не создает особых трудностей при ее использовании, особенно для тех, кто хоть раз имели дело с ПК. База данных «Интернет-салон» является интуитивно-понятным программным продуктом, обладающим приятным графическим интерфейсом.

Заключение

Данный курсовой проект создан в качестве программы базы данных для компьютерных заведений, для упрощения ведения документации, посещаемости и занятости компьютеров в данном заведении администратору. Программа проста и удобна в управлении, имеет приятный интерфейс и не требует больших ресурсных затрат. Программное средство функционирует должным образом и готово к применению в любом интернет-кофе, компьютерном клубе.

Список использованных источников

  1. Delphi. Разработка баз данных Сорокин А.В. – СПб.: Питер, 2005. — 477 с.

  2. А.Я. Архангельский Приемы программирования в Delphi .-М.:ЗАО «Издательство БИНОМ», 2003г.

  3. А.Я. Архангельский Программирование в Delphi 7.-М.:ООО «Бином-Пресс», 2003г.-1152с.

  4. Сухарев М.В. Основы Delphi. Профессиональный подход. – СПб.: Наука и Техника, 2004. – 600 с.: ил.

  5. Кэнту М. Delphi 7: Для профессионалов. – СПб.: Питер, 2004. – 1101 с.: ил.

  6. Фленов М.Е. Библия Delphi. – СПб.: БХВ-Петербург, 2004. – 880 с.: ил.

  7. Фленов М.Е. Программирование в Delphi глазами хакера. – СПб.: БХВ-Петербург, 2004. – 368 с.: ил.

  8. Различные интернет-ресурсы, в том числе поисковая система google.com

Приложения

Код программы

Главное окно:

unit main;

interface

uses

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

Dialogs, ExtCtrls, Buttons, StdCtrls, ComCtrls, DBCtrls, Menus, Grids,

DBGrids, DB, ADODB, ComObj, XPMan;

type

Tf_Main = class(TForm)

Ecran: TImage;

ScreenPanel: TPanel;

Chrono: TLabel;

StatusBar: TStatusBar;

Led1: TShape;

Led2: TShape;

Led3: TShape;

Led4: TShape;

Led5: TShape;

Led6: TShape;

Led7: TShape;

Led8: TShape;

Led9: TShape;

Led10: TShape;

Led11: TShape;

Led12: TShape;

Led13: TShape;

Led14: TShape;

Led15: TShape;

Led16: TShape;

Led17: TShape;

Led18: TShape;

Led19: TShape;

Led20: TShape;

Start: TSpeedButton;

Pause: TSpeedButton;

Stop: TSpeedButton;

ListePostes: TPageControl;

TabSheet1: TTabSheet;

Pause1: TGroupBox;

LabPDebut1: TLabel;

LabTotal1: TLabel;

EditPDebut1: TEdit;

EditPTotal1: TEdit;

Rez1: TGroupBox;

LabOccupation1: TLabel;

LabStart1: TLabel;

LabEnd1: TLabel;

LabDuree1: TLabel;

Utilisation1: TGroupBox;

LabUDebut1: TLabel;

LabUFin1: TLabel;

EditUDebut1: TEdit;

EditUFin1: TEdit;

TabSheet2: TTabSheet;

TabSheet3: TTabSheet;

TabSheet4: TTabSheet;

TabSheet5: TTabSheet;

TabSheet6: TTabSheet;

TabSheet7: TTabSheet;

TabSheet8: TTabSheet;

TabSheet9: TTabSheet;

TabSheet10: TTabSheet;

TabSheet11: TTabSheet;

TabSheet12: TTabSheet;

TabSheet13: TTabSheet;

TabSheet14: TTabSheet;

TabSheet15: TTabSheet;

TabSheet16: TTabSheet;

TabSheet17: TTabSheet;

TabSheet18: TTabSheet;

TabSheet19: TTabSheet;

TabSheet20: TTabSheet;

Pause2: TGroupBox;

LabPDebut2: TLabel;

LabPTotal2: TLabel;

EditPDebut2: TEdit;

EditPTotal2: TEdit;

Rez2: TGroupBox;

LabOccupation2: TLabel;

LabStart2: TLabel;

LabEnd2: TLabel;

LabDuree2: TLabel;

Utilisation2: TGroupBox;

LabUDebut2: TLabel;

LabUFin2: TLabel;

EditUDebut2: TEdit;

EditUFin2: TEdit;

Pause3: TGroupBox;

LabPDebut3: TLabel;

LabPTotal3: TLabel;

EditPDebut3: TEdit;

EditPTotal3: TEdit;

Rez3: TGroupBox;

LabOccupation3: TLabel;

LabStart3: TLabel;

LabEnd3: TLabel;

LabDuree3: TLabel;

Utilisation3: TGroupBox;

LabUDebut3: TLabel;

LabUFin3: TLabel;

EditUDebut3: TEdit;

EditUFin3: TEdit;

Pause4: TGroupBox;

LabPDebut4: TLabel;

LabPTotal4: TLabel;

EditPDebut4: TEdit;

EditPTotal4: TEdit;

Rez4: TGroupBox;

LabOccupation4: TLabel;

LabStart4: TLabel;

LabEnd4: TLabel;

LabDuree4: TLabel;

Utilisation4: TGroupBox;

LabUDebut4: TLabel;

LabUFin4: TLabel;

EditUDebut4: TEdit;

EditUFin4: TEdit;

Pause5: TGroupBox;

LabPDebut5: TLabel;

LabPTotal5: TLabel;

EditPDebut5: TEdit;

EditPTotal5: TEdit;

Rez5: TGroupBox;

LabOccupation5: TLabel;

LabStart5: TLabel;

LabEnd5: TLabel;

LabDuree5: TLabel;

Utilisation5: TGroupBox;

LabUDebut5: TLabel;

LabUFin5: TLabel;

EditUDebut5: TEdit;

EditUFin5: TEdit;

Pause6: TGroupBox;

LabPDebut6: TLabel;

LabPTotal6: TLabel;

EditPDebut6: TEdit;

EditPTotal6: TEdit;

Rez6: TGroupBox;

LabOccupation6: TLabel;

LabStart6: TLabel;

LabEnd6: TLabel;

LabDuree6: TLabel;

Utilisation6: TGroupBox;

LabUDebut6: TLabel;

LabUFin6: TLabel;

EditUDebut6: TEdit;

EditUFin6: TEdit;

Pause7: TGroupBox;

LabPDebut7: TLabel;

LabPTotal7: TLabel;

EditPDebut7: TEdit;

EditPTotal7: TEdit;

Rez7: TGroupBox;

LabOccupation7: TLabel;

LabStart7: TLabel;

LabEnd7: TLabel;

LabDuree7: TLabel;

Utilisation7: TGroupBox;

LabUDebut7: TLabel;

LabUFin7: TLabel;

EditUDebut7: TEdit;

EditUFin7: TEdit;

Pause8: TGroupBox;

LabPDebut8: TLabel;

LabPTotal8: TLabel;

EditPDebut8: TEdit;

EditPTotal8: TEdit;

Rez8: TGroupBox;

LabOccupation8: TLabel;

LabStart8: TLabel;

LabEnd8: TLabel;

LabDuree8: TLabel;

Utilisation8: TGroupBox;

LabUDebut8: TLabel;

LabUFin8: TLabel;

EditUDebut8: TEdit;

EditUFin8: TEdit;

Pause9: TGroupBox;

LabPDebut9: TLabel;

LabPTotal9: TLabel;

EditPDebut9: TEdit;

EditPTotal9: TEdit;

Rez9: TGroupBox;

LabOccupation9: TLabel;

LabStart9: TLabel;

LabEnd9: TLabel;

LabDuree9: TLabel;

Utilisation9: TGroupBox;

LabUDebut9: TLabel;

LabUFin9: TLabel;

EditUDebut9: TEdit;

EditUFin9: TEdit;

Pause10: TGroupBox;

LabPDebut10: TLabel;

LabPTotal10: TLabel;

EditPDebut10: TEdit;

EditPTotal10: TEdit;

Rez10: TGroupBox;

LabOccupation10: TLabel;

LabStart10: TLabel;

LabEnd10: TLabel;

LabDuree10: TLabel;

Utilisation10: TGroupBox;

LabUDebut10: TLabel;

LabUFin10: TLabel;

EditUDebut10: TEdit;

EditUFin10: TEdit;

Pause11: TGroupBox;

LabPDebut11: TLabel;

LabPTotal11: TLabel;

EditPDebut11: TEdit;

EditPTotal11: TEdit;

Rez11: TGroupBox;

LabOccupation11: TLabel;

LabStart11: TLabel;

LabEnd11: TLabel;

LabDuree11: TLabel;

Utilisation11: TGroupBox;

LabUDebut11: TLabel;

LabUFin11: TLabel;

EditUDebut11: TEdit;

EditUFin11: TEdit;

Pause12: TGroupBox;

LabPDebut12: TLabel;

LabPTotal12: TLabel;

EditPDebut12: TEdit;

EditPTotal12: TEdit;

Rez12: TGroupBox;

LabOccupation12: TLabel;

LabStart12: TLabel;

LabEnd12: TLabel;

LabDuree12: TLabel;

Utilisation12: TGroupBox;

LabUDebut12: TLabel;

LabUFin12: TLabel;

EditUDebut12: TEdit;

EditUFin12: TEdit;

Pause13: TGroupBox;

LabPDebut13: TLabel;

LabPTotal13: TLabel;

EditPDebut13: TEdit;

EditPTotal13: TEdit;

Rez13: TGroupBox;

LabOccupation13: TLabel;

LabStart13: TLabel;

LabEnd13: TLabel;

LabDuree13: TLabel;

Utilisation13: TGroupBox;

LabUDebut13: TLabel;

LabUFin13: TLabel;

EditUDebut13: TEdit;

EditUFin13: TEdit;

Pause14: TGroupBox;

LabPDebut14: TLabel;

LabPTotal14: TLabel;

EditPDebut14: TEdit;

EditPTotal14: TEdit;

Rez14: TGroupBox;

LabOccupation14: TLabel;

LabStart14: TLabel;

LabEnd14: TLabel;

LabDuree14: TLabel;

Utilisation14: TGroupBox;

LabUDebut14: TLabel;

LabUFin14: TLabel;

EditUDebut14: TEdit;

EditUFin14: TEdit;

Pause15: TGroupBox;

LabPDebut15: TLabel;

LabPTotal15: TLabel;

EditPDebut15: TEdit;

EditPTotal15: TEdit;

Rez15: TGroupBox;

LabOccupation15: TLabel;

LabStart15: TLabel;

LabEnd15: TLabel;

LabDuree15: TLabel;

Utilisation15: TGroupBox;

LabUDebut15: TLabel;

LabUFin15: TLabel;

EditUDebut15: TEdit;

EditUFin15: TEdit;

Pause16: TGroupBox;

LabPDebut16: TLabel;

LabPTotal16: TLabel;

EditPDebut16: TEdit;

EditPTotal16: TEdit;

Rez16: TGroupBox;

LabOccupation16: TLabel;

LabStart16: TLabel;

LabEnd16: TLabel;

LabDuree16: TLabel;

Utilisation16: TGroupBox;

LabUDebut16: TLabel;

LabUFin16: TLabel;

EditUDebut16: TEdit;

EditUFin16: TEdit;

Pause17: TGroupBox;

LabPDebut17: TLabel;

LabPTotal17: TLabel;

EditPDebut17: TEdit;

EditPTotal17: TEdit;

Rez17: TGroupBox;

LabOccupation17: TLabel;

LabStart17: TLabel;

LabEnd17: TLabel;

LabDuree17: TLabel;

Utilisation17: TGroupBox;

LabUDebut17: TLabel;

LabUFin17: TLabel;

EditUDebut17: TEdit;

EditUFin17: TEdit;

Pause18: TGroupBox;

LabPDebut18: TLabel;

LabPTotal18: TLabel;

EditPDebut18: TEdit;

EditPTotal18: TEdit;

Rez18: TGroupBox;

LabOccupation18: TLabel;

LabStart18: TLabel;

LabEnd18: TLabel;

LabDuree18: TLabel;

Utilisation18: TGroupBox;

LabUDebut18: TLabel;

LabUFin18: TLabel;

EditUDebut18: TEdit;

EditUFin18: TEdit;

Pause19: TGroupBox;

LabPDebut19: TLabel;

LabPTotal19: TLabel;

EditPDebut19: TEdit;

EditPTotal19: TEdit;

Rez19: TGroupBox;

LabOccupation19: TLabel;

LabStart19: TLabel;

LabEnd19: TLabel;

LabDuree19: TLabel;

Utilisation19: TGroupBox;

LabUDebut19: TLabel;

LabUFin19: TLabel;

EditUDebut19: TEdit;

EditUFin19: TEdit;

Pause20: TGroupBox;

LabPDebut20: TLabel;

LabPTotal20: TLabel;

EditPDebut20: TEdit;

EditPTotal20: TEdit;

Rez20: TGroupBox;

LabOccupation20: TLabel;

LabStart20: TLabel;

LabEnd20: TLabel;

LabDuree20: TLabel;

Utilisation20: TGroupBox;

LabUDebut20: TLabel;

LabUFin20: TLabel;

EditUDebut20: TEdit;

EditUFin20: TEdit;

StatsBar: TTimer;

BtnFiches: TSpeedButton;

BtnSystray: TSpeedButton;

BtnBPropos: TSpeedButton;

BtnTri: TSpeedButton;

BtnFacture: TSpeedButton;

SystrayMenu: TPopupMenu;

Restaurer1: TMenuItem;

APropos1: TMenuItem;

Quitter1: TMenuItem;

Clients: TDBGrid;

Compteur: TTimer;

ADOConnection1: TADOConnection;

ADOCommand1: TADOCommand;

DataSource1: TDataSource;

XPLook: TXPManifest;

LabOccupation21: TLabel;

DayBtn: TSpeedButton;

MonBtn: TSpeedButton;

TableBtn: TSpeedButton;

ADOTable1: TADOTable;

procedure StatsBarTimer(Sender: TObject);

procedure BtnFactureClick(Sender: TObject);

procedure BtnBProposClick(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure BtnSystrayClick(Sender: TObject);

procedure TrayIconDblClick(Sender: TObject);

procedure QuitterClick(Sender: TObject);

procedure StartClick(Sender: TObject);

procedure PauseClick(Sender: TObject);

procedure StopClick(Sender: TObject);

procedure ListePostesChange(Sender: TObject);

procedure CompteurTimer(Sender: TObject);

procedure BtnFichesClick(Sender: TObject);

procedure ClientsDblClick(Sender: TObject);

procedure BtnTriClick(Sender: TObject);

procedure TableBtnClick(Sender: TObject);

procedure DayBtnClick(Sender: TObject);

procedure MonBtnClick(Sender: TObject);

private

{ }

public

{ }

end;

var

f_Main: Tf_Main;

i : integer;

Time1, Time2, Time3 : TDateTime;

Led0 : TShape;

EditUDebut0, EditUFin0, EditPDebut0, EditPTotal0 : TEdit;

LabOccupation0, LabStart0, LabEnd0, LabDuree0 : TLabel;

implementation

uses APropos, Clients, Tri,Month, BPropos, DaTime, DayMonth, Day;

{$R *.dfm}

procedure Tf_Main.ListePostesChange(Sender: TObject);

begin

i:= ListePostes.TabIndex + 1;

Led0 := TShape(FindComponent('Led'+IntToStr(i)));

EditUDebut0 := TEdit(FindComponent('EditUDebut'+IntToStr(i)));

EditUFin0 := TEdit(FindComponent('EditUFin'+IntToStr(i)));

EditPDebut0 := TEdit(FindComponent('EditPDebut'+IntToStr(i)));

EditPTotal0 := TEdit(FindComponent('EditPTotal'+IntToStr(i)));

LabOccupation0 := TLabel(FindComponent('LabOccupation'+IntToStr(i)));

if Led0.Brush.Color = clRed then LabOccupation21.Caption := ''

else if i < 10 then LabOccupation21.Caption := '0'+IntToStr(i)+' компьютер активен'

else LabOccupation21.Caption := IntToStr(i)+ ' компьютер активен';

LabStart0 := TLabel(FindComponent('LabStart'+IntToStr(i)));

LabEnd0 := TLabel(FindComponent('LabEnd'+IntToStr(i)));

LabDuree0 := TLabel(FindComponent('LabDuree'+IntToStr(i)));

end;

procedure Tf_Main.StartClick(Sender: TObject);

begin

if Led0.Brush.Color = clRed then

begin

TimeForm.ADOTable1.Append;

TimeForm.ADOTable1.FieldByName('PreNomer').AsString:=LabOccupation0.Caption;

TimeForm.ADOTable1.FieldByName('NTabDate').AsString:=DateToStr(Date);

TimeForm.ADOTable1.FieldByName('NTabTime').AsString:=TimeToStr(Time);

TimeForm.adotable1.post;

EditUDebut0.Text := DateTimeToStr(Now);

LabStart0.Caption := 'Начало использования:'+FormatDateTime('dddddd в hh:nn:ss',Now);

if i < 10 then LabOccupation0.Caption := '0'+IntToStr(i)+' компьютер'

else LabOccupation0.Caption := IntToStr(i)+ ' компьютер';

if i < 10 then LabOccupation21.Caption := '0'+IntToStr(i)+' компьютер активен'

else LabOccupation21.Caption := IntToStr(i)+ ' компьютер активен';

LabOccupation0.Caption := LabOccupation0.Caption+' занимают : ';

LabEnd0.Caption := 'Конец использования:';

LabDuree0.Caption := 'Продолжительность использования:';

EditUFin0.Text := '';

EditPTotal0.Text := '00:00:00';

Led0.Brush.Color := clBlue;

end

else if Led0.Brush.Color = clYellow then ShowMessage('Это сообщение приостановлено!')

else if Led0.Brush.Color = clBlue then ShowMessage('Это сообщение уже используется!');

end;

procedure Tf_Main.PauseClick(Sender: TObject);

begin

if Led0.Brush.Color = clBlue then

begin

EditPDebut0.Text := DateTimeToStr(Now);

Led0.Brush.Color := clYellow

end

else if Led0.Brush.Color = clYellow then

begin

Time3 := StrToDateTime(EditPTotal0.Text);

Time1 := StrToDateTime(EditPDebut0.Text);

Time2 := Now;

Time1 := Time2 - Time1 + Time3;

EditPTotal0.Text := TimeToStr(Time1);

EditPDebut0.Text := '';

Led0.Brush.Color := clBlue

end

else if Led0.Brush.Color = clRed then ShowMessage('Эта позиция является остановка!');

end;

procedure Tf_Main.StopClick(Sender: TObject);

begin

if Led0.Brush.Color = clBlue then

begin

EditUFin0.Text := DateTimeToStr(Now);

Time2 := Now;

Time1 := StrToDateTime(EditUDebut0.Text);

Time3 := StrToDateTime(EditPTotal0.Text);

LabOccupation21.Caption := '';

LabEnd0.Caption := 'Конец использования:'+FormatDateTime('dddddd в hh:nn:ss',Time2);

LabDuree0.Caption := 'Продолжительность использования:'+TimeToStr(Time2 - Time1 - Time3);

Led0.Brush.Color := clRed

end

else if Led0.Brush.Color = clYellow then ShowMessage('Это сообщение приостановлено!')

else if Led0.Brush.Color = clRed then ShowMessage('Это сообщение уже остановлено!');

Posec.ADOTable1.Active:=false;

Poz.ADOTable1.Active:=false;

Posec.ADOTable1.Active:=true;

Poz.ADOTable1.Active:=true;

end;

procedure Tf_Main.CompteurTimer(Sender: TObject);

begin

if Led0.Brush.Color = clBlue then

begin

Time1 := StrToDateTime(EditUDebut0.Text);

Time2 := Now;

Chrono.Font.Color := clWhite;

Chrono.Caption := TimeToStr(Time2-Time1);

end

else if Led0.Brush.Color = clYellow then

begin

Time3 := StrToDateTime(EditPTotal0.Text);

Time1 := StrToDateTime(EditPDebut0.Text);

Time2 := Now;

Chrono.Font.Color := clYellow;

Chrono.Caption := TimeToStr(Time2 - Time1 + Time3);

end

else if Led0.Brush.Color = clRed then

begin

Chrono.Font.Color := clRed;

Chrono.Caption := '00:00:00';

end;

end;

procedure Tf_Main.StatsBarTimer(Sender: TObject);

begin

StatusBar.Panels[0].Text := FormatDateTime('dddd dd mmmm yyyy',Date);

StatusBar.Panels[1].Text := FormatDateTime('hh:nn:ss',Time);

StatusBar.Panels[3].Text := IntToStr(ADOTable1.RecordCount);

end;

procedure Tf_Main.FormCreate(Sender: TObject);

var Catalog : OLEVariant;

BDPath, BDNew, BDStruct : String;

begin

ListePostesChange(sender);

BDPath := GetCurrentDir+'\Chronos.mdb';

BDNew := 'Provider=Microsoft.Jet.OLEDB.4.0;' +

'Data Source=' + BDPath + ';' +

'User ID=Admin;' +

'Mode=Share Deny None;Extended Properties="";' +

'Jet OLEDB:Engine Type=5;';

BDSTruct := 'CREATE TABLE Clients (' +

'id COUNTER PRIMARY KEY,' +

'Numero INTEGER,' +

'Nom VARCHAR(50),' +

'Prenom VARCHAR(30),' +

'Telephone VARCHAR(10),' +

'Portable VARCHAR(10),' +

'Naissance VARCHAR(10),' +

'Adresse MEMO,' +

'Email VARCHAR(100))';

if FileExists(BDPath) then

begin

ADOConnection1.ConnectionString := BDNew ;

ADOTable1.Active := True;

end

else

begin

Catalog := CreateOLEObject('ADOX.Catalog');

Catalog.Create(BDNew);

ADOConnection1.ConnectionString := BDNew;

ADOConnection1.LoginPrompt := False;

ADOConnection1.Connected := True;

ADOCommand1.Connection := ADOConnection1;

ADOCommand1.CommandText := BDSTruct;

ADOCommand1.Execute;

ADOTable1.Active;

end;

end;

procedure Tf_Main.ClientsDblClick(Sender: TObject);

begin

LabOccupation0.Caption := LabOccupation0.Caption + ' '

+ ADOTable1.FieldByName('Nom').AsString

+ ' '

+ ADOTable1.FieldByName('Prenom').AsString;

end;

procedure Tf_Main.BtnTriClick(Sender: TObject);

begin

Triage.Show;

end;

procedure Tf_Main.BtnFactureClick(Sender: TObject);

var

XLapp, Sheet, Colum:Variant;

index,i:Integer;

begin

XLApp:= CreateOleObject('Excel.Application');

XLApp.Visible:=true;

XLApp.Workbooks.Add(-4167);

XLApp.Workbooks[1].WorkSheets[1].Name:='Отчёт';

Colum:=XLApp.Workbooks[1].WorkSheets['Отчёт'].Columns;

Colum.Columns[1].ColumnWidth:=4;

Colum.Columns[2].ColumnWidth:=10;

Colum.Columns[3].ColumnWidth:=15;

Colum.Columns[4].ColumnWidth:=10;

Colum.Columns[5].ColumnWidth:=16;

Colum.Columns[6].ColumnWidth:=16;

Colum.Columns[7].ColumnWidth:=35;

Colum.Columns[8].ColumnWidth:=20;

Colum:=XLApp.Workbooks[1].WorkSheets['Отчёт'].Rows;

Colum.Rows[2].Font.Bold:=true;

Colum.Rows[1].Font.Bold:=true;

Colum.Rows[1].Font.Color:=clBlue;

Colum.Rows[1].Font.Size:=11;

Colum.Rows[2].Font.Size:=11;

Colum.Rows.Font.Name:=' MS Sans Serif';

Sheet:=XLApp.Workbooks[1].WorkSheets['Отчёт'];

Sheet.Cells[1,2]:=',,База данных "Интернет-салон"" '+DateToStr(Date);

Sheet.Cells[2,1]:='id';

Sheet.Cells[2,2]:='Имя';

Sheet.Cells[2,3]:='Фамилия';

Sheet.Cells[2,4]:='Дом. Тел';

Sheet.Cells[2,5]:='Моб. телефон';

Sheet.Cells[2,6]:='Дата рождения';

Sheet.Cells[2,7]:='Адрес';

Sheet.Cells[2,8]:='Email';

index :=3;

f_main.ADOTable1.First;

for i:=0 to f_main.ADOTable1.RecordCount-1 do

begin

Sheet.Cells[index,1]:= f_main.ADOTable1.Fields.Fields[1].AsString;

Sheet.Cells[index,2]:= f_main.ADOTable1.Fields.Fields[2].AsString;

Sheet.Cells[index,3]:= f_main.ADOTable1.Fields.Fields[3].AsString;

Sheet.Cells[index,4]:= f_main.ADOTable1.Fields.Fields[4].AsString;

Sheet.Cells[index,5]:= f_main.ADOTable1.Fields.Fields[5].AsString;

Sheet.Cells[index,6]:= f_main.ADOTable1.Fields.Fields[6].AsString;

Sheet.Cells[index,7]:= f_main.ADOTable1.Fields.Fields[7].AsString;

Sheet.Cells[index,8]:= f_main.ADOTable1.Fields.Fields[8].AsString;

Inc(index);

f_main.ADOTable1.Next;

end;

XLapp.ActiveSheet.PrintOut;

end;

procedure Tf_Main.BtnFichesClick(Sender: TObject);

begin

Infos.Show;

end;

procedure Tf_Main.BtnSystrayClick(Sender: TObject);

begin

Summa.Show;

end;

procedure Tf_Main.TrayIconDblClick(Sender: TObject);

begin

Show();

WindowState := wsNormal;

Application.BringToFront;

end;

procedure Tf_Main.QuitterClick(Sender: TObject);

begin

Close;

end;

procedure Tf_Main.BtnBProposClick(Sender: TObject);

begin

B_Propos.Show;

end;

procedure Tf_Main.TableBtnClick(Sender: TObject);

begin

TimeForm.Show;

end;

procedure Tf_Main.DayBtnClick(Sender: TObject);

begin

Poz.Show;

end;

procedure Tf_Main.MonBtnClick(Sender: TObject);

begin

Posec.Show;

end;

end.

Информация:

unit Clients;

interface

uses

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

Dialogs, ExtCtrls, DBCtrls, StdCtrls, Mask, Grids, DBGrids, DB, ADODB;

type

TInfos = class(TForm)

DBGrid1: TDBGrid;

name: TDBEdit;

family: TDBEdit;

LabNom: TLabel;

LabPrenom: TLabel;

LabFixe: TLabel;

LabPortable: TLabel;

hometel: TDBEdit;

mobtel: TDBEdit;

LabAdresse: TLabel;

LabEmail: TLabel;

DBNavigator1: TDBNavigator;

LabNaissance: TLabel;

LabNumero: TLabel;

birth: TDBEdit;

Email: TDBEdit;

Client: TDBEdit;

ADOConnection1: TADOConnection;

ADOTable1: TADOTable;

DataSource1: TDataSource;

Adress: TDBMemo;

procedure FormCreate(Sender: TObject);

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

private

{ }

public

{ }

end;

var

Infos: TInfos;

implementation

uses main, Month;

{$R *.dfm}

procedure TInfos.FormCreate(Sender: TObject);

var BDPath, BDNew : String;

begin

BDPath := GetCurrentDir+'\Chronos.mdb';

BDNew := 'Provider=Microsoft.Jet.OLEDB.4.0;' +

'Data Source=' + BDPath + ';' +

'User ID=Admin;' +

'Mode=Share Deny None;Extended Properties="";' +

'Jet OLEDB:Engine Type=5;';

ADOConnection1.ConnectionString := BDNew;

ADOTable1.Active := True;

end;

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

begin

f_Main.ADOTable1.Close;

f_Main.ADOTable1.Open;

end;

end.

Сортировка:

unit Tri;

interface

uses

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

Dialogs, StdCtrls, ExtCtrls;

type

TTriage = class(TForm)

TriBox: TRadioGroup;

procedure TriBoxClick(Sender: TObject);

private

{ }

public

{ }

end;

var

Triage: TTriage;

implementation

uses main, Clients, Month;

{$R *.dfm}

procedure TTriage.TriBoxClick(Sender: TObject);

begin

case TriBox.ItemIndex of

0: begin

f_Main.ADOTable1.IndexFieldNames := 'id';

Infos.ADOTable1.IndexFieldNames := 'id';

end;

1: begin

f_Main.ADOTable1.IndexFieldNames := 'Numero';

Infos.ADOTable1.IndexFieldNames := 'Numero';

end;

2: begin

f_Main.ADOTable1.IndexFieldNames := 'Nom';

Infos.ADOTable1.IndexFieldNames := 'Nom';

end;

3: begin

f_Main.ADOTable1.IndexFieldNames := 'Prenom';

Infos.ADOTable1.IndexFieldNames := 'Prenom';

end;

end;

end;

end.

Данные о посещаемости:

unit Month;

interface

uses

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

Dialogs, ExtCtrls, DBCtrls, StdCtrls, Mask, Grids, DBGrids, DB, ADODB;

type

TSumma = class(TForm)

DataSource1: TDataSource;

ADOConnection1: TADOConnection;

ADOTable1: TADOTable;

Month: TDBGrid;

DBNavigator1: TDBNavigator;

procedure FormCreate(Sender: TObject);

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

private

{ Private declarations }

public

{ Public declarations }

end;

var

Summa: TSumma;

implementation

uses main;

{$R *.dfm}

procedure TSumma.FormCreate(Sender: TObject);

var BDPath1, BDNew1 : String;

begin

BDPath1 := GetCurrentDir+'\Chronos.mdb';

BDNew1 := 'Provider=Microsoft.Jet.OLEDB.4.0;' +

'Data Source=' + BDPath1 + ';' +

'User ID=Admin;' +

'Mode=Share Deny None;Extended Properties="";' +

'Jet OLEDB:Engine Type=5;';

ADOConnection1.ConnectionString := BDNew1;

ADOTable1.Active := True;

end;

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

begin

f_Main.ADOTable1.Close;

f_Main.ADOTable1.Open;

end;

end.

Дата и время посещений:

unit DaTime;

interface

uses

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

Dialogs, ExtCtrls, DBCtrls, Grids, DBGrids, DB, ADODB;

type

TTimeForm = class(TForm)

ADOConnection1: TADOConnection;

ADOTable1: TADOTable;

DataSource1: TDataSource;

DaTime: TDBGrid;

DBNavigator1: TDBNavigator;

procedure FormCreate(Sender: TObject);

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

private

{ Private declarations }

public

{ Public declarations }

end;

var

TimeForm: TTimeForm;

implementation

uses main;

{$R *.dfm}

procedure TTimeForm.FormCreate(Sender: TObject);

var BDPath, BDNew : String;

begin

BDPath := GetCurrentDir+'\Chronos.mdb';

BDNew := 'Provider=Microsoft.Jet.OLEDB.4.0;' +

'Data Source=' + BDPath + ';' +

'User ID=Admin;' +

'Mode=Share Deny None;Extended Properties="";' +

'Jet OLEDB:Engine Type=5;';

ADOConnection1.ConnectionString := BDNew;

ADOTable1.Active := True;

end;

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

begin

f_Main.ADOTable1.Close;

f_Main.ADOTable1.Open;

end;

end.

Посещений за день:

unit Day;

interface

uses

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

Dialogs, StdCtrls, ComCtrls, DB, ADODB;

type

TPoz = class(TForm)

DateTimePicker1: TDateTimePicker;

BtnD: TButton;

ADOTable1: TADOTable;

ADOConnection1: TADOConnection;

DataSource1: TDataSource;

procedure BtnDClick(Sender: TObject);

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Poz: TPoz;

implementation

uses Main, DaTime, Month, DayMonth;

{$R *.dfm}

procedure TPoz.BtnDClick(Sender: TObject);

var c:tdate;

begin

DateTimePicker1.Date:=StrToDate(FormatDateTime('dd.mm.yy',Date));

ADOTable1.filter:='NTabDate='+DateToStr(DateTimePicker1.Date);

ADOTable1.filtered:=true;

Showmessage('За ' + DateToStr(DateTimePicker1.Date) + ' посещений ' + IntToStr(ADOTable1.RecordCount));

Summa.ADOTable1.Append;

Summa.adotable1.fieldbyname('PreDa').AsString:=FormatDateTime('dd.mm.yy',Date);

Summa.ADOTable1.FieldByName('NDay').AsString:=IntToStr(ADOTable1.RecordCount);

Summa.ADOTable1.FieldByName('NMonth').AsString:=IntToStr(Posec.ADOTable1.RecordCount);

Summa.ADOTable1.Post;

end;

procedure TPoz.FormCreate(Sender: TObject);

var BDPath, BDNew : String;

begin

BDPath := GetCurrentDir+'\Chronos.mdb';

BDNew := 'Provider=Microsoft.Jet.OLEDB.4.0;' +

'Data Source=' + BDPath + ';' +

'User ID=Admin;' +

'Mode=Share Deny None;Extended Properties="";' +

'Jet OLEDB:Engine Type=5;';

ADOConnection1.ConnectionString := BDNew;

ADOTable1.Active := True;

end;

end.

Посещений в указанный период:

unit DayMonth;

interface

uses

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

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

type

TPosec = class(TForm)

ADOConnection1: TADOConnection;

DataSource1: TDataSource;

ADOTable1: TADOTable;

DateTimePicker1: TDateTimePicker;

DateTimePicker2: TDateTimePicker;

BtnPos: TButton;

procedure BtnPosClick(Sender: TObject);

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Posec: TPosec;

implementation

uses Main, DaTime, Month;

{$R *.dfm}

procedure TPosec.BtnPosClick(Sender: TObject);

begin

ADOTable1.filter:='NTabDate>='+DateToStr(DateTimePicker1.Date)+' and NTabDate<='+DateToStr(DateTimePicker2.Date);

ADOTable1.filtered:=true;

Showmessage('C ' + DateToStr(DateTimePicker1.Date) + ' до ' + DateToStr(DateTimePicker2.Date) + ' посещений ' + IntToStr(ADOTable1.RecordCount));

end;

procedure TPosec.FormCreate(Sender: TObject);

var BDPath, BDNew : String;

begin

BDPath := GetCurrentDir+'\Chronos.mdb';

BDNew := 'Provider=Microsoft.Jet.OLEDB.4.0;' +

'Data Source=' + BDPath + ';' +

'User ID=Admin;' +

'Mode=Share Deny None;Extended Properties="";' +

'Jet OLEDB:Engine Type=5;';

ADOConnection1.ConnectionString := BDNew;

ADOTable1.Active := True;

end;

end.

50