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

📄 unitmain.~pas

📁 仓储系统
💻 ~PAS
字号:
unit UnitMain;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, ImgList, _GClass, AbGradient, ComCtrls, ToolWin, ExtCtrls,
  ShellApi, AppEvnts, RXShell, XPMenu, Buttons;

const
  my_paint=WM_USER+100;//自定义消息从100开始
  CM_RESTORE = WM_USER + $1000; {自定义的“恢复”消息}
  MYAPPNAME = 'myqcgl';

type
  TfrmMain = class(TForm)
    ControlBar1: TControlBar;
    ImageList1: TImageList;
    MainMenu1: TMainMenu;
    m_base: TMenuItem;
    m_StockOp: TMenuItem;
    m_report: TMenuItem;
    m_Syssetup: TMenuItem;
    m_exit: TMenuItem;
    m_Help: TMenuItem;
    n_Kf: TMenuItem;
    n_OutInType: TMenuItem;
    n_PdType: TMenuItem;
    n_Quality: TMenuItem;
    N13: TMenuItem;
    n_baseStock: TMenuItem;
    N15: TMenuItem;
    N1: TMenuItem;
    N9: TMenuItem;
    n_PyPk: TMenuItem;
    n_cg: TMenuItem;
    n_zz: TMenuItem;
    n_ProductIn: TMenuItem;
    n_TL: TMenuItem;
    n_ProductOut: TMenuItem;
    n_Ly: TMenuItem;
    n_Bf: TMenuItem;
    StatusBar1: TStatusBar;
    m_qry: TMenuItem;
    n_JLunit: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    N7: TMenuItem;
    N11: TMenuItem;
    n_help: TMenuItem;
    n_about: TMenuItem;
    n_dept: TMenuItem;
    n_gys: TMenuItem;
    n_kw: TMenuItem;
    S1: TMenuItem;
    N2: TMenuItem;
    n_dj: TMenuItem;
    N20: TMenuItem;
    N21: TMenuItem;
    N22: TMenuItem;
    N23: TMenuItem;
    N24: TMenuItem;
    N25: TMenuItem;
    N26: TMenuItem;
    N27: TMenuItem;
    N28: TMenuItem;
    N31: TMenuItem;
    N32: TMenuItem;
    N33: TMenuItem;
    n_exit: TMenuItem;
    n_ExitWin: TMenuItem;
    N10: TMenuItem;
    n_kh: TMenuItem;
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    ToolButton2: TToolButton;
    ToolButton3: TToolButton;
    ToolButton4: TToolButton;
    ToolButton5: TToolButton;
    ToolButton6: TToolButton;
    ToolButton7: TToolButton;
    ToolButton8: TToolButton;
    ToolButton9: TToolButton;
    ToolButton10: TToolButton;
    ToolButton11: TToolButton;
    N17: TMenuItem;
    n_Lb: TMenuItem;
    N18: TMenuItem;
    N19: TMenuItem;
    N29: TMenuItem;
    N4: TMenuItem;
    N3: TMenuItem;
    N12: TMenuItem;
    N14: TMenuItem;
    n_planNum: TMenuItem;
    N16: TMenuItem;
    RxTrayIcon1: TRxTrayIcon;
    ApplicationEvents1: TApplicationEvents;
    PopupMenu1: TPopupMenu;
    N8: TMenuItem;
    N30: TMenuItem;
    XPMenu1: TXPMenu;
    N34: TMenuItem;
    ToolBar2: TToolBar;
    SpeedButton15: TSpeedButton;
    SpeedButton13: TSpeedButton;
    Splitter1: TSplitter;
    SpeedButton12: TSpeedButton;
    SpeedButton11: TSpeedButton;
    SpeedButton10: TSpeedButton;
    Splitter2: TSplitter;
    SpeedButton16: TSpeedButton;
    Splitter3: TSplitter;
    SpeedButton14: TSpeedButton;
    Splitter4: TSplitter;
    Splitter5: TSplitter;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    procedure FormCreate(Sender: TObject);
    procedure OpenMDIChild(TChild:TComponentClass;var Child);
    procedure n_KfClick(Sender: TObject);
    procedure n_PdTypeClick(Sender: TObject);
    procedure n_baseStockClick(Sender: TObject);
    procedure n_OutInTypeClick(Sender: TObject);
    procedure n_QualityClick(Sender: TObject);
    procedure n_JLunitClick(Sender: TObject);
    procedure n_cgClick(Sender: TObject);
    procedure N5Click(Sender: TObject);
    procedure n_aboutClick(Sender: TObject);
    procedure n_zzClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure n_deptClick(Sender: TObject);
    procedure n_gysClick(Sender: TObject);
    procedure n_ProductInClick(Sender: TObject);
    procedure n_kwClick(Sender: TObject);
    procedure n_ProductOutClick(Sender: TObject);
    procedure n_LyClick(Sender: TObject);
    procedure n_TLClick(Sender: TObject);
    procedure n_helpClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure n_BfClick(Sender: TObject);
    procedure n_PyPkClick(Sender: TObject);
    procedure n_exitClick(Sender: TObject);
    procedure n_ExitWinClick(Sender: TObject);
    procedure N10Click(Sender: TObject);
    procedure N27Click(Sender: TObject);
    procedure N28Click(Sender: TObject);
    procedure N29Click(Sender: TObject);
    procedure N22Click(Sender: TObject);
    procedure N17Click(Sender: TObject);
    procedure n_LbClick(Sender: TObject);
    procedure n_djClick(Sender: TObject);
    procedure N31Click(Sender: TObject);
    procedure N18Click(Sender: TObject);
    procedure n_khClick(Sender: TObject);
    procedure N14Click(Sender: TObject);
    procedure N8Click(Sender: TObject);
    procedure n_planNumClick(Sender: TObject);
    procedure N16Click(Sender: TObject);
    procedure ApplicationEvents1Minimize(Sender: TObject);
    procedure ApplicationEvents1Restore(Sender: TObject);
    procedure RxTrayIcon1DblClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    StrOperat:string;
  end;

var
  frmMain: TfrmMain;

implementation

uses UnitStockRoom, UnitPdType, UnitMateBasic, UnitInOutClass, UnitQuality,
  UnitJLUnit, UnitStockIn, UnitInStockList, UnitAbout, UnitDm, UnitDept,
  UnitGys, UnitStockPosition, UnitProductIn, UnitProductOut, UnitLy,
  UnitTuiLiao, UnitStockZz, UnitQryStockMate, UnitMateNumChg,
  UnitMonthStock, UnitOp, UnitBaoFei, UnitPyPk, UnitQryCondition,
  UnitMateClass, UnitBillPrint, UnitQryDj, UnitInOutDjQry, UnitCustomer,
  UnitPlanNum, UnitMateNumPlanQry;

{$R *.dfm}

procedure TfrmMain.FormCreate(Sender: TObject);
var
  temp:string;
begin
  statusbar1.Panels[0].text:='准备';

  temp:='今天日期:【'+FormatDateTime('yyyy-mm-dd dddd', now)+'】';
  statusbar1.Panels[1].text:=temp;
  statusbar1.Panels[1].width:=statusbar1.Canvas.TextWidth(temp)+25;

  temp:='现在时间:【'+FormatDateTime('hh:mm:ss', now)+'】';
  statusbar1.Panels[2].text:=temp;
  statusbar1.Panels[2].width:=statusbar1.Canvas.TextWidth(temp)+20;
  statusbar1.Panels[4].text:='武汉凡谷信息中心研制         【凡谷软件】';

  ModifyMenu(MainMenu1.Handle,6, mf_ByPosition or mf_help,m_help.Handle, '帮助(&F)');

end;

procedure TfrmMain.FormShow(Sender: TObject);
begin
  DM.ADO_C.Connected:=True;
  if DM.ADO_C.Connected=False then
  begin
    application.messagebox('请检查服务器是否连接正常!','提示',mb_ok+mb_iconwarning);
    exit;
  end;
end;

procedure TfrmMain.OpenMDIChild(TChild:TComponentClass;var Child);
var
 I:Integer;
 total:integer;//子窗口个数
begin
 try
  lockwindowupdate(clienthandle);
  total:=frmMain.MDIChildCount;
   if total > 0 then
   begin
    for I:=frmMain.MDIChildCount-1 DownTo 0 do
    begin
      frmMain.MDIChildren[i].close;
    end;// end  for
    Application.CreateForm(TChild,Tform(Child));
   end
   else  if  frmMain.MDIChildCount=0 then
   begin
    Application.CreateForm(TChild,Tform(Child));
   end;
 finally
  lockwindowupdate(0);
 end;
end;

//库房代码设置
procedure TfrmMain.n_KfClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmStockRoom,frmStockRoom);
end;

//库位代码设置
procedure TfrmMain.n_kwClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmStockPosition,frmStockPosition);
end;

//计量单位
procedure TfrmMain.n_JLunitClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmJLUnit,frmJLUnit);
end;

procedure TfrmMain.n_OutInTypeClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmInOutClass,frmInOutClass);
end;

//材料类别代码设置
procedure TfrmMain.n_LbClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmMateClass,frmMateClass);
end;


//盘点类别设置
procedure TfrmMain.n_PdTypeClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmPdType,frmPdType);
end;

//品质代码设置
procedure TfrmMain.n_QualityClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmQuality,frmQuality);
end;

//部门代码设置
procedure TfrmMain.n_deptClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmDept,frmDept);
end;

//供应商代码设置
procedure TfrmMain.n_gysClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmGys,frmGys);
end;

//计划编号所对应的计划数量
procedure TfrmMain.n_planNumClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmPlanNum,frmPlanNum);
end;

procedure TfrmMain.n_baseStockClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmMateBasic,frmMateBasic);
end;

//采购入库
procedure TfrmMain.n_cgClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmStockIn,frmStockIn);
end;

//自制入库------即零部件入库
procedure TfrmMain.n_zzClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmStockZz,frmStockZz);
end;

//成品入库
procedure TfrmMain.n_ProductInClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmProductIn,frmProductIn);
end;

//退料入库
procedure TfrmMain.n_TLClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmTuiLiao,frmTuiLiao);
end;

//
procedure TfrmMain.N5Click(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmInStockList,frmInStockList);
end;

procedure TfrmMain.n_aboutClick(Sender: TObject);
begin
  frmAbout:=TfrmAbout.create(application);
  frmAbout.show;
end;

//成品出库
procedure TfrmMain.n_ProductOutClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmProductOut,frmProductOut);
end;

//材料领用
procedure TfrmMain.n_LyClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmLy,frmLy);
end;

//报废出库
procedure TfrmMain.n_BfClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmBaoFei,frmBaoFei);
end;

//盘盈盘亏
procedure TfrmMain.n_PyPkClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmPyPk,frmPyPk);
end;

procedure TfrmMain.n_helpClick(Sender: TObject);
var
  fpath:string;
begin
  fpath:=ExtractFilePath(ParamStr(0))+'阿凡提笑话.chm';  //得到帮助文件的路径
  ShellExecute(handle,nil,pchar(fpath),nil,nil,sw_shownormal);   //调用前要加ShellApi
end;

procedure TfrmMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  if application.MessageBox('要退出库存管理系统吗?','确认',mb_YesNo+MB_ICONQUESTION)=IDYes then
  begin
    Application.Terminate;
  end else
  begin
    Application.Run;
  end;
end;

procedure TfrmMain.n_exitClick(Sender: TObject);
begin
  close;
end;

procedure TfrmMain.n_ExitWinClick(Sender: TObject);
begin
  ExitWindowsEx(EWX_SHUTDOWN,0);                 //EWX_SHUTDOWN,EWX_REBOOT,EWX_POWEROFF 
end;

procedure TfrmMain.N10Click(Sender: TObject);
begin
  winexec('calc',sw_show);
end;

procedure TfrmMain.N27Click(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmQryCondition,frmQryCondition);
end;

procedure TfrmMain.N16Click(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmMateNumPlanQry,frmMateNumPlanQry);
end;

procedure TfrmMain.N28Click(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmMateNumChg,frmMateNumChg);
end;

procedure TfrmMain.N29Click(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmMonthStock,frmMonthStock);
end;

procedure TfrmMain.N22Click(Sender: TObject);
var
  myoper:TfrmOp;
begin
  myoper:=TfrmOp.create(application);
  try
    myoper.showmodal;
  finally
    myoper.free;
  end;
end;

procedure TfrmMain.N17Click(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmQryCondi,frmQryCondi);
end;


procedure TfrmMain.n_djClick(Sender: TObject);
begin
  frmBillPrint:=TfrmBillPrint.create(application);
  frmBillPrint.showmodal;
end;

procedure TfrmMain.N31Click(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmQryDj,frmQryDj);
end;

procedure TfrmMain.N18Click(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmInOutDjQry,frmInOutDjQry);
end;

procedure TfrmMain.n_khClick(Sender: TObject);
begin
  frmMain.OpenMDIChild(TfrmCustomer,frmCustomer);
end;

procedure TfrmMain.N14Click(Sender: TObject);
begin
  winexec('UDPDEMO',sw_show);
end;

procedure TfrmMain.N8Click(Sender: TObject);
begin
  showmessage('通讯产品价格下降!');
end;

procedure TfrmMain.ApplicationEvents1Minimize(Sender: TObject);
begin
  ShowWindow(Application.Handle,SW_HIDE);
  Application.BeforeDestruction;
end;

procedure TfrmMain.ApplicationEvents1Restore(Sender: TObject);
begin
  ShowWindow(Application.Handle,SW_SHOW);
end;

procedure TfrmMain.RxTrayIcon1DblClick(Sender: TObject);
begin
  RxTrayIcon1.Hint:='仓储系统V1.1';
  Application.Restore;
  Application.BringToFront;
end;

end.

⌨️ 快捷键说明

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