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

📄 sendcard.pas

📁 pasa人力资源考勤管理系统
💻 PAS
📖 第 1 页 / 共 4 页
字号:
    dbnavigator1.VisibleButtons:=vb-[nbedit]-[nbpost]-[nbdelete];
    dbnavigator1.DataSource:=dsguasi;
    count.Enabled:=false;
    print.Enabled:=false;
    readcard.Enabled:=false;
  end;
  2:
  begin
    dbnavigator1.VisibleButtons:=vb-[nbedit]-[nbpost]-[nbdelete];
    dbnavigator1.DataSource:=dsjieguasi;
    count.Enabled:=false;
    print.Enabled:=false;
    readcard.Enabled:=false;
  end;
  3:
  begin
    dbnavigator1.VisibleButtons:=vb-[nbinsert]-[nbedit]-[nbpost]-[nbdelete];
    DBNavigator1.DataSource:=DataSource4;
    count.Enabled:=false;
    print.Enabled:=false;
    readcard.Enabled:=true;
  end;
  4:
  begin
    dbnavigator1.VisibleButtons:=vb;
    DBNavigator1.DataSource:=DataSource1;
    count.Enabled:=false;
    print.Enabled:=false;
    readcard.Enabled:=true;
  end;
  5:
  begin
    dbnavigator1.VisibleButtons:=vb;
    DBNavigator1.DataSource:=DataSource2;
    count.Enabled:=false;
    print.Enabled:=false;
    readcard.Enabled:=true;
  end;
  6:
  begin
    dbnavigator1.VisibleButtons:=vb;
    count.Enabled:=true;
    print.Enabled:=true;
    readcard.Enabled:=false;
    dbnavigator1.datasource:=datasource3;
    case radiogroup1.ItemIndex of
    0:begin
        ADOdaycong.Close;
        ADOdaycong.CommandText:='select * From daycong';
        ADOdaycong.Open;
        datasource3.DataSet:=ADOdaycong;
      end;
    1:begin
       ADOdaytuikuan.Close;
       ADOdaytuikuan.CommandText:='select * from daytuikuan';
       ADOdaytuikuan.Open;
       datasource3.dataset:=ADOdaytuikuan;
      end;
    end;
  end;
  7:
  begin
    dbnavigator1.VisibleButtons:=vb;
    print.Enabled:=true;
    count.Enabled:=true;
    readcard.Enabled:=false;
    dbnavigator1.datasource:=datasource5;
    case radiogroup2.ItemIndex of
    0:begin
        ADOmoncong.Close;
        ADOmoncong.CommandText:='select * From moncong';
        ADOmoncong.Open;
        adodataset6.close;
        adodataset6.Open;
        datasource5.DataSet:=ADOmoncong;
        datasource6.DataSet:=adodataset6;
      end;
    1:begin
       ADOmontuikuan.Close;
       ADOmontuikuan.CommandText:='select * from montuikuan';
       ADOmontuikuan.Open;
       adodataset4.Close;
       adodataset4.Open;
       datasource5.dataset:=ADOmontuikuan;
       datasource6.DataSet:=adodataset4;
      end;
    end;

  end;
  end;
end;

procedure Tformcard.adodataset3worknoChange(Sender: TField);
var c,n,d,p,g,s:string;
begin
  c:='';n:='';d:='';p:='';g:='';s:='';
  adodataset3.Edit;
  if adodataset3workno.asstring<>'' then
  begin
  getworker(adodataset3workno.asstring,c,n,d,p,g,s);
  if trim(n)='' then
    application.messagebox('该员工不存在','Warning',mb_ok+mb_iconwarning)
  else
    begin
      adodataset2.Close;
      adodataset2.CommandText:='select dept from pub05010 where dno='''+d+'''';
      adodataset2.Open;
      adodataset3cardno.asstring:=c;
      adodataset3name.asstring:=n;
      adodataset3dept.asstring:=adodataset2.fieldbyname('dept').asstring;
      adodataset3prof.asstring:=p;
      adodataset2.close;
      adodataset2.CommandText:='select workno,max(isnull(timesum,0)) timesum from congcard where workno='''+adodataset1workno.asstring+''' group by workno';
      adodataset2.Open;
      adodataset3.fieldbyname('timesum').AsInteger:=adodataset2.fieldbyname('timesum').asinteger;
    end;
  end;
end;

procedure Tformcard.countClick(Sender: TObject);
begin
case pagecontrol1.ActivePageIndex of
6:begin
  if (maskedit1.text=fmat1) or (maskedit2.text=fmat1) or (not isdate(maskedit1.Text)) or (not isdate(maskedit2.Text)) then
  begin
   application.MessageBox('输入的日期有误,请重新输入再汇总!','提示',mb_ok+mb_iconwarning);
   maskedit1.SetFocus;
  end
  else
  begin
   case radiogroup1.ItemIndex of
   0:
     begin
       adoquery1.Close;
       adoquery1.sql.Clear;
       adoquery1.SQL.Add('delete daycong where rq between '''+maskedit1.Text+''' and '''+maskedit2.Text+'''');
       adoquery1.SQL.add('insert into daycong select distinct a.workno,a.cardno,a.dept,a.prof,a.name,b.money,b.rq,b.timesum from congcard a,(select workno,rq,sum(isnull(money,0)) money,sum(isnull(times,0))'+
       ' timesum from congcard group by workno,rq) b where a.workno=b.workno and a.rq=b.rq and a.rq between  '''+maskedit1.Text+''' and '''+maskedit2.Text+'''');
       adoquery1.ExecSQL;
       ADOdaycong.Close;
       ADOdaycong.Open;
       DataSource3.DataSet:=ADOdaycong;
     end;
   1:begin
       adoquery1.Close;
       adoquery1.SQL.Clear;
       adoquery1.SQL.Add('delete daytuikuan  where rq between '''+maskedit1.Text+''' and '''+maskedit2.Text+'''');
       adoquery1.SQL.Add('insert into daytuikuan select distinct a.workno,a.cardno,a.dept,a.prof,a.name,b.money,b.rq  from tuikuancard a,(select workno,rq,sum(isnull(money,0)) money  from tuikuancard group by workno,rq) b where a.workno=b.workno and a.rq=b.rq  and a.rq between  '''+maskedit1.Text+''' and '''+maskedit2.Text+'''');
       adoquery1.ExecSQL;
       ADOdaytuikuan.Close;
       ADOdaytuikuan.Open;
       DataSource3.DataSet:=ADOdaytuikuan;
     end;
    end;
  end;
  end;
7:begin
  if (trim(maskedit3.text)=fmat)then
  begin
   application.MessageBox('输入的月份有误,请重新输入再汇总!','提示',mb_ok+mb_iconwarning);
   maskedit3.SetFocus;
  end
  else
  begin
   case radiogroup2.ItemIndex of
   0:
     begin
       adoquery1.Close;
       adoquery1.sql.Clear;
       adoquery1.SQL.Add('delete moncong WHERE monthy='''+maskedit3.Text+'''');
       adoquery1.SQL.add('insert into moncong select distinct a.workno,a.cardno,a.dept,a.prof,a.name,b.money,b.monthy,b.timesum'+
       '  from congcard a,(select workno,left(convert(varchar,rq,111),7) monthy,sum(isnull(money,0)) money ,sum(isnull(times,0)) '+
       'timesum from congcard group by workno,left(convert(varchar,rq,111),7)) b where a.workno=b.workno and left(convert(varchar,a.rq,111),7)=b.monthy and left(convert(varchar,a.rq,111),7)='''+maskedit3.Text+'''');
       //adoquery1.SQL.SaveToFile('c:\ss.sql');
       adoquery1.ExecSQL;

       ADOmoncong.Close;
       ADOmoncong.Open;
       adodataset6.close;
       adodataset6.Open;
       DataSource5.DataSet:=ADOmoncong;
       datasource6.DataSet:=adodataset6;
     end;
   1:begin
       adoquery1.Close;
       adoquery1.SQL.Clear;
       adoquery1.SQL.Add('delete montuikuan WHERE monthy='''+maskedit3.Text+'''');
       adoquery1.SQL.Add('insert into montuikuan select distinct a.workno,a.cardno,a.dept,a.prof,a.name,b.money,b.monthy  '+
       'from tuikuancard a,(select workno,left(convert(varchar,rq,111),7) monthy,sum(isnull(money,0)) money  from tuikuancard group by workno,left(convert(varchar,rq,111),7)) b where a.workno=b.workno and left(convert(varchar,a.rq,111),7)=b.monthy '+
       'and left(convert(varchar,a.rq,111),7)='''+maskedit3.Text+'''');
       adoquery1.ExecSQL;
       ADOmontuikuan.Close;
       ADOmontuikuan.Open;
       adodataset4.Close;
       adodataset4.Open;
       DataSource5.DataSet:=ADOmontuikuan;
       datasource6.DataSet:=adodataset4;
     end;
    end;
 end;
 end;
end;
end;

procedure Tformcard.ComboBox5Exit(Sender: TObject);
var s1,s2,str,s3:string;
begin
  s1:='';s2:='';s3:='';
  if trim(edit1.text)<>'' then
     s1:=' (workno='''+edit1.text+''' or cardno='''+edit1.text+''' or name='''+edit1.text+''') ';
  if 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;
       exit;
    end
    else s2:=' and (rq<='''+maskedit2.text+''' and rq>='''+maskedit1.text+''')';
  if trim(combobox5.text)='' then
    combobox5.Text:='全部';
  if combobox5.Text<>'全部' then
    s3:=' and dept='''+combobox5.text+'''';
  str:=s1+s2+s3;
  if trim(str)<>'' then
   if s1<>'' then
     str:=copy(str,1,length(str))
   else
     str:=copy(str,pos(' and',str)+5,length(str));

   case radiogroup1.ItemIndex of
   0:begin
      ADOdaycong.Close;
      if trim(str)<>'' then
       ADOdaycong.CommandText:='select * from daycong where '+str
      else
       ADOdaycong.commandtext:='select * From daycong';
      ADOdaycong.Open;
     end;
   1:begin
      ADOdaytuikuan.Close;
      if trim(str)<>'' then
       ADOdaytuikuan.CommandText:='select * from daytuikuan where '+str
      else
       ADOdaytuikuan.CommandText:='select * from daytuikuan';
      ADOdaytuikuan.Open;
     end;
   end;

end;


procedure Tformcard.ComboBox4Exit(Sender: TObject);
var s1,s2,str,s3:string;
begin
  s1:='';s2:='';s3:='';
  if trim(edit2.text)<>'' then
     s1:=' (workno='''+edit2.text+''' or cardno='''+edit2.text+''' or name='''+edit2.text+''') ';
  if trim(maskedit3.text)<>fmat then
    s2:=' and (monthy='''+maskedit3.text+''')';
  if trim(combobox4.Text)='' then
    combobox4.Text:='全部';
  if combobox4.Text<>'全部' then
    s3:=' and dept='''+combobox4.text+'''';
  str:=s1+s2+s3;
  if trim(str)<>'' then
   if s1<>'' then
     str:=copy(str,1,length(str))
   else
     str:=copy(str,pos(' and',str)+5,length(str));

   case radiogroup2.ItemIndex of
   0:begin
      ADOmoncong.Close;
      if trim(str)<>'' then
       ADOmoncong.CommandText:='select * from moncong where '+str
      else
       ADOmoncong.CommandText:='select * from moncong';
      ADOmoncong.Open;
     end;
   1:begin
      ADOmontuikuan.Close;
      if trim(str)<>'' then
       ADOmontuikuan.CommandText:='select * from montuikuan where '+str
      else
       ADOmontuikuan.CommandText:='select * from montuikuan';
      ADOmontuikuan.Open;
     end;
   end;

end;

procedure Tformcard.ppReport1BeforePrint(Sender: TObject);
begin
  pplabel1.Caption:=companyname1;
  pplabel11.Caption:=pubworkname;
end;

procedure Tformcard.ppReport1PreviewFormCreate(Sender: TObject);
begin
  tppReport(Sender).PreviewForm.WindowState:=wsMaximized;
end;

procedure Tformcard.ppReport2BeforePrint(Sender: TObject);
begin
  pplabel12.Caption:=companyname1;
  pplabel14.Caption:=pubworkname;
end;

procedure Tformcard.ppReport2PreviewFormCreate(Sender: TObject);
begin
tppReport(Sender).PreviewForm.WindowState:=wsMaximized;
end;

procedure Tformcard.ppReport3BeforePrint(Sender: TObject);
begin
  pplabel18.Caption:=companyname1;
  pplabel24.Caption:=pubworkname;
end;

procedure Tformcard.ppReport3PreviewFormCreate(Sender: TObject);
begin
tppReport(Sender).PreviewForm.WindowState:=wsMaximized;
end;

procedure Tformcard.ppReport4BeforePrint(Sender: TObject);
begin
  pplabel32.Caption:=companyname1;
  pplabel34.Caption:=pubworkname;
end;

procedure Tformcard.ppReport4PreviewFormCreate(Sender: TObject);
begin
tppReport(Sender).PreviewForm.WindowState:=wsMaximized;

end;

procedure Tformcard.printClick(Sender: TObject);
begin
 case pagecontrol1.ActivePageIndex of
 6: case radiogroup1.ItemIndex of
    0:ppreport1.Print;
    1:ppreport2.Print;
    end;
 7:case radiogroup2.ItemIndex of
   0:ppreport3.Print;
   1:ppreport4.print;
   end;
 end;  
end;

procedure Tformcard.DateTimePicker1CloseUp(Sender: TObject);
begin
  adodataset1.edit;
  adodataset1rq.AsString:=datetostr(datetimepicker1.date);
end;

procedure Tformcard.DateTimePicker2CloseUp(Sender: TObject);
begin
  adodataset3.edit;
  adodataset3rq.AsString:=datetostr(datetimepicker2.date);
end;

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

procedure Tformcard.DateTimePicker4CloseUp(Sender: TObject);
begin
  maskedit2.Text:=datetostr(datetimepicker4.date); 
end;

procedure Tformcard.DBGrid4TitleClick(Column: TColumn);
begin
    if s='DESC' then
     s:='ASC'
   else
     s:='DESC';
   tadodataset(dbgrid4.DataSource.DataSet).Sort:=column.FieldName+' '+s;
end;

procedure Tformcard.DBGrid3TitleClick(Column: TColumn);
begin
    if s='DESC' then
     s:='ASC'
   else
     s:='DESC';
   tadodataset(dbgrid3.DataSource.DataSet).Sort :=column.FieldName+' '+s;
end;

procedure Tformcard.DBGrid2TitleClick(Column: TColumn);
begin
    if s='DESC' then
     s:='ASC'
   else
     s:='DESC';
   tadodataset(dbgrid2.DataSource.DataSet).Sort :=column.FieldName+' '+s;
end;

procedure Tformcard.DBGrid5TitleClick(Column: TColumn);
begin
    if s='DESC' then
     s:='ASC'
   else
     s:='DESC';
   tadodataset(dbgrid5.DataSource.DataSet).Sort :=column.FieldName+' '+s;
end;

procedure Tformcard.DBGrid6TitleClick(Column: TColumn);
begin
    if s='DESC' then
     s:='ASC'
   else
     s:='DESC';
   tadodataset(dbgrid6.DataSource.DataSet).Sort :=column.FieldName+' '+s;
end;

procedure Tformcard.ADOjieguasiBeforePost(DataSet: TDataSet);
begin
  adojieguasi.Edit;
  adojieguasioperator.asstring:=pubworkname;
  adojieguasicdate.asstring:=datetostr(date);
  Windows.Beep(2500, 100);
end;

procedure Tformcard.ADOguasiBeforePost(DataSet: TDataSet);
begin
  adoguasi.Edit;
  adoguasioperator.asstring:=pubworkname;
  adoguasicdate.asstring:=datetostr(date);
  Windows.Beep(2500, 100);
end;

procedure Tformcard.DBGrid7TitleClick(Column: TColumn);
begin
    if s='DESC' then
     s:='ASC'
   else
     s:='DESC';
   tadodataset(dbgrid7.DataSource.DataSet).Sort :=column.FieldName+' '+s;

end;

procedure Tformcard.DBGrid8TitleClick(Column: TColumn);
begin
    if s='DESC' then
     s:='ASC'
   else

⌨️ 快捷键说明

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