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

📄 kqsz.pas

📁 实现人力资源的管理
💻 PAS
字号:
unit kqsz;

interface

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

type
  Tkqszfrm = class(TForm)
    Panel1: TPanel;
    CoolBar1: TCoolBar;
    ToolBar1: TToolBar;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    SpeedButton4: TSpeedButton;
    SpeedButton5: TSpeedButton;
    Panel2: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Panel3: TPanel;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    procedure FormShow(Sender: TObject);
    procedure editvalue;
    procedure editclear;
    procedure DBGrid1CellClick(Column: TColumn);
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit3KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit4KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit5KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure SpeedButton4Click(Sender: TObject);
    procedure SpeedButton5Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  kqszfrm: Tkqszfrm;

implementation

uses dbdata;

{$R *.dfm}

procedure Tkqszfrm.FormShow(Sender: TObject);
begin
with data.ADOQYkqxx do
   begin
      close;
      sql.Clear;
      sql.Add('select * from 考勤表');
      open;
   end;
   data.ADOQYkqxx.Active:=true;
   if data.ADOQYkqxx.FieldByName('月平均工作天数').Value= null then
      edit5.Text:=''
   else
      editvalue;
end;

procedure Tkqszfrm.editvalue;
begin
edit5.Text:=data.ADOQYkqxx.FieldByName('月平均工作天数').Value;
edit3.Text:=data.ADOQYkqxx.FieldByName('几倍').Value;
edit4.Text:=data.ADOQYkqxx.FieldByName('迟到早退次数').Value;
edit1.Text:=data.ADOQYkqxx.FieldByName('全勤奖').Value;
edit2.Text:=data.ADOQYkqxx.FieldByName('出勤天数').Value;
end;

procedure Tkqszfrm.editclear;
begin
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.Clear;
edit5.Clear;
end;

procedure Tkqszfrm.DBGrid1CellClick(Column: TColumn);
begin
if dbgrid1.DataSource.DataSet<>nil then
   if dbgrid1.DataSource.DataSet.RecordCount>0 then
   editvalue;
end;

procedure Tkqszfrm.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if ((Key = vk_Return) or(Key = vk_Down)) then
   edit2.SetFocus
end;

procedure Tkqszfrm.Edit2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if ((Key = vk_Return) or(Key = vk_Down)) then
   edit3.SetFocus
else
   if Key = vk_Up then
    edit1.SetFocus;
end;

procedure Tkqszfrm.Edit3KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if ((Key = vk_Return) or(Key = vk_Down)) then
   edit4.SetFocus
else
   if Key = vk_Up then
    edit2.SetFocus;
end;

procedure Tkqszfrm.Edit4KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if ((Key = vk_Return) or(Key = vk_Down)) then
   edit5.SetFocus
else
   if Key = vk_Up then
    edit3.SetFocus;
end;

procedure Tkqszfrm.Edit5KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if Key = vk_Up then
   edit4.SetFocus;
end;


procedure Tkqszfrm.SpeedButton1Click(Sender: TObject);
begin
if (edit1.Text<>'') and (edit2.Text<>'') and (edit3.Text<>'') and (edit4.Text<>'') and (edit5.Text<>'') then
begin
if data.ADOQYkqxx.FieldByName('全勤奖').Value<>null then
application.MessageBox('考勤信息已经存在,不能重复添加,如有需要请修改信息!','提示',64)
else
begin
try
with data.ADOQYkqxx do
   begin
      close;
      sql.Clear;
      sql.Add('insert 考勤表 values (:a,:b,:c,:d,:e)');
      parameters.ParamByName('a').Value:=strtofloat(trim(edit1.Text));
      parameters.ParamByName('b').Value:=trim(edit2.Text);
      parameters.ParamByName('c').Value:=strtofloat(trim(edit4.Text));
      parameters.ParamByName('d').Value:=trim(edit5.Text);
      parameters.ParamByName('e').Value:=strtofloat(trim(edit3.Text));
      execsql;
   end;
      self.OnShow(sender);
      application.MessageBox('添加成功','提示',64);  
   except
      application.MessageBox('系统出错!','提示',64);
   end;
end;
end
else
   application.MessageBox('请详细设置考勤信息','提示',64);
end;

procedure Tkqszfrm.SpeedButton2Click(Sender: TObject);
begin
with data.ADOQYkqxx do
   begin
      edit;
      fieldbyname('全勤奖').Value:=trim(edit1.Text);
      fieldbyname('出勤天数').Value:=trim(edit2.Text);
      fieldbyname('迟到早退次数').Value:=trim(edit4.Text);
      fieldbyname('月平均工作天数').Value:=trim(edit5.Text);
      fieldbyname('几倍').Value:=trim(edit3.Text);
      post
   end;
      application.MessageBox('修改成功','提示',64);
end;

procedure Tkqszfrm.SpeedButton3Click(Sender: TObject);
begin
if messagebox(self.Handle,'真的要删除吗?','提示',mb_yesno+mb_iconquestion)=idyes then
data.ADOQYkqxx.Delete;
editclear;
end;

procedure Tkqszfrm.SpeedButton4Click(Sender: TObject);
begin
editclear;
end;

procedure Tkqszfrm.SpeedButton5Click(Sender: TObject);
begin
close;
end;

end.

⌨️ 快捷键说明

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