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

📄 uemployeemgr.pas

📁 是个办公系统,可以实现财务上的管理和人员的流动
💻 PAS
字号:
unit UemployeeMgr;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, Buttons, ExtCtrls, Grids,JPEG, DBGrids, ImgList;

type
  TfrmEmployeeMgr = class(TForm)
    GroupBox1: TGroupBox;
    TreeView1: TTreeView;
    Panel1: TPanel;
    StatusBar1: TStatusBar;
    Splitter1: TSplitter;
    GroupBox3: TGroupBox;
    bbtnAdd: TBitBtn;
    bbtnEdit: TBitBtn;
    bbtnDel: TBitBtn;
    bbtnExit: TBitBtn;
    GroupBox2: TGroupBox;
    DBGrid1: TDBGrid;
    HeaderControl1: THeaderControl;
    ComboBox1: TComboBox;
    Edit1: TEdit;
    ImageList1: TImageList;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure bbtnEditClick(Sender: TObject);
    procedure bbtnDelClick(Sender: TObject);
   procedure bbtnExitClick(Sender: TObject);
    procedure TreeView1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure ComboBox1Change(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure DBGrid1DblClick(Sender: TObject);
    procedure bbtnAddClick(Sender: TObject);
    procedure bbtnshowallClick(Sender: TObject);
    procedure ComboBox1DropDown(Sender: TObject);
   // function GetFileExtension(const sFileName: string): string;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmEmployeeMgr: TfrmEmployeeMgr;
implementation

uses UemployeeAdd, Mydata, UemployeeUpdate;

{$R *.dfm}

procedure TfrmEmployeeMgr.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  Action:=caFree;
  
end;

procedure TfrmEmployeeMgr.bbtnEditClick(Sender: TObject);
begin
  frmEmployeeUpdate.Show;
end;

procedure TfrmEmployeeMgr.bbtnDelClick(Sender: TObject);
var
 EmpNO:string;
begin
  if DBGrid1.DataSource.DataSet.IsEmpty then Exit;
  EmpNO:=DBGrid1.Fields[0].AsString;
  if MessageBox(self.Handle,'将删除该员工个人及其工资信息,确定要删除吗?','提示',MB_OKCANCEL+MB_ICONINFORMATION+MB_DefButton2)=mrOK then
       begin
          dm.ATEmpInfo.Delete;
          self.FormShow(Sender);
          with dm.AQSalary do
           begin
            close;
            sql.Clear;
            sql.Add('delete from Salary where EmpNO='''+EmpNO+'''');
            ExecSQL;
           end;
       end;
end;
procedure TfrmEmployeeMgr.bbtnExitClick(Sender: TObject);
begin
  self.Close;
end;

procedure TfrmEmployeeMgr.FormShow(Sender: TObject);
var
   Node1,Node2:TTreeNode;
begin
 TreeView1.Items.Clear;
 //with dm.AQdept do
   begin
    dm.AQdept.Close;
    dm.AQdept.SQL.Clear;
    dm.AQdept.SQL.Add('select distinct department from employees where department<>''''');
    dm.AQdept.Open;
   dm.AQdept.First;
   while not dm.AQdept.Eof do
    begin
      Node1:=TreeView1.Items.Add(nil,dm.AQdept.fieldbyname('department').AsString);
      node1.ImageIndex :=0;
      node1.SelectedIndex :=0;
       with dm.AQEmpInfo do
        begin
          close;
          sql.Clear;
          sql.Add('select empname from employees where department='''+dm.AQdept.fieldbyname('department').AsString+'''');
          open;
           dm.AQEmpInfo.First;
         while not dm.AQEmpInfo.Eof do
          begin
            Node2:=TreeView1.Items.AddChild(Node1,dm.AQEmpInfo.FieldValues['empname']);
            Node2.ImageIndex:=1;
            Node2.SelectedIndex:=1;
             dm.AQEmpInfo.Next;
          end;
        end;
      dm.AQdept.Next;
   end;
  end;
end;
 procedure TfrmEmployeeMgr.TreeView1Click(Sender: TObject);
begin
 if treeview1.Selected.Level=0 then
 begin
   with dm.AQEmpInfo do
     begin
       close;
       sql.Clear;
       sql.Add('select * from employees where department='''+treeview1.Selected.Text+''' ');
       open;
       dm.ATEmpInfo.Clone(dm.AQEmpInfo);
     end;
   end
   else
     begin
       with dm.AQEmpInfo do
         begin
           close;
           sql.Clear;
           sql.Add('select * from employees where  empname='''+treeview1.Selected.Text+'''');
           open;
           dm.ATEmpInfo.Clone(dm.AQEmpInfo);
         end;
     end;
     statusbar1.SimpleText:='您现在查看的是员工:'+dm.AQEmpInfo.FieldValues['empname']+'   的记录';
end;
procedure TfrmEmployeeMgr.ComboBox1Change(Sender: TObject);
var
  Tempstr:string;
  i:integer;
begin
  TempStr:=Trim(ComboBox1.Text);
  if TreeView1.Items.GetFirstNode.Text=TempStr then
  begin
    TreeView1.Items.GetFirstNode.Selected:=True;
  end
  else
  begin
    for i:=1 to TreeView1.Items.Count do
    begin
      if TreeView1.Items.Item[i].Text=TempStr then
      begin
        TreeView1.SetFocus;
        TreeView1.Items.Item[i].Selected:=True;
        treeview1.Items.Item[i].Expanded:=true;
        Break;
      end
      else
        Continue;
    end;
  end;
 end;

procedure TfrmEmployeeMgr.FormCreate(Sender: TObject);
  var
   i:integer;
begin
   i:=dm.ATEmpInfo.RecordCount;
   statusbar1.SimpleText:='当前数据库中共有'+inttostr(i)+'条记录';
end;

procedure TfrmEmployeeMgr.DBGrid1DblClick(Sender: TObject);
begin
 frmEmployeeUpdate.Show;
end;

procedure TfrmEmployeeMgr.bbtnAddClick(Sender: TObject);
begin
  frmEmployeeAdd.Show;
end;

procedure TfrmEmployeeMgr.bbtnshowallClick(Sender: TObject);
begin
  dm.ATEmpInfo.Close;
  dm.ATEmpInfo.Open;
end;

procedure TfrmEmployeeMgr.ComboBox1DropDown(Sender: TObject);
begin
   combobox1.Clear;
  with dm.AQEmpname do
  begin
  close;
  sql.Clear;
  sql.Add('select * from employees ');
  open;
  while not eof do
    begin
     combobox1.Items.Add(dm.AQEmpname.FieldValues['empname']);
     dm.AQEmpname.Next;
    end;
  end;
end;

end.

⌨️ 快捷键说明

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