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

📄 zjdwunit.pas

📁 不可多得的大型公司公资管理系统软件.该系统用DELPHI来实现.
💻 PAS
字号:
unit ZjdwUnit;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Mask, DBCtrls, Buttons, Grids, DBGrids, ComCtrls, ExtCtrls;

type
  TDwBmForm = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    Label1: TLabel;
    Label2: TLabel;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    SpeedButton4: TSpeedButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Label3: TLabel;
    Label4: TLabel;
    SpeedButton5: TSpeedButton;
    SpeedButton6: TSpeedButton;
    SpeedButton7: TSpeedButton;
    SpeedButton8: TSpeedButton;
    Edit3: TEdit;
    Edit4: TEdit;
    SpeedButton9: TSpeedButton;
    Bevel1: TBevel;
    DBGrid1: TDBGrid;
    Bevel2: TBevel;
    DBGrid2: TDBGrid;
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure DBGrid1CellClick(Column: TColumn);
    procedure DBGrid1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure SpeedButton4Click(Sender: TObject);
    procedure Edit1Exit(Sender: TObject);
    procedure Edit2Exit(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure SpeedButton5Click(Sender: TObject);
    procedure SpeedButton8Click(Sender: TObject);
    procedure SpeedButton7Click(Sender: TObject);
    procedure SpeedButton6Click(Sender: TObject);
    procedure Edit3Exit(Sender: TObject);
    procedure Edit4Exit(Sender: TObject);
    procedure Edit2KeyPress(Sender: TObject; var Key: Char);
    procedure Edit4KeyPress(Sender: TObject; var Key: Char);
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit3KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure SpeedButton9Click(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  DwBmForm: TDwBmForm;

implementation

uses MAINUNIT,DataTUnit,bdeutils, DwLbUnit;


{$R *.DFM}

procedure TDwBmForm.SpeedButton2Click(Sender: TObject);
begin
 mainform.caption:='龙口矿务局工资系统 2000--全程退出键[ESC]'+'操作单位:'+datat.UnitTable1.FieldByName('unitname').AsString;
 close;
end;

procedure TDwBmForm.SpeedButton1Click(Sender: TObject);
begin
edit1.setfocus;
edit1.Text:='01';
speedbutton3.enabled:=true;
end;

procedure TDwBmForm.SpeedButton3Click(Sender: TObject);
begin

if Length(edit2.Text)=0 then
     abort;//禁止空单位
with datat.unittable1 do
  begin
         edit;
         IndexName:='index1';
if not FindKey([edit1.Text])  then
            begin
     if Length(edit1.Text)=0 then
     abort;
     Append;
     FieldByName('unitno').AsString:=edit1.Text;
     FieldByName('unitname').AsString:=edit2.Text;
     post;
     dbgrid1.SetFocus;
                 end
else
    begin
     MessageBox(0,'单位代码重复,请重新输入!!!',pchar(caption),mb_iconinformation+mb_ok);
     edit1.SetFocus;
     edit1.SelectAll;
     abort;
    end;
    refresh;
     end;
end;

procedure TDwBmForm.FormShow(Sender: TObject);
{var
rtgrid:trect;}
begin
{   rtgrid:=zjdw.dbgrid1.BoundsRect;
   mapwindowpoints(handle,0,rtgrid,2);
   clipcursor(@rtgrid);}
   if not(datat.unittable1.Active) then
   datat.unittable1.open;
   if not(datat.bmtable2.Active) then
   datat.bmtable2.Open;
   speedbutton2.Enabled:=false;
   tabsheet1.Show;
  // dbgrid1.SetFocus;
end;

procedure TDwBmForm.DBGrid1CellClick(Column: TColumn);
{var
rtscreen:trect;}
begin
//label3.Caption:=datat.UnitTable1.fields[0].asstring;
speedbutton2.Enabled:=true;
{rtscreen:=rect(0,0,screen.width,screen.height);
clipcursor(@rtscreen);}
end;



procedure TDwBmForm.DBGrid1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if key=vk_down then
abort;
end;

procedure TDwBmForm.SpeedButton4Click(Sender: TObject);
var
ss:string;
begin
ss:='你确定要删除此单位吗?'+#13+#10+'单位代码:'+datat.UnitTable1.FieldByName('unitno').AsString+#13+#10+'单位名称:'+datat.UnitTable1.FieldByName('unitname').AsString;
//MessageBox(Handle,ss,pchar(caption),mb_iconinformation+mb_ok);

if application.messagebox(PChar(ss),'消息框',mb_okcancel+mb_defbutton1+mb_iconquestion)
=idok then
  begin
    if not(datat.BmTable2.IsEmpty) then
     begin
MessageBox(Handle,'此单位有数据,请不要删除,或者先清空部门数据再删除!!!',pchar(caption),mb_iconinformation+mb_ok);
     abort;
     end;
  datat.unittable1.Delete;
  datat.UnitTable1.Close;
  datat.UnitTable1.Open;
  packtable(datat.UnitTable1);
  datat.UnitTable1.Open;
  speedbutton3.Enabled:=true;
  end;
end;


procedure TDwBmForm.Edit1Exit(Sender: TObject);
begin
if  speedbutton3.Enabled=true then
begin
   if (Length(edit1.Text)>2) or (Length(edit1.Text)=0) then
   begin
   MessageBox(Handle,'单位长度非法。',pchar(caption),mb_iconinformation+mb_ok);
   edit1.SetFocus;
   edit1.SelectAll;
   abort;
   end;
 end;
 end;
procedure TDwBmForm.Edit2Exit(Sender: TObject);
begin
 if (Length(edit2.Text)=0) then
   begin
MessageBox(Handle,'单位长度非法。',pchar(caption),mb_iconinformation+mb_ok);
edit2.SetFocus;
edit2.SelectAll;
abort;
   end;
end;




procedure TDwBmForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
   if (datat.UnitTable1.IsEmpty) or (datat.BmTable2.IsEmpty) then
    begin
    if MessageBox(Handle,'单位或者部门库没有数据,您暂时不能录入数据,退出吗?',pchar(caption),mb_iconinformation+mb_okcancel)
    =mrok then
    begin
    canclose:=true;
//    datat.UnitTable1.Close;
    datat.BmTable2.Close;
    end
    else
    canclose:=false;
    end;
    datat.BmTable2.Close;

end;

procedure TDwBmForm.SpeedButton5Click(Sender: TObject);
var
  bmc:string;
begin
  if  datat.BmTable2.IsEmpty then
  begin
     edit3.Text:=datat.UnitTable1.FieldByName('unitno').AsString+'001';
  end
  else
  begin
    with datat.BmTable2 do
    begin
      last;
      bmc:=FieldByName('bmno').AsString;
      bmc:=IntToStr(strtoint(bmc)+1);
      if Length(bmc)=4 then
       begin
       bmc:='0'+bmc;
       end;
      edit3.Text:=bmc;
    end;
  end;
  edit3.setfocus;
  speedbutton7.enabled:=true;
end;

procedure TDwBmForm.SpeedButton8Click(Sender: TObject);
var
ss:string;
begin
ss:='你确定要删除此部门吗?'+#13+#10+'部门代码:'+datat.BmTable2.FieldByName('bmno').AsString+#13+#10+'部门名称:'+datat.BmTable2.FieldByName('bmname').AsString;
if application.messagebox(PChar(ss),'消息框',mb_okcancel+mb_defbutton1+mb_iconquestion)
=idok then
  begin
    with dataT.Table4 do
     begin
     Open;
     First;
   //  indexname:='bmbmno';
  if (Locate('bmno',datat.bmtable2.FieldByName('bmno').asstring,[])) then
//     if FindKey([datat.bmtable2.FieldByName('bmno').asstring]) then
     begin
     MessageBox(0,'此部门有数据,请不要删除,或者先清空人员数据再删除!!!',pchar(caption),mb_iconinformation+mb_ok);
     abort;
     end;
     indexname:='';
    end;
  datat.BmTable2.Delete;
  datat.BmTable2.Close;
  datat.BmTable2.Open;
  packtable(datat.BmTable2);
  datat.BmTable2.Open;
  speedbutton7.Enabled:=true;
 end;
end;
procedure TDwBmForm.SpeedButton7Click(Sender: TObject);
begin
  if Length(edit4.Text)=0 then
  abort;
 with datat.BmTable2 do
 begin
    edit;
    First;
    //IndexName:='index1';
if not (Locate('bmno',edit3.Text,[]))  then
   begin
if Length(edit3.Text)=0 then
   abort;
   Append;
   FieldByName('bmno').AsString:=edit3.Text;
   FieldByName('bmname').AsString:=edit4.Text;
   post;
   dbgrid2.SetFocus;
   end
else
   begin
     MessageBox(0,'单位代码重复,请重新输入!!!',pchar(caption),mb_iconinformation+mb_ok);
     edit3.SetFocus;
     edit3.SelectAll;
     abort;
    end;
     datat.BmTable2.refresh;
    end;
end;
procedure TDwBmForm.SpeedButton6Click(Sender: TObject);
begin
   close;
end;

procedure TDwBmForm.Edit3Exit(Sender: TObject);
begin
if speedbutton7.Enabled=true then
begin
 if (Length(edit3.Text)>5) or (Length(edit3.Text)=0) then
   begin
MessageBox(Handle,'单位长度非法。',pchar(caption),mb_iconinformation+mb_ok);
edit3.SetFocus;
edit3.SelectAll;
abort;
   end;
 end;
 end;
procedure TDwBmForm.Edit4Exit(Sender: TObject);
begin
     if (Length(edit4.Text)=0) then
   begin
   MessageBox(Handle,'单位长度非法。',pchar(caption),mb_iconinformation+mb_ok);
   edit4.SetFocus;
   edit4.SelectAll;
   abort;
   end;
end;

procedure TDwBmForm.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
   if key=#13 then
   begin
   if MessageBox(Handle,'保存吗?',pchar(caption),mb_iconinformation+mb_okcancel)
    =mrok then
     begin
      speedbutton3.Click;
       if MessageBox(Handle,'继续增加吗?',pchar(caption),mb_iconinformation+mb_okcancel)
    =mrok then
    begin
      speedbutton1.Click;
    end;
     end;
   end;
end;

procedure TDwBmForm.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
   if key=#13 then
   begin
   if MessageBox(Handle,'保存吗?',pchar(caption),mb_iconinformation+mb_okcancel)
    =mrok then
     begin
      speedbutton7.Click;
       if MessageBox(Handle,'继续增加吗?',pchar(caption),mb_iconinformation+mb_okcancel)
    =mrok then
    begin
      speedbutton5.Click;
    end;
     end;
   end;
end;

procedure TDwBmForm.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if key in[vk_RETURN] then
  Begin
      sendmessage(handle,wm_nextdlgctl,0,0);

  end;
end;

procedure TDwBmForm.Edit3KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if key in[vk_RETURN] then
  Begin
      sendmessage(handle,wm_nextdlgctl,0,0);

  end;
end;

procedure TDwBmForm.SpeedButton9Click(Sender: TObject);
begin
try
  dwlbform:=Tdwlbform.Create(self);
  dwlbForm.ShowModal;
  finally
  dwlbform.release;
  end;
end;



procedure TDwBmForm.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #27 then Close;
end;

end.

⌨️ 快捷键说明

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