⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unitstat.pas

📁 管理车队用车记录
💻 PAS
字号:
unit unitstat;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, ExtCtrls, Buttons, Grids, DBGrids,math;

type
  TForm_unitstat = class(TForm)
    Panel1: TPanel;
    Label5: TLabel;
    ComboBox1: TComboBox;
    Label9: TLabel;
    DateTimePicker1: TDateTimePicker;
    Label10: TLabel;
    DateTimePicker2: TDateTimePicker;
    Panel2: TPanel;
    DBGrid1: TDBGrid;
    Panel3: TPanel;
    Label3: TLabel;
    Label4: TLabel;
    Label1: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    BitBtn1: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn2: TBitBtn;
    Label2: TLabel;
    Edit3: TEdit;
    procedure FormShow(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure DBGrid1TitleClick(Column: TColumn);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form_unitstat: TForm_unitstat;

implementation
  uses dm,unitstatrep;
{$R *.dfm}

procedure TForm_unitstat.FormShow(Sender: TObject);
begin
with form_dm.ADOtable_employer do
        begin
        open;
        Sort:='name';
        first;
        combobox1.Items.Clear;
        combobox1.Items.Add('全部');
        repeat

            combobox1.Items.Add(fieldbyname('name').AsString);
            Next;
        until eof;
        end;
combobox1.Text:='';
datetimepicker1.Date:=date;
datetimepicker2.Date:=date;
edit1.Text:='0';
edit2.text:='0';
end;

procedure TForm_unitstat.BitBtn1Click(Sender: TObject);
var i:integer;
    allfee,allkm:double;
begin
if datetimepicker1.Date>=datetimepicker2.Date then
begin
 showmessage('请选择你一个合适的时间段!');
 abort;
end;
if combobox1.Text<>'全部' then
form_dm.ADOQuery_carout.SQL.Text:='select round(car_out.spend),car_out.*,car.type from car_out,car where car_out.car_id=car.id and unit='''+combobox1.Text+''' and  car_out.date between '''+ formatdatetime('yyyy-mm-dd',datetimepicker1.date)+''' and '''+formatdatetime('yyyy-mm-dd',datetimepicker2.date)+'''  order by car_out.unit;'
else
form_dm.ADOQuery_carout.SQL.Text:='select round(car_out.spend),car_out.*,car.type from car_out,car where car_out.car_id=car.id and  car_out.date between '''+ formatdatetime('yyyy-mm-dd',datetimepicker1.date)+''' and '''+formatdatetime('yyyy-mm-dd',datetimepicker2.date)+'''  order by car_out.unit;';
form_dm.ADOQuery_carout.Open;
if form_dm.ADOQuery_carout.RecordCount=0 then
begin
  edit1.Text:='0';
  edit2.Text:='0';
  edit3.Text:='0';
   showmessage('在此段时间内该单位无用车记录!');
   abort;
end;
edit1.Text:= inttostr(form_dm.ADOQuery_carout.RecordCount);
i:=0;
allfee:=0;
allkm:=0;
with form_dm.ADOQuery_carout do
begin
  First;
  repeat
  allfee:=allfee+fieldbyname('spend').AsFloat;
  allkm:= allkm+fieldbyname('km').AsFloat;
  Next;
  until eof;
end;
allfee:=roundto(allfee,-2);
allkm:=roundto(allkm,-2);
edit3.Text:=floattostr(allfee);
edit2.Text:=floattostr(allkm);
end;

procedure TForm_unitstat.BitBtn2Click(Sender: TObject);
begin
close;
end;

procedure TForm_unitstat.BitBtn3Click(Sender: TObject);
begin
form_unitstatrep.QRLabel6.Caption:=combobox1.Text+'用车费用列表';
form_unitstatrep.QRLabel17.Caption:='('+formatdatetime('yyyy-mm-dd',datetimepicker1.date)+' 至 '+formatdatetime('yyyy-mm-dd',datetimepicker2.date)+')';
form_unitstatrep.QRLabel23.Caption:=edit1.Text;
form_unitstatrep.QRLabel24.Caption:=edit3.Text;
form_unitstatrep.QRLabel9.Caption:=edit2.Text;
form_unitstatrep.QuickRep1.Preview;
end;

procedure TForm_unitstat.DBGrid1TitleClick(Column: TColumn);
var
     i:integer;
     fieldname:string;
begin//排序
     i:=Column.Index;
     if bSort=0 then
     begin
         fieldname:=DBGrid1.Columns[i].FieldName+' ASC';
         bSort:=1;
     end
     else
     begin
         fieldname:=DBGrid1.Columns[i].FieldName+' DESC';
         bSort:=0;
     end;
     if form_dm.ADOQuery_carout.SQL.Text<>'' then
     begin
     form_dm.ADOQuery_carout.open;
     form_dm.ADOQuery_carout.Sort:=fieldname;
     end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -