Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Inventor
  iLogic - Parameter Ordner (excel) löschen

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:  iLogic - Parameter Ordner (excel) löschen (344 mal gelesen)
Annuit20
Mitglied
Konstrukteur


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

Beiträge: 15
Registriert: 23.04.2018

Inventor 2017
Enovia

erstellt am: 17. Aug. 2022 12:10    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


Para.png

 
Hallo,

jemand eine Idee wie der code dafür aussehen kann um den Excel Ordner zu löschen?
Ich möchte erreichen das die verlinkung zur Excel gebrochen wird und die Parameter in die Benutzerparameter übergehen. Händisch funktioniert das mit RK Ordner löschen.

Gruß

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

iogurt
Mitglied
Konstrukteur


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

Beiträge: 223
Registriert: 30.09.2005

Inventor 2021 Professional

erstellt am: 17. Aug. 2022 13:09    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 Annuit20 10 Unities + Antwort hilfreich

Annuit20
Mitglied
Konstrukteur


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

Beiträge: 15
Registriert: 23.04.2018

Inventor 2017
Enovia

erstellt am: 17. Aug. 2022 14:22    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

Perfekt. Vielen Dank!

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

Annuit20
Mitglied
Konstrukteur


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

Beiträge: 15
Registriert: 23.04.2018

Inventor 2017
Enovia

erstellt am: 17. Aug. 2022 21:14    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

Komisch, jetzt funktioniert es nicht mehr.
Kann bitte mal jemand über den code schauen?

Ich würde den code aber wie folgt abändern:
Dim oPart As PartDocument
    oPart = ThisDoc.Document

bzw.
Dim oPart As AssemblyDocument
    oPart = ThisDoc.Document

Code:

Dim oPart As PartDocument
    oPart = ThisApplication.ActiveDocument

Dim oParams As Parameters
Dim oDevParam As DerivedParameter
'Get Parameter Tables
    oParams = oPart.ComponentDefinition.Parameters
'check id there is a derived table
    If oParams.DerivedParameterTables.Count > 0 Then
For Each oDevTable In oParams.DerivedParameterTables

  'Kopie Parameters to User Parameters
  '! This not necessary if the derived parameters are used in the model parameters
  ' then they will be copied automatically
  For Each oDevParam in oDevTable.DerivedParameters
   'Copy Method from B.Sharan Raj
  Next
 
          If oDevTable.HasReferenceComponent = False Then
  'delete all linked tables
   oDevTable.Delete
  End If
Next
    End If


[Diese Nachricht wurde von Annuit20 am 17. Aug. 2022 editiert.]

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

iogurt
Mitglied
Konstrukteur


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

Beiträge: 223
Registriert: 30.09.2005

Inventor 2021 Professional

erstellt am: 18. Aug. 2022 08:07    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 Annuit20 10 Unities + Antwort hilfreich

Willst du von einer .iam aus diesen Code ausführen für alle Unter-BGs und Bauteile?

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

Annuit20
Mitglied
Konstrukteur


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

Beiträge: 15
Registriert: 23.04.2018

Inventor 2017
Enovia

erstellt am: 18. Aug. 2022 09:20    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

Hey,
jein.
Ich möchte aus einer Baugruppe untere iam/ipt ansprechen das ist aber kein Problem. Alle iam/ipt möchte ich nicht da es zu unerwünschten Problemen führen könnte.

Mich wundert es das der code erst funktioniert hat und jetzt halt nicht mehr, seltsam.
Ich habe diesen auch schon in verschiedenen Varianten angepasst es scheint so als würde er die Tabelle/Ordner nicht mehr finden. Ich habe es natürlich im Einzelteil versucht.

Diesen code nutzte ich um die ilogics in den iam/ipt anzusprechen funktz für andere scripte

Code:

ThisApplication.SilentOperation = True

Dim TimingBelt As Document
Dim TimingBeltFile As String
TimingBeltFile = ThisApplication.FileLocations.Workspace & "\" & "INV000013439.ipt"
TimingBelt = ThisApplication.Documents.Open(TimingBeltFile, False)
iLogicVb.Automation.RunRule(TimingBelt, "Break_Excel_Links")

...



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

Annuit20
Mitglied
Konstrukteur


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

Beiträge: 15
Registriert: 23.04.2018

Inventor 2017
Enovia

erstellt am: 18. Aug. 2022 11: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

Mit diesem code funktioniert es.
Sieht jemand irgentwelche Probleme da keine Abfrage enthalten ist ob die Tables nach extern verweisen?

Code:

Dim oDoc As PartDocument
oDoc = ThisDoc.Document

Dim oParams As Parameters
oParams = oDoc.ComponentDefinition.Parameters
Dim oTables As ParameterTables
oTables = oParams.ParameterTables

If oTables.count > 0
For Each oTable In oTables
oTable.Delete
Next
End If


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: 2072
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 18. Aug. 2022 23:24    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 Annuit20 10 Unities + Antwort hilfreich

Hallo

Der erste von dir gepostete Code löscht keine verknüpften Exceltabellen, sondern Referenzparametertabellen. Und die entstehen über abgeleitete Komponenten.

Der zweite Code führt die Regel in einer einzigen, namentlich genannten Datei aus. Du änderst jedes Mal den Code und passt den Dateinamen an? Nee, ne? Der erste Code nutzt zu Beginn ThisApplication.ActiveDcoument. Das unsichtbare Öffnen einer Datei führt meines Wissens nicht dazu, dass das geöffnete Dokument das aktive Dokument ist. Das is vermutlich weiterhin die Baugruppe aus der du den ersten Code ausführst. Besser wäre es im ersten Code stattdessen mit ThisDoc.Document zu arbeiten. Auch wenn er dann immer noch die falschen Objekte löscht.

Der dritte Code bügelt auch eingebettete Tabellen platt. Das könnte man durch prüfen des Linked-Properties der Parametertabellen verhindern. Welche Randbedingungen noch einzuhalten wären, weißt nur du selbst.

Meine Empfehlung: Kopiere nicht irgendwelchen Code, wenn du nicht verstehst was er macht und er nicht exlizit für dein Problem erstellt wurde.

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

RKW Solutions GmbH
www.RKW-Solutions.com

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

Annuit20
Mitglied
Konstrukteur


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

Beiträge: 15
Registriert: 23.04.2018

Inventor 2017
Enovia

erstellt am: 19. Aug. 2022 10:41    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

Hi, danke.
Der erste Code ist der Ursprungs code.
Der Zweite Code ist der Trigger in der ober ersten Assy, im script wird der Befehl für jede iam/ipt erweitert in dem ich die ilogics auslösen möchte. Funktioniert gut da ich so Einfluss habe zu welchem Zeitpunkt welche scripte ausgeführt werden. Ja sobald sich Unterbaugruppen ändern muss man das script anpassen. Diese Baugruppe ist eine Vorlage und erfährt nur selten Änderungen. Sobald die Vorlage angepasst wurde sollen die scripte sowieso ohne Funktion sein (sind unterdrückt), deshalb auch das lösen von der Excel.

Der dritte code stammt von mir und löscht wie ich ja selbst erkannt habe alle Tabellen.

"Das könnte man durch prüfen des Linked-Properties der Parametertabellen verhindern."
Kannst Du mir hier einen tipp geben wie der code aussehen könnte?

Gruß

[Diese Nachricht wurde von Annuit20 am 19. Aug. 2022 editiert.]

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: 2072
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 19. Aug. 2022 15:25    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 Annuit20 10 Unities + Antwort hilfreich

Hallo

Zitat:
Kannst Du mir hier einen tipp geben wie der code aussehen könnte?

Jepp, kann ich.

Code:

Dim oDoc As PartDocument= ThisDoc.Document
Dim oParams As Parameters= oDoc.ComponentDefinition.Parameters
Dim oTables As ParameterTables = oParams.ParameterTables

If oTables.count > 0
    For Each oTable In oTables
        If oTable.Linked = True Then
            oTable.Delete
        End If
    Next
End If


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

RKW Solutions GmbH
www.RKW-Solutions.com

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

Annuit20
Mitglied
Konstrukteur


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

Beiträge: 15
Registriert: 23.04.2018

Inventor 2017
Enovia

erstellt am: 19. Aug. 2022 16:43    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

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)2022 CAD.de | Impressum | Datenschutz