IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

[97 -> 2007]Creation d'enregistrement erreur 3021


Sujet :

Access

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Points : 1
    Points
    1
    Par défaut [97 -> 2007]Creation d'enregistrement erreur 3021
    bonjour à tous...

    je ne suis pas vraiment développeur (soyons honnêtes, pas du tout, en fait ), mais je bricole pas mal les ordis et, en général, je comprend plutôt bien quand on m'explique.

    là je me trouve confronté à un problème:

    dans la boite ou je bosse, les ordis sont renouvelés de temps à autre, mais l'application qui a été développée spécifiquement pour nous n'a plus de "papa".. la boite qui l'a développé a coulé, disparu, partie.

    l'application en question est une interface de gestion sur une base access. la base est une base access97, mais j'ai trouvé moyen de la remettre à jour avec la version 2007... en créant une base "liée" afin de pouvoir modifier indirectement les valeurs des prix, entre autres... un petit malin de l'entreprise s'étant barré avec le cd d'office pro 97, il a bien fallu investir dans une access plus récent.

    alors, j'en viens au problème: lorsqu'on met le nouvel ordi en route (sous win XP, comme les autres), on installe le soft, on met à jour quelques librairies et le biniou fonctionne.. sauf que, lorsqu'on essaie de créer une "nouvelle mission", on a le message d'erreur 3021, puis "no record found", puis "erreur lors de l'écriture ou édition dans WorkOnRecord"

    j'ai cherché et tout ce que je trouve, c'est que cela provient d'une table vide dans la base... or cette base sert depuis des années, et les autres ordis tournent dessus (elle est sur le serveur), et les autres ordis n'ont pas le message d'erreur sur la même base. J'ai même essayé de récupérer les fichiers d'autres ordis (des fois qu'il manque un truc dans l'installation), j'ai essayé aussi de lancer, par le réseau, l'exécutable sur un autre ordi, et rien à faire... je peux consulter la base, tout lire, mais quand je lance un enregistrement nouveau, j'ai droit à l'erreur.

    est-ce qu'une bonne âme a une idée de ce qui peut bien manquer à ce *¤&#@§!!! d'ordi pour que je m'arrache le peu de cheveux qu'il me reste devant l'écran?

    merci d'avance

    P.S. je précise que j'ai creusé une bonne partie de la journée la faq et les tutos, mais j'ai rien vu qui puisse éclairer ma lanterne (j'ai pitet mal regardé, mais je ne crois pas )

  2. #2
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 128
    Points : 12 185
    Points
    12 185
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Si tu as une erreur 3021, c'est qu'il n'y a pas d'enregistrements correspondant à la requête exécutée.
    Tu auras beau jurer dans tous les sens, ça ne changera rien.
    Bref, le but est de savoir déterminer ce que fait ta requête dans la fonction WorkOnRecord()
    Il doit y avoir un truc du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT "des Champs..." FROM "Une Table" WHERE "Une ou plusieurs conditions"
    Ce que tu peux faire, c'est recopier (ou copier la variable de la requête si le code est correctement écrit) depuis la fenêtre de débogage (Ctrl+G)
    et coller celle-ci dans une requête fichier créée à partir du QBE (Générateur de requête depuis le volet de navigation)
    Tu vas voir alors tout de suite et certainement plus facilement ce qui cloche et en particulier, un eventuele message d'erreur ou bien la table vide en question.

    Ce qui semble se passer à première vue, c'est que la table concernée est vide et que la base sur laquelle tu pointes tes liaisons n'est pas la même que celle des utilisateurs.

    Pour vérifier, tu écris ou recopie le code suivant :
    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
     
    Public Sub WhereIsMyDatabase(ByVal LinkedTable As String)
    '---------------------------------------------------------------------------
    ' Procedure     : WhereIsMyDatabase
    ' DateTime      : 24/01/2008
    ' Author        : argyronet
    ' Purpose       : Retourne le chemin où est située la base de données liée
    '...........................................................................
    ' Parameters    : LinkedTable = Nom de la table liée qui est
    '                 obligatoirement présente
    ' Return Codes  : Aucun
    '......................................................................
    ' Evolutions    :
    '---------------------------------------------------------------------------
    Dim strConnectionString As String
    Dim strDBPath           As String
     
      strConnectionString = Mid(CurrentDb.TableDefs(LinkedTable).Connect, 11)
      strDBPath = Left(strConnectionString, InStrRev(strConnectionString, _
      "\", -1, 1) - 1)
      MsgBox "Votre BDD est ici :" & vbCrLf & vbCrLf & strDBPath, 64
    End Sub
    et appuyer sur F5 pour exécuter : cela te donnnera la source de données.

    Argy

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    merci pour ta réponse.. je vais essayer de creuser ça... (comme j'ai dit, je ne suis pas développeur de formation... il me faudra tatonner un peu pour appliquer ça... déjà, trouver les commandes, car j'ai aucune idée de ce qui est donné comme commande quand on clique sur le bouton dans l'application- vu qu'il y a aucune doc papier ni rien de tel... je vous tiens au courant... )

    P.S. par contre, je te confirme que le soft lit bien la même base que sur les autres postes, simplement pour deux raisons: il y a qu'une base sur le réseau et parce que les derniers enrégistrements saisis sur les autres ordis sont visibles lors de la lecture... c'est aussi un peu pour cela que je séchais... les autres ne renvoyant pas de message d'erreur

    mai sbon, je vais essayer de bricoler cela... s'il y a erreur, je vais bien finir par trouver ce qui la provoque...

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    bon.. toujours en galère...

    j'ai désassemble l'exe de l'application, mais là, faut que je capte qui commande quoi, etc, etc...

    et en faisant "rechercher", je trouve aucune ligne relative à "WorkOnRecord", ou un truc qui y ressemble...

    je cherche, creuse, gratte... mais pour le moment... nada...

    et je confirme, l'exe bosse sur la seule base de données présente: celle ou bossent les autres ordis aussi (et qui, eux, n'ont pas d'erreur)...

    je capte pas.. mais je persévère.. je vais finir par trouver...

  5. #5
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 128
    Points : 12 185
    Points
    12 185
    Billets dans le blog
    5
    Par défaut
    Qui persévère se purge...


    Exe ??? Quel exe ?

    La fonction WorkOnRecord est une fonction de ton application tout simplement...
    Si tu n'as pas accès aux sources de celle-ci, tu ne sauras pas de quoi elle est faîtes.
    Sinon, euh, juste comme ça pour le fun, l'application est de ta création ?

    Pourquoi desassembler ?

    Argy

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    alors, la boite ou je bosse a fait appel à une société pour mettre en place un système de gestion de son activité... kékpart en 1998 ou un truc comme cela...

    ils ont développé un truc, qui fonctionne très bien et qu'on a aucune raison de remplacer... si l'on s'en tient aux fonctionnalités du programme, basé sur access97, et l'application en question est l'exe dont je parle.

    donc, il y a une base de données au format access97 sur le serveur, et l'application en question, développée en VB, tournant sur chacun des postes de travail.

    le problème est que pour chaque nouvelle installation de l'application, il fallait appeler quelqu'un de cette entreprise, car l'appli ne tournait pas si on l'installait simplement avec le fichier setup fourni (selon la description qu'on m'a donné, le gusse venait avec un support, c'était une clé USB, la dernière fois, il y a une paire d'années, enrégistrait quleque chose dessus, bricolait un truc.. partait, revenait une heure plus tard remettait la clé dans l'ordi et l'appli tournait..

    perso, j'ai trouvé que l'appli ne tournait pas sans qu'on mette à jour une librairie windows (je n'ai pas le truc en tête dans l'immédiat), ce que j'ai fait et qui était probablement la correction qu'il leur facturait quelque chose comme 800 ou 900 balles... maintenant l'appli tourne... mais si on peut consulter le contenu de la base de données (et c'est le cas, vu que lors de la consultation, on voit des données saisies sur un autre ordi 2 minutes avant, ce qui exclut toute base "cachée" sur l'ordi défaillant), impossible d'enrégistrer la moindre écriture...

    donc... cette société a mis la clé sous la porte il y a quelques années et n'a laissé aucune doc sur le soft. résultat, avec le remplacement d'un ordi (pentium II, tout de même.. il a bien mérité sa retraite ), il faut réinstaller l'appli sur le nouveau... sauf qu'il y a personne qui puisse le faire qu'on sache contacter, et, du coup, comme je bricole un peu l'informatique, mon boss m'a demandé d'essayer de me dépatouiller avec...

    voilà pour la petite histoire.

    je me retrouve donc, avec un exe par lequel tout se passe (accès et modifs dans la base de données), et qui, sur une machine ou il était installé précédemment n'a pas de problèmes... et j'arrive pas à capter ce qui lui fait faire cela... même en recopiant bêtement l'exe d'une machine ancienne (donc, qui fonctionne), avec le contenu de son répertoire, et les contenus divers et variés du fichier compressé d'installation, l'application se lance, permet la consultation de toutes les rubriques, mais , ne permet pas de faire de nouvelles écritures.

    Et ce qui est énervant, c'est que l'erreur incriminée ne parle pas d'un éventuel fichier qu'elle ne trouve pas (comme cela pourrait etre le cas s'il lui manquait un fichier d'install dans windows\system ou un autre répertoire extérieur, mais d'une erreur dans la base de données...

    voilà donc pourquoi j'en suis là:

    une appli "orpheline" (pas de doc, ni de sources, ni de possibilité de contact avec le(s) developpeurs qui l'ont faite), indispensable à ma boite, et qui ne veut pas tourner comme elle devrait... du coup, ne toruvant pas ce qui cloche dans la base de données, j'ai essayé de trouver en la désassemblant.. desfois qu'un truc ressorte qui me mette sur le chemin...

    et, du coup, ben, ma chevelure en prend pour son grade...

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    bon.. comme quoi, il faut parfois changer de soft de désassemblage... celui que j'avais toruvé en premier était tout pourri... il trouvait rien..

    là, j'ai trouvé 5 instances ou "workonrecord" apparait, mais c'est un message d'erreur enrégistré comme tel dans l'exe... toujours pas trace d'une fonction de ce nom

Discussions similaires

  1. Dreamweaver CC Erreur Javascript Creation jeu enregistrement
    Par BigWheel dans le forum Dreamweaver
    Réponses: 2
    Dernier message: 20/02/2014, 08h45
  2. Dreamweaver CC erreur Java Script lors creation jeu enregistrement
    Par BigWheel dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 20/02/2014, 08h43
  3. [AC-2003] Erreur 3021 Aucun Enregistrement
    Par aminnio dans le forum VBA Access
    Réponses: 3
    Dernier message: 26/06/2013, 19h16
  4. [Erreur 3021] aucun enregistrement
    Par osia1 dans le forum VBA Access
    Réponses: 6
    Dernier message: 02/05/2008, 11h40
  5. Erreur " 3021 Aucun enregistrement en cours"
    Par Secco dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 22/04/2008, 14h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo