📄 unit3.pas
字号:
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,inifiles, DB, DBTables, StdCtrls, Grids, DBGrids, Mask, DBCtrls,
ADODB;
type
TForm3 = class(TForm)
GroupBox2: TGroupBox;
Button1: TButton;
Button2: TButton;
Button5: TButton;
GroupBox1: TGroupBox;
DBGrid1: TDBGrid;
StaticText1: TStaticText;
StaticText2: TStaticText;
StaticText4: TStaticText;
DataSource1: TDataSource;
StaticText9: TStaticText;
StaticText10: TStaticText;
StaticText3: TStaticText;
StaticText5: TStaticText;
StaticText6: TStaticText;
StaticText7: TStaticText;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
ADOQuery1: TADOQuery;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
Button3: TButton;
Button4: TButton;
procedure FormCreate(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
// procedure DBEdit1Change(Sender: TObject);
// procedure Button1Click(Sender: TObject);
// procedure Button2Click(Sender: TObject);
// procedure Button3Click(Sender: TObject);
// procedure Button4Click(Sender: TObject);
// procedure Button5Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
a:integer;
implementation
{$R *.dfm}
uses unit1;
procedure Tform3.FormCreate(Sender: TObject);
begin
adoquery1.Connection:=g_Connection;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from info');
adoquery1.ExecSQL;
adoquery1.Active:=true;
adoquery1.Open;
radiobutton1.Checked:=true;
//adotable1.TableName:='info';
{
dbedit1.DataField:='编号';
dbedit2.DataField:='户主姓名';
dbedit3.DataField:='身份证号';
dbedit4.DataField:='楼栋';
dbedit5.DataField:='户号';
dbedit6.DataField:='家庭电话';
dbedit7.DataField:='手机';
dbedit8.DataField:='工作单位';
dbedit9.DataField:='是否长住';
dbedit2.ReadOnly:=false;
dbedit3.ReadOnly:=false;
dbedit4.ReadOnly:=false;
dbedit5.ReadOnly:=false;
dbedit6.ReadOnly:=false;
dbedit7.ReadOnly:=false;
dbedit8.ReadOnly:=false;
dbedit9.ReadOnly:=false; }
//datasource1.AutoEdit:=false;
{
adotable1.ReadOnly:=true;
adotable1.Close;
adotable1.Open; }
{
DBGrid1.Columns.Clear;
DBGrid1.Columns.Add.FieldName:='医师编号';
DBGrid1.Columns.Add.FieldName:='姓名';
DBGrid1.Columns.Add.FieldName:='性别';
DBGrid1.Columns.Add.FieldName:='出生日期';
DBGrid1.Columns.Add.FieldName:='所属部门'; }
end;
{
procedure TForm3.DBEdit1Change(Sender: TObject);
var
temp:string;
i:integer;
begin
edit1.Text:=DBedit1.Text;
edit2.Text:=dbedit2.Text;
edit3.Text:=dbedit3.Text;
if dbedit3.Text='女'
then
radiobutton2.Checked:=true
else
radiobutton1.checked:=true;
if dbedit4.Text<>''
then
begin
temp:=DBEdit4.text;
edit4.Text:=temp[1]+temp[2]+temp[3]+temp[4];
edit5.Text:='';
edit6.Text:='';
for i:=5 to 7 do
begin
if temp[i]<>'-'
then
edit5.Text:=edit5.Text+temp[i];
end;
for i:=8 to length(temp) do
begin
if temp[i]<>'-'
then
edit6.Text:=edit6.Text+temp[i];
end;
end
else
begin
edit4.Text:='';
edit5.Text:='';
edit6.Text:='';
end;
edit3.Text:=dbedit5.Text;
end;
{
dbedit1.Visible:=False;
dbedit2.Visible:=False;
dbedit3.Visible:=False;
dbedit4.Visible:=false;
}
{
if sstag<>3
then
begin
label3.Visible:=false;
label4.Visible:=false;
radiobutton1.Visible:=false;
radiobutton2.Visible:=false;
edit3.Visible:=false;
end
else
begin
label3.Visible:=true;
label4.Visible:=true;
edit3.Visible:=true;
radiobutton1.Visible:=true;
radiobutton2.Visible:=true;
end; }
{
procedure Tdomanager.Button1Click(Sender: TObject);
var
birth:variant;
tempbirth:variant;
depart:variant;
tempdepart:variant;
maname:variant;
tempname:variant;
sex:variant;
tempsex:variant;
stag:boolean;
temp:string;
i:integer;
begin
stag:=True;
with table1 do
begin
if length(edit2.Text)<11
then
tempname:=edit2.Text
else
begin
showmessage('姓名过长');
stag:=False;
end;
if radiobutton1.Checked=True
then
tempsex:= '男'
else
tempsex:='女';
if(edit4.Text<>'')or(edit5.Text<>'')or(edit6.Text<>'')
then
begin
if (edit4.Text<>'')and(edit5.Text<>'')and(edit6.Text<>'')
then
begin
if unit4.searchdo.Isdataok(edit4.Text,edit5.Text,edit6.Text)=True
{(unit4.searchdo.Isstringok(length(edit4.Text),edit4.Text,2050,1800))
and (searchdo.Isstringok(length(edit5.Text),edit5.Text,12,1))
and (searchdo.Isstringok(length(edit6.Text),edit6.Text,31,1)) }
{then
tempbirth:=edit4.Text+'-'+edit5.Text+'-'+edit6.Text
else
begin
showmessage('你输入的出生日期不正确');
stag:=False;
end;
end
else
begin
tempbirth:='';
showmessage('你输入的出生日期不完整,出生年月将按缺省为空录入');
end;
end
else
tempbirth:='';
if length(edit3.Text)<11
then
tempdepart:=edit3.Text
else
begin
showmessage('所属部门名过长');
stag:=False;
end;
if stag=true
then
begin
table1.Filter:='医师编号='''+edit1.Text+'''';
table1.Filtered:=true;
//table1.Locate('医师编号',edit1.Text,[loPartialKey]);
//dbedit2.Text:=tempname;
edit2.Text:=tempname;
if tempsex='男'
then
radiobutton1.Checked:=true
else
radiobutton2.Checked:=true;
//dbedit3.Text:=tempsex;
//dbedit4.Text:=tempsex;
if tempbirth<>''
then
begin
temp:=tempbirth;
edit4.Text:=temp[1]+temp[2]+temp[3]+temp[4];
edit5.Text:='';
edit6.Text:='';
for i:=5 to 7 do
begin
if temp[i]<>'-'
then
edit5.Text:=edit5.Text+temp[i];
end;
for i:=8 to length(temp) do
begin
if temp[i]<>'-'
then
edit6.Text:=edit6.Text+temp[i];
end;
end
else
begin
edit4.Text:='';
edit5.Text:='';
edit6.Text:='';
end;
//dbedit4.Text:=tempbirth;
edit3.Text:=tempdepart;
//dbedit5.Text:=tempdepart;
if (dbedit1.Text<>'')
then
begin
if(tempname<>dbedit2.Text )or(tempsex<>dbedit3.Text)or(tempbirth<>dbedit4.Text)or(tempdepart<>dbedit5.Text)
then
begin
table1.Edit;
dbedit2.Text:=tempname;
dbedit3.Text:=tempsex;
dbedit4.Text:=tempbirth;
dbedit5.Text:=tempdepart;
table1.Post;
end;
end
else
showmessage('未查找到相应的医师');
end;
end;
end;
procedure Tdomanager.Button2Click(Sender: TObject);
begin
if edit1.Text<>''
then
begin
table1.Locate('医师编号',edit1.Text,[loPartialKey]);
if edit1.Text=dbedit1.Text
then
begin
table1.Edit;
table1.Delete;
end
else
showmessage('未找到该医师');
end
else
showmessage('请输入要删除信息的医师编号');
end;
procedure Tdomanager.Button3Click(Sender: TObject);
var
tempnumber:string;
tempname:variant;
tempsex:variant;
tempbirth:variant;
tempdepart:variant;
len:integer;
begin
tempnumber:=edit1.Text;
tempname:=edit2.Text;
if radiobutton1.Checked=true
then
tempsex:='男'
else
tempsex:='女';
if(edit4.Text<>'')or(edit5.Text<>'')or(edit6.Text<>'')
then
begin
if (edit4.Text<>'')and(edit5.Text<>'')and(edit6.Text<>'')
then
begin
if unit4.searchdo.Isdataok(edit4.Text,edit5.Text,edit6.Text)=True
then
tempbirth:=edit4.Text+'-'+edit5.Text+'-'+edit6.Text
else
begin
showmessage('你输入的出生日期不正确');
tempbirth:='';
end;
end
else
begin
tempbirth:='';
showmessage('你输入的出生日期不完整,出生年月将按缺省为空录入');
end;
end
else
begin
tempbirth:='';
//showmessage('你未输入的出生日期,出生年月将按缺省为空录入');
end;
tempdepart:=edit3.Text ;
if tempnumber<>''
then
begin
len:=length(tempnumber);
if unit4.searchdo.Isstringok(len,tempnumber,99999999,10000001)=true
then
begin
if (length(tempname)<11)and(length(tempdepart)<11)
then
begin
table1.Locate('医师编号',tempnumber,[loPartialKey]);
if dbedit1.Text<>tempnumber
then
begin
table1.Insert;
dbedit2.Text:=tempname;
dbedit3.Text:=tempsex;
dbedit4.Text:=tempbirth;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -