| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Wie Speicherort der *.idw auslesen? (2964 mal gelesen)
|
fadeaway Mitglied Konstrukteur
Beiträge: 46 Registriert: 20.07.2005 Win10 Pro 64bit/32GB IV 2021.4.4
|
erstellt am: 08. Mai. 2007 15:48 <-- editieren / zitieren --> Unities abgeben:
Hallo VBA-Forum, mit dem unten folgenden Code kann man die IDW zur aktuell geöffneten IPT per Knopfdruck öffnen lassen. Leider gelingt dies nur wenn sich die IDW/IPT im selben Ordner befinden. Bei uns ist dies nicht der Fall, die IDW's sind in einem anderen Ordner im Projekt (Ordnername: Zeichnungen). Meine Frage/Bitte: Was muss ich wie ändern um die gewünschte IDW im Zeichnungsordner zu öffnen? Ich bin absoluter VBA-Newbie. Hab zwar probiert in der Inventor API was zu finden, aber ohne Beistand wird das wohl nichts. Es hängt doch mit diesem sFullFileName zusammen, oder? In der Suche finde ich nur Informationen, die das Speichern betreffen. Code: Sub OpenIDW() On Error GoTo Oops Dim oDoc As Document Set oDoc = ThisApplication.ActiveDocument Dim sFullFileName As String sFullFileName = oDoc.FullFileName Dim sDrawingName As String sDrawingName = Left(sFullFileName, Len(sFullFileName) - 4) & ".idw" Dim oDrawDoc As DrawingDocument Set oDrawDoc = ThisApplication.Documents.Open(sDrawingName) Exit Sub Oops: MsgBox "Oops! Something went wrong!", vbInformation End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
daywa1k3r Moderator Softwareentwickler
Beiträge: 3497 Registriert: 01.08.2002 Alienware m17x, Win7, Inventor2012
|
erstellt am: 08. Mai. 2007 15:59 <-- editieren / zitieren --> Unities abgeben: Nur für fadeaway
|
fadeaway Mitglied Konstrukteur
Beiträge: 46 Registriert: 20.07.2005 Win10 Pro 64bit/32GB IV 2021.4.4
|
erstellt am: 08. Mai. 2007 16:05 <-- editieren / zitieren --> Unities abgeben:
Hallo daywa1k3r, ja genau so ist es. Wie ich oben auch schon geschrieben hatte öffnet er die IDW zur IPT wenn sie im selben Ordner sind. Leider ist das bei uns nicht der Fall. Die IPT befindet sich in Ordner "Bauteile", die IDW im Ordner "Zeichnungen". Wie kann ich also den Pfad modifizieren? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
daywa1k3r Moderator Softwareentwickler
Beiträge: 3497 Registriert: 01.08.2002 Alienware m17x, Win7, Inventor2012
|
erstellt am: 08. Mai. 2007 16:10 <-- editieren / zitieren --> Unities abgeben: Nur für fadeaway
Vielleicht so: Code:
Sub OpenIDW() On Error GoTo Oops Dim oDoc As Document Set oDoc = ThisApplication.ActiveDocument Dim sFullFileName As String sFullFileName = oDoc.FullFileName Dim sDrawingName As String sDrawingName = Left(sFullFileName, Len(sFullFileName) - 4) & ".idw" sDrawingName = Replace(sDrawingName, "Bauteile", "Zeichnungen") Dim oDrawDoc As DrawingDocument Set oDrawDoc = ThisApplication.Documents.Open(sDrawingName) Exit Sub Oops: MsgBox "Oops! Something went wrong!", vbInformation End Sub
------------------ Grüße Igor FX64 Software Solutions Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fadeaway Mitglied Konstrukteur
Beiträge: 46 Registriert: 20.07.2005 Win10 Pro 64bit/32GB IV 2021.4.4
|
erstellt am: 08. Mai. 2007 16:21 <-- editieren / zitieren --> Unities abgeben:
|
lbcad Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau und CAD-Trainer
Beiträge: 3794 Registriert: 15.02.2001
|
erstellt am: 10. Mai. 2007 15:25 <-- editieren / zitieren --> Unities abgeben: Nur für fadeaway
Zitat: Original erstellt von fadeaway: ...mmmhh, wie einfach es doch sein kann wenn man Ahnung davon hat...Vielen Dank für deine schnelle Hilfe Igor. 10 U's für dich. Gruß fadeaway
vom mir auch gleich mal ------------------ Gruß Lothar --------------------------------------------------- Während man es aufschiebt, verrinnt das Leben. Lucius Annaeus Seneca (ca. 4 v. Chr - 65 n. Chr.) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Pete85 Mitglied
Beiträge: 154 Registriert: 09.05.2016
|
erstellt am: 17. Jun. 2019 09:14 <-- editieren / zitieren --> Unities abgeben: Nur für fadeaway
Servus, ich habe momentan das Problem, dass der Zeichnungsnamen nicht dem Bauteilnamen entspricht. Dadurch funktioniert die Änderung des Dateityps nichts. Kann man über VBA die Zeichnung direkt über einen Verweis des Bauteils öffnen? Was ich suche ist: Öffne mir die Referenzierte Zeichnung zum Bauteil. Meines Wissens steht kein Verweis zur Zeichnung in den IProperties Vielen Dank für eure Hilfe Gruß Pete Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fadeaway Mitglied Konstrukteur
Beiträge: 46 Registriert: 20.07.2005 Win10 Pro 64bit/32GB IV 2021.4.4
|
erstellt am: 17. Jun. 2019 10:28 <-- editieren / zitieren --> Unities abgeben:
|
KraBBy Mitglied Maschinenbau-Ingenieur
Beiträge: 601 Registriert: 19.09.2007 Inventor Professional 2020 WinX
|
erstellt am: 17. Jun. 2019 11:55 <-- editieren / zitieren --> Unities abgeben: Nur für fadeaway
Servus, auch nach meiner Meinung gibt es keinen Verweis von Modell zu Zeichnung. Sowas ist wohl eher (Basis)Funktion eines PDM-Systems. Edit: Wie unterscheiden sich denn die Dateinamen? Lässt sich aus dem Namen vom Modell der Name der Zeichnung herleiten? (z.B. letzte Stellen 00 für Modell und 10 für Zeichnung, oder so was) so was gab es z.B. hier schon mal Ungleichnamige Zeichnung zu Bauteil öffnen ------------------ Gruß KraBBy [Diese Nachricht wurde von KraBBy am 17. Jun. 2019 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KraBBy Mitglied Maschinenbau-Ingenieur
Beiträge: 601 Registriert: 19.09.2007 Inventor Professional 2020 WinX
|
erstellt am: 17. Jun. 2019 12:07 <-- editieren / zitieren --> Unities abgeben: Nur für fadeaway
|
Pete85 Mitglied
Beiträge: 154 Registriert: 09.05.2016
|
erstellt am: 17. Jun. 2019 12:35 <-- editieren / zitieren --> Unities abgeben: Nur für fadeaway
Hi, meiner Ansicht nach wird bei der Ausführung auf den Dateipfad und den Namen zurück gegriffen oder auf die iProperties, die nicht verwendet werden können. Bei mir ist es so, dass sich die Zeichnung und das Modell nicht im gleichen Ordner befinden müssen und sich die Namen der Zeichnung zu den Bauteilen unterscheiden. In den iProperties kann leider auch kein Querverweis gezogen werden. Gibt es eine Möglichkeit die Modellreferenz zu einer Zeichnung auszulesen? Ziel wäre dann Modellpfad und Zeichnungspfad zusammen zu führen und über eine weitere Suche die Textdatei auszulesen. Vielen Dank für eure Hilfe. Gruß Pete Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KraBBy Mitglied Maschinenbau-Ingenieur
Beiträge: 601 Registriert: 19.09.2007 Inventor Professional 2020 WinX
|
erstellt am: 17. Jun. 2019 19:46 <-- editieren / zitieren --> Unities abgeben: Nur für fadeaway
Auslesen der Modell Referenz zu einer Zeichnung: Über die .ReferencedDocuments Auflistung zum jeweiligen Zeichnungsdocuments (siehe ein voriger Post) Das sollte auch mit "apprentice" möglich sein (IV API ohne Benutzeroberfläche). Was ist damit gemeint, dass iProperties "nicht verwendet werden können"? Wie stellst du dir das mit der Textdatei vor? Jede Nacht alle Zeichnungen durchstöbern und die Verweise aktualisieren? (dann würde die Methode nicht für Zeichnungen von heute greifen). Oder die Datei laufend aktualisieren, beim Speichern einer idw? (ggf Probleme bei mehreren Benutzern) Unabhängig vom Ablageort der Information muss du dir ein Verfahren einfallen lassen, wie du die Verweise ggf auch wieder los wirst. Das wird nötig, wenn zb in einer Zg y mit mehreren Einzelteilen (vielleicht Schweissteil) die Ansicht von einem Teil x gelöscht wird. Dann steht evtl trotzdem irgendwo die Information, dass Teil x in der Zeichnung y referenziert wird. ------------------ Gruß KraBBy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |