| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
Autor
|
Thema: Selbstgemachtes Attribut in MM abspeichern (2192 mal gelesen)
|
MagnusDeininger Mitglied
Beiträge: 53 Registriert: 17.12.2002
|
erstellt am: 16. Apr. 2007 09:29 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe ein kleines Lisp erzeugt, mit dem man Attribute an Teile ranhängen kann. Leider gehen die angehängte Attribute durch das Speicher in die ModelManager-Datenbank immer verloren. Woran liegt das? md Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
highway45 Moderator Bastler mit Diplom
Beiträge: 6331 Registriert: 14.12.2004 CoCreate Modeling V20 + PE6 NotePad++
|
erstellt am: 16. Apr. 2007 09:49 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
|
MagnusDeininger Mitglied
Beiträge: 53 Registriert: 17.12.2002
|
erstellt am: 16. Apr. 2007 09:51 <-- editieren / zitieren --> Unities abgeben:
|
Walter Geppert Moderator Frank und Frei
Beiträge: 2143 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook 17 G4, Windows 10 Pro 64
|
erstellt am: 16. Apr. 2007 10:12 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
Also bei völlig "selbstgestrickten" Attributen sollte das nicht passieren. Hast du vielleicht Attributwerte von Attributen verändert, die der MM auch verwendet (irgendwas mit "DB-xxxx")? Dazu gibts im IKit-Manual ein eigenes Kapitel "ModelManager Module - Database Attributes" ------------------ meine LISP-Makros sind auf osd.cad.de Grüße aus Wien Walter DC4 Technisches Büro GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MagnusDeininger Mitglied
Beiträge: 53 Registriert: 17.12.2002
|
erstellt am: 16. Apr. 2007 13:02 <-- editieren / zitieren --> Unities abgeben:
Nein, ich habe ein eigenes Attribut drangehängt: so sieht das aus, was ich dran hängen möchte: (sd-attach-item-attribute PART "productiontype:" ;;:attachment :contents ;;geht auch nicht? :attachment :instance n-copy :maintain n-merge :detach n-split :detach n-xform :maintain :filing '(:sd-file :mi-file) :values val_list ) Prinzipiell möchte ich sämtliche Teile ein Attribut geben, das das Teil selbst in der Herstellungsart kenntlich macht. So z.B. Frästeil, Drehteil usw. Nur gehen leider die Attribute beim Speichern in den ModelManager verloren; beim Speichern als PKG o.ä. geht nichts verloren. md Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
Beiträge: 2143 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook 17 G4, Windows 10 Pro 64
|
erstellt am: 16. Apr. 2007 13:21 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
Wenn du ein Attribut an :instance hängst, wird dieses nicht an das betreffende Teil/Baugruppe gehängt, sondern an den Besitzer! Als Package gespeichert, fällt das nicht auf, weil beim Laden wieder alles beim alten ist. Wenn das aber in den MM gspeichert wird, zerlegt der das in lauter einzelne Dateien und baut es erst beim Laden wieder zusammen. Wenn du aber z.B. zum Detailieren nur den Teil alleine lädst, bleibt das Attribut unerkannt in den ewigen MM-Jagdgründen. Dieses Attribut ist auch nur in der jeweiligen, speziellen Besitzerbaugruppe vorhanden! ------------------ meine LISP-Makros sind auf osd.cad.de Grüße aus Wien Walter DC4 Technisches Büro GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RainerH Mitglied Techn. Ang. (Konstruktion)
Beiträge: 736 Registriert: 22.01.2003 OSDM 14.00A OSDD 14.50 MM 14.00A Windows-XP Pro x64 Edition -------------------------- HP xw6400 Intel Xeon 3.00 GHz 4.00 GB RAM ATI FireGL V7200
|
erstellt am: 16. Apr. 2007 13:55 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
@Magnus Du solltest die Infos auf :contents legen ! Dies, direkt ueber die Eingabezeile, funktioniert: Code:
(oli::sd-attach-item-attribute (oli::sd-inq-curr-part) "productiontype:" :attachment :contents n-copy :maintain n-merge :detach n-split :detach n-xform :maintain :filing '(:sd-file :mi-file) :values (list "EINTRAG_1" "WERT_1") )
Auch nach dem neuladen sind die Infos noch da ! HTH Gruss RainerH. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MagnusDeininger Mitglied
Beiträge: 53 Registriert: 17.12.2002
|
erstellt am: 16. Apr. 2007 14:30 <-- editieren / zitieren --> Unities abgeben:
Wenn ich mit :contents was dranhängen will, wird nichts daran gehängt. Ich habe Deinen Code über die Eingabezeile ausgeführt. Funktioniert bei mir leider nicht. (Wir haben die Version 14.00B) Vielleicht hats auch dawas mit zu tun. Gruß, md Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
Beiträge: 2143 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook 17 G4, Windows 10 Pro 64
|
erstellt am: 16. Apr. 2007 14:40 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
Zitat: Original erstellt von MagnusDeininger: ... wird nichts daran gehängt.
Wie stellst du das denn fest? Probier mal den Code von RainerH mit einem (display (oli::sd-attach-item-attribute ....)) rundherum. Wenn das Attachment funktioniert hat, ist die Antwort "T" sonst "NIL" ------------------ meine LISP-Makros sind auf osd.cad.de Grüße aus Wien Walter DC4 Technisches Büro GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MagnusDeininger Mitglied
Beiträge: 53 Registriert: 17.12.2002
|
erstellt am: 16. Apr. 2007 23:13 <-- editieren / zitieren --> Unities abgeben:
also ich das alles noch mal ausprobiert: wenn ich (display(oli:sd-attach-item-attribut.. ) mach erhalte ich "T" (.. anscheinend gehts) Nur, wie zeige ich das an dem Teil angehängte Attribut an?? Gruß und vielen Dank für Eure Hilfe aber ich komme hier anscheinend alleine nicht weiter, denn auch bei den Beispielen aus dem IntergrationsKit erhalte ich nur Fehlermeldung: The function GPNTWC in undefined. Gruß, md p.s. ...warum haben sich die bei CC eigentlich für LISP entschieden????
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dieter Kotsch Mitglied
Beiträge: 311 Registriert: 10.08.2002
|
erstellt am: 17. Apr. 2007 08:13 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
|
RainerH Mitglied Techn. Ang. (Konstruktion)
Beiträge: 736 Registriert: 22.01.2003 OSDM 14.00A OSDD 14.50 MM 14.00A Windows-XP Pro x64 Edition -------------------------- HP xw6400 Intel Xeon 3.00 GHz 4.00 GB RAM ATI FireGL V7200
|
erstellt am: 17. Apr. 2007 13:18 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
Zitat: Original erstellt von MagnusDeininger: ... Nur, wie zeige ich das an dem Teil angehängte Attribut an?? ...
@Magnus Das geht mit einem Goodie: Beschreibung: Displaying defined attributes of a part/assembly
---------------------------------------------------------------------- Overview This small utility display all the user defined attributes attached to a sel-item ---------------------------------------------------------------------- Activation Enter into command line (load "inq_all_atts") Or add this line to your sd_customization file. Loading this file will create a button "Inq Atts" in the toolbox. ---------------------------------------------------------------------- Description This utility will enumerate all the user defined attributes, then display the keys name and the value for each attribute.
Ich frag mich dann, wie du sagen kannst dass es nicht angehaengt wird HTH Gruss RainerH. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
Beiträge: 2143 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook 17 G4, Windows 10 Pro 64
|
erstellt am: 17. Apr. 2007 14:48 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
Zitat: Original erstellt von MagnusDeininger: p.s. ...warum haben sich die bei CC eigentlich für LISP entschieden????
Weil das rekursive Bearbeiten von Strukturen (Baugruppe-Unterbaugruppe-Teil-Element) damit unheimlich elegant geht und LISP schon per Definitionem eine extrem erweiterbare Sprache ist: man schreibt mit LISP-Code ganz einfach neue LISP-Funktionen. Ist fast wie bei Münchhausen, man zieht sich am eigenen Zopf aus dem Sumpf. ------------------ meine LISP-Makros sind auf osd.cad.de Grüße aus Wien Walter DC4 Technisches Büro GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MagnusDeininger Mitglied
Beiträge: 53 Registriert: 17.12.2002
|
erstellt am: 18. Apr. 2007 09:57 <-- editieren / zitieren --> Unities abgeben:
|
der_Wolfgang Ehrenmitglied V.I.P. h.c. Tastenhauer
Beiträge: 2017 Registriert: 3.20. ● PE60+80@home ● W10 Pro Build19044.2364 ● Drafting V17~V20.5.1 ● Modeling V17~V20.5.1
|
erstellt am: 18. Apr. 2007 23:13 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
|
JC Wasti Mitglied Student
Beiträge: 52 Registriert: 10.11.2004 ACADR14,Genius14,ACADM6PP alles auf WinXP
|
erstellt am: 19. Apr. 2007 14:31 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
Hallo Zusammen, ich habe gerade ein ähnliches Problem! Und zwar: Wenn ich das Goodie (load "inq_all_atts") starte und ausführe werden mir Attribute angezeigt. Frage ich nun mit dem Befehl (sd-inq-item-attributes (sd-inq-curr-part)) die Attribute ab, wird NIL angezeigt! Zudem bekomme ich, wenn ich den Befehl (sd-inq-db-attributes ...) verwenden möchte eine Fehlermeldung. Da heißt es, dass dieser Befehl nicht existiert! Kann mir jemand sagen wie ich Attribute, die über den ModelManager definiert werden, abfragen kann?? Danke. Gruß JC Wasti Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
Beiträge: 2143 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook 17 G4, Windows 10 Pro 64
|
erstellt am: 19. Apr. 2007 16:19 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
Ein Beispiel für ein Stammdatenattribut: Code: (defun my-get-pref-name-info (teil) (let (attributliste attribut inf) (setf attributliste (sd-inq-item-attributes teil :attachment :contents)) (setf inf nil) (dolist (attribut attributliste) (progn (when (string= attribut "DB-PREF") (progn (setq inf (sd-inq-item-attribute teil attribut :NAME :attachment :contents)) );;progn );;when );;progn );;dolist (when (typep inf 'STRING) (when (= (length inf) 0) (setf inf nil)) );;when (values inf) );;let )
Gibt entweder den Feldinhalt von NAME als {String} zurück oder NIL------------------ meine LISP-Makros sind auf osd.cad.de Grüße aus Wien Walter DC4 Technisches Büro GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
Beiträge: 2143 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook 17 G4, Windows 10 Pro 64
|
erstellt am: 19. Apr. 2007 16:24 <-- editieren / zitieren --> Unities abgeben: Nur für MagnusDeininger
Noch ein Nachtrag: Offensichtlich vergibt MM von Version zu Version immer weniger DB-Atrribute an die OSM-Objekte weiter, um das Modell schlank zu halten. Wer trotzdem über Attribute aus OSM auf MM-Feldinhalte zugreifen will, muss mit den neuen Funktionen arbeiten, die in meinem ersten Beitrag in diesem Thread erwähnt wurden. ------------------ meine LISP-Makros sind auf osd.cad.de Grüße aus Wien Walter DC4 Technisches Büro GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |