grandss Posté(e) le 16 septembre 2020 Posté(e) le 16 septembre 2020 Salut, J'ai un pb avec mon lisp qui jusqu'ici fonctionnait très bien sur 2017.Je suis passé en 2018, et lorsque je charge le lisp, j'ai le message suivant : structure incorrecte de la liste en entréeSachant qu'il me dit que le lisp s'est correctement chargée.Auriez-vous une idée ? Merci. Le lisp est le suivant :(defun c:rbU (/n ) (vlax-for b (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object))) (setq n (vla-get-name B)) (if (= "*U" (substr n 1 2)) (vla-put-name b (substr n 2) ) ) Modeler Revit MEP - Référent BIMRevit MEP - Navisworks - MagicadAutocad MEP 2018 (mais plus beaucoup)
(gile) Posté(e) le 16 septembre 2020 Posté(e) le 16 septembre 2020 Salut, "structure incorrecte de la liste en entrée" signifie en général un problème d’appariement de parenthèse. Tu devrais être capable de le trouver avec l'aide de l'éditeur Visual LISP. PS : je ne suis pas certain que renommer les blocs anonymes soit une bonne idée. AutoCAD, comme certains développements tiers, filtrent les blocs dont le nom commence par *U. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Luna Posté(e) le 16 septembre 2020 Posté(e) le 16 septembre 2020 Coucou, Je suis d'accord avec (gile) :3Sinon, j'ai l'impression qu'il te manque une parenthèse à la ligne 5 car tu ne fermes pas la fonction (vla-put-name) donc il te manque une parenthèse pour terminer la fonction (defun)... Bisous,Luna
grandss Posté(e) le 16 septembre 2020 Auteur Posté(e) le 16 septembre 2020 Salut, "structure incorrecte de la liste en entrée" signifie en général un problème d’appariement de parenthèse. Tu devrais être capable de le trouver avec l'aide de l'éditeur Visual LISP. PS : je ne suis pas certain que renommer les blocs anonymes soit une bonne idée. AutoCAD, comme certains développements tiers, filtrent les blocs dont le nom commence par *U.Ca me sert à nettoyer certains plans non autodesk. Modeler Revit MEP - Référent BIMRevit MEP - Navisworks - MagicadAutocad MEP 2018 (mais plus beaucoup)
grandss Posté(e) le 16 septembre 2020 Auteur Posté(e) le 16 septembre 2020 Bon j'ai corrigé les parenthèses.Mais maintenant j'ai comme messages : nombre d'arguments insuffisantsPourtant ce lisp fonctionnait parfaitement avant. (defun c:rbU (/n ) (vlax-for b (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object))) (setq n (vla-get-name B)) (if (= "*U" (substr n 1 2)) (vla-put-name b (substr n 2)) ) ) ) Modeler Revit MEP - Référent BIMRevit MEP - Navisworks - MagicadAutocad MEP 2018 (mais plus beaucoup)
(gile) Posté(e) le 16 septembre 2020 Posté(e) le 16 septembre 2020 Étrange. As-tu essayé la méthode "Arrêt sur erreur" & "Source de la dernière interruption" ? Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Luna Posté(e) le 16 septembre 2020 Posté(e) le 16 septembre 2020 Coucou, Tu as quel AutoCAD au juste ? Moi ça semble fonctionner sur AutoCAD 2019...Peut-être que certaines fonctions ont été retravaillées sur AutoCAD MEP 2018...no lo sé.. Existe-t-il des différences de programmation entre les différents logiciel d'AutoCAD ou bien est-ce strictement le même système ? Bisous,Luna
grandss Posté(e) le 16 septembre 2020 Auteur Posté(e) le 16 septembre 2020 Étrange. As-tu essayé la méthode "Arrêt sur erreur" & "Source de la dernière interruption" ? <iframe width="640" height="650" src="https://screencast.autodesk.com/Embed/Timeline/a86e6108-ff20-42cc-b6f1-054f6989c0ee" frameborder="0" allowfullscreen webkitallowfullscreen></iframe> il me sélectionne toute la fonction :D Modeler Revit MEP - Référent BIMRevit MEP - Navisworks - MagicadAutocad MEP 2018 (mais plus beaucoup)
grandss Posté(e) le 16 septembre 2020 Auteur Posté(e) le 16 septembre 2020 Coucou, Tu as quel AutoCAD au juste ? Moi ça semble fonctionner sur AutoCAD 2019...Peut-être que certaines fonctions ont été retravaillées sur AutoCAD MEP 2018...no lo sé.. Existe-t-il des différences de programmation entre les différents logiciel d'AutoCAD ou bien est-ce strictement le même système ? Bisous,LunaJe suis sur AcadMEP2018. Je ne me souviens plus si je l'ai déjà essayé avant sur cette version.Mais je l'utilisé sur une version AcadMEP 2017 sans problème.Je vais tester ce soir chez moi, je crois que je suis encore en 2017.A ma connaissance, c'est un rajout du MEP sur AutoCAD. J'ai toute les fonctions AutoCAD. Modeler Revit MEP - Référent BIMRevit MEP - Navisworks - MagicadAutocad MEP 2018 (mais plus beaucoup)
(gile) Posté(e) le 16 septembre 2020 Posté(e) le 16 septembre 2020 il me sélectionne toute la fonction :D C'est parce qu'il manque une espace entre la barre oblique et le n dans la déclaration des variables (/n) donc l'interpréteur considère que /n est l'argument de la fonction au lieu de n variable locale d'où le 'nombre d'arguments insuffisants' et la sélection de toute la fonction par 'Source de la dernière interruption'. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
grandss Posté(e) le 17 septembre 2020 Auteur Posté(e) le 17 septembre 2020 Finalement.Merci pour votre aide. Jamais facile de déboguer quand tu connais pas le langage Modeler Revit MEP - Référent BIMRevit MEP - Navisworks - MagicadAutocad MEP 2018 (mais plus beaucoup)
lecrabe Posté(e) le 17 septembre 2020 Posté(e) le 17 septembre 2020 Hello Mr grandss SVP tu pourras nous remettre la bonne version du Lisp/VLisp ? LA SANTE (Stay Safe, Stay Home, Stay Live), Bye, lecrabe "triste"Automne 2020, la retraite... Dans 13 jours... Autodesk Expert Elite Team
grandss Posté(e) le 17 septembre 2020 Auteur Posté(e) le 17 septembre 2020 Hello Mr grandss SVP tu pourras nous remettre la bonne version du Lisp/VLisp ? LA SANTE (Stay Safe, Stay Home, Stay Live), Bye, lecrabe "triste"Automne 2020, la retraite... Dans 13 jours... Bien sûr.Le lisp : (defun c:rbU (/ n ) (vlax-for b (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object))) (setq n (vla-get-name B)) (if (= "*U" (substr n 1 2)) (vla-put-name b (substr n 2)) ) ) ) Modeler Revit MEP - Référent BIMRevit MEP - Navisworks - MagicadAutocad MEP 2018 (mais plus beaucoup)
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant