Hallo liebe Community,
ich habe ein kleines Problem und übersehe bestimmt etwas.
Ich versuche gerade eine kleine Regel zu erstellen die beim Öffnen eines Rohrs (gerades Rohr) ausgeführt wird. Hier soll via einer Inputbox die gewünschte Rohrlänge eingegeben werden. Das funktioniert soweit auch.
Dann würde ich das geändert Rohr mit der neuen Länge gerne abspeichern. Direkt als .ipt hätte ich gar keine Möglichkeit gefunden? Somit habe ich den Export als .stp gewählt. Wichtig ist die neue Datei soll den Wert der neuen Länge im Dateinamen haben. z.B.: Rohr-NEUELÄNGE, auch das funktioniert...
Nur beim Export in ein Stepfile ist noch die alte Rohrlänge von der Ursprungsdatei enthalten :/
Wie kann ich das ändern?
Hier ist mein Code:
Dim Name As String
'Wert aus Inputbox wird direkt in die Variable der Rohrlänge geschrieben, Standardwert 100mm
myparam = InputBox("Wie lang solls denn sein?", "Test", "100")
Parameter("Rohrlänge") = myparam
'Name des Teils wird vergeben
Name = "Rohr-" & myparam & "mm"
'Name wirsd zusätzlich vorher in einem Fenster angezeigt
MessageBox.Show(Name, "Title")
'Aktualisiert das Bauteil auf die geänderte Länge
iLogicVb.UpdateWhenDone = True
ThisDoc.Save
'Fertiger Programmblock zum exportieren als .stp
' Get the STEP translator Add-In.
Dim oSTEPTranslator As TranslatorAddIn
oSTEPTranslator = ThisApplication.ApplicationAddIns.ItemById("{90AF7F40-0C01-11D5-8E83-0010B541CD80}")
Dim oContext As TranslationContext
oContext = ThisApplication.TransientObjects.CreateTranslationContext
Dim oOptions As NameValueMap
oOptions = ThisApplication.TransientObjects.CreateNameValueMap
If oSTEPTranslator.HasSaveCopyAsOptions(ThisApplication.ActiveDocument, oContext, oOptions) Then
' Set application protocol.
' 2 = AP 203 - Configuration Controlled Design
' 3 = AP 214 - Automotive Design
oOptions.Value("ApplicationProtocolType") = 3
' Other options...
'oOptions.Value("Author") = ""
'oOptions.Value("Authorization") = ""
'oOptions.Value("Description") = ""
'oOptions.Value("Organization") = ""
oContext.Type = IOMechanismEnum.kFileBrowseIOMechanism
Dim oData As DataMedium
oData = ThisApplication.TransientObjects.CreateDataMedium
oData.FileName = "C:\Users\USER\Desktop\" & Name & ".stp"
oSTEPTranslator.SaveCopyAs(ThisApplication.ActiveDocument, oContext, oOptions, oData)
End If
Ich hoffe ihr versteht was ich gerne versuchen würde und könnt mir helfen.
Danke bereits im Voraus!
Lg.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP