Bonjour [Delphi 7] [dBase 4]
Je crée par programmation une table nommée TableCompte dont l'un des champs (Num_Auto) est défini ainsi :
Cette table n'est pas indexée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 with FieldDefs do begin Clear; with AddFieldDef do begin Name := 'Num_Auto'; DataType := ftInteger; end;
Quand j'utilise la touche flèche vers le bas pour créer une nouvelle ligne dans mon DBGrid (événement onKeyUp) liée à cette table, le champ Num_Auto se remplit automatiquement (après un incrément) :
Ça marche !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 case key of VK_DOWN: begin Form2.TableCompte.Edit; Form2.Pr_NumAuto:=Form2.Pr_NumAuto+1; Form2.TableCompte.FieldByName('Num_Auto').Value:=Form2.Pr_NumAuto; // etc...
Mais quand j'essaie, par un événement ButtonClick, d'ajouter les enregistrements d'une table nommée TableEcheancier à ma TableCompte, je reçois le message "Impossible de modifier le champ Num_Auto" :
Mais si je supprime la dernière ligne (génératrice de l'erreur), les autres champs de TableCompte se chargent normalement à partir de TableEcheancier .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 with Form2.TableEcheancier do begin DisableControls; try First; while not Eof do begin Form2.TableCompte.Edit; Form2.TableCompte.Append; Form2.Pr_NumAuto:=Form2.Pr_NumAuto+1; Form2.TableCompte.FieldByName('Num_Auto').Value:=Form2.Pr_NumAuto; // ligne génératrice de l'erreur // etc... chargement d'autres champs
Merci d'avance pour votre aide.
Cordialement.
Alain
Partager