| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Bauteilnummer nach kopieren aktualisieren (1317 mal gelesen)
|
Tungdil01 Mitglied Maschinenbautechniker
Beiträge: 16 Registriert: 15.05.2014 Windows 7 64Bit Inventor 2013
|
erstellt am: 22. Sep. 2014 11:06 <-- editieren / zitieren --> Unities abgeben:
Hallo , ich habe folgendes Anliegen: nach dem kopieren von Dateien und ersetzen der Referenzen steht in den neuen Dateien immer noch die alte Bauteilnummer. Ich möchte die Bauteilnummer aber = dem neuen Dateinamen haben. Mit dem nachstehenden Code ersetze ich die Referenzen. Code: Function RefErsetzen(ByVal SteuerPart As String, ByVal OldPart As String, ByVal NewPart As String) As ApprenticeServer Dim oApprentice As New Inventor.ApprenticeServerComponent ' Open a document. Dim oDoc As Inventor.ApprenticeServerDocument Try oDoc = oApprentice.Open(SteuerPart) Catch ex As Exception MsgBox("Keine Datei mit dem Namen : " & vbCrLf & "'" & SteuerPart & "'" & vbCrLf & "gefunden!") End Try ' Iterate through the references looking for a ' reference to a specific file. Dim oRefFileDesc As ReferencedFileDescriptor For Each oRefFileDesc In oDoc.ReferencedFileDescriptors If oRefFileDesc.FullFileName = OldPart Then ' Replace the reference. Try oRefFileDesc.PutLogicalFileNameUsingFull(NewPart) Catch ex As Exception MsgBox("Keine Datei mit dem Namen : " & vbCrLf & "'" & NewPart & "'" & vbCrLf & "gefunden") End Try Exit For Else 'MsgBox("Keine implementierte Datei mit dem Namen : " & vbCrLf & "'" & OldPart & "'" & vbCrLf & "gefunden") End If Next ' Set a reference to the FileSaveAs object. Dim oFileSaveAs As FileSaveAs oFileSaveAs = oApprentice.FileSaveAs ' Save the assembly. oFileSaveAs.AddFileToSave(oDoc, oDoc.FullFileName) oFileSaveAs.ExecuteSave() End Function
kann mir jemand sagen wie ich das realisiert bekomme? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RolandD Mitglied
Beiträge: 533 Registriert: 07.01.2005
|
erstellt am: 22. Sep. 2014 15:38 <-- editieren / zitieren --> Unities abgeben: Nur für Tungdil01
|
Tungdil01 Mitglied Maschinenbautechniker
Beiträge: 16 Registriert: 15.05.2014 Windows 7 64Bit Inventor 2013
|
erstellt am: 23. Sep. 2014 08:46 <-- editieren / zitieren --> Unities abgeben:
|
RolandD Mitglied
Beiträge: 533 Registriert: 07.01.2005
|
erstellt am: 23. Sep. 2014 10:15 <-- editieren / zitieren --> Unities abgeben: Nur für Tungdil01
Zitat: Original erstellt von Tungdil01: .. oder muss ich dafür jedes Bauteil separat im Inventor öffnen.
Jetzt bin ich etwas verwirrt: Bisher ersetzt du doch die Referenzen auf die Bauteile (OldPart) gegen andere vorhandene Bauteile (NewPart) und speicherst die neue BG mit SaveAs unter der neuen Nummer ab, oder? Die Einträge der neuen Bauteile bleiben doch unverändert. Falls da etwas nicht stimmt, dann passiert das beim Erzeugen dieser Bauteile. Code: Dim oFileSaveAs As FileSaveAs oFileSaveAs = oApprentice.FileSaveAs ' Save the assembly. oFileSaveAs.AddFileToSave(oDoc, oDoc.FullFileName) oFileSaveAs.ExecuteSave()
Da speicherst du die Datei mit SaveAs auf den gleichen Dateinamen, wie bisher - das funktioniert?? ------------------ Gruß Roland Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tungdil01 Mitglied Maschinenbautechniker
Beiträge: 16 Registriert: 15.05.2014 Windows 7 64Bit Inventor 2013
|
erstellt am: 29. Sep. 2014 11:38 <-- editieren / zitieren --> Unities abgeben:
Zitat: Die Einträge der neuen Bauteile bleiben doch unverändert. Falls da etwas nicht stimmt, dann passiert das beim Erzeugen dieser Bauteile.
Das ist es ja.... sie bleiben unverändert. ich möchte aber die neuen Displaynamen ohne Endung als Bauteilnummer drin haben. Wie könnte ich das in der Codezeile integrieren? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tungdil01 Mitglied Maschinenbautechniker
Beiträge: 16 Registriert: 15.05.2014 Windows 7 64Bit Inventor 2013
|
erstellt am: 02. Okt. 2014 10:04 <-- editieren / zitieren --> Unities abgeben:
Ich habe jetzt die Aufgabe anders gelöst. Über eine iLogic Regel wird die Bauteilnummer richtig eingetragen. Was ich noch für ein Problem habe: innerhalb der neuen Baugruppe wird im Browser der falsche Name angezeigt. Wenn ich Browserknoten umbenennen anklicke und dann auf Bauteilnummer stelle ist alles ok. Hat jemand ne Idee wie das automatisch richtig einstellen kann? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |