hexagon logo

How to wait end of program on Automation code.

I made some automation program.

I want to run 4 programs with on button click.

I can run 4 programs.

But, program close before end of first program.

How can i wait for end of program.

This is parts of my code.






Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click

If RB_M.Checked = True Then

PCDMISapplication = New PCDLRN.Application
AppEvents = PCDMISapplication.ApplicationEvents


PCDMISprograms = PCDMISapplication.PartPrograms
PCDMISapplication.Visible = True

Dim F_List As String = Dir("C:\JoyAutomation_TCK\List")
Dim L_Data As String
Dim P_P_C = 0

If F_List = "" Then
Else
If Mid(Trim(F_List.ToString()), 1, Len(Trim(F_List.ToString())) - 4) = Combo_Part_Name.SelectedItem Then

FileOpen(1, "C:\JoyAutomation_TCK\List" & Combo_Part_Name.SelectedItem & ".txt", OpenMode.Input)
While Not EOF(1)
L_Data = LineInput(1)
If L_Data = "" Then
Else
P_P_C += 1
If P_P_C <= CInt(Combo_Part_Count.SelectedItem) + 1 Then
PCDpartPrg = PCDMISprograms.Open("C:\Users\Robert Eom\Desktop\TCK 개발\K3T001215 1매\MiniRoutine\1_K3T001215-00 SiC INSERT,SMOD,2.8 STEP.prg", "Offline")
Threading.Thread.Sleep(2000) ' Wait while program opens
PCDMISapplication.WaitUntilReady(200)
PCDpartPrg.Visible = True
PCDpartPrg.EXECUTE()
PCDpartPrg.Close()
End If

End If
End While
FileClose(1)
End If

Do Until F_List = ""
F_List = Dir()
If F_List = "" Then
Else
If Mid(Trim(F_List.ToString()), 1, Len(Trim(F_List.ToString())) - 4) = Combo_Part_Name.SelectedItem Then
FileOpen(2, "C:\JoyAutomation_TCK\List" & Combo_Part_Name.SelectedItem & ".txt", OpenMode.Input)
While Not EOF(2)
L_Data = LineInput(2)
If L_Data = "" Then
Else
P_P_C += 1
If P_P_C <= CInt(Combo_Part_Count.SelectedItem) + 1 Then
PCDpartPrg = PCDMISprograms.Open("C:\Users\Robert Eom\Desktop\TCK 개발\K3T001215 1매\MiniRoutine\1_K3T001215-00 SiC INSERT,SMOD,2.8 STEP.prg", "Offline")
Threading.Thread.Sleep(2000) ' Wait while program opens
PCDMISapplication.WaitUntilReady(200)
PCDpartPrg.Visible = True
PCDpartPrg.EXECUTE()
PCDpartPrg.Close()
End If
End If
End While
FileClose(2)
End If

End If
Loop
End If


End If




'PCDMISapplication = New PCDLRN.Application
'PCDMISprograms = PCDMISapplication.PartPrograms
'PCDMISapplication.Visible = True
'PCDpartPrg = PCDMISprograms.Open("C:\Users\Robert Eom\Desktop\TCK 개발\K3T001215 1매\MiniRoutine\1_K3T001215-00 SiC INSERT,SMOD,2.8 STEP.prg", "Offline")
'Threading.Thread.Sleep(2000) ' Wait while program opens
'PCDMISapplication.WaitUntilReady(200)
'PCDpartPrg.Visible = True
'PCDpartPrg.EXECUTE()
'PCDpartPrg.Close()

End Sub
Parents
  • Added tabs for viewing pleasure.
    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
    
        If RB_M.Checked = True Then
    
            PCDMISapplication = New PCDLRN.Application
            AppEvents = PCDMISapplication.ApplicationEvents
    
    
            PCDMISprograms = PCDMISapplication.PartPrograms
            PCDMISapplication.Visible = True
    
            Dim F_List As String = Dir("C:\JoyAutomation_TCK\List")
            Dim L_Data As String
            Dim P_P_C = 0
    
            If F_List = "" Then
                ' do nothing
            Else
                If Mid(Trim(F_List.ToString()), 1, Len(Trim(F_List.ToString())) - 4) = Combo_Part_Name.SelectedItem Then
                    FileOpen(1, "C:\JoyAutomation_TCK\List" & Combo_Part_Name.SelectedItem & ".txt", OpenMode.Input)
                    While Not EOF(1)
                        L_Data = LineInput(1)
                        If L_Data = "" Then
                            ' do nothing
                        Else
                            P_P_C += 1
                            If P_P_C <= CInt(Combo_Part_Count.SelectedItem) + 1 Then
                                PCDpartPrg = PCDMISprograms.Open("C:\Users\Robert Eom\Desktop\TCK 개발\K3T001215 1매\MiniRoutine\1_K3T001215-00 SiC INSERT,SMOD,2.8 STEP.prg", "Offline")
                                Threading.Thread.Sleep(2000) ' Wait while program opens
                                PCDMISapplication.WaitUntilReady(200)
                                PCDpartPrg.Visible = True
                                PCDpartPrg.EXECUTE()
                                PCDpartPrg.Close()
                            End If
                        End If
                    End While
                    FileClose(1)
                End If
    
                Do Until F_List = ""
                    F_List = Dir()
                    If F_List = "" Then
                        ' do nothing
                    Else
                        If Mid(Trim(F_List.ToString()), 1, Len(Trim(F_List.ToString())) - 4) = Combo_Part_Name.SelectedItem Then
                            FileOpen(2, "C:\JoyAutomation_TCK\List" & Combo_Part_Name.SelectedItem & ".txt", OpenMode.Input)
                            While Not EOF(2)
                                L_Data = LineInput(2)
                                If L_Data = "" Then
                                    ' do nothing
                                Else
                                    P_P_C += 1
                                    If P_P_C <= CInt(Combo_Part_Count.SelectedItem) + 1 Then
                                        PCDpartPrg = PCDMISprograms.Open("C:\Users\Robert Eom\Desktop\TCK 개발\K3T001215 1매\MiniRoutine\1_K3T001215-00 SiC INSERT,SMOD,2.8 STEP.prg", "Offline")
                                        Threading.Thread.Sleep(2000) ' Wait while program opens
                                        PCDMISapplication.WaitUntilReady(200)
                                        PCDpartPrg.Visible = True
                                        PCDpartPrg.EXECUTE()
                                        PCDpartPrg.Close()
                                    End If
                                End If
                            End While
                            FileClose(2)
                        End If
    
                    End If
                Loop
            End If
    
    
        End If
    
    
    
    
        'PCDMISapplication = New PCDLRN.Application
        'PCDMISprograms = PCDMISapplication.PartPrograms
        'PCDMISapplication.Visible = True
        'PCDpartPrg = PCDMISprograms.Open("C:\Users\Robert Eom\Desktop\TCK 개발\K3T001215 1매\MiniRoutine\1_K3T001215-00 SiC INSERT,SMOD,2.8 STEP.prg", "Offline")
        'Threading.Thread.Sleep(2000) ' Wait while program opens
        'PCDMISapplication.WaitUntilReady(200)
        'PCDpartPrg.Visible = True
        'PCDpartPrg.EXECUTE()
        'PCDpartPrg.Close()
    
    End Sub
    


    I usually start by cleaning the code up visually and then I study it.... if all goes well I come up with a solution but I ran out of time. Maybe someone else here can figure it out and if they attempt to... they'll have 'nicer' code to look at.
Reply
  • Added tabs for viewing pleasure.
    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
    
        If RB_M.Checked = True Then
    
            PCDMISapplication = New PCDLRN.Application
            AppEvents = PCDMISapplication.ApplicationEvents
    
    
            PCDMISprograms = PCDMISapplication.PartPrograms
            PCDMISapplication.Visible = True
    
            Dim F_List As String = Dir("C:\JoyAutomation_TCK\List")
            Dim L_Data As String
            Dim P_P_C = 0
    
            If F_List = "" Then
                ' do nothing
            Else
                If Mid(Trim(F_List.ToString()), 1, Len(Trim(F_List.ToString())) - 4) = Combo_Part_Name.SelectedItem Then
                    FileOpen(1, "C:\JoyAutomation_TCK\List" & Combo_Part_Name.SelectedItem & ".txt", OpenMode.Input)
                    While Not EOF(1)
                        L_Data = LineInput(1)
                        If L_Data = "" Then
                            ' do nothing
                        Else
                            P_P_C += 1
                            If P_P_C <= CInt(Combo_Part_Count.SelectedItem) + 1 Then
                                PCDpartPrg = PCDMISprograms.Open("C:\Users\Robert Eom\Desktop\TCK 개발\K3T001215 1매\MiniRoutine\1_K3T001215-00 SiC INSERT,SMOD,2.8 STEP.prg", "Offline")
                                Threading.Thread.Sleep(2000) ' Wait while program opens
                                PCDMISapplication.WaitUntilReady(200)
                                PCDpartPrg.Visible = True
                                PCDpartPrg.EXECUTE()
                                PCDpartPrg.Close()
                            End If
                        End If
                    End While
                    FileClose(1)
                End If
    
                Do Until F_List = ""
                    F_List = Dir()
                    If F_List = "" Then
                        ' do nothing
                    Else
                        If Mid(Trim(F_List.ToString()), 1, Len(Trim(F_List.ToString())) - 4) = Combo_Part_Name.SelectedItem Then
                            FileOpen(2, "C:\JoyAutomation_TCK\List" & Combo_Part_Name.SelectedItem & ".txt", OpenMode.Input)
                            While Not EOF(2)
                                L_Data = LineInput(2)
                                If L_Data = "" Then
                                    ' do nothing
                                Else
                                    P_P_C += 1
                                    If P_P_C <= CInt(Combo_Part_Count.SelectedItem) + 1 Then
                                        PCDpartPrg = PCDMISprograms.Open("C:\Users\Robert Eom\Desktop\TCK 개발\K3T001215 1매\MiniRoutine\1_K3T001215-00 SiC INSERT,SMOD,2.8 STEP.prg", "Offline")
                                        Threading.Thread.Sleep(2000) ' Wait while program opens
                                        PCDMISapplication.WaitUntilReady(200)
                                        PCDpartPrg.Visible = True
                                        PCDpartPrg.EXECUTE()
                                        PCDpartPrg.Close()
                                    End If
                                End If
                            End While
                            FileClose(2)
                        End If
    
                    End If
                Loop
            End If
    
    
        End If
    
    
    
    
        'PCDMISapplication = New PCDLRN.Application
        'PCDMISprograms = PCDMISapplication.PartPrograms
        'PCDMISapplication.Visible = True
        'PCDpartPrg = PCDMISprograms.Open("C:\Users\Robert Eom\Desktop\TCK 개발\K3T001215 1매\MiniRoutine\1_K3T001215-00 SiC INSERT,SMOD,2.8 STEP.prg", "Offline")
        'Threading.Thread.Sleep(2000) ' Wait while program opens
        'PCDMISapplication.WaitUntilReady(200)
        'PCDpartPrg.Visible = True
        'PCDpartPrg.EXECUTE()
        'PCDpartPrg.Close()
    
    End Sub
    


    I usually start by cleaning the code up visually and then I study it.... if all goes well I come up with a solution but I ran out of time. Maybe someone else here can figure it out and if they attempt to... they'll have 'nicer' code to look at.
Children
No Data