?? bm_zhiyuanu.pas
字號:
begin
str:=str+' and a.公司名稱 like "%'+dw.text+'%"' ;
end ;
if zw.Text <>'' then
begin
str:=str+' and c.職務 like "%'+zw.text+'%"' ;
end ;
if zc.Text <>'' then
begin
str:=str+' and c.職稱 like "%'+zc.text+'%"' ;
end ;
if sf.Text <>'' then
begin
str:=str+' and c.身份 like "%'+sf.text+'%"' ;
end ;
sql.Add(str);
open;
label32.Caption :='共查詢 '+inttostr(recordcount) +' 條記錄!';
sd:=fieldbyname('xingming').AsString ;
DBGrid1.Columns[0].Title.Caption:='公司名稱';
DBGrid1.Columns[0].Width :=60;
DBGrid1.Columns[1].Title.Caption:='部門';
DBGrid1.Columns[1].Width :=60;
DBGrid1.Columns[2].Title.Caption:='姓名';
DBGrid1.Columns[2].Width :=60;
DBGrid1.Columns[3].Title.Caption:='性別';
DBGrid1.Columns[3].Width :=30;
DBGrid1.Columns[4].Title.Caption:='出生年月';
DBGrid1.Columns[4].Width :=60;
DBGrid1.Columns[5].Title.Caption:='籍貫';
DBGrid1.Columns[5].Width :=60;
DBGrid1.Columns[6].Title.Caption:='學歷';
DBGrid1.Columns[6].Width :=60;
DBGrid1.Columns[7].Title.Caption:='職稱';
DBGrid1.Columns[7].Width :=60;
DBGrid1.Columns[8].Title.Caption:='職務';
DBGrid1.Columns[8].Width :=60;
DBGrid1.Columns[9].Title.Caption:='身份';
DBGrid1.Columns[9].Width :=60;
DBGrid1.Columns[10].Title.Caption:='調入公司時間';
DBGrid1.Columns[10].Width :=60;
DBGrid1.Columns[11].Title.Caption:='辦公電話';
DBGrid1.Columns[11].Width :=60;
DBGrid1.Columns[12].Title.Caption:='住宅電話';
DBGrid1.Columns[12].Width :=60;
DBGrid1.Columns[13].Title.Caption:='手機號碼';
DBGrid1.Columns[13].Width :=60;
DBGrid1.Columns[14].Title.Caption:='email';
DBGrid1.Columns[14].Width :=90;
end;
end;
procedure TBM_ZHIYUANF.readdata;
var sname,bianma:string;
begin
fid:=strtoint(DM.zhiyuan2.FieldByName('id').Text);
xingming.Text :=DM.zhiyuan2.FieldByName('公司名稱').Text ;
if DM.zhiyuan2.FieldByName('性別').Text='男' then cb1.ItemIndex :=0;
if DM.zhiyuan2.FieldByName('性別').Text='女' then cb1.ItemIndex :=1;
if DM.zhiyuan2.FieldByName('性別').Text='' then cb1.ItemIndex :=-1;
shengri.Text :=DM.zhiyuan2.FieldByName('出生時間').Text ;
jiguan.Text := DM.zhiyuan2.FieldByName('籍貫').Text ;
with dm.ADOQuery1 do
begin
close;
SQL.Clear ;
sname:='select 公司名稱,部門編碼 from zhiyuan where id=';
sname:=sname+DM.zhiyuan2.FieldByName('部門編碼').Text ;
sql.Add(sname);
open;
bumen.Text :=fields[0].Text ;
bianma:=fields[1].Text ;
end;
with dm.ADOQuery1 do
begin
close;
SQL.Clear ;
sname:='select 公司名稱 from zhiyuan where id='+bianma;
sql.Add(sname);
open;
//gongsi.Text :=fields[0].Text ;
gongsi.Text :=Fieldbyname('公司名稱').AsString ;
end;
xueli.Text := DM.zhiyuan2.FieldByName('學歷').Text ;
zhicheng.Text :=DM.zhiyuan2.FieldByName('職稱').Text ;
shenfen.Text := DM.zhiyuan2.FieldByName('身份').Text ;
zhiwu.Text := DM.zhiyuan2.FieldByName('職務').Text ;
memo.Text := DM.zhiyuan2.FieldByName('備注').Text ;
diaoru.Text :=DM.zhiyuan2.FieldByName('調入公司時間').Text ;
email.Text :=DM.zhiyuan2.FieldByName('email').Text ;
bangong.Text :=DM.zhiyuan2.FieldByName('辦公電話').Text ;
zhuzhai.Text :=DM.zhiyuan2.FieldByName('住宅電話').Text ;
shouji.Text :=DM.zhiyuan2.FieldByName('手機號碼').Text ;
heji.Text :=DM.zhiyuan2.FieldByName('工資合計').Text ;
//inttostr(strtoint(jichu.Text)+ strtoint(gangwei.Text)+strtoint(jiaban.Text)+strtoint(zhufang.Text));
/////////////////
readgongzi;
readdiaodong;
////////////
loadimage;
end;
procedure TBM_ZHIYUANF.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
inherited;
With DbGrid1 do
begin
if ((State = [gdSelected]) or (State = [gdSelected,gdFocused])) then
begin
Canvas.Font.Color := clYellow;
Canvas.Brush.Color := clNavy;
end
else
begin
if DataCol mod 2 <> 0 then Canvas.Brush.Color := clWhite
else Canvas.Brush.Color := $00EAEAEA;
end;
DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;
procedure TBM_ZHIYUANF.DBGrid1DblClick(Sender: TObject);
var i,j,k:integer;
mynode: Ttreenode;
mytree:Ttreeview;
mynode2:Ttreenode;
begin
DM.zhiyuan2.Close;
DM.zhiyuan2.Open ;
if sd='' then exit;
DM.zhiyuan2.Locate('公司名稱',sd ,[]);
readdata;
TabbedNotebook1.PageIndex :=0;
SpeedButton1.Enabled :=true;
SpeedButton11.Enabled :=true;
SpeedButton2.Enabled :=true;
SpeedButton3.Enabled :=true;
SpeedButton18.Enabled :=true;
SpeedButton16.Enabled :=true;
SpeedButton8.Enabled :=true;
SpeedButton20.Enabled :=true;
SpeedButton19.Enabled :=true;
SpeedButton17.Enabled :=true;
TreeView1.FullCollapse ;
for i:=0 to TreeView1.Items.Count - 1 do
begin
if treeview1.Items.Item[i].Text =trim(dbgrid1.Fields[0].AsString) then
begin
TreeView1.Items.Item[i].Selected :=true;
mynode:=TreeView1.Items.Item[i];
TreeView1.Items.Item[i].Focused:=true;
begin
for j:=0 to mynode.Count -1 do
begin
if mynode.Item[j].Text =trim(dbgrid1.Fields[1].AsString) then
begin
mynode2:=TreeView1.Items.Item[i].Item[j];
mynode2.Expanded:=true;
for k:=0 to mynode2.Count-1 do
begin
if mynode2.Item[k].Text =trim(dbgrid1.Fields[2].AsString) then
begin
TreeView1.Items.Item[i].Item[j].Item[k].Selected:=true;
TreeView1.SetFocus;
TreeView1.Selected.Selected := True;
exit;
end;
end;
end;
end;
end;
end;
end;
label55.Caption :='職員:【'+dbgrid1.Fields[2].AsString+'】';
label28.Caption :='職員:【'+dbgrid1.Fields[2].AsString+'】';
end;
procedure TBM_ZHIYUANF.jichuKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [chr(8),chr(13),'0','1','2','3','4','5','6','7','8','9','.']) then key:=#0;
IF KEY=#13 THEN
begin
if jichu.Text ='' then jichu.Text :='0';
gangwei.SetFocus ;
end;
end;
procedure TBM_ZHIYUANF.gangweiKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [chr(8),chr(13),'0','1','2','3','4','5','6','7','8','9']) then key:=#0;
IF KEY=#13 THEN
begin
if gangwei.Text='' then gangwei.Text :='0';
jiaban.SetFocus ;
end;
end;
procedure TBM_ZHIYUANF.jiabanKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [chr(8),chr(13),'0','1','2','3','4','5','6','7','8','9']) then key:=#0;
IF KEY=#13 THEN
begin
if jiaban.Text ='' then jiaban.Text :='0';
zhufang.SetFocus ;
end;
end;
procedure TBM_ZHIYUANF.zhufangKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [chr(8),chr(13),'0','1','2','3','4','5','6','7','8','9']) then key:=#0;
IF KEY=#13 THEN
begin
if zhufang.Text ='' then zhufang.Text :='0';
xiaoyi.SetFocus ;
//count;
end;
end;
procedure TBM_ZHIYUANF.xiaoyiKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [chr(8),chr(13),'0','1','2','3','4','5','6','7','8','9']) then key:=#0;
IF KEY=#13 THEN
begin
if xiaoyi.Text ='' then xiaoyi.Text :='0';
diqu.SetFocus ;
end;
end;
procedure TBM_ZHIYUANF.diquKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [chr(8),chr(13),'0','1','2','3','4','5','6','7','8','9']) then key:=#0;
IF KEY=#13 THEN
begin
if diqu.Text ='' then diqu.Text :='0';
gongling.SetFocus ;
end;
end;
procedure TBM_ZHIYUANF.count;
var cu:integer;
begin
if jichu.Text='' then jichu.Text:='0';
if gangwei.Text='' then gangwei.Text:='0';
if jiaban.Text='' then jiaban.Text:='0';
if zhufang.Text='' then zhufang.Text:='0';
if xiaoyi.Text='' then xiaoyi.Text:='0';
if diqu.Text='' then diqu.Text:='0';
if gongling.Text='' then gongling.Text:='0';
if qita.Text='' then qita.Text:='0';
if shijian.Text='' then shijian.Text:=datetostr(date);
cu:=strtoint(jichu.Text)+strtoint(gangwei.Text)+strtoint(jiaban.Text)+ strtoint(zhufang.Text);
jichuheji.Text :=inttostr(cu);
cu:=cu+strtoint(xiaoyi.Text)+strtoint(diqu.Text);
cu:=cu+ strtoint(gongling.Text)+ strtoint(qita.Text);
heji.Text :=inttostr(cu);
end;
procedure TBM_ZHIYUANF.gonglingKeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [chr(8),chr(13),'0','1','2','3','4','5','6','7','8','9']) then key:=#0;
IF KEY=#13 THEN
begin
if gongling.Text ='' then gongling.Text :='0';
qita.SetFocus ;
end;
end;
procedure TBM_ZHIYUANF.xingmingKeyPress(Sender: TObject; var Key: Char);
begin
IF KEY=#13 THEN cb1.SetFocus ;
end;
procedure TBM_ZHIYUANF.jiguanKeyPress(Sender: TObject; var Key: Char);
begin
IF KEY=#13 THEN xueli.SetFocus ;
end;
procedure TBM_ZHIYUANF.bangongKeyPress(Sender: TObject; var Key: Char);
begin
IF KEY=#13 THEN zhuzhai.SetFocus ;
end;
procedure TBM_ZHIYUANF.zhuzhaiKeyPress(Sender: TObject; var Key: Char);
begin
IF KEY=#13 THEN shouji.SetFocus ;
end;
procedure TBM_ZHIYUANF.shoujiKeyPress(Sender: TObject; var Key: Char);
begin
IF KEY=#13 THEN memo.SetFocus ;
end;
procedure TBM_ZHIYUANF.MemoKeyPress(Sender: TObject; var Key: Char);
begin
IF KEY=#13 THEN
begin
//TabbedNotebook1.PageIndex :=1;
//jichu.SetFocus ;
end;
end;
procedure TBM_ZHIYUANF.hejiKeyPress(Sender: TObject; var Key: Char);
begin
//TabbedNotebook1.PageIndex :=2;
// ds.SetFocus ;
end;
procedure TBM_ZHIYUANF.dsKeyPress(Sender: TObject; var Key: Char);
begin
IF KEY=#13 THEN
begin
//dg.Text :=datetostr(date);
dg.SetFocus ;
end;
end;
procedure TBM_ZHIYUANF.SpeedButton18Click(Sender: TObject);
begin
AORE:=true;
//if vv=0 then
//begin
//showmessage('dd');
//exit ;
// end
//else
//begin
//TreeView1.GetSelections()
jichu.Enabled :=true;
gangwei.Enabled :=true;
jiaban.Enabled :=true;
zhufang.Enabled :=true;
xiaoyi.Enabled :=true;
diqu.Enabled :=true;
gongling.Enabled :=true;;
qita.Enabled :=true;
shijian.Enabled :=true;
////
jichu.Text :='';
gangwei.Text :='';
jiaban.Text :='';
zhufang.Text :='';
xiaoyi.Text :='';
diqu.Text :='';
gongling.Text :='';
qita.Text :='';
heji.Text :='';
shijian.Text :=datetostr(date);
jichu.SetFocus ;
///
SpeedButton22.Enabled :=true;
SpeedButton21.Enabled :=true;
SpeedButton18.Enabled :=false;
SpeedButton16.Enabled :=false;
SpeedButton8.Enabled :=false;
///
//end;
end;
procedure TBM_ZHIYUANF.SpeedButton16Click(Sender: TObject);
begin
AORE:=false;
jichu.Enabled :=true;
gangwei.Enabled :=true;
jiaban.Enabled :=true;
zhufang.Enabled :=true;
xiaoyi.Enabled :=true;
diqu.Enabled :=true;
gongling.Enabled :=true;
qita.Enabled :=true;
shijian.Enabled :=true;
SpeedButton16.Enabled :=false;
SpeedButton18.Enabled :=false;
SpeedButton8.Enabled :=false;
SpeedButton21.Enabled :=true;
SpeedButton22.Enabled :=true;
end;
procedure TBM_ZHIYUANF.SpeedButton21Click(Sender: TObject);
var SqlTmp:string;
begin
count;
if AORE=false then
begin
with dm.qryRun do
begin
Close;
SQL.Text := ' update 工資 set 基本工資 = "' + jichu.Text + '",'
+ '崗位工資="' +gangwei.Text +'",'
+ '加班工資="' +jiaban.Text +'",'
+ '住房補貼="' +zhufang.Text +'",'
+ '效益工資="' +xiaoyi.Text +'",'
+ '地區補貼="' +xiaoyi.Text +'",'
+ '變更日期="' +shijian.Text +'",'
+ '其他="' +qita.Text +'",'
+ '工資合計="' +heji.Text +'",'
+ '工齡補貼="' +gongling.Text +'"'
+ ' where id='+s2 +' and id2='+inttostr(fid) ;
Prepared := True;
ExecSQL;
end;
end
else
begin
WITH DM.qryRun do
begin
SqlTmp:='INSERT INTO 工資(id2,基本工資,崗位工資,加班工資,住房補貼,效益工資,地區補貼,工齡補貼,其他,變更日期,工資合計)';
SqlTmp:=SqlTmp+' VALUES (' + inttostr(fid)+',"';
SqlTmp:=SqlTmp+jichu.Text+'","';
SqlTmp:=SqlTmp+gangwei.Text+'","';
SqlTmp:=SqlTmp+jiaban.Text+'","';
SqlTmp:=SqlTmp+zhufang.Text+'","';
SqlTmp:=SqlTmp+xiaoyi.Text+'","';
SqlTmp:=SqlTmp+diqu.Text+'","';
SqlTmp:=SqlTmp+gongling.Text+'","';
SqlTmp:=SqlTmp+qita.Text+'","';
SqlTmp:=SqlTmp+shijian.Text+'","';
SqlTmp:=SqlTmp+heji.Text+'")';
close;
sql.Clear ;
sql.Add(SqlTmp);
ExecSQL ;
end;
end;
with aq1 do
begin
close;
SQL.Clear ;
SqlTmp:='select id,id2,變更日期,基本工資,崗位工資,加班工資,住房補貼,效益工資,地區補貼,工齡補貼,其他 from 工資 where id2=';
SqlTmp:=SqlTmp+inttostr(fid)+' order by 變更日期 desc';
sql.Add(SqlTmp);
open;
end;
readgongzi;
SpeedButton16.Enabled :=true;
SpeedButton18.Enabled :=true;
SpeedButton8.Enabled :=true;
SpeedButton21.Enabled :=false;
SpeedButton22.Enabled :=false;
//////
jichu.Enabled :=false;
gangwei.Enabled :=false;
jiaban.Enabled :=false;
zhufang.Enabled :=false;
xiaoyi.Enabled :=false;
diqu.Enabled :=false;
gongling.Enabled :=false;
qita.Enabled :=false;
shijian.Enabled :=false;
end;
procedure TBM_ZHIYUANF.SpeedButton22Click(Sender: TObject);
begin
jichu.Enabled :=false;
gangwei.Enabled :=false;
jiaban.Enabled :=false;
zhufang.Enabled :=false;
xiaoyi.Enabled :=false;
diqu.Enabled :=false;
gongling.Enabled :=false;
qita.Enabled :=false;
shijian.Enabled :=false;
SpeedButton16.Enabled :=true;
SpeedButton18.Enabled :=true;
SpeedButton8.Enabled :=true;
SpeedButton21.Enabled :=false;
SpeedButton22.Enabled :=false;
readgongzi;
end;
procedure TBM_ZHIYUANF.SpeedButton17Click(Sender: TObject);
begin
s2:=aq2.FieldByName('id').AsString ;
if MessageBox(0, '你確定刪除該條記錄嗎?', '提示', MB_YESNO + MB_ICONQUESTION) =IDYES then
begin
with dm.qryRun do
begin
Close;
SQL.Text := ' delete from 調動 where ID ='+ s2;
ExecSQL;
end;
readdiaodong;
end;
end;
procedure TBM_ZHIYUANF.SpeedButton8Click(Sender: TObject);
begin
if MessageBox(0, '你確定刪除該條記錄嗎?', '提示', MB_YESNO + MB_ICONQUESTION) =IDYES then
begin
with dm.qryRun do
begin
Close;
SQL.Text := ' delete from 工資 where ID ='+ s2;
ExecSQL;
end;
readgongzi;
end;
end;
procedure TBM_ZHIYUANF.DBGrid2DblClick(Sender: TObject);
var sname:string;
begin
//s2:=inttostr(DBGrid2.Fields[0].asinteger);
s2:=aq1.FieldByName('id').AsString ;
with cha do
begin
close;
SQL.Clear ;
sname:='select id,id2,變更日期,基本工資,崗位工資,加班工資,住房補貼,效益工資,地區補貼,工齡補貼,其他 from 工資 ';
sname:=sname +'where id='+s2 ;
sname:=sname +' order by 變更日期 desc' ;
sql.Add(sname);
open;
jichu.Text :=FieldByName('基本工資').AsString ;
gangwei.Text :=FieldByName('崗位工資').AsString ;
jiaban.Text :=FieldByName('加班工資').AsString ;
zhufang.Text :=FieldByName('住房補貼').AsString ;
xiaoyi.Text :=FieldByName('效益工資').AsString ;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -