hexagon logo

Scripting Help for auto Save-as

Trying to get going on some scripting and automation. Very new to this so any and all help most appreciated. The following code gives this error :

---------------------------
PC-DMIS Basic Scripting Engine
---------------------------
Error on line: 9 - OLE Automation object does not have a default value
---------------------------
OK
---------------------------

Can someone help me get this simple script running?

Sub Main ()
Dim App As Object
Dim Part As Object
Set App = CreateObject ("PCDLRN.Application")
Set Part = App.ActivePartProgram
Dim Serial As Object
Set Serial = Part.GetVariableValue("V1")
Dim NewName$
NewName = Part.Path & Part.PartName & "_" & Serial & ".PRG"
retval = Part.SaveAs(NewName)
' Cleanup
Set Part = Nothing
Set App = Nothing
End Sub


I believe this code was originally posted in a different (and probably much better) form by VPT.se. I'm trying to learn how to do this sort of thing by modifying it.

Thanks for any help.
Parents
  • here is the code


    Dim App As Object
    Dim Part As Object
    Dim Serial As Object
    Dim strCrntName As String
    Dim strPath As String
    Dim strPrgName As String
    Dim strNewName As String
    Dim strNoExt As String
    Dim bolPassFail As Boolean
    Dim FindDot

    Set App = CreateObject ("PCDLRN.Application")
    Set Part = App.ActivePartProgram
    Set Serial = Part.GetVariableValue ("SER_NUM")
    strCrntName = Part.FullName
    strPath = Part.Path
    strPrgName = Part.Name
    FindDot = InStr(1, strPrgName, ".")
    strNoExt = Left(strPrgName, FindDot - 1)
    strNewName = strPath & "RESULTS\"& strNoExt & "_" & Serial.StringValue & ".prg"
    bolPassFail = Part.SaveAs (strNewName)
    bolPassFail = Part.SaveAs (strCrntName
Reply
  • here is the code


    Dim App As Object
    Dim Part As Object
    Dim Serial As Object
    Dim strCrntName As String
    Dim strPath As String
    Dim strPrgName As String
    Dim strNewName As String
    Dim strNoExt As String
    Dim bolPassFail As Boolean
    Dim FindDot

    Set App = CreateObject ("PCDLRN.Application")
    Set Part = App.ActivePartProgram
    Set Serial = Part.GetVariableValue ("SER_NUM")
    strCrntName = Part.FullName
    strPath = Part.Path
    strPrgName = Part.Name
    FindDot = InStr(1, strPrgName, ".")
    strNoExt = Left(strPrgName, FindDot - 1)
    strNewName = strPath & "RESULTS\"& strNoExt & "_" & Serial.StringValue & ".prg"
    bolPassFail = Part.SaveAs (strNewName)
    bolPassFail = Part.SaveAs (strCrntName
Children
No Data