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

📄 unit10.~pas

📁 本软件的功能如下: 1.公司员工工资信息输入查找 2.工资计算 3.工资汇总 4.工资打印报表 5.到处数据
💻 ~PAS
📖 第 1 页 / 共 2 页
字号:
      EnableControls;


      END;

      table1.Filtered:=false;



      WITH TABLE1 DO
      BEGIN
      DISABLECONTROLS;
      FIRST;
WHILE NOT EOF DO
     BEGIN
      EDIT;



      if (FieldByName('部门').AsString='乘务员') or (FieldByName('部门').AsString='驾驶员') and  (FieldByName('族别').AsString='汉族')

      and ((FieldByName('出勤天数').AsInteger+FieldByName('平待天数').AsInteger)>0) and ((FieldByName('出勤天数').AsInteger+FieldByName('平待天数').AsInteger)<fb) then
      begin

        FieldByName('技能工资').AsFloat:=(FieldByName('出勤天数').AsInteger+FieldByName('平待天数').AsInteger)/fb*FieldByName('技能工资').AsFloat;




      end;

      if (FieldByName('部门').AsString='乘务员') or (FieldByName('部门').AsString='驾驶员') and  (FieldByName('族别').AsString='少数民族')

      and ((FieldByName('出勤天数').AsInteger+FieldByName('平待天数').AsInteger)>0) and ((FieldByName('出勤天数').AsInteger+FieldByName('平待天数').AsInteger)<fc) then
      begin

        FieldByName('技能工资').AsFloat:=(FieldByName('出勤天数').AsInteger+FieldByName('平待天数').AsInteger)/fc*FieldByName('技能工资').AsFloat;




      end;







        post;
      NEXT


      END;

      EnableControls;
      END;


  table1.Filter:='部门'+'<>'+''''+'管理人员'+'''' + '  and  ' + '部门'+'<>'+''''+'驾驶员'+''''+
            '  and  ' + '部门'+'<>'+''''+'实习驾驶员'+''''+'  and  ' + '部门'+'<>'+''''+'洗车人员'+''''
            +'  and  ' + '部门'+'<>'+''''+'公差人员'+''''+'  and  ' + '部门'+'<>'+''''+'零修'+''''
            +'  and  ' + '部门'+'<>'+''''+'修理工'+''''+
            '  and  ' + '部门'+'<>'
            +''''+'站点修理'+''''
          
            +'  and  ' + '队别'+'<>'+''''+'内退人员'+'''';
           table1.filtered:=true;

        WITH TABLE1 DO
      BEGIN
      DISABLECONTROLS;
      FIRST;
WHILE NOT EOF DO
     BEGIN
      EDIT;


      if (FieldByName('工龄').AsInteger>=0) and (FieldByName('工龄').AsInteger<5) then
       begin
       aa1:=0.6;
       end;

        if (FieldByName('工龄').AsInteger>=5) and (FieldByName('工龄').AsInteger<10) then
       begin
       aa1:=0.7;
       end;



        if (FieldByName('工龄').AsInteger>=10) and (FieldByName('工龄').AsInteger<20) then
       begin
       aa1:=0.8;
       end;




       if (FieldByName('工龄').AsInteger>=20) and (FieldByName('工龄').AsInteger<25) then
       begin
       aa1:=0.9;
       end;




        if FieldByName('工龄').AsInteger>=25  then
       begin
       aa1:=1;
       end;


       if FieldByName('病天数').AsInteger>0   then

       begin
         FieldByName('工龄工资').AsFloat:=0;
         FieldByName('岗贴').AsFloat:=0;
         FieldByName('病工资').AsFloat:=(FieldByName('效益工资').AsFloat*0.4/21.5*FieldByName('病天数').AsInteger*(1-aa1)+
         FieldByName('效益工资').AsFloat*0.4*0.3)*-1;





       end;

       if FieldByName('事天数').AsInteger>0   then

       begin
         FieldByName('工龄工资').AsFloat:=0;
         FieldByName('岗贴').AsFloat:=0;
         FieldByName('事扣').AsFloat:=(FieldByName('效益工资').AsFloat*0.4/21.5*FieldByName('事天数').AsInteger+
         FieldByName('效益工资').AsFloat*0.4*0.3);



       end;




       if FieldByName('旷天数').AsInteger>0   then

       begin
         FieldByName('工龄工资').AsFloat:=0;
         FieldByName('岗贴').AsFloat:=0;
FieldByName('矿扣').AsFloat:=FieldByName('效益工资').AsFloat*0.4;


       end;





        if FieldByName('部门').AsString='辅助人员' then

        begin

         FieldByName('加班').AsFloat:=FieldByName('效益工资').AsFloat/21.5*(FieldByName('日加天数').AsInteger+FieldByName('节加天数').AsInteger*2);



        end;






        post;
      NEXT


      END;

      EnableControls;


      END;








      table1.Filtered:=false;






      WITH TABLE1 DO
      BEGIN
      DISABLECONTROLS;
      FIRST;
WHILE NOT EOF DO
     BEGIN
      EDIT;






      if ((FieldByName('日加天数').AsInteger+FieldByName('平加天数').AsInteger +FieldByName('节加天数').AsInteger
      +FieldByName('出勤天数').AsInteger +FieldByName('平待天数').AsInteger
      +FieldByName('节待天数').AsInteger +FieldByName('日待天数').AsInteger
      +FieldByName('病天数').AsInteger +FieldByName('其它工资').asfloat+ FieldByName('其它出勤').AsInteger)=0)
      and (FieldByName('队别').AsString<>'内退人员')
      then
      begin

        FieldByName('技能工资').AsFloat:=0;
        FieldByName('效益工资').AsFloat:=0;
        FieldByName('待休工资').AsFloat:=0;
        FieldByName('工龄工资').AsFloat:=0;
        FieldByName('岗贴').AsFloat:=0;
        FieldByName('线路津贴').AsFloat:=0;
        FieldByName('独子费').AsFloat:=0;
        FieldByName('补发1').AsFloat:=0;
        FieldByName('补发2').AsFloat:=0;
        FieldByName('补发3').AsFloat:=0;
        FieldByName('差费').AsFloat:=0;
        FieldByName('奖金').AsFloat:=0;
        FieldByName('营养').AsFloat:=0;
        FieldByName('上月尾').AsFloat:=0;
        FieldByName('任务百分点').AsFloat:=0;
        FieldByName('趟次百分点').AsFloat:=0;
        FieldByName('成本百分点').AsFloat:=0;
        FieldByName('利润分成').AsFloat:=0;
        FieldByName('准点百分点').AsFloat:=0;
        FieldByName('病工资').AsFloat:=0;
        FieldByName('事扣').AsFloat:=0;
        FieldByName('矿扣').AsFloat:=0;
        FieldByName('趟次扣').AsFloat:=0;
        FieldByName('安全扣').AsFloat:=0;
        FieldByName('服务扣').AsFloat:=0;
        FieldByName('卫生扣').AsFloat:=0;
        FieldByName('准点扣').AsFloat:=0;
        FieldByName('技术扣').AsFloat:=0;
        FieldByName('罚款').AsFloat:=0;
        FieldByName('应发工资').AsFloat:=0;
        FieldByName('房电').AsFloat:=0;
        FieldByName('托儿').AsFloat:=0;
        FieldByName('欠款').AsFloat:=0;
        FieldByName('车队扣').AsFloat:=0;
        FieldByName('扣款1').AsFloat:=0;
        FieldByName('扣款2').AsFloat:=0;
        FieldByName('另存').AsFloat:=0;
        FieldByName('失保').AsFloat:=0;
        FieldByName('养老').AsFloat:=0;
        FieldByName('住房').AsFloat:=0;
        FieldByName('医保').AsFloat:=0;
        FieldByName('大病保').AsFloat:=0;
        FieldByName('教育').AsFloat:=0;
        FieldByName('税金').AsFloat:=0;
        FieldByName('知补').AsFloat:=0;
        FieldByName('生补').AsFloat:=0;
        FieldByName('边贴').AsFloat:=0;
        FieldByName('卫生').AsFloat:=0;
        FieldByName('煤贴').AsFloat:=0;
        FieldByName('房贴').AsFloat:=0;
        FieldByName('实发工资').AsFloat:=0;
        FieldByName('本月尾').AsFloat:=0;
        FieldByName('加班').AsFloat:=0;
        FieldByName('其它工资').AsFloat:=0;










        end;








      post;
      NEXT


      END;

      EnableControls;
      END;




      table1.Filter:='部门'+'='+''''+'驾驶员'+'''' + '  or  ' + '部门'+'='+''''+'实习驾驶员'+''''+
            '  or  ' + '部门'+'='+''''+'乘务员'+''''+'  or  ' + '部门'+'='+''''+'公差人员'+''''
            +'  or  ' + '部门'+'='+''''+'零修'+''''+'  or  ' + '部门'+'='+''''+'站点修理'+''''+
            '  or  ' + '部门'+'='+''''+'洗车人员'+''''+'  or  ' + '部门'+'='+''''+'修理工'+'''';
           table1.filtered:=true;




           WITH TABLE1 DO
      BEGIN
      DISABLECONTROLS;
      FIRST;
WHILE NOT EOF DO
     BEGIN
      EDIT;

        FieldByName('应发工资').AsFloat:=FieldByName('工龄工资').AsFloat
        +FieldByName('技能工资').AsFloat
        +FieldByName('效益工资').AsFloat
        +FieldByName('待休工资').AsFloat
        +FieldByName('岗贴').AsFloat
        +FieldByName('线路津贴').AsFloat
        +FieldByName('独子费').AsFloat
        +FieldByName('补发1').AsFloat
        +FieldByName('补发2').AsFloat
        +FieldByName('补发3').AsFloat
        +FieldByName('差费').AsFloat
        +FieldByName('奖金').AsFloat
        +FieldByName('加班').AsFloat
        +FieldByName('其它工资').AsFloat
        +FieldByName('营养').AsFloat
        +FieldByName('上月尾').AsFloat
        +FieldByName('利润分成').AsFloat
        +FieldByName('病工资').AsFloat
        -FieldByName('事扣').AsFloat
        -FieldByName('趟次扣').AsFloat
        -FieldByName('安全扣').AsFloat
        -FieldByName('服务扣').AsFloat
        -FieldByName('卫生扣').AsFloat
        -FieldByName('准点扣').AsFloat
        -FieldByName('技术扣').AsFloat
        -FieldByName('罚款').AsFloat
        +FieldByName('知补').AsFloat
        +FieldByName('生补').AsFloat
        +FieldByName('边贴').AsFloat
        +FieldByName('卫生').AsFloat
        +FieldByName('煤贴').AsFloat
        +FieldByName('房贴').AsFloat;

         if FieldByName('应发工资').AsFloat>0 then

         begin

           FieldByName('矿扣').AsFloat:=FieldByName('应发工资').AsFloat*0.2*FieldByName('旷天数').AsInteger;

          end;




      post;
      NEXT


      END;

      EnableControls;
      END;














end

else

begin

showmessage('请先进性参数设置');

 end;
end;

procedure TForm10.Button2Click(Sender: TObject);
begin
form10.Hide;
end;

end.

⌨️ 快捷键说明

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