DenisHen Posté(e) le 3 décembre 2015 Posté(e) le 3 décembre 2015 Bonjour à la communauté, Voilà, j'ai un petit soucis, je tente de créer un petit bout de LiSP pour, toutes les 10 incrémentations, sauvegarder mon DWG. En gros, dans quelques-uns de mes LiSP, j'incrémente une variable. Lorsque j'ouvre mon DWG, elle est à 0, puis, à mesure du déroulement de différents LiSP, j'incrémente cette variable de +1. Enfin, si elle est égale ou suppérieur à 10, une sauvegarde sera effectuée... Voici mon bout de code qui sera appelé depuis mes LiSP :;;; Sauvegarde toutes les 10 opération LiSP... (defun c:CtrlSvGrd (/) (princ "\nDéveloppé par Denis H.") (setq SvGrd (rtos (vlax-ldata-get "DenisH" "SauveGarde" 0) 0 0)) (if (>= SvGrd 10) (progn (command "_qsave" "") (vlax-ldata-put "DenisH" "SauveGarde" 0) ) ;_ Fin de progn (setq SvGrd (+ SvGrd 1)) ) ;_ Fin de if (princ) ) ;_ Fin de defun Mais lorsque je l'exécute, AutoCAD me répond :Commande: CTRLSVGRDDéveloppé par Denis H.; erreur: valeur d'argument incorrecte: mode rtos: 0; redéfinir après erreur Et je ne saisi pas trop... Ce doit être le (rtos qui pose problème... Si quelqu'un a une idée ou une astuce, je suis preneur... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
(gile) Posté(e) le 3 décembre 2015 Posté(e) le 3 décembre 2015 Salut, Pourquoi utilises-tu rtos ? 1 Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
DenisHen Posté(e) le 3 décembre 2015 Auteur Posté(e) le 3 décembre 2015 Salut... Pfffff.... Effectivement... Pourquoi ? ? Désolé de t'avoir dérangé pour une bétise... Et merci pour ton aide, encore une fois... Pour ceux que ça peut interresser, voici une routine qui sauvegarde tous les 10 appels. ;;; Sauvegarde toutes les 10 opérations LiSP (defun CtrlSvGrd (/) (princ "\nDéveloppé par Denis H.") (setq SvGrd (vlax-ldata-get "DenisH" "SauveGarde" 0)) (if (>= SvGrd 10) (progn (command "_qsave" "") (vlax-ldata-put "DenisH" "SauveGarde" 0) ) ;_ Fin de progn (progn (setq SvGrd (+ SvGrd 1)) (vlax-ldata-put "DenisH" "SauveGarde" SvGrd) ) ;_ Fin de progn ) ;_ Fin de if (princ (strcat "\tIncrémentation : " (itoa SvGrd))) (princ) ) ;_ Fin de defun Et merci encore (gile)... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
didier Posté(e) le 3 décembre 2015 Posté(e) le 3 décembre 2015 Coucou Intéressant et merci du partage, mais je me pose une question et donc te la pose : Tous les 10 appels certes mais les appels de quoi ? Amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
gerardb1603 Posté(e) le 3 décembre 2015 Posté(e) le 3 décembre 2015 Moi aussi,je suis comme Didier. C'est quoi, ces appels ? Et je ne vois pas très bien à quoi sert ce Lisp...Pourquoi pas un petit CTRL+S de temps en temps ?
DenisHen Posté(e) le 18 mars 2016 Auteur Posté(e) le 18 mars 2016 Tous les 10 appels certes mais les appels de quoi ? J'entends par là que j'exécute "(CtrlSvGrd)" depuis d'autres macros. Je nommais ça des "appels"... Il y a un autre nom ? Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
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