| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: iProperties auslesen (4128 mal gelesen)
|
3D-User Mitglied
Beiträge: 75 Registriert: 26.12.2012 HP Workstation Z440 Win10 64Bit IV 2018
|
erstellt am: 18. Feb. 2014 19:04 <-- editieren / zitieren --> Unities abgeben:
Hallo Forum Nun hat sich nach der Umstellung auf Inventor 2014 und Office 2010 64Bit noch ein Problem gezeigt das ich nicht lösen kann. Ich habe eine Funktion die aus einer geöffneten Baugruppe (.iam) alle Brennschnittteile in eine Excel-Tabelle (für den externen Brennschneider) schreibt. Dazu habe ich auch eine Möglichkeit geschaffen einen Kommentartext der in den iProperties der Zeichnungen (.idw) steht in diese Excel-Tabelle mit auf zu nehmen (z.B.: Fase schneiden). Das hat bisher ganz gut funktioniert, jetzt aber nicht mehr (ohne Fehlermeldung!). Hier die Funktion die den Text ausliest: ............ Private Function iPropTextBSZ(sFile As String) As String 'Öffnet die .idw und liest die Variable "TextBSZ" aus (Zusatztext zB."Fase 20x45°" wird ausgelesen) Dim oAppr As New ApprenticeServerComponent Dim oApprDoc As ApprenticeServerDrawingDocument Set oApprDoc = oAppr.Open(sFile) Dim oProp As Property For Each oProp In oApprDoc.PropertySets.Item("inventor user defined properties") If oProp.Name = "TextBSZ" Then iPropTextBSZ = oProp.Value End If Next Call oApprDoc.Close Set oAppr = Nothing End Function ........ Die Funktion wird wie vorgesehen aufgerufen, aber die „For Each“ schleife wird nicht mehr durchlaufen! Ich hoffe ich habe mein Problem verständlich beschrieben? Lg 3D-User
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RolandD Mitglied
Beiträge: 533 Registriert: 07.01.2005 i7-9700k 32GB DDR4-RAM Nvidia RTX 2060 SSD 970 m.2 Win10-64 (21H2) AIP 2020.3 Dell U3417W
|
erstellt am: 18. Feb. 2014 20:48 <-- editieren / zitieren --> Unities abgeben: Nur für 3D-User
Hallo, Überprüf mal dein For each... oApprDoc.PropertySets.item("{D5CDD505-2E9C-101B-9397-08002B2CF9AE}").item("TextBSZ").Value Vielleicht hat sich die Bezeichnung in der neuen Version geändert. Ich nehme immer die {Nummer}
------------------ Gruß Roland Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
3D-User Mitglied
Beiträge: 75 Registriert: 26.12.2012 HP Workstation Z440 Win10 64Bit IV 2018
|
erstellt am: 18. Feb. 2014 21:03 <-- editieren / zitieren --> Unities abgeben:
|
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 18. Feb. 2014 21:08 <-- editieren / zitieren --> Unities abgeben: Nur für 3D-User
|
3D-User Mitglied
Beiträge: 75 Registriert: 26.12.2012 HP Workstation Z440 Win10 64Bit IV 2018
|
erstellt am: 18. Feb. 2014 21:24 <-- editieren / zitieren --> Unities abgeben:
Hallo ne, leider auch nicht! Der Code hat sich von Inventor 2013 (64Bit) auf Inventor 2014 (64Bit) nicht verändert. Hat sich die API von Inventor 2014 verändert? (es gibt aber keine Fehlermeldung!) Lg 3D-User Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 20. Feb. 2014 19:38 <-- editieren / zitieren --> Unities abgeben: Nur für 3D-User
Hallo Ich bin ein Hirnie. Du rufst den ApprenticeServer aus Inventor heraus auf oder? Das geht nicht, da VBA jetzt auch 64bit ist und nicht mehr in einem eigenen Hostprozess läuft. Kurz, du mußt auf Apprentice verzichten. So, etwa: Code: Private Function iPropTextBSZ(sFile As String) As String 'Öffnet die .idw und liest die Variable "TextBSZ" aus (Zusatztext zB."Fase 20x45°" wird ausgelesen) Dim oApp As Application Set oApp = ThisApplication Dim oDoc As DrawingDocument Set oDoc = oApp.Documents.Open(sFile, False) Dim oProp As Property For Each oProp In oDoc.PropertySets.Item("inventor user defined properties") If oProp.Name = "TextBSZ" Then iPropTextBSZ = oProp.Value End If Next Call oDoc.Close Set oAppr = Nothing End Function
------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
3D-User Mitglied
Beiträge: 75 Registriert: 26.12.2012 HP Workstation Z440 Win10 64Bit IV 2018
|
erstellt am: 21. Feb. 2014 19:39 <-- editieren / zitieren --> Unities abgeben:
|