| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY bietet das umfangreichste Ökosystem von B2B als auch B2C-Lösungen für IT-Akteure auf dem Markt, eine Pressemitteilung
|
Autor
|
Thema: Mechanical Partlist mit Lisp auslesen (1918 mal gelesen)
|
SEHER Mitglied Systemanalytiker
Beiträge: 1203 Registriert: 13.03.2001
|
erstellt am: 27. Mai. 2004 09:55 <-- editieren / zitieren --> Unities abgeben:
|
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools (d-tools.eu)
|
erstellt am: 27. Mai. 2004 11:16 <-- editieren / zitieren --> Unities abgeben: Nur für SEHER
Hallo Seher, habe ich noch nicht gemacht, aber stell mal eine Zeichnung hier rein, dann brauch ich mir so etwas nicht erst basteln. Dann kann ich mal schauen, wo die dinger versteckt sind. Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man's hat! Treffen Sie (defun auf dem Autodesk Anwendertreffen am 15.06. in Steyr/Österreich! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SEHER Mitglied Systemanalytiker
Beiträge: 1203 Registriert: 13.03.2001
|
erstellt am: 27. Mai. 2004 12:35 <-- editieren / zitieren --> Unities abgeben:
|
SEHER Mitglied Systemanalytiker
Beiträge: 1203 Registriert: 13.03.2001 Inventor 2 bis 2022 häufig wechselnder Rechnerverkehr
|
erstellt am: 04. Jun. 2004 11:42 <-- editieren / zitieren --> Unities abgeben:
Hallo, bin immer noch auf der Suche nach dem Inhalt der partlist. Ist es möglich das dies mit Lisp nicht klappt? Muß ich evtl. auf vba umschwenken? Für jeden Hinweis (positiv oder negativ) dankbar. Gruß Seher
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools (d-tools.eu)
|
erstellt am: 04. Jun. 2004 13:12 <-- editieren / zitieren --> Unities abgeben: Nur für SEHER
Hallo Seher, war jetzt ein paar Tage außer Haus und habe auch so eine Menge zu tun, deshalb werdei ch wohl erst am Wochenende dazu kommen, und mir die Zeichnung einmal ansehen. Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man's hat! Treffen Sie (defun auf dem Autodesk Anwendertreffen am 15.06. in Steyr/Österreich! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SEHER Mitglied Systemanalytiker
Beiträge: 1203 Registriert: 13.03.2001
|
erstellt am: 23. Jun. 2004 10:37 <-- editieren / zitieren --> Unities abgeben:
|
Dammfeld Mitglied Maschinenbautechniker
Beiträge: 89 Registriert: 01.08.2001 HP Intel(R) Core(TM) i5 CPU 660 3,33 GHZ - 8GB RAM NVidia Quadro 2000 Windows 7- 64-bit Inventor2012-SP2
|
erstellt am: 23. Jun. 2004 12:45 <-- editieren / zitieren --> Unities abgeben: Nur für SEHER
Hallo Seher, mit Lisp kann man die Infopunkte ( wenn Du das meinst) auslesen. Diese nutze ich um die Daten (Stückliste) in eine Access-Datei zu schreiben. Es wird automatisch eine Stückliste erstellt. (bei schließen der Zeichnung) Ist für den Einkauf und Produktion gedacht. Gruss Dietmar Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SEHER Mitglied Systemanalytiker
Beiträge: 1203 Registriert: 13.03.2001
|
erstellt am: 23. Jun. 2004 13:43 <-- editieren / zitieren --> Unities abgeben:
|
CADwiesel Moderator CAD4FM UG
Beiträge: 1989 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 23. Jun. 2004 20:57 <-- editieren / zitieren --> Unities abgeben: Nur für SEHER
|
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9803 Registriert: 01.12.2003 One AutoCAD 2.5 - 2024, AutoCAD, Civil 3D, Win10/Win11
|
erstellt am: 24. Jun. 2004 01:10 <-- editieren / zitieren --> Unities abgeben: Nur für SEHER
Die Zeichnung wurde mit AutoCAD Mechanical 2004 DX erstellt, ohne ACM 2004 DX hat man nur Proxy Entities. Hier mal ein paar Codeschnipsel, um die partlist auszulesen
Code:
(DEFUN C:PRINTPARTLIST ( / elname eliste acmbom acmbomrow) (SETQ elname (CAR (ENTSEL "\nTeileliste wählen:")) eliste (ENTGET elname) ) (IF (AND elname (= "ACMPARTLIST" (CDR (ASSOC 0 eliste))) ) (PROGN ; ACMBOM = Bill of Material (SETQ acmbom (ENTGET (CDR (ASSOC 330 eliste)))) (FOREACH ele acmbom (IF (= (CAR ele) 350) (PROGN (SETQ acmbomrow (ENTGET (CDR ele))) ; Daten zur row (PRINT (ENTGET (CDR (ASSOC 340 acmbomrow)))) ) ) ) ) ) )
Udo Hübner
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SEHER Mitglied Systemanalytiker
Beiträge: 1203 Registriert: 13.03.2001
|
erstellt am: 24. Jun. 2004 10:16 <-- editieren / zitieren --> Unities abgeben:
|
bu Mitglied die Frage habe ich mir auch schon gestellt
Beiträge: 265 Registriert: 29.06.2004 AutoCAD 2010 Mechanical
|
erstellt am: 28. Mai. 2008 11:55 <-- editieren / zitieren --> Unities abgeben: Nur für SEHER
Hallo Herr Hübner, jetzt möchte ich doch mal einen relativ alten Beitrag wieder aktivieren. Ihren Quellcode habe ich wie untenstehend verändert. Das Problem ist jedoch, dass ich je nach InfoPunkt unterschiedliche Ergebnisse erhalte. Im Moment schiebe ich das auf den Unterschied ob der InfoPunkt aus dem "Bauch" von Mechanical kommt oder extern erzeugt wurde. Bin mir aber nicht sicher. In meinem Ergebnis stimmt die erste Zeile des 2ten InfoPunktes nicht. Hat jemand damit Erfahrung wie sich das Problem in Lisp löösen lässt? Testzeichnung hängt an. (setq elname (ssname (ssget "X" '((0 . "ACMPARTLIST")))0)) (setq eliste (ENTGET elname)) (IF (AND elname (= "ACMPARTLIST" (CDR (ASSOC 0 eliste)))) (PROGN (SETQ acmbom (ENTGET (CDR (ASSOC 330 eliste)))) (FOREACH ele acmbom (IF (= (CAR ele) 350) (PROGN (SETQ acmbomrow (ENTGET (CDR ele))) (PRINT (ENTGET (CDR (ASSOC 340 acmbomrow)))) (print "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX") (setq z 0) (while (nth z acmbomrow) (if (= 2 (nth 0 (nth z(ENTGET (CDR (ASSOC 340 acmbomrow)))))) (print (nth z(ENTGET (CDR (ASSOC 340 acmbomrow))))) );if (setq z (+ 1 z)) ) ) ) ) ) )
((-1 . <Entity name: 7e42b758> ) (0 . "ACMDATAENTRYPART") (5 . "11F23") (102 . "{ACAD_REACTORS") (330 . <Entity name: 7e417e20> ) (102 . "}") (330 . <Entity name: 7e417e20> ) (100 . "AcmDataEntry") (90 . 65) (90 . 4) (1 . "USER1") (2 . "12-14-016862-02") (3 . "") (1 . "DESCR") (2 . "Gegengewicht") (3 . "") (1 . "MATERIAL") (2 . "") (3 . "") (1 . "STANDARD") (2 . "16MnCr5") (3 . "") (90 . 1) (10 0.0 0.0 0.0) (330 . <Entity name: 7e42b760> ) (280 . 0) (280 . 0) (91 . 1) (330 . <Entity name: 7e42b768> ) (92 . 1) (331 . <Entity name: 7e42b760> ) (93 . 1) (94 . 1) (95 . -1) (280 . 0) (281 . 0) (332 . <Entity name: 0> ) (77 . 130)) "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" (2 . "12-14-016862-02") (2 . "Gegengewicht") (2 . "") (2 . "16MnCr5") ((-1 . <Entity name: 7e42d330> ) (0 . "ACMDATAENTRYPART") (5 . "12D3E") (102 . "{ACAD_REACTORS") (330 . <Entity name: 7e417e20> ) (102 . "}") (330 . <Entity name: 7e417e20> ) (100 . "AcmDataEntry") (90 . 78) (90 . 7) (1 . "GUPI") (2 . "G3V<></AMSTD/ISO/FSTN/SCREW/ROD/IS5201><AmValTable.RID=\"G_470\">") (3 . "") (1 . "NAME") (2 . "Gewindestift - ISO 4026 - M5x5") (3 . "GENTRACO,DEU,0,Gewindestift - ISO 4026 - M5x5,GENTRATX,%s - ISO 4026 - M5x5,(GEFMSG gefscrnt 1320)") (1 . "DESCR") (2 . "Gewindestift") (3 . "GENTRACO,DEU,0,Gewindestift,GENTRATX,%s,(GEFMSG gefscrnt 1320)") (1 . "STANDARD") (2 . "ISO 4026 - M5x5") (3 . "") (1 . "USERID") (2 . "") (3 . "") (1 . "VENDOR") (2 . "") (3 . "") (1 . "USER1") (2 . "10010060") (3 . "") (90 . 1) (10 0.0 0.0 0.0) (330 . <Entity name: 7e42d338> ) (280 . 0) (280 . 0) (91 . 1) (330 . <Entity name: 7e42d340> ) (92 . 0) (93 . 0) (95 . -1) (280 . 0) (281 . 0) (332 . <Entity name: 0> ) (77 . 130)) "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" (2 . "G3V<></AMSTD/ISO/FSTN/SCREW/ROD/IS5201><AmValTable.RID=\"G_470\">") (2 . "Gewindestift - ISO 4026 - M5x5") (2 . "Gewindestift") (2 . "ISO 4026 - M5x5") ; 3 forms loaded from #<editor "c:/Dokumente und Einstellungen/buchstabk/Desktop/pp_partlist.lsp">
------------------ Gruss bu Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9803 Registriert: 01.12.2003 One AutoCAD 2.5 - 2024, AutoCAD, Civil 3D, Win10/Win11
|
erstellt am: 28. Mai. 2008 12:02 <-- editieren / zitieren --> Unities abgeben: Nur für SEHER
|
bu Mitglied die Frage habe ich mir auch schon gestellt
Beiträge: 265 Registriert: 29.06.2004 AutoCAD 2010 Mechanical
|
erstellt am: 28. Mai. 2008 14:59 <-- editieren / zitieren --> Unities abgeben: Nur für SEHER
Hallo Herr Hübner, nein, meine sysinfo stimmt so nicht mehr. . Aktuell ist AutoCAD 2006 MPP und hoffentlich Anfang nächsten Jahres AutoCAD 2010 MPP. Dies soll uns jedoch heute noch nicht belasten. Trotzdem erstmal vielen Dank für die angebotene Hilfe. ------------------ Gruss bu Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |