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

📄 mc_sjxxsz.~pas

📁 餐饮管理:菜单录入打印菜单等
💻 ~PAS
字号:
unit MC_SJXXSZ;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Mask, DBCtrls, Grids, DBGrids, DBActns, ActnList, Buttons, Db,
  DBTables;

type
  TSJXXSZ = class(TForm)
    DBGrid1: TDBGrid;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    DBEdit2: TDBEdit;
    Label3: TLabel;
    Ddd: TDBEdit;
    Label4: TLabel;
    DBbbb: TDBEdit;
    Label5: TLabel;
    DBEdit5: TDBEdit;
    Label6: TLabel;
    Label7: TLabel;
    DBEdit7: TDBEdit;
    Edit1: TEdit;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    BitBtn6: TBitBtn;
    BitBtn7: TBitBtn;
    BitBtn8: TBitBtn;
    BitBtn9: TBitBtn;
    ActionList1: TActionList;
    DataSetFirst1: TDataSetFirst;
    DataSetLast1: TDataSetLast;
    DataSetNext1: TDataSetNext;
    DataSetPrior1: TDataSetPrior;
    DBText1: TDBText;
    DBLookupComboBox1: TDBLookupComboBox;
    Query1: TQuery;
    DBEdit1: TDBEdit;
    Label8: TLabel;
    DBEdit3: TDBEdit;
    DBEdit4: TDBEdit;
    procedure DBEdit2KeyPress(Sender: TObject; var Key: Char);
    procedure DBEdit5KeyPress(Sender: TObject; var Key: Char);
    procedure DBLookupComboBox1KeyPress(Sender: TObject; var Key: Char);
    procedure DBEdit7KeyPress(Sender: TObject; var Key: Char);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormShow(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure BitBtn9Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure BitBtn7Click(Sender: TObject);
    procedure BitBtn8Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure DddKeyPress(Sender: TObject; var Key: Char);
    procedure DBEdit1KeyPress(Sender: TObject; var Key: Char);
    procedure DBEdit3KeyPress(Sender: TObject; var Key: Char);
    procedure DBEdit4KeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  SJXXSZ: TSJXXSZ;

implementation

uses MC_TLCYGLXT;

{$R *.DFM}

Function AEnabled(key:integer):Boolean;  //定义状态函数
begin
If key = 1 Then  //编辑状态
begin
  SJXXSZ.BitBtn1.Enabled:=False;    //“首记录“按钮不可用
  SJXXSZ.BitBtn2.Enabled:=False;    //“下一条“按钮不可用
  SJXXSZ.BitBtn3.Enabled:=False;    //“上一条“按钮不可用
  SJXXSZ.BitBtn4.Enabled:=False;    //“尾记录“按钮不可用
  SJXXSZ.BitBtn5.Enabled:=False;    //“查询“按钮不可用
  SJXXSZ.BitBtn8.Enabled:=False;    //“删除“按钮不可用
  SJXXSZ.BitBtn9.Enabled:=False;    //“退出“按钮不可用
  SJXXSZ.Edit1.Enabled:=False;     //查询输入框不可用
  SJXXSZ.DBGrid1.Enabled:=False;
  SJXXSZ.GroupBox1.Visible:=True;
  SJXXSZ.BitBtn6.Caption:='保存[&S]';
  SJXXSZ.BitBtn7.caption:='取消[&Q]';
  SJXXSZ.DBEdit1.SetFocus;
End
Else  //浏览状态
begin
  SJXXSZ.BitBtn1.Enabled:=True;
  SJXXSZ.BitBtn2.Enabled:=True;
  SJXXSZ.BitBtn3.Enabled:=True;
  SJXXSZ.BitBtn4.Enabled:=True;
  SJXXSZ.BitBtn5.Enabled:=True;
  SJXXSZ.BitBtn8.Enabled:=True;
  SJXXSZ.BitBtn9.Enabled:=True;
  SJXXSZ.Edit1.Enabled:=True;
  SJXXSZ.DBGrid1.Enabled:=True;
  SJXXSZ.GroupBox1.Visible:=False;
  SJXXSZ.BitBtn6.Caption:='添加[&I]';
  SJXXSZ.BitBtn7.caption:='修改[&E]';
End
end;
procedure TSJXXSZ.FormShow(Sender: TObject);    //系统初始化
begin
 SJXXSZ.Refresh;
 DBGrid1.Refresh;
end;

procedure TSJXXSZ.DBEdit2KeyPress(Sender: TObject; var Key: Char);
begin
{if key=#13 then    //回车
 begin
  If Length(DBEdit2.Text) <> 0 Then     //如果输入不为空
   begin
    if Query1.Locate('pyjm',StrToInt(DBEdit2.Text),[loCaseInsensitive]) then   //在库存中查找该编号酒水
     begin    //如果找到,添加酒水名称和单位信息
      ShowMessage('已存在该简码...');  //如果输入为空
      exit;
     End
    Else      //如果找不到,提示没有发现水酒信息
     begin
 //     TLCYGLXT.SJFYXXB.FieldByName('酒水名称').AsString:=Query1.FieldByName('商品名称').AsString;
 //     TLCYGLXT.SJFYXXB.FieldByName('单位').AsString:=Query1.FieldByName('单位').AsString;
 //     PerForm(WM_NEXTDLGCTL,0,0);
       dbedit3.SetFocus;
     end;
    End
  Else
   ShowMessage('请输入库存编号.');
  End
 Else
 if key=#8 then Key:=#8   //退格键
 Else
// if (key<'0') or (key>'9') then key:=#0;  //屏蔽非数字键     }
 if key=#13 then dbedit3.SetFocus;
end;

procedure TSJXXSZ.DBEdit5KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then
  begin
   if dbedit5.Text ='' then
    begin
     showmessage('价格为空');
     dbedit5.SetFocus;
    end
   else
    begin
      DBLookupCombobox1.SetFocus;  //回车焦点移到“酒水类别“输入框
    end;
  end;
end;
procedure TSJXXSZ.DBLookupComboBox1KeyPress(Sender: TObject;var Key: Char);
begin
 if key=#13 then DBEdit7.SetFocus;     //回车焦点移到“简要说明“输入框
end;
procedure TSJXXSZ.DBEdit7KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then BitBtn6.SetFocus;    //回车焦点移到“保存“按钮
end;

procedure TSJXXSZ.BitBtn6Click(Sender: TObject);   //添加或保存酒水信息
var a,b:integer;
begin
if Bitbtn6.Caption='添加[&I]' then    //添加酒水信息
begin
 If TLCYGLXT.SJFYXXB.RecordCount = 0 Then   a:=10000  Else//酒水信息库为空,酒水编号为10001
 begin   //如果酒水信息库不为空
  TLCYGLXT.SJFYXXB.Last;
  a:=TLCYGLXT.SJFYXXB.FieldByName('编号').AsInteger;
  b:=tlcyglxt.SJFYXXB.fieldbyname('货存编号').AsInteger;
 end;
  TLCYGLXT.SJFYXXB.Append;
  TLCYGLXT.SJFYXXB.FieldByName('货存编号').AsInteger:=b+1;
//  TLCYGLXT.SJFYXXB.FieldByName('pyjm').AsString:=dbedit2.Text;
//  TLCYGLXT.SJFYXXB.FieldByName('酒水名称').AsString:=dbedit3.Text;
//  TLCYGLXT.SJFYXXB.FieldByName('单位').AsString:=dbedit4.Text;
//  TLCYGLXT.SJFYXXB.FieldByName('价格').AsString:=dbedit5.Text;
//  TLCYGLXT.SJFYXXB.FieldByName('简要说明').AsString:=dbedit7.Text;
  TLCYGLXT.SJFYXXB.FieldByName('编号').AsInteger:=a+1;   //设置输入酒水编号
  TLCYGLXT.SJFYXXB.FieldByName('酒水类别').AsString:=TLCYGLXT.JSLBXXB.FieldByName('类别名称').AsString;
  Aenabled(1);
End
Else //保存酒水信息
begin
 if (Length(TLCYGLXT.SJFYXXB.FieldByName('货存编号').AsString)<>0) or
   (Length(TLCYGLXT.SJFYXXB.FieldByName('水酒名称').AsString)<>0) or
   (Length(TLCYGLXT.SJFYXXB.FieldByName('单位').AsString)<>0) or
   (Length(TLCYGLXT.SJFYXXB.FieldByName('价格').AsString)<>0) or
   (Length(TLCYGLXT.SJFYXXB.FieldByName('酒水类别').AsString)<>0) then
   begin
    Aenabled(2);
    TLCYGLXT.SJFYXXB.Post;    //保存酒水信息
   End
  Else
   begin
    ShowMessage('对不起,请将数据[货存编号、水酒名称、单位、价格、水酒类别]添全.');
    DBEdit2.SetFocus;
   end;
end;
end;
procedure TSJXXSZ.BitBtn7Click(Sender: TObject);  //修改或取消
begin
  if Bitbtn7.Caption='修改[&E]' then    //修改酒水信息
  begin
    TLCYGLXT.SJFYXXB.Edit;
    Aenabled(1);   //此时为编辑状态
  End
  Else
  begin
    Aenabled(2);    //此时为浏览状态
    TLCYGLXT.SJFYXXB.Cancel;
  end;
end;

procedure TSJXXSZ.BitBtn8Click(Sender: TObject);  //删除数据
begin
// TLCYGLXT.SJFYXXB.Refresh;//刷新数据
 If TLCYGLXT.SJFYXXB.RecordCount = 0 Then
 begin
   ShowMessage('没有数据信息,不能删除!!');
 End
 Else
 If TLCYGLXT.SJFYXXB.RecordCount <> 1 Then
 begin
  if MessageDLG('确认删除选择的酒水信息吗?',mtCustom,[mbYes,mbNO],0)=mrYes then
  begin
     TLCYGLXT.SJFYXXB.Delete;
     tlcyglxt.SJFYXXB.Close;
     tlcyglxt.SJFYXXB.Open;
  end;
 End
 else ShowMessage('数据信息只剩一条,不能删除!!');
end;

procedure TSJXXSZ.BitBtn5Click(Sender: TObject);  //查询酒水信息
begin
 If Length(Edit1.Text) = 0 Then   //输入为空
 begin
   ShowMessage('请在左边的信息框中输入编号信息');
   Edit1.SetFocus;
 End
 Else
 begin
   TLCYGLXT.SJFYXXB.Refresh;//刷新数据
   if TLCYGLXT.SJFYXXB.Locate('编号',StrToInt(Edit1.Text),[loCaseInsensitive])  then //过滤数据
   begin
    DBGRid1.SetFocus;
    DBGRid1.SelectedIndex:=0;
   End
   Else
   begin
    ShowMessage('没有找到');
    Edit1.SetFocus;
  end;
 end;
end;

procedure TSJXXSZ.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then BitBtn5.Click;   //焦点移到“查询”按钮
end;

procedure TSJXXSZ.DddKeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then
  begin
   if dbedit3.Text ='' then
    begin
     showmessage('酒水名称不能为空...');
     exit;
    end
   else
    begin
     PerForm(WM_NEXTDLGCTL,0,0);
     dbedit4.SetFocus;
    end;
  end;
end;

procedure TSJXXSZ.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 SJXXSZ.Release;   //释放资源
 SJXXSZ:=Nil;
end;
procedure TSJXXSZ.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  If BitBtn9.Enabled = False Then   //处于编辑状态
  begin
    ShowMessage('请保存或放弃录入的数据.');
    Abort;
  end;
end;
procedure TSJXXSZ.BitBtn9Click(Sender: TObject);  //退出酒水信息设置
begin
 Close;
end;

procedure TSJXXSZ.DBEdit1KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then dbedit2.SetFocus;
end;

procedure TSJXXSZ.DBEdit3KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then
  begin
   if dbedit3.Text ='' then
    begin
     showmessage('酒水名称不能为空...');
     exit;
    end
   else
    begin
     PerForm(WM_NEXTDLGCTL,0,0);
     dbedit4.SetFocus;
    end;
  end;
end;

procedure TSJXXSZ.DBEdit4KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then DBEdit5.SetFocus;   //焦点移到“价格”输入框
end;

end.

⌨️ 快捷键说明

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