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

📄 jmddmwh.pas

📁 日昌餐饮管理系统是用Delphi7+SQL写的管理系统
💻 PAS
字号:
unit jmddmwh;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, DB, ADODB, StdCtrls, Buttons, ExtCtrls, Mask,
  DBCtrls, Excel2000, OleServer, DBTables;

type
  TjmdForm = class(TForm)
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    Panel2: TPanel;
    BitBtn5: TBitBtn;
    BitBtn6: TBitBtn;
    Panel4: TPanel;
    BitBtn4: TBitBtn;
    Panel1: TPanel;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn7: TBitBtn;
    BitBtn8: TBitBtn;
    ExcelApplication1: TExcelApplication;
    ExcelWorksheet1: TExcelWorksheet;
    ExcelWorkbook1: TExcelWorkbook;
    Panel3: TPanel;
    Label1: TLabel;
    Label3: TLabel;
    DBEdit1: TDBEdit;
    DBEdit3: TDBEdit;
    DBEdit4: TDBEdit;
    Label5: TLabel;
    ADOquery1: TADOquery;
    ADOquery2: TADOquery;
    procedure FormActivate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Formbtn;
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure BitBtn8Click(Sender: TObject);
    procedure DBEdit1Exit(Sender: TObject);
  private
    btn:string;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  jmdForm: TjmdForm;
  func:string;
implementation
uses rjsmain;
{$R *.dfm}

procedure TjmdForm.FormActivate(Sender: TObject);
begin
     if btn<>'' then exit;
//     dbedit3.ImeName:=rjsmain.ImeNm_C;
//     dbedit4.ImeName:=rjsmain.ImeNm_C;
     panel1.Enabled:=true;
     panel2.Enabled:=false;
     panel3.Enabled:=false;
     dbgrid1.Enabled:=true;
     adoquery1.Open;
end;

procedure TjmdForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
     btn:='';
     func:='';
     adoquery1.Close;
end;

procedure TjmdForm.BitBtn4Click(Sender: TObject);
begin
     close;
end;
procedure TjmdForm.formBtn;
begin
     dbgrid1.Enabled:=not dbgrid1.Enabled;
     panel1.Enabled:=not panel1.Enabled;
     panel2.Enabled:=not panel2.Enabled;
     panel3.Enabled:=not panel3.Enabled;
     if panel1.Enabled then bitbtn1.SetFocus else bitbtn5.SetFocus;
end;

procedure TjmdForm.BitBtn5Click(Sender: TObject);
begin
     if (btn='add') or (btn='mod') then
     begin
       if adoquery1.FieldByName('bh').AsString='' then
       begin
         messagedlg('编码不能为空!!',mtwarning,[mbok],0);
         dbedit1.SetFocus;
         exit;
       end;
       if adoquery1.FieldByName('mc').AsString='' then
       begin
         messagedlg('名称不能为空!!',mtwarning,[mbok],0);
         exit;
       end;
       adoquery1.Post;
     end;
     if btn='del' then begin
       adoquery1.Delete;
     end;
     formBtn;
end;

procedure TjmdForm.BitBtn6Click(Sender: TObject);
begin
     if (btn='add') or (btn='mod') then adoquery1.Cancel;
     formBtn;
end;

procedure TjmdForm.BitBtn2Click(Sender: TObject);
begin
     formBtn;
     btn:='mod';
     adoquery1.Edit;
     dbedit1.SetFocus;
end;

procedure TjmdForm.BitBtn1Click(Sender: TObject);
begin
     formBtn;
     btn:='add';
     adoquery1.Append;
     dbedit1.SetFocus;
end;

procedure TjmdForm.BitBtn3Click(Sender: TObject);
begin
     formBtn;
     btn:='del';
end;

procedure TjmdForm.FormCreate(Sender: TObject);
begin
     func:='';
     btn:='';
end;

procedure TjmdForm.FormKeyPress(Sender: TObject; var Key: Char);
begin
    if key=chr(13) then perform($28,0,0);
end;

procedure TjmdForm.BitBtn8Click(Sender: TObject);
var
 i,row,column:integer;
begin
 Try
  ExcelApplication1.Connect;
 Except
  MessageDlg('Excel 没有安装,无法报表!!',
  mtError, [mbOk], 0);
  Abort;
 End;
 ExcelApplication1.Visible[0]:=True;
 ExcelApplication1.Caption:='Excel 报表';
 ExcelApplication1.Workbooks.Add(Null,0);
 ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks[1]);
 ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Worksheets[1] as _Worksheet);
 column:=1;
 for i:=1 to adoquery1.FieldCount do
   begin
    ExcelWorksheet1.Cells.Item[1,column]:=adoquery1.fields[i-1].FieldName;
    column:=column+1;
   end;
 row:=2;
 adoquery1.First;
 While Not(adoquery1.Eof) do
 begin
   column:=1;
   for i:=1 to adoquery1.FieldCount do
   begin
    ExcelWorksheet1.Cells.Item[row,column]:=adoquery1.fields[i-1].AsString;
    column:=column+1;
   end;
   adoquery1.Next;
   row:=row+1;
 end;
 ExcelApplication1.Visible[0]:=true;
 ExcelApplication1.ActiveWorkbook.Save(0);
 ExcelApplication1.Save('加盟店编码表.xls');
 ExcelApplication1.Workbooks.Close(1);
 ExcelApplication1.Visible[0]:=false;
 ExcelApplication1.Quit;
end;

procedure TjmdForm.DBEdit1Exit(Sender: TObject);
begin
   if (btn='add') or ((btn='mod') and (adoquery1.FieldByName('bh').Value<>adoquery1.FieldByName('bh').OldValue)) then
   begin
     adoquery2.Close;
     adoquery2.Parameters.ParamByName('cs').Value:=dbedit1.Text;
     adoquery2.Open;
     if adoquery2.RecordCount>0 then begin
       messagebox(handle,'该编号已经存在,请另选','系统提示',0);
       dbedit1.Text:=adoquery1.FieldByName('lbbm').OldValue;
       dbedit1.SetFocus;
     end;
     adoquery2.Close;
   end;
end;

end.

⌨️ 快捷键说明

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