u_dasjlr_dgcx.pas
来自「人事管理程序源码」· PAS 代码 · 共 1,016 行 · 第 1/3 页
PAS
1,016 行
cx_qt.Text:='';
cx_csrq.Text:='';
cx_gzsj.Text:='';
cx_rdsj.Text:='';
cx_rylx.Text:='';
cx_byyxjzy_dyxl.text:='';
cx_byyxjzy_xxl.text:='';
cx_gzze.Text:='0.00';
dbimage1.Refresh ;
image1.Picture.Assign(image4.Picture);
panel4.Refresh;
end;
procedure TForm_dasjlr_dgcx.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
Key := #0;
Perform(WM_NEXTDLGCTL,0,0);
end;
end;
procedure TForm_dasjlr_dgcx.cx_qtExit(Sender: TObject);
begin
bitbtn3.SetFocus;
end;
procedure TForm_dasjlr_dgcx.BitBtn3Click(Sender: TObject);
begin
if sjjy then
begin
SaveToDisk; //存盘
RadioButton1.Checked :=true;
end;
end;
procedure TForm_dasjlr_dgcx.OpenDateSet(pxfs:string);
begin
with gzda_dm.ADODataSet1 do begin
DisableControls;
if active then active:=false;
commandtext:='select * from zgdab where zgxh like :qxh ';
Parameters.ParamByName('qxh').Value:='%'+pxfs+'%';
open;
first;
enableControls;
DisplayToScreen;
dbgrid1.SetFocus;
panel4.Refresh ;
end;
end;
//==
function TForm_dasjlr_dgcx.sjjy:boolean;
var
bz:boolean;
begin
bz:=true;
if cx_xm.Text='' then
begin
showmessage('姓名不能为空!!');
cx_xm.SetFocus;
bz:=false;
sjjy:=bz;
exit;
end;
if cx_xb.Text='' then
begin
showmessage('性别不能为空!!');
cx_xb.SetFocus;
bz:=false;
sjjy:=bz;
exit;
end;
if cx_mz.Text='' then
begin
showmessage('民族不能为空!!');
cx_mz.SetFocus;
bz:=false;
sjjy:=bz;
exit;
end;
end;
//==
procedure TForm_dasjlr_dgcx.SaveToDisk;
begin
with gzda_dm.ADODataSet1 do begin
edit;
fieldbyname('zgxh').AsString:=cx_bh.Text;
fieldbyname('xm').AsString:=cx_xm.Text;
fieldbyname('cym').AsString:=cx_cym.Text;
fieldbyname('xb').AsString:=cx_xb.Text;
fieldbyname('mz').AsString:=cx_mz.Text;
fieldbyname('zzmm').AsString:=cx_zzmm.Text;
fieldbyname('sf').AsString:=cx_sf.Text;
fieldbyname('csrq').AsString:=cx_csrq.text;
fieldbyname('rdsj').AsString:=cx_rdsj.Text;
fieldbyname('gzsj').AsString:=cx_gzsj.Text;
fieldbyname('sfz').AsString:=cx_sfz.Text;
fieldbyname('gzdw').AsString:=cx_gzdw.Text;
fieldbyname('gw').AsString:=cx_gw.Text;
fieldbyname('zw').AsString:=cx_zw.Text;
fieldbyname('dyxl').AsString:=cx_dyxl.Text;
fieldbyname('xxl').AsString:=cx_xxl.Text;
fieldbyname('zc').AsString:=cx_zc.Text;
fieldbyname('jkzk').AsString:=cx_jkzk.Text;
fieldbyname('hyzk').AsString:=cx_hyzk.Text;
fieldbyname('gzdc').AsString:=cx_gzdc.Text;
fieldbyname('jg').AsString:=cx_jg.Text;
fieldbyname('dacfd').AsString:=cx_dacfd.Text;
fieldbyname('hkszd').AsString:=cx_hkszd.Text;
fieldbyname('qt').AsString:=cx_qt.Text;
fieldbyname('rylx').AsString:=cx_rylx.Text;
fieldbyname('byyxjzy_dyxl').AsString:=cx_byyxjzy_dyxl.Text;
fieldbyname('byyxjzy_xxl').AsString:=cx_byyxjzy_xxl.Text;
fieldbyname('gzze').AsString:=cx_gzze.Text;
FieldByName('zp').Assign(image1.Picture);
post;
UpdateBatch(arCurrent);
end;
bitbtn3.Enabled :=false;
panel4.Refresh;
dbgrid1.Refresh;
end;
procedure TForm_dasjlr_dgcx.DisplayToScreen;
begin
with gzda_dm.ADODataSet1 do begin
cx_bh.Text:=fieldbyname('zgxh').AsString;
cx_xm.Text:=fieldbyname('xm').AsString;
cx_cym.Text:=fieldbyname('cym').AsString;
cx_xb.Text:=fieldbyname('xb').AsString;
cx_mz.Text:=fieldbyname('mz').AsString;
cx_zzmm.Text:=fieldbyname('zzmm').AsString;
cx_sf.Text:=fieldbyname('sf').AsString;
cx_csrq.text:=fieldbyname('csrq').AsString;
cx_rdsj.Text:=fieldbyname('rdsj').AsString;
cx_gzsj.Text:=fieldbyname('gzsj').AsString;
cx_sfz.Text:=fieldbyname('sfz').AsString;
cx_gzdw.Text:=fieldbyname('gzdw').AsString;
cx_gw.Text:=fieldbyname('gw').AsString;
cx_zw.Text:=fieldbyname('zw').AsString;
cx_dyxl.Text:=fieldbyname('dyxl').AsString;
cx_xxl.Text:=fieldbyname('xxl').AsString;
cx_zc.Text:=fieldbyname('zc').AsString;
cx_jkzk.Text:=fieldbyname('jkzk').AsString;
cx_hyzk.Text:=fieldbyname('hyzk').AsString;
cx_gzdc.Text:=fieldbyname('gzdc').AsString;
cx_jg.Text:=fieldbyname('jg').AsString;
cx_dacfd.Text:=fieldbyname('dacfd').AsString;
cx_hkszd.Text:=fieldbyname('hkszd').AsString;
cx_qt.Text:=fieldbyname('qt').AsString;
cx_rylx.Text:=fieldbyname('rylx').AsString;
cx_byyxjzy_dyxl.Text:=fieldbyname('byyxjzy_dyxl').AsString;
cx_byyxjzy_xxl.Text:=fieldbyname('byyxjzy_xxl').AsString;
cx_gzze.Text:=fieldbyname('gzze').AsString;
image1.Picture.Assign(fieldbyname('zp'));
dbimage1.Refresh ;
end;
RadioButton1.Checked :=true;
bitbtn3.Enabled :=false;
panel4.Enabled:=false;
panel4.Refresh;
dbgrid1.Refresh;
end;
procedure TForm_dasjlr_dgcx.DBGrid1CellClick(Column: TColumn);
begin
DisplayToScreen;
end;
procedure TForm_dasjlr_dgcx.RadioButton3Click(Sender: TObject);
var
ls_bh,ls_bh_str:string;
begin
cx_xg(true); //开
panel4.Enabled:=false;
xm_init; //清空各字段的值
czfs:=2;
with gzda_dm.ADODataSet1 do begin
if recordcount<>0 then
begin
last;
ls_bh:=inttostr(strtoint(copy(fieldbyname('zgxh').AsString,5,4))+1);
ls_bh_str:=copy(cx_dw.Text,1,2)+copy(cx_bm.Text,1,2)+copy('0000000',1,4-length(ls_bh))+ls_bh;
end
else
ls_bh_str:=copy(cx_dw.Text,1,2)+copy(cx_bm.Text,1,2)+'0001';
cx_bh.Text:=ls_bh_str;
if fieldbyname('xm').AsString<>'********' then
begin
Append;
fieldbyname('xm').AsString:='********';
fieldbyname('zgxh').AsString:=ls_bh_str;
post;
end;
end;
panel4.Enabled:=true;
cx_xm.SetFocus;
bitbtn3.Enabled :=true;
end;
procedure TForm_dasjlr_dgcx.DeleteNUll;
begin
with gzda_dm.ADODataSet1 do begin
if fieldbyname('xm').AsString='********' then
begin
delete;
dbgrid1.Refresh;
end;
end;
end;
procedure TForm_dasjlr_dgcx.DBGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
with gzda_dm.ADODataSet1 do begin
case key of
37,38:
if not bof then
begin
Prior;
DisplayToScreen;
next;
end;
39,40:
if not eof then
begin
next;
DisplayToScreen;
Prior;
end
end;
end;
end;
procedure TForm_dasjlr_dgcx.RadioButton4Click(Sender: TObject);
var
zgbh:integer;
begin
if Application.MessageBox('数据删除后不能再恢复,继续吗?','提示',MB_YesNO+ MB_DEFBUTTON2) <> IDYes then
begin
RadioButton1.Checked :=true;
Abort;
end;
if Application.MessageBox('确实要删除本条记录吗!?','提示',MB_YesNO+ MB_DEFBUTTON2) <> IDYes then
begin
RadioButton1.Checked :=true;
Abort;
end;
with gzda_dm.ADODataSet1 do begin
zgbh:=fieldbyname('zgbh').AsInteger;
delete;
UpdateBatch(arALL);
DisplayToscreen;
end;
dbgrid1.Refresh;
with gzda_dm.ADOCommand1 do begin
commandtext:='delete from gzjl where zgbh=:bh';
Parameters.ParamByName('bh').Value:=zgbh;
Execute;
end;
with gzda_dm.ADOCommand1 do begin
commandtext:='delete from xxjl where zgbh=:bh';
Parameters.ParamByName('bh').Value:=zgbh;
Execute;
end;
with gzda_dm.ADOCommand1 do begin
commandtext:='delete from zcprjl where zgbh=:bh';
Parameters.ParamByName('bh').Value:=zgbh;
Execute;
end;
with gzda_dm.ADOCommand1 do begin
commandtext:='delete from gztzqk where zgbh=:bh';
Parameters.ParamByName('bh').Value:=zgbh;
Execute;
end;
with gzda_dm.ADOCommand1 do begin
commandtext:='delete from jxjy where zgbh=:bh';
Parameters.ParamByName('bh').Value:=zgbh;
Execute;
end;
with gzda_dm.ADOCommand1 do begin
commandtext:='delete from jfjl where zgbh=:bh';
Parameters.ParamByName('bh').Value:=zgbh;
Execute;
end;
with gzda_dm.ADOCommand1 do begin
commandtext:='delete from poqk where zgbh=:bh';
Parameters.ParamByName('bh').Value:=zgbh;
Execute;
end;
with gzda_dm.ADOCommand1 do begin
commandtext:='delete from shgx where zgbh=:bh';
Parameters.ParamByName('bh').Value:=zgbh;
Execute;
end;
RadioButton1.Checked :=true;
end;
procedure TForm_dasjlr_dgcx.cx_pxfsChange(Sender: TObject);
var
pxfs:string;
x1,x2:integer;
begin
if (cx_dw.Text='') or (cx_bm.Text='') then abort;
x1:=pos('(',cx_pxfs.Text);
x2:=pos(')',cx_pxfs.Text);
pxfs:=copy(cx_pxfs.Text,x1+1,x2-x1-1);
OpenDateSet(pxfs);
end;
procedure TForm_dasjlr_dgcx.Image1DblClick(Sender: TObject);
var
graphic1:TGraphic;
begin
openpicturedialog1.execute;
image1.picture.loadfromfile(openpicturedialog1.filename);
end;
procedure TForm_dasjlr_dgcx.DBImage1DblClick(Sender: TObject);
var
graphic1:TGraphic;
begin
if openpicturedialog1.execute then
begin
image1.picture.loadfromfile(openpicturedialog1.filename);
dbimage1.Picture.LoadFromFile(openpicturedialog1.filename);
if RadioButton2.Checked then
begin
with gzda_dm.ADODataSet1 do begin
edit;
FieldByName('zp').Assign(image1.Picture);
post;
end;
end;
end;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?