📄 main1.pas
字号:
sss := '(促销)';
end;
end;
if StatusBar1.Panels[9].Text = '会员' then
begin
if Query1.fieldbyname('hyj').asfloat > 0 then
begin
Edit3.Text := floattostr(Query1.fieldbyname('hyj').asfloat);
hyyh.Text := floattostr(strtofloat(hyyh.text) + (Query1.fieldbyname('lsj').asfloat - Query1.fieldbyname('hyj').asfloat));
end
else
begin
Edit3.Text := floattostr(Query1.fieldbyname('lsj').asfloat);
end;
end;
RxCalcEdit1.Text := copy(Trim(RxCalcEdit1.text), 8, 2) + '.' + copy(Trim(RxCalcEdit1.text), 10, 3);
Edit1.text := Query1.fieldbyname('code').asstring;
Edit2.text := Query1.fieldbyname('name').asstring;
Edit4.Text := Query1.fieldbyname('jldw').asstring;
RxCalcEdit1.SetFocus;
RxCalcEdit1.SelectAll;
try
if sss = '(促销)' then
Table1.AppendRecord([Edit1.text, Edit2.text, Edit4.text, Edit3.text, RxCalcEdit1.text, round(strtofloat(Edit3.text) * RxCalcEdit1.Value * 10) / 10, 0, 0, nil, '是'])
else
Table1.AppendRecord([Edit1.text, Edit2.text, Edit4.text, Edit3.text, RxCalcEdit1.text, round(strtofloat(Edit3.text) * RxCalcEdit1.Value * 10) / 10, 0, 0, nil, nil])
except
end;
Table1.close;
Table1.open;
Table1.Last;
pnt.Edit3.Text := Table1.Fields[0].Text;
pnt.Edit4.Text := Table1.Fields[1].Text + sss;
pnt.Edit5.Text := Table1.Fields[3].Text;
pnt.Edit6.Text := Table1.Fields[4].Text;
pnt.Edit7.Text := Table1.Fields[5].Text;
pnt.Button14.Click;
sss := '';
Edit1.Text := '';
Edit1.SetFocus;
Edit2.Clear;
Edit3.Clear;
Edit4.Clear;
RxCalcEdit1.Text := '0';
end
else
begin
Edit1.Clear;
Edit2.Clear;
Edit3.Clear;
Edit4.Clear;
RxCalcEdit1.Text := '0';
Edit1.SetFocus;
end;
end
else
begin
Edit1.Clear;
Edit2.Clear;
Edit3.Clear;
Edit4.Clear;
RxCalcEdit1.Text := '0';
Edit1.SetFocus;
end;
end;
end
else
begin
try
if sss = '(促销)' then
Table1.AppendRecord([Edit1.text, Edit2.text, Edit4.text, Edit3.text, RxCalcEdit1.text, round(strtofloat(Edit3.text) * RxCalcEdit1.Value * 10) / 10, 0, 0, nil, '是'])
else
Table1.AppendRecord([Edit1.text, Edit2.text, Edit4.text, Edit3.text, RxCalcEdit1.text, round(strtofloat(Edit3.text) * RxCalcEdit1.Value * 10) / 10, 0, 0, nil, nil])
except
end;
Table1.close;
Table1.open;
Table1.Last;
pnt.Edit3.Text := Table1.Fields[0].Text;
pnt.Edit4.Text := Table1.Fields[1].Text + sss;
pnt.Edit5.Text := Table1.Fields[3].Text;
pnt.Edit6.Text := Table1.Fields[4].Text;
pnt.Edit7.Text := Table1.Fields[5].Text;
pnt.Button14.Click;
sss := '';
Edit1.Text := '';
Edit1.SetFocus;
Edit3.text := '';
Edit4.text := '';
RxCalcEdit1.Text := '';
end;
if key = 120 then N15.Click;
end;
end;
procedure TMain.N11Click(Sender: TObject);
begin
if Table1.RecordCount > 0 then
begin
if Application.MessageBox(Pchar('是否删除商品:' + Table1.fieldbyname('spname').asstring), '提示', MB_YESNO + MB_ICONQUESTION) = IDYES then
begin
if StatusBar1.Panels[9].Text = '会员' then
begin
Query1.close;
Query1.sql.clear;
Query1.sql.add('select * from spda where code=:code');
Query1.ParamByName('code').asfloat := Table1.fieldbyname('spcode').asfloat;
Query1.open;
hyyh.Text := floattostr(strtofloat(hyyh.text) - (Query1.fieldbyname('lsj').asfloat - Query1.fieldbyname('hyj').asfloat));
end;
Query1.close;
Query1.sql.clear;
Query1.sql.add('delete from spxs_t where id=:id');
Query1.ParamByName('id').asfloat := Table1.fieldbyname('id').asfloat;
Query1.ExecSQL;
pnt.Edit3.Text := Table1.Fields[0].Text;
pnt.Edit4.Text := Table1.Fields[1].Text + '[删除]';
pnt.Edit5.Text := Table1.Fields[3].Text;
pnt.Edit6.Text := Table1.Fields[4].Text;
pnt.Edit7.Text := Table1.Fields[5].Text;
pnt.Button14.Click;
Table1.close;
Table1.open;
Table1.Last;
end;
end;
end;
procedure TMain.N8Click(Sender: TObject);
var dh: integer;
begin
if Table1.RecordCount = 0 then
begin
Application.MessageBox('没有输入商品,不能挂单!', '提示', MB_OK + MB_ICONWARNING);
exit;
end;
if Application.MessageBox('是否挂起本次交易?', '提示', MB_YESNO + MB_ICONQUESTION) = IDYES then
begin
Query1.close;
Query1.sql.clear;
Query1.sql.add('select max(gdh) from spxs_g');
Query1.open;
if Query1.fields[0].AsInteger = 0 then
begin
dh := 1;
end
else
begin
dh := Query1.fields[0].asinteger + 1;
end;
Table1.First;
while not Table1.Eof do
begin
Table2.AppendRecord([Table1.fields[0].asstring,
Table1.fields[1].asstring,
Table1.fields[2].asstring,
Table1.fields[3].asstring,
Table1.fields[4].asstring,
Table1.fields[5].asstring,
Table1.fields[6].asstring,
Table1.fields[7].asstring, dh, now]);
Table1.Next;
end;
pnt.Edit1.Text := ' 挂单号: ' + inttostr(dh);
pnt.Button17.Click; ;
CheckBox1.Checked := true;
pnt.Button18.Click;
Table1.close;
Table1.EmptyTable;
Table1.open;
end;
end;
procedure TMain.N9Click(Sender: TObject);
begin
if Table1.RecordCount > 0 then
begin
Application.MessageBox('请先完成当前交易!', '提示', MB_OK + MB_ICONWARNING);
exit;
end;
if Table2.RecordCount < 0 then
begin
Application.MessageBox('目前没有挂起的单据!', '提示', MB_OK + MB_ICONWARNING);
exit;
end;
Application.CreateForm(Thfgd, hfgd);
hfgd.show;
end;
procedure TMain.N14Click(Sender: TObject);
begin
if Table1.RecordCount = 0 then exit;
if Application.MessageBox('是否取消本次交易?', '提示', MB_YESNO + MB_ICONQUESTION) = IDYES then
begin
Table1.close;
Table1.EmptyTable;
Table1.open;
Edit1.SetFocus;
//取消交易
pnt.Edit1.Text := ' 取消本次交易';
pnt.Button17.Click;
pnt.Button18.Click;
StatusBar1.Panels[9].Text := '普通';
hyyh.text := '0';
CheckBox1.Checked := true;
end;
end;
procedure TMain.N15Click(Sender: TObject);
begin
if Table1.RecordCount = 0 then
begin
Application.MessageBox('没有交易!', '提示', MB_OK + MB_ICONWARNING);
exit;
end;
Application.CreateForm(Tsyjk, syjk);
syjk.Table1.close;
syjk.Table1.EmptyTable;
syjk.Query1.close;
syjk.Query1.sql.clear;
syjk.Query1.sql.add('insert into syfk_t(fkfsid,fkfsname,yn_ce)');
syjk.Query1.sql.add('select code,name,yn_ce from fkfs');
syjk.Query1.ExecSQL;
syjk.Table1.open;
syjk.Query1.close;
syjk.Query1.sql.clear;
syjk.Query1.sql.add('select sum(je),sum(zkje) from spxs_t');
syjk.Query1.open;
syjk.Label2.Caption := floattostr(round(syjk.Query1.Fields[0].asfloat * 10) / 10);
syjk.Label10.Caption := floattostr(round(syjk.Query1.Fields[1].asfloat * 10) / 10);
syjk.Label4.Caption := '0.00';
syjk.Label8.Caption := '0.00';
if strtofloat(syjk.Label2.Caption) > 0 then syjk.Label8.Caption := floattostr(round(syjk.Query1.Fields[0].asfloat * 10) / 10);
if strtofloat(syjk.Label2.Caption) < 0 then syjk.Label4.Caption := floattostr(round(syjk.Query1.Fields[0].asfloat * 10) / 10 * -1);
syjk.Label7.Caption := '0.00';
syjk.ShowModal;
end;
procedure TMain.N7Click(Sender: TObject);
var
formTop, formLeft: Integer;
Ctrl: TControl;
DisplayForm: TForm;
begin
formTop := Top;
formLeft := Left;
try
DisplayForm := pass;
ctrl := RxCalcEdit1;
repeat
formTop := formTop + ctrl.Top;
formLeft := formLeft + ctrl.Left;
ctrl := ctrl.Parent;
until (ctrl is TForm);
DisplayForm.Position := poScreenCenter;
DisplayForm.ShowModal;
finally
DisplayForm.hide;
end;
if pass.Label2.Caption = 'no' then exit;
if RxCalcEdit1.Focused = true then
begin
if Application.MessageBox('是否将此商品进行退货?', '提示', MB_YESNO + MB_ICONQUESTION) = IDYES then
begin
if CheckBox1.Checked then Main.pringbt(Sender);
try
if sss = '(促销)' then
Table1.AppendRecord([Edit1.text, Edit2.text, Edit4.text, Edit3.text, '-' + RxCalcEdit1.text, strtofloat(Edit3.text) * -RxCalcEdit1.Value, 0, 0, nil, '是'])
else
Table1.AppendRecord([Edit1.text, Edit2.text, Edit4.text, Edit3.text, '-' + RxCalcEdit1.text, strtofloat(Edit3.text) * -RxCalcEdit1.Value, 0, 0, nil, nil])
except
end;
Table1.close;
Table1.open;
Table1.Last;
pnt.Edit3.Text := Table1.Fields[0].Text;
pnt.Edit4.Text := Table1.Fields[1].Text + '[退货]';
pnt.Edit5.Text := Table1.Fields[3].Text;
pnt.Edit6.Text := Table1.Fields[4].Text;
pnt.Edit7.Text := Table1.Fields[5].Text;
pnt.Button14.Click;
Edit1.Clear;
Edit1.SetFocus;
end;
end;
end;
procedure TMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if Table1.RecordCount > 0 then
begin
if Application.MessageBox('是否取消此次交易,退出系统?', '提示', MB_YESNO + MB_ICONQUESTION) = IDYES then
begin
CanClose := true;
Table1.Close;
Table1.EmptyTable;
end
else
begin
CanClose := false;
exit;
end;
end;
end;
procedure TMain.N12Click(Sender: TObject);
begin
if Table1.RecordCount > 0 then
begin
if Application.MessageBox('是否取消此次交易,进行交接班?', '提示', MB_YESNO + MB_ICONQUESTION) = IDYES then
begin
Table1.Close;
Table1.EmptyTable;
Table1.open;
pnt.Edit1.Text := ' ****取消交易****';
pnt.Button17.Click; ;
end
else
begin
exit;
end;
end;
Login.Show;
login.Edit3.Text:='';
login.Edit3.SetFocus;
Main.Visible:=false;
end;
procedure TMain.Timer1Timer(Sender: TObject);
begin
StatusBar1.Panels[8].Text := formatdatetime('yyyy-mm-dd hh:mm:ss', now);
end;
procedure TMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin
login.Close;
end;
procedure TMain.N2Click(Sender: TObject);
begin
close;
end;
procedure TMain.FormActivate(Sender: TObject);
var Reg, Reg1: TRegistry;
Regs: integer;
begin
Query1.close;
Query1.sql.clear;
Query1.sql.add('select gj from qx001');
Query1.Open;
Edit3.ReadOnly := not Query1.Fields[0].AsBoolean;
Reg := TRegistry.Create;
Reg1 := TRegistry.Create;
try
Reg.RootKey := HKEY_LOCAL_MACHINE;
Reg1.RootKey := HKEY_CLASSES_ROOT;
if Reg.OpenKey('\Software\Microsoft\Windows\CurrentVersion\kissliu\pos', False) then
begin
if Reg1.OpenKey('\showregedit\ggg', False) = false then
begin
Application.MessageBox('注册表出现严重错误.', '注意', MB_OK + MB_ICONERROR);
Application.Terminate;
end;
if zc.Edit1.Text <> 'ErrorQT' then
begin
if (Reg.ReadString('Regin') <> zc.Edit1.Text) or (Reg.ReadString('time') <> floattostr(strtoint(Reg1.ReadString('sass')) / 1024)) then
begin
Application.MessageBox('注册表出现严重错误.', '注意', MB_OK + MB_ICONERROR);
Application.Terminate;
end;
end;
if Reg.ReadString('Regcode') <> zc.Edit2.Text then
begin
Regs := strtoint(Reg.ReadString('Time'));
if Reg.ReadString('Date') <> formatdatetime('mmyyyydd', now()) then
begin
Regs := strtoint(Reg.ReadString('Time')) + 1;
Reg.WriteString('Time', inttostr(Regs));
Reg.WriteString('Date', formatdatetime('mmyyyydd', now()));
Reg1.WriteString('sass', inttostr(Regs * 1024));
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -