Дәмхана жұмысын автоматтандыру

Автор работы: Пользователь скрыл имя, 29 Января 2014 в 20:30, курсовая работа

Краткое описание

Жиырма бірінші ғасырдың басталуы жаппай ақпараттық қоғамға көшумен сипатталады. Оған компьютерлік техника, ақпараттық технология және басқа да ғылыми-техникалық прогресс әсерін тигізуде. Қазақстан Республикасы ғылыми-техникалық прогрестің негізгі белгісі болып табылатын қоғамды ақпараттандырудың жаңа кезеңіне енді. Қоғамды ақпараттандыру – еліміздің экономикасының, мәдениетінің, ғылымының дамуының негізгі алғышарты. Мәліметтер базасы - белгілі бір арнаулы ауқымға қатысты мәлтеттерді баяндау, сақтау мен амал-тәсілдермен ұқсата білудің жалпы прииңиптерін қарастыратын белгілі бір ережелер бойынша үйымдастырылған мәлімет-тердің жиынтыгы.

Содержание

Кіріспе…………………………………………………………………..............… 2
1. DELPHI Ппроцедуралар ұғымы…………………...……………............……. 4
1.1 Процедуралар……………………………………………………........…....….6
1.2 Функциялар ……………………………………………………….......…....…7
1.3 Рекурсивтік ішкі бағдарламалар…………………………………..................7
2. Дәмхана жұмысын автоматтандыру…......................................................…..9
2.1 SQL көмегімен мәліметтер қорын басқару .........................................…...9
2.2 Программаны сипаттау .................................……………………........…... 19
2.3 Тағамдар мен қызметкерлер тізімін толтыру ...................................….…..19
2.4 Тапсырыс алу …………………………....……………….......……………...20
Қорытынды ……………………………………………….......……………...….22
Қолданылған әдебиеттер………………………………….......……………...…23
Қосымша…………………………………….……………........…………...…….24

Прикрепленные файлы: 1 файл

курсавой.docx

— 543.73 Кб (Скачать документ)

Сурет 20. Тапсырыс беру

 

Сурет 21. Есеп парағын  шығару

 

 

Қорытынды

Бұл курстық жобада қарастырылған мәселе дәмхана әкімшілігінің қызметінің жұмысын автоматтандыру. Жалпы автоматтандыру мәселесі басталғаннан бастап, компьютердің барлық мүмкіндіктерін қолдану қазіргі бағдарламашылардың басты мақсаты болып келеді. Программа құру үшін алдымен оның алгоритмін жасау керек. Бұл бағдарламаның алгоритмі тағамдардың және қызметкерлердің тізімінен басталады. Тізім арқылы барлық қосымша әрекеттерді орындауға болады. Алдыға қойылған мақсаттарға жету үшін, алдымен программаның қағаз жүзінде алгоритмін жасап алу керек. Блок схемалар түрінде не болмаса өзіңізге түсінікті тілде программаның «жоспарын» құру қажет. Программаның жоспарына қателерді өңдеу де кіреді, өйткені қазіргі кезде қарапайым қолданушылар қай батырманы басқанын білмей де қалады. Біздің жағдайда сандарды тексеріп, яғни литерлік шаманы ажырату алгоритмі құрылған. Ол өте қарапайым. Алдымен сан жолдық типке айналдырылады. Сандар өте қысқа келеді. 2-3 символ болуы мүмкін, асып кетсе 6 символ. Бұл дегеніңіз мұндай символдар массивін басқару оңай болады деген сөз.

Курстық жобаның программалық бөлігінде пайдаланған қосымша программалар және технологиялар қарастырылған:

  • Borland Delphi программалау ортасы;
  • Paradox мәлметтер қоры;
  • HTML гиперсілтемелік тілі;
  • Adobe Photoshop программасы.

Программаны әсерлеу  үшін соңғы екі аталған программа қолданылды. Веб-парақтар жасау үшін көптеген түрлі программалар бар. Олардың құрылымының күрделілігіне қарай, сонымен қатар тапсырманы шешу ортасына байланысты ажыратылады.

 

Қолданылған әдебиеттер

 

  1. Delpi5. Руководство разработчика базы данных – М.:«Нолидж», 2000г./ В.В Фаронов., П.В. Шумаков.
  2. Delphi5.Самаучитель программиста – М.: КУДИЦ – ОБРАЗ,2000г./  И.Ю Баженова.
  3. Базы данных: проектирование, реализация и сопровождение. Теория и практика, 2-е изд.: Пер. с англ.: Уч. пос: - М.: издательский дом «Вильямс», 2000г./ Томас Коннолли, Каролин Бегг, Анна Страган.
  4. Delphi для профессионалов. Опыт практического применения.-М.:ДМК, 2000г./ А.Д Александровский., В.В Шубин.
  5. Вычислительные машины, системы и сети: Учебник/А.П. Пятибратов, С.Н. Беляев, Г.М. Козырева и др.; Под ред. проф. А.П. Пятибратова.
  6. Архитектура вычислительных систем и сетей: Учеб. 
    пособие / Н.Г. Черняк, И.Н. Буравцева, Н.М. Пушкина. - 2-е изд., 
    перераб. и доп. - М.: Финансы и статистика, Н.Г Черняк. и др. 
  7. IBMPC для пользователя, 2-е изд., перераб и доп. - М.: 
    Финансы и статистика, Компьютер Пресс./ В.Э Фигурнов.
  8. Вычислительные машины, системы и сети: Учебник/А.П. Пятибратов, С.Н.Беляев, Г.М. Козырева и др.; Под ред. проф. А.П. Пятибратова. 

 

Қосымша

 

unit Unit4;

interface

uses

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

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

type

TForm4 = class(TForm)

Label1: TLabel;

DataSource1: TDataSource;

DBGrid1: TDBGrid;

Query1: TQuery;

DataSource2: TDataSource;

Query2: TQuery;

Label2: TLabel;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

Query3: TQuery;

ComboBox1: TComboBox;

Label3: TLabel;

Label4: TLabel;

Edit1: TEdit;

BitBtn3: TBitBtn;

DBGrid2: TDBGrid;

procedure FormCreate(Sender: TObject);

procedure FormShow(Sender: TObject);

procedure ComboBox1Change(Sender: TObject);

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure BitBtn3Click(Sender: TObject);

private

{ Private declarations }

public

numb:string;

end;

var

Form4: TForm4;

implementation

{$R *.dfm}

procedure TForm4.FormCreate(Sender: TObject);

begin

Query1.DatabaseName := ExtractFilePath(Application.ExeName);

Query2.DatabaseName := ExtractFilePath(Application.ExeName);

Query3.DatabaseName := ExtractFilePath(Application.ExeName);

end;

procedure TForm4.FormShow(Sender: TObject);

var max:string;

begin

with Query1.SQL do

begin

clear();

add('select max(numb) maxi from zakaz');end;

Query1.Open;

max := IntToStr(Query1.FieldByName('maxi').AsInteger+1);

with Query1.SQL do

begin

clear();

add('select * from zakaz where (act=1) and (numb='+numb+')');

end;

Query1.Open;

with Query2.SQL do

begin

clear();

add('select * from tagam');

end;

Query2.Open;

with Query3.SQL do

begin

clear();

add('select * from kyzm');

end;

Query3.Open;

ComboBox1.Items.Clear;

Query3.First;

while not Query3.Eof do

begin

ComboBox1.Items.Add(Query3.FieldByName('nm').AsString);

Query3.Next;

end;

if Query1.RecordCount<>0 then

begin

ComboBox1.ItemIndex := ComboBox1.Items.IndexOf(Query1.FieldByName('kznm').AsString);

Edit1.Text := Query1.FieldByName('numb').AsString;

end

else

begin

ComboBox1.ItemIndex := 0;

Edit1.Text := max;

end;

Label1.Caption := numb+'-столдың  тапсырыстары';

end;

procedure TForm4.ComboBox1Change(Sender: TObject);

var nm:string;

begin

nm:=ComboBox1.Text;

with Query3.SQL do

begin

clear();

add('update zakaz set kznm="'+nm+'" where numb='+Edit1.Text);

end;

Query3.ExecSQL;

end;

procedure TForm4.BitBtn1Click(Sender: TObject);

begin

with Query3.SQL do

begin

clear();

add('insert into zakaz values('+Edit1.Text+', '''+Query2.FieldByName('nm').AsString+''', ');

add(' '''+ComboBox1.Text+''', '+Query2.FieldByName('bg').AsString+', '+numb+',1)');

end;

Query3.ExecSQL;

FormShow(self);

end;

procedure TForm4.BitBtn2Click(Sender: TObject);

begin

with Query3.SQL do

begin

clear();

add('delete from zakaz where (nm='''+Query1.FieldByName('nm').AsString+''') and (numb='+Edit1.Text+')');

end;

Query3.ExecSQL;

FormShow(self);

end;

procedure TForm4.BitBtn3Click(Sender: TObject);

var f:textfile;

i,j,summ,pr:integer;

path:string;

begin

path:=copy(Application.ExeName,1,length(Application.ExeName)-8);

assignfile(f,'current.xls');

rewrite(f);

writeln(f,'<html><body>');

writeln(f,'<h3>Есеп  №00000'+edit1.text+'</h3>');

writeln(f,'<h4>Қызметкер: '+combobox1.text+'</h4>');

writeln(f,'<table border=1><tr>');

for i:=0 to DBGrid1.Columns.Count-1 do

begin

writeln(f,'<td><b>'+DBGrid1.Columns[i].Title.Caption+'</b></td>');

end;

writeln(f,'</tr>');

Query1.First;

for i:=1 to Query1.RecordCount do

begin

for j:=0 to DBGrid1.Columns.Count-1 do

writeln(f,'<td>'+DBGrid1.Fields[j].AsString+'</td>');

writeln(f,'</tr>');

summ:=summ+Query1.FieldByName('bg').AsInteger;

Query1.Next;

end;

pr:=round((summ/100)*10);

writeln(f,'<tr><td><b>Қызмет  көрсету құны:</b></td><td><b>'+IntToStr(pr)+'</b></td></tr>');

writeln(f,'<tr><td><b>Барлығы:</b></td><td><b>'+IntToStr(summ+pr)+'</b></td></tr>');

writeln(f,'</table></body></html>');

closefile(f);

ShellExecute(0, 'open',PChar(path+'\current.xls'), nil, PChar(path), sw_show);

with Query3.SQL do

begin

clear();

add('update zakaz set act=0 where numb='+Edit1.Text);

end;

Query3.ExecSQL;

Close;

end;

end.


Информация о работе Дәмхана жұмысын автоматтандыру