📄 profmove.pas
字号:
begin
for i:=1 to fcount do
dbgrid.Columns[findex[i]].Color :=clwindow;
end;
fcount:=0;
end;
db:=pagecontrol1.ActivePageIndex;
dbgrid:=tdbgrid(findcomponent('dbgrid'+inttostr(db+1)));
with dbgrid do
begin
for i:=1 to fcount do
if dbgrid.SelectedIndex =findex[i] then
begin
fsort[i]:='DESC';
exit;
end;
if fcount<5 then
begin
fcount:=fcount+1;
findex[fcount]:=dbgrid.selectedindex;
fsort[fcount]:='DESC';
dbgrid.Columns[dbgrid.selectedindex].Color :=clgray;
end;
end;
end;
procedure TFormprofmove.N3Click(Sender: TObject);
var i:1..5;
dbgrid:Tdbgrid;
begin
dbgrid:=tdbgrid(findcomponent('dbgrid'+inttostr(pagecontrol1.ActivePageIndex+1)));
with dbgrid do
begin
for i:=1 to fcount do
dbgrid.Columns[findex[i]].Color :=clwindow;
end;
fcount:=0;
end;
procedure TFormprofmove.N4Click(Sender: TObject);
var i:1..5;
sortexp:string;
dbgrid:Tdbgrid;
begin
if db<>pagecontrol1.ActivePageIndex then
begin
dbgrid:=tdbgrid(findcomponent('dbgrid'+inttostr(db+1)));
with dbgrid do
begin
for i:=1 to fcount do
dbgrid.Columns[findex[i]].Color :=clwindow;
end;
fcount:=0;
exit;
end;
sortexp:='';
for i:=1 to fcount do
begin
if dbgrid1.Columns[findex[i]].Color=clgray then
begin
sortexp :=sortexp+dbgrid1.Columns[findex[i]].FieldName+' '+fsort[i];
if i<fcount then sortexp:=sortexp+',';
end;
end;
if sortexp<>'' then datamod.ADOadvance.Sort :=sortexp;
end;
procedure TFormprofmove.PageControl1Changing(Sender: TObject;
var AllowChange: Boolean);
begin
(Sender as TPageControl).ActivePage.highlighted:=false;
end;
procedure TFormprofmove.FormKeyPress(Sender: TObject; var Key: Char);
begin
if (activecontrol=dbgrid1) or (activecontrol=dbgrid2) or (activecontrol=dbgrid3) then
exit;
if key=#13 then //窗体内的回车键的控制
begin
key:=#0;
if activecontrol=dbedit9 then
begin
if datamod.Adoadvance.State =dsinsert then
begin
datamod.Adoadvance.Post;
datamod.Adoadvance.Append;
end;
dbedit1.SetFocus;
end
else
selectnext(activecontrol,true,true);
end;
end;
procedure TFormprofmove.DateTimePicker1CloseUp(Sender: TObject);
begin
datamod.Adoadvance.FieldByName('usefuldate').asstring:=datetostr(datetimepicker1.Date);
dbedit9.setfocus;
end;
procedure TFormprofmove.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=VK_F1 then
begin
Application.HelpFile :=Extractfilepath(application.ExeName)+ 'help\pasahelp.hlp';
application.HelpJump('SHM_contents0011');
end;
end;
procedure TFormprofmove.tbnprintClick(Sender: TObject);
begin
if not assigned(reportforprof) then
reportforprof:=Treportforprof.create(self);
reportforprof.show;
end;
procedure TFormprofmove.ToolButton3Click(Sender: TObject);
begin
with datamod.adoadvance do
begin
filtered:=false;
filter:='';
close;
commandtext:='select * from per21010 where movekind='''+inttostr(pagecontrol1.activepageindex)+''' ';
open;
end;
end;
procedure TFormprofmove.wwDBLookupCombo1Exit(Sender: TObject);
var aqy:Tadoquery;
begin
if length(trim(wwDBLookupCombo1.text))<1 then exit;
aqy:=Tadoquery.create(self); //判断部门编号输入的是否正确
aqy.connection:=datamod.database1;
aqy.sql.Clear;
aqy.sql.Add('select * from pub05010 where dno='''+wwDBLookupCombo1.text+'''');
aqy.open;
//datamod.Adoadvance.Close;
//datamod.Adoadvance.CommandText:='select * from per21010 order by dept,workno';
//datamod.Adoadvance.Open;
if aqy.eof then
begin
Application.Messagebox('没有此部门','Warning',mb_ok+mb_iconwarning);
end else
begin
datamod.Adoadvance.Edit;
aqy.Edit;
datamod.Adoadvance.fieldbyname('deptname').asstring:=aqy.fieldbyname('dept').asstring;
end;
aqy.close;
aqy.free;
end;
procedure TFormprofmove.wwDBLookupCombo1KeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
if key=VK_Down then
(Sender as Twwdblookupcombo).dropdown;
end;
procedure TFormprofmove.DBNavigator1BeforeAction(Sender: TObject;
Button: TNavigateBtn);
begin
if (button=nbinsert) or (button=nbedit) then
dbedit1.setfocus;
end;
procedure TFormprofmove.FormCreate(Sender: TObject);
begin
getdbgridwidth(dbgrid1,'p'+'profmove');
getdbgridwidth(dbgrid2,'p'+'profmove');
getdbgridwidth(dbgrid3,'p'+'profmove');
datamod.Adoadvance.open;
pagecontrol1.ActivePageIndex :=0;
pagecontrol1.OnChange(pagecontrol1);
db:=pagecontrol1.ActivePageIndex;
with datamod do
begin
adodept.open;
adoprof.open;
end;
datetimepicker1.Date:=date;
Datetimepicker2.Date :=date ;
Datetimepicker3.Date :=date ;
Datetimepicker4.Date :=date ;
Datetimepicker5.Date :=date ;
Datetimepicker6.Date :=date ;
Datetimepicker7.Date :=date ;
datamod.ADOpersonal.Active:=true;
end;
procedure TFormprofmove.Edit2Exit(Sender: TObject);
begin
Datamod.Adoadvance.close;
if trim((Sender as TEdit).text)<>'' then
Datamod.Adoadvance.commandtext:='select * from per21010 where movekind='''+inttostr(pagecontrol1.activepageindex)+''' and (workno='''+(Sender as TEdit).text+''' or cardno='''+(Sender as TEdit).text+''' or name='''+(Sender as TEdit).text+''') ';
Datamod.Adoadvance.open;
end;
procedure TFormprofmove.MaskEdit2Exit(Sender: TObject);
var fmat1:string;
begin
if fmat='/' then
fmat1:=' / / ';
if fmat='-' then
fmat1:=' - - ';
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;
end
else begin
Datamod.Adoadvance.close;
Datamod.Adoadvance.commandtext:='select * from per21010 where movekind=''0'' and (usefuldate<='''+maskedit2.text+''' and usefuldate>='''+maskedit1.text+''') ';
Datamod.Adoadvance.open;
end;
end;
procedure TFormprofmove.MaskEdit4Exit(Sender: TObject);
var fmat1:string;
begin
if fmat='/' then
fmat1:=' / / ';
if fmat='-' then
fmat1:=' - - ';
if maskedit4.text<>fmat1 then
if (not isdate(maskedit3.Text)) or (not isdate(maskedit4.text)) then
begin
Application.MessageBox('对不起,您输入的不是有效日期','Warning',mb_ok+mb_iconwarning);
maskedit3.SetFocus;
end
else begin
Datamod.Adoadvance.close;
Datamod.Adoadvance.commandtext:='select * from per21010 where movekind=''1'' and (usefuldate<='''+maskedit4.text+''' and usefuldate>='''+maskedit3.text+''') ';
Datamod.Adoadvance.open;
end;
end;
procedure TFormprofmove.MaskEdit6Exit(Sender: TObject);
var fmat1:string;
begin
if fmat='/' then
fmat1:=' / / ';
if fmat='-' then
fmat1:=' - - ';
if maskedit6.text<>fmat1 then
if (not isdate(maskedit6.Text)) or (not isdate(maskedit5.text)) then
begin
Application.MessageBox('对不起,您输入的不是有效日期','Warning',mb_ok+mb_iconwarning);
maskedit5.SetFocus;
end
else begin
Datamod.Adoadvance.close;
Datamod.Adoadvance.commandtext:='select * from per21010 where movekind=''3'' and (usefuldate<='''+maskedit6.text+''' and usefuldate>='''+maskedit5.text+''') ';
Datamod.Adoadvance.open;
end;
end;
procedure TFormprofmove.DateTimePicker2CloseUp(Sender: TObject);
begin
Maskedit1.Text :=datetostr(datetimepicker2.date) ;
end;
procedure TFormprofmove.DateTimePicker5CloseUp(Sender: TObject);
begin
Maskedit2.Text :=datetostr(datetimepicker5.date) ;
end;
procedure TFormprofmove.DateTimePicker3CloseUp(Sender: TObject);
begin
Maskedit3.Text :=datetostr(datetimepicker3.date) ;
end;
procedure TFormprofmove.DateTimePicker4CloseUp(Sender: TObject);
begin
Maskedit4.Text :=datetostr(datetimepicker4.date) ;
end;
procedure TFormprofmove.DateTimePicker6CloseUp(Sender: TObject);
begin
Maskedit5.Text :=datetostr(datetimepicker6.date) ;
end;
procedure TFormprofmove.DateTimePicker7CloseUp(Sender: TObject);
begin
Maskedit6.Text :=datetostr(datetimepicker7.date) ;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -