📄 busicount.~pas
字号:
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iSatisfymonth_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('select Count(*) Reccount from ClientElecOut where (usersatisfy=1 or usersatisfy=2 or usersatisfy=3) and zzflsj>=:A and zzflsj<=:B and (state=2 or state=7 or state=8 or state=9) and ELECOUT_LEVEL=3');
Parambyname('A').AsDateTime:=totaltime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iSatisfytotal_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('select Count(*) Reccount from ClientElecOut where zzflsj>=:A and zzflsj<=:B and (state=2 or state=7 or state=8 or state=9) and ELECOUT_LEVEL=3');
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
Satisfy_month_DY:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('select Count(*) Reccount from ClientElecOut where zzflsj>=:A and zzflsj<=:B and (state=2 or state=7 or state=8 or state=9) and ELECOUT_LEVEL=3');
Parambyname('A').AsDateTime:=totaltime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
Satisfy_total_DY:=Fieldbyname('RecCount').AsInteger;
//超期率
if Satisfy_month_DY=0 then SatisfyRate_month:='0' else SatisfyRate_month:=Format('%2.2f',[iSatisfymonth_Num/Satisfy_month_DY*100]);
if Satisfy_total_DY=0 then SatisfyRate_total:='0' else SatisfyRate_total:=Format('%2.2f',[iSatisfytotal_Num/Satisfy_total_DY*100]);
finally
free;
end;
end;
procedure TFrm_BusiCount.CalNXGZ(const totaltime, starttime,
endtime: TDateTIme; var iSendmonth_Num, iSendtotal_Num, iFinishmonth_Num,
iFinishtotal_Num, iNoFinishmonth_Num, iNoFinishtotal_Num,
iOverTimeFinishmonth_Num, iOverTimeFinishtotal_Num, iSatisfymonth_Num,
iSatisfytotal_Num: integer; var OverTimeRate_month, OverTimeRate_total,
SatisfyRate_month, SatisfyRate_total: string);
//var
//Satisfy_month, Satisfy_total:integer;
begin
with TQuery.Create(nil) do
try
//总件数
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientElecOut where zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4');
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iSendmonth_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientElecOut where zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4');
Parambyname('A').AsDateTime:=totaltime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iSendtotal_Num:=Fieldbyname('RecCount').AsInteger;
//完成数
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientElecOut where State=2 and zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4');
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iFinishmonth_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientElecOut where State=2 and zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4');
Parambyname('A').AsDateTime:=totaltime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iFinishtotal_Num:=Fieldbyname('RecCount').AsInteger;
//未完成数
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientElecOut where State=0 and zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4');
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iNoFinishmonth_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientElecOut where State=0 and zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4');
Parambyname('A').AsDateTime:=totaltime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iNoFinishtotal_Num:=Fieldbyname('RecCount').AsInteger;
//超期完成数
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
//Sql.Add('Select count(*) RecCount from ClientAsk where State=2 and xdsj<fhsj and slsj>=:A and slsj<=:B and urgentnum=0');
Sql.Add('Select ');
Sql.Add('(select Count(*) from ClientElecOut where IsOverTime=1 and state=2 and datediff(minute,zzflsj,pcsj)>45 and zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4)+');
Sql.Add('(select Count(*) from ClientElecOut where IsOverTime=2 and state=2 and datediff(minute,zzflsj,pcsj)>90 and zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4)+');
Sql.Add('(select Count(*) from ClientElecOut where IsOverTime=3 and state=2 and datediff(hour,zzflsj,pcsj)>2 and zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4) ');
Sql.Add('RecCount');
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iOverTimeFinishmonth_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
//Sql.Add('Select count(*) RecCount from ClientAsk where State=2 and xdsj<fhsj and slsj>=:A and slsj<=:B and urgentnum=0');
Sql.Add('Select ');
Sql.Add('(select Count(*) from ClientElecOut where IsOverTime=1 and state=2 and datediff(minute,zzflsj,pcsj)>45 and zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4)+');
Sql.Add('(select Count(*) from ClientElecOut where IsOverTime=2 and state=2 and datediff(minute,zzflsj,pcsj)>90 and zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4)+');
Sql.Add('(select Count(*) from ClientElecOut where IsOverTime=3 and state=2 and datediff(hour,zzflsj,pcsj)>2 and zzsbsj>=:A and zzsbsj<=:B and ELECOUT_LEVEL=4) ');
Sql.Add('RecCount');
Parambyname('A').AsDateTime:=totaltime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iOverTimeFinishtotal_Num:=Fieldbyname('RecCount').AsInteger;
//超期率
if iFinishmonth_Num=0 then OverTimeRate_month:='0' else OverTimeRate_month:=Format('%2.2f',[iOverTimeFinishmonth_Num/iFinishmonth_Num*100]);
if iFinishtotal_Num=0 then OverTimeRate_total:='0' else OverTimeRate_total:=Format('%2.2f',[iOverTimeFinishtotal_Num/iFinishtotal_Num*100]);
//满意数
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('select Count(*) Reccount from ClientElecOut where (usersatisfy=1 or usersatisfy=2 or usersatisfy=3) and zzflsj>=:A and zzflsj<=:B and (state=2 or state=7 or state=8 or state=9) and ELECOUT_LEVEL=4');
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iSatisfymonth_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('select Count(*) Reccount from ClientElecOut where (usersatisfy=1 or usersatisfy=2 or usersatisfy=3) and zzflsj>=:A and zzflsj<=:B and (state=2 or state=7 or state=8 or state=9) and ELECOUT_LEVEL=4');
Parambyname('A').AsDateTime:=totaltime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iSatisfytotal_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('select Count(*) Reccount from ClientElecOut where zzflsj>=:A and zzflsj<=:B and (state=2 or state=7 or state=8 or state=9) and ELECOUT_LEVEL=4');
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
Satisfy_month_NX:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('select Count(*) Reccount from ClientElecOut where zzflsj>=:A and zzflsj<=:B and (state=2 or state=7 or state=8 or state=9) and ELECOUT_LEVEL=4');
Parambyname('A').AsDateTime:=totaltime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
Satisfy_total_NX:=Fieldbyname('RecCount').AsInteger;
//超期率
if Satisfy_month_NX=0 then SatisfyRate_month:='0' else SatisfyRate_month:=Format('%2.2f',[iSatisfymonth_Num/Satisfy_month_NX*100]);
if Satisfy_total_NX=0 then SatisfyRate_total:='0' else SatisfyRate_total:=Format('%2.2f',[iSatisfytotal_Num/Satisfy_total_NX*100]);
finally
free;
end;
end;
procedure TFrm_BusiCount.CalTSJB(const totaltime, starttime,
endtime: TDateTIme; var iSendmonth_Num, iSendtotal_Num, iFinishmonth_Num,
iFinishtotal_Num, iNoFinishmonth_Num, iNoFinishtotal_Num,
iOverTimeFinishmonth_Num, iOverTimeFinishtotal_Num, iSatisfymonth_Num,
iSatisfytotal_Num: integer; var OverTimeRate_month, OverTimeRate_total,
SatisfyRate_month, SatisfyRate_total: string);
//var
//Satisfy_month, Satisfy_total:integer;
begin
with TQuery.Create(nil) do
try
//总件数
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientComp where slsj>=:A and slsj<=:B');
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iSendmonth_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientComp where slsj>=:A and slsj<=:B');
Parambyname('A').AsDateTime:=totaltime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iSendtotal_Num:=Fieldbyname('RecCount').AsInteger;
//完成数
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientComp where (State=2 or state=7 or state=9) and slsj>=:A and slsj<=:B');
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iFinishmonth_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientComp where (State=2 or state=7 or state=9) and slsj>=:A and slsj<=:B');
Parambyname('A').AsDateTime:=totaltime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iFinishtotal_Num:=Fieldbyname('RecCount').AsInteger;
//未完成数
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientComp where State=0 and slsj>=:A and slsj<=:B');
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iNoFinishmonth_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientComp where State=0 and slsj>=:A and slsj<=:B');
Parambyname('A').AsDateTime:=totaltime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iNoFinishtotal_Num:=Fieldbyname('RecCount').AsInteger;
//超期完成数
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientComp where State=2 and xdsj<fhsj and slsj>=:A and slsj<=:B');
Parambyname('A').AsDateTime:=starttime; Parambyname('B').AsDateTime:=endtime;
Prepare; Open;
iOverTimeFinishmonth_Num:=Fieldbyname('RecCount').AsInteger;
Databasename:=SysDM.DBMain.databasename;
close; Sql.Clear ;
Sql.Add('Select count(*) RecCount from ClientComp where State=2 and xdsj<fhsj and slsj>=:A and slsj<=:B');
Parambyname('A').AsDateTime:=
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -