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

📄 uz_yhyd_xz.pas

📁 恒邦餐饮管理源码。将源码放到C:hbjdcyzy 登陆:1001/1001
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit uz_yhyd_xz;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  DBCtrls, StdCtrls, Mask, Buttons, Grids, DBGrids, ExtCtrls,u_main,
  DBLookup, ComCtrls, Db, DBTables;

type
  Tz_yhyd_xz = class(TForm)
    DBGrid1: TDBGrid;
    qx: TBitBtn;
    BitBtn1: TBitBtn;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label15: TLabel;
    Label16: TLabel;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    Label17: TLabel;
    Label18: TLabel;
    Label19: TLabel;
    Label20: TLabel;
    Label21: TLabel;
    Label13: TLabel;
    SpeedButton4: TSpeedButton;
    SpeedButton3: TSpeedButton;
    yddh: TDBEdit;
    yddw: TDBEdit;
    lxr: TDBEdit;
    lxdh: TDBEdit;
    dz: TDBEdit;
    krzs: TDBEdit;
    ydzs: TDBEdit;
    dj: TDBEdit;
    kryq: TDBEdit;
    yhbz: TDBEdit;
    yhje: TDBEdit;
    jzfs: TDBLookupCombo;
    ydth: TDBEdit;
    yddt: TComboBox;
    yhrq: TDateTimePicker;
    sjrs: TDBEdit;
    xhrs: TDBEdit;
    dzl: TDBEdit;
    bz: TDBEdit;
    fwfl: TDBEdit;
    Label14: TLabel;
    yhsj: TDateTimePicker;
    Label22: TLabel;
    y_jzfs: TTable;
    y_jzfsJZFSH: TStringField;
    y_jzfsJzfs: TStringField;
    y_jzfsD_yn: TBooleanField;
    dy_jzfs: TDataSource;
    procedure FormShow(Sender: TObject);
    procedure yddhExit(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure qxClick(Sender: TObject);
    procedure krzsChange(Sender: TObject);
    procedure djChange(Sender: TObject);
    procedure yhbzChange(Sender: TObject);
    procedure sjrsChange(Sender: TObject);
    procedure xhrsChange(Sender: TObject);
    procedure dzlChange(Sender: TObject);
    procedure fwflChange(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure yddtChange(Sender: TObject);
    procedure yddwKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure SpeedButton3Click(Sender: TObject);
    procedure ydthKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure SpeedButton4Click(Sender: TObject);
    procedure DBGrid1Enter(Sender: TObject);
    procedure DBGrid1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    procedure DBGrid1Exit(Sender: TObject);
    procedure yhbzEnter(Sender: TObject);
    procedure djEnter(Sender: TObject);
    procedure dzlEnter(Sender: TObject);
    procedure fwflEnter(Sender: TObject);
    procedure krzsEnter(Sender: TObject);
    procedure xhrsEnter(Sender: TObject);
    procedure sjrsEnter(Sender: TObject);
    procedure ydthChange(Sender: TObject);
    procedure ydthKeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure yhydje;
    function hn_bh:integer;
    procedure dccz;
  end;

var
  z_yhyd_xz: Tz_yhyd_xz;
  ys_krzs,ys_sjrs,ys_xhrs,ys_yhbz,ys_dj,ys_dzl,ys_fwfl:string;
implementation

uses uz_yhyd_xzt, uz_yhyd, uz_ckgl, ug_dc, ug_ckcx, uy_yyt_rt, uy_yyt;

{$R *.DFM}
procedure Tz_yhyd_xz.yhydje;
begin
 //计算点菜金额
 with main.query1 do
  begin
   sql.clear;
   sql.add('select sum(hj) as je from yhydcd where yddh=:s_yddh');
   ParamByName('s_yddh').asstring:=z_yhyd.yhyd.fieldbyname('yddh').asstring;
   active:=false;
   active:=true;
   z_yhyd.yhyd.edit;
   z_yhyd.yhyd.fieldbyname('yhje').value:=fieldbyname('je').ascurrency;
  end;
end;
function Tz_yhyd_xz.hn_bh:integer;
var
 h_bh:integer;
begin
 with main.query1 do
   begin
    active:=false;
    sql.Clear;
    sql.add('select max(bh) as bh from yhydcd');
    active:=true;
    h_bh:=fieldbyname('bh').asinteger+1;
   end;
 hn_bh:=h_bh;
end;
procedure Tz_yhyd_xz.dccz;
begin
with z_yhyd.yhydcd do
 begin
   esc_enter:=0;
   g_dc.showmodal;
   if esc_enter=0 then  exit;
   edit;
   fieldbyname('bh').value:=hn_bh;
   fieldbyname('yddh').value:=trim(yddh.text);
   fieldbyname('clh').value:=g_dc.q_dc.fieldbyname('clh').asstring;
   fieldbyname('ch').value:=g_dc.q_dc.fieldbyname('ch').asstring;
   fieldbyname('cm').value:=g_dc.q_dc.fieldbyname('mc').asstring;
   fieldbyname('dj').value:=g_dc.q_dc.fieldbyname('dj').asfloat;
   fieldbyname('sl').value:=1;
   fieldbyname('dzl').value:=g_dc.q_dc.fieldbyname('dzl').asfloat;
   fieldbyname('gg').value:=g_dc.q_dc.fieldbyname('gg').asstring;
   fieldbyname('lbh').value:=g_dc.q_dc.fieldbyname('lbh').asstring;
   post;
 end;
end;

procedure Tz_yhyd_xz.FormShow(Sender: TObject);
var
 i,ii:integer;
 s_thts,s_yhsj:string;
begin
 if y_n=1 then
  begin
   z_yhyd.yhyd.append;
   caption:='宴会预定[新增]';
   yhrq.Date:=date();
   yhsj.time:=time();
   yddt.Items.Clear;
   yddh.enabled:=true;
   yddt.text:='';
   yddh.setfocus;
   z_yhyd.yhydcd.Filter:='yddh='+'0000';
  end
 else
  begin
   z_yhyd.yhyd.edit;
   caption:='宴会预定[修改]';
   ydzs.setfocus;
   yddt.Items.Clear;
   s_thts:=z_yhyd.yhyd.fieldbyname('thts').asstring;
   ii:=length(s_thts);
   for i:=1 to ii  do
    begin
     if i>ii/2 then break;
     yddt.items.add(copy(s_thts,1,2));
     s_thts:=copy(s_thts,3,length(s_thts))
    end;
   yddh.enabled:=false;
   yhrq.date:=z_yhyd.yhyd.fieldbyname('yhrq').asdatetime;
   s_yhsj:=z_yhyd.yhyd.fieldbyname('yhsj').asstring;
   yhsj.time:=strtodatetime(copy(s_yhsj,1,2)+':'+copy(s_yhsj,4,5));
   z_yhyd.yhydcd.filter:='yddh='+z_yhyd.yhyd.fieldbyname('yddh').asstring;
  end;
end;

procedure Tz_yhyd_xz.yddhExit(Sender: TObject);
begin
 s_sql:='select yddh from yhyd where yddh=:s_yddh';
 if main.h_only(s_sql,'s_yddh',yddh.text)<>0 then
   begin
     messagebox(handle,'您输入的宴会单号已经存在!','系统提示信息',MB_OK+MB_ICONWARNING);
     yddh.setfocus;
   end;
end;

procedure Tz_yhyd_xz.BitBtn1Click(Sender: TObject);
var
 i:integer;
 s_thts:string;
begin
 try
   strtoint(yddh.text);
  except
    messagebox(handle,'宴会单号必须为10位数字!','系统提示信息',MB_OK+MB_ICONWARNING);
    yddh.setfocus;
    exit;
  end;
 if (trim(yddh.text)='') or (length(yddh.text)<>10) then
   begin
    messagebox(handle,'宴会单号必须为10位数字!','系统提示信息',MB_OK+MB_ICONWARNING);
    yddh.setfocus;
    exit;
   end;
 if yhrq.Date<date()  then
   begin
    messagebox(handle,' 请确定宴会日期!','系统提示信息',MB_OK+MB_ICONWARNING);
    yhrq.setfocus;
    exit;
   end;
 if trim(ydzs.text)=''  then
   begin
    messagebox(handle,' 请输入预定桌数!','系统提示信息',MB_OK+MB_ICONWARNING);
    ydzs.setfocus;
    exit;
   end;
 if trim(ydth.text)=''then
   begin
    messagebox(handle,' 请输入预定台号!','系统提示信息',MB_OK+MB_ICONWARNING);
    ydth.setfocus;
    exit;
   end;
 if trim(yddw.text)='' then
   begin
    messagebox(handle,' 请选择预定单位!','系统提示信息',MB_OK+MB_ICONWARNING);
    yddw.setfocus;
    exit;
   end;
 if trim(dj.text)='' then
   begin
    messagebox(handle,' 请输入宴会定金!','系统提示信息',MB_OK+MB_ICONWARNING);
    dj.setfocus;
    exit;
   end;
 if yddt.Items.Count<strtoint(ydzs.Text) then
   begin
    messagebox(handle,'预定多台不够预定桌数!','系统提示信息',MB_OK+MB_ICONWARNING);
    ydzs.setfocus;
    exit;
   end;
 s_thts:='';
 for i:=0 to yddt.Items.Count-1 do
   s_thts:=s_thts+yddt.Items[i];
 z_yhyd.yhyd.edit;
 z_yhyd.yhyd.fieldbyname('yhrq').value:=formatdatetime('yyyy.mm.dd',yhrq.date);
 z_yhyd.yhyd.fieldbyname('yhsj').value:=formatdatetime('hh.mm',yhsj.time);
 z_yhyd.yhyd.fieldbyname('ydrq').value:=date();
 if trim(s_thts)='' then
   z_yhyd.yhyd.fieldbyname('thts').value:=ydth.text
  else
   z_yhyd.yhyd.fieldbyname('thts').value:=s_thts;
 z_yhyd.yhyd.post;
 close;
end;



procedure Tz_yhyd_xz.qxClick(Sender: TObject);
begin
 if yddh.Enabled then
  begin
   s_sql:='delete from yhydcd where yddh="'+yddh.text+'"';
   main.h_del(s_sql);
  end;

⌨️ 快捷键说明

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