hexagon logo

Auto create folder script

So at my last shop we had a .bas file that would create folders. here is what i am doing.
What it used to do would create a folder for part number(if it didnt already exist) then each sub folder.

then i could use this same code in every program since it pulls in the part number, operation, serial, from a text file and assigns them a variable.






Parents
  • This is the script I use.

    Sub Main()

    Dim objFSO, objShell
    Dim PCDApp, PCDPartProgram, PCDCommands, PCDCommand, retval
    Dim objFile, objFolder As Object

    Set PCDApp=CreateObject("PCDLRN.Application")
    Set PCDPartProgram=PCDApp.ActivePartProgram
    Set PCDCommands=PCDPartProgram.Commands

    Set Pathname=PCDPartProgram.GetVariableValue("PATH2")

    strPath=Pathname.StringValue

    Set objFSO = CreateObject("Scripting.FileSystemObject")

    If objFSO.FolderExists(strPath) Then
    'Nothing
    Else
    Set objFile=objFSO.CreateFolder(strPath)
    End If

    End Sub




    Just change "PATH2" to whatever your naming convention is for the folder path.



    EXAMPLE OF CODE:

    C1 =COMMENT/INPUT,YES,FULL SCREEN=NO,
    PART NUMBER
    C2 =COMMENT/INPUT,YES,FULL SCREEN=NO,
    BATCH NUMBER
    C3 =COMMENT/INPUT,YES,FULL SCREEN=NO,
    LOT NUMBER
    C4 =COMMENT/INPUT,YES,FULL SCREEN=NO,
    SEQUENCE
    ASSIGN/U="_"
    ASSIGN/N=C1.INPUT+U+C2.INPUT+U+C3.INPUT
    ASSIGN/S=C1.INPUT+U+C2.INPUT+U+C3.INPUT+U+C4.INPUT
    ASSIGN/PATH="T:\Shared\Quality_Engineering\CMM\Master\H-BLD_JOSH pc811\PCDMIS_2014\PRODUCTION"+N+""+S+".PDF"
    ASSIGN/PATH2="T:\Shared\Quality_Engineering\CMM\Master\H-BLD_JOSH pc811\PCDMIS_2014\PRODUCTION"+N
    CS1 =SCRIPT/FILENAME= T:\SHARED\QUALITY_ENGINEERING\CMM\MASTER\H-BLD_JOSH PC811\PCDMIS_2014\PC-DMIS SCRIPT\CREATE_FOLDER.BAS
    FUNCTION/Main,SHOW=YES,,
    STARTSCRIPT/
    ENDSCRIPT/
    PRINT =LABEL/
    PRINT/REPORT,EXEC MODE=END,$
    TO_FILE=ON,APPEND=PATH,AUTO OPEN REPORT=OFF,$
    TO_PRINTER=OFF,COPIES=1,$
    TO_DMIS_REPORT=OFF,FILE_OPTION=INDEX,FILENAME=,$
    REPORT_THEORETICALS=NONE,REPORT_FEATURE_WITH_DIMEN SIONS=NO,$
    TO_EXCEL_OUTPUT=OFF,
    PREVIOUS_RUNS=DELETE_INSTANCES
Reply
  • This is the script I use.

    Sub Main()

    Dim objFSO, objShell
    Dim PCDApp, PCDPartProgram, PCDCommands, PCDCommand, retval
    Dim objFile, objFolder As Object

    Set PCDApp=CreateObject("PCDLRN.Application")
    Set PCDPartProgram=PCDApp.ActivePartProgram
    Set PCDCommands=PCDPartProgram.Commands

    Set Pathname=PCDPartProgram.GetVariableValue("PATH2")

    strPath=Pathname.StringValue

    Set objFSO = CreateObject("Scripting.FileSystemObject")

    If objFSO.FolderExists(strPath) Then
    'Nothing
    Else
    Set objFile=objFSO.CreateFolder(strPath)
    End If

    End Sub




    Just change "PATH2" to whatever your naming convention is for the folder path.



    EXAMPLE OF CODE:

    C1 =COMMENT/INPUT,YES,FULL SCREEN=NO,
    PART NUMBER
    C2 =COMMENT/INPUT,YES,FULL SCREEN=NO,
    BATCH NUMBER
    C3 =COMMENT/INPUT,YES,FULL SCREEN=NO,
    LOT NUMBER
    C4 =COMMENT/INPUT,YES,FULL SCREEN=NO,
    SEQUENCE
    ASSIGN/U="_"
    ASSIGN/N=C1.INPUT+U+C2.INPUT+U+C3.INPUT
    ASSIGN/S=C1.INPUT+U+C2.INPUT+U+C3.INPUT+U+C4.INPUT
    ASSIGN/PATH="T:\Shared\Quality_Engineering\CMM\Master\H-BLD_JOSH pc811\PCDMIS_2014\PRODUCTION"+N+""+S+".PDF"
    ASSIGN/PATH2="T:\Shared\Quality_Engineering\CMM\Master\H-BLD_JOSH pc811\PCDMIS_2014\PRODUCTION"+N
    CS1 =SCRIPT/FILENAME= T:\SHARED\QUALITY_ENGINEERING\CMM\MASTER\H-BLD_JOSH PC811\PCDMIS_2014\PC-DMIS SCRIPT\CREATE_FOLDER.BAS
    FUNCTION/Main,SHOW=YES,,
    STARTSCRIPT/
    ENDSCRIPT/
    PRINT =LABEL/
    PRINT/REPORT,EXEC MODE=END,$
    TO_FILE=ON,APPEND=PATH,AUTO OPEN REPORT=OFF,$
    TO_PRINTER=OFF,COPIES=1,$
    TO_DMIS_REPORT=OFF,FILE_OPTION=INDEX,FILENAME=,$
    REPORT_THEORETICALS=NONE,REPORT_FEATURE_WITH_DIMEN SIONS=NO,$
    TO_EXCEL_OUTPUT=OFF,
    PREVIOUS_RUNS=DELETE_INSTANCES
Children
No Data