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

📄 c_mainform.pas

📁 delphi和SQL做的超市管理系统
💻 PAS
字号:
unit c_mainform;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, Menus, ExtCtrls, ImgList, ToolWin, jpeg, RpDefine,
  RpRave;

type
  Tcfrm_mainform = class(TForm)
    Panel1: TPanel;
    ImageList1: TImageList;
    Image1: TImage;
    Panel2: TPanel;
    StatusBar1: TStatusBar;
    TreeView1: TTreeView;
    RvProject1: TRvProject;
    RvProject2: TRvProject;
    procedure TreeView1Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure ShowFrame(FrameNo:Integer);
  end;

var
  cfrm_mainform: Tcfrm_mainform;

implementation

uses datam, publicvar, cf_changepass, cf_czy, cf_lb, cf_product, cf_sell,
  cf_selllook;

{$R *.dfm}
procedure Tcfrm_mainform.ShowFrame(FrameNo:Integer);
var
  i: integer;
begin
  {清除所有的Frame}
  for i:=0 to self.ComponentCount-1 do
    if (self.Components[i] is Tframe) then (self.Components[i] as Tframe).Free;
  {建立相应的Frame}
  case FrameNo of
    1:
    begin
      with Tcfra_czy.Create(self) do
      begin
        Parent := cfrm_mainform;
        Left := 188;
        Top := 76;
        Show;
      end;
    end;
    2:
    begin
      with Tcfra_changepass.Create(self) do
      begin
        Parent := cfrm_mainform;
        Left := 188;
        Top := 76;
        Show;
      end;
    end;
    3:
    begin
      with Tcfra_product.Create(self) do
      begin
        Parent := cfrm_mainform;
        Left := 188;
        Top := 76;
        dm.ADO_lb.Open;
       dm.ADO_lb.First;
      while not dm.ADO_lb.Eof do
        begin
        DBCombobox1.Items.Add(dm.ADO_lb.fieldbyname('Type').AsString);
        dm.ADO_lb.Next;
       end;
        dm.ADO_lb.Close;
        Show;
      end;
    end;
    4:
    begin
      with Tcfra_lb.Create(self) do
      begin
        Parent := cfrm_mainform;
        Left := 188;
        Top := 76;
        Show;
      end;
    end;
    5:
    begin
      with Tcfra_sell.Create(self) do
      begin
        Parent := cfrm_mainform;
        Left := 188;
        Top :=76;
        TotalMoney:=0;
        dm.ADOQ_tmpsell.SQL.Clear;
        dm.ADOQ_tmpsell.SQL.Add('delete from tmpsell');  //删除销售临时表信息
        dm.ADOQ_tmpsell.ExecSQL;
        dm.ADOQ_tmpsell.Close;   //关闭数据集
        dm.ADO_tmpsell.Close; //关闭临时表
        Label4.Caption:=FloattoStr(TotalMoney);
        Show;
      end;
    end;
    6:
    begin
      with Tcfra_selllook.Create(self) do
      begin
        Parent := cfrm_mainform;
        Left := 188;
        Top := 76;
        Show;
      end;
    end;
  end;
end;

procedure Tcfrm_mainform.TreeView1Click(Sender: TObject);
var
 CurDir:String;
 RaveFile:String;
begin
 if  TreeView1.Selected.Level=1 then
 begin
 dm.ado_user.close;
 dm.ado_user.open;
 dm.ado_user.first;
 dm.ado_user.locate('user_name',username,[]);
  if Treeview1.selected.text='用户管理' then
   begin
   if  not dm.ado_user.fieldbyname('is_all').asBoolean=true then
   begin
    messagebox(handle,'对不起,您没有足够的权限使用该功能!','权限不足',MB_ICONWARNING+mb_ok);
    exit;
   end
   else
   begin
    dm.ado_user.Open;
    dm.ADO_user.Sort:='user_id';
    dm.ADO_user.First;
    ShowFrame(1);
   end;
   end;
  if TreeView1.Selected.Text='修改密码' then
   showFrame(2);
  if TreeView1.Selected.Text='商品信息' then
   begin
   if  not dm.ado_user.fieldbyname('is_product').asBoolean=true then
   begin
    messagebox(handle,'对不起,您没有足够的权限使用该功能!','权限不足',MB_ICONWARNING+mb_ok);
    exit;
   end
   else
   begin
    dm.ADO_product.Open;
    dm.ADO_product.Sort:='prod_id';
    dm.ADO_product.First;
    ShowFrame(3);
   end;
   end;
  if TreeView1.Selected.Text='商品报表' then
  begin
  if  not dm.ado_user.fieldbyname('is_product').asBoolean=true then
   begin
    messagebox(handle,'对不起,您没有足够的权限使用该功能!','权限不足',MB_ICONWARNING+mb_ok);
    exit;
   end
   else
   begin
   GetDir(0,CurDir); //获得当前路径
   RaveFile:=Curdir+'\Reports\Product.rav';
   RvProject1.ProjectFile:=RaveFile;
   RvProject1.Execute;
   end;
  end;
  if TreeView1.Selected.Text='商品类别' then
   begin
   if  not dm.ado_user.fieldbyname('is_product').asBoolean=true then
   begin
    messagebox(handle,'对不起,您没有足够的权限使用该功能!','权限不足',MB_ICONWARNING+mb_ok);
    exit;
   end
   else
   begin
   dm.ADO_lb.close;
   dm.ADO_lb.Open;
   dm.ADO_lb.Sort:='Num';
   dm.ADO_lb.First;
    ShowFrame(4);
   end;
   end;
  if TreeView1.Selected.Text='商品销售' then
   begin
   if  not dm.ado_user.fieldbyname('is_sell').asBoolean=true then
   begin
    messagebox(handle,'对不起,您没有足够的权限使用该功能!','权限不足',MB_ICONWARNING+mb_ok);
    exit;
   end
   else
    ShowFrame(5);
   end;
  if TreeView1.Selected.Text='销售报表' then
  if  not dm.ado_user.fieldbyname('is_sell').asBoolean=true then
   begin
    messagebox(handle,'对不起,您没有足够的权限使用该功能!','权限不足',MB_ICONWARNING+mb_ok);
    exit;
   end
   else
    begin
     dm.ADO_sell.Close;
     dm.ADO_sell.Open;
     GetDir(0,CurDir); //获得当前路径
     RaveFile:=Curdir+'\Reports\Sell.rav';
     RvProject2.ProjectFile:=RaveFile;
     RvProject2.Execute;
    end;
  if TreeView1.Selected.Text='历史信息' then
   begin
   if  not dm.ado_user.fieldbyname('is_sell').asBoolean=true then
   begin
    messagebox(handle,'对不起,您没有足够的权限使用该功能!','权限不足',MB_ICONWARNING+mb_ok);
    exit;
   end
   else
    begin
    dm.ADO_sell.close;
    dm.ADO_sell.open;
    ShowFrame(6);
    end;
   end;
  if TreeView1.Selected.Text='今日盘点' then
  begin
  dm.adoq_cx.close;
  dm.adoq_cx.SQL.Clear;
  dm.adoq_cx.SQL.Add('select sum(sell_prod_price*sell_number) as TDResult from t_sell where year(sell_time)=year(getdate()) and month(sell_time)=month(getdate()) and day(sell_time)=day(getdate())');
  dm.adoq_cx.Open;
  messagebox(handle,PChar('今日销售额为 '+dm.adoq_cx.FieldByName('TDResult').AsString+' 元。'),'今日盘点',MB_ICONinformation+mb_ok);
  dm.adoq_cx.close;
  end;
 end;
end;








procedure Tcfrm_mainform.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
dm.ADO_user.Close;
Application.Terminate;
end;

procedure Tcfrm_mainform.FormCreate(Sender: TObject);
begin
Statusbar1.Panels[0].Text:='当前用户:'+username;
Statusbar1.Panels[1].Text:=usertype;
StatusBar1.Panels[2].Text:=datetostr(date());

end;

procedure Tcfrm_mainform.FormShow(Sender: TObject);
begin
ShowFrame(5);
end;

end.

⌨️ 快捷键说明

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