jiangchen.pas

来自「pasa人力资源考勤管理系统」· PAS 代码 · 共 961 行 · 第 1/3 页

PAS
961
字号
  datetimepicker1.date:=date;
  datetimepicker2.date:=date;
  datetimepicker3.date:=date;
  datetimepicker4.date:=date;
  datetimepicker5.date:=date;
  pagecontrol1.ActivePageIndex :=1;
  pagecontrol1.OnChange(sender);
  datamod.adojiangchen.Active:=true;
  datamod.ADOpersonal.Active:=true;
end;

procedure TformJiangChen.DateTimePicker1CloseUp(Sender: TObject);
begin
  if (datamod.ADOjiangchen.state=dsinsert) or (datamod.ADOjiangchen.state=dsedit) then
    datamod.ADOjiangchen.FieldByName('jcdate').asstring:=datetostr(datetimepicker1.date);
end;

procedure TformJiangChen.FormKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
   if key=VK_F1 then
      begin
        //showmessage('ok!')
     //MessageDlg(Key + ' has been pressed', mtInformation, [mbOK], 0);
      Application.HelpFile :=Extractfilepath(application.ExeName)+ 'help\pasahelp.hlp';
      application.HelpJump('SHM_contents0013');
    end;
end;

procedure TformJiangChen.SpeedButton1Click(Sender: TObject);
var
   path:string;
   jiangcheng:Tinifile;
   ch:string;
begin
   Panel4.visible:=true;
   path:=ExtractFilePath(Application.ExeName)+'data\JiangCheng.ini';
   if fileexists(path) then
   begin
        JiangCheng:=TIniFile.Create(path);
        ch:=JiangCheng.ReadString('JiangCheng','底薪','0');
        Checkbox2.Checked:=strtoboolean(ch);
        ch:=JiangCheng.ReadString('JiangCheng','技术津贴','0');
        Checkbox3.Checked:=strtoboolean(ch);
        ch:=JiangCheng.ReadString('JiangCheng','生活补助','0');
        Checkbox4.Checked:=strtoboolean(ch);
        ch:=JiangCheng.ReadString('JiangCheng','其加2','0');
        Checkbox5.Checked:=strtoboolean(ch);
        ch:=JiangCheng.ReadString('JiangCheng','职称津贴','0');
        Checkbox6.Checked:=strtoboolean(ch);
        ch:=JiangCheng.ReadString('JiangCheng','全勤奖','0');
        Checkbox1.Checked:=strtoboolean(ch);
        ch:=JiangCheng.ReadString('JiangCheng','其加1','0');
        Checkbox7.Checked:=strtoboolean(ch);
        JiangCheng.Free;
   end;
end;

procedure TformJiangChen.RadioButton1Click(Sender: TObject);
begin
  speedbutton1.visible:=false;
  datamod.adojckindjcmoney.displaylabel:='奖惩金额';    
end;

procedure TformJiangChen.RadioButton2Click(Sender: TObject);
begin
  speedbutton1.visible:=true;
  datamod.adojckindjcmoney.displaylabel:='处罚金额';
end;

procedure TformJiangChen.SpeedButton3Click(Sender: TObject);
var
  Jiangcheng:TIniFile;
  path:string;
  i:integer;
begin
   if application.messagebox('是否将所做的修改保存?','请问',mb_okcancel+mb_iconquestion)=idok then
   begin
     path:=ExtractFilePath(Application.ExeName)+'data\Jiangcheng.ini';
     if fileexists(path) then
     begin
         Jiangcheng:=TIniFile.Create(path);
         for i:=1 to 7 do
         begin
            if TCheckbox(Findcomponent('Checkbox'+inttostr(i))).Checked then
            begin
               Jiangcheng.WriteString('Jiangcheng',TCheckbox(Findcomponent('Checkbox'+inttostr(i))).Caption,'1');
            end
            else Jiangcheng.WriteString('Jiangcheng',TCheckbox(Findcomponent('Checkbox'+inttostr(i))).Caption,'0');
         end;
         Jiangcheng.Free;
     end;
   end;
   Panel4.visible:=false;
   dbgrid3.SetFocus;
end;

procedure TformJiangChen.SpeedButton2Click(Sender: TObject);
begin
     formjiangchengrule:=Tformjiangchengrule.create(application);
     formjiangchengrule.showmodal;
     formjiangchengrule.free;
end;

procedure TformJiangChen.ToolButton2Click(Sender: TObject);
begin
  if not assigned(muljiangcheng) then
         muljiangcheng:=tmuljiangcheng.create(self);
         muljiangcheng.show;
end;

procedure TformJiangChen.tbnprintClick(Sender: TObject);
begin
  case pagecontrol1.ActivePageIndex of
    0:
      begin
       if not assigned(rewardorpanish) then
        rewardorpanish:=Trewardorpanish.create(self);
        rewardorpanish.show;
      end;
    1:
      begin
        if not assigned(reportforpanish) then
          reportforpanish:=Treportforpanish.create(self);
          reportforpanish.show;
      end;
    3:begin
        if not assigned(reportforpanish) then
          reportforpanish:=Treportforpanish.create(self);
          reportforpanish.show;
    end;
    4:begin
        rewardorpanish:=Trewardorpanish.create(self);
        rewardorpanish.show;
    end;
end;
end;
procedure TformJiangChen.ToolButton7Click(Sender: TObject);
begin
  if pagecontrol1.ActivePageIndex=3 then
  begin
    adodataset1.close;
    adodataset2.Close;
    adodataset2.Open;
    adodataset1.Open;
  end
  else
  begin
   //处理进行统计结果
    Adoquery1.close;
    Adoquery1.sql.clear;
    Adoquery1.sql.Add('update per17010 set jctime1=a.jctime1 from(select workno,sum(jctimes) jctime1 from  per17010  where charindex(''警告'',jcname)<>0 ' +
                      ' group by workno) a  where a.workno=per17010.workno ');
    Adoquery1.sql.add('update per17010 set jctime2=a.jctime2 from (select workno,sum(jctimes) jctime2 from  per17010  where charindex(''小过'',jcname)<>0 group by workno ' +
                      ') a where a.workno=per17010.workno ');
    Adoquery1.sql.add('update per17010 set jctime3=a.jctime3 from (select workno,sum(jctimes) jctime3 from  per17010  where charindex(''大过'',jcname)<>0 group by workno)a  where a.workno=per17010.workno');
    Adoquery1.sql.add('update per17010 set jctime4=a.jctime4 from (select workno,sum(jctimes) jctime4 from  per17010  where charindex(''嘉奖'',jcname)<>0 group by workno)a  where a.workno=per17010.workno');
    Adoquery1.sql.add('update per17010 set jctime5=a.jctime5 from (select workno,sum(jctimes) jctime5 from  per17010  where charindex(''小功'',jcname)<>0 group by workno)a  where a.workno=per17010.workno');
    Adoquery1.sql.add('update per17010 set jctime6=a.jctime6 from (select workno,sum(jctimes) jctime6 from  per17010  where charindex(''大功'',jcname)<>0 group by workno)a  where a.workno=per17010.workno');
    Adoquery1.ExecSQL;
    //进行刷新
     datamod.ADOjiangchen.close;
     datamod.ADOjiangchen.filtered:=false;
     datamod.ADOjiangchen.filter:='';
     datamod.ADOjiangchen.commandtext:='select * from per17010 where jckind='+inttostr(pagecontrol1.activepageindex)+' ';
     datamod.ADOjiangchen.open;
  end;
end;

procedure TformJiangChen.Edit1Exit(Sender: TObject);
begin
  datamod.ADOjiangchen.close;
  if trim((sender as tedit).text)<>'' then
     datamod.ADOjiangchen.commandtext:='select * from per17010 where jckind='+inttostr(pagecontrol1.activepageindex)+' and (workno='''+(sender as tedit).text+''' or name='''+(sender as tedit).text+''') ';
  datamod.ADOjiangchen.open;
end;

procedure TformJiangChen.MaskEdit2Exit(Sender: TObject);
var fmat1:string;
begin
  if fmat='/' then
    fmat1:='/  /';
  if fmat='-' then
    fmat1:='-  -';
  if trim(maskedit2.text)<>fmat1 then
    if (not isdate(maskedit1.Text)) or (not isdate(maskedit2.text)) then
      begin
       Application.MessageBox('对不起,您输入的不是有效日期','Warning',mb_ok+mb_iconwarning);
       maskedit1.SetFocus;
      end
    else begin
      datamod.ADOjiangchen.close;
      datamod.ADOjiangchen.commandtext:='select * from per17010 where jckind=0 and (JCdate<='''+maskedit2.text+''' and JCdate>='''+maskedit1.text+''') ';
      datamod.ADOjiangchen.open;
    end;
end;

procedure TformJiangChen.MaskEdit4Exit(Sender: TObject);
var fmat1:string;
begin
  if fmat='/' then
    fmat1:='/  /';
  if fmat='-' then
    fmat1:='-  -';
  if trim(maskedit4.text)<>fmat1 then
    if (not isdate(maskedit3.Text)) or (not isdate(maskedit4.text)) then
      begin
       Application.MessageBox('对不起,您输入的不是有效日期','Warning',mb_ok+mb_iconwarning);
       maskedit3.SetFocus;
      end
    else begin
      datamod.ADOjiangchen.close;
      datamod.ADOjiangchen.commandtext:='select * from per17010 where jckind=1 and (JCdate<='''+maskedit4.text+''' and JCdate>='''+maskedit3.text+''') ';
      datamod.ADOjiangchen.open;
    end;
end;

procedure TformJiangChen.DateTimePicker2CloseUp(Sender: TObject);
begin
  Maskedit1.Text :=datetostr(datetimepicker2.date) ;
end;

procedure TformJiangChen.DateTimePicker5CloseUp(Sender: TObject);
begin
  Maskedit2.Text :=datetostr(datetimepicker5.date) ;
end;

procedure TformJiangChen.DateTimePicker3CloseUp(Sender: TObject);
begin
  Maskedit3.Text :=datetostr(datetimepicker3.date) ;
end;

procedure TformJiangChen.DateTimePicker4CloseUp(Sender: TObject);
begin
  Maskedit4.Text :=datetostr(datetimepicker4.date) ;
end;
procedure TformJiangChen.ToolButton1Click(Sender: TObject);
begin
  if messagedlg('确定要统计惩罚次数吗?',mtInformation,[mbyes,mbno],0)=mryes then
  begin
    ADOQuery1.close;
    Adoquery1.sql.clear;
    Adoquery1.sql.add('delete jccount');
    Adoquery1.sql.add('insert into jccount(workno,name,jckind) '+
                      ' select  workno,name,jckind  from per17010  where jckind=''1''' );

    Adoquery1.sql.add('update jccount set jctime1=a.jctime1 from (select distinct workno,sum(jctimes) jctime1 from  per17010  where charindex(''警告'',jcname)<>0 ' +
                      ' group by workno)a  where jccount.workno=a.workno ');

    Adoquery1.sql.add('update jccount set jctime2=a.jctime2 from (select distinct  workno,sum(jctimes) jctime2 from  per17010  where charindex(''小过'',jcname)<>0 ' +
                      ' group by workno)a  where jccount.workno=a.workno ');

    Adoquery1.sql.add('update jccount set jctime3=a.jctime3 from (select distinct  workno,sum(jctimes) jctime3 from  per17010  where charindex(''大过'',jcname)<>0 ' +
                      ' group by workno)a  where jccount.workno=a.workno ');
///奖历
    Adoquery1.sql.add('update jccount set jctime5=a.jctime5 from (select distinct  workno,sum(jctimes) jctime5 from  per17010  where  charindex(''嘉奖'',jcname)<>0'+
                      ' group by workno)a  where jccount.workno=a.workno ');

    Adoquery1.sql.add('update jccount set jctime6=a.jctime6 from (select distinct  workno,sum(jctimes) jctime6 from  per17010  where  charindex(''小功'',jcname)<>0'+
                      ' group by workno)a  where jccount.workno=a.workno ');

    Adoquery1.sql.add('update jccount set jctime7=a.jctime7 from (select distinct  workno,sum(jctimes) jctime7 from  per17010  where  charindex(''大功'',jcname)<>0'+
                      ' group by workno)a  where jccount.workno=a.workno ');

    Adoquery1.SQL.SaveToFile('c:\dyh.sql');
    Adoquery1.ExecSQL;
    Application.messagebox('统计奖惩罚次数成功,谢谢使用!!!!','系统提示',32)  ;
        //打开显示一下
    Adodataset1.Close;
    Adodataset2.Close;
    Adodataset2.Open;
    Adodataset1.Open;
  end;
end;
procedure TformJiangChen.DBGrid5DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
begin
     if adodataset2.FieldByName('jctime4').asinteger>=3 then
   begin
    dbgrid5.Canvas.Font.Color:=clred;
    dbgrid5.DefaultDrawColumnCell(rect,datacol,column,state);
   end;
end;

procedure TformJiangChen.DBGrid5TitleClick(Column: TColumn);
begin
  if f='DESC' then
    f:='ASC'
  else
    f:='DESC';
    adodataset2.Sort:=column.FieldName+' '+f;
end;

procedure TformJiangChen.DBGrid4TitleClick(Column: TColumn);
begin
  if f='DESC' then
    f:='ASC'
  else
    f:='DESC';
  Adodataset1.Sort:=column.FieldName+' '+f;
end;
procedure TformJiangChen.wwDBLookupCombo3KeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
   if key=VK_Down then
     (sender as Twwdblookupcombo).dropdown;
end;
procedure TformJiangChen.DBNavigator2BeforeAction(Sender: TObject;
  Button: TNavigateBtn);
begin
   if button=nbinsert then
   DBEdit1.SetFocus;
end;

end.


⌨️ 快捷键说明

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