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

📄 hm_roll.~pas

📁 本课题是为企业人事管理提供现代化技术支持的管理信息系统
💻 ~PAS
📖 第 1 页 / 共 2 页
字号:
        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 + -