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

📄 unit7.~pas

📁 东莞小肥羊火锅店收银系统,能实现前台收银记帐管理,快速的点菜系统,和桌号管理系统 是一般餐饮店首选程序
💻 ~PAS
字号:
unit Unit7;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, SUITabControl, Menus, SUIPopupMenu, SUIMainMenu,
  ExtCtrls, SUIForm, Grids, DBGrids, SUIDBCtrls, DB, ADODB, SUIButton,
  StdCtrls, SUIEdit, FR_PTabl, SUIPageControl;

type
  TForm7 = class(TForm)
    suiForm1: TsuiForm;
    suiMainMenu1: TsuiMainMenu;
    suiPopupMenu1: TsuiPopupMenu;
    suiPageControl1: TsuiPageControl;
    suiTabSheet6: TsuiTabSheet;
    Label3: TLabel;
    suedit2: TsuiEdit;
    Label4: TLabel;
    suiEdit1: TsuiEdit;
    suiButton3: TsuiButton;
    Label1: TLabel;
    ADOTable1: TADOTable;
    DataSource1: TDataSource;
    suiDBGrid1: TsuiDBGrid;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    ExCL1: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    suiButton1: TsuiButton;
    suiEdit2: TsuiEdit;
    Label2: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    suiEdit3: TsuiEdit;
    suiButton2: TsuiButton;
    frPrintGrid1: TfrPrintGrid;
    procedure FormShow(Sender: TObject);
    procedure suiButton3Click(Sender: TObject);
    procedure ADOTable1FilterRecord(DataSet: TDataSet;
      var Accept: Boolean);
    procedure N6Click(Sender: TObject);
    procedure suiButton2Click(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure ExCL1Click(Sender: TObject);
    procedure N5Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form7: TForm7;
  biaoji:integer;
implementation
  uses Unit1,ComObj;
{$R *.dfm}

procedure ToExcel(DbGrid:TsuiDBGrid; Tab: TADOTable; ExcelApp:variant);
var
 i,j,FieldNum:integer;
begin
 with Tab do
 begin
 DisableControls;
 fieldNum := dbgrid.fieldCount;
 for i:=1 to fieldNum do //写表头
 begin
 ExcelApp.Cells[1,i]:=Form7.suiDBGrid1.Columns[i-1].Title.caption;
 end;
 first;
 i:=2;
 while not eof do
 begin
 for j:=1 to fieldNum do
 begin
 ExcelApp.Cells[i,j]:=fields[j-1].AsString;
 end;
 inc(i);
 if (i mod 20)=0 then
 ExcelApp.Cells[i+10,1].Activate;
 next;
 end;
 EnableControls;
 end;
 end;

procedure TForm7.FormShow(Sender: TObject);
begin
form1.ADOConnection1.Connected:=false;
form1.ADOConnection1.Connected:=true;
ADOTable1.Active:=true;
form1.ADOTable1.Active:=true;
form1.ADOTable2.Active:=true;
form1.ADOTable5.Active:=true;
end;

procedure TForm7.suiButton3Click(Sender: TObject);
begin
if (suedit2.Text='') or (suiedit1.Text ='' ) then
begin
showmessage('请输入要查询的日期段');
end
else
begin
biaoji:=1;
adotable1.Filtered:=false;
adotable1.Filtered:=true;
end;
end;

procedure TForm7.ADOTable1FilterRecord(DataSet: TDataSet;
  var Accept: Boolean);
begin
if biaoji =1 then
begin
if (adotable1.fieldbyname('日期').AsDateTime>=strtodate(suedit2.text)) and (adotable1.fieldbyname('日期').AsDateTime<=strtodate(suiedit1.text))then
accept:=true
else
accept:=false;
end;
end;

procedure TForm7.N6Click(Sender: TObject);
begin
if application.messagebox(pchar('你确定要删除当前显示的数据吗?删除后将无法恢复!'),'删除确认',mb_yesno+mb_iconinformation)=IDYES then
begin
adotable1.first;
while not adotable1.eof do
begin
try
adotable1.delete;
adotable1.Next;
adotable1.delete;
except
exit;
end;
end;
end;
end;
procedure TForm7.suiButton2Click(Sender: TObject);
var
jisu:integer;
begin
 jisu:=0;
adotable1.first;
while not adotable1.eof do
begin
jisu:=jisu+strtoint(adotable1.fieldbyname('金额').asstring);
suiedit3.text:=inttostr(jisu);
adotable1.Next;
end;

end;

procedure TForm7.N1Click(Sender: TObject);
begin
ADOTable1.Active:=false;
ADOTable1.Active:=true;
end;

procedure TForm7.N2Click(Sender: TObject);
begin
adotable1.Filtered:=false
end;

procedure TForm7.N3Click(Sender: TObject);
begin
if suiedit3.text<>'' then
begin
frprintgrid1.PageHeader.Text:='东莞市长安镇小肥羊火锅店'+suedit2.text+'日到:'+suiedit1.text+'日业务清单,收入:'+suiedit3.text+'元';
frprintgrid1.showReport;
end
else
begin
showmessage('请先统计完总金额再打印');
end;
end;
procedure TForm7.ExCL1Click(Sender: TObject);
var
 ExcelApp: variant;
begin
 if ADOTable1.RecordCount=0 then
 begin
 Application.MessageBox('没有数据可导出。', '提示', MB_OK +
 MB_ICONINFORMATION + MB_DEFBUTTON2);
 Exit;
 end;
 application.ProcessMessages;
 try
 ExcelApp:=createoleobject('Excel.application');
 except
 messageDlg('请先安装MicroSoft Excel',mtError,[mbok],0);
 exit;
 end;
 ExcelApp.Visible := True;
 ExcelApp.Caption := '标题:';
 ExcelApp.WorkBooks.Add;
 ExcelApp.WorkSheets[1].Activate;
 ExcelApp.WorkSheets[1].name:='表名';
 ExcelApp.ActiveSheet.Rows[1].Font.Bold:= True;
 ExcelApp.Columns[1].NumberFormatLocal:='@';
 ToExcel(suiDBGrid1,ADOTable1,ExcelApp); //调用输出过程 。
 Application.MessageBox('恭喜!' + #13#10#13#10 +
 '数据成功导出,请注意数据备份。', '提示', MB_OK + MB_ICONINFORMATION +
 MB_DEFBUTTON2);
end;

procedure TForm7.N5Click(Sender: TObject);
begin
if application.messagebox('数据备份需要吗','数据立即备份确认',mb_yesno+mb_iconinformation)=IDYES then
begin
form1.ADOConnection1.Connected:=false;
if FileExists(extractfilepath(application.ExeName)+'备份数据/'+datetostr(now)+'.mdb')=true then
begin
deletefile(pchar(extractfilepath(application.ExeName)+'备份数据/'+datetostr(now)+'.mdb'));
end;
copyfile(pchar(extractfilepath(application.ExeName)+'data\data.mdb'), pchar(extractfilepath(application.ExeName)+'备份数据/'+datetostr(now)+'.mdb'), False);
showmessage('数据备份成功!'+'保存在'+extractfilepath(application.ExeName)+'备份数据/'+datetostr(now)+'.mdb');
showmessage('程序将自动关闭,请从新运行程序');
application.Terminate;

end;
end;

end.

⌨️ 快捷键说明

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