Community
Inventor - Deutsch
Das Forum für alle Fragen rund um Autodesk Inventor, iLogic, Factory Design, Automation und mehr. Der Ort zum Fragen stellen, Antworten erhalten und Wissen teilen.
abbrechen
Suchergebnisse werden angezeigt für 
Anzeigen  nur  | Stattdessen suchen nach 
Meintest du: 

Verwaistes Ersatzobjekt löschen

8 ANTWORTEN 8
GELÖST
Antworten
Nachricht 1 von 9
markus.schrepfer
1316 Aufrufe, 8 Antworten

Verwaistes Ersatzobjekt löschen

Hallo,

ich habe eine Baugruppe (ENG-0160245-.iam), die durch einen Fehler (anscheinend bei der Migration von Release 2009, wenn die Baugruppe mit der Detailgenauigkeit gespeichert wurde, von der das Ersatzobjekt erzeugt wurde) einen Verweis auf das Ersatzobjekt (ENG-0155894-.ipt) der urpsrünglichen Baugruppe (ENG-0155863-.iam) hat.

 

Dieser Fehler wurde beim Kopieren der Baugruppe immer wieder mit kopiert.Das richtige Ersatzobjekt ist in jeder der kopierten Baugruppe vorhanden und macht auch keine Probleme.

Allerdings schlägt der Fehler jetzt bei der Überprüfung der Daten auf, dass eine falsche Referenz in der BG enthalten ist.

Ich habe schon mit VBA einiges versucht, um diese "Geisterreferenz" zu löschen. Allerdings ohne Erfolg.

 

Sub IAM_DeleteOldSubstitute()

Dim oApp As Application
Set oApp = ThisApplication

Dim oDoc As AssemblyDocument
Set oDoc = ThisApplication.ActiveDocument

Dim tmpOcc As ComponentOccurrence

For Each tmpOcc In oDoc.ComponentDefinition.occurrences
'    If tmpOcc.BOMStructure = kPhantomBOMStructure Then
    If tmpOcc.Name = "Verbindung mit Tragrolle - Ersatzobjekt--*-ENG-0155894-:1" Then
        MsgBox tmpOcc.Name
        tmpOcc.Delete
    End If

Next

End Sub

 

 Das entsprechende Objekt wird korrekt gefunden, aber der tmpOcc.Delete schlägt fehl.

Markus Schrepfer
8 ANTWORTEN 8
Nachricht 2 von 9
Juergen_Wagner
als Antwort auf: markus.schrepfer

Wie kommst du darauf, das es einen Verweis auf ENG-0155894-.ipt in der IAM ENG-0160245-.iam gibt ?

Wenn ich die IPT ENG-0155894-.ipt umbenennen in xxxENG-0155894-.ipt und dann IAM ENG-0160245-.iam öffne, klappt das ohne Probleme. 

 

Wenn ich mir die "AllReferencedDocuments" in ENG-0160245-.iam anschauen, bekomme ich das:

C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2013\11\0\ENG-0160246-.ipt
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063667-.ipt
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063642-.ipt
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2013\10\0\ENG-0155865-.iam
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2013\02\0\ENG-0124503-.ipt
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063550-.ipt
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063501-.ipt
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063499-\FRAME\ENG-0155868-.IAM
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063499-\FRAME\ENG-0155870-.IPT
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063499-\FRAME\ENG-0155869-.IPT
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2013\10\0\ENG-0155867-.ipt

 

Mache ich ein Pack&Go von  ENG-0160245-.iam werden diese Dateien mitgenommen:

Datum: Montag, 5. November 2018 18:05 201811051805

Operationstyp: Alle
Ordnerstruktur beibehalten: Nein

Anzahl kopierter Dateien: 13
Gesamtgröße der Datei: 1,55 MB
****
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2013\11\0\ENG-0160245-.iam M.18.00 V133
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2013\11\0\ENG-0160693-.ipt M.18.00 V10
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063642-.ipt M.18.00 V10
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063667-.ipt M.18.00 V12
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2013\10\0\ENG-0155865-.iam M.18.00 V26
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2013\11\0\ENG-0160246-.ipt M.18.00 V12
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2013\02\0\ENG-0124503-.ipt M.18.00 V9
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063550-.ipt M.18.00 V21
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063501-.ipt M.18.00 V16
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063499-\FRAME\ENG-0155868-.IAM M.18.00 V20
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063499-\FRAME\ENG-0155869-.IPT M.18.00 V8
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2011\06\0\ENG-0063499-\FRAME\ENG-0155870-.IPT M.18.00 V20
C:\_DOCS\Samples + Tutorial Files Inventor\Konstruktion\_Forum\ENG-0160245\Workspaces\Arbeitsbereich\2013\10\0\ENG-0155867-.ipt M.18.00 V17

 

Das einzige, was ich sehe, ist, das die Datei ENG-0155894-.ipt in deinem Pack&Go enthalten ist.

 

Kann es sein, das das ein Problem mit der Verwendung innerhalb des PSP ist, also das PSP unter den Komponenten der IAM diese Datei anzeigt, OBWOHL sie der Inventor nicht mehr einsetzt? Wird den diese Datei im Register der verwendeten Komponenten der IAM ENG-0160245-.iam INNERHALB von PSP angezeigt?

Mache Screenshots von Nachweisen (Inventor und PSP), die dich glauben machen, das die IPT ENG-0155894-.ipt in der IAM ENG-0160245-.iam enthalten ist.

Nachricht 3 von 9
markus.schrepfer
als Antwort auf: Juergen_Wagner

Guten Morgen Jürgen,

 

das Öffnen der Baugruppe ist bei mir auch kein Problem.

Nur bei der Vorbereitung für die Ablöse von PSP bin ich bei der Datenanalyse auf den Fehler gestoßen.

Den Verweis auf die "Geisterdatei" finde ich unter

oDoc.ComponentDefinition.occurrences

 06-11-_2018_07-35-56.jpg

 

Innerhalb von PSP werden zu ENG-0160245 die richtigen Komponenten angezeigt.

 

ENG-0160245ENG-0160245Genauso die richtige Verwendung von ENG-0155894:

  

 

06-11-_2018_07-47-56.jpg

 

 

Markus Schrepfer
Nachricht 4 von 9
Juergen_Wagner
als Antwort auf: markus.schrepfer

Jetzt habe ich es auch verstanden 😉 (Hätte ich mal deinen Quellcode oben angeschaut ;)) 

Ich kann das Problem zwar nachvollziehen aber auch ich bekomme die ComponentOccurrence nicht gelöscht. Ich weiß auch nicht, ob das ein Problem ist, das "zu tief" liegt, als das man es mit normalen Bordmitteln lösen kann.

Was meinst @Dennis.Ossadnik dazu?

Nachricht 5 von 9
Dennis.Ossadnik
als Antwort auf: Juergen_Wagner

Hallo zusammen,

 

ich bekomme diese Komponente auch nicht aus dem Modell. Ein internes Tool deutet darauf hin, dass dort eine defekt Detailgenauigkeit irgendwo hängt. Leider kann ich diese aber auch nicht löschen.

 

Also scheinbar ist die Datei leider hin Smiley (traurig)

 

Einzige Möglichkeit, wenn auch sehr aufwendig, wäre der Befehl Muster-Kopieren der gesamten Baugruppe, wobei man alle Teile wiederverwendet und das Ergebnis in eine neue Baugruppe ausgibt.

Danach scheint die Referenz weg zu sein. Aber zu empfehlen ist dieser Schritt auch nicht gerade, da Zeichnungen oder andere Baugruppe auf diese Vorgehensweise allergisch reagieren können und daher nicht garantiert werden kann, dass es nicht zu Problemen mit Abhängigkeiten oder Maßen kommen kann.



Dennis Ossadnik
Senior Technical Support Specialist
Nachricht 6 von 9

Hallo @Dennis.Ossadnik, hallo @Juergen_Wagner,

 

so zu sagen "bad luck!"Smiley (traurig) - leider hat sich der Fehler schon in so viele Kopien fortgesetzt. Da muss ich mir etwas einfallen lassen, dass ich die "fehlerhaften Dokumente" markiere, so dass sie nicht mehr als Kopiervorlage verwendet werden.Mann (zwinkernd)

Markus Schrepfer
Nachricht 7 von 9
martin_winkler
als Antwort auf: markus.schrepfer

@markus.schrepfer

Ich denke es geht doch, bei mir jedenfalls, mit einem kleinen Kniff.

Zunächst das verwaiste Bauteil ersetzen durch ein leeres Dummy Bauteil und dann löschen.

Bei mir ist das verwaiste Bauteil danach weg.

 

Sub IAM_DeleteOldSubstitute()

Dim oApp As Application
Set oApp = ThisApplication

Dim oDoc As AssemblyDocument
Set oDoc = ThisApplication.ActiveDocument

Dim Occs As ComponentOccurrences
Set Occs = oDoc.ComponentDefinition.Occurrences

Dim tmpOcc As ComponentOccurrence

For Each tmpOcc In Occs
    If tmpOcc.Name = "Verbindung mit Tragrolle - Ersatzobjekt--*-ENG-0155894-:1" Then
        Debug.Print tmpOcc.Name
        tmpOcc.Replace ("C:\Users\Public\Dummy.ipt"), True
        tmpOcc.Delete
     End If
Next
End Sub

Grüße Martin Smiley (zwinkernd)

Nachricht 8 von 9
markus.schrepfer
als Antwort auf: martin_winkler

Guten Morgen Martin,

 

der Morgen ist jetzt wirklich gut Smiley (fröhlich)Lachender SmileySmiley (fröhlich)

Deine Lösung funktioniert - vielen Dank!!!

Markus Schrepfer
Nachricht 9 von 9
Dennis.Ossadnik
als Antwort auf: martin_winkler

Hi @martin_winkler.

 

Coole Idee Martin Smiley (fröhlich)



Dennis Ossadnik
Senior Technical Support Specialist

Sie finden nicht, was Sie suchen? Fragen Sie die Community oder teilen Sie Ihr Wissen mit anderen.

In Foren veröffentlichen  

Autodesk Design & Make Report