|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 8 ![]() |
Bonjour,
Je suis débutant sous Access et je viens d'hériter de la migration d'une appli codée au fur et à mesure des besoins sur Access 2000 vers Access 2007. J'ai entre autres un formulaire où s'affichent des informations en provenance d'une table liée. Si je modifie cet enregistrement, j'ai le message d'erreur suivant "Le moteur de base de données Access ne peut pas trouver d'enregistrement dans la table MaTable avec le(s) champ(s) MonChamp correspondant à la clé." Les requêtes et les structures des tables n'ont pas été modifiées, les références ont été corrigées, et il n'y a pas d'erreur d'exécution de code. J'ai essayé d'intégrer ces tables liées, de les supprimer et de recréer les liaisons, ça ne change rien. Au niveau des propriétés des données pour le formulaire, le type de Recordset est "feuille de réponse dynamique", Entrée, Ajout,Suppression,modification de données à Oui, verrouillage à Aucun. Que puis-je encore vérifier ? Merci. |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 085 ![]() |
Bonjour,
Peux-tu accéder à la table liée directement et y faire une modification/création/suppression ? Si oui c'est la liaison objet table liée et le formulaire qui pose problème. Un compactage résoud souvent le problème, éventuellement une décompilation (voir mon blog). Si non c'est la liaison. Faire un compactage de la dorsale (celle qui contient les tables), pas de décompilation c'est inutile. Vérifier également si cette application n'était pas sécurisée (j'en doute car le message n'y fait pas penser). Dans tous les cas un compactage des 2 est nécessaire périodiquement. Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|
10
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 8 ![]() |
Merci beaucoup pour ces pistes. J'essaie lundi et je ferai un retour.
|
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 8 ![]() |
Bonjour,
J'ai compacté les bases et corrigé une dépendance que je n'avais pas vu (utility.mda). Surprise, lorsque je décoche cette dépendance, un table nommée Global n, disparaît. J'ai essayé plusieurs fois, et systématiquement, cette table disparaît. Si je l’importe depuis une copie de la base, l'opération se passe sans problème. Je vois la table, je peux entrer dedans, modifier/ajouter/supprimer des données. Je sauvegarde, quitte et relance la base, Global n a disparu... Je la renomme en Global_n, elle reste. D'où ma question aux grands gourous d'Access, gné ? Pour la suite, les formulaires font appel à une requête sur cette table (Global n). Je corrige ma requête, et quand je l'exécute, j'ai un message me disant qu'Access ne trouve pas la table ou la requête source Global n. J'ai beau chercher dans ma requête, je n'ai aucun appel à Global n. J'ai envie de dire..... Au secours ! P.S : Cette table disparaît aussi quand je compacte la base...Qu'est-ce qui peut faire qu'une table soit supprimée au compactage ? |
|
|
00
|
|
|
#5 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 085 ![]() |
Utility.mda est obsolète la référence doit être supprimée. Concernant cette table je ne vois pas. Surtout comment elle peut être sollicité par des formulaires utilisateurs sans que ceux-ci en fassent état.
As-tu parcouru le code pour voir si ce n'était pas en VBA ? Une table est supprimée au compactage quand il s'agit d'une table système temporaire.
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste MsGraph et VBA - 1e Partie 2e partie Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010 Complément :Générateur de msgbox Visitez mon Blog Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine |
|
10
|
|
|
#6 |
|
Invité de passage
![]() Inscription : mai 2011 Messages : 8 ![]() |
Re bonjour à tous.
J'ai réglé différents problèmes (notamment le pourquoi de la base qui disparaît...une macro Autoexec qui supprime la table...), mais j'ai toujours mon problème de modification d'enregistrement. En fait, il s'agit d'un formulaire et d'un sous formulaire (à la sauce 2000), et il semble que ce soit le problème. La requête d'alimentation du sous formulaire se base sur une donnée issue de la requête d'alimentation du formulaire principal. Or, le sous formulaire ne peut pas accéder à cette valeur (si je fais un copier coller du champ qui contient la donnée vers le sous formulaire, il reste vide, idem si je le crée d'après la requête d'alimentation du sous formulaire). Avez-vous rencontré le même problème et avez-vous réussi à le contourner ? Comment peut-on récupérer dans le sous formulaire une valeur affichée dans un champ du formulaire principal ? Merci. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com