📄 hm_roll.~pas
字号:
bDelete := ADOQuery2.RecordCount > 0;
itemstr := Trim(ADOQuery2.FieldbyName('条目号').AsString);
end;
end;
2: begin
if ADOQuery3.Active then
begin
bDelete := ADOQuery3.RecordCount > 0;
itemstr := Trim(ADOQuery3.FieldbyName('条目号').AsString);
end;
end;
end;
if bDelete then
begin
//确认删除
if MessageBox(handle, '要删除此条目吗?', '提示', mb_IconQuestion + mb_OkCancel) = idOk then
begin
ADOQuery4.close;
ADOQuery4.SQL.Clear;
// 根据PageControl1.ActivePage,确认从哪个表中删除
ADOQuery4.SQL.Text := 'delete from '+PageControl1.ActivePage.Caption+' where 条目号 ='+ QuotedStr(itemstr);
ADOQuery4.ExecSQL;
ADOQuery1.close;
ADOQuery2.close;
ADOQuery3.close;
//重新读入三个表的信息
ADOQuery1.Open;
ADOQuery2.Open;
ADOQuery3.Open;
end;
end
else
ShowMessage('没有可删除的数据');
end;
//----------------- 确定修改,添加----------------------
procedure Thm_rollForm.SpeedButton5Click(Sender: TObject);
begin
//区分修改,添加
ADOQuery1.AfterScroll := nil;
ADOQuery2.AfterScroll := nil;
ADOQuery3.AfterScroll := nil;
if SpeedButton2.Enabled=true then
begin
Case PageControl1.ActivePageIndex of
0: ADOQuery1.Edit;
1: ADOQuery2.Edit;
2: ADOQuery3.Edit;
end;
end
else
begin
Case PageControl1.ActivePageIndex of
0: ADOQuery1.Append;
1: ADOQuery2.Append;
2: ADOQuery3.Append;
end;
end;
ADOQuery1.AfterScroll := ADOQuery1AfterScroll;
ADOQuery2.AfterScroll := ADOQuery2AfterScroll;
ADOQuery3.AfterScroll := ADOQuery3AfterScroll;
//修改日常考勤表
if PageControl1.ActivePageIndex = 0 then
begin
if Trim(Edit6.Text) = '' then
begin
showmessage('姓名不能为空!');
exit;
end;
if FormatDateTime('hh:mm:ss', DateTimePicker2.DateTime) = FormatDateTime('hh:mm:ss', DateTimePicker3.DateTime) then
begin
showmessage('上下班时间不能相同!');
exit;
end;
ADOQuery1.FieldByName('日期').AsDateTime:= DateTimePicker1.DateTime;
//ADOQuery1.FieldByName('日期').AsString:= Edit5.Text;
ADOQuery1.FieldByName('姓名').AsString:=Trim(Edit6.Text);
//ADOQuery1.FieldByName('员工编号').AsString:=Trim(Edit7.Text);
//ADOQuery1.FieldByName('上班时间').AsString:=Edit8.Text;
//ADOQuery1.FieldByName('下班时间').AsString:=Edit9.Text;
ADOQuery1.FieldByName('上班时间').Asstring := FormatDateTime('hh:mm:ss', DateTimePicker2.DateTime);
ADOQuery1.FieldByName('下班时间').Asstring := FormatDateTime('hh:mm:ss', DateTimePicker3.DateTime);
ADOQuery1.Post;
end;
//修改加班信息表
if PageControl1.ActivePageIndex = 1 then
begin
if Trim(Edit11.Text) = '' then
begin
showmessage('姓名不能为空!');
exit;
end;
if Trim(Edit13.Text) = '' then
begin
showmessage('加班时间不能为空!');
exit;
end;
if Trim(Edit14.Text) = '' then
begin
showmessage('加班原因不能为空!');
exit;
end;
//ADOQuery2.FieldByName('日期').AsString:=Edit10.Text;
ADOQuery2.FieldByName('日期').AsDateTime:= DateTimePicker4.Date;
ADOQuery2.FieldByName('姓名').AsString:=Trim(Edit11.Text);
//ADOQuery2.FieldByName('员工编号').AsString:=Trim(Edit12.Text);
ADOQuery2.FieldByName('时间').AsString:=Trim(Edit13.Text);
ADOQuery2.FieldByName('原因').AsString:=Trim(Edit14.Text);
ADOQuery2.Post;
end;
//修改出差信息表
if PageControl1.ActivePageIndex = 2 then
begin
if Trim(Edit15.Text) = '' then
begin
showmessage('姓名不能为空!');
exit;
end;
if Trim(Edit19.Text) = '' then
begin
showmessage('出差地点不能为空!');
exit;
end;
if Trim(Edit20.Text) = '' then
begin
showmessage('出差任务不能为空!');
exit;
end;
ADOQuery3.FieldByName('姓名').AsString:=Trim(Edit15.Text);
//ADOQuery3.FieldByName('员工编号').AsString:=Edit16.Text;
ADOQuery3.FieldByName('日期').AsDateTime:= DateTimePicker5.Date;//Edit17.Text;
ADOQuery3.FieldByName('返回日期').AsDateTime:= DateTimePicker6.Date;//Edit18.Text;
ADOQuery3.FieldByName('地点').AsString:=Trim(Edit19.Text);
ADOQuery3.FieldByName('任务').AsString:=Trim(Edit20.Text);
ADOQuery3.Post;
end;
SpeedButton6Click(nil);
end;
//------------------取消修改,添加操作-----------------
procedure Thm_rollForm.SpeedButton6Click(Sender: TObject);
begin
SpeedButton5.Visible:=false;
SpeedButton6.Visible:=false;
SpeedButton2.Enabled:=true;
SpeedButton3.Enabled:=true;
SpeedButton4.Enabled:=true;
Case PageControl1.ActivePageIndex of
0: ADOQuery1.Cancel;
1: ADOquery2.Cancel;
2: ADOquery3.Cancel;
end;
end;
procedure Thm_rollForm.Edit6Exit(Sender: TObject);
var
sText: string;
begin
sText := Trim(Edit6.Text);
if sText <> '' then
begin
ADOQuery4.Close;
ADOQuery4.SQL.Text := 'Select * From 基本信息 Where 姓名 = ' + QuotedStr(sText);
ADOQuery4.Open;
if ADOQUery4.RecordCount <= 0 then
begin
ShowMEssage('员工不存在');
Edit6.Text := '';
Edit7.Text := '';
end
else
Edit7.Text := Trim(ADOQuery4.FIeldbyName('编号').AsString);
end;
end;
procedure Thm_rollForm.Edit11Exit(Sender: TObject);
var
sText: string;
begin
sText := Trim(Edit11.Text);
if sText <> '' then
begin
ADOQuery4.Close;
ADOQuery4.SQL.Text := 'Select * From 基本信息 Where 姓名 = ' + QuotedStr(sText);
ADOQuery4.Open;
if ADOQUery4.RecordCount <= 0 then
begin
ShowMEssage('员工不存在');
Edit11.Text := '';
Edit12.Text := '';
end
else
Edit12.Text := Trim(ADOQuery4.FIeldbyName('编号').AsString);
end;
end;
procedure Thm_rollForm.Edit15Exit(Sender: TObject);
var
sText: string;
begin
sText := Trim(Edit15.Text);
if sText <> '' then
begin
ADOQuery4.Close;
ADOQuery4.SQL.Text := 'Select * From 基本信息 Where 姓名 = ' + QuotedStr(sText);
ADOQuery4.Open;
if ADOQUery4.RecordCount <= 0 then
begin
ShowMEssage('员工不存在');
Edit15.Text := '';
Edit16.Text := '';
end
else
Edit16.Text := Trim(ADOQuery4.FIeldbyName('编号').AsString);
end;
end;
procedure Thm_rollForm.page1Data;
begin
if ADOQuery1.RecordCount = 0 then exit;
itemstr:=ADOQuery1.FieldByName('条目号').AsString;
DateTimePicker1.DateTime := DBGrid1.Fields[0].AsDateTime;
Edit6.Text := DBGrid1.Fields[1].AsString;
Edit7.Text := DBGrid1.Fields[2].AsString;
DateTimePicker2.DateTime := DBGrid1.Fields[3].AsDateTime;
DateTimePicker3.DateTime := DBGrid1.Fields[4].AsDateTime;
end;
procedure Thm_rollForm.page2Data;
begin
if ADOQuery2.RecordCount = 0 then exit;
itemstr:=ADOQuery2.FieldByName('条目号').AsString;
DateTimePicker4.Date := DBGrid2.Fields[0].AsDateTime;
//Edit10.Text := DBGrid2.Fields[0].AsString ;
Edit11.Text := DBGrid2.Fields[1].AsString ;
Edit12.Text := DBGrid2.Fields[2].AsString ;
Edit13.Text := DBGrid2.Fields[3].AsString ;
Edit14.Text := DBGrid2.Fields[4].AsString ;
end;
procedure Thm_rollForm.page3Data;
begin
if ADOQuery3.RecordCount = 0 then exit;
itemstr:=ADOQuery3.FieldByName('条目号').AsString;
Edit15.Text := DBGrid3.Fields[0].AsString ;
Edit16.Text := DBGrid3.Fields[1].AsString ;
//Edit17.Text := DBGrid3.Fields[2].AsString ;
DateTimePicker5.Date := DBGrid3.Fields[2].AsDateTime;
//Edit18.Text := ADOQuery3.FieldByName('返回日期').AsString;
DateTimePicker6.Date := ADOQuery3.FieldByName('返回日期').AsDateTime;
Edit19.Text := DBGrid3.Fields[3].AsString ;
Edit20.Text := DBGrid3.Fields[4].AsString ;
end;
procedure Thm_rollForm.ADOQuery1AfterOpen(DataSet: TDataSet);
begin
//Page1Data;
end;
procedure Thm_rollForm.ADOQuery1AfterScroll(DataSet: TDataSet);
begin
//Page1Data;
end;
procedure Thm_rollForm.ADOQuery2AfterScroll(DataSet: TDataSet);
begin
//Page2Data;
end;
procedure Thm_rollForm.ADOQuery2AfterOpen(DataSet: TDataSet);
begin
//Page2Data;
end;
procedure Thm_rollForm.ADOQuery3AfterOpen(DataSet: TDataSet);
begin
//page3Data;
end;
procedure Thm_rollForm.ADOQuery3AfterScroll(DataSet: TDataSet);
begin
//Page3Data;
end;
procedure Thm_rollForm.FormShow(Sender: TObject);
begin
Edit16.Enabled := False;
PageControl1.ActivePageIndex := 0;
DBGrid1CellClick(nil);
end;
procedure Thm_rollForm.PageControl1Change(Sender: TObject);
begin
case PageControl1.ActivePageIndex of
0: DBGrid1CellClick(nil);
1: DBGrid2CellClick(nil);
2: DBGrid3CellClick(nil);
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -