Salut, En fait je cherche juste un bout de code qui me permette d'ouvrir une base de données Microsoft access. Lorsque je travaille sous autocad, je travaille sur une commune. Dans chaque dessin, il y a une commune différente (il peut aussi y avoir plusieurs communes dans un même dessin). J'ai donc une base de données accès qui me permet de créer un fichier texte incluant le nom de commune et plusieurs infos relatives à cette même commune. Sous autocad, je récupère ces infos via le bout de code suivant afin de pouvoir les intégrer dans les blocs dès leur insertion.
(Defun commune_syndicat (/)
(setq filtex "C:/Mes documents/Commune_Syndicat.txt")
(setq x (open filtex "r")
ct 0
)
(Setq llisttxt nil)
(While
(Setq exte (read-line x))
(Setq exte (read exte))
(Setq llisttxt (cons exte llisttxt))
(Setq ct (+ ct 1))
)
(close x)
(Setq Commune(nth 7 llisttxt))
(Setq Syndicat(nth 6 llisttxt))
(Setq District(nth 5 llisttxt))
(setq SyndicatEU(nth 4 llisttxt))
(setq cope(nth 3 llisttxt))
(setq cope2(nth 2 llisttxt))
(setq copeeu(nth 1 llisttxt))
(setq copeeu2(nth 0 llisttxt))
)
Le problème est que si j'oublie de renseigner ma commune dans access, tous les blocs que j'insère comporte les mauvais renseignement dans leurs attributs. Je veux donc faire un lisp qui me demande si la commune renseignée correspond à la commune sur laquelle je travaille afin d'éviter toute erreur. Je demande qu'il m'affiche un volet "Vous êtes sur la commune de (commune renseignée par access), est-ce la bonne?" Si je répond "oui", le volet se ferme. si je répond "non", je voudrais qu'il aille m'ouvrir directement la base de données access qui me permet de modifier la commune. Pour l'instant, j'ai juste écris un bout de code qui m'alerte au démarrage mais je ne sais pas comment le compléter pour qu'il aille ouvrir le fichier access (dont le chemin est : Z:\Travaux partagés\Dessin\INDICE\Indice_2003.mdb)si je répond "non". J'espère que vous avez pu comprendre, en tout cas merci du temps que vous me consacrez.