http://g.51cto.com/delphi/26349

1、人员管理
一:插入
begin
if Length(Edit2.Text)=0 then
begin
ShowMessage('职工号不能为空!请输入内容!');
Edit2.SetFocus;
Exit;
end;
if Length(Edit3.Text)=0 then
begin
ShowMessage('姓名不能为空!请输入内容!');
Edit3.SetFocus;
Exit;
end;
if Length(ComboBox1.Text)=0 then
begin
ShowMessage('性别不能为空!请选择男或女!');
ComboBox1.SetFocus;
Exit;
end;
 if Length(Edit4.Text)=0 then
begin
ShowMessage('×××号不能为空!请输入内容!');
Edit4.SetFocus;
Exit;
end;
try
  ADOStoredProc1.Parameters[1].Value:=edit2.Text;
  ADOStoredProc1.Parameters[2].Value:=edit3.Text;
  ADOStoredProc1.Parameters[3].Value:=ComboBox1.Text;
  ADOStoredProc1.Parameters[4].Value:=datetimepicker1.DateTime;
  ADOStoredProc1.Parameters[5].Value:=edit4.Text;
  ADOStoredProc1.Parameters[6].Value:=ComboBox2.Text;
  ADOStoredProc1.Parameters[7].Value:=edit5.Text;
  ADOStoredProc1.Parameters[8].Value:=edit6.Text;
  ADOStoredProc1.ExecProc;
  ADOStoredProc1.Close;
  ShowMessage('插入成功');
  edit2.Clear;
  edit3.Clear;
  edit4.Clear;
  edit5.Clear;
  edit6.Clear;
  ADOQuery1.Close;
  ADOQuery1.Open
  except showmessage('插入失败!已存在相同的职工号或×××号!');
end;
end;
二:删除
begin
if Length(Edit1.Text)=0 then
begin
ShowMessage('职工号不能为空!请输入内容!');
Edit1.SetFocus;
Exit;
end;
  if   messagedlg('确实要删除记录吗?',mtConfirmation,[mbYes,   mbNo],0)   =   mrYes   then
  begin
  ADOStoredProc1.Parameters[1].Value:=edit1.Text;
  ADOStoredProc1.ExecProc;
  ADOStoredProc1.Close;
  ShowMessage('删除成功');
  ADOQuery1.Close;
  ADOQuery1.Open
  end;
end;
三:修改
begin
if (ComboBox1.Text<>'男')and(ComboBox1.Text<>'女') then
begin
showmessage('修改错误!性别只能选择男或女!');
end;
try
  ADOStoredProc1.Parameters[1].Value:=edit1.Text;
  ADOStoredProc1.Parameters[2].Value:=edit2.Text;
  ADOStoredProc1.Parameters[3].Value:=ComboBox1.Text;
  ADOStoredProc1.Parameters[4].Value:=datetimepicker1.DateTime;
  ADOStoredProc1.Parameters[5].Value:=edit3.Text;
  ADOStoredProc1.Parameters[6].Value:=edit4.Text;
  ADOStoredProc1.Parameters[7].Value:=edit5.Text;
  ADOStoredProc1.Parameters[8].Value:=edit6.Text;
  ADOStoredProc1.ExecProc;
  ADOStoredProc1.Close;
  ShowMessage('修改成功');
  ADOQuery1.Close;
  ADOQuery1.Open
  except showmessage('已存在相同的×××号!!');
  end;
end;
2.物料管理
一、插入
begin
if Length(Edit1.Text)=0 then
begin
ShowMessage('物料代码不能为空!请输入内容!');
Edit1.SetFocus;
Exit;
end;
if Length(Edit2.Text)=0 then
begin
ShowMessage('物料名称不能为空!请输入内容!');
Edit2.SetFocus;
Exit;
end;
if Length(Edit4.Text)=0 then
begin
Edit4.text:='0';
end;
try
  ADOStoredProc1.Parameters[1].Value:=edit1.Text;
  ADOStoredProc1.Parameters[2].Value:=edit2.Text;
  ADOStoredProc1.Parameters[3].Value:=edit3.Text;
  ADOStoredProc1.Parameters[4].Value:=ComboBox1.Text;
  ADOStoredProc1.Parameters[5].Value:=edit4.Text;
  ADOStoredProc1.Parameters[6].Value:=edit5.Text;
  ADOStoredProc1.ExecProc;
  ADOStoredProc1.Close;
  ShowMessage('插入成功');
  edit1.Clear;
  edit2.Clear;
  edit3.Clear;
  ComboBox1.Clear;
  edit4.text:='0';
  edit5.Clear;
  ADOQuery1.Close;
  ADOQuery1.Open
  except showmessage('插入失败!已存在相同的物料代码!!');
end;
end;
二、删除
begin
if Length(Edit1.Text)=0 then
begin
ShowMessage('物料代码不能为空!请输入内容!');
Edit1.SetFocus;
Exit;
end;
  if   messagedlg('确实要删除记录吗?',mtConfirmation,[mbYes,   mbNo],0)   =   mrYes   then
  begin
  ADOStoredProc1.Parameters[1].Value:=edit1.Text;
  ADOStoredProc1.ExecProc;
  ADOStoredProc1.Close;
  ShowMessage('删除成功');
  ADOQuery1.Close;
  ADOQuery1.Open
  end;
end;
三:修改
begin
if Length(Edit4.Text)=0 then
begin
Edit4.text:='0';
end;
  ADOStoredProc1.Parameters[1].Value:=edit1.Text;
  ADOStoredProc1.Parameters[2].Value:=edit2.Text;
  ADOStoredProc1.Parameters[3].Value:=edit3.Text;
  ADOStoredProc1.Parameters[4].Value:=ComboBox1.Text;
  ADOStoredProc1.Parameters[5].Value:=edit4.Text;
  ADOStoredProc1.Parameters[6].Value:=edit5.Text;
  ADOStoredProc1.ExecProc;
  ADOStoredProc1.Close;
  ShowMessage('修改成功');
  ADOQuery1.Close;
  ADOQuery1.Open
end;
 
 
查看全表:
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('select * from staff');
ADOQuery1.open;
查询:
begin
with adoquery1 do
begin
close;
sql.clear;
sql.add('select * from staff where sname+staffno+origin+sex like ''%'+trim(edit1.Text)+'%''');
open;
if ADOQuery1.RecordCount=0 then
 showmessage('没有相关记录!');
 edit2.text:= fieldbyname('staffno').Asstring ;
 edit3.Text:=fieldbyname('sname').AsString ;
 comboBox1.Text:=fieldbyname('sex').AsString ;
 DateTimePicker1.datetime:=fieldbyname('Birth').Asdatetime ;
 MaskEdit2.Text:=fieldbyname('Idno').AsString ;
 comboBox2.Text:=fieldbyname('origin').AsString ;
 edit5.Text:=fieldbyname('Hadd').AsString ;
 edit6.Text:=fieldbyname('Telep').AsString ;
end;
end;
 
按职工号进行删除:
begin
staffno:=edit7.text;
begin
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('select * from staff where staffno like '''+trim(edit7.Text)+'''');
adoquery1.open;
if ADOQuery1.RecordCount=0 then
begin
 showmessage('没有相关记录!')
 end
 else if ADOQuery1.RecordCount>=1 then
 begin
 adoquery1.sql.add('select * from staff,IOmat where staff.sname=IOmat.IOman and staffno like '''+trim(edit7.Text)+'''');
 adoquery1.open;
if ADOQuery1.RecordCount<0 then
begin
showmessage('存在其他地方引用该信息,不能删除')
end
else if
messagedlg('您确定要删除吗?',mtconfirmation,[mbyes,mbno],0)=mryes
then
begin
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('delete from staff');
ADOQuery1.sql.add('where staffno =:staffno');
ADOQuery1.Parameters.ParamByname('staffno').VALUE:=Trim(Edit7.Text);
ADOQuery1.ExecSQL;
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('select * from staff');
ADOQuery1.open;
form4.ADOQuery3.close;
end;
end;
end;
end;
确认修改:
var s:string;
var s1:string;
begin
s:=maskedit2.Text;
s1:=formatdatetime('yyyymmdd',datetimepicker1.Date);
staffno:=edit2.text;
sname:=edit3.Text;
Sex:=ComboBox1.text;
birth:=datetimepicker1.DateTime;
Idno:=MaskEdit2.text;
origin:=ComboBox2.text;
Hadd:=edit5.text;
Telep:=edit6.text;
if (ComboBox1.text<>'男') and (ComboBox1.text<>'女') and (ComboBox1.text<>'')
then
showmessage ('性别输入有错!')
else if  copy(s,7,8)<>s1 then
begin
 showmessage('×××号与出生日期不符合,请重新输入')
 end
 else
begin
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('update staff');
ADOQuery1.sql.add('set sname=:sname,sex=:sex,birth=:birth,Idno=:Idno,origin=:origin,Hadd=:Hadd,Telep=:Telep');
ADOQuery1.sql.add('where staffno=:staffno');
ADOQuery1.Parameters.ParamByname('staffno').VALUE:=staffno;
ADOQuery1.Parameters.ParamByname('sname').VALUE:=sname;
ADOQuery1.Parameters.ParamByname('sex').VALUE:=sex;
ADOQuery1.Parameters.ParamByname('birth').VALUE:=birth;
ADOQuery1.Parameters.ParamByname('Idno').VALUE:=Idno;
ADOQuery1.Parameters.ParamByname('origin').VALUE:=origin;
ADOQuery1.Parameters.ParamByname('Hadd').VALUE:=Hadd;
ADOQuery1.Parameters.ParamByname('Telep').VALUE:=Telep;
adoquery1.EXECSQL;
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('select * from staff');
ADOQuery1.open;
form4.ADOQuery3.close;
form4.ADOQuery3.sql.clear;
end;
 end;
增加确认:
var s:string;
var s1:string;
begin
 s:=maskedit2.Text;
 s1:=formatdatetime('yyyymmdd',datetimepicker1.Date);
 if  copy(s,7,8)<>s1 then
 begin
 showmessage('×××号与出生日期不符合,请重新输入');
 end
 else
 begin
 ADOStoredProc1.Parameters[1].Value:=MaskEdit1.text;
 ADOStoredProc1.Parameters[2].Value:=edit1.text;
 ADOStoredProc1.Parameters[3].Value:=combobox1.Text;
 ADOStoredProc1.Parameters[4].Value:=FormatDateTime('yyyy-mm-dd',datetimepicker1.date);
 ADOStoredProc1.Parameters[5].Value:=MaskEdit2.text;
 ADOStoredProc1.Parameters[6].Value:=combobox2.Text;
 ADOStoredProc1.Parameters[7].Value:=edit2.text;
 ADOStoredProc1.Parameters[8].Value:=edit3.text;
ADOStoredProc1.ExecProc;
 showmessage((ADOStoredProc1.Parameters.ParamByName( '@p_message').value));
  form2.adoquery1.close;
  form2.adoquery1.Open;
end;
end;
天津市
河北省
山西省
辽宁省
吉林省
上海市
江苏省
浙江省
安徽省
福建省
江西省
山东省
河南省
湖北省
湖南省
广东省
海南省
重庆市
四川省
贵州省
云南省
陕西省
甘肃省
青海省
黑龙江省
西藏自治区
广西自治区
宁夏自治区
新疆自治区
内蒙古自治区
=============《 物料档案管理代码: 》=======
查询全表:
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('select * from materiel');
ADOQuery1.open;
修改确认:
begin
if  edit2.Text='' then
 showmessage('请选择要修改的物料代码')
else
materno:=edit2.text;
mname:=edit3.Text;
spmodel:=edit4.text;
units:=ComboBox1.text;
StockQ:=Strtoint(Trim(Edit5.Text));
remarks:=edit6.text;
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('update materiel');
ADOQuery1.sql.add('set mname=:mname,spmodel=:spmodel,units=:units,StockQ=:StockQ,remarks=:remarks');
ADOQuery1.sql.add('where materno=:materno');
ADOQuery1.Parameters.ParamByname('mname').VALUE:=mname;
ADOQuery1.Parameters.ParamByname('spmodel').VALUE:=spmodel;
ADOQuery1.Parameters.ParamByname('units').VALUE:=units;
ADOQuery1.Parameters.ParambyName('StockQ').Value :=Strtoint(Trim(Edit5.Text));
ADOQuery1.Parameters.ParamByname('remarks').VALUE:=remarks;
ADOQuery1.Parameters.ParamByname('materno').VALUE:=materno;
adoquery1.EXECSQL;
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('select * from materiel');
ADOQuery1.open;
end;
查询:
begin
with adoquery1 do
begin
close;
sql.clear;
sql.add('select * from  materiel where materno+Mname+Spmodel like ''%'+trim(edit1.Text)+'%''');
open;
if ADOQuery1.RecordCount=0 then
 showmessage('没有相关记录!');
 edit2.text:= fieldbyname('materno').AsString ;
 edit3.Text:=fieldbyname('mname').AsString ;
 comboBox1.Text:=fieldbyname('units').AsString ;
 edit4.Text:=fieldbyname('spmodel').AsString ;
 edit5.Text:=inttostr(fieldbyname('stockQ').AsInteger);
 edit6.Text:=fieldbyname('remarks').AsString ;
end;
end;
删除:
begin
materno:=edit1.text;
with adoquery1 do
begin
close;
sql.clear;
sql.add('select * from  materiel where Materno like ''%'+trim(edit1.Text)+'%''');
open;
if ADOQuery1.RecordCount=0 then
 showmessage('没有相关记录!')
else if
  messagedlg('您确定要删除吗?',mtconfirmation,[mbyes,mbno],0)=mryes
  then
  begin
ADOQuery1.delete;
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('delete from materiel');
ADOQuery1.sql.add('where Materno =:Materno');
ADOQuery1.Parameters.ParamByname('Materno').VALUE:=Trim(Edit1.Text);
ADOQuery1.ExecSQL;
ADOQuery1.close;
ADOQuery1.sql.clear;
ADOQuery1.sql.add('select * from materiel');
ADOQuery1.open;
end;
end;
end;
增加物料:
begin
ADOStoredProc1.Parameters[1].Value:=MaskEdit1.text;
 ADOStoredProc1.Parameters[2].Value:=edit1.text;
 ADOStoredProc1.Parameters[3].Value:=edit1.text;
 ADOStoredProc1.Parameters[4].Value:=combobox1.Text;
ADOStoredProc1.Parameters[5].Value:=edit3.text;
 ADOStoredProc1.Parameters[6].Value:=edit4.text;
ADOStoredProc1.ExecProc;
showmessage((ADOStoredProc1.Parameters.ParamByName( '@p_message').value));
 form3.adoquery1.close;
 form3.adoquery1.Open;
end;