📄 toffthreadclass.~pas
字号:
unit TOffThreadClass;
interface
uses
Classes,Db, DBTables,StdCtrls, SysUtils, UnitDataModule,ADODB,
ComObj, Messages,Dialogs,activeX,Windows
,QForms,QDialogs;
type
TOffThread = class(TThread)
private
query:TAdoquery;
query1:TAdoquery;
query2:TAdoquery;
protected
procedure Execute; override;
public
end;
implementation
uses UnitMain, UnitPublic;
procedure TOffThread.Execute;
var
OpenCount:Integer;
Group_NO :String;
Cont_NO :Integer;
Terminal_NO :Integer;
Uport_NO :Integer;
Now_Week :String;
Now_Time :String;
begin
inherited;
FreeOnTerminate:=True;
try
CoInitialize(nil);
query:=TAdoquery.Create(nil);
query1:=TAdoquery.Create(nil);
query2:=TAdoquery.Create(nil);
query.Connection:=frm_DataModule.ADO_Connection;
query1.Connection:=frm_DataModule.ADO_Connection;
query2.Connection:=frm_DataModule.ADO_Connection;
while not terminated do
begin
Now_Week :=NowWeek(now);
Now_Time :=ForMatdatetime('hh'':''mm',now);
with query do
begin
close;
sql.Clear ;
Sql.Add('Select * from [TaskPlan] where TaskName='''+Now_Week+''' and EndTime='''+Now_Time+'''');
open;
if RecordCount>0 then
begin
while not eof do
begin
Group_NO:=FieldByName('GroupNO').AsString;
with query1 do
begin
Close;
Sql.Clear;
Sql.Add('Select * from [Equipment] where GroupNo='''+Group_NO+'''and Light_States=''开''');
Open;
if query1.RecordCount> 0 then
begin
Cont_NO :=FieldByName('Cont').AsInteger;
Terminal_NO :=FieldByName('Terminal').AsInteger;
Uport_NO :=FieldByName('Uport').AsInteger;
try
MySpcomm.WriteUportOpenClose(Cont_NO,Terminal_NO,Uport_NO,0);
//try
//EditStates(0,Group_NO);
//except
//end;
except
end;
end;
end;
Next;
end;
end;
end;
end;
finally
CoUnInitialize;
end;
if terminated then
exit;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -