Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  i-Logic Zugriff auf i-Properties

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  i-Logic Zugriff auf i-Properties (467 mal gelesen)
Frankx
Mitglied



Sehen Sie sich das Profil von Frankx an!   Senden Sie eine Private Message an Frankx  Schreiben Sie einen Gästebucheintrag für Frankx

Beiträge: 53
Registriert: 08.01.2019

Inventor Professional

erstellt am: 17. Nov. 2020 09:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ich möchte mittels I-Logic in einer ipt mit abgeleiteter (gespiegelter) Komponente auf bestimmte I-Properties der referenzierten Originaldatei zugreifen und diese auf das neue Teil übertragen.

Z.B. die benutzerdefinierte I-Property "Abmass" soll aus der Quell-ipt in die neue ipt übernommen werden.

iProperties.Value("Custom", "Abmass") = ThisApplication.ActiveDocument.ReferencedFileDescriptors(1).iProperties.Value("Custom", "Abmass")

Mit dem ersten Teil links vom = kann ich auf die I-Property "Abmass" zugreifen, das funktioniert.

Allerdings habe ich wohl noch einen Fehler auf der rechten Seite vom =. Der Wert wird nicht übergeben.

Hat jemand eine Idee?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




Sehen Sie sich das Profil von rkauskh an!   Senden Sie eine Private Message an rkauskh  Schreiben Sie einen Gästebucheintrag für rkauskh

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 17. Nov. 2020 10:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Frankx 10 Unities + Antwort hilfreich

Moin

Code:
iProperties.Value("Custom", "Abmass") = ThisApplication.ActiveDocument.ReferencedDocuments(1).PropertySets(4).Item("Abmass").Value

------------------
MfG
Ralf

RKW Solutions GmbH
www.RKW-Solutions.com

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Frankx
Mitglied



Sehen Sie sich das Profil von Frankx an!   Senden Sie eine Private Message an Frankx  Schreiben Sie einen Gästebucheintrag für Frankx

Beiträge: 53
Registriert: 08.01.2019

Inventor Professional

erstellt am: 17. Nov. 2020 10:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Vielen Dank. Das funktioniert sehr gut.

Ich hatte zwischenzeitlich folgende Lösung:

iProperties.Value("Custom", "Abmass") = iProperties.Value(sRefDatName, "Custom", "Abmass")

Wobei sRefDatName den Dateinamen der referenzierten Datei beinhaltet.
Das Problem war hier, dass man nicht den Pfad der referenzierten Datei dabei hat.
ILogic akzeptiert hier selötsamerweise nur den Namen ohne Pfad.

Deine Lösung ist demnach die bessere!


.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




Sehen Sie sich das Profil von rkauskh an!   Senden Sie eine Private Message an rkauskh  Schreiben Sie einen Gästebucheintrag für rkauskh

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 17. Nov. 2020 11:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Frankx 10 Unities + Antwort hilfreich

Hallo

Ich denke dein Code funktioniert nur solange, wie es keine zwei referenzierten Dateien mit gleichem Dateiname aber unterschiedlichen Pfad gibt. Das könnte durch eine abgeleitete Baugruppe die bei Dateien beinhaltet passieren oder durch ableiten beider Dateien.

------------------
MfG
Ralf

RKW Solutions GmbH
www.RKW-Solutions.com

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Frankx
Mitglied



Sehen Sie sich das Profil von Frankx an!   Senden Sie eine Private Message an Frankx  Schreiben Sie einen Gästebucheintrag für Frankx

Beiträge: 53
Registriert: 08.01.2019

Inventor Professional

erstellt am: 17. Nov. 2020 12:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ja, deshalb war mir bei der Sache auch nicht ganz wohl.
Mit Deiner Lösung ist das jetzt eindeutig.


Inzwischen bin ich etwas weiter. Ich möchte im Spiegelteil den Werkstoff vom Originalteil übernehmen.

' Übernahme von Werkstoff
ThisDoc.Document.ComponentDefinition.Material.Name = ThisApplication.ActiveDocument.ReferencedDocuments(1).ComponentDefinition.Material.Name


Das funktioniert soweit.
Allerdings, wenn ich im Spiegelteil den Werkstoff auch nur ein einziges mal direkt geändert habe, dann ergibt das bei Neuaufruf des Makros keine Aktualisierung mehr (zur referenziertem ipt).

Das ist nicht weiter schlimm, da ich ja eigentlich immer den Werkstoff des Originalteiles übernehmen möchte. Nur etwas wunderlich ist das schon.

.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz