Index: Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Domein/LaseropdrachtController.vb =================================================================== diff -u -r1937 -r1938 --- Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Domein/LaseropdrachtController.vb (.../LaseropdrachtController.vb) (revision 1937) +++ Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Domein/LaseropdrachtController.vb (.../LaseropdrachtController.vb) (revision 1938) @@ -1,9 +1,7 @@ 'Robin De Bock Created:30/07/2018 Changed:28/08/2020 Public Interface ILaseropdrachtController Inherits ISubject - Function SelecteerLaserOpdracht(input As String) As Boolean - Function GeefGeselecteerdeLaserOpdracht() As ILaserOpdracht - Sub VerwerkLaserOpdracht() + Sub VerwerkLaserOpdracht(input As String) End Interface Public Class LaseropdrachtController @@ -24,34 +22,31 @@ Private _laserOpdracht As LaserOpdracht - Public Function SelecteerLaserOpdracht(input As String) As Boolean Implements ILaseropdrachtController.SelecteerLaserOpdracht + Public Sub ZoekLaserOpdrachtOp(input As String) Implements ILaseropdrachtController.VerwerkLaserOpdracht If String.IsNullOrEmpty(input) Then - 'Throw New Exception("De input mag niet leeg zijn.") _laserOpdracht = Nothing NotifyObservers(_laserOpdracht) - return False + Return End If 'Geen twee opdrachten vlak achter elkaar (tweede negeren) - If Not IsNothing(_laserOpdracht) Then Return False + If Not IsNothing(_laserOpdracht) Then Return Try '_laserOpdracht = _cacheMapper.GeefInfoMetBarcodeId("ZCV42L90105") _laserOpdracht = _cacheMapper.GeefInfoMetBarcodeId(input) NotifyObservers(_laserOpdracht) - - Return Not IsNothing(_laserOpdracht) Catch ex As Exception + _laserOpdracht = Nothing Throw New Exception($"De laser opdracht kon niet worden opgevraagd:{vbNewLine}{ex.Message}") End Try - End Function - Public Function GeefGeselecteerdeLaserOpdracht() As ILaserOpdracht Implements ILaseropdrachtController.GeefGeselecteerdeLaserOpdracht - Return _laserOpdracht - End Function + 'Verwerking + If Not IsNothing(_laserOpdracht) Then VerwerkLaserOpdracht() + End Sub - Public Sub VerwerkLaserOpdracht() Implements ILaseropdrachtController.VerwerkLaserOpdracht + Public Sub VerwerkLaserOpdracht() If _laserOpdracht Is Nothing Then Throw New Exception("Zoek/Selecteer eerst een laser opdracht") End If @@ -84,11 +79,13 @@ scriptProces.WaitForExit() 'Als het script een fout heeft opgelopen, toon dit (zorgt ervoor dat operator geen foute opdracht uitvoert) - If scriptProces.ExitCode <> 0 Then Throw New Exception($"Het Python script heeft een fout ondervonden, probeer opnieuw.{vbNewLine}De foutmelding staat in het log bestand.") - - _laserOpdracht = Nothing + If scriptProces.ExitCode <> 0 Then + Throw New Exception($"Het Python script heeft een fout ondervonden, probeer opnieuw.{vbNewLine}De foutmelding staat in het log bestand.") + End If Catch ex As Exception Throw New Exception($"De laser opdracht kon niet worden verwerkt:{vbNewLine}{ex.Message}") + Finally + _laserOpdracht = Nothing End Try End Sub Index: Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Laser Gravering.vbproj =================================================================== diff -u -r1937 -r1938 --- Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Laser Gravering.vbproj (.../Laser Gravering.vbproj) (revision 1937) +++ Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Laser Gravering.vbproj (.../Laser Gravering.vbproj) (revision 1938) @@ -28,7 +28,7 @@ false true 1 - 1.9.2.%2a + 1.10.0.%2a false true true Index: Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Formulieren/subschermen/LaserOpdrachtOpzoekSelecteerStatus.vb =================================================================== diff -u -r1928 -r1938 --- Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Formulieren/subschermen/LaserOpdrachtOpzoekSelecteerStatus.vb (.../LaserOpdrachtOpzoekSelecteerStatus.vb) (revision 1928) +++ Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Formulieren/subschermen/LaserOpdrachtOpzoekSelecteerStatus.vb (.../LaserOpdrachtOpzoekSelecteerStatus.vb) (revision 1938) @@ -18,7 +18,7 @@ 'Subscriben _controller.AddObserver(Me) Catch ex As Exception - ToonError(ex) 'Geen subscherm error handling, want _subScherm kan Nothing zijn + ToonError(ex) 'Geen subscherm error handling, want _subScherm kan Nothing zijn End Try End Sub Index: Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Formulieren/AboutBox.vb =================================================================== diff -u -r1935 -r1938 --- Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Formulieren/AboutBox.vb (.../AboutBox.vb) (revision 1935) +++ Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Formulieren/AboutBox.vb (.../AboutBox.vb) (revision 1938) @@ -10,7 +10,6 @@ End If Me.Text = String.Format("About {0}", applicationTitle) ' Initialize all of the text displayed on the About Box. - ' TODO: Customize the application's assembly information in the "Application" pane of the project ' properties dialog (under the "Project" menu). Me.LabelProductName.Text = My.Application.Info.ProductName If (System.Deployment.Application.ApplicationDeployment.IsNetworkDeployed) Then Index: Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Formulieren/FormHoofdscherm.vb =================================================================== diff -u -r1936 -r1938 --- Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Formulieren/FormHoofdscherm.vb (.../FormHoofdscherm.vb) (revision 1936) +++ Laser Gravering/nieuw/Laser Gravering_nieuw/Laser Gravering/Formulieren/FormHoofdscherm.vb (.../FormHoofdscherm.vb) (revision 1938) @@ -63,7 +63,7 @@ Private Sub ZoekLaserOpdracht(tekst As String) Try 'Opzoeken in aparte thread - Dim laserOpdrachtOpzoekenThread As New Thread(Sub() ZoekLaserOpdrachtThreadFunc(_controller, tekst)) With { + Dim laserOpdrachtOpzoekenThread As New Thread(Sub() VerwerkLaserOpdrachtThreadFunc(_controller, tekst)) With { .IsBackground = True } laserOpdrachtOpzoekenThread.Start() @@ -72,16 +72,10 @@ End Try End Sub - Public Sub ZoekLaserOpdrachtThreadFunc(controller As ILaseropdrachtController, input As String) + Public Sub VerwerkLaserOpdrachtThreadFunc(controller As ILaseropdrachtController, input As String) Try Invoke(Sub() PauzeerKeyboardHook()) 'Python script stuurt zelf ook keystrokes - Dim status = controller.SelecteerLaserOpdracht(input) - If status Then - 'Selectie gelukt - _controller.VerwerkLaserOpdracht() - Else - Invoke(Sub() My.Computer.Audio.PlaySystemSound(System.Media.SystemSounds.Beep)) - End If + controller.VerwerkLaserOpdracht(input) Invoke(Sub() HervatKeyboardHook()) Catch ex As Exception Invoke(Sub() HervatKeyboardHook())