Описание переменных и компонентов

ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА

____________________________________________________________

(Тема выпускной квалификационной работы)

____________________________________________________________

Автор                             ________________ _________ _______________

                                                                                (Подпись)                           (Дата)                 (Фамилия, инициалы)

Руководитель               ________________ _________ _______________

                                                                                (Подпись)                           (Дата)                 (Фамилия, инициалы)

 

 

ВОРОНЕЖ – 2018 г.


Оглавление

Введение. 3

Постановка цели и задач. 4

Блок-схема. 39

Описание переменных и компонентов. 40

Отчет о тестировании. 41

Заключение. 42

Список литературы.. 43

 


 


Введение

Расчет зарплат в сфере услуг

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

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

С появлением ЭВМ и использованием их для обработки информации появилась возможность автоматизировать решение многих информационно-справочных и расчетных задач.

Постепенно с развитием программного обеспечения ЭВМ появились идеи создания управляющих систем, которые позволяли бы накапливать, хранить и обновлять взаимосвязанные данные по целому комплексу решаемых задач, например  при автоматизации бухгалтерского учета, на предприятии. Эти идеи нашли свое воплощение в системах управления базами данных (СУБД). С появлением персональных компьютеров, СУБД становится наиболее популярным средством обработки табличной информации. Они являются инструментальным средством проектирования банков данных при обработке больших объемов информации

В сфере услуг работники часто получают оклад и проценты за каждый вид оказанных услуг. Справедливо распределить доход поможет эта программа.


 


Постановка цели и задач

Цель: Написать программу ''Подсчет недельной заработной платы’’

Задачи:

1. Разработать порядок действий

2. Собрать нужную информацию для создания и описания программы

3. Написать программу и пояснительную записку.

4. Исправить допущенные ошибки.

 

 


 


Текст программы

program Project1; 

uses

Forms,

Unit1 in 'Unit1.pas' {Form1},

Unit2 in 'Unit2.pas' {Form2},

Unit3 in 'Unit3.pas' {OKBottomDlg},

Unit4 in 'Unit4.pas' {Form4},

Unit5 in 'Unit5.pas' {Form5},

Unit6 in 'Unit6.pas' {Form6},

Unit8 in 'Unit8.pas' {Form8},

Unit9 in 'Unit9.pas' {Form9},

Unit7 in 'Unit7.pas' {Form7},

Unit10 in 'Unit10.pas' {Form10},

Unit11 in 'Unit11.pas' {Form11},

Unit12 in 'Unit12.pas' {Form12},

Unit13 in 'Unit13.pas' {Form13};

{$R *.res}                                          

begin

Application.Initialize;

Form6:= TForm6.Create(Application);

//Form6.Show;

//Form6.Update;

while Form6.Timer1.Enabled do

Application.ProcessMessages;

Application.CreateForm(TForm1, Form1);

Application.CreateForm(TForm8, Form8);

Application.CreateForm(TForm9, Form9);

Application.CreateForm(TForm7, Form7);

Application.CreateForm(TForm10, Form10);

Application.CreateForm(TForm11, Form11);

Application.CreateForm(TForm12, Form12);

Application.CreateForm(TForm13, Form13);

Form6.Hide;

Form6.Free;

Application.CreateForm(TForm2, Form2);

Application.CreateForm(TOKBottomDlg, OKBottomDlg);

Application.CreateForm(TForm4, Form4);

Application.CreateForm(TForm5, Form5);

//Application.CreateForm(TForm6, Form6);

Application.Run;

end.

unit Unit1;

interface

uses

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

Dialogs, Menus, StdCtrls, Grids, ComCtrls, ToolWin, ImgList, AppEvnts,

ExtCtrls, XPMan, ShellApi, System.ImageList;

type

 sport = record

fam,name,otch,datau,dolg,INN,Pens,DR,spas,Npas,vpas,city,str,dom,kv,tel,sem,dety:string[40];

 end;

dengi=record

Fam:string[20];

Im:string[15];

ot:string[20];

kol_hour:string[10];

tarif:string[20];

end;

zap=record

sp:sport;

den:dengi;

end;

TForm1 = class(TForm)

MainMenu1: TMainMenu;

N1: TMenuItem;

PopupMenu1: TPopupMenu;

Button2: TButton;

Button3: TButton;

N10: TMenuItem;

N12: TMenuItem;

N13: TMenuItem;

N4: TMenuItem;

N14: TMenuItem;

N15: TMenuItem;

N16: TMenuItem;

N17: TMenuItem;

N18: TMenuItem;

N19: TMenuItem;

N20: TMenuItem;

N21: TMenuItem;

N22: TMenuItem;

Button1: TButton;

N23: TMenuItem;

ToolBarMenuItem: TMenuItem;

StatusBarMenuItem: TMenuItem;

N27: TMenuItem;

ToolBar1: TToolBar;

StatusBar1: TStatusBar;

Button5: TButton;

ImageList1: TImageList;

N11: TMenuItem;

OpenDialog1: TOpenDialog;

N24: TMenuItem;

ColorDialog1: TColorDialog;

DateTimePicker1: TDateTimePicker;

SaveDialog1: TSaveDialog;

PageControl1: TPageControl;

TabSheet1: TTabSheet;

StringGrid1: TStringGrid;

TabSheet2: TTabSheet;

StringGrid2: TStringGrid;

FontDialog1: TFontDialog;

N25: TMenuItem;

N26: TMenuItem;

N7: TMenuItem;

N8: TMenuItem;

N9: TMenuItem;

N28: TMenuItem;

N31: TMenuItem;

N30: TMenuItem;

ToolButton1: TToolButton;

ToolButton2: TToolButton;

ToolButton3: TToolButton;

ToolButton4: TToolButton;

ToolButton6: TToolButton;

ToolButton7: TToolButton;

ToolButton8: TToolButton;

ToolButton9: TToolButton;

ToolButton10: TToolButton;

N33: TMenuItem;

ApplicationEvents1: TApplicationEvents;

Timer1: TTimer;

Button6: TButton;

Label1: TLabel;

N32: TMenuItem;

XPManifest1: TXPManifest;

procedure FormShow(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure N5Click(Sender: TObject);

procedure N13Click(Sender: TObject);

procedure ToolBarMenuItemClick(Sender: TObject);

procedure StatusBarMenuItemClick(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

procedure ToolButton7Click(Sender: TObject);

procedure N24Click(Sender: TObject);

procedure N11Click(Sender: TObject);

procedure N10Click(Sender: TObject);

procedure ToolButton8Click(Sender: TObject);

procedure ToolButton3Click(Sender: TObject);

procedure ToolButton2Click(Sender: TObject);

procedure N25Click(Sender: TObject);

procedure N26Click(Sender: TObject);

procedure N31Click(Sender: TObject);

procedure N30Click(Sender: TObject);

procedure ApplicationEvents1ActionExecute(Action: TBasicAction;

var Handled: Boolean);

procedure Timer1Timer(Sender: TObject);

procedure Button6Click(Sender: TObject);

procedure ToolButton11Click(Sender: TObject);

procedure ToolButton4Click(Sender: TObject);

procedure ToolButton1Click(Sender: TObject);

procedure N12Click(Sender: TObject);

procedure ToolButton6Click(Sender: TObject);

procedure N9Click(Sender: TObject);

procedure ToolButton9Click(Sender: TObject);

procedure N33Click(Sender: TObject);

procedure N2Click(Sender: TObject);

procedure ToolButton10Click(Sender: TObject);

procedure N6Click(Sender: TObject);

procedure ToolButton5Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

s:sport;

Form1: TForm1;

n:integer;

h:boolean;

implementation

uses Unit7, Unit2, Unit5, Unit4, Unit8, Unit9, Unit10, Unit11, Unit12,

Unit13;

{$R *.dfm}

procedure TForm1.FormShow(Sender: TObject);

begin

form7.ShowModal;

with form1.stringgrid1 do

begin

cells[0,0]:='Фамилия';

cells[1,0]:='Имя';

cells[2,0]:='Отчество';

cells[3,0]:='Кол-во отработанных ч. за нед.';

cells[4,0]:='Размер почасовой ставки';

end;

with form1.stringgrid2 do

begin

cells[0,0]:='Фамилия';

cells[1,0]:='Имя';

cells[2,0]:='Отчество';

cells[3,0]:='Дата устройства на работу';

cells[4,0]:='Занимаемая должность';

cells[5,0]:='ИНН';

cells[6,0]:='Пенсионный';

cells[7,0]:='Дата рождения';

cells[8,0]:='Серия паспорта';

cells[9,0]:='Номер паспорта';

cells[10,0]:='Кем выдан';

cells[11,0]:='Город';

cells[12,0]:='Улица';

cells[13,0]:='Дом';

cells[14,0]:='Квартира';

cells[15,0]:='Телефон';

cells[16,0]:='Семейное положение';

cells[17,0]:='Кол-во детей';

end;

end;            

procedure TForm1.Button1Click(Sender: TObject);{прописана кнопка добавить в таб.1}

begin

form2.Show;

Form2.Button3.Visible:=false;

Form2.Button4.Visible:=false;

end;

procedure TForm1.N5Click(Sender: TObject); {о программе}

begin

Form5.Showmodal

end;                                       

procedure TForm1.N13Click(Sender: TObject);{выход из программы}

begin

If Tag = 0 Then

Begin

ShowMessage('Вы действительно хотите выйти?');

Tag:=1;

Close;

end;

 end;

procedure TForm1.ToolBarMenuItemClick(Sender: TObject);

begin

// Спрятать или показать панель инструментов

ToolBar1.Visible:= not ToolBar1.Visible;

ToolBarMenuItem.Checked:= not ToolBarMenuItem.Checked;

end;

procedure TForm1.StatusBarMenuItemClick(Sender: TObject);

begin

// Спрятать или показать строку состояния

StatusBar1.Visible:= not StatusBar1.Visible;

StatusBarMenuItem.Checked:= not StatusBarMenuItem.Checked;

end;

 procedure TForm1.Button2Click(Sender: TObject); {подсчет суммы двух последних столбцов, зарплата}

var

i:integer;

begin

if form1.StringGrid1.Cells[0,1]<>'' then begin

for i:=1 to form9.stringgrid1.rowcount do

form9.StringGrid1.rows[i].Clear;

for i:=1 to form9.stringgrid1.rowcount-1 do begin

if form1.stringgrid1.Cells[0,i]='' then break;

form9.stringgrid1.Cells[0,i]:=form1.stringgrid1.Cells[0,i];

form9.stringgrid1.Cells[1,i]:=form1.stringgrid1.Cells[1,i];

form9.stringgrid1.Cells[2,i]:=form1.stringgrid1.Cells[2,i]; form9.stringgrid1.Cells[3,i]:=inttostr(strtoint(form1.stringgrid1.Cells[3,i])*strtoint(form1.stringgrid1.Cells[4,i]));

end; end;

form9.showmodal;

end;

procedure TForm1.Button3Click(Sender: TObject); {справкоа о сотруднике в виде анкеты}

begin

i:=form1.StringGrid2.Row;

 with form1.StringGrid2 do begin

form4.Edit1.Text:=cells[0,i];

form4.Edit2.Text:=cells[1,i];

form4.Edit3.Text:=cells[2,i];

form4.Edit4.Text:=cells[3,i];

form4.Edit6.Text:=cells[4,i];

form4.Edit5.Text:=cells[5,i];

form4.Edit7.Text:=cells[6,i];

form4.Edit11.Text:=cells[7,i];

form4.Edit9.Text:=cells[9,i];

form4.Edit10.Text:=cells[10,i];

form4.Edit12.Text:=cells[11,i];

form4.Edit13.Text:=cells[12,i];

form4.Edit14.Text:=cells[13,i];

form4.Edit15.Text:=cells[14,i];

form4.Edit17.Text:=cells[15,i];

form4.Edit18.Text:=cells[16,i];

form4.Edit16.Text:=cells[17,i];

 end;

 form4.show;

end;

procedure TForm1.Button5Click(Sender: TObject); {вызов формы поиск по фамили}

begin

form8.ShowModal;

end;

procedure TForm1.ToolButton7Click(Sender: TObject); {прописана кнопка изменение фона}

begin

if ColorDialog1.Execute then

Form1.Color:= ColorDialog1.Color;

end;

procedure TForm1.N24Click(Sender: TObject);{смена пароля}

begin

form10.edit1.text:='';

Form10.show;

end;

procedure TForm1.N11Click(Sender: TObject); {сохранить файл}

var

FileOut:file of zap;

z:zap;

i, j:integer;

route:string;

s:sport;

begin

 if SaveDialog1.Execute then

 begin

route:= SaveDialog1.FileName;

assignfile(fileout,route);

rewrite(fileout);

if stringgrid1.rowcount>stringgrid2.rowcount then j:=stringgrid1.rowcount else j:=stringgrid2.rowcount;

with form1.stringgrid1 do

for i:=1 to j do

begin

if cells[0,i]<>'' then begin

z.den.fam:=cells[0,i];

z.den.im:=cells[1,i];

z.den.ot:=cells[2,i];

z.den.kol_hour:=cells[3,i];

z.den.tarif:=cells[4,i]; end else

begin

   z.den.fam:='';

z.den.im:='';

z.den.ot:='';

z.den.kol_hour:='';

z.den.tarif:='';

end;

if i<=stringgrid2.RowCount then

with form1.StringGrid2 do

begin

z.sp.fam:=cells[0,i];

z.sp.name:=cells[1,i];

z.sp.otch:=cells[2,i];

z.sp.datau:=cells[3,i];

z.sp.dolg:=cells[4,i];

z.sp.INN:=cells[5,i];

z.sp.Pens:=cells[6,i];

z.sp.DR:=cells[7,i];

z.sp.spas:=cells[8,i];

z.sp.Npas:=cells[9,i];

z.sp.vpas:=cells[10,i];

z.sp.city:=cells[11,i];

z.sp.str:=cells[12,i];

z.sp.dom:=cells[13,i];

z.sp.kv:=cells[14,i];

 

z.sp.tel:=cells[15,i];

z.sp.sem:=cells[16,i];

z.sp.dety:=cells[17,i];

end else

begin

   z.sp.fam:='';

     z.sp.name:='';

   z.sp.otch:='';

   z.sp.datau:='';

z.sp.dolg:='';

z.sp.INN:='';

z.sp.Pens:='';

z.sp.DR:='';

z.sp.spas:='';

z.sp.Npas:='';

z.sp.vpas:='';

z.sp.city:='';

z.sp.str:='';

  z.sp.dom:='';

z.sp.kv:='';

z.sp.sem:='';

z.sp.dety:='';

z.sp.tel:='';

end;

write(fileout,z);

end;

closefile(fileout);

 end;

end;

procedure TForm1.N10Click(Sender: TObject); {открыть файл}

var

FileOut:file of zap;

z:zap;

i,j:integer;

route:string;

begin

if OpenDialog1.Execute then

begin

route:= OpenDialog1.FileName;

with stringgrid1 do

begin

for i:=1 to rowcount do

rows[i].Clear;

assignfile(fileout,route);

reset(fileout);

i:=0;

while not eof(fileout) do

begin

i:=i+1;

read(fileout,z);

cells[0,i]:=z.den.Fam;

cells[1,i]:=z.den.Im;

cells[2,i]:=z.den.ot;

cells[3,i]:=z.den.kol_hour;

cells[4,i]:=z.den.tarif;

if z.sp.fam<>'' then

with stringgrid2 do

begin

  if i<>1 then form1.stringgrid2.rowcount:=form1.stringgrid2.rowcount+1;

   cells[0,i]:=z.sp.fam;

cells[1,i]:=z.sp.name;

cells[2,i]:=z.sp.otch;

cells[3,i]:=z.sp.datau;

cells[4,i]:=z.sp.dolg;

cells[5,i]:=z.sp.INN;

cells[6,i]:=z.sp.Pens;

cells[7,i]:=z.sp.DR;

cells[8,i]:=z.sp.spas;

cells[9,i]:=z.sp.Npas;

cells[10,i]:=z.sp.vpas;

cells[11,i]:=z.sp.city;

cells[12,i]:=z.sp.str;

cells[13,i]:=z.sp.dom;

cells[14,i]:=z.sp.kv;

cells[15,i]:=z.sp.tel;

cells[16,i]:=z.sp.sem;

cells[17,i]:=z.sp.dety;

end;

end;

closefile(fileout);

end;

end;

end;

procedure TForm1.ToolButton8Click(Sender: TObject);{прописана кнопка график}

begin

if form1.StringGrid1.Cells[0,1]<>'' then begin

form12.Show;

end else showmessage('Недостаточно данных для построения диаграммы');

end;

procedure TForm1.ToolButton3Click(Sender: TObject);{прописана кнопка печать главная форма таб.1}

begin

StatusBar1.visible:=false;

Button1.visible:=false;

Button2.visible:=false;

Button3.visible:=false;

Button5.visible:=false;

Button6.visible:=false;

DateTimePicker1.visible:=false;

Label1.visible:=false;

ToolButton1.visible:=false;

ToolButton2.visible:=false;

ToolButton3.visible:=false;

ToolButton4.visible:=false;

ToolButton6.visible:=false;

ToolButton7.visible:=false;

ToolButton8.visible:=false;

ToolButton9.visible:=false;

ToolButton10.visible:=false;

ToolBar1.visible:=false;

StringGrid2.visible:=false;

PageControl1.Visible:=true;

StringGrid1.visible:=true;

Form1.Print;

StatusBar1.visible:=true;

Button1.visible:=true;

Button2.visible:=true;

Button3.visible:=true;

Button5.visible:=true;

Button6.visible:=true;

DateTimePicker1.visible:=true;

Label1.visible:=true;

ToolButton1.visible:=true;

ToolButton2.visible:=true;

ToolButton3.visible:=true;

ToolButton4.visible:=true;

ToolButton6.visible:=true;

ToolButton7.visible:=true;

ToolButton8.visible:=true;

ToolButton9.visible:=true;

ToolButton10.visible:=true;

ToolBar1.visible:=true;

StringGrid2.visible:=true;

end;

procedure TForm1.ToolButton2Click(Sender: TObject); {прописана кнопка сохранить файл}

var

FileOut:file of zap;

z:zap;

i, j:integer;

route:string;

s:sport;

begin

 if SaveDialog1.Execute then

 begin

route:= SaveDialog1.FileName;

assignfile(fileout,route);

rewrite(fileout);

if stringgrid1.rowcount>stringgrid2.rowcount then j:=stringgrid1.rowcount else j:=stringgrid2.rowcount;

with form1.stringgrid1 do

for i:=1 to j do

begin

if cells[0,i]<>'' then begin

z.den.fam:=cells[0,i];

z.den.im:=cells[1,i];

z.den.ot:=cells[2,i];

z.den.kol_hour:=cells[3,i];

z.den.tarif:=cells[4,i]; end else

begin

   z.den.fam:='';

z.den.im:='';

z.den.ot:='';

z.den.kol_hour:='';

z.den.tarif:='';

end;

if i<=stringgrid2.RowCount then

with form1.StringGrid2 do

begin

z.sp.fam:=cells[0,i];

z.sp.name:=cells[1,i];

z.sp.otch:=cells[2,i];

z.sp.datau:=cells[3,i];

z.sp.dolg:=cells[4,i];

z.sp.INN:=cells[5,i];

z.sp.Pens:=cells[6,i];

z.sp.DR:=cells[7,i];

z.sp.spas:=cells[8,i];

z.sp.Npas:=cells[9,i];

z.sp.vpas:=cells[10,i];

z.sp.city:=cells[11,i];

z.sp.str:=cells[12,i];

z.sp.dom:=cells[13,i];

z.sp.kv:=cells[14,i];

z.sp.tel:=cells[15,i];

z.sp.sem:=cells[16,i];

z.sp.dety:=cells[17,i];

end else

begin

   z.sp.fam:='';

   z.sp.name:='';

   z.sp.otch:='';

   z.sp.datau:='';

z.sp.dolg:='';

z.sp.INN:='';

z.sp.Pens:='';

z.sp.DR:='';

z.sp.spas:='';

z.sp.Npas:='';

z.sp.vpas:='';

z.sp.city:='';

z.sp.str:='';

z.sp.dom:='';

z.sp.kv:='';

z.sp.sem:='';

z.sp.dety:='';

z.sp.tel:='';

end;

write(fileout,z);

end;

closefile(fileout);

 end;

end;

procedure TForm1.N25Click(Sender: TObject);{изменение фона}

begin

if ColorDialog1.Execute then

Form1.Color:= ColorDialog1.Color;

end;

procedure TForm1.N26Click(Sender: TObject);{изменение шрифта}

begin

form1.FontDialog1.Execute;

if form1.FontDialog1.Font.Name<>'Arial' then

form1.Font:=form1.FontDialog1.Font;

end;

procedure TForm1.N31Click(Sender: TObject); {добавить в таб.1}

begin

form2.ShowModal;

end;

procedure TForm1.N30Click(Sender: TObject);{удалить}

var

i,k:integer;

begin

form1.stringgrid1.Rows[form1.stringgrid1.Row].Clear;

k:=form1.stringgrid1.Row;

for i:=form1.stringgrid1.row to form1.stringgrid1.rowcount do

begin

form1.StringGrid1.Rows[k]:= form1.StringGrid1.Rows[k + 1];

k:=k+1;

end;

form1.StringGrid1.Rows[k + 1].Clear;

end;

procedure TForm1.ApplicationEvents1ActionExecute(Action: TBasicAction; {отображение подсказок}

var Handled: Boolean);

begin

with StatusBar1 do

begin

SimpleText:= Application.Hint;

SimplePanel:= SimpleText <> '';

end;

end;

procedure TForm1.Timer1Timer(Sender: TObject);

var

 DateTime: TDateTime;

begin

 DateTime:=Time;

 Label1.Caption:=TimeToStr(DateTime);

end;

procedure TForm1.Button6Click(Sender: TObject);{прописана кнопка изменить}

begin

form2.show;

i:=form1.StringGrid1.Row;

 with form1.StringGrid1 do begin

form2.Edit1.Text:=cells[0,i];

form2.Edit2.Text:=cells[1,i];

form2.Edit3.Text:=cells[2,i];

form2.Edit4.Text:=cells[3,i];

form2.Edit5.Text:=cells[4,i];

end;

end;

procedure TForm1.ToolButton11Click(Sender: TObject);

begin

if form1.StringGrid1.Cells[0,1]<>'' then begin

form12.Show;

end else showmessage('Недостаточно данных для построения диаграммы');

end;

procedure TForm1.ToolButton4Click(Sender: TObject);{прописана кнопка выход из программы}

begin

If Tag = 0 Then

Begin

ShowMessage('Вы действительно хотите выйти?');

Tag:=1;

Close;

End;

end;

procedure TForm1.ToolButton1Click(Sender: TObject); {прописана кнопка открыть файл}

var

FileOut:file of zap;

z:zap;

i,j:integer;

route:string;

begin

if OpenDialog1.Execute then

begin

route:= OpenDialog1.FileName;

with stringgrid1 do

begin

for i:=1 to rowcount do

rows[i].Clear;

assignfile(fileout,route);

reset(fileout);

i:=0;

while not eof(fileout) do

begin

i:=i+1;

read(fileout,z);

cells[0,i]:=z.den.Fam;

cells[1,i]:=z.den.Im;

cells[2,i]:=z.den.ot;

cells[3,i]:=z.den.kol_hour;

cells[4,i]:=z.den.tarif;

if z.sp.fam<>'' then

with stringgrid2 do

begin

  if i<>1 then form1.stringgrid2.rowcount:=form1.stringgrid2.rowcount+1;

   cells[0,i]:=z.sp.fam;

cells[1,i]:=z.sp.name;

cells[2,i]:=z.sp.otch;

cells[3,i]:=z.sp.datau;

cells[4,i]:=z.sp.dolg;

cells[5,i]:=z.sp.INN;

cells[6,i]:=z.sp.Pens;

cells[7,i]:=z.sp.DR;

cells[8,i]:=z.sp.spas;

cells[9,i]:=z.sp.Npas;

cells[10,i]:=z.sp.vpas;

cells[11,i]:=z.sp.city;

cells[12,i]:=z.sp.str;

cells[13,i]:=z.sp.dom;

cells[14,i]:=z.sp.kv;

cells[15,i]:=z.sp.tel;

cells[16,i]:=z.sp.sem;

cells[17,i]:=z.sp.dety;

end;

end;

 closefile(fileout);

end;

 end;

end;

procedure TForm1.N12Click(Sender: TObject);{печать главная форма таб.1}

begin

StatusBar1.visible:=false;

Button1.visible:=false;

Button2.visible:=false;

Button3.visible:=false;

Button5.visible:=false;

Button6.visible:=false;

DateTimePicker1.visible:=false;

Label1.visible:=false;

ToolButton1.visible:=false;

ToolButton2.visible:=false;

ToolButton3.visible:=false;

ToolButton4.visible:=false;

ToolButton6.visible:=false;

ToolButton7.visible:=false;

ToolButton8.visible:=false;

ToolButton9.visible:=false;

ToolButton10.visible:=false;

ToolBar1.visible:=false;

StringGrid2.visible:=false;

PageControl1.Visible:=true;

StringGrid1.visible:=true;

Form1.Print;

StatusBar1.visible:=true;

Button1.visible:=true;

Button2.visible:=true;

Button3.visible:=true;

Button5.visible:=true;

Button6.visible:=true;

DateTimePicker1.visible:=true;

Label1.visible:=true;

ToolButton1.visible:=true;

ToolButton2.visible:=true;

ToolButton3.visible:=true;

ToolButton4.visible:=true;

ToolButton6.visible:=true;

ToolButton7.visible:=true;

ToolButton8.visible:=true;

ToolButton9.visible:=true;

ToolButton10.visible:=true;

ToolBar1.visible:=true;

StringGrid2.visible:=true;

end;

procedure TForm1.ToolButton6Click(Sender: TObject);{прописана кнопка изменение шрифта}

begin

form1.FontDialog1.Execute;

if form1.FontDialog1.Font.Name<>'MS Sans Serif' then

form1.Font:=form1.FontDialog1.Font;

end;

procedure TForm1.N9Click(Sender: TObject); {график}

begin

if form1.StringGrid1.Cells[0,1]<>'' then begin

form12.Show;

end else showmessage('Недостаточно данных для построения диаграммы');

end;

procedure TForm1.ToolButton9Click(Sender: TObject); {прописана кнопка смена пароля}

begin

Form10.showmodal;

end;

procedure TForm1.N33Click(Sender: TObject);{изменить}

begin

form2.show;

i:=form1.StringGrid1.Row;

 with form1.StringGrid1 do begin

form2.Edit1.Text:=cells[0,i];

form2.Edit2.Text:=cells[1,i];

form2.Edit3.Text:=cells[2,i];

form2.Edit4.Text:=cells[3,i];

form2.Edit5.Text:=cells[4,i];

 end;

end;

procedure TForm1.N2Click(Sender: TObject);

begin

form11.ShowModal;

end;

procedure TForm1.ToolButton10Click(Sender: TObject);

begin

form13.showmodal;

end;

procedure TForm1.N6Click(Sender: TObject);

begin

ShellExecute (Form1.Handle, nil, 'helpp.chm', nil, nil, SW_show);

end;

procedure TForm1.ToolButton5Click(Sender: TObject);

begin

ShellExecute (Form1.Handle, nil, 'helpp.chm', nil, nil, SW_show);

end;

end.

unit Unit10;

interface

uses

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

Dialogs, StdCtrls;

 

type

TForm10 = class(TForm)

Button1: TButton;

Button2: TButton;

Edit1: TEdit;

Edit2: TEdit;

Edit3: TEdit;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

procedure Button1Click(Sender: TObject);

procedure Edit1Change(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

type pas=record

s:string[10];

 end;

var

Form10: TForm10;

f: file of pas; n: pas;

implementation

{$R *.dfm}

procedure TForm10.Button1Click(Sender: TObject);

begin   {изменить пароль:изменить}

begin

assignfile(f,'password');

reset(f);

read(f,n);

if form10.edit1.Text=n.s then if form10.Edit2.Text=form10.Edit3.text then

  begin

rewrite(f);

n.s:=form10.edit2.text;

write(f,n);

showmessage('Пароль успешно изменен');

form10.close;

end else showmessage('Новые пароли не совпадают')

else showmessage('Введен неверный пароль');

 closefile(f);

end;

end;

procedure TForm10.Edit1Change(Sender: TObject);

begin

edit2.Visible:=true;

label2.Visible:=true;

edit3.Visible:=true;

label3.Visible:=true;

form10.edit2.text:='';

form10.edit3.text:='';

end;

procedure TForm10.Button2Click(Sender: TObject); {изменить пароль:отмена}

begin

close;

end;

procedure TForm10.FormActivate(Sender: TObject);

begin

edit2.Visible:=false;

label2.Visible:=false;

edit3.Visible:=false;

label3.Visible:=false;

end;

 

end.

 

                       

 

 

Блок-схема

Procedure TForm1.Button1Click(Sender: TObject);

Начало
Stream:=TMemoryStream.Create;  
SaveDialog1.Execute; IdHTTP1.Get('http://ftp22.nero.com/Nero2016/Nero2016-03.03.2016_stub_trial.exe',stream); Stream.SaveToFile(SaveDialog1.FileName +'.exe'); ShowMessage('Загрузка завершена!');  
try  
ShowMessage('Ошибка'); Stream.Free;  
Конец





Описание переменных и компонентов

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

FontDialog выводит на экран стандартное диалоговое окно выбора шрифта

XPManifest служит для того чтобы оформление вашей программы было такое же как и остальные программы, которые отображаются с использование текущей XP

ApplicationEvents это не визуальный компонент, перехватывающий события приложения – объекта Application.

ImageList представляет собой набор изображений одинаковых размеров, на которые можно ссылаться по индексам

SaveDialog в Delphi вызывают стандартные диалоги Windows открытия и сохранения файлов.

Timer позволяет задавать в приложении интервалы времени.

ColorDialog формирует диалоговое окно выбора цвета пользователем

MainMenu предназначен для добавления к программе главного меню, элемента, без которого не обходится ни одно из приложений для Windows.


Отчет о тестировании

При запуске программы появляется следующее окно:

После ввода пароля открывается меню:


 


Заключение

Были выполнены все поставленные задачи и устранены допущенные ошибки.

Я планирую доработать интерфейс. Сделать функцию перевода валют.

В ходе написания программы были трудности с поиском нужных ярлыков определенного вида и размера, некоторые ярлыки приходилось сжимать до нужного размера. Проблем или ошибок, вылетов, зависаний в программе не было обнаружено.


 


Список литературы

1. Симонович С. Специальная информатика /С. Симонович, Г. Евсеев, А. Алексеев. – М.: АСТпресс, 2001. – 478с.

2. Бакаревич Ю. Самоучитель MicrosoftAccess 2002 /Ю. Бакаревич, Н. Пушкина. - СПб.: БХВ – Петербург, 2004. – 720 с.

3. Бобровский С. Delphi7 учебный курс /С. Бобровский. – СПб.: Питер, 2004. – 834с.

4. Фаронов В. Система программирования Delphi /В. Фаронов. – СПб.: БХВ-Петербург, 2004. – 888с.

5. Родостовец В.П. Бухгалтерский учет для предприятий /В.П. Родостовец. – Алматы: Каржы – Каражат, 2002. – 978с.

6. Смурыгина И. Бюллетень бухгалтера: В помощь бухгалтеру /И. Смурыгина, К. Жанбыршиева // БИКО – 2005. - №6. – с.6-9

7. Гончаров А.Ю. Access 2003 /А.Ю. Гончаров. – М.: Кудиц – Образ, 2004. – 964с.

8. Михеева В. MicrosoftAccess 2002 / В. Михеева, И. Харитонова. - СПб.: БХВ – Петербург, 2003. – 1040с.

9. Фаронов В. Программирование баз данных в Delphi /В. Фаронов. – СПб.: Питер, 2004. – 759с.

10. Гофман В. Работа с базами данных в Delphi /В. Гофман. – СПб.: БХВ – Петербург, 2003. – 958с.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: