Bonjour à chacun,
Je contruis une base FB1 à partir de dbExpress.
La chaine d'accès à la base repose sur un tSqlconnection, un tSqlQuery, un tSqlDatasetProvider et un TclientDataset avant le TdataSource.
Je souhaite ajouter un enregistrement à l'aide de la procédure suivante
qui utilise une procédure stockée pour connaitre l' ID de l'enregistrement.
L'événement OnAfterPost lance la procédure
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 procedure Set_individu(creer:boolean); begin if creer then begin//insertion generateur.ExecProc; with dm_club.Client_club do begin Insert; FieldByName('ind_id').asinteger:=generateur.Parambyname('id').AsInteger;//ind_id; FieldByName('ind_nom').AsString:=edit_nom.Text; FieldByName('ind_prenom').AsString:= Combo_prenom.Text; FieldByName('ind_nais').Asstring:=edit_ddn.Text; FieldByName('ind_sexe').Asstring:=listBox_ind_sexe.Items[listBox_ind_sexe.itemIndex]; FieldByName('ind_fon').AsString:=Listbox_ind_fon.Items[listBox_ind_fon.itemIndex]; FieldByName('ind_date_entree').AsDateTime:=date; post; enablecontrols; end; end else//édition begin // pas encore mis en oeuvre end; end;
Un événement OnReconcileError attend une erreur éventuelle qui ne se produit pas, tant mieux !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 dm_club.Client_club.ApplyUpdate(0);
La grille affiche bien le nouvel enregistrement
que je ne retrouve pourtant pas dans la base à la réouverture ?
merci de m'indiquer une piste de recherche...
Lucien
Partager