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

📄 ulist.~pas

📁 一套专门为商品混凝土生产企业开发的生产部生产状态监控系统~本系统要上海思伟生产系统支持
💻 ~PAS
字号:
unit Ulist;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, StdCtrls, Buttons, DB, ADODB, AppEvnts;

type
  Tlist = class(TForm)
    DBlist: TDBGrid;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    ADOQlist: TADOQuery;
    DataSlist: TDataSource;
    Edit1: TEdit;
    ADOQsl: TADOQuery;
    ADOQzcx: TADOQuery;
    ADOQlistDSDesigner: TAutoIncField;
    ADOQlistch: TWideStringField;
    ADOQlistgd: TWideStringField;
    ADOQlistfcsj: TDateTimeField;
    ADOQlisths: TWideStringField;
    ADOQlistrq: TDateTimeField;
    ApplicationEvents1: TApplicationEvents;
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure ApplicationEvents1Message(var Msg: tagMSG;
      var Handled: Boolean);
    procedure DBlistDrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  list: Tlist;

implementation
  uses tgl;
{$R *.dfm}

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

procedure Tlist.BitBtn1Click(Sender: TObject);
var a1,a2,a3,a4,a5:string;
begin

ADOQzcx.Close;
ADOQzcx.SQL.Clear;
ADOQzcx.SQL.Add('select * from tjlb where frwdh='''+trim(edit1.text)+''' order by fscrq desc,fccsj desc');
ADOQzcx.Open;
//清空表//
adoqsl.Close;
adoqsl.SQL.Clear;
adoqsl.SQL.Add('delete  from list');
adoqsl.ExecSQL;
//写入//
while not ADOQzcx.Eof do
  begin
   a1:=(ADOQzcx.fieldbyname('fshch').AsString+'>'+ADOQzcx.fieldbyname('fsjxm').AsString);
   //showmessage(a1);
   a2:=(ADOQzcx.fieldbyname('fgcmc').AsString);
   a3:=(ADOQzcx.fieldbyname('fccsj').AsString);
   try
   a4:=(floattostr(round((strtotime(ADOQzcx.fieldbyname('fccsj').AsString)-strtotime(ADOQzcx.fieldbyname('fdcsj').AsString))/3*4*24*60)));
   ///////
   if strtofloat(a4)>0 then
     begin
     if strtofloat(a4)>99 then a4:='超时'
     else  a4:=a4+'分';
     end
   else
     begin
     a4:=floattostr(strtofloat(a4)+24*60);
     a4:=a4+'分';
     end;
   ///////
   except
   a4:='不明';
   end;
   a5:=(ADOQzcx.fieldbyname('fscrq').AsString);

      ////写入数据////////////////////////////
      adoqsl.Close;
      adoqsl.SQL.Clear;
      adoqsl.SQL.Add('insert into list(ch,gd,fcsj,hs,rq) values('''+a1+''','''+a2+''','''+a3+''','''+a4+''','''+a5+''')');
      adoqsl.ExecSQL;

        ADOQzcx.next;
  end;
///////////////////////////

adoqlist.Close;
adoqlist.SQL.Clear;
adoqlist.SQL.Add('select * from list order by rq desc,fcsj desc');
adoqlist.Open;
dblist.Columns[0].FieldName:='ch';
dblist.Columns[0].Title.caption:='车号';
dblist.Columns[0].Width:=65;

dblist.Columns[1].FieldName:='gd';
dblist.Columns[1].Title.caption:='工地';
dblist.Columns[1].Width:=172;

dblist.Columns[2].FieldName:='rq';
dblist.Columns[2].Title.caption:='日期';
dblist.Columns[2].Width:=75;

dblist.Columns[3].FieldName:='fcsj';
dblist.Columns[3].Title.caption:='时间';
dblist.Columns[3].Width:=45;

dblist.Columns[4].FieldName:='hs';
dblist.Columns[4].Title.caption:='耗时';
dblist.Columns[4].Width:=33;
 TStringGrid(dblist).DefaultRowHeight:=24;
///////////////////////

end;

procedure Tlist.FormShow(Sender: TObject);
begin
  
  edit1.Text:=form1.ADOQuery1.FieldByName('frwdh').text;
  BitBtn1.Click;
end;

procedure Tlist.ApplicationEvents1Message(var Msg: tagMSG;
  var Handled: Boolean);
begin
   if  (DBlist.Focused)  And  (Msg.message  =  WM_MOUSEWHEEL)  then
       begin
           if  Msg.wParam  >  0  then
               SendMessage(DBlist.Handle,  WM_KEYDOWN,  VK_UP,  0)
           else
               SendMessage(DBlist.Handle,  WM_KEYDOWN,  VK_DOWN,  0);
           Handled  :=  True;

       end;
end;

procedure Tlist.DBlistDrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
         if  (DBlist.DataSource.DataSet.RecNo mod 2)=1  then
         begin
               DBlist.Canvas.Font.Color:=clBlue;
               DBlist.Canvas.Brush.Color:=clCream;//clyellow;
         end
         else
         begin
               DBlist.Canvas.Font.Color  := 00000000;
               DBlist.Canvas.Brush.Color:=clwhite;// clGradientActiveCaption;
         end;
         DBlist.DefaultDrawColumnCell(Rect,  DataCol,  Column,  State);
end;

end.

⌨️ 快捷键说明

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