Bonjour à tous.
J'ai un soucis à propos de modification de fichier dbf qui me semble insoluble.
Ce sont des fichiers devant être lu par un logiciel commercial, mais ils ont été corrompu et je dois donc reconstruire ces bases pour la bonne marche de notre logiciel.
J'ai 2 fichiers dbf, un contenant plusieurs colonne dont : un n° d'identification, nom, prénom .
L'autre contient : le n° d'identification, l'adresse, le tel
Les 2 bases sont donc liées par le n° d'identification.
J'ai écris un code pour modifier ces fichiers dbf, lorsque je modifie des champs déja existant ça ne pose aucun problème.
Mais lorsque je tente de rajouter des lignes à la base de données elles ne semblent pas être prise en compte.
Voici le bout du code qui rajoute des lignes :
num, nom et prenom sont de type string. Coor est un Ttable.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 coord.TableName:=extractfilepath(application.ExeName)+'base_nom.DBF'; coord.active:=true; coord.CanModify; coord.Append; coord.Edit; coord.Fields[0].Text:=num; coord.Fields[1].Text:=nom; coord.Fields[2].Text:=prénom; coord.Post; coord.Close;
J'ai le même type de code pour la base contenant les adresses.
Lorsque j'ouvre le dbf modifié avec un tableur tous les champs sont parfaitement remplis.
Mais lorsque je tente de faire lire ces fichiers par le programme qui est censé les lire j'obtient pour chaque ligne rajoutée un message du type "Il n'y a pas de lien entre les bases pour Monsieur "Machin" " Tout se passe comme si le n° d'identification était mal renseigné alors que je les ai vérifié et re-vérifié.
Ce qui me chiffonne c'est que cela ne concerne que les lignes rajoutées via la procédure Append de mon Ttable
Si quelqun pouvait m'éclairer, j'ai du louper quelque chose..
Merci.
Partager