📄 u_change.pas
字号:
unit U_change;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Mask, DBCtrls, StdCtrls, ExtCtrls, Buttons;
type
TF_change = class(TForm)
i_id: TEdit;
i_change: TRadioGroup;
Label1: TLabel;
GroupBox1: TGroupBox;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
i_name: TDBEdit;
i_department: TDBLookupComboBox;
i_job: TDBLookupComboBox;
Label5: TLabel;
i_description: TMemo;
BitBtn1: TBitBtn;
Label6: TLabel;
i_time: TMaskEdit;
procedure changeinit;
procedure FormCreate(Sender: TObject);
procedure i_idChange(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
F_change: TF_change;
implementation
uses U_data,u_main;
{$R *.dfm}
procedure TF_change.changeinit;
begin
i_id.Text:='';
datam.T_user.Close;
i_change.ItemIndex:=0;
i_time.Text:=datetostr(now);
i_description.Clear;
end;
procedure TF_change.FormCreate(Sender: TObject);
begin
f_main.M_change.Enabled:=False;
F_main.TB_change.Enabled:=false;
width:=264;
height:=473;
with datam do
begin
if not t_department.Active then t_department.Open;
if not t_job.Active then t_job.Open;
end;
changeinit;
end;
procedure TF_change.i_idChange(Sender: TObject);
begin
datam.T_user.Filter:='ID='''+i_id.Text+'''';
datam.T_user.Filtered:=true;
datam.T_user.Open;
end;
procedure TF_change.BitBtn1Click(Sender: TObject);
var
counter:integer;
begin
if datam.T_user.RecordCount=1 then
begin
datam.Conn.BeginTrans;
try
//获得人事变动记录号
datam.T_counter.Filter:='ID=''C''';
datam.T_counter.Filtered:=true;
datam.T_counter.Open;
counter:=datam.T_counter['counter_value'];
inc(counter);
datam.T_counter.Edit;
datam.T_counter['counter_value']:=counter;
datam.T_counter.post;
datam.T_counter.Close;
//追加人事变动记录
if i_change.ItemIndex=1 then
datam.T_user['state']:='F';
datam.T_user.edit;
datam.T_user.Post;
datam.T_change.open;
datam.T_change.Append;
datam.T_change['ID']:=counter;
datam.T_change['personid']:=i_id.Text;
datam.T_change['changecode']:=inttostr(i_change.ItemIndex+1);
datam.T_change['record_time']:=strtodate(i_time.Text);
datam.T_change['descript']:=i_description.Text;
datam.T_change.Post;
datam.T_change.Close;
changeinit;
except
showmessage('写入数据库出错,操作撤消!');
datam.Conn.RollbackTrans;
end;
datam.Conn.CommitTrans;
end
else
application.MessageBox('请确认员工号!','输入错误',mb_ok);
end;
procedure TF_change.FormClose(Sender: TObject; var Action: TCloseAction);
begin
f_main.M_change.Enabled:=true;
F_main.TB_change.Enabled:=true;
datam.T_change.Cancel;
datam.T_change.Close;
action:=cafree;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -