📄 unit13.pas
字号:
unit Unit13;
interface
uses
Classes,Messages,SysUtils,Dialogs,Windows;
type
TloadThread = class(TThread)
private
{ Private declarations }
protected
procedure Execute; override;
public
constructor Create(CreateSuspended:Boolean);
end;
implementation
uses unit1;
{ Important: Methods and properties of objects in VCL can only be used in a
method called using Synchronize, for example,
Synchronize(UpdateCaption);
and UpdateCaption could look like,
procedure TloadThread.UpdateCaption;
begin
Form1.Caption := 'Updated in a thread';
end; }
{ TloadThread }
constructor TloadThread.Create(CreateSuspended: Boolean);
begin
inherited create(false);
freeonterminate:=true;
end;
procedure TloadThread.Execute;
var
tmpsql:string;
pinming,paihao,tiaoma,guige,fenlei,dengji,changjia,xiaoshoubumen,wujiayuan,lastdate,jingshouren,beizhu:string;
jinjia,shoujia,zhekou:real;
clerkname,clerkcode,clerkpass,depcode,clerklevel:string;
begin
{ Place thread code here }
//事物开始
form1.database2.StartTransaction;
try
begin
//清除本地机的老信息
with form1.querypricepos do
begin
tmpsql:='delete from pricebase';
close;
sql.Clear;
sql.add(tmpsql);
prepare;
try
execsql;
except
messagebox(form1.handle,'数据下载失败','警告',MB_OK+MB_ICONERROR);
exit;
end;
end;
with form1.querypricepos do
begin
tmpsql:='delete from clerkbase';
close;
sql.Clear;
sql.add(tmpsql);
prepare;
try
execsql;
except
messagebox(form1.handle,'数据下载失败','警告',MB_OK+MB_ICONERROR);
exit;
end;
end;
//下载价格库信息
with form1.querypriceserver do
begin
tmpsql:='select * from pricebase';
close;
sql.clear;
sql.add(tmpsql);
prepare;
try
open;
except
messagebox(form1.handle,'数据下载失败','警告',MB_OK+MB_ICONERROR);
exit;
end;
end;
while not form1.querypriceserver.eof do
begin
pinming:=form1.querypriceserver['品名'];
if trim(form1.querypriceserver['牌号'])=null then
paihao:='无'
else
paihao:=form1.querypriceserver['牌号'];
tiaoma:=form1.querypriceserver['条码'];
if trim(form1.querypriceserver['规格'])=null then
guige:='无'
else
guige:=form1.querypriceserver['规格'];
if trim(form1.querypriceserver['分类'])=null then
fenlei:='无'
else
fenlei:=form1.querypriceserver['分类'];
if trim(form1.querypriceserver['等级'])='' then
dengji:='无'
else
dengji:=form1.querypriceserver['等级'];
if trim(form1.querypriceserver['厂家'])=null then
changjia:='无'
else
changjia:=form1.querypriceserver['厂家'];
if form1.querypriceserver['进价']=null then
jinjia:=0
else
jinjia:=form1.querypriceserver['进价'];
shoujia:=form1.querypriceserver['售价'];
if trim(form1.querypriceserver['销售部门'])=null then
xiaoshoubumen:='无'
else
xiaoshoubumen:=form1.querypriceserver['销售部门'];
if trim(form1.querypriceserver['物价员'])=null then
wujiayuan:='无'
else
wujiayuan:=form1.querypriceserver['物价员'];
lastdate:=form1.querypriceserver['最后更新日期'];
if trim(form1.querypriceserver['经手人'])=null then
jingshouren:='无'
else
jingshouren:=form1.querypriceserver['经手人'];
if form1.querypriceserver['备注']=null then
beizhu:='无'
else
beizhu:=form1.querypriceserver['备注'];
if form1.querypriceserver['折扣']=null then
zhekou:=0
else
zhekou:=form1.querypriceserver['折扣'];
with form1.querypricepos do
begin
tmpsql:='Insert into pricebase(品名,牌号,条码,规格,分类,等级,厂家,进价,售价,销售部门,物价员,最后更新日期,经手人,备注,折扣)';
tmpsql:=tmpsql+' values('''+pinming+''','''+paihao+''','''+tiaoma+''','''+guige+''','''+fenlei+''',';
tmpsql:=tmpsql+''''+dengji+''','''+changjia+''','+floattostr(jinjia)+','+floattostr(shoujia)+','''+xiaoshoubumen+''','''+wujiayuan+''','''+lastdate+''','''+jingshouren+''','''+beizhu+''','+floattostr(zhekou)+')';
close;
sql.clear;
sql.add(tmpsql);
prepare;
try
execsql;
except
messagebox(form1.handle,'数据下载失败','警告',MB_OK+MB_ICONERROR);
exit;
end;
end;
form1.querypriceserver.Next;
end;
//下载收银员库信息
with form1.querypriceserver do
begin
tmpsql:='select * from clerkbase';
close;
sql.clear;
sql.add(tmpsql);
prepare;
try
open;
except
messagebox(form1.handle,'数据下载失败','警告',MB_OK+MB_ICONERROR);
exit;
end;
end;
while not form1.querypriceserver.eof do
begin
if form1.querypriceserver['cname']=null then
clerkname:='无'
else
clerkname:=form1.querypriceserver['cname'];
if form1.querypriceserver['ccode']=null then
clerkcode:='无'
else
clerkcode:=form1.querypriceserver['ccode'];
if form1.querypriceserver['cpass']=null then
clerkpass:='无'
else
clerkpass:=form1.querypriceserver['cpass'];
if form1.querypriceserver['depcode']=null then
depcode:='无'
else
depcode:=form1.querypriceserver['depcode'];
if form1.querypriceserver['clevel']=null then
clerklevel:='无'
else
clerklevel:=form1.querypriceserver['clevel'];
with form1.querypricepos do
begin
tmpsql:='Insert into clerkbase(cname,ccode,cpass,depcode,clevel)';
tmpsql:=tmpsql+' values('''+clerkname+''','''+clerkcode+''','''+clerkpass+''','''+depcode+''','''+clerklevel+''')';
close;
sql.clear;
sql.add(tmpsql);
prepare;
try
execsql;
except
messagebox(form1.handle,'数据下载失败','警告',MB_OK+MB_ICONERROR);
exit;
end;
end;
form1.querypriceserver.Next;
end;
//事物提交
form1.database2.Commit;
end
except
//事物恢复
form1.database2.Rollback;
messagebox(form1.handle,'数据下载失败','警告',MB_OK+MB_ICONINFORMATION);
exit;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -