1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
|
procedure Tfrm_pec_det_dde.btn_enregClick(Sender: TObject);
var id_badge:integer;
heure_arrive:String;
date_arrive:STRING;
nom_badge:String;
id_pers:integer;
nom:String;
prenom:String;
naissance:String;
lieu:String;
immat:String;
societe:String;
unite:String;
motif:String;
statut:String;
vsql:string;
begin
heure_arrive:= TimetoStr(now);
date_arrive:= FormatDateTime('dd/mm/yyyy',now);
if lst_badge.Enabled=false then
begin
ShowMessage('Veuillez sélectionner un badge , pour ce faire choississez une unité .')
end
else
begin
id_badge:=lst_badge.KeyValue;
nom_badge:=lst_badge.text;
nom:=vnom;
prenom:=vprenom;
naissance:=v_dt_naissance;
lieu:=v_lieu_naissance;
immat:=txt_immat.text;
societe:=db_societe.Text;
unite:=db_unite.Text;
motif:=db_motif.Text;
id_pers:=0;
sql_req.close;
sql_req.sql.text:='select id_pers from accueil2_personnes where nom_pers="'+vnom+'" and prenom="'+vprenom+'" and naissance="'+v_dt_naissance+'"';
sql_req.open;
if sql_req.RecordCount>0 then
begin
id_pers:=strtoint(sql_enreg.Fields[0].asstring);
end;
sql_req.close;
if id_pers>0 then
begin
sql_enreg.SQL.text:='update accueil2_personnes set badge="'+nom_badge+'" where id_pers='+inttostr(id_pers);
sql_enreg.ExecSQL;
sql_enreg.close;
sql_transac.Commit;
end
else
begin
vsql:='insert into accueil2_personnes ( statut,nom_pers,prenom,naissance,lieu,badge,immatriculation)';
vsql:=vsql+' values("0","'+nom+'","'+prenom+'","'+naissance+'","'+lieu+'","'+nom_badge+'","'+immat+'")';
sql_enreg.SQL.text:=vsql;
sql_enreg.ExecSQL;
sql_enreg.close;
sql_transac.Commit;
sql_req.sql.text:='select auto_increment from information_schema.tables where table_schema="accueil2" and table_name="accueil2_personnes"';
sql_req.open;
showmessage( sql_req.fields[0].asstring);
id_pers:=strtoint(sql_req.fields[0].asstring)-1;
sql_req.close;
end;
sql_enreg.SQL.text:='update accueil2_lp set etat=2 where id='+inttostr(id_badge);
sql_enreg.ExecSQL;
sql_enreg.close;
sql_transac.Commit;
vsql:='insert into arrivee(id_personne,nom_personne,prenom_personne,naissance_personne,lieu_personne,immat_personne,badge_personne,societe_personne,';
vsql:=vsql+' unite_personne,motif_personne,heure_arrivee,date_arrivee,statut) values';
vsql:=vsql+ '("'+Inttostr(id_pers)+'","'+nom+'","'+prenom+'","'+naissance+'","'+lieu+'","'+immat+'","'+nom_badge+'","'+societe+'","'+unite+'","'+motif+'","'+heure_arrive+'","'+date_arrive+'","prevu")';
sql_enreg.SQL.text:=vsql;
sql_enreg.ExecSQL;
sql_enreg.close;
sql_transac.Commit;
ShowMessage('Enregistrement effectué');
ModalResult:=mrOk;
end;
end; |
Partager