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

📄 main1.pas

📁 思微POS连锁超市管理系统 (商业代码),几年前的东西了
💻 PAS
📖 第 1 页 / 共 3 页
字号:
        Regs := 954 - Regs;
        if Regs <= 0 then
        begin
          if Application.MessageBox('你的软件已到期,是否现在注册?', '注意', MB_YESNO + MB_ICONQUESTION) = IDNO then
          begin
            Application.Terminate;
          end;
          xtzc.ShowModal;
          Application.Terminate;
          exit;
        end;
        //Application.MessageBox(Pchar('您的软件还没有注册,还可以使用 ' + inttostr(Regs) + ' 天.'), '注意', MB_OK + MB_ICONWARNING);
        N101.Caption := '注意:您的软件还没有注册,还可以使用 ' + inttostr(Regs) + ' 天.';
      end
      else
      begin
        N23.Visible := false;
        N101.Visible := false;
      end;
    end
    else
    begin
      if Reg1.OpenKey('\showregedit\ggg', False) then
      begin
        Application.MessageBox('注册表出现严重错误.', '注意', MB_OK + MB_ICONERROR);
        Application.Terminate;
      end;
      Reg.CreateKey('\Software\Microsoft\Windows\CurrentVersion\kissliu\pos'); // 创建我们的主键
      Reg.OpenKey('\Software\Microsoft\Windows\CurrentVersion\kissliu\pos', True); // 进入我们自己的主键中
      Reg.WriteString('Time', '924'); // 写进键值。
      Reg.WriteString('Date', formatdatetime('mmyyyydd', now())); // 写进键值。
      Reg.WriteString('Regin', zc.Edit1.Text); // 写进键值。
      Reg.WriteString('Regcode', ''); // 写进键值。
      Reg1.CreateKey('\showregedit\ggg'); // 创建我们的主键
      Reg1.OpenKey('\showregedit\ggg', True); // 进入我们自己的主键中
      Reg1.WriteString('sass', '946176'); // 写进键值。
      Reg1.WriteString('tsst', zc.Edit1.Text); // 写进键值。
//      Application.MessageBox('您的软件还没有注册,还可以使用 10 天.', '注意', MB_OK + MB_ICONWARNING);
      N101.Caption := '注意:您的软件还没有注册,还可以使用 10 天.';
    end;
  finally
    Reg.Free; // 用 Try..Finally 结构确保 REG 变量能够释放。
    Reg1.Free; // 用 Try..Finally 结构确保 REG 变量能够释放。
  end;
  StatusBar1.Panels[1].Text := Login.StatusBar1.Panels[1].Text;
  StatusBar1.Panels[3].Text := Login.Edit3.Text;
  StatusBar1.Panels[4].Text := Login.Label1.Caption;
  Edit1.SetFocus;
end;

procedure TMain.N16Click(Sender: TObject);
var zk: string;
  zkz: real;
  idh: integer;
  formTop, formLeft: Integer;
  Ctrl: TControl;
  DisplayForm: TForm;
begin
  if Table1.RecordCount = 0 then exit;
  formTop := Top;
  formLeft := Left;
  try
    DisplayForm := pass;
    ctrl := Edit1;
    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;
  formTop := Top;
  formLeft := Left;
  try
    DisplayForm := srzk;
    ctrl := Edit1;
    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 srzk.CurrencyEdit1.Value = 0 then exit;
  zk := srzk.CurrencyEdit1.Text;
  try
    zkz := strtofloat(zk);
  except
    application.MessageBox('输入不正确.', '提示', MB_OK + MB_ICONERROR);
    exit;
  end;
  if srzk.RadioButton1.Checked = true then
  begin
    idh := Table1.fieldbyname('id').asinteger;
    Query1.close;
    Query1.sql.clear;
    Query1.sql.add('update spxs_t set zkje=zkje+je*:zk1,je=je*:zk2 where id=:id');
    Query1.ParamByName('zk1').asfloat := 1 - zkz / 100;
    Query1.ParamByName('zk2').asfloat := zkz / 100;
    Query1.ParamByName('id').asfloat := Table1.fieldbyname('id').asfloat;
    Query1.ExecSQL;
  end;
  if srzk.RadioButton2.Checked = true then
  begin
    idh := Table1.fieldbyname('id').asinteger;
    Query1.close;
    Query1.sql.clear;
    Query1.sql.add('update spxs_t set zkje=zkje+1*:zk1,je=je-1*:zk2 where id=:id');
    Query1.ParamByName('zk1').asfloat := zkz;
    Query1.ParamByName('zk2').asfloat := zkz;
    Query1.ParamByName('id').asfloat := Table1.fieldbyname('id').asfloat;
    Query1.ExecSQL;
  end;
  Table1.close;
  Table1.open;
  Table1.Locate('id', idh, [loPartialKey]);
end;

procedure TMain.N17Click(Sender: TObject);
var zk: string;
  zkz: real;
  idh: integer;
  formTop, formLeft: Integer;
  Ctrl: TControl;
  DisplayForm: TForm;
begin
  if Table1.RecordCount = 0 then exit;
  formTop := Top;
  formLeft := Left;
  try
    DisplayForm := pass;
    ctrl := Edit1;
    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;
  formTop := Top;
  formLeft := Left;
  try
    DisplayForm := srzk;
    ctrl := Edit1;
    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 srzk.CurrencyEdit1.Value = 0 then exit;
  zk := srzk.CurrencyEdit1.Text;
  try
    zkz := strtofloat(zk);
  except
    application.MessageBox('输入不正确.', '提示', MB_OK + MB_ICONERROR);
    exit;
  end;
  if srzk.RadioButton1.Checked = true then
  begin
    idh := Table1.fieldbyname('id').asinteger;
    Query1.close;
    Query1.sql.clear;
    Query1.sql.add('update spxs_t set zkje=zkje+je*:zk1,je=je*:zk2');
    Query1.ParamByName('zk1').asfloat := 1 - zkz / 100;
    Query1.ParamByName('zk2').asfloat := zkz / 100;
    Query1.ExecSQL;
  end;
  if srzk.RadioButton2.Checked = true then
  begin
    idh := Table1.fieldbyname('id').asinteger;
    Query1.close;
    Query1.sql.clear;
    Query1.sql.add('update spxs_t set zkje=zkje+1*:zk1,je=je-1*:zk2');
    Query1.ParamByName('zk1').asfloat := zkz;
    Query1.ParamByName('zk2').asfloat := zkz;
    Query1.ExecSQL;
  end;
  Table1.close;
  Table1.open;
  Table1.Locate('id', idh, [loPartialKey]);
end;

procedure TMain.N18Click(Sender: TObject);
var idh: integer;
begin
  if Table1.RecordCount > 0 then
  begin
    idh := Table1.fieldbyname('id').asinteger;
    Query1.close;
    Query1.sql.clear;
    Query1.sql.add('update spxs_t set zkje=:zk1,je=je+zkje where id=:id');
    Query1.ParamByName('zk1').asfloat := 0;
    Query1.ParamByName('id').asfloat := Table1.fieldbyname('id').asfloat;
    Query1.ExecSQL;
    Table1.close;
    Table1.open;
    Table1.Locate('id', idh, [loPartialKey]);
  end;
end;

procedure TMain.N20Click(Sender: TObject);
var idh: integer;
begin
  if Table1.RecordCount > 0 then
  begin
    idh := Table1.fieldbyname('id').asinteger;
    Query1.close;
    Query1.sql.clear;
    Query1.sql.add('update spxs_t set zkje=:zk1,je=je+zkje');
    Query1.ParamByName('zk1').asfloat := 0;
    Query1.ExecSQL;
    Table1.close;
    Table1.open;
    Table1.Locate('id', idh, [loPartialKey]);
  end;
end;

procedure TMain.N10Click(Sender: TObject);
begin
  pnt.Button6.Click;
  Edit1.SetFocus;
end;

procedure TMain.pringbt(Sender: TObject);
var I, J: integer;
  dh: string;
begin
  Query1.close;
  Query1.sql.clear;
  Query1.sql.add('select xsid from xsid');
  Query1.open;
  Query1.first;
  if Query1.Fields[0].IsNull then
  begin
    Application.MessageBox('读销售单号错误,请进行初始设置.', '提示', MB_OK + MB_ICONWARNING);
    exit;
  end;
  dh := Query1.fields[0].asstring;
  StatusBar1.Panels[11].Text := dh;
  pnt.Edit8.Text := login.StatusBar1.Panels[3].Text;
  pnt.Button12.Click; ;
  pnt.Edit1.Text := '终端:' + StatusBar1.Panels[6].Text + '  ' + '单号:' + dh;
  pnt.Button17.Click; ;
  pnt.Edit1.Text := '日期:' + formatdatetime('mm-dd hh:mm:ss', now) + ' 收银员:' + StatusBar1.Panels[3].Text;
  pnt.Button17.Click; ;
  pnt.Button15.Click; ;
  pnt.Button13.Click; ;
  CheckBox1.Checked := false;
end;

procedure TMain.N13Click(Sender: TObject);
begin
  Application.CreateForm(Tsjcs, sjcs);
  sjcs.ShowModal;
end;

procedure TMain.N21Click(Sender: TObject);
var formTop, formLeft: Integer;
  Ctrl: TControl;
  DisplayForm: TForm;
begin
  if Table1.RecordCount > 0 then exit;
  if N21.Checked = false then
  begin
    formTop := Top;
    formLeft := Left;
    try
      DisplayForm := hyk;
      ctrl := Edit1;
      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;
  end
  else
  begin
    N21.Checked := false;
    StatusBar1.Panels[9].Text := '普通';
  end;
end;

procedure TMain.N22Click(Sender: TObject);
begin
  pnt.ShowModal;
end;

procedure TMain.N23Click(Sender: TObject);
begin
  xtzc.ShowModal;
end;

procedure TMain.N24Click(Sender: TObject);
begin
  Application.CreateForm(Tcssz, cssz);
  cssz.ShowModal;
end;

procedure TMain.N26Click(Sender: TObject);
begin
  pass.ShowModal;
  if pass.Label2.Caption = 'no' then exit;
  pnt.Edit1.Text := '    收银班结表';
  pnt.Button17.Click;
  Query1.close;
  Query1.SQL.clear;
  Query1.sql.add('select * from sybjb_v where skyid=:skyid');
  Query1.ParamByName('skyid').asstring := StatusBar1.Panels[3].Text;
  Query1.open;
  Query1.First;
  pnt.Edit1.Text := copy('终端:' + StatusBar1.Panels[6].Text + '              ', 1, 12) + '收银员:' + Query1.fieldbyname('skyname').asstring;
  pnt.Button17.Click;
  while not Query1.Eof do
  begin
    pnt.Edit1.Text := copy('收款方式:' + Query1.fieldbyname('fkname').asstring + '              ', 1, 16) + '收款金额:' + Query1.fieldbyname('fkje').asstring;
    pnt.Button17.Click;
    Query1.Next;
  end;
  Query1.close;
  Query1.SQL.clear;
  Query1.sql.add('select sum(fkje) from sybjb_v where skyid=:skyid');
  Query1.ParamByName('skyid').asstring := StatusBar1.Panels[3].Text;
  Query1.open;
  pnt.Edit1.Text := '总金额:' + Query1.fields[0].asstring;
  pnt.Button17.Click;
  pnt.Edit1.Text := '打印时间:' + formatdatetime('yy-mm-dd hh:mm:ss', now);
  pnt.Button17.Click;
  Query1.close;
  Query1.SQL.clear;
  Query1.sql.add('delete from sybjb where skyid=:skyid');
  Query1.ParamByName('skyid').asstring := StatusBar1.Panels[3].Text;
  Query1.ExecSQL;
end;

procedure TMain.FormCreate(Sender: TObject);
begin
  CheckBox1.Checked := true;
  Table1.Open;
  Table2.Open;
end;

procedure TMain.N27Click(Sender: TObject);
begin
  xtsd.ShowModal;
end;

procedure TMain.N28Click(Sender: TObject);
begin
  CheckBox1.Checked := true;
end;

procedure TMain.Edit3KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = 37) or (key = 13) then RxCalcEdit1.SetFocus;
end;

end.

⌨️ 快捷键说明

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