| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Eindeutige Identifizierung von ComponentOccurence-Objekten innerhalb von Baugruppen? (1023 mal gelesen)
|
sebastianapa Mitglied Student
Beiträge: 20 Registriert: 13.11.2006 .NET 2.0, VS2005, IV11
|
erstellt am: 19. Dez. 2006 16:08 <-- editieren / zitieren --> Unities abgeben:
Hallo! Ist es richtig, dass die ComponentOccurrence-Objekte in einer Baugruppe (also die dort verbauten Komponenten = Exemplare einer Baugruppe/ eines Bauteils) nur über den Namen (also das Property Name und/oder _DisplayName) identifiziert werden können? Oder gibt es dort eine Möglichkeit eine eindeutige, unveränderliche Identifikation mit einer GUID zu realisieren, wie das ja z.B. auch bei Inventor.PartDocument.InternalName der Fall ist? Hintergrund: Ich möchte auch nachdem ein Benutzer im Inventor den Namen eines Exemplars manuell geändert hat, dieses Exemplar weiterhin über die Api identifizieren können. Ansonsten kann ich es ja nicht mehr finden. Gruß Sebastian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BJ Mitglied PLM System Administrator
Beiträge: 488 Registriert: 20.12.2002 SolidEdge Inventor AutoCad --- Dell Precision M90 Win XP Prof., SP 2 2 GHz Dual Core, 2GB RAM NVIDIA Quadro FX 2500M, 512MB
|
erstellt am: 19. Dez. 2006 16:45 <-- editieren / zitieren --> Unities abgeben: Nur für sebastianapa
Hi, nun, bei verbauten Parts kannst du weiterhin mit dem "InternalName" arbeiten, bei Baugruppen scheint es keinen zu geben? Eventuell prüfst du hier den "FullFileName"? [Edit] Doch, gefunden! Unter dem entsprechenden Item "Item.ReferencedFileDescriptor.ReferencedDocument" gibts hier auch den "InternalName". [/Edit] Gruß, BJ
[Diese Nachricht wurde von BJ am 19. Dez. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
daywa1k3r Moderator Softwareentwickler
Beiträge: 3497 Registriert: 01.08.2002 Desktop: 3.3GHz;8GB;SSD OCZ Vertex 3;Gainward Phantom GTX570 Laptop: Alienware m17x Win7, Inventor2012
|
erstellt am: 19. Dez. 2006 18:10 <-- editieren / zitieren --> Unities abgeben: Nur für sebastianapa
Zitat: Original erstellt von BJ: Hi, nun, bei verbauten Parts kannst du weiterhin mit dem "InternalName" arbeiten, bei Baugruppen scheint es keinen zu geben? Eventuell prüfst du hier den "FullFileName"?[Edit] Doch, gefunden! Unter dem entsprechenden Item "Item.ReferencedFileDescriptor.ReferencedDocument" gibts hier auch den "InternalName". [/Edit] Gruß, BJ [Diese Nachricht wurde von BJ am 19. Dez. 2006 editiert.]
Der Unterschied zwischen Occurrence und Document ist dir schon klar? @sebastianapa Schon mal GetReferenceKey probiert? Laut Hilfedatei: Zitat:
ComponentOccurrence->GetReferenceKeyMethod that generates and returns the reference key for this entity. The reference key is an array of bytes that can be used as a persistent reference for this entity. To obtain the entity at a later time using the reference key you use the BindKeyToObject method of the ReferenceKeyManager object. The ReferenceKeyManager object is obtained using the ReferenceKeyManager property of the Document object.
------------------ Grüße Igor FX64 Software Solutions Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BJ Mitglied PLM System Administrator
Beiträge: 488 Registriert: 20.12.2002 SolidEdge Inventor AutoCad --- Dell Precision M90 Win XP Prof., SP 2 2 GHz Dual Core, 2GB RAM NVIDIA Quadro FX 2500M, 512MB
|
erstellt am: 20. Dez. 2006 09:49 <-- editieren / zitieren --> Unities abgeben: Nur für sebastianapa
Zitat: Der Unterschied zwischen Occurrence und Document ist dir schon klar?
Vorkommnisse sind IMHO nix anderes als referenzierte Dokumente mit zusätzlichen Methoden und Eigenschaften. Wenn die Occ in der Baugruppe unbenannt wird, bleibt die GUID die selbe. Gruß, BJ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
sebastianapa Mitglied Student
Beiträge: 20 Registriert: 13.11.2006 .NET 2.0, VS2005, IV11
|
erstellt am: 20. Dez. 2006 10:08 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von BJ: Wenn die Occ in der Baugruppe unbenannt wird, bleibt die GUID die selbe. BJ
Die GUID des Komponentendokuments bleibt gleich! Aber für den häufigen Fall dass in einer *.iam mehr als ein Exemplar (Inventor.ComponentOccurrence) eines Komponentendokuments (Inventor.Document) vorhanden ist, kannst Du die nur über den Exemplarnamen unterscheiden, die GUID ist ja bei jedem Exemplar gleich. Gruß Sebastian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BJ Mitglied PLM System Administrator
Beiträge: 488 Registriert: 20.12.2002 SolidEdge Inventor AutoCad --- Dell Precision M90 Win XP Prof., SP 2 2 GHz Dual Core, 2GB RAM NVIDIA Quadro FX 2500M, 512MB
|
erstellt am: 20. Dez. 2006 10:15 <-- editieren / zitieren --> Unities abgeben: Nur für sebastianapa
|