рационализация рабочего места менеджера по логистике через разработку автоматизированной системы

Заказать уникальную дипломную работу
Тип работы: Дипломная работа
Предмет: Программирование
  • 96 96 страниц
  • 40 + 40 источников
  • Добавлена 26.06.2014
2 500 руб.
  • Содержание
  • Часть работы
  • Список литературы
  • Вопросы/Ответы
ВВЕДЕНИЕ 3
СПИСОК СОКРАЩЕНИЙ 6
1.ОБЗОРНАЯ ЧАСТЬ 7
1.1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ 7
1.2. АНАЛИЗ ИНСТРУМЕНТАРИЯ РАЗРАБОТКИ 12
2. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ 22
2.1. ТРЕБОВАНИЯ К ПРОГРАММНОМУ ОБЕСПЕЧЕНИЮ 22
2.2. ОПРЕДЕЛЕНИЕ СТРАТЕГИИ АВТОМАТИЗАЦИИ ДЕЯТЕЛЬНОСТИ МЕНЕДЖЕРА ПО ЛОГИСТИКЕ 33
3.ПРАКТИЧЕСКАЯ ЧАСТЬ 38
3.1. АНАЛИЗ БИЗНЕС-ПРОЦЕССОВ ПРЕДПРИЯТИЯ 38
3.2. ПРОЕКТИРОВАНИЕ СТРУКТУРЫ ДАННЫХ 47
3.3. АРХИТЕКТУРА ПО 51
4. ТЕСТИРОВАНИЕ И ОТЛАДКА 56
ЗАКЛЮЧЕНИЕ 68
ЛИТЕРАТУРА 70
Фрагмент для ознакомления

clear;
sql.add('select cd_bus, sum(v_zap), sum(v_kas) , sum(rsh_ben) from putlist where (cd_bus='+form1.ADOQuery2garnum.AsString+') and (day=#'+day3+'#) group by cd_bus');
open;
end;

if form1.ADOQuery5rn.AsString='Город' then
begin
with form1.ADOQuery23 do
begin
close;
sql.Clear;
sql.Add('update topl_tmp set ost='+ currtostr(form1.ADOQuery5ost.AsCurrency+form1.ADOQuery19Expr1001.AsCurrency+form1.ADOQuery19Expr1002.AsCurrency-form1.ADOQuery19Expr1003.AsCurrency) +' where (garnum='+form1.ADOQuery2garnum.AsString+') and (rn='+form1.Label1.Caption+'Город'+form1.Label1.Caption+')');
execsql;
end;
end
else
begin
with form1.ADOQuery23 do
begin
close;
sql.Clear;
sql.Add('update topl_tmp set ost='+currtostr(form1.ADOQuery5ost.AsCurrency+form1.ADOQuery19Expr1001.AsCurrency+form1.ADOQuery19Expr1002.AsCurrency-form1.ADOQuery19Expr1003.AsCurrency) +' where (garnum='+form1.ADOQuery2garnum.AsString+') and (rn='+form1.Label1.Caption+'Межгород'+form1.Label1.Caption+')');
execsql;
end;
end;
with form1.ADOQuery23 do
begin
close;
sql.Clear;
sql.Add('update topl_tmp set day=#'+day3+'# where garnum='+form1.ADOQuery2garnum.AsString);
execsql;
end;
end;
with form1.ADOQuery23 do
begin
close;
sql.Clear;
sql.Add('update topl_tmp set fio='+form1.Label1.Caption+trim(form1.ADOQuery5fio.AsString)+form1.Label1.Caption+' where garnum='+form1.ADOQuery2garnum.AsString);
execsql;
end;
end;
form1.ADOQuery2.Next;
end;
with form1.ADOQuery23 do
begin
close;
sql.Clear;
sql.Add('delete from topl_tmp where (rash=0) and (ost=0) and (prih=0)');
execsql;
end;

//вывод на печать
calc:=toocalc.Create('c:\plist\xlt\svod_gsm.xlt');
form1.ADOQuery7.First;
for i:=1 to form1.ADOQuery7.RecordCount do
begin
with form1.adoquery23 do
begin
close;
sql.Clear;
sql.Add('select * from topl_tmp where (marka='+form1.Label1.Caption+trim(form1.ADOQuery7marka.AsString)+form1.Label1.Caption+') and (rn='+form1.Label1.Caption+'Город'+form1.Label1.Caption+')');
open;
end;
for j:=1 to form1.ADOQuery23.RecordCount do
begin
calc.Cell[6,1]:=form1.ADOQuery23garnum.AsString;
calc.Cell[6,2]:=trim(form1.ADOQuery23fio.AsString);
calc.Cell[6,3]:=trim(form1.ADOQuery23ost.AsString);
calc.Cell[6,4]:=trim(form1.ADOQuery23prih.AsString);
calc.Cell[6,5]:=trim(form1.ADOQuery23rash.AsString);
calc.Cell[6,6]:=currtostr(form1.ADOQuery23ost.AsCurrency+form1.ADOQuery23prih.AsCurrency-form1.ADOQuery23rash.AsCurrency);
calc.InsertRow(6,true);
form1.adoquery23.Next;
end;
calc.Cell[6,1]:='Город';
with form1.ADOQuery24 do
begin
close;
sql.Clear;
sql.Add('select sum(ost), sum(prih), sum(rash) from topl_tmp where (marka='+form1.Label1.Caption+trim(form1.ADOQuery7marka.AsString)+form1.Label1.Caption+') and (rn='+form1.Label1.Caption+'Город'+form1.Label1.Caption+')');
open;
end;
calc.Cell[6,3]:=form1.ADOQuery24Expr1000.AsString;
calc.Cell[6,4]:=form1.ADOQuery24Expr1001.AsString;
calc.Cell[6,5]:=form1.ADOQuery24Expr1002.AsString;
calc.Cell[6,6]:=form1.ADOQuery24Expr1000.AsCurrency+form1.ADOQuery24Expr1001.AsCurrency-form1.ADOQuery24Expr1002.AsCurrency;
calc.InsertRow(6,true);

with form1.adoquery23 do
begin
close;
sql.Clear;
sql.Add('select * from topl_tmp where (marka='+form1.Label1.Caption+trim(form1.ADOQuery7marka.AsString)+form1.Label1.Caption+') and (rn<>'+form1.Label1.Caption+'Город'+form1.Label1.Caption+')');
open;
end;
for j:=1 to form1.ADOQuery23.RecordCount do
begin
calc.Cell[6,1]:=form1.ADOQuery23garnum.AsString;
calc.Cell[6,2]:=trim(form1.ADOQuery23fio.AsString);
calc.Cell[6,3]:=trim(form1.ADOQuery23ost.AsString);
calc.Cell[6,4]:=trim(form1.ADOQuery23prih.AsString);
calc.Cell[6,5]:=trim(form1.ADOQuery23rash.AsString);
calc.Cell[6,6]:=currtostr(form1.ADOQuery23ost.AsCurrency+form1.ADOQuery23prih.AsCurrency-form1.ADOQuery23rash.AsCurrency);
calc.InsertRow(6,true);
form1.adoquery23.Next;
end;
calc.Cell[6,1]:='Межгород';
with form1.ADOQuery24 do
begin
close;
sql.Clear;
sql.Add('select sum(ost), sum(prih), sum(rash) from topl_tmp where (marka='+form1.Label1.Caption+trim(form1.ADOQuery7marka.AsString)+form1.Label1.Caption+') and (rn<>'+form1.Label1.Caption+'Город'+form1.Label1.Caption+')');
open;
end;
calc.Cell[6,3]:=form1.ADOQuery24Expr1000.AsString;
calc.Cell[6,4]:=form1.ADOQuery24Expr1001.AsString;
calc.Cell[6,5]:=form1.ADOQuery24Expr1002.AsString;
calc.Cell[6,6]:=form1.ADOQuery24Expr1000.AsCurrency+form1.ADOQuery24Expr1001.AsCurrency-form1.ADOQuery24Expr1002.AsCurrency;
calc.InsertRow(6,true);
calc.Cell[6,1]:='Итого';
with form1.ADOQuery24 do
begin
close;
sql.Clear;
sql.Add('select sum(ost), sum(prih), sum(rash) from topl_tmp where (marka='+form1.Label1.Caption+trim(form1.ADOQuery7marka.AsString)+form1.Label1.Caption+') ');
open;
end;
calc.Cell[6,3]:=form1.ADOQuery24Expr1000.AsString;
calc.Cell[6,4]:=form1.ADOQuery24Expr1001.AsString;
calc.Cell[6,5]:=form1.ADOQuery24Expr1002.AsString;
calc.Cell[6,6]:=form1.ADOQuery24Expr1000.AsCurrency+form1.ADOQuery24Expr1001.AsCurrency-form1.ADOQuery24Expr1002.AsCurrency;
calc.InsertRow(6,true);

calc.Cell[6,1]:=form1.ADOQuery7marka.AsString;
calc.InsertRow(6,true);
form1.ADOQuery7.Next;
end;
calc.cell[2,2]:=datetostr(datetimepicker1.Date)+'-'+datetostr(datetimepicker2.date);

calc.Cell[5,1]:='Итого';
with form1.ADOQuery24 do
begin
close;
sql.Clear;
sql.Add('select sum(ost), sum(prih), sum(rash) from topl_tmp');
open;
end;
calc.Cell[5,3]:=form1.ADOQuery24Expr1000.AsString;
calc.Cell[5,4]:=form1.ADOQuery24Expr1001.AsString;
calc.Cell[5,5]:=form1.ADOQuery24Expr1002.AsString;
calc.Cell[5,6]:=form1.ADOQuery24Expr1000.AsCurrency+form1.ADOQuery24Expr1001.AsCurrency-form1.ADOQuery24Expr1002.AsCurrency;
calc.Bold[5,1]:=true;
calc.Bold[5,3]:=true;
calc.Bold[5,4]:=true;
calc.Bold[5,5]:=true;
calc.Bold[5,6]:=true;
calc.Cell[3,1]:='Вид топлива: '+trim(topl);
calc.Visible:=true;
end;

end.

- Сводная ведомость по видам сообщений

procedure TForm23.RzBitBtn1Click(Sender: TObject);
var calc:toocalc; year1,mon1,dt1:word ; m1,d1:string[2]; day1,day2:string[50]; i,j,j1:integer; vir,ch,prob,pass,vir1,ch1,prob1,pass1:currency;
begin
calc:=toocalc.Create('c:\plist\xlt\sv_ved.xlt');
calc.Cell[2,1]:='Период '+datetostr(datetimepicker1.Date)+'-'+datetostr(datetimepicker2.Date);
decodedate(datetimepicker1.Date,year1,mon1,dt1);
if mon1<10 then m1:='0'+inttostr(mon1) else m1:=inttostr(mon1);
if dt1<10 then d1:='0'+inttostr(dt1) else d1:=inttostr(dt1);
day1:=inttostr(year1)+'/'+m1+'/'+d1;
decodedate(datetimepicker2.Date,year1,mon1,dt1);
if mon1<10 then m1:='0'+inttostr(mon1) else m1:=inttostr(mon1);
if dt1<10 then d1:='0'+inttostr(dt1) else d1:=inttostr(dt1);
day2:=inttostr(year1)+'/'+m1+'/'+d1;
with form1.adoquery7 do
begin
close;
sql.clear;
sql.Add('select distinct marka from bus');
open;
end;
j:=0;
vir:=0;
ch:=0;
prob:=0;
pass:=0;
vir1:=0;
ch1:=0;
prob1:=0;
pass1:=0;
j1:=0;
form1.adoquery7.First;
j:=0;
calc.Cell[4,1]:='Итого по Кам/р';
calc.InsertRow(4,true);
j:=j+1;
vir:=0;
ch:=0;
prob:=0;
pass:=0;
for i:=1 to form1.ADOQuery7.RecordCount do
begin
with form1.ADOQuery10 do
begin
close;
sql.Clear;
sql.Add('select marka, sum(mny), sum(mny_mg), sum(vir_zak), sum(ch_fakt), sum(prob_nul), sum(prob_pass), sum(kol_pass) from putlist where (day>=#'+day1+'#) and (day<=#'+day2+'#) and (meggor=true) and (marka='+form1.Label1.Caption+trim(form1.adoquery7marka.AsString)+form1.Label1.Caption+') and (rn='+form1.Label1.Caption+'Пригород-Каменский район'+form1.Label1.Caption+') group by marka');
open;
end;
if form1.adoquery10.RecordCount>0 then
begin
calc.Cell[4,1]:=trim(form1.ADOQuery7marka.AsString);
calc.Cell[4,2]:=form1.ADOQuery10Expr1001.AsCurrency;
calc.Cell[4,3]:=form1.ADOQuery10Expr1004.AsCurrency;
calc.Cell[4,4]:=form1.ADOQuery10Expr1006.AsCurrency;
calc.Cell[4,5]:=form1.ADOQuery10Expr1007.AsCurrency;
vir:=vir+form1.ADOQuery10Expr1001.AsCurrency;
ch:=ch+form1.ADOQuery10Expr1004.AsCurrency;
prob:=prob+form1.ADOQuery10Expr1006.AsCurrency;
pass:=pass+form1.ADOQuery10Expr1007.AsCurrency;
calc.InsertRow(4,true);
j:=j+1;
end;
form1.adoquery7.Next;
end;
calc.Cell[4,1]:='Пригород - Каменский район';
calc.InsertRow(4,true);
j:=j+1;
calc.InsertRow(4,true);
j:=j+1;
calc.Cell[4+j,2]:=vir;
calc.Cell[4+j,3]:=ch;
calc.Cell[4+j,4]:=prob;
calc.Cell[4+j,5]:=pass;
j1:=j1+j;
vir1:=vir1+vir;
ch1:=ch1+ch;
prob1:=prob1+prob;
pass1:=pass1+pass;
form1.adoquery7.First;
j:=0;
calc.Cell[4,1]:='Итого по Крут/р';
calc.InsertRow(4,true);
j:=j+1;
vir:=0;
ch:=0;
prob:=0;
pass:=0;
for i:=1 to form1.ADOQuery7.RecordCount do
begin
with form1.ADOQuery10 do
begin
close;
sql.Clear;
sql.Add('select marka, sum(mny), sum(mny_mg), sum(vir_zak), sum(ch_fakt), sum(prob_nul), sum(prob_pass), sum(kol_pass) from putlist where (day>=#'+day1+'#) and (day<=#'+day2+'#) and (meggor=true) and (marka='+form1.Label1.Caption+trim(form1.adoquery7marka.AsString)+form1.Label1.Caption+') and (rn='+form1.Label1.Caption+'Пригород-Крутихинский район'+form1.Label1.Caption+') group by marka');
open;
end;
if form1.adoquery10.RecordCount>0 then
begin
calc.Cell[4,1]:=trim(form1.ADOQuery7marka.AsString);
calc.Cell[4,2]:=form1.ADOQuery10Expr1001.AsCurrency;
calc.Cell[4,3]:=form1.ADOQuery10Expr1004.AsCurrency;
calc.Cell[4,4]:=form1.ADOQuery10Expr1006.AsCurrency;
calc.Cell[4,5]:=form1.ADOQuery10Expr1007.AsCurrency;
vir:=vir+form1.ADOQuery10Expr1001.AsCurrency;
ch:=ch+form1.ADOQuery10Expr1004.AsCurrency;
prob:=prob+form1.ADOQuery10Expr1006.AsCurrency;
pass:=pass+form1.ADOQuery10Expr1007.AsCurrency;
calc.InsertRow(4,true);
j:=j+1;
end;
form1.adoquery7.Next;
end;
calc.Cell[4,1]:='Пригород - Крутихинский район';
calc.InsertRow(4,true);
j:=j+1;
calc.InsertRow(4,true);
j:=j+1;
calc.Cell[4+j,2]:=vir;
calc.Cell[4+j,3]:=ch;
calc.Cell[4+j,4]:=prob;
calc.Cell[4+j,5]:=pass;
j1:=j1+j;
vir1:=vir1+vir;
ch1:=ch1+ch;
prob1:=prob1+prob;
pass1:=pass1+pass;
vir:=0;
ch:=0;
prob:=0;
pass:=0;

j:=0;
j:=j+1;
calc.Cell[4,1]:='Итого по Межг(марш):';
calc.InsertRow(4,true);
form1.adoquery7.First;
for i:=1 to form1.ADOQuery7.RecordCount do
begin
with form1.ADOQuery10 do
begin
close;
sql.Clear;
sql.Add('select marka, sum(mny), sum(mny_mg), sum(vir_zak), sum(ch_fakt), sum(prob_nul), sum(prob_pass), sum(kol_pass) from putlist where (day>=#'+day1+'#) and (day<=#'+day2+'#) and (meggor=true) and (marka='+form1.Label1.Caption+trim(form1.adoquery7marka.AsString)+form1.Label1.Caption+') and (rn='+form1.Label1.Caption+'Межгород'+form1.Label1.Caption+') and (typ_mar=1) group by marka');
open;
end;
if form1.adoquery10.RecordCount>0 then
begin
calc.Cell[4,1]:=trim(form1.ADOQuery7marka.AsString);
calc.Cell[4,2]:=form1.ADOQuery10Expr1001.AsCurrency;
calc.Cell[4,3]:=form1.ADOQuery10Expr1004.AsCurrency;
calc.Cell[4,4]:=form1.ADOQuery10Expr1006.AsCurrency;
calc.Cell[4,5]:=form1.ADOQuery10Expr1007.AsCurrency;
vir:=vir+form1.ADOQuery10Expr1001.AsCurrency;
ch:=ch+form1.ADOQuery10Expr1004.AsCurrency;
prob:=prob+form1.ADOQuery10Expr1006.AsCurrency;
pass:=pass+form1.ADOQuery10Expr1007.AsCurrency;
calc.InsertRow(4,true);
j:=j+1;
end;
form1.adoquery7.Next;
end;
calc.Cell[4,1]:='Межг(маршр)';
calc.InsertRow(4,true);
j:=j+1;
calc.InsertRow(4,true);
j:=j+1;
calc.Cell[4+j,2]:=vir;
calc.Cell[4+j,3]:=ch;
calc.Cell[4+j,4]:=prob;
calc.Cell[4+j,5]:=pass;
j1:=j1+j;
vir1:=vir1+vir;
ch1:=ch1+ch;
prob1:=prob1+prob;
pass1:=pass1+pass;

vir:=0;
ch:=0;
prob:=0;
pass:=0;

j:=0;
j:=j+1;
calc.Cell[4,1]:='Итого по Межг(заказ):';
calc.InsertRow(4,true);
form1.adoquery7.First;
for i:=1 to form1.ADOQuery7.RecordCount do
begin
with form1.ADOQuery10 do
begin
close;
sql.Clear;
sql.Add('select marka, sum(mny), sum(mny_mg), sum(vir_zak), sum(ch_fakt), sum(prob_nul), sum(prob_pass), sum(kol_pass) from putlist where (day>=#'+day1+'#) and (day<=#'+day2+'#) and (meggor=true) and (marka='+form1.Label1.Caption+trim(form1.adoquery7marka.AsString)+form1.Label1.Caption+') and (rn='+form1.Label1.Caption+'Межгород'+form1.Label1.Caption+') and (typ_mar=2) group by marka');
open;
end;
if form1.adoquery10.RecordCount>0 then
begin
calc.Cell[4,1]:=trim(form1.ADOQuery7marka.AsString);
calc.Cell[4,2]:=form1.ADOQuery10Expr1001.AsCurrency;
calc.Cell[4,3]:=form1.ADOQuery10Expr1004.AsCurrency;
calc.Cell[4,4]:=form1.ADOQuery10Expr1006.AsCurrency;
calc.Cell[4,5]:=form1.ADOQuery10Expr1007.AsCurrency;
vir:=vir+form1.ADOQuery10Expr1001.AsCurrency;
ch:=ch+form1.ADOQuery10Expr1004.AsCurrency;
prob:=prob+form1.ADOQuery10Expr1006.AsCurrency;
pass:=pass+form1.ADOQuery10Expr1007.AsCurrency;
calc.InsertRow(4,true);
j:=j+1;
end;
form1.adoquery7.Next;
end;
calc.Cell[4,1]:='Межг(заказ)';
calc.InsertRow(4,true);
j:=j+1;
calc.InsertRow(4,true);
j:=j+1;
calc.Cell[4+j,2]:=vir;
calc.Cell[4+j,3]:=ch;
calc.Cell[4+j,4]:=prob;
calc.Cell[4+j,5]:=pass;
j1:=j1+j;
vir1:=vir1+vir;
ch1:=ch1+ch;
prob1:=prob1+prob;
pass1:=pass1+pass;


vir:=0;
ch:=0;
prob:=0;
pass:=0;

j:=0;
j:=j+1;
calc.Cell[4,1]:='Итого по Межг(хоз/обс):';
calc.InsertRow(4,true);
form1.adoquery7.First;
for i:=1 to form1.ADOQuery7.RecordCount do
begin
with form1.ADOQuery10 do
begin
close;
sql.Clear;
sql.Add('select marka, sum(mny), sum(mny_mg), sum(vir_zak), sum(ch_fakt), sum(prob_nul), sum(prob_pass), sum(kol_pass) from putlist where (day>=#'+day1+'#) and (day<=#'+day2+'#) and (meggor=true) and (marka='+form1.Label1.Caption+trim(form1.adoquery7marka.AsString)+form1.Label1.Caption+') and (rn='+form1.Label1.Caption+'Межгород'+form1.Label1.Caption+') and (typ_mar=3) group by marka');
open;
end;
if form1.adoquery10.RecordCount>0 then
begin
calc.Cell[4,1]:=trim(form1.ADOQuery7marka.AsString);
calc.Cell[4,2]:=form1.ADOQuery10Expr1001.AsCurrency;
calc.Cell[4,3]:=form1.ADOQuery10Expr1004.AsCurrency;
calc.Cell[4,4]:=form1.ADOQuery10Expr1006.AsCurrency;
calc.Cell[4,5]:=form1.ADOQuery10Expr1007.AsCurrency;
vir:=vir+form1.ADOQuery10Expr1001.AsCurrency;
ch:=ch+form1.ADOQuery10Expr1004.AsCurrency;
prob:=prob+form1.ADOQuery10Expr1006.AsCurrency;
pass:=pass+form1.ADOQuery10Expr1007.AsCurrency;
calc.InsertRow(4,true);
j:=j+1;
end;
form1.adoquery7.Next;
end;
calc.Cell[4,1]:='Межг(хоз/обс)';
calc.InsertRow(4,true);
j:=j+1;

calc.Cell[4+j,2]:=vir;
calc.Cell[4+j,3]:=ch;
calc.Cell[4+j,4]:=prob;
calc.Cell[4+j,5]:=pass;
j1:=j1+j;
vir1:=vir1+vir;
ch1:=ch1+ch;
prob1:=prob1+prob;
pass1:=pass1+pass;

calc.Cell[6+j1,1]:='Общий итог';
calc.Cell[6+j1,2]:=vir1;
calc.Cell[6+j1,3]:=ch1;
calc.Cell[6+j1,4]:=prob1;
calc.Cell[6+j1,5]:=pass1;
calc.Visible:=true;
end;

end.

- Ведомость эксплуатационных показателей

procedure TForm19.RzBitBtn1Click(Sender: TObject);
var calc:toocalc; year1,mon1,dt1:word ; m1,d1:string[2]; day1,day2,rn1:string[20]; vir,vir1,vir_mg,vir_mg1,rabd,rabd1,ch_fakt,ch_fakt1,ch_reis,ch_reis1,kol_pass,kol_pass1,prob_null,prob_null1,prob_pass,prob_pass1,gsm,gsm1,vir_zak,vir_zak1,vir_zakg,vir_zakg1:currency; i,j,k,k1,n,n1:integer;
virg, vir_zak2, virg1,vir_mgg,vir_mgg1,rabdg,rabdg1,ch_faktg,ch_faktg1,ch_reisg,ch_reisg1,kol_passg,kol_passg1,prob_nullg,prob_nullg1,prob_passg,prob_passg1,gsmg,gsmg1,vir2,vir_mg2,rabd2,ch_fakt2,ch_reis2,kol_pass2,prob_null2,prob_pass2,gsm2:currency;
label q,q1,q2,q3,q4;
begin
if trim(combobox1.text)='' then showmessage('Не введен номер бригады') else
begin
with form1.adoquery7 do
begin
close;
sql.Clear;
sql.add('select distinct marka from bus');
open;
end;
progressbar1.Position:=0;
progressbar1.Max:=form1.ADOQuery7.RecordCount;
calc:=toocalc.Create('c:\plist\xlt\ved_mar.xlt');
decodedate(datetimepicker1.Date,year1,mon1,dt1);
if mon1<10 then m1:='0'+inttostr(mon1) else m1:=inttostr(mon1);
if dt1<10 then d1:='0'+inttostr(dt1) else d1:=inttostr(dt1);
day1:=inttostr(year1)+'/'+m1+'/'+d1;
decodedate(datetimepicker2.Date,year1,mon1,dt1);
if mon1<10 then m1:='0'+inttostr(mon1) else m1:=inttostr(mon1);
if dt1<10 then d1:='0'+inttostr(dt1) else d1:=inttostr(dt1);
day2:=inttostr(year1)+'/'+m1+'/'+d1;
vir2:=0;
vir_mg2:=0;
vir_zak2:=0;
rabd2:=0;
ch_fakt2:=0;
ch_reis2:=0;
kol_pass2:=0;
prob_null2:=0;
prob_pass2:=0;
gsm2:=0;
n1:=0;
vir:=0;
vir1:=0;
vir_mg:=0;
vir_mg1:=0;
rabd :=0;
rabd1 :=0;
ch_fakt :=0;
ch_fakt1 :=0;
ch_reis:=0;
ch_reis1:=0;
kol_pass :=0;
kol_pass1 :=0;
prob_null :=0;
prob_null1:=0;
gsm :=0;
gsm1 :=0;
prob_pass:=0;
prob_pass1:=0;
virg:=0;
virg1:=0;
vir_mgg:=0;
vir_mgg1:=0;
rabdg :=0;
rabdg1 :=0;
ch_faktg :=0;
ch_faktg1 :=0;
ch_reisg:=0;
ch_reisg1:=0;
kol_passg :=0;
kol_passg1 :=0;
prob_nullg :=0;
prob_nullg1:=0;
gsmg :=0;
gsmg1 :=0;
prob_passg:=0;
prob_passg1:=0;
vir_zak:=0;
vir_zak1:=0;
vir_zakg:=0;
vir_zakg1:=0;
n:=0;
for i:=1 to form1.adoquery7.RecordCount do
begin
if radiobutton2.Checked=true then
begin
with form1.adoquery5 do
begin
close;
sql.Clear;
sql.Add('select * from putlist where (marka='+form1.Label1.Caption+trim(form1.adoquery7marka.AsString)+form1.Label1.Caption+') and (day>=#'+day1+'#) and (day<=#'+day2+'#) and (brg='+combobox1.Text+') and (meggor=true)');
open;
end;
end
else
begin
with form1.adoquery5 do
begin
close;
sql.Clear;
sql.Add('select * from putlist where (marka='+form1.Label1.Caption+trim(form1.adoquery7marka.AsString)+form1.Label1.Caption+') and (day>=#'+day1+'#) and (day<=#'+day2+'#) and (brg='+combobox1.Text+') and (meggor=false)');
open;
end;
end;
n:=0;
if form1.adoquery5.RecordCount=0 then goto q2;
calc.Cell[7,1]:='Итого по ';
calc.cell[7,2]:=form1.ADOQuery7marka.AsString;
calc.InsertRow(7,true);
calc.Cell[7,1]:='Итого по';
calc.Cell[7,2]:='Город';
calc.insertrow(7,true);
calc.Cell[7,1]:='Итого по';
calc.Cell[7,2]:='Межг/приг';
calc.InsertRow(7,true);
n:=n+3;
vir1:=0;
vir_mg1:=0;
rabd1:=0;
ch_fakt1:=0;
ch_reis1:=0;
kol_pass1:=0;
prob_null1:=0;
vir_zak1:=0;
prob_pass1:=0;
gsm1:=0;
vir_zakg:=0;
virg:=0;
vir_mgg:=0;
rabdg:=0;
ch_faktg:=0;
ch_reisg:=0;
kol_passg:=0;
prob_nullg:=0;
prob_passg:=0;
gsmg:=0;
with form1.adoquery2 do
begin
close;
sql.Clear;
sql.Add('select * from bus where marka='+form1.Label1.Caption+trim(form1.ADOQuery7marka.AsString)+form1.Label1.Caption);
open;

end;
with form1.ADOQuery3 do
begin
close;
sql.clear;
sql.Add('select * from marsh order by numb desc');
open;

end;
for j:=1 to form1.adoquery3.RecordCount do
begin
vir:=0;
vir_mg:=0;
vir_zak:=0;
rabd :=0;
ch_fakt :=0;
ch_reis:=0;
kol_pass :=0;
prob_null :=0;
gsm :=0;
prob_pass:=0;
vir_zak:=0;
if radiobutton2.Checked=true then
begin
with form1.adoquery5 do
begin
close;
sql.Clear;
sql.Add('select * from putlist where (cd_mar='+form1.adoquery3numb.AsString+') and (day>=#'+day1+'#) and (day<=#'+day2+'#) and (brg='+combobox1.Text+') and (meggor=true)');
open;
end;
end
else
begin
with form1.adoquery5 do
begin
close;
sql.Clear;
sql.Add('select * from putlist where (cd_mar='+form1.adoquery3numb.AsString+') and (day>=#'+day1+'#) and (day<=#'+day2+'#) and (brg='+combobox1.Text+') and (meggor=false)');
open;
end;
end;
if form1.adoquery5.RecordCount=0 then goto q;
form1.adoquery2.First;
for k:=1 to form1.ADOQuery2.RecordCount do
begin
if radiobutton2.Checked=true then
begin
with form1.adoquery5 do
begin
close;
sql.Clear;
sql.Add('select * from putlist where (meggor=true) and (cd_bus='+form1.adoquery2garnum.AsString+') and (cd_mar='+form1.adoquery3numb.AsString+') and (day>=#'+day1+'#) and (day<=#'+day2+'#) and (brg='+combobox1.Text+') ');
open;
end;
end
else
begin
with form1.adoquery5 do
begin
close;
sql.Clear;
sql.Add('select * from putlist where (meggor=false) and (cd_bus='+form1.adoquery2garnum.AsString+') and (cd_mar='+form1.adoquery3numb.AsString+') and (day>=#'+day1+'#) and (day<=#'+day2+'#) and (brg='+combobox1.Text+') ');
open;
end;
end;
if form1.ADOQuery5.RecordCount=0 then goto q1;
for k1:=1 to form1.adoquery5.RecordCount do
begin
vir:=vir+form1.ADOQuery5mny.AsCurrency;
vir_mg:=vir_mg+form1.adoquery5mny_mg.AsCurrency;
vir_zak:=vir_zak+form1.ADOQuery5vir_zak.AsCurrency;
rabd :=rabd+form1.adoquery5rabden.AsCurrency;
ch_fakt :=ch_fakt+form1.ADOQuery5ch_fakt.AsCurrency;
ch_reis:=ch_reis+form1.ADOQuery5ch_reis.AsCurrency;
kol_pass :=kol_pass+form1.ADOQuery5kol_pass.AsCurrency;
prob_null :=prob_null+form1.ADOQuery5prob_nul.AsCurrency;
prob_pass:=prob_pass+form1.adoquery5prob_pass.AsCurrency;
gsm :=gsm+form1.ADOQuery5rsh_ben.AsCurrency;
if form1.adoquery5meggor.AsBoolean=false then
begin
virg:=virg+form1.ADOQuery5mny.AsCurrency;
vir_mgg:=vir_mgg+form1.adoquery5mny_mg.AsCurrency;
vir_zakg:=vir_zakg+form1.ADOQuery5vir_zak.AsCurrency;
rabdg :=rabdg+form1.adoquery5rabden.AsCurrency;
ch_faktg :=ch_faktg+form1.ADOQuery5ch_fakt.AsCurrency;
ch_reisg:=ch_reisg+form1.ADOQuery5ch_reis.AsCurrency;
kol_passg :=kol_passg+form1.ADOQuery5kol_pass.AsCurrency;
prob_nullg :=prob_nullg+form1.ADOQuery5prob_nul.AsCurrency;
prob_passg:=prob_passg+form1.adoquery5prob_pass.AsCurrency;
gsmg:=gsmg+form1.ADOQuery5rsh_ben.AsCurrency;
end;
form1.adoquery5.Next;
end;
q1: form1.adoquery2.Next;
end;
if (vir<>0) or (vir_mg<>0) or (rabd<>0) or (ch_fakt<>0) or (ch_reis<>0) or (kol_pass<>0) or (gsm<>0) or (prob_pass<>0) then
begin
calc.Cell[7,1]:=form1.adoquery7marka.AsString;
calc.Cell[7,2]:=form1.ADOQuery3numb.AsString;
calc.Cell[7,3]:=vir;
calc.Cell[7,4]:=vir_zak;
calc.Cell[7,5]:=vir_mg;
calc.Cell[7,6]:=rabd;
calc.Cell[7,7]:=ch_fakt;
calc.Cell[7,8]:=ch_reis;
calc.Cell[7,9]:=kol_pass;
calc.Cell[7,10]:=prob_pass;
calc.Cell[7,11]:=prob_pass-prob_null;
calc.cell[7,12]:=gsm;
calc.InsertRow(7,true);

vir1:=vir1+vir;
vir_mg1:=vir_mg1+vir_mg;
vir_zak1:=vir_zak1+vir_zak;
rabd1:=rabd1+rabd;
ch_fakt1:=ch_fakt1+ch_fakt;
ch_reis1:=ch_reis1+ch_reis;
kol_pass1:=kol_pass1+kol_pass;
prob_null1:=prob_null1+prob_null;
prob_pass1:=prob_pass1+prob_pass;
gsm1:=gsm1+gsm;
n:=n+1;
end;
q: form1.adoquery3.next;
end;

calc.Cell[7+n,3]:=vir1;
calc.Cell[7+n,4]:=vir_zak1;
calc.Cell[7+n,5]:=vir_mg1;
calc.Cell[7+n,6]:=rabd1;
calc.Cell[7+n,7]:=ch_fakt1;
calc.Cell[7+n,8]:=ch_reis1;
calc.Cell[7+n,9]:=kol_pass1;
calc.Cell[7+n,10]:=prob_pass1;
calc.Cell[7+n,11]:=prob_pass1-prob_null1;
calc.cell[7+n,12]:=gsm1;
calc.Cell[5+n,3]:=vir1-virg;
calc.Cell[5+n,4]:=vir_zak1-vir_zakg;
calc.Cell[5+n,5]:=vir_mg1-vir_mgg;
calc.Cell[5+n,6]:=rabd1-rabdg;
calc.Cell[5+n,7]:=ch_fakt1-ch_faktg;
calc.Cell[5+n,8]:=ch_reis1-ch_reisg;
calc.Cell[5+n,9]:=kol_pass1-kol_passg;
calc.Cell[5+n,10]:=prob_pass1-prob_passg;
calc.Cell[5+n,11]:=prob_pass1-prob_passg-prob_null1+prob_nullg;
calc.cell[5+n,12]:=gsm1-gsmg;
calc.Cell[6+n,3]:=virg;
calc.Cell[6+n,4]:=vir_zakg;
calc.Cell[6+n,5]:=vir_mgg;
calc.Cell[6+n,6]:=rabdg;
calc.Cell[6+n,7]:=ch_faktg;
calc.Cell[6+n,8]:=ch_reisg;
calc.Cell[6+n,9]:=kol_passg;
calc.Cell[6+n,10]:=prob_passg;
calc.Cell[6+n,11]:=prob_passg-prob_nullg;
calc.cell[6+n,12]:=gsmg;
vir2:=vir1+vir2;
vir_zak2:=vir_zak2+vir_zak1;
vir_mg2:=vir_mg1+vir_mg2;
rabd2:=rabd1+rabd2;
ch_fakt2:=ch_fakt1+ch_fakt2;
ch_reis2:=ch_reis1+ch_reis2;
kol_pass2:=kol_pass1+kol_pass2;
prob_null2:=prob_null1+prob_null2;
prob_pass2:=prob_pass1+prob_pass2;
gsm2:=gsm1+gsm2;
n1:=n1+n;
q2: progressbar1.stepby(1);
form1.ADOQuery7.Next;
end;
if radiobutton1.Checked=true then calc.Cell[3,1]:='Город ';
calc.Cell[3,1]:=calc.Cell[3,1]+'Бригада '+' '+ combobox1.Text+'. Период:'+ datetostr(datetimepicker1.Date)+'-'+datetostr(datetimepicker2.Date);

calc.Cell[9+n1,3]:=vir2;
calc.Cell[9+n1,4]:=vir_zak2;
calc.Cell[9+n1,5]:=vir_mg2;
calc.Cell[9+n1,6]:=rabd2;
calc.Cell[9+n1,7]:=ch_fakt2;
calc.Cell[9+n1,8]:=ch_reis2;
calc.Cell[9+n1,9]:=kol_pass2;
calc.Cell[9+n1,10]:=prob_pass2;
calc.Cell[9+n1,11]:=prob_pass2-prob_null2;
calc.cell[9+n1,12]:=gsm2;
calc.Cell[9+n1,1]:='Общий итог';
calc.Visible:=true;
end;
end;
end.








73

1. 1C-Рарус: Управление автотранспортом [Электронный ресурс]. - Режим доступа: http://www.audit-1c.ru/software/software_1c/solutions_1c/element.php
2. Алехина, Г.В. Информационные технологии в экономике / Г.В. Алехина. - М.: Московская финансово-промышленная академия, 2005. - 215 с.
3. Анфилатов, В.С. Системный анализ в управлении: учеб.пособие / В.С. Анфилатов, А.А. Емельянов А.А. Кукушин; под.ред. А.А. Емельянова. - М.: Финансы и статистика, 2007. - 368 с.
4. Благодатских, В.А. и др. Стандартизация разработки программных средств: учеб. пособие / В.А. Благодатских, В.А. Волнин и др. - М.: Финансы и статистика, 2005. - 288 с.
5. Божко, В.П., Власов, Д.В., Гаспариан, М.С. Информационные технологии в экономике и управлении: учеб.-метод. комплекс / В.П. Божко, Д.В. Власов, М.С. Гаспариан. - М.: Изд. центр ЕАОИ, 2008. - 120 с.
6. Вендров, А.М. Современные методы и средства проектирования информационных систем / А.М. Вендров. - М.: Финансы и статистика, 1998. - 176 с.
7. Вендров, А.М. Проектирование программного обеспечения экономических информационных систем: учебник / А.М. Вендров. - М.: Финансы и статистика, 2000. - 353 с.
8. Вендров, А.М. Практикум по проектированию программного обеспечения экономических информационных систем: учеб. пособие / А.М. Вендров. - М.: Финансы и статистика, 2002. - 192 с.
9. Воронин, А.Г., Лапин, В.Л., Широков, А.Н. Основы управления муниципальным хозяйством / А.Г. Воронин, В.Л. Лапин, А.Н. Широков. - М.: Дело, 1988.
10. Дорохова, В.Р. Курс лекций по дисциплине «Проектирование информационных систем» / В.Р. Дорохова; Алт. гос. техн.ун-т им. И.И. Ползунова. - Барнаул: кафедра ИСЭ, АлтГТУ, 2010. - 161 с.
11. Ефимов, Е.Н., Патрушина, С.М., Панферова, Л.Ф., Хашиева, Л.И. Информационные системы в экономике / Е.Н. Ефимов, С.М. Патрушина, Л.Ф. Панферова, Л.И. Хашиева. - М.: ИКЦ «МарТ»; Ростов н/Д: издательский центр «МарТ», 2004. - 352 с.
12. Иванов, В.В., Коробова, А.Я. Муниципальный менеджмент / В.В. Иванов, А.Я. Коробоваю. - М.: ИНФРА-М, 2002.
13. Информационные системы в экономике: учебник для студентов вузов / Под ред. Г.А. Титоренко. - 2-е изд., перераб и доп. - М.: ЮНИТИ-ДАНА, 2008. - 463 с.
14. Информационная технология. Комплекс стандартов и руководящих документов на «Автоматизированные системы». - М.: Комитет стандартизации и метрологии, 1991.
15. Калянов, Г.Н. CASE структурный анализ (автоматизация и применение) / Г.Н. Калянов. - М.: Лори, 1996. - 242 c.
16. Карточка решения 1С: Управление автотранспортом [Электронный ресурс]. - Режим доступа: http://solutions.1c.ru/catalog/autotransport-standart.
17. Клещев, Н.Т. Практическое руководство по организации и проектированию информационных систем / Н.Т. Клещев. - М.: Научтехлитиздат, 2001. - 389 с.
18. Концепция развития транспортного комплекса [Электронный ресурс]. - Режим доступа: http://www.logistpro.ru/news/809.
19. Кузнецов, Е.Я., Дыбов, А.М., Сутырин, Я.М. Техника и технологии отраслей городского хозяйства / Е.Я. Кузнецов, А.М. Дыбов, Я.М. Сутырин. - Издательство Института экономики и управления УдГУ, 2001.
20. Маклаков, С.В. BPwin и ERwin. Case - средства разработки информационных систем / С.В. Маклаков. - М.: Диалог-Мифи, 1999. - 256 c.
21. Новое в экономике и управлении. Управление развитием транспортного комплекса России: сборник статей / Под общей ред. д.э.н., проф. В.А. Николаева. - М.: Изд-во «Каталог», 2006. - 94 с.
22. Система муниципального управления: учебник для вузов. / Под ред. В.Б. Зотова. - СПб.: Лидер, 2005. - 493 с.
23. Производственный календарь на 2012 год (РФ) [Электронный ресурс]. - Режим доступа: http://variant52.ru/kalendar/proizvodstvennui-kalendar-2012.htm.
24. Пятковский, О.И. Практикум по дисциплине «Проектирование информационных систем» Часть 1. Предпроектная стадия процесса проектирования экономических информационных систем: учебное пособие / О.И. Пятковский, М.В. Гунер; Алт.гос.техн.ун-т им.И.И. Ползунова. - Барнаул: кафедра ИСЭ, АлтГТУ, 2010. - 103 с.
25. Пятковский, О.И. Практикум по дисциплине «Проектирование информационных систем» Часть 2. Техно-рабочее проектирование: учебное пособие / О.И. Пятковский, М.В. Гунер; Алт. гос. техн.ун-т им.И.И. Ползунова. - Барнаул: кафедра ИСЭ, АлтГТУ, 2010. - 113 с.
26. Пятковский, О.И. Информационная система управления предприятием: учебное пособие / О.И. Пятковский, Алт. гос. техн.ун-т им. И.И. Ползунова. - Барнаул: кафедра ИСЭ, АлтГТУ, 2006. - 172 с.
27. Пятковский, О.И. Интеллектуальные компоненты автоматизированных информационных систем управления предприятием: Монография / О.И. Пятковский. - Барнаул: «АлтГТУ», 1999.
28. Пятковский, О.И., Бутаков С.В., Рубцов Д.В. Методы построения интеллектуальных информационных систем анализа хозяйственной деятельности предприятий / О.И. Пятковский. - Барнаул: «АлтГТУ», 1999.
29. Смирнова, Г.Н., Сорокин, А.А., Тельнов, Ю.Ф. Проектирование экономических информационных систем: учебник: / Под ред. Ю.Ф. Тельнова. - М.: Финансы и статистика, 2001. - 512 с.
30. Фуфаев, Э.В. Базы данных: учеб. пособие для студ. сред. проф. образования / Э.В. Фуфаев, Д.Э. Фуфаев. - Издательский центр «Академия», 2005. - 320 с.
31. Черемных, С.В., Семенов, И.О., Ручкин, В.С. Структурный анализ систем: IDEF-технологии / С.В. Черемных, И.О. Семенов, В.С. Ручкин. - М.: Финансы и статистика, 2001. - 208 с.
32. Черемных, С.В., Семенов, И.О., Ручкин, В.С. Моделирование и анализ систем: IDEF-технологии: практикум / С.В. Черемных, И.О. Семенов, В.С. Ручкин. - М.: Финансы и статистика, 2002. - 192 с.
34. Виханский, О.С. Стратегическое управление/ О.С.Виханский М.: Гардарики, 1998. — 296 с.
35. Виханский, О.С. Менеджмент /О.С.Виханский  М.: Гардарики, 2003. — 528 с.
36. Волков, О.И. Экономика предприятия/ О.И.Волков, С.В.Наумов  М.: Инфра-М, 2006.  280 с.
37. Зайцев, Н.Л. Экономика, организация и управление предприятием/ Н.Л.Зайцева. М.: Инфра-М, 2008.  455 с.
38. Николаева, С.А. Управленческий учет/ С.А.Николаева – М.: ИПБ-БИНФА, 2003.  176с.
39. Савицкая, Г.В. Анализ хозяйственной деятельности предприятия/ Г.В.Савицкая. – М.: ИНФРА-М, 2007. – 345 с.
40. Сафронов, Н.А. Экономика предприятия/ Н.А.Сафронов.  М.: Юристъ, 1998.  584 с.

Содержание

Введение

1. Организационный раздел

1.1 определение проблемы

1.2 назначение и цели создания системы

1.3 Пользователи

1.4 Требования для программного обеспечения средства

1.5 структура и содержание работ по созданию системы

1.6 Обоснование выбранной среды программирования

1.7 Обоснование применения CASE-средств

1.8 Обоснование выбора СУБД

1.9 Требования к документации программного обеспечения

2. Технологический раздел

2.1 Описание структуры программы продукта

2.1.1 Описание домена

2.1.2 Проэктирование системы

2.1.3 Информационное обеспечение системы

2.2 Описание алгоритма решения задачи

2.2.1 Описание программы

2.2.2 Контрольный пример

2.2.3 Руководство пользователя

2.2.4 Руководство программиста

3. Экономика

3.1 Расчет материальных затрат

3.2 Расчет работы и заработной платы

3.3.Расчет стоимости электроэнергии и амортизации

3.4 Составление сметы расходов

4. Охрана труда и промышленная экология

4.1 техника безопасности при работе за ПК

4.2 Требования к организации режима труда

4.3 юзабилити исследования

Вывод

Введение

Одной из самых популярных систем, которые позволяют успешно решать вопросы автоматизации финансово-хозяйственной деятельности организаций, "1С: Предприятие". Версия 8.1, является новой разработкой фирмы "1С". Несмотря на сохранение концептуальной преемственности с предыдущими версиями, программа "1С: Предприятие" 8.1-это качественно новый продукт, который позволяет вести управленческий учет, анализ отчетности, бухгалтерского учета с несколькими планами счетов, решить задачи планирования, бюджетирования и финансового анализа, сохранить многовалютный учет и ряд других новых функций, значительно облегчающих труд финансовых работников предприятий и отвечают современным требованиям.

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

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