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

📄 pay.pas

📁 PosEasy收银系统源码,Pos机前后台管理代码
💻 PAS
字号:
unit pay;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Db, DBTables, Mask, DBCtrls, ExtCtrls, ComCtrls;

type
  Tpayfm = class(TForm)
    Image1: TImage;
    DataSource1: TDataSource;
    Button2: TButton;
    Button1: TButton;
    Query1: TQuery;
    ComboBox1: TComboBox;
    DateTimePicker1: TDateTimePicker;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit9: TEdit;
    PrintDialog1: TPrintDialog;
    Database1: TDatabase;
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit3KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit4KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit6KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit7KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit9KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Button1Click(Sender: TObject);
    procedure ComboBox1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DateTimePicker1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  payfm: Tpayfm;

implementation

{$R *.DFM}
 {小键盘控制光标}
procedure Tpayfm.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=vk_Right then
  combobox1.SetFocus;
  if key=vk_down then
  edit2.SetFocus;
end;

procedure Tpayfm.Edit2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=vk_Right then
  edit6.SetFocus;
  if key=vk_down then
  edit3.SetFocus;
  if key=vk_up then
  edit1.setfocus;
end;

procedure Tpayfm.Edit3KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 if key=vk_Right then
  edit7.SetFocus;
  if key=vk_down then
  edit4.SetFocus;
  if key=vk_up then
  edit2.setfocus;
end;

procedure Tpayfm.Edit4KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 if key=vk_Right then
  datetimepicker1.SetFocus;
  if key=vk_down then
  edit9.SetFocus;
  if key=vk_up then
  edit3.setfocus;
end;

procedure Tpayfm.ComboBox1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 if key=vk_left then
  edit1.setfocus;
  if key=vk_right then
  edit6.setfocus;
end;

procedure Tpayfm.Edit6KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=vk_up then
  combobox1.setfocus;
  if key=vk_left then
  edit2.setfocus;
  if key=vk_down then
  edit7.setfocus;
end;

procedure Tpayfm.Edit7KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=vk_up then
  edit6.setfocus;
  if key=vk_left then
  edit3.setfocus;
  if key=vk_down then
  datetimepicker1.setfocus;
end;

procedure Tpayfm.DateTimePicker1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 if key=vk_up then
  edit7.setfocus;
  if key=vk_left then
  edit4.setfocus;
  if key=vk_down then
  edit9.setfocus;
end;

procedure Tpayfm.Edit9KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 if key=vk_up then
  datetimepicker1.setfocus;
  if key=vk_left then
  edit4.setfocus;
  if key=vk_right then
  datetimepicker1.setfocus;
end;

  {print & writebase}
procedure Tpayfm.Button1Click(Sender: TObject);
begin
 {check null}
 begin
  if (edit1.text='')then
  begin
   showmessage('请填写付款金额!');
   edit1.setfocus;
   exit;
  end;
  if (edit2.text='')then
  begin
   showmessage('请填写付款科目!');
   edit2.setfocus;
   exit;
  end;
  if (edit3.text='')then
  begin
   showmessage('请填写资金来源!');
   edit3.setfocus;
   exit;
  end;
  if (edit4.text='')then
  begin
   showmessage('请填写资金目标!');
   edit4.setfocus;
   exit;
  end;
  if (combobox1.text='')then
  begin
   showmessage('请选择付款方式!');
   combobox1.setfocus;
   exit;
  end;
  if (edit6.text='')then
  begin
   showmessage('请填写交款人!');
   edit6.setfocus;
   exit;
  end;
  if (edit7.text='')then
  begin
   showmessage('请填写收款人!');
   edit7.setfocus;
   exit;
  end;

 {insert base }
 begin
     if combobox1.text='现金' then
     begin
           query1.close;
           query1.sql.Clear ;
           query1.sql.Add('insert into  ');
           query1.sql.Add('zjlshtab(msum,mcashsum,mbillsum,');
           query1.sql.Add('mcardsum,mothsum,ibillnum,icardnum,');
           query1.sql.Add('iothnum,isource,caim,iinhand,');
           query1.sql.Add('ireason,cpname,dptime,');
           query1.sql.Add('crname,drtime,cmemo )');
           query1.sql.Add('values(:tsum,:cash,:bill,');
           query1.sql.Add(':card,:oth,:bnum,:cnum,');
           query1.sql.Add(':onum,:sorc,:aim,:inhand,');
           query1.sql.Add(':rea,:pname,:ptime,');
           query1.sql.Add(':rname,:rtime,:mmo)');

           query1.parambyname('rea').asinteger:=strtoint(edit2.text);
           query1.parambyname('aim').asstring:=edit4.text;
           query1.parambyname('inhand').asinteger:=0;
           query1.parambyname('sorc').asinteger:=strtoint(edit3.text);
           query1.parambyname('tsum').asfloat:=-strtofloat(edit1.text);
           query1.parambyname('cash').asfloat:=-strtofloat(edit1.Text);
           query1.parambyname('bill').asfloat:=0;
           query1.parambyname('card').asfloat:=0;
           query1.parambyname('oth').asfloat:=0;
           query1.parambyname('mmo').asstring:=edit9.text;
           query1.parambyname('bnum').asinteger:=0;
           query1.parambyname('cnum').asinteger:=0;
           query1.parambyname('onum').asinteger:=0;
           query1.parambyname('ptime').asdatetime:=datetimepicker1.datetime;
           query1.parambyname('rtime').asdatetime:=datetimepicker1.datetime;
           query1.parambyname('pname').asstring:=edit6.Text;
           query1.parambyname('rname').asstring:=edit7.text;
           query1.execsql;
          end;
       if combobox1.text='支票' then
         begin
           query1.close;
           query1.sql.Clear ;
           query1.sql.Add('insert into  ');
           query1.sql.Add('zjlshtab(msum,mcashsum,mbillsum,');
           query1.sql.Add('mcardsum,mothsum,ibillnum,icardnum,');
           query1.sql.Add('iothnum,isource,caim,iinhand,');
           query1.sql.Add('ireason,cpname,dptime,');
           query1.sql.Add('crname,drtime,cmemo )');
           query1.sql.Add('values(:tsum,:cash,:bill,');
           query1.sql.Add(':card,:oth,:bnum,:cnum,');
           query1.sql.Add(':onum,:sorc,:aim,:inhand,');
           query1.sql.Add(':rea,:pname,:ptime,');
           query1.sql.Add(':rname,:rtime,:mmo)');
           query1.parambyname('rea').asinteger:=strtoint(edit2.text);
           query1.parambyname('aim').asstring:=edit4.text;
           query1.parambyname('inhand').asinteger:=1;
           query1.parambyname('sorc').asinteger:=strtoint(edit3.text);
           query1.parambyname('tsum').asfloat:=-strtofloat(edit1.text);
           query1.parambyname('cash').asfloat:=0;
           query1.parambyname('bill').asfloat:=-strtofloat(edit1.Text);
           query1.parambyname('card').asfloat:=0;
           query1.parambyname('oth').asfloat:=0;
           query1.parambyname('mmo').asstring:=edit9.text;
           query1.parambyname('bnum').asinteger:=1;
           query1.parambyname('cnum').asinteger:=0;
           query1.parambyname('onum').asinteger:=0;
           query1.parambyname('ptime').asdatetime:=datetimepicker1.datetime;
           query1.parambyname('rtime').asdatetime:=datetimepicker1.datetime;
           query1.parambyname('pname').asstring:=edit6.Text;
           query1.parambyname('rname').asstring:=edit7.text;
           query1.execsql;
          end;
       if combobox1.text='信用卡' then
          begin
           query1.close;
           query1.sql.Clear ;
           query1.sql.Add('insert into  ');
           query1.sql.Add('zjlshtab(msum,mcashsum,mbillsum,');
           query1.sql.Add('mcardsum,mothsum,ibillnum,icardnum,');
           query1.sql.Add('iothnum,isource,caim,iinhand,');
           query1.sql.Add('ireason,cpname,dptime,');
           query1.sql.Add('crname,drtime,cmemo )');
           query1.sql.Add('values(:tsum,:cash,:bill,');
           query1.sql.Add(':card,:oth,:bnum,:cnum,');
           query1.sql.Add(':onum,:sorc,:aim,:inhand,');
           query1.sql.Add(':rea,:pname,:ptime,');
           query1.sql.Add(':rname,:rtime,:mmo)');
           query1.parambyname('rea').asinteger:=strtoint(edit2.text);
           query1.parambyname('aim').asstring:=edit4.text;
           query1.parambyname('inhand').asinteger:=1;
           query1.parambyname('sorc').asinteger:=strtoint(edit3.text);
           query1.parambyname('tsum').asfloat:=-strtofloat(edit1.text);
           query1.parambyname('cash').asfloat:=0;
           query1.parambyname('bill').asfloat:=0;
           query1.parambyname('card').asfloat:=-strtofloat(edit1.Text);
           query1.parambyname('oth').asfloat:=0;
           query1.parambyname('mmo').asstring:=edit9.text;
           query1.parambyname('bnum').asinteger:=0;
           query1.parambyname('cnum').asinteger:=1;
           query1.parambyname('onum').asinteger:=0;
           query1.parambyname('ptime').asdatetime:=datetimepicker1.datetime;
           query1.parambyname('rtime').asdatetime:=datetimepicker1.datetime;
           query1.parambyname('pname').asstring:=edit6.Text;
           query1.parambyname('rname').asstring:=edit7.text;
           query1.execsql;
            end;
       if combobox1.text='其他票据' then
          begin
           query1.close;
           query1.sql.Clear ;
           //tmpsql:='insert into zjlshtab(msum,mcashsum,mbillsum,mcardsum,mothsum,ibillnum,iothnum,isource,caim,crname,drtime,cmemo)';
           //tmpsql:=tmpsql+' values(:tsum,:cash,:bill,:card,:oth,:bnum,:onum,:sorc,lee,1,:pname,:ptime,:rname,:rtime,:mmo)';
           query1.sql.Add('insert into  ');
           query1.sql.Add('zjlshtab(msum,mcashsum,mbillsum,');
           query1.sql.Add('mcardsum,mothsum,ibillnum,icardnum,');
           query1.sql.Add('iothnum,isource,caim,iinhand,');
           query1.sql.Add('ireason,cpname,dptime,');
           query1.sql.Add('crname,drtime,cmemo )');
           query1.sql.Add('values(:tsum,:cash,:bill,');
           query1.sql.Add(':card,:oth,:bnum,:cnum,');
           query1.sql.Add(':onum,:sorc,:aim,:inhand,');
           query1.sql.Add(':rea,:pname,:ptime,');
           query1.sql.Add(':rname,:rtime,:mmo)');
           query1.parambyname('rea').asinteger:=strtoint(edit2.text);
           query1.parambyname('aim').asstring:=edit4.text;
           query1.parambyname('inhand').asinteger:=1;
           query1.parambyname('sorc').asinteger:=strtoint(edit3.text);
           query1.parambyname('tsum').asfloat:=-strtofloat(edit1.text);
           query1.parambyname('cash').asfloat:=0;
           query1.parambyname('bill').asfloat:=0;
           query1.parambyname('card').asfloat:=0;
           query1.parambyname('oth').asfloat:=-strtofloat(edit1.Text);
           query1.parambyname('mmo').asstring:=edit9.text;
           query1.parambyname('bnum').asinteger:=0;
           query1.parambyname('cnum').asinteger:=0;
           query1.parambyname('onum').asinteger:=1;
           query1.parambyname('ptime').asdatetime:=datetimepicker1.datetime;
           query1.parambyname('rtime').asdatetime:=datetimepicker1.datetime;
           query1.parambyname('pname').asstring:=edit6.Text;
           query1.parambyname('rname').asstring:=edit7.text;
           //query1.sql.add(tmpsql);
           //showmessage(tmpsql);
           query1.execsql;
              end;
         end;

       {print}
       {begin
        PrintDialog1.Execute ;
        print;
       end; }

    end;
   payfm.close;
   payfm.Release ;
 end;

procedure Tpayfm.Button2Click(Sender: TObject);
begin
 payfm.close;
 payfm.Release ;
end;

end.

⌨️ 快捷键说明

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