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

📄 chbill.pas

📁 简单的餐饮软件部分源码
💻 PAS
字号:
unit chbill;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, ADODB, Buttons;

type
  Tfchbill = class(TForm)
    Edit1: TEdit;
    Label1: TLabel;
    but1: TButton;
    but2: TButton;
    spbut1: TSpeedButton;
    bit1: TBitBtn;
    Bit3: TBitBtn;
    Bit4: TBitBtn;
    Bit5: TBitBtn;
    Bit8: TBitBtn;
    Bit7: TBitBtn;
    Bit6: TBitBtn;
    Bit9: TBitBtn;
    Bit10: TBitBtn;
    Bit11: TBitBtn;
    bitb1: TBitBtn;
    procedure FormCreate(Sender: TObject);
    procedure but2Click(Sender: TObject);
    procedure but1Click(Sender: TObject);
    procedure bitb1Click(Sender: TObject);
    procedure spbut1Click(Sender: TObject);
    procedure bit1Click(Sender: TObject);
    procedure Bit3Click(Sender: TObject);
    procedure Bit4Click(Sender: TObject);
    procedure Bit5Click(Sender: TObject);
    procedure Bit6Click(Sender: TObject);
    procedure Bit7Click(Sender: TObject);
    procedure Bit8Click(Sender: TObject);
    procedure Bit9Click(Sender: TObject);
    procedure Bit10Click(Sender: TObject);
    procedure Bit11Click(Sender: TObject);
  private
    { Private declarations }
  Vhwflag:Boolean;
  public
    { Public declarations }
  end;
var
  fchbill: Tfchbill;
implementation
uses SnackDM,mealform;
{$R *.dfm}
procedure Tfchbill.FormCreate(Sender: TObject);
begin
  self.Caption:=datam.SPLanguage.ReadString('captions','00123','');
  label1.Caption:=datam.SPLanguage.ReadString('captions','00122','');
  but1.Caption:=datam.SPLanguage.ReadString('captions','00002','');
  but2.Caption:=datam.SPLanguage.ReadString('captions','00036','');
  spbut1.Caption:=datam.SPLanguage.ReadString('captions','00004','');
  Vhwflag:=True;
end;
procedure Tfchbill.but2Click(Sender: TObject);
begin
 self.Close;
 self.Release;
end;
procedure Tfchbill.but1Click(Sender: TObject);
Var Tableid,BeforeChangbillId,AfterChangbillId,Cmealid,Cprice,Cmealname,Cunit,Cmealcount,
    BeforeChangebillDate,ChangFlag,Ckw,Ctime,Cid,Cname,Ctcflag,Ctxid,Ctctime,Cpkflag,Cmancount:string;
    ChangBillAdo:TADOQuery;
begin
  if Edit1.Text='' then Exit;
  BeforeChangbillId:=Trim(Edit1.Text);
  with datam.freeado do
   begin
    Close;
    SQL.Clear;
    SQL.Add('select * from snsalemeal where billid='''+BeforeChangbillId+'''');
    Open;
    if RecordCount<=0 then
      begin
        messagebeep(0);
        messagebox(0,PChar(''+DataM.SPLanguage.ReadString('msgbox','0040','')+''),PChar(''+DataM.SPLanguage.ReadString('msgbox','0041','')+''),MB_ICONERROR or MB_OK);
        edit1.SetFocus;
        edit1.SelectAll;
        Exit;
      end;
    First;
    Tableid:=FieldValues['tableno'];
    ChangBillAdo:=TADOQuery.Create(nil);
    ChangBillAdo.Connection:=datam.SQLconADO;
    with ChangBillAdo do
     begin
      Close;
      SQL.Clear;
      SQL.Add('select billflag,mancount from snsalebill where billid='''+BeforeChangbillId+'''');
      Open;
      ChangFlag:=FieldValues['billflag']+1;
      Cmancount:=FieldValues['mancount'];
      if StrToInt(ChangFlag)>9 then
       begin
        messagebeep(0);
        messagebox(0,PChar(''+DataM.SPLanguage.ReadString('msgbox','0042','')+''),PChar(''+DataM.SPLanguage.ReadString('msgbox','0041','')+''),MB_ICONERROR or MB_OK);
        edit1.SetFocus;
        edit1.SelectAll;
        Exit;
       end;
      AfterChangbillId:=BeforeChangbillId+'-'+ChangFlag;
      Close;
      SQL.Clear;
      SQL.Add('update snsalebill set billflag='''+ChangFlag+''' where billid='''+BeforeChangbillId+'''');
      ExecSQL;
     end;
     with ChangBillAdo do
       begin
        Close;
        SQL.Clear;
        SQL.Add('delete sntempmeal where tablename='''+Tableid+'''');
        ExecSQL;
       end;
     while Not Eof do
     begin
       Cmealid:=FieldValues['mealid'];
       Cmealname:=FieldValues['mealname'];
       Cprice:=FieldValues['mealprice'];
       Cunit:=FieldValues['unit'];
       Cmealcount:=FieldValues['mealcount'];
       Ckw:=FieldValues['mealkw'];
       Ctime:=FieldValues['mealtime'];
       Cid:=FieldValues['userid'];
       Cname:=FieldValues['idname'];
       Ctcflag:=FieldValues['tcflag'];
       Ctxid:=FieldValues['txid'];
       Ctctime:=FieldValues['tctime'];
       Cpkflag:=FieldValues['pkflag'];
       with datam.bfreeado do
        begin
         Close;
         SQL.Clear;
         SQL.Add('insert sntempmeal Values('''+Tableid+''','''+Cmealid+''','''+Cmealname+''','''+Cprice+''','''+Cunit+''','''+Cmealcount+''','''+Ckw+''','''+Ctime+''','''+Cid+''','''+Cname+''','''+Ctcflag+''','''+Ctxid+''','''+Ctctime+''','''+Cpkflag+''')');
         ExecSQL;
        end;
      Next;
     end;
     With ChangBillAdo do
      begin
       Close;
       SQL.Clear;
       SQL.Add('delete snsalemeal,paybillmemo where billid='''+BeforeChangbillId+''' And snsalemeal.tableno='''+Tableid+'''');
       ExecSQL;
      end;
     meal:=Tmeal.Create(nil);
     meal.Ftableno:=Tableid;
     meal.FChbillflag:='Changbill';
     meal.FAChbillid:=AfterChangbillId;
     meal.Edit5.Text:=AfterChangbillID;
     meal.Fbeforebillid:=BeforeChangbillId;
     meal.Fmancount:=Cmancount;
     fchbill.Close;
     fchbill.Release;
     meal.Show;
   end;
end;

procedure Tfchbill.bitb1Click(Sender: TObject);
begin
 if Vhwflag then
   begin
    self.Height:=294;
    self.Width:=392;
    bitb1.Caption:='<<';
   end else
       begin
        self.Height:=114;
        self.Width:=392;
        bitb1.Caption:='>>';
      end;
   Vhwflag:=Not Vhwflag;
end;
procedure Tfchbill.spbut1Click(Sender: TObject);
begin
 edit1.SetFocus;
 edit1.SelectAll;
end;
procedure Tfchbill.bit1Click(Sender: TObject);
begin
 edit1.Text:=Trim(edit1.Text)+bit1.Caption;
end;

procedure Tfchbill.Bit3Click(Sender: TObject);
begin
 edit1.Text:=Trim(edit1.Text)+bit3.Caption;
end;
procedure Tfchbill.Bit4Click(Sender: TObject);
begin
 edit1.Text:=Trim(edit1.Text)+bit4.Caption;
end;
procedure Tfchbill.Bit5Click(Sender: TObject);
begin
 edit1.Text:=Trim(edit1.Text)+bit5.Caption;
end;
procedure Tfchbill.Bit6Click(Sender: TObject);
begin
 edit1.Text:=Trim(edit1.Text)+bit6.Caption;
end;
procedure Tfchbill.Bit7Click(Sender: TObject);
begin
 edit1.Text:=Trim(edit1.Text)+bit7.Caption;
end;
procedure Tfchbill.Bit8Click(Sender: TObject);
begin
 edit1.Text:=Trim(edit1.Text)+bit8.Caption;
end;
procedure Tfchbill.Bit9Click(Sender: TObject);
begin
 edit1.Text:=Trim(edit1.Text)+bit9.Caption;
end;
procedure Tfchbill.Bit10Click(Sender: TObject);
begin
 edit1.Text:=Trim(edit1.Text)+bit10.Caption;
end;
procedure Tfchbill.Bit11Click(Sender: TObject);
begin
 edit1.Text:=Trim(edit1.Text)+bit11.Caption;
end;
end.

⌨️ 快捷键说明

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