📄 bx.pas
字号:
unit bx;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, DBTables, ScktComp, StdCtrls;
type
Tbxb = class(TForm)
ListBox1: TListBox;
ServerSocket1: TServerSocket;
Table1: TTable;
DataSource2: TDataSource;
DBGrid2: TDBGrid;
Table2: TTable;
GroupBox1: TGroupBox;
Database1: TDatabase;
Query1: TQuery;
Query2: TQuery;
Table3: TTable;
procedure serversocket1clientread(Sender: TObject;
Socket: TCustomWinSocket);
private
{ Private declarations }
public
{ Public declarations }
end;
var
bxb: Tbxb;
implementation
uses zjm, dy;
{$R *.dfm}
procedure tbxb.serversocket1clientread(sender:tobject;
socket:tcustomwinsocket);
//声名变量
var
s2,s1,i:integer;
s0,aRecord:string;
adate:TstringList;
begin
adate:=TstringList.Create;
arecord:=Socket.ReceiveText;
try
//把报修内容存放到TEMP中
adate.Text:=aRecord;
Table1.Insert;
for i:=0 to Table1.FieldCount-1 do
Table1.Fields[i].asString:=adate.Values[Table1.Fields[i].FieldName];
Table1.Post;
//Table1.Active:=false;
Table1.Active:=true;
ListBox1.Items.Add('come from'+Socket.RemoteHost+'date have add into db. no:'+inttostr(GetTickCount));
Socket.SendText(inttostr(GetTickCount));
//在打印报修表单中确定对应的工段
with query1 do
begin
close;
sql.Clear;
sql.Add('select 工段');
sql.add('from gd ');
sql.Add('where 车辆号码=:a');
query1.ParamByName('a').Asstring:=table1.fieldbyname('车辆号码').Asstring;
query1.Open;
end;
//在打印报修表单中确定对应的班组
with query2 do
begin
close;
sql.Clear;
sql.Add('select 班组');
sql.add('from gd ');
sql.Add('where 车辆号码=:a');
query2.ParamByName('a').Asstring:=table1.fieldbyname('车辆号码').Asstring;
query2.Open;
end;
s0:=timetostr(now);
s1:=strtoint(copy(s0,1,2));
s2:=strtoint(copy(s0,7,2));
table3.Open;
table3.Edit;
if (s1=0)and (s2=0) then
table3.fieldbyname('counter').asstring:=inttostr(0)
else
table3.fieldbyname('count').asstring:= table3.fieldbyname('count').value+1;
table3.Post;
table3.Close;
//在打印报修表中确定日修或夜修
if (s1>17)or(s1<8) then
daybd.qrLabel20.Caption:='夜 NO:'
else
daybd.qrlabel20.Caption:='日 NO:';
daybd.quickrep1.Preview;
//把临时表TEMP的内容复制到BXB表
table2.Insert;
table2.fieldbyname('报修序号').Asstring:=table1.fieldbyname('报修序号').Asstring ;
table2.fieldbyname('车辆号码').Asstring:=table1.fieldbyname('车辆号码').Asstring ;
table2.fieldbyname('维修地点').Asstring:=table1.fieldbyname('维修地点').Asstring ;
table2.fieldbyname('报修系统').Asstring:=table1.fieldbyname('报修系统').Asstring ;
table2.fieldbyname('报修部件').Asstring:=table1.fieldbyname('报修部件').Asstring ;
table2.fieldbyname('报修位置').Asstring:=table1.fieldbyname('报修位置').Asstring ;
table2.fieldbyname('故障特征').Asstring:=table1.fieldbyname('故障特征').Asstring ;
table2.fieldbyname('故障句').Asstring:=table1.fieldbyname('故障句').Asstring ;
table2.fieldbyname('报修时间').Asstring:=table1.fieldbyname('报修时间').Asstring ;
table2.Post;
table1.delete;
finally
adate.Free;
//清空ADATE中的内容
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -