IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Téléchargé 64 fois
Vote des utilisateurs
6 
0 
Détails
Licence : Non renseignée
Mise en ligne le 23 mars 2015
Plate-forme : Windows
Langue : Français
Référencé dans
Navigation

Réaliser un dictionnaire de données

Versions : Access 2000 et supérieures

Parfois, lorsque vous reprennez le projet d'un autre développeur, vous avez besoin de réaliser le dictionnaire des données de la base afin d'avoir sous les yeux l'ensemble des champs (attributs) utilisés.


Cet exemple de code utilise la librairie Microsoft DAO (il vous faut donc ajouter cette référence) afin de parcourir la structure du fichier mdb.


L'ensemble du résultat est envoyé vers une table nommée Tbl_Dictionnaire que le module se chargera de créer si celle-ci n'existe pas.
Avatar de the_madhatter
Candidat au Club https://www.developpez.com
Le 16/01/2012 à 17:56
Merci beaucoup pour ton travail, il m'a fait gagner un temps fou (reprise d'une grosse base Access d'un autre développeur pour la convertir dans mon logiciel).

Avatar de Jeannot45
Rédacteur/Modérateur https://www.developpez.com
Le 17/01/2012 à 8:20


Travail génial.
J'en avais ras le bol de faire des images écran des différentes tables !!!
C'est très utile, même pour le créateur de l'application. Cela permet d'avoir une documentation complète sur la base.

Je me permets d'ajouter à ce nouvel outil, un autre que j'ai également trouvé sur developpez.com : Analyse des dépendances
Avatar de ANDROID17
Futur Membre du Club https://www.developpez.com
Le 05/08/2012 à 0:17
Merci, c'est effectivement très pratique
Avatar de 78chris
Expert éminent sénior https://www.developpez.com
Le 05/08/2012 à 13:51
Bonjour

Superbe idée. Merci beaucoup.

Juste un détail : je l'ai testé sur une base ou existe une règle de validation sur un champ texte.

="P" Ou "C" plante de même que IN("P";"C".

En revanche cela fonctionne impec avec le même type de validation en numérique : in(1;2;3)

Pour être précis, EnrichirDico ligne
Code : Sélectionner tout
1
2
3
4
5
oDb.Execute "INSERT INTO " & NOMTABLEDICO & " VALUES (" & _
            MAJTexte(oTbl.Name) & "," & _
            MAJTexte(oFld.Name) & "," & _
            MAJTexte(TypeFr(oFld.Type)) & "," & _
            MAJTexte(oFld.ValidationRule) & ")"
Avatar de ratatam25
Membre du Club https://www.developpez.com
Le 09/01/2013 à 23:30
Merci pour ce module très pratique.
Avatar de Tsinjo
Membre à l'essai https://www.developpez.com
Le 15/01/2014 à 13:53
Comment l'utilisé, j'essaie mais ça marche pas !? une petite aide sera le bienvenu! Merci!!
Avatar de madefemere
Expert éminent https://www.developpez.com
Le 15/01/2014 à 14:16
Bonjour Tsinjo,

Qu'est-ce qui ne marche pas?
Tu importes le formulaire et le module dans ton application.
Tu lances l'application avec le bouton "Lancer l'exécution du dictionnaire" et tu attends que la liste s'affiche.

@+
Avatar de nce-ssi
Membre à l'essai https://www.developpez.com
Le 30/09/2014 à 17:06
Bonjour ,

Les règles de validation peuvent entrainer une erreur d'execution lorsqu'elle contiennent un "

Pour corriger il suffit de remplacer dans EnrichirDico() le code :
MAJTexte(oFld.ValidationRule)

par :
MAJTexte(Replace(oFld.ValidationRule, """", "'")
Avatar de marot_r
Modérateur https://www.developpez.com
Le 01/10/2014 à 0:05
En passant solution "dictionnaire de données du pauvre" :
* Lancer l'outil intégré de documentation de Access
* Fare imprimer dans un PDF (ça génère généralement un paquet de pages).
* Utiliser la fonction de recherche de l'outil de visualisation de PDF

Note attention au chemin d'accès long. L'entête de la page reprend le chemin au complet et masque le nom de l'objet ... pas cool :-(.

Je trouve cela pratique si on a pas d'outil plus perfectionné sous la main.
Bonus de cette solution : permet d'avoir autre chose que les tables (ex : formulaire, code) ce qui bien utile quand on a 50 écrans, pas de doc et qu'on cherche où tel champ est saisie dans l'application.

A+
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.