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

📄 viewunit.pas

📁 工资管理系统
💻 PAS
📖 第 1 页 / 共 3 页
字号:
 Application.MessageBox('数据成功保存!!!','提示框',mb_ok+mb_iconinformation);
end;

procedure TView.GDBGrid2DrawDataCell(Sender: TObject; const Rect: TRect;
  Field: TField; State: TGridDrawState);
begin
// if field.FieldName='rysx' then
//  gdbgrid1.Columns.LoadFromFile('sx2.Txt');
{ if (gdFocused in State) then
  begin
if Field.FieldName = DBl.KeyField then
     begin
       DBl.Left := Rect.Left + gDBGrid2.Left;
       DBl.Top := Rect.Top + gDBGrid2.top;
       DBl.Width := Rect.Right - Rect.Left;
       DBl.height := Rect.Bottom - Rect.Top;
       DBl.Visible := True;
     end;
end;}
end;

procedure TView.SpeedButton1Click(Sender: TObject);
var namea:string;
begin
 if Length(combobox1.Text)=0 then
      begin
            application.MessageBox('您没有选择有效的月份,请重新选择!!!---》右边的小眼镜。','提示',mb_ok+mb_iconinformation);
            abort;
      end;
 namea:=data.Query1.FieldByName('Name').AsString;
 if messagedlg('你确定这条纪录-->'+#13+#10+'姓名:  '+namea+#13+#10+'彻底删除吗?,删除后此记录将不可能恢复.',mtconfirmation,
               [mbyes,mbno],0)=mryes then
               begin
                 data.query1.delete;
                  try
                datat.Table4.Close;
                datat.table4.Open;
                packtable(datat.table4);
                 except

                 end;

                end;
end;




procedure TView.SpeedButton2Click(Sender: TObject);
var namea:string;
    ddd:string;
    i:integer;
begin
    datat.table4.Open;
    namea:=datat.Table4.FieldByName('Name').AsString;
    if  (MessageBox(Handle,pchar('您确定要转入---〉'+combobox2.Text+namea+'记录吗?'),pchar(caption),mb_iconquestion+mb_YesNo)=mryes) then
    begin
     datat.table1.Open;
    if not(datat.table1.Locate('code;riqi',vararrayof([datat.table4.FieldByName('code').AsString,combobox2.Text]),[])) then
     begin
          ddd:=datat.table4.FieldByName('rysx').AsString;
           if not( (ddd='在职') or (ddd='停薪')) then
           begin
            MessageBox(Handle,pchar('此人---〉<<'+combobox2.Text+namea+'>>人员属性为<<'+ddd+'>>不能转进历月库!!!'),pchar(caption),Mb_iconstop+Mb_ok);
            abort;
             end;
         datat.table1.Edit;
         datat.table1.Append;
         datat.table1.Edit;
         for i:=0 to datat.table4.FieldCount-1 do
             begin
                  datat.Table1.Fields[i].assign(datat.table4.Fields[i]);
                  datat.Table1.FieldByName('riqi').AsString:=combobox2.Text;
             end;
           datat.table1.post;
           Application.MessageBox('数据成功转入!!!','提示框',mb_ok+mb_iconinformation);
     end
     else
     MessageBox(Handle,pchar('请先删除---〉'+combobox2.Text+namea+'记录'),pchar(caption),Mb_iconstop+Mb_ok);
    end;
end;

procedure TView.SpeedButton5Click(Sender: TObject);
 var
    i:integer;
    sy:string;
//    mm:string;
begin
// if noinput=nil then
 datat.BmTable2.Open;
 Application.CreateForm(Tnoinput,noinput);
 if noinput.showmodal=mrok then
 begin
      IF (LENGTH(noinput.eDIT1.TEXT)=0) or (length(noinput.edit1.text)>5) THEN
         begin
            application.MessageBox('没有输入有效的字段值,请重输!!!','提示',mb_ok+mb_iconinformation);
//            noinput.edit1.SetFocus;
          end
     else
     with datat.Table4 do
       begin
         open;
         sy:=noinput.edit1.text;

          if pchar(sy)<char('A') then
        begin
         for i:=1 to (5-Length(sy)) do
         begin
         sy:='0'+sy;
         end;

          if not(Locate('code',sy,[])) then
          begin
              application.MessageBox('不存在这条纪录CODE','提示',mb_ok+mb_iconinformation);
              //dbedit1.setfocus;
              first;
              gdbgrid1.Columns[4].picklist.loadfromfile('sx2.Txt');
              abort;
           end;
         end
          else
          begin
           if not(Locate('xmdm',sy,[])) then
           begin
              application.MessageBox('不存在这条纪录XMDM','提示',mb_ok+mb_iconinformation);
//              dbedit1.setfocus;
              first;
              gdbgrid1.Columns[4].picklist.loadfromfile('sx2.Txt');

              abort;
            end;
         end;
             gdbgrid1.Columns[4].picklist.loadfromfile('sx2.Txt');

       end;
       end;
  {   datat.table4.edit;
      datat.table4.FieldByName('tmp').AsString:='*';
      datat.table4.post;}
      datat.table4.Open;
      noinput.release;
 end;

procedure TView.GDBGrid1CellClick(Column: TColumn);
begin
//     tstringgrid(gdbgrid1).fixedcols:=4;
     datat.Table4.EnableControls;
end;

procedure TView.GDBGrid1DblClick(Sender: TObject);
begin
//      tstringgrid(gdbgrid1).fixedcols:=4;
      datat.Table4.EnableControls;
      gdbgrid1.ShowHint:=false;
end;

procedure TView.SpeedButton7Click(Sender: TObject);
var namea:string;
begin
//if delrecform=nil then
Application.createform(Tdelrecform,delrecform);
 if delrecform.ShowModal=mrok then
 begin
    with datat.table4 do
      begin
            if not active then Open;
            namea:=fieldbyname('name').asstring;
        case delrecform.RadioGroup1.ItemIndex of
            0:
            begin
               edit;
               if messagedlg('你确定这条纪录-->'+#13+#10+'姓名:  '+namea+#13+#10+'退休吗?定以为退休后此人不再参与每月数据计算',mtconfirmation,
               [mbyes,mbno],0)=mryes then FieldByName('rysx').AsString:='退休';
               post;
            end;
             1:
            begin
               edit;
               if messagedlg('你确定这条纪录-->'+#13+#10+'姓名:  '+namea+#13+#10+'定以为停薪吗?定义为停薪后此人各项数据清零',mtconfirmation,
               [mbyes,mbno],0)=mryes then FieldByName('rysx').AsString:='停薪';
               post;
            end;
             2:
            begin
               edit;
               if messagedlg('你确定这条纪录-->'+#13+#10+'姓名:  '+namea+#13+#10+'定义为调出吗?,定以为调出后此人各项数仍存在,为以后计算台帐做基数.',mtconfirmation,
               [mbyes,mbno],0)=mryes then FieldByName('rysx').AsString:='调出';
               post;
            end;
             3:
            begin
               edit;
               if messagedlg('你确定这条纪录-->'+#13+#10+'姓名:  '+namea+#13+#10+'定以为其他吗?',mtconfirmation,
               [mbyes,mbno],0)=mryes then FieldByName('rysx').AsString:='其他';
               post;
            end;
             4:
            begin
               if messagedlg('你确定这条纪录-->'+#13+#10+'姓名:  '+namea+#13+#10+'彻底删除吗?,删除后此记录将不可能恢复,台帐数也没有.',mtconfirmation,
               [mbyes,mbno],0)=mryes then
               begin
                 delete;
                 datat.Table4.Close;
                  datat.table4.Open;
                 packtable(datat.table4);
                end;
            end;
        end;
       end;
  end;
   datat.table4.Open;
   delrecform.release;
end;
procedure TView.GDBGrid2DblClick(Sender: TObject);
begin
 data.query1.EnableControls;
 //tstringgrid(gdbgrid2).fixedcols:=3;
 gdbgrid2.ShowHint:=false;
 gdbgrid2.Refresh;
end;

procedure TView.GDBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
// if //(gdFocused in State) and
 // if  (Column.Fieldname = 'bmno') then

{  Gdbgrid2.canvas.brush.color := clwhite;
  Gdbgrid2.canvas.fillRect(rect);
  if gdSelected  in state then
  begin
    Gdbgrid2.canvas.brush.color :=clred;// clHighlight;
     Gdbgrid2.canvas.font.style := [fsBold];
    if fsBold in Gdbgrid2.canvas.font.style then
    begin
      Gdbgrid2.canvas.font.color := clHighlightText;
      Gdbgrid2.canvas.font.style := [fsBold];
    end
    else
      Gdbgrid2.canvas.font.color := clHighlightText;
  end
  else if gdFocused in state then
  begin
    Gdbgrid2.canvas.brush.color := clWindow;
    if fsBold in Gdbgrid2.canvas.font.style then
    begin
      Gdbgrid2.canvas.font.color := clWindowText;
      Gdbgrid2.canvas.font.style := [fsBold];
    end
    else
      Gdbgrid2.canvas.font.color := clWindowText;
  end
  else if gdFixed in state then
  begin
    Gdbgrid2.canvas.brush.color := clHighlight;
    if fsBold in Gdbgrid2.canvas.font.style then
    begin
      Gdbgrid2.canvas.font.color := clHighlightText;
      Gdbgrid2.canvas.font.style := [fsBold];
    end
    else
      Gdbgrid2.canvas.font.color := clHighlightText;
  end;
  with data.query1 do
  begin
  // test cirteria of record.  Set properties to override the default;
    if fieldByName('jb_js').asfloat=0 then
    begin
      Gdbgrid2.Canvas.font.color := clblue;//white;
//    if compareStr(fieldByName('STAT_CODE').asString, 'HD') = 0 then
//      Gdbgrid2.Canvas.font.color := clOlive;
//    if  (compareStr(fieldByName('CHANGED').asString, 'Y') = 0) and
//        (fieldByName('ASSIGN_EMP_ID').asInteger = userRecord.UserId) then
      Gdbgrid2.Canvas.font.style := [fsBold];
     end;
  end;
  Gdbgrid2.canvas.textOut(rect.left+2, rect.top+2,column.field.text);}
//    data.Query1.FieldByName('name').displaywidth:=10;
    //data.Query1.FieldByName('xmdm').displaywidth:=6;
    //data.Query1.FieldByName('rysx').displaywidth:=8;
     {if (data.query1.FieldByName('jb_bj_d').asfloat+data.query1.FieldByName('jb_hc_d').asfloat+data.query1.FieldByName('jb_nt_d').asfloat+data.query1.FieldByName('zjsj').asfloat+data.query1.FieldByName('zjkg').asfloat)>0 then
      begin
      gdbgrid2.Canvas.font.Color:=clred;
//      dbgrid1.Canvas.Font.Style:=[fsbold];
      gdbgrid2.Canvas.Font.Size:=11;
      gdbgrid2.Canvas.Font.Name:='黑体';
      end;}
 if (Rect.Top = TStringGrid(gdbgrid2).CellRect(TStringGrid(gdbgrid2).col,TStringGrid(gdbgrid2).row).top) and       (not (gdFocused in State)) then
    begin
     gdbgrid2.Canvas.Brush.Color := clblue;
      gdbgrid2.Canvas.font.Color:=clwhite;
    end;
 gdbgrid2.DefaultDrawDataCell(Rect, Column.Field, State);
     { if (data.query1.FieldByName('jb_bj_d').asfloat)>0 then
      begin
      gdbgrid2.Canvas.font.Color:=clblue;
//      dbgrid1.Canvas.Font.Style:=[fsbold];
      gdbgrid2.Canvas.Font.Size:=9;
//      gdbgrid2.Canvas.Font.Name:='黑体';
      end;

      if (data.query1.FieldByName('jb_hc_d').asfloat)>0 then
      begin
      gdbgrid2.Canvas.font.Color:=clred;
//      dbgrid1.Canvas.Font.Style:=[fsbold];
      gdbgrid2.Canvas.Font.Size:=9;
//      gdbgrid2.Canvas.Font.Name:='黑体';
      end;
      if (data.query1.FieldByName('jb_nt_d').asfloat)>0 then
      begin
      gdbgrid2.Canvas.font.Color:=clteal;
//      dbgrid1.Canvas.Font.Style:=[fsbold];
      gdbgrid2.Canvas.Font.Size:=9;
//      gdbgrid2.Canvas.Font.Name:='黑体';
      end;

      if (data.query1.FieldByName('zjsj').asfloat+data.query1.FieldByName('zjkg').asfloat)>0 then
      begin
      gdbgrid2.Canvas.font.Color:=clGREEN;
//      dbgrid1.Canvas.Font.Style:=[fsbold];
      gdbgrid2.Canvas.Font.Size:=9;
    //  gdbgrid2.Canvas.Font.Name:='黑体';
      end;
      gdbgrid2.DefaultDrawColumnCell(rect,datacol,column,state);}


  end;

procedure TView.GDBGrid1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
{if Key = vk_Return then
begin
     Key:=0;
     Key := vk_Tab;
end;}
end;



procedure TView.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if key=vk_f9 then
speedbutton9.click;
end;

procedure TView.GDBGrid3DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if (Rect.Top = TStringGrid(gdbgrid3).CellRect(TStringGrid(gdbgrid3).col,TStringGrid(gdbgrid3).row).top) and       (not (gdFocused in State)) then
    begin
     gdbgrid3.Canvas.Brush.Color := clblue;
      gdbgrid3.Canvas.font.Color:=clwhite;
    end;
 gdbgrid3.DefaultDrawDataCell(Rect, Column.Field, State);

if (data.query1.FieldByName('jb_bj_d').asfloat+data.query1.FieldByName('jb_hc_d').asfloat+data.query1.FieldByName('jb_nt_d').asfloat+data.query1.FieldByName('zjsj').asfloat+data.query1.FieldByName('zjkg').asfloat)>0 then
      begin
      gdbgrid3.Canvas.font.Color:=clred;
//      dbgrid1.Canvas.Font.Style:=[fsbold];
      gdbgrid3.Canvas.Font.Size:=9;
    //  gdbgrid3.Canvas.Font.Name:='黑体';
      end;
      gdbgrid3.DefaultDrawColumnCell(rect,datacol,column,state);
end;



procedure TView.SpeedButton8Click(Sender: TObject);
var
   KqD:integer;
   sy,Rq:string;
   Bj,Hc,Jb,Jn,Gw,nt,DDD,gl,rg,bjgz,kgd,sjd,sj,cf:real;
begin//e1
with data.query1 do
  begin  //e2


   if not(data.query1.active) then
    begin
    Application.MessageBox('没有数据!!!请运行F9!!!','提示框',mb_ok+mb_iconstop);
    abort;
    end;

    if (data.query1.active) and (data.query1.IsEmpty) then
    begin
    Application.MessageBox('没有数据!!!请运行F9!!!','提示框',mb_ok+mb_iconstop);
    abort;
    end;

   Application.CreateForm(Tkqday,kqday);
if kqday.showmodal=mrok then
   begin
     case kqday.Rg.ItemIndex of
     0:
     begin
//       if jsbmxz=nil then
//       Application.CreateForm(Tjsbmxz,jsbmxz);
//       jsbmxz.Showmodal;
     end;
   end;
 end;
    KqD:=strtoint(kqday.Edit1.Text);
    Rq:=password.MaskEdit1.Text+'-'+password.Edit4.Text;
    IF  (application.messagebox(pchar('您所选择的计算数据是:  '+rq+'月,正确吗?'),'消息框',mb_okcancel+mb_defbutton1+mb_iconquestion)
     =idcancel) then
     abort;

     data.Query1.DisableControls;
     case Rg1.ItemIndex of
     1:
     begin
         first;
     end;
   end;
     while not eof do
     begin   //e3

    // Application.ProcessMessages;
     Bj:=fieldbyname('Jb_bj_d').asfloat;
     Hc:=fieldbyname('Jb_Hc_d').asfloat;
     Nt:=fieldbyname('JB_Nt_d').asfloat;
     jb:=fieldbyname('Qt_jb_d').asfloat;

⌨️ 快捷键说明

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