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

📄 c_jz.pas

📁 《delphi数据库设计与实例开发》随书光盘
💻 PAS
字号:
unit c_jz;

interface

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

type
  Tcfrm_jz = class(TForm)
    Panel1: TPanel;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Edit1: TEdit;
    BitBtn1: TBitBtn;
    Panel2: TPanel;
    Panel3: TPanel;
    Panel4: TPanel;
    Panel5: TPanel;
    GroupBox2: TGroupBox;
    Memo1: TMemo;
    Label2: TLabel;
    Edit2: TEdit;
    BitBtn2: TBitBtn;
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  cfrm_jz: Tcfrm_jz;

implementation

uses c_datam;

{$R *.dfm}

procedure Tcfrm_jz.BitBtn1Click(Sender: TObject);
var
  i:integer;
  temp_dishname:string;
  total_cost,temp_cost:double;
begin
  total_cost:=0;
  if length(Edit1.Text)=0 then
  begin
    Messagedlg('请输入桌位号!',mtError,[mbOK],0);
    edit1.SetFocus;
    exit;
  end
  else
    begin
      with dm.ADOQ_meals do   //查出指定餐桌对应的菜单
        begin
          close;
          sql.Clear;
          sql.Add('select * from Meals where table_id=:id');
          Parameters.ParamByName('id').Value:=trim(edit1.Text);
          open;
          recordcount;
          for i:=1 to recordcount do
          begin
            temp_dishname:=fieldbyname('Dish_name').AsString;
            temp_cost:=fieldbyname('Dish_cost').asfloat;
            memo1.Lines.Add(temp_dishname+'-------'+FloattoStr(temp_cost));
            total_cost:=total_cost+temp_cost;
            next;
          end;
          edit2.Text:=formatfloat('0.00',total_cost);
        end;
    end;
    end;

procedure Tcfrm_jz.BitBtn2Click(Sender: TObject);
begin
  with dm.ADO_table do      //将餐桌状态再次设空
     begin
       close;
       open;
       locate('table_id',trim(edit1.Text),[]);
       edit;
       fieldbyname('table_state').AsString:='空';
       post;
     end;

   with dm.ADOQ_meals do          //删除菜单记录
     begin
       close;
       sql.Clear;
       sql.Add('delete from Meals where table_id=:id');
       Parameters.ParamByName('id').Value:=trim(edit1.Text);
       execSQL;
     end;

   with dm.ado_benefit do      //写入餐厅营业表
     begin
       close;
       open;
       append;
       fieldbyname('table_id').AsString:=trim(edit1.Text);
       fieldbyname('benefit').AsFloat:=StrtoFloat(trim(edit2.Text));
       fieldbyname('bdate').AsDateTime:=date();
       post;
     end;
   application.MessageBox(pchar('结帐完成!'),pchar('提示'),+MB_ICONQUESTION);
   edit1.Text:='';
   edit2.Text:='';
   Memo1.Text:='';
end;

procedure Tcfrm_jz.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 dm.ADO_table.Close;
 dm.ado_benefit.Close;
 dm.ADOQ_meals.Close;
 release;
end;

end.

⌨️ 快捷键说明

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