Bonjour,
Mon appli gère une base de données.
Grâce à des BindingSource, je mets à jour des champs fils en fonction de la valeur de champs père.
Sur une base de données constituée, j'ai modifié la structure du fichier de la base de données pour ajouter un champ à l'une des tables.
Quand, dans l'appli, j'enregistre une modification de l'un des champs de cette table, le binding source correspondant ne se met pas à jour correctement depuis que j'ai créé ce nouveau champ.
En creusant, je me suis rendu compte que c'est lié à la valeur "null" de ce champ (valeur normale car je viens de le créer).
En effet, si je modifie la structure de la bdd pour que la valeur par défaut de ce nouveau champ soit 0, le binding source marche correctement.
Dans mon cas présent, ça ne me dérange pas de forcer la valeur par défaut du champ à 0 parce que le sens précis de ce champ, qui est de type integer, s'y prête bien.
Je voulais savoir si vous avez déjà rencontré ce genre de pb, ou si vous avez une explication. Je ne pourrai pas toujours forcer la valeur du nouveau champ à 0 à chaque fois que je déciderai d'en créer un.
En mode debug pas à pas, c'est à partir de cette instruction, semble-t-il que ça commencer à partir en sucette :
bs_MaTable.Filter = "Numero = " & CurrentKey
Si je mets un espion sur l'une des valeurs de l'enregistrement courant,
- avant création du champ, après l'exécution l'instruction ci-dessus, l'espion renvoie bien une valeur
- après la création du champ, après l'exécution de l'instruction ci-dessus, l'espion renvoie une valeur empty
Comme, pour l'instant, j'ai contourné le pb, ne me répondez que si ce pb vous rappelle quelques chose. Ce n'est pas la peine de passer trop de temps dessus
Partager