overtime.pas
来自「pasa人力资源考勤管理系统」· PAS 代码 · 共 867 行 · 第 1/2 页
PAS
867 行
unit overtime;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ImgList, ExtCtrls, DBCtrls, ComCtrls, ToolWin, Grids, DBGrids, StdCtrls,
Buttons, RXDBCtrl, DB, Menus, ADODB, Mask, ppBands, ppClass, ppCtrls,
ppReport, ppStrtch, ppSubRpt, ppVar, ppPrnabl, ppCache, ppDB, ppProd,
ppComm, ppRelatv, ppDBPipe, ppDBBDE;
type
TFormot = class(TForm)
ImageList1: TImageList;
ToolBar1: TToolBar;
ToolButton6: TToolButton;
tbnsort: TToolButton;
tbnfind: TToolButton;
tbnprint: TToolButton;
ToolButton4: TToolButton;
DBNavigator1: TDBNavigator;
Panel1: TPanel;
DBGrid1: TDBGrid;
Splitter2: TSplitter;
Panel3: TPanel;
Label9: TLabel;
Label14: TLabel;
DateTimePicker3: TDateTimePicker;
DateTimePicker4: TDateTimePicker;
Label15: TLabel;
Label16: TLabel;
ComboBox1: TComboBox;
MaskEdit1: TMaskEdit;
MaskEdit2: TMaskEdit;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
N4: TMenuItem;
N3: TMenuItem;
PopupMenu2: TPopupMenu;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
ppBDEPipeline1: TppBDEPipeline;
ppReport1: TppReport;
ppBDEPipeline2: TppBDEPipeline;
ppHeaderBand1: TppHeaderBand;
ppDetailBand1: TppDetailBand;
ppFooterBand1: TppFooterBand;
ppLabel1: TppLabel;
ppSystemVariable1: TppSystemVariable;
ppSystemVariable2: TppSystemVariable;
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;
ppLine1: TppLine;
ppLine2: TppLine;
ppSubReport1: TppSubReport;
ppChildReport1: TppChildReport;
ppTitleBand2: TppTitleBand;
ppDetailBand2: TppDetailBand;
ppDBText11: TppDBText;
ppLabel13: TppLabel;
ppDBText12: TppDBText;
ppLabel14: TppLabel;
ppDBText13: TppDBText;
ppLabel15: TppLabel;
ppDBText14: TppDBText;
ppLabel16: TppLabel;
ppDBText15: TppDBText;
ppLabel17: TppLabel;
ppSummaryBand1: TppSummaryBand;
ppLabel12: TppLabel;
ppDBCalc1: TppDBCalc;
ppGroup1: TppGroup;
ppGroupHeaderBand1: TppGroupHeaderBand;
ppGroupFooterBand1: TppGroupFooterBand;
ppLine3: TppLine;
ppLabel18: TppLabel;
ppLabel19: TppLabel;
ppLabel20: TppLabel;
ppVariable1: TppVariable;
ToolButton2: TToolButton;
ADOotman1: TADODataSet;
otman1: TDataSource;
ADOotman1startrq: TDateTimeField;
ADOotman1gotime: TStringField;
ADOotman1endrq: TDateTimeField;
ADOotman1outtime: TStringField;
ADOotman1decrease: TIntegerField;
ADOotman1hours: TBCDField;
ADOotman1otkind: TStringField;
ADOotman1items: TStringField;
ADOotman1cdate: TDateTimeField;
ADOotman1cardno: TStringField;
ADOotman1name: TStringField;
ADOotman1deptno: TStringField;
ADOotman1dept: TStringField;
ADOotman1prof: TStringField;
ADOotman1workno: TStringField;
ppReport2: TppReport;
ppHeaderBand2: TppHeaderBand;
ppDetailBand3: TppDetailBand;
ppFooterBand2: TppFooterBand;
ppLabel21: TppLabel;
ppLabel22: TppLabel;
ppLine4: TppLine;
ppDBText16: TppDBText;
ppDBText17: TppDBText;
ppDBText18: TppDBText;
ppDBText19: TppDBText;
ppDBText20: TppDBText;
ppLine8: TppLine;
ppLine14: TppLine;
ppLine15: TppLine;
ppLine16: TppLine;
ppLine17: TppLine;
ppLine18: TppLine;
ADODataSet1: TADODataSet;
ADODataSet1workno: TStringField;
ADODataSet1name: TStringField;
ADODataSet1hours1: TBCDField;
ADODataSet1hours2: TBCDField;
ADODataSet1hours3: TBCDField;
ppBDEPipeline3: TppBDEPipeline;
DataSource1: TDataSource;
ppLabel23: TppLabel;
ppLabel24: TppLabel;
ppLabel25: TppLabel;
ppLabel26: TppLabel;
ppLabel27: TppLabel;
ppLine5: TppLine;
ppLine6: TppLine;
ppColumnHeaderBand1: TppColumnHeaderBand;
ppColumnFooterBand1: TppColumnFooterBand;
ppLine7: TppLine;
ppLine9: TppLine;
ppLine10: TppLine;
ppLine11: TppLine;
ppLine12: TppLine;
ppLine13: TppLine;
ppLabel28: TppLabel;
ppLabel29: TppLabel;
ppLabel30: TppLabel;
ppLabel31: TppLabel;
ppLabel32: TppLabel;
ppLine19: TppLine;
ppLine20: TppLine;
ppLine21: TppLine;
ppLine22: TppLine;
ppLine23: TppLine;
ppLine24: TppLine;
ppLine25: TppLine;
ppLine26: TppLine;
ToolButton1: TToolButton;
Panel4: TPanel;
Label17: TLabel;
Label19: TLabel;
Label20: TLabel;
Animate1: TAnimate;
DateTimePicker5: TDateTimePicker;
BitBtn1: TBitBtn;
DateTimePicker6: TDateTimePicker;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
Splitter3: TSplitter;
DBGrid2: TDBGrid;
Panel2: TPanel;
Label4: TLabel;
Label10: TLabel;
Label11: TLabel;
Label13: TLabel;
Label1: TLabel;
Label2: TLabel;
Label18: TLabel;
Label5: TLabel;
Label21: TLabel;
Label22: TLabel;
Label23: TLabel;
Label33: TLabel;
Label25: TLabel;
Label26: TLabel;
Label27: TLabel;
Label28: TLabel;
DBEdit3: TDBEdit;
DBEdit8: TDBEdit;
DBCheckBox2: TDBCheckBox;
DBEdit10: TDBEdit;
DBEdit11: TDBEdit;
DBEdit12: TDBEdit;
DBCheckBox5: TDBCheckBox;
DBEdit14: TDBEdit;
DBEdit15: TDBEdit;
DBEdit16: TDBEdit;
DBEdit17: TDBEdit;
DBEdit18: TDBEdit;
DBCheckBox8: TDBCheckBox;
DBEdit20: TDBEdit;
DBEdit21: TDBEdit;
DBCheckBox11: TDBCheckBox;
DBEdit22: TDBEdit;
DBEdit24: TDBEdit;
DBEdit25: TDBEdit;
DBCheckBox14: TDBCheckBox;
DBCheckBox16: TDBCheckBox;
DBCheckBox17: TDBCheckBox;
DBCheckBox18: TDBCheckBox;
DBCheckBox19: TDBCheckBox;
DBCheckBox20: TDBCheckBox;
DBEdit9: TDBEdit;
DBEdit13: TDBEdit;
DBEdit19: TDBEdit;
DBEdit23: TDBEdit;
DBEdit26: TDBEdit;
DBEdit27: TDBEdit;
DBEdit28: TDBEdit;
DBEdit29: TDBEdit;
DBEdit30: TDBEdit;
DBEdit31: TDBEdit;
DBEdit32: TDBEdit;
DBEdit33: TDBEdit;
DBEdit34: TDBEdit;
DBEdit35: TDBEdit;
DBEdit36: TDBEdit;
DBEdit37: TDBEdit;
DBEdit38: TDBEdit;
DBEdit39: TDBEdit;
DBEdit40: TDBEdit;
DBEdit41: TDBEdit;
DBCheckBox3: TDBCheckBox;
DBCheckBox6: TDBCheckBox;
DBCheckBox9: TDBCheckBox;
DBCheckBox12: TDBCheckBox;
DBComboBox1: TDBComboBox;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
procedure N2Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure tbnfindClick(Sender: TObject);
procedure tbnsortClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure DBNavigator1BeforeAction(Sender: TObject;
Button: TNavigateBtn);
procedure DBGrid1TitleClick(Column: TColumn);
procedure DBGrid2TitleClick(Column: TColumn);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure DateTimePicker1CloseUp(Sender: TObject);
procedure DateTimePicker2CloseUp(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ComboBox1Exit(Sender: TObject);
procedure MaskEdit2Exit(Sender: TObject);
procedure DateTimePicker3CloseUp(Sender: TObject);
procedure DateTimePicker4CloseUp(Sender: TObject);
procedure ToolButton6Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N6Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure tbnprintClick(Sender: TObject);
procedure ppReport1PreviewFormCreate(Sender: TObject);
procedure ppReport1BeforePrint(Sender: TObject);
procedure DBGrid2MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure DBEdit4Exit(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure DBEdit5Exit(Sender: TObject);
procedure ppReport2PreviewFormCreate(Sender: TObject);
procedure ppReport2BeforePrint(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
manyfield:boolean;
findex:array[1..5] of integer;
fsort:array[1..5] of string;
fcount:0..5;
f:string; //排序的字段
whatdo:string; //表示该加班单目前的状态
public
{ Public declarations }
end;
var
Formot: TFormot;
implementation
uses datamol,main, publicfunction, changeschedefine,reportot, canfind,
Unit3;
{$R *.DFM}
procedure TFormot.FormClose(Sender: TObject; var Action: TCloseAction);
begin
with datamod do
begin
ADOotman.open;
adoot.close;
adootkind.close;
adopersonal.close;
end;
formot:=nil;
action:=cafree;
end;
procedure TFormot.DBGrid1KeyPress(Sender: TObject; var Key: Char);
var fmat1:string;
begin
if fmat='/' then
fmat1:=' / / ';
if fmat='-' then
fmat1:=' - - ';
dbgrid_keypress(sender,key);
//hxw-------------------2003/04/05
datamod.adoot.close;
datamod.adoot.Filtered :=false;
datamod.adoot.Filter :='';
datamod.adoot.Filtered:=true;
maskedit2.Text:=fmat1;
maskedit1.Text:=fmat1;
datamod.adoot.open;
//-----------------------hxw
end;
procedure TFormot.N2Click(Sender: TObject);
var i:integer;
begin
for i:=1 to fcount do
if dbgrid1.SelectedIndex =findex[i] then
begin
fsort[i]:='DESC';
exit;
end;
if fcount<5 then
begin
fcount:=fcount+1;
findex[fcount]:=dbgrid1.selectedindex;
fsort[fcount]:='DESC';
dbgrid1.Columns[dbgrid1.selectedindex].Color :=clgray;
end;
end;
//多人新增
procedure TFormot.ToolButton1Click(Sender: TObject);
begin
panel4.Visible:=true;
datetimepicker5.SetFocus;
end;
//多人新增
procedure TFormot.ToolButton4Click(Sender: TObject);
begin
close;
end;
procedure TFormot.Button1Click(Sender: TObject);
begin
//==============2003/04/16修改=============================
end;
procedure TFormot.tbnfindClick(Sender: TObject);
begin
//if assigned(formcanfind) then formcanfind.close;
findrecorder(adootman1,'Adootman1','vatd11011');
end;
procedure TFormot.tbnsortClick(Sender: TObject);
var i:1..5;
begin
if manyfield then
begin
manyfield:=false;
tbnsort.hint:='设定多字段排序';
popupmenu1.Items[0].Enabled :=false;
popupmenu1.Items[1].Enabled :=false;
popupmenu1.Items[2].Enabled :=false;
popupmenu1.Items[3].Enabled :=false;
end
else begin
manyfield:=true;
tbnsort.hint:='取消多字段排序'; //说明现在dbgrid1正处于多字段排序中
f:='';
popupmenu1.Items[0].Enabled :=true;
popupmenu1.Items[1].Enabled :=true;
popupmenu1.Items[2].Enabled :=true;
popupmenu1.Items[3].Enabled :=true;
fcount:=0;
for i:=1 to 5 do
begin
findex[i]:=0;
fsort[i]:='';
end;
end;
end;
procedure TFormot.N1Click(Sender: TObject);
var i:integer;
begin
for i:=1 to fcount do
if dbgrid1.SelectedIndex =findex[i] then
begin
fsort[i]:='ASC';
exit;
end;
if fcount<5 then
begin
fcount:=fcount+1;
findex[fcount]:=dbgrid1.selectedindex;
fsort[fcount]:='ASC';
dbgrid1.Columns[dbgrid1.selectedindex].Color :=clgray;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?