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

📄 uemployee.pas

📁 天涯進銷存系統
💻 PAS
字号:
unit uEmployee;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, Grids, LBDBGrid, StdCtrls, LBCtrls, LBDBCtrls,
  ActnList, DBCtrls, FR_DSet, FR_DBSet, FR_Class, LBDBScrollBar;

type
  TfrmEmployee = class(TForm)
    Panel1: TPanel;
    Panel3: TPanel;
    Panel4: TPanel;
    DataDBGrid: TLBDBGrid;
    Panel8: TPanel;
    Shape1: TShape;
    ActionList1: TActionList;
    Action1: TAction;
    Action2: TAction;
    Action3: TAction;
    Action5: TAction;
    Action6: TAction;
    Action4: TAction;
    Action7: TAction;
    Action8: TAction;
    Report: TfrReport;
    ReportDataSet: TfrDBDataSet;
    plData: TPanel;
    Shape18: TShape;
    Shape17: TShape;
    Shape16: TShape;
    Label1: TLabel;
    Shape3: TShape;
    Shape4: TShape;
    Shape5: TShape;
    Shape6: TShape;
    Shape7: TShape;
    Shape8: TShape;
    Shape9: TShape;
    Shape10: TShape;
    Shape11: TShape;
    Label6: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label13: TLabel;
    Label5: TLabel;
    Label15: TLabel;
    Label2: TLabel;
    Label4: TLabel;
    Label16: TLabel;
    Label20: TLabel;
    LBDBEdit1: TLBDBEdit;
    LBDBEdit2: TLBDBEdit;
    LBDBEdit3: TLBDBEdit;
    LBDBEdit14: TLBDBEdit;
    LBDBEdit15: TLBDBEdit;
    LBDBEdit16: TLBDBEdit;
    LBDBComboBox2: TLBDBComboBox;
    LBDBComboBox3: TLBDBComboBox;
    LBDBComboBox5: TLBDBComboBox;
    LBDBNumberEdit2: TLBDBNumberEdit;
    LBDBNumberEdit3: TLBDBNumberEdit;
    Shape19: TShape;
    Label7: TLabel;
    LBDBEdit4: TLBDBEdit;
    Shape20: TShape;
    LBDBComboBox1: TLBDBComboBox;
    Label14: TLabel;
    Shape12: TShape;
    Label3: TLabel;
    LBDBEdit5: TLBDBEdit;
    LBDBEdit6: TLBDBEdit;
    Panel7: TPanel;
    Image1: TImage;
    Shape22: TShape;
    Shape23: TShape;
    Shape24: TShape;
    Shape25: TShape;
    Panel2: TPanel;
    Panel5: TPanel;
    Shape2: TShape;
    EnterButton: TLBButton;
    CancelButton: TLBButton;
    LBEditButton1: TLBEditButton;
    Panel9: TPanel;
    Panel11: TPanel;
    LBDBScrollBar1: TLBDBScrollBar;
    LBSpeecButton2: TLBSpeecButton;
    LBSpeecButton1: TLBSpeecButton;
    LBSpeecButton3: TLBSpeecButton;
    LBSpeecButton4: TLBSpeecButton;
    LBSpeecButton5: TLBSpeecButton;
    LBSpeecButton6: TLBSpeecButton;
    procedure FormShow(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Action2Execute(Sender: TObject);
    procedure Action1Execute(Sender: TObject);
    procedure Action3Execute(Sender: TObject);
    procedure Action5Execute(Sender: TObject);
    procedure Action6Execute(Sender: TObject);
    procedure Action4Execute(Sender: TObject);
    procedure Action7Execute(Sender: TObject);
    procedure Action8Execute(Sender: TObject);
    procedure LBDBEdit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure LBLabel1Click(Sender: TObject);
    procedure LBLabel2Click(Sender: TObject);
    procedure DataDBGridKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FormDestroy(Sender: TObject);
    procedure LBEditButton1Click(Sender: TObject);
    procedure LBDBComboBox5Enter(Sender: TObject);
    procedure LBDBComboBox1Enter(Sender: TObject);
    procedure LBDBEdit16KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
    { Private declarations }
    procedure SetView;
  public
    { Public declarations }
  end;

var
  frmEmployee: TfrmEmployee;
  isStateEdit, isEdit: Boolean;
  OldCode: string;


implementation

uses uMain, uDataMo, uSelectPart, uDate, uPublicvar, uConst;

{$R *.dfm}

procedure TfrmEmployee.SetView;
begin
  DataDBGrid.Enabled:=not DataDBGrid.Enabled;
  plData.Enabled:=not plData.Enabled;

  Action1.Enabled:=not Action1.Enabled;
  Action2.Enabled:=not Action2.Enabled;
  Action3.Enabled:=not Action3.Enabled;
  Action4.Enabled:=not Action4.Enabled;
  Action5.Enabled:=not Action5.Enabled;
  Action6.Enabled:=not Action6.Enabled;
  Action7.Enabled:=not Action7.Enabled;
  Action8.Enabled:=not Action8.Enabled;

  EnterButton.Visible:=not EnterButton.Visible;
  CancelButton.Visible:=not CancelButton.Visible;
end;

procedure TfrmEmployee.FormShow(Sender: TObject);
begin
  SetView;
  OpenData('select * from Employee Order By Code', dmData.sdsEmployee);
  isStateEdit:=False;
end;

procedure TfrmEmployee.FormActivate(Sender: TObject);
begin
  GetWindowsItem(Caption, Self);
end;

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


procedure TfrmEmployee.Action1Execute(Sender: TObject);
begin
  SetView;
  LBDBEdit1.SetFocus;
  with dmData.sdsEmployee do
  begin
    Append;
    FieldByName('ISRMMAN').asstring:='False';
    FieldByName('ISOPERATION').asstring:='False';
  end;  
  OldCode:='';
  isEdit:=False;
  isStateEdit:=True;
end;

procedure TfrmEmployee.Action2Execute(Sender: TObject);
begin
  if dmData.sdsEmployee.IsEmpty then
  begin
    Application.MessageBox(NotEditData, Hintinfo,$30);
    Exit;
  end;
  SetView;
  LBDBEdit1.SetFocus;
  dmData.sdsEmployee.Edit;
  OldCode:=dmData.sdsEmployee.Fieldbyname('Code').asstring ;
  isEdit:=True;
  isStateEdit:=True;
end;

procedure TfrmEmployee.Action3Execute(Sender: TObject);
begin
  DeleteData(dmData.sdsEmployee, False);
end;

procedure TfrmEmployee.Action5Execute(Sender: TObject);
begin
  FindData(dmData.sdsEmployee, '员工资料查询', 'Employee');
end;

procedure TfrmEmployee.Action6Execute(Sender: TObject);
begin
  OpenData('select * from Employee Order By Code', dmData.sdsEmployee);
end;

procedure TfrmEmployee.Action4Execute(Sender: TObject);
begin
  PrintView('RepEmployee.frf', Report);
end;

procedure TfrmEmployee.Action7Execute(Sender: TObject);
begin
  if Trim(LBDBEdit1.Text)='' then
  begin
    Application.MessageBox('请输入员工编号。',Hintinfo,$30);
    LBDBEdit1.SetFocus;
    Exit;
  end;
  if Trim(LBDBEdit2.Text)='' then
  begin
    Application.MessageBox('请输入员工名称。',Hintinfo,$30);
    LBDBEdit2.SetFocus;
    Exit;
  end;
  if isExist('Employee', 'Code', Trim(LBDBEdit1.Text), OldCode, '') then
  begin
    Application.MessageBox('此员工编号已存在,请重新输入。',Hintinfo,$30);
    LBDBEdit1.SetFocus;
    Exit;
  end;
  dmData.sdsEmployee.ApplyUpdates(-1);
  if not isEdit then
  begin
    LBDBEdit1.SetFocus;
    with  dmData.sdsEmployee do
    begin
      LBDBEdit1.SetFocus;
      Append;
      FieldByName('ISRMMAN').asstring:='False';
      FieldByName('ISOPERATION').asstring:='False';
    end;
  end
  else
  begin
    SetView;
    isStateEdit:=False;
  end;  
end;

procedure TfrmEmployee.Action8Execute(Sender: TObject);
begin
  if dmData.sdsEmployee.Modified then
  begin
    if Application.MessageBox(OnCancelEdit,HintInfo,$24)=idYes then
    begin
      dmData.sdsEmployee.CancelUpdates;
      SetView;
    end;
  end
  else
  begin
    dmData.sdsEmployee.CancelUpdates;
    SetView;
  end;
  isStateEdit:=False;
end;

procedure TfrmEmployee.LBDBEdit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=13 then  Perform(WM_NEXTDLGCTL,0,0);
end;

procedure TfrmEmployee.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=27 then Close;
end;

procedure TfrmEmployee.LBLabel1Click(Sender: TObject);
begin
  if not isStateEdit then Exit;
  SelectPartType:=1;
  SelectPartCds:=dmData.sdsInterconvertPart;
  IPartCode:=Trim(LBDBEdit1.Text);
  FrmSelectPart:=TFrmSelectPart.Create(Application);
  FrmSelectPart.ShowModal;
end;

procedure TfrmEmployee.LBLabel2Click(Sender: TObject);
begin
  if not isStateEdit then Exit;
  DeleteData(dmData.sdsInterconvertPart, False);
end;

procedure TfrmEmployee.DataDBGridKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key=VK_NEXT) or (key=VK_Down) then
    if dmData.sdsEmployee.Eof then
       dmData.sdsEmployee.GetNextPacket;
end;

procedure TfrmEmployee.FormDestroy(Sender: TObject);
begin
  WindowItem.Delete(WindowItem.IndexOfObject(Self)); 
end;

procedure TfrmEmployee.LBEditButton1Click(Sender: TObject);
begin
  GetXoY(LBEditButton1);
  if dmData.sdsEmployee.Fieldbyname('BIRTHDAY').asDateTime>0 then
    sDate:=dmData.sdsEmployee.Fieldbyname('BIRTHDAY').asDateTime
  else
    sDate:=Date;
  SelectDate;
  dmData.sdsEmployee.Edit;
  dmData.sdsEmployee.Fieldbyname('BIRTHDAY').asDateTime:=sDate;
end;

procedure TfrmEmployee.LBDBComboBox5Enter(Sender: TObject);
begin
  SetListData('select DeptName from Department', LBDBComboBox5);
end;

procedure TfrmEmployee.LBDBComboBox1Enter(Sender: TObject);
begin
  SetListData('select Name from Elseinfo where Code='''+'7''', LBDBComboBox1);
end;

procedure TfrmEmployee.LBDBEdit16KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key=13 then Action7Execute(Sender);
end;

end.

⌨️ 快捷键说明

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