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

📄 atddealrep.pas

📁 pasa人力资源考勤管理系统
💻 PAS
字号:
unit atddealrep;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, wwdbdatetimepicker, Db, ADODB, ppProd, ppClass, ppReport,
  ppComm, ppRelatv, ppDB, ppDBPipe, ppDBBDE, ppBands, ppCtrls, ppPrnabl,
  ppCache, ppVar;

type
  Tformatddealrep = class(TForm)
    GroupBox1: TGroupBox;
    Button1: TButton;
    Button2: TButton;
    Label1: TLabel;
    Label2: TLabel;
    wwDBDateTimePicker1: TwwDBDateTimePicker;
    ComboBox1: TComboBox;
    Label4: TLabel;
    wwDBDateTimePicker2: TwwDBDateTimePicker;
    Label5: TLabel;
    RadioButton1: TRadioButton;        
    DataSource1: TDataSource;
    ADODataSet1: TADODataSet;
    ppBDEPipeline1: TppBDEPipeline;
    ppReport1: TppReport;
    ppHeaderBand1: TppHeaderBand;
    ppDetailBand1: TppDetailBand;
    ppFooterBand1: TppFooterBand;
    ppDBText1: TppDBText;
    ppLabel2: TppLabel;
    ppDBText2: TppDBText;
    ppLabel3: TppLabel;
    ppDBText3: TppDBText;
    ppLabel4: TppLabel;
    ppDBText4: TppDBText;
    ppLabel5: TppLabel;
    ppDBText5: TppDBText;
    ppLabel6: TppLabel;
    ppDBText6: TppDBText;
    ppLabel7: TppLabel;
    ppDBText7: TppDBText;
    ppLabel8: TppLabel;
    ppDBText8: TppDBText;
    ppLabel9: TppLabel;
    ppDBText9: TppDBText;
    ppLabel10: TppLabel;
    ppDBText10: TppDBText;
    ppLabel11: TppLabel;
    ppDBText11: TppDBText;
    ppLabel12: TppLabel;
    ppDBText12: TppDBText;
    ppLabel13: TppLabel;
    ppLabel14: TppLabel;
    ppDBText14: TppDBText;
    ppLabel15: TppLabel;
    ppLabel1: TppLabel;
    ppLabel17: TppLabel;
    ppLabel18: TppLabel;
    ppSummaryBand1: TppSummaryBand;
    ppDBText13: TppDBText;
    ppLabel16: TppLabel;
    ppLabel19: TppLabel;
    ppLabel20: TppLabel;
    ppLabel21: TppLabel;
    ppLabel22: TppLabel;
    ppLabel23: TppLabel;
    ppLabel24: TppLabel;
    ppLabel25: TppLabel;
    ppLabel26: TppLabel;
    ppLabel27: TppLabel;
    ppLabel28: TppLabel;
    ppLabel29: TppLabel;
    ppSystemVariable1: TppSystemVariable;
    ppLabel30: TppLabel;
    ppSystemVariable2: TppSystemVariable;
    ppLine1: TppLine;
    RadioButton2: TRadioButton;
    DataSource2: TDataSource;
    ADODataSet2: TADODataSet;
    ppBDEPipeline2: TppBDEPipeline;
    ppReport2: TppReport;
    ppHeaderBand2: TppHeaderBand;
    ppDetailBand2: TppDetailBand;
    ppFooterBand2: TppFooterBand;
    ppDBText15: TppDBText;
    ppLabel32: TppLabel;
    ppDBText16: TppDBText;
    ppLabel33: TppLabel;
    ppDBText17: TppDBText;
    ppLabel34: TppLabel;
    ppDBText18: TppDBText;
    ppLabel35: TppLabel;
    ppDBText19: TppDBText;
    ppLabel36: TppLabel;
    ppLine2: TppLine;
    ppSummaryBand2: TppSummaryBand;
    ppLabel31: TppLabel;
    ppDBCalc1: TppDBCalc;
    ppDBCalc2: TppDBCalc;
    ppDBCalc3: TppDBCalc;
    ppLabel37: TppLabel;
    ppLabel38: TppLabel;
    ppLabel39: TppLabel;
    ppLabel40: TppLabel;
    ppLabel41: TppLabel;
    ppLabel42: TppLabel;
    ppLabel43: TppLabel;
    ppSystemVariable3: TppSystemVariable;
    ppLabel44: TppLabel;
    ppSystemVariable4: TppSystemVariable;
    RadioButton3: TRadioButton;
    RadioButton4: TRadioButton;
    DataSource3: TDataSource;
    ADODataSet3: TADODataSet;
    ppBDEPipeline3: TppBDEPipeline;
    ppReport3: TppReport;
    ppHeaderBand3: TppHeaderBand;
    ppDetailBand3: TppDetailBand;
    ppFooterBand3: TppFooterBand;
    ppDBText20: TppDBText;
    ppLabel46: TppLabel;
    ppDBText21: TppDBText;
    ppLabel47: TppLabel;
    ppDBText27: TppDBText;
    ppLabel53: TppLabel;
    ppLine3: TppLine;
    ppGroup1: TppGroup;
    ppGroupHeaderBand1: TppGroupHeaderBand;
    ppGroupFooterBand1: TppGroupFooterBand;
    ppLabel45: TppLabel;
    ppDBText30: TppDBText;
    ppLine4: TppLine;
    ppLabel56: TppLabel;
    ppLabel57: TppLabel;
    ppLabel58: TppLabel;
    ppLabel60: TppLabel;
    ppLabel61: TppLabel;
    ppLabel62: TppLabel;
    ppSystemVariable5: TppSystemVariable;
    ppLabel63: TppLabel;
    ppSystemVariable6: TppSystemVariable;
    ppLabel64: TppLabel;
    ppDBCalc4: TppDBCalc;
    ppDBCalc5: TppDBCalc;
    ppSummaryBand3: TppSummaryBand;
    ppLabel65: TppLabel;
    ppDBCalc6: TppDBCalc;
    ppDBCalc7: TppDBCalc;
    DataSource4: TDataSource;
    ADODataSet4: TADODataSet;
    ppBDEPipeline4: TppBDEPipeline;
    ppReport4: TppReport;
    ppHeaderBand4: TppHeaderBand;
    ppDetailBand4: TppDetailBand;
    ppFooterBand4: TppFooterBand;
    ppDBText31: TppDBText;
    ppLabel67: TppLabel;
    ppDBText32: TppDBText;
    ppLabel68: TppLabel;
    ppDBText33: TppDBText;
    ppLabel69: TppLabel;
    ppDBText34: TppDBText;
    ppLabel70: TppLabel;
    ppDBText35: TppDBText;
    ppLabel71: TppLabel;
    ppDBText36: TppDBText;
    ppLabel72: TppLabel;
    ppDBText37: TppDBText;
    ppLabel73: TppLabel;
    ppDBText38: TppDBText;
    ppLabel74: TppLabel;
    ppDBText40: TppDBText;
    ppLabel76: TppLabel;
    ppLabel66: TppLabel;
    ppLabel77: TppLabel;
    ppLabel78: TppLabel;
    ppLine5: TppLine;
    ppSummaryBand4: TppSummaryBand;
    ppLabel79: TppLabel;
    ppDBCalc8: TppDBCalc;
    ppDBCalc9: TppDBCalc;
    ppDBCalc10: TppDBCalc;
    ppDBCalc11: TppDBCalc;
    ppDBCalc12: TppDBCalc;
    ppDBCalc13: TppDBCalc;
    ppDBCalc15: TppDBCalc;
    ppLabel80: TppLabel;
    ppLabel81: TppLabel;
    ppLabel82: TppLabel;
    ppLabel83: TppLabel;
    ppSystemVariable7: TppSystemVariable;
    ppLabel84: TppLabel;
    ppSystemVariable8: TppSystemVariable;
    ppLabel48: TppLabel;
    ppDBText22: TppDBText;
    ppLabel49: TppLabel;
    ppDBText23: TppDBText;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ComboBox1Change(Sender: TObject);
    procedure ppReport1AfterPrint(Sender: TObject);
    procedure ppReport1PreviewFormCreate(Sender: TObject);
    procedure ppReport2AfterPrint(Sender: TObject);
    procedure ppReport2PreviewFormCreate(Sender: TObject);
    procedure ppReport3AfterPrint(Sender: TObject);
    procedure ppReport3PreviewFormCreate(Sender: TObject);
    procedure ppReport4AfterPrint(Sender: TObject);
    procedure ppReport4PreviewFormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  formatddealrep: Tformatddealrep;

implementation

uses datamol, main;
{$R *.DFM}

procedure Tformatddealrep.Button2Click(Sender: TObject);
begin
  close;
end;

procedure Tformatddealrep.Button1Click(Sender: TObject);
var qry:tadoquery;
begin
   if radiobutton1.checked then
   begin
     if (wwDBDateTimePicker1.Text <>'') and (wwDBDateTimePicker2.Text<>'') then
     begin
       adodataset1.Close;
       adodataset1.CommandText:='select * from atd32010 where musthours<>facthours and rq between convert(datetime,'''+wwDBDateTimePicker1.text+''') and convert(datetime,'''+wwDBDateTimePicker2.text+''')';
       adodataset1.Open;
       pplabel18.Caption:=wwDBDateTimePicker1.Text+'~~'+wwDBDateTimePicker2.Text;
     end else if (wwDBDateTimePicker1.Text ='') and (wwDBDateTimePicker2.Text ='') then
     begin
         adodataset1.Close;
         adodataset1.CommandText:='select * from atd32010 where musthours<>facthours ';
         adodataset1.Open;
         pplabel18.Caption:='';
     end;
     qry:=tadoquery.Create(self);
     qry.Connection:=datamod.Database1;
     qry.SQL.Text:='select count(workno) as num1 from atd32010 where late>0';
     qry.Open;
     pplabel19.Caption:=inttostr(qry.fieldbyname('num1').asinteger);
     qry.Close;
     qry.SQL.Text:='select count(workno) as num2 from atd32010 where early>0';
     qry.Open;
     pplabel21.Caption:=inttostr(qry.fieldbyname('num2').asinteger);
     qry.Close;
     qry.SQL.Text:='select count(workno) as num3 from atd32010 where musthours<>facthours and kuanggong>0';
     qry.Open;
     pplabel23.Caption:=inttostr(qry.fieldbyname('num3').asinteger);
     qry.Close;
     qry.SQL.Text:='select count(workno) as num4 from atd32010 where musthours<>facthours and leavehave>0';
     qry.Open;
     pplabel25.Caption:=inttostr(qry.fieldbyname('num4').asinteger);
     pplabel1.Caption:=companyname1;
     pplabel28.caption:=pubworkname;
     ppreport1.DeviceType:='Screen';
     ppreport1.Print;
   end;
   if radiobutton2.Checked then
   begin
     if (wwDBDateTimePicker1.Text<>'') and (wwDBDateTimePicker2.Text<>'') then
     begin
       adodataset2.close;
       adodataset2.CommandText:='select rq,dept,sum(facthours) as facthours,sum(isnull(eveninghours,0)) as eveninghours,sum(ot) as ot from vatd32010 where rq between convert(datetime,'''+wwDBDateTimePicker1.Text+''') and convert(datetime,'''+wwDBDateTimePicker2.Text+''') group by rq,dept order by rq';
       adodataset2.Open;
       pplabel39.Caption:=wwDBDateTimePicker1.Text+'~~'+wwDBDateTimePicker2.Text
     end else
     begin
      adodataset2.Close;
      adodataset2.CommandText:='select rq,dept,sum(facthours) as facthours,sum(isnull(eveninghours,0)) as eveninghours,sum(ot) as ot from vatd32010 group by rq,dept order by rq';
      adodataset2.Open;
      pplabel39.Caption:='';
     end;
     pplabel37.Caption:=companyname1;
     pplabel42.Caption:=pubworkname;
     ppreport2.DeviceType:='Screen';
     ppreport2.Print;
   end;
   if radiobutton4.Checked then
   begin
     if (wwDBDateTimePicker1.Text<>'') and (wwDBDateTimePicker2.Text<>'')  then
     begin
       adodataset3.close;
       adodataset3.CommandText:='select * from vatd32010 where ot>0 and rq between '''+datetostr(wwdbdatetimepicker1.date)+''' and '''+datetostr(wwdbdatetimepicker2.date)+''' order by dept,workno' ;
       adodataset3.Open;
       pplabel58.Caption:=wwDBDateTimePicker1.Text+'~~'+wwDBDateTimePicker2.Text
     end else
     begin
       adodataset3.Close;
       adodataset3.CommandText:='select * from vatd32010 where ot>0 order by dept,workno ';
       adodataset3.Open;
       pplabel58.Caption:='';
     end;
     pplabel56.Caption:=companyname1;
     pplabel61.Caption:=pubworkname;
     ppreport3.DeviceType:='Screen';
     ppreport3.Print;
   end;
   if radiobutton3.Checked then
   begin
     if (wwDBDateTimePicker1.Text<>'') and (wwDBDateTimePicker2.Text<>'') then
     begin
       datamod.Query1.close;
       datamod.Query1.SQL.text:='Exec rep_atdtotal '+datetostr(wwdbdatetimepicker1.date)+','+datetostr(wwdbdatetimepicker2.date)+' ';
       datamod.query1.execsql;
       adodataset4.close;
       adodataset4.CommandText:='select * from report_atdtotal where rq between convert(datetime,'''+wwDBDateTimePicker1.Text+''') and convert(datetime,'''+wwDBDateTimePicker2.Text+''')  order by rq';
       adodataset4.Open;
       pplabel78.Caption:=wwDBDateTimePicker1.Text+'~~'+wwDBDateTimePicker2.Text
     end else
     begin
       adodataset4.Close;
       adodataset4.CommandText:='select * from report_atdtotal order by rq';
       adodataset4.Open;
       pplabel78.Caption:='';
     end;
     pplabel66.Caption:=companyname1;
     pplabel82.Caption:=pubworkname;
     ppreport4.DeviceType:='Screen';
     ppreport4.Print;
   end;
end;

procedure Tformatddealrep.FormCreate(Sender: TObject);
begin
     wwDBDateTimePicker1.Date:=date;
     wwDBDateTimePicker2.Date:=date;
     with datamod.ADOQuery1 do
       begin
         close;
         sql.Clear;
         sql.add('select dno from pub05010');      // 部门
         open;
         while not eof do
            begin
              combobox1.Items.Add(fieldbyname('dno').asstring);
              next;
            end;
       end;
end;


procedure Tformatddealrep.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
   formatddealrep:=nil;
   action:=cafree;
end;

procedure Tformatddealrep.ComboBox1Change(Sender: TObject);
var aqy:tadoquery;
begin
  if length(trim(combobox1.text))<1 then
    begin
     label5.caption:='';
     exit;
    end;
   aqy:=Tadoquery.create(self);                     //判断部门编号输入的是否正确
   aqy.connection:=datamod.database1;
   aqy.sql.Clear;
   aqy.sql.Add('select * from pub05010 where dno='''+combobox1.text+'''');
   aqy.open;
   if aqy.eof then
     Application.messagebox('没有此部门','Warning',mb_ok+mb_iconwarning)
   else
     begin
       label5.Caption:=aqy.fieldbyname('dept').asstring;
       aqy.close;
       aqy.free;
     end;
end;

procedure Tformatddealrep.ppReport1AfterPrint(Sender: TObject);
begin
  adodataset1.Close;
end;

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

procedure Tformatddealrep.ppReport2AfterPrint(Sender: TObject);
begin
  adodataset2.Close;
end;

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

procedure Tformatddealrep.ppReport3AfterPrint(Sender: TObject);
begin
  adodataset3.Close;
end;

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

procedure Tformatddealrep.ppReport4AfterPrint(Sender: TObject);
begin
  adodataset4.Close;
end;

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

end.

⌨️ 快捷键说明

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