?? change.~pas
字號:
unit change;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask, ExtCtrls, DB, DBTables, DBCtrls;
type
TForm18 = class(TForm)
Label1: TLabel;
i_id: TEdit;
i_change: TRadioGroup;
Label2: TLabel;
i_time: TMaskEdit;
GroupBox1: TGroupBox;
Label3: TLabel;
Label5: TLabel;
i_name: TDBEdit;
i_job: TDBLookupComboBox;
T_department: TTable;
DS_department: TDataSource;
T_job: TTable;
DS_job: TDataSource;
Label6: TLabel;
i_description: TMemo;
Button1: TButton;
T_counter: TTable;
T_change: TTable;
DS_change_list: TDataSource;
T_change_list: TTable;
T_user: TTable;
DS_user: TDataSource;
procedure i_idChange(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
procedure ChangeInit;
public
{ Public declarations }
end;
var
Form18: TForm18;
implementation
{$R *.dfm}
procedure TForm18.ChangeInit; //輸入表單初始子程序
begin
i_id.Text:=''; //清空教師號輸入框
i_change.ItemIndex:=0; //默認變動情況為職務變更
i_time.Text:=DateToStr(Now); // 加入當前時間
i_description.Clear; //描述框清空
end;
procedure TForm18.i_idChange(Sender: TObject); //當在i_id輸入時,下列程序檢索教師信息
begin
T_user.Filter:='ID='''+i_id.Text+''''; //設置過濾器,提取教師信息
T_user.Filtered:=True; //激活過濾器
T_user.Open; //打開教師信息表
end;
procedure TForm18.FormCreate(Sender: TObject);
begin
if not T_department.Active then T_department.Open; //如果系別表沒有激活則打開系別表
if not T_job.Active then T_job.Open; //如果工作表沒有激活則打開工作表
ChangeInit; //調用輸入表單初始子程序
end;
procedure TForm18.Button1Click(Sender: TObject);
var
counter:integer;
begin
if T_user.RecordCount=1 then //判斷是否存在該教師
begin
//獲取人事變動記錄號
T_counter.Filter:='ID=''B'''; //設置過濾器,獲取計數器值
T_counter.Filtered:=True; //激活過濾器
T_counter.Open; //打開計數表
counter:=T_counter['COUNTER_VALUE']; //獲取計數值
Inc(counter); //增加1
T_counter.Edit; //修改計數器
T_counter['COUNTER_VALUE']:=counter; //記錄新的計數值
T_counter.Post; //提交修改
T_counter.Close; //關閉計數表
//追加人事變動記錄
T_user.Edit;
if i_change.ItemIndex=1 then //如果教師辭職退休
T_user['STATE']:='F'; //取消教師帳號
T_user.Post; //提交修改
T_change.Open; //打開人事變更數據表
T_change.Append; //追加記錄
T_change['ID']:=counter; //保存記錄編號
T_change['PERSON']:=i_id.Text; //保存教師號
T_change['CHANGE1']:=IntToStr(i_change.ItemIndex); //保存變更代碼
T_change['RECORD_TIME']:=StrToDate(i_time.Text); //保存變更時間
T_change['DESCRIPTION']:=i_description.Text; //保存描述
T_change.Post; //提交描述
T_change.Close; //關閉人事變更數據表
ChangeInit; //調用初始化表單
end
else
Application.MessageBox('請確認教師號!','輸入錯誤',MB_OK); //若不存在該教師號碼則出現出錯信息框
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -