Index: TAOR-rework-bugfixing/TAOR rework/Rework/ReworkRepository.vb
===================================================================
diff -u -r1597 -r1603
--- TAOR-rework-bugfixing/TAOR rework/Rework/ReworkRepository.vb (.../ReworkRepository.vb) (revision 1597)
+++ TAOR-rework-bugfixing/TAOR rework/Rework/ReworkRepository.vb (.../ReworkRepository.vb) (revision 1603)
@@ -88,7 +88,7 @@
For index = 0 To barcodes.Count - 1
Dim ardisdataLinksOfRechts As ArdisData = ArdisMapper.OphalenData(barcodes(index))
If ardisdataLinksOfRechts.geefLinksOfRechts().Equals(rework.geefLinksOfRechts()) Then
- If CacheMapper.geefdatareader(Kolommen.barcode, barcodes(index)).HasRows() Then
+ If CacheMapper.GeefDataTable(Kolommen.barcode, barcodes(index)).Rows.Count > 0 Then
CacheMapper.updateRework(rework, barcodes(index))
Exit For
End If
Index: TAOR-rework-bugfixing/TAOR rework/TAOR rework.vbproj
===================================================================
diff -u -r1602 -r1603
--- TAOR-rework-bugfixing/TAOR rework/TAOR rework.vbproj (.../TAOR rework.vbproj) (revision 1602)
+++ TAOR-rework-bugfixing/TAOR rework/TAOR rework.vbproj (.../TAOR rework.vbproj) (revision 1603)
@@ -29,7 +29,7 @@
TAOR rework
Robin De Bock
false
- 1
+ 2
5.1.0.%2a
false
true
Index: TAOR-rework-bugfixing/TAOR rework/formulieren/FormGrid.vb
===================================================================
diff -u -r1596 -r1603
--- TAOR-rework-bugfixing/TAOR rework/formulieren/FormGrid.vb (.../FormGrid.vb) (revision 1596)
+++ TAOR-rework-bugfixing/TAOR rework/formulieren/FormGrid.vb (.../FormGrid.vb) (revision 1603)
@@ -74,19 +74,15 @@
DataGridViewCache.Refresh()
datareader.Close()
Else
- Dim datareader As OdbcDataReader = CacheMapper.geefdatareader(tabel, waarde)
- dt.Load(datareader)
+ dt.Load( CacheMapper.GeefDataTable(tabel, waarde))
DataGridViewCache.AutoGenerateColumns = True
DataGridViewCache.DataSource = dt
DataGridViewCache.Refresh()
- datareader.Close()
End If
Else
- dt.Load(reader)
DataGridViewCache.AutoGenerateColumns = True
- DataGridViewCache.DataSource = dt
+ DataGridViewCache.DataSource = reader
DataGridViewCache.Refresh()
- reader.Close()
End If
Catch ex As Exception
MessageBox.Show(ex.Message, "Er is een fout opgetreden...", MessageBoxButtons.OK, MessageBoxIcon.Error)
Index: TAOR-rework-bugfixing/TAOR rework/databases/Cache/CacheMapper.vb
===================================================================
diff -u -r1601 -r1603
--- TAOR-rework-bugfixing/TAOR rework/databases/Cache/CacheMapper.vb (.../CacheMapper.vb) (revision 1601)
+++ TAOR-rework-bugfixing/TAOR rework/databases/Cache/CacheMapper.vb (.../CacheMapper.vb) (revision 1603)
@@ -2,502 +2,532 @@
Imports System.Data.Odbc
Imports System.Text
-Module CacheMapper
- Private Const CONNECTIE_STRING As String = "DSN=Cache01Admin1; DRIVER={InterSystems ODBC}; SERVER=CACHE01;DATABASE=ADMIN1;UID=_SYSTEM;PWD=SYS"
- Private SQLConnection As OdbcConnection
+ Module CacheMapper
+ Private Const CONNECTIE_STRING As String = "DSN=Cache01Admin1; DRIVER={InterSystems ODBC}; SERVER=CACHE01;DATABASE=ADMIN1;UID=_SYSTEM;PWD=SYS"
+ Private _sqlConnection As OdbcConnection
- Private Sub connectToCache()
- Try
- If SQLConnection Is Nothing Then
- 'Connectie initialiseren.
- SQLConnection = New OdbcConnection(CONNECTIE_STRING)
+ '''
+ ''' Hulpfunctie om de SQLCOnnectie met Caché te openen.
+ '''
+ Private Sub ConnectToCache()
+ Try
+ If _sqlConnection Is Nothing Then
+ 'Connectie initialiseren.
+ _sqlConnection = New OdbcConnection(CONNECTIE_STRING)
+ End If
+ 'Controleer of connectie status al open is.
+ If Not _sqlConnection.State = ConnectionState.Open Then
+ 'ALs dit nog niet het geval is, open de connectie.
+ _sqlConnection.Open()
+ End If
+ Catch ex As Exception
+ Throw New Exception($"De Caché databank kan niet bereikt worden: {vbNewLine}{ex.Message}")
+ End Try
+ End Sub
+
+ Private dr As OdbcDataReader
+ Public Sub sluitDataReader()
+ If Not (dr Is Nothing OrElse dr.IsClosed) Then
+ dr.Close()
+ dr = Nothing
End If
- 'Controleer of connectie status al open is.
- If Not SQLConnection.State = ConnectionState.Open Then
- 'ALs dit nog niet het geval is, open de connectie.
- SQLConnection.Open()
- End If
- Catch ex As Exception
- Throw New Exception($"De Caché databank kan niet bereikt worden: {vbNewLine}{ex.Message}")
- End Try
- End Sub
+ End Sub
- Private Sub executeIntoDataReader(query As String)
- Try
- connectToCache()
- sluitDataReader()
- Dim comm As OdbcCommand = New OdbcCommand(query, SQLConnection)
- dr = comm.ExecuteReader()
- Catch ex As Exception
- Throw New Exception("Er is een fout opgetreden bij het opvragen van de DataReader uit de Caché databank." & vbNewLine & ex.Message)
- End Try
- End Sub
+ Private Sub ExecuteIntoDataReader(query As String)
+ Try
+ ConnectToCache()
+ sluitDataReader()
+ Dim comm As OdbcCommand = New OdbcCommand(query, _sqlConnection)
+ dr = comm.ExecuteReader()
+ Catch ex As Exception
+ Throw New Exception($"Er is een fout opgetreden bij het opvragen van de DataReader uit de Caché databank.{vbNewLine}{ex.Message}")
+ End Try
+ End Sub
- Private Sub executeCommand(query As String)
- Try
- connectToCache()
- Dim comm As OdbcCommand = New OdbcCommand(query, SQLConnection)
- comm.ExecuteNonQuery()
- Catch ex As Exception
- Throw New Exception("De caché databank kan niet bereikt worden " & vbNewLine & ex.Message)
- End Try
- End Sub
+ Private Function ExecuteIntoDataReader2(query As String) As OdbcDataReader
+ Try
+ ConnectToCache()
+ Return New OdbcCommand(query, _sqlConnection).ExecuteReader()
+ Catch ex As Exception
+ Throw New Exception($"Kon datareader niet opvragen.{vbNewLine}{ex.Message}")
+ End Try
+ End Function
- Private Function executeIntoListOfString(ByVal query As String) As List(Of String)
- Try
- connectToCache()
- Dim comm As OdbcCommand = New OdbcCommand(query, SQLConnection)
+ Private Sub executeCommand(query As String)
+ Try
+ ConnectToCache()
+ Dim comm As OdbcCommand = New OdbcCommand(query, _sqlConnection)
+ comm.ExecuteNonQuery()
+ Catch ex As Exception
+ Throw New Exception("De caché databank kan niet bereikt worden " & vbNewLine & ex.Message)
+ End Try
+ End Sub
- Dim data As New List(Of String)
+ Private Function executeIntoListOfString(ByVal query As String) As List(Of String)
+ Try
+ ConnectToCache()
+ Dim comm As OdbcCommand = New OdbcCommand(query, _sqlConnection)
- dr = comm.ExecuteReader()
+ Dim data As New List(Of String)
- While (dr.Read())
- data.Add(dr.GetValue(0).ToString)
- End While
+ dr = comm.ExecuteReader()
- Return data
- Catch ex As Exception
- Throw New Exception("Er is een fout opgetreden bij het opvragen van data uit de Caché databank" & vbNewLine & ex.Message)
- End Try
- End Function
+ While (dr.Read())
+ data.Add(dr.GetValue(0).ToString)
+ End While
- Private Function getDataReader(kolom As Kolommen, waarde As String) As OdbcDataReader
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met kolom, waarde: " & EnumMapper.geefWaardeBijEnumValue(kolom) & ", " & waarde)
+ Return data
+ Catch ex As Exception
+ Throw New Exception("Er is een fout opgetreden bij het opvragen van data uit de Caché databank" & vbNewLine & ex.Message)
+ End Try
+ End Function
- Dim kolomnaam As String = geefCacheKolomNaamBijKolom(kolom)
- Dim keyword As String = " = "
+ Private Function GetDataReader(kolom As Kolommen, waarde As String) As OdbcDataReader
+ LogBestandTextMapper.writeToFile("Caché", $"Opvragen van DataReader met kolom, waarde: {EnumMapper.geefWaardeBijEnumValue(kolom)} {waarde}")
+ Try
+ Dim kolomnaam As String = EnumMapper.geefCacheKolomNaamBijKolom(kolom)
+ Dim equalsOfLikeSleutelwoord As String
- Try
- 'als het een naam is moeten we "like" gebruiken
- If kolomnaam.Equals("naam") Then
- keyword = " like "
- waarde = "%" + waarde + "%"
- End If
+ If Not kolom = Kolommen.klantnaam Then
+ 'Geen naam, aka gewoon equals.
+ equalsOfLikeSleutelwoord = "="
+ Else
+ 'Als het een naam is moeten we "like" als sleutelwoord gebruiken.
+ equalsOfLikeSleutelwoord = "like"
+ 'Kijken of veld de naam bevat door gebruik te maken van reguliere expressie.
+ waarde = "%" + waarde + "%"
+ End If
- Dim query As String = "select BatchID, ToeleveringID, Klant.naam, log.dossiercode, Kar, log.VerwerkingID, Onderdeel, max(StapNummer) as Status, sum(IsRework) as Rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where " & kolomnaam & keyword & "'" & waarde & "'" & "group by BatchID, ToeleveringID,Klant.naam,log.VerwerkingID, log.dossiercode,Onderdeel, Kar order by BatchID, ToeleveringID, Kar"
+ Dim query = $"select BatchID, ToeleveringID, Klant.naam, log.dossiercode, Kar, log.VerwerkingID, Onderdeel, max(StapNummer) as Status, sum(IsRework) as Rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where {kolomnaam} {equalsOfLikeSleutelwoord} '{waarde}' group by BatchID, ToeleveringID,Klant.naam,log.VerwerkingID, log.dossiercode,Onderdeel, Kar order by BatchID, ToeleveringID, Kar"
- executeIntoDataReader(query)
- Catch ex As Exception
- Throw New Exception("Fout bij opvragen van OdbcDataReader met kolom, waarde: " & EnumMapper.geefWaardeBijEnumValue(kolom) & ", " & waarde & vbNewLine & ex.Message)
- End Try
+ LogBestandTextMapper.writeToFile("Caché", $"Opvragen van DataReader met kolom, waarde: {EnumMapper.geefWaardeBijEnumValue(kolom)} {waarde}", True)
+ 'Uitvoeren van query en datareader retourneren.
+ Return ExecuteIntoDataReader2(query)
+ Catch ex As Exception
+ Throw New Exception($"Fout bij opvragen van DataReader met kolom, waarde: {EnumMapper.geefWaardeBijEnumValue(kolom)} {waarde}")
+ End Try
+ End Function
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met kolom, waarde: " & kolom & ", " & waarde, True)
- Return dr
- End Function
+ Private Function GetDataReaderBarcode(waarde As String) As OdbcDataReader
+ LogBestandTextMapper.writeToFile("Caché", $"Opvragen van data reader met barcode: {waarde}")
- Private Function getDataReaderBarcode(waarde As String) As OdbcDataReader
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met barcode: " & waarde)
- Dim query As String
- Try
- Dim dr As OdbcDataReader = getDataReader(Kolommen.barcode, waarde)
- 'als er geen entry is gevonden wordt de lege datareader gereturnt
- If Not dr.HasRows Then
- Return dr
- End If
+ 'Variable declaratie.
+ Dim batch, kar
- Dim batch As String = ""
- Dim kar As String = ""
- Dim uniekeBarcode As Boolean = True
- Do While dr.Read
- If Not uniekeBarcode Then
- Throw New Exception("De barcode is niet uniek")
+ 'Opvragen batch en kar.
+ Try
+ 'Opvragen van de datareader met als type barcode bij de hulpfunctie.
+ Dim barcodeDataReader = GetDataReader(Kolommen.barcode, waarde)
+
+ If Not barcodeDataReader.Read() Then
+ 'Als er geen rij is gevonden wordt de lege data reader geretourneert.
+ Return barcodeDataReader
+ Else
+ 'Opvragen en toewijzen van batch en kar.
+ batch = barcodeDataReader.GetValue(0).ToString
+ kar = barcodeDataReader.GetValue(4).ToString
End If
- batch = dr.GetValue(0).ToString
- kar = dr.GetValue(4).ToString
- uniekeBarcode = False
- Loop
- query = "select BatchID, ToeleveringID, Klant.naam, log.dossiercode, ISNULL(Kar, '') as Kar, log.VerwerkingID, Onderdeel, max(StapNummer) as Status, sum(IsRework) as Rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where (" & "BatchID" & " = " & "'" & batch & "'" & ") group by BatchID, ToeleveringID,Klant.naam,log.VerwerkingID, log.dossiercode,Onderdeel, Kar having ISNULL(Kar, '')" & " like " & "'" & kar & "'" & " order by BatchID, ToeleveringID, Kar"
- executeIntoDataReader(query)
- Catch ex As Exception
- Throw New Exception("Er is een fout opgetreden bij het opvragen van de batch en kar voor het opvragen van de datareader uit de Caché databank" & vbNewLine & ex.Message)
- End Try
+ Catch ex As Exception
+ Throw New Exception($"Er is een fout opgetreden bij het opvragen van de batch en kar voor het opvragen van de data reader uit de Caché databank {vbnewline}{ex.Message}")
+ End Try
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met barcode: " & waarde, True)
- Return dr
- End Function
+ 'Data reader opvragen.
+ Try
+ Dim query = $"select BatchID, ToeleveringID, Klant.naam, log.dossiercode, ISNULL(Kar, '') as Kar, log.VerwerkingID, Onderdeel, max(StapNummer) as Status, sum(IsRework) as Rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where (BatchID='{batch}') group by BatchID, ToeleveringID,Klant.naam,log.VerwerkingID, log.dossiercode,Onderdeel, Kar having ISNULL(Kar, '') like '{kar}' order by BatchID, ToeleveringID, Kar"
- Private Function getDataReader(kolom As Kolommen, waarde As String, filter As String) As OdbcDataReader
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met kolom, waarde, filter: " & EnumMapper.geefWaardeBijEnumValue(kolom) & ", " & waarde & ", " & filter)
+ LogBestandTextMapper.writeToFile("Caché", $"Opvragen van data reader met barcode: {waarde}", True)
- Dim kolomnaam As String = geefCacheKolomNaamBijKolom(kolom)
- Dim keyword As String = " = "
- Try
- 'als het een naam is moeten we "like" gebruiken
- If kolomnaam.Equals("naam") Then
- keyword = " like "
- waarde = "%" + waarde + "%"
- End If
+ 'Uitvoeren van query en datareader retourneren.
+ Return ExecuteIntoDataReader2(query)
+ Catch ex As Exception
+ Throw New Exception($"Er is een fout opgetreden bij het vullen van de data reader van een bepaalde batch en kar uit de Caché databank {vbnewline}{ex.Message}")
+ End Try
+ End Function
- Dim query As String = "select BatchID, ToeleveringID, Klant.naam, log.dossiercode, Kar, log.VerwerkingID, Onderdeel, max(StapNummer) as Status, sum(IsRework) as Rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where " & kolomnaam & keyword & "'" & waarde & "'" & " AND Onderdeel = " & "'" & filter & "'" & " group by BatchID, ToeleveringID,Klant.naam,log.VerwerkingID, log.dossiercode,Onderdeel, Kar order by BatchID, ToeleveringID, Kar"
+ Private Function getDataReader(kolom As Kolommen, waarde As String, filter As String) As OdbcDataReader
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met kolom, waarde, filter: " & EnumMapper.geefWaardeBijEnumValue(kolom) & ", " & waarde & ", " & filter)
- executeIntoDataReader(query)
- Catch ex As Exception
- Throw New Exception("Fout bij opvragen van OdbcDataReader met kolom, waarde, filter: " & EnumMapper.geefWaardeBijEnumValue(kolom) & ", " & waarde & ", " & filter & vbNewLine & ex.Message)
- End Try
+ Dim kolomnaam As String = geefCacheKolomNaamBijKolom(kolom)
+ Dim keyword As String = " = "
+ Try
+ 'als het een naam is moeten we "like" gebruiken
+ If kolomnaam.Equals("naam") Then
+ keyword = " like "
+ waarde = "%" + waarde + "%"
+ End If
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met kolom, waarde, filter: " & EnumMapper.geefWaardeBijEnumValue(kolom) & ", " & waarde & ", " & filter, True)
- Return dr
- End Function
+ Dim query As String = "select BatchID, ToeleveringID, Klant.naam, log.dossiercode, Kar, log.VerwerkingID, Onderdeel, max(StapNummer) as Status, sum(IsRework) as Rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where " & kolomnaam & keyword & "'" & waarde & "'" & " AND Onderdeel = " & "'" & filter & "'" & " group by BatchID, ToeleveringID,Klant.naam,log.VerwerkingID, log.dossiercode,Onderdeel, Kar order by BatchID, ToeleveringID, Kar"
- Private Function getDataReaderBarcode(waarde As String, filter As String) As OdbcDataReader
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met waarde, filter: " & waarde & ", " & filter)
- Dim query As String
- Try
- Dim dr As OdbcDataReader = getDataReader(Kolommen.barcode, waarde)
- 'als er geen entry is gevonden wordt de lege datareader gereturnt
- If Not dr.HasRows Then
- Return dr
- End If
+ ExecuteIntoDataReader(query)
+ Catch ex As Exception
+ Throw New Exception("Fout bij opvragen van OdbcDataReader met kolom, waarde, filter: " & EnumMapper.geefWaardeBijEnumValue(kolom) & ", " & waarde & ", " & filter & vbNewLine & ex.Message)
+ End Try
- dr.Read()
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met kolom, waarde, filter: " & EnumMapper.geefWaardeBijEnumValue(kolom) & ", " & waarde & ", " & filter, True)
+ Return dr
+ End Function
- Dim batch As String = dr.GetValue(0).ToString
- Dim kar As String = dr.GetValue(4).ToString
+ Private Function getDataReaderBarcode(waarde As String, filter As String) As OdbcDataReader
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met waarde, filter: " & waarde & ", " & filter)
+ Dim query As String
+ Try
+ Dim dr As OdbcDataReader = GetDataReader(Kolommen.barcode, waarde)
+ 'als er geen entry is gevonden wordt de lege datareader gereturnt
+ If Not dr.HasRows Then
+ Return dr
+ End If
- query = "select BatchID, ToeleveringID, Klant.naam, log.dossiercode, Kar, log.VerwerkingID, Onderdeel, max(StapNummer) as Status, sum(IsRework) as Rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where (" & geefCacheKolomNaamBijKolom(Kolommen.batch) & " = " & "'" & batch & "'" & " AND " & geefCacheKolomNaamBijKolom(Kolommen.sorteerkar) & " = " & "'" & kar & "'" & " AND Onderdeel = " & "'" & filter & "'" & ") group by BatchID, ToeleveringID,Klant.naam,log.VerwerkingID, log.dossiercode,Onderdeel, Kar order by BatchID, ToeleveringID, Kar"
+ dr.Read()
- executeIntoDataReader(query)
- Catch ex As Exception
- Throw New Exception("Fout bij opvragen van OdbcDataReader met waarde, filter: " & waarde & ", " & filter & vbNewLine & ex.Message)
- End Try
+ Dim batch As String = dr.GetValue(0).ToString
+ Dim kar As String = dr.GetValue(4).ToString
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met waarde, filter: " & waarde & ", " & filter, True)
- Return dr
- End Function
+ query = "select BatchID, ToeleveringID, Klant.naam, log.dossiercode, Kar, log.VerwerkingID, Onderdeel, max(StapNummer) as Status, sum(IsRework) as Rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where (" & geefCacheKolomNaamBijKolom(Kolommen.batch) & " = " & "'" & batch & "'" & " AND " & geefCacheKolomNaamBijKolom(Kolommen.sorteerkar) & " = " & "'" & kar & "'" & " AND Onderdeel = " & "'" & filter & "'" & ") group by BatchID, ToeleveringID,Klant.naam,log.VerwerkingID, log.dossiercode,Onderdeel, Kar order by BatchID, ToeleveringID, Kar"
- Private dr As OdbcDataReader
- Public Sub sluitDataReader()
- If Not (dr Is Nothing OrElse dr.IsClosed) Then
- dr.Close()
- dr = Nothing
- End If
- End Sub
+ ExecuteIntoDataReader(query)
+ Catch ex As Exception
+ Throw New Exception("Fout bij opvragen van OdbcDataReader met waarde, filter: " & waarde & ", " & filter & vbNewLine & ex.Message)
+ End Try
- Public Function getDetails(barcode As String) As OdbcDataReader
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met details, van barcode: " & barcode)
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met waarde, filter: " & waarde & ", " & filter, True)
+ Return dr
+ End Function
- Dim query As String = "select BatchID, ToeleveringID, Klant.naam, log.dossiercode, Kar, log.VerwerkingID, machineID, Onderdeel, tijdstipProductie as TijdstipProductie, StapNummer as Productiestap, Case when IsRework=1 THEN 'TRUE' END as rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where " & "verwerkingID = " & "'" & barcode & "'" & " order by StapNummer"
- Try
- executeIntoDataReader(query)
- Catch ex As Exception
- Throw New Exception("Fout bij opvragen van OdbcDataReader met details, van barcode: " & barcode & vbNewLine & ex.Message)
- End Try
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met details, van barcode: " & barcode, True)
- Return dr
- End Function
+ Public Function getDetails(barcode As String) As OdbcDataReader
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met details, van barcode: " & barcode)
- Public Function geefdatareader(kolom As Kolommen, waarde As Object) As OdbcDataReader
- 'als het een barcode is moeten we iets meer laten zien: entry's die in dezelfde batch en kar zitten als de barcode
- If kolom = Kolommen.barcode Then
- Return getDataReaderBarcode(waarde)
- ElseIf kolom = Kolommen.barcodesVoorraad Then
- Return geefdatareader(TryCast(CObj(waarde), List(Of String)))
- Else
- Return getDataReader(kolom, waarde)
- End If
- End Function
+ Dim query As String = "select BatchID, ToeleveringID, Klant.naam, log.dossiercode, Kar, log.VerwerkingID, machineID, Onderdeel, tijdstipProductie as TijdstipProductie, StapNummer as Productiestap, Case when IsRework=1 THEN 'TRUE' END as rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where " & "verwerkingID = " & "'" & barcode & "'" & " order by StapNummer"
+ Try
+ ExecuteIntoDataReader(query)
+ Catch ex As Exception
+ Throw New Exception("Fout bij opvragen van OdbcDataReader met details, van barcode: " & barcode & vbNewLine & ex.Message)
+ End Try
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met details, van barcode: " & barcode, True)
+ Return dr
+ End Function
- Public Function geefdatareader(kolom As Kolommen, waarde As String, filter As String) As OdbcDataReader
- 'als het een barcode is moeten we iets meer laten zien: entry's die in dezelfde batch en kar zitten als de barcode
- If kolom = Kolommen.barcode Then
- Return getDataReaderBarcode(waarde, filter)
- Else
- Return getDataReader(kolom, waarde, filter)
- End If
- End Function
+ Public Function GeefDataTable(kolom As Kolommen, waarde As Object) As DataTable
+ Dim dataReader As OdbcDataReader
- Public Function geefOnderdelen() As List(Of String)
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van onderdelen")
- Dim query As String = "select DISTINCT Onderdeel from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem"
+ If kolom = Kolommen.barcode Then
+ 'Als het een barcode is moeten we iets meer laten zien: entry's die in dezelfde batch en kar zitten als de barcode.
+ dataReader = GetDataReaderBarcode(waarde)
+ ElseIf kolom = Kolommen.barcodesVoorraad Then
+ 'Barcodes van een voorraad worden tegelijk verwerkt.
+ dataReader= geefDataReader(TryCast(CObj(waarde), List(Of String)))
+ Else
+ dataReader= GetDataReader(kolom, waarde)
+ End If
- Dim onderdelen As New List(Of String)
- onderdelen = executeIntoListOfString(query)
+ 'DataTable initialiseren en vullen met resultaat van de datareader.
+ Dim datatable = new DataTable()
+ datatable.Load(datareader)
+ 'Connectie van datareader sluiten.
+ datareader.Close()
+ 'Retourneren van de datatable
+ return datatable
+ End Function
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van onderdelen", True)
- Return onderdelen
- End Function
-
- Public Function updateRework(rework As Rework.Rework, Optional barcodeOrigineel As String = "") As Rework.Rework
- LogBestandTextMapper.writeToFile("Caché", "Updaten van rework met informatie uit databank")
-
- Dim barcode As String
- If barcodeOrigineel.Equals("") Then
- barcode = rework.barcode
- Else
- barcode = barcodeOrigineel
- End If
- Dim query As String = "select top 1 BatchID, DossierCode, DueOut, IsRework, Kar, MachineID, Onderdeel, PartijID, ProductID, SequentieNummer, StapNummer, TijdstipCreatie, TijdstipProductie, ToeleveringID, VerwerkingID, ReworkReden from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where " & "verwerkingID = " & "'" & barcode & "'"
- Dim hasRead As Boolean = False
- Try
- connectToCache()
- Dim command As OdbcCommand = New OdbcCommand(query, SQLConnection)
- dr = command.ExecuteReader
- While dr.Read()
- rework.batch = If(IsDBNull(dr.Item("BatchID")), Nothing, CStr(dr.Item("BatchID")))
- rework.dossierCode = If(IsDBNull(dr.Item("DossierCode")), Nothing, CStr(dr.Item("DossierCode")))
- rework.DueOut = If(IsDBNull(dr.Item("DueOut")), Nothing, CStr(dr.Item("DueOut")))
- rework.IsRework = "rework"
- rework.kar = If(IsDBNull(dr.Item("Kar")), Nothing, CStr(dr.Item("Kar")))
- rework.MachineID = If(IsDBNull(dr.Item("MachineID")), Nothing, CStr(dr.Item("MachineID")))
- rework.OrigineelOnderdeel = If(IsDBNull(dr.Item("Onderdeel")), Nothing, CStr(dr.Item("Onderdeel")))
- rework.PartijID = If(IsDBNull(dr.Item("PartijID")), Nothing, CStr(dr.Item("PartijID")))
- rework.ProductID = If(IsDBNull(dr.Item("ProductID")), Nothing, CStr(dr.Item("ProductID")))
- rework.SequentieNummer = If(IsDBNull(dr.Item("SequentieNummer")), Nothing, CStr(dr.Item("SequentieNummer")))
- rework.StapNummer = If(IsDBNull(dr.Item("StapNummer")), Nothing, CStr(dr.Item("StapNummer")))
- rework.TijdstipCreatie = If(IsDBNull(dr.Item("TijdstipCreatie")), Nothing, CStr(dr.Item("TijdstipCreatie")))
- rework.TijdstipProductie = If(IsDBNull(dr.Item("TijdstipProductie")), Nothing, CStr(dr.Item("TijdstipProductie")))
- rework.ToeleveringID = If(IsDBNull(dr.Item("ToeleveringID")), Nothing, CStr(dr.Item("ToeleveringID")))
-
- hasRead = True
- End While
- If Not hasRead Then
- Throw New Exception("Er is geen record in Caché gevonden voor barcode " & barcode & " om een rework te updaten")
+ Public Function geefdatareader(kolom As Kolommen, waarde As String, filter As String) As OdbcDataReader
+ 'als het een barcode is moeten we iets meer laten zien: entry's die in dezelfde batch en kar zitten als de barcode
+ If kolom = Kolommen.barcode Then
+ Return getDataReaderBarcode(waarde, filter)
+ Else
+ Return getDataReader(kolom, waarde, filter)
End If
- Catch ex As Exception
- Throw New Exception("Er is een fout opgetreden bij het updaten van een rework met data uit database Caché " & vbNewLine & ex.Message)
- End Try
- LogBestandTextMapper.writeToFile("Caché", "Updaten van rework met informatie uit databank", True)
- Return rework
- End Function
+ End Function
- Public Sub opslaanReworkReden(ByRef rework As Rework.Rework)
- LogBestandTextMapper.writeToFile("Caché", "Opslaan rework reden met reden: " & rework.reden)
+ Public Function geefOnderdelen() As List(Of String)
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van onderdelen")
+ Dim query As String = "select DISTINCT Onderdeel from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem"
- updateStapNummer(rework.barcode)
+ Dim onderdelen As New List(Of String)
+ onderdelen = executeIntoListOfString(query)
- slaRedenOp(rework)
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van onderdelen", True)
+ Return onderdelen
+ End Function
- LogBestandTextMapper.writeToFile("Caché", "Opslaan rework reden met reden: " & rework.reden, True)
- End Sub
+ Public Function updateRework(rework As Rework.Rework, Optional barcodeOrigineel As String = "") As Rework.Rework
+ LogBestandTextMapper.writeToFile("Caché", "Updaten van rework met informatie uit databank")
- Private Sub updateStapNummer(ByVal verwerkingID As String)
- LogBestandTextMapper.writeToFile("Caché", "Updaten stapnummer met verwerkingID: " & verwerkingID)
- Try
- Dim query As String = "UPDATE APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem SET StapNummer=-StapNummer WHERE VerwerkingID= '" & verwerkingID & "' and StapNummer>0"
+ Dim barcode As String
+ If barcodeOrigineel.Equals("") Then
+ barcode = rework.barcode
+ Else
+ barcode = barcodeOrigineel
+ End If
+ Dim query As String = "select top 1 BatchID, DossierCode, DueOut, IsRework, Kar, MachineID, Onderdeel, PartijID, ProductID, SequentieNummer, StapNummer, TijdstipCreatie, TijdstipProductie, ToeleveringID, VerwerkingID, ReworkReden from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) where " & "verwerkingID = " & "'" & barcode & "'"
+ Dim hasRead As Boolean = False
+ Try
+ ConnectToCache()
+ Dim command As OdbcCommand = New OdbcCommand(query, _sqlConnection)
+ dr = command.ExecuteReader
+ While dr.Read()
+ rework.batch = If(IsDBNull(dr.Item("BatchID")), Nothing, CStr(dr.Item("BatchID")))
+ rework.dossierCode = If(IsDBNull(dr.Item("DossierCode")), Nothing, CStr(dr.Item("DossierCode")))
+ rework.DueOut = If(IsDBNull(dr.Item("DueOut")), Nothing, CStr(dr.Item("DueOut")))
+ rework.IsRework = "rework"
+ rework.kar = If(IsDBNull(dr.Item("Kar")), Nothing, CStr(dr.Item("Kar")))
+ rework.MachineID = If(IsDBNull(dr.Item("MachineID")), Nothing, CStr(dr.Item("MachineID")))
+ rework.OrigineelOnderdeel = If(IsDBNull(dr.Item("Onderdeel")), Nothing, CStr(dr.Item("Onderdeel")))
+ rework.PartijID = If(IsDBNull(dr.Item("PartijID")), Nothing, CStr(dr.Item("PartijID")))
+ rework.ProductID = If(IsDBNull(dr.Item("ProductID")), Nothing, CStr(dr.Item("ProductID")))
+ rework.SequentieNummer = If(IsDBNull(dr.Item("SequentieNummer")), Nothing, CStr(dr.Item("SequentieNummer")))
+ rework.StapNummer = If(IsDBNull(dr.Item("StapNummer")), Nothing, CStr(dr.Item("StapNummer")))
+ rework.TijdstipCreatie = If(IsDBNull(dr.Item("TijdstipCreatie")), Nothing, CStr(dr.Item("TijdstipCreatie")))
+ rework.TijdstipProductie = If(IsDBNull(dr.Item("TijdstipProductie")), Nothing, CStr(dr.Item("TijdstipProductie")))
+ rework.ToeleveringID = If(IsDBNull(dr.Item("ToeleveringID")), Nothing, CStr(dr.Item("ToeleveringID")))
- executeCommand(query)
- Catch ex As Exception
- Throw New Exception("Er is een fout opgetreden bij het updaten van het stapnummer bij het opslaan van een rework reden in de Caché databank" & vbNewLine & ex.Message)
- End Try
- LogBestandTextMapper.writeToFile("Caché", "Updaten stapnummer met verwerkingID: " & verwerkingID, True)
- End Sub
+ hasRead = True
+ End While
+ If Not hasRead Then
+ Throw New Exception("Er is geen record in Caché gevonden voor barcode " & barcode & " om een rework te updaten")
+ End If
+ Catch ex As Exception
+ Throw New Exception("Er is een fout opgetreden bij het updaten van een rework met data uit database Caché " & vbNewLine & ex.Message)
+ End Try
+ LogBestandTextMapper.writeToFile("Caché", "Updaten van rework met informatie uit databank", True)
+ Return rework
+ End Function
- Private Sub slaRedenOp(ByVal rework As Rework.Rework)
- LogBestandTextMapper.writeToFile("Caché", "Rework reden wegschrijven naar de databank, reden: " & rework.reden)
+ Public Sub opslaanReworkReden(ByRef rework As Rework.Rework)
+ LogBestandTextMapper.writeToFile("Caché", "Opslaan rework reden met reden: " & rework.reden)
- rework.aanpassenData()
- Dim datum As String = Now.ToString("yyyy-MM-dd HH:mm:ss")
- Dim query As String = "insert into APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem (BatchID, DossierCode, DueOut, IsRework, Kar, MachineID, Onderdeel, PartijID, ProductID, SequentieNummer, StapNummer, TijdstipCreatie, TijdstipProductie, ToeleveringID, VerwerkingID, ReworkReden) values ('" & rework.batch & "', '" & rework.dossierCode & "', '" & rework.DueOut & "', '" & rework.IsRework & "', '" & rework.kar & "', '" & rework.MachineID & "', '" & rework.OrigineelOnderdeel & "', '" & rework.PartijID & "', '" & rework.ProductID & "', '" & rework.SequentieNummer & "', '" & rework.StapNummer & "', '" & datum & "', '" & datum & "' ,'" & rework.ToeleveringID & "', '" & rework.barcode & "', '" & rework.reden & "')"
- Try
- Dim addCommand As New OdbcCommand
- addCommand.CommandText = query
- addCommand.Connection = SQLConnection
+ updateStapNummer(rework.barcode)
- connectToCache()
- addCommand.ExecuteNonQuery()
- Catch ex As Exception
- Throw New Exception("Er is een fout opgetreden bij het wegschrijven van de rework met reden naar Caché " & vbNewLine & ex.Message)
- End Try
- LogBestandTextMapper.writeToFile("Caché", "Rework reden wegschrijven naar de databank, reden: " & rework.reden, True)
- End Sub
+ slaRedenOp(rework)
- 'Opvragen barcode nummer voor test lade of special lade
- Public Function geefBarcodeNummer() As Integer
- Dim query As String = ""
- Dim teller, maxteller, minTeller, nieuweTeller As Integer
+ LogBestandTextMapper.writeToFile("Caché", "Opslaan rework reden met reden: " & rework.reden, True)
+ End Sub
- Dim retry As Boolean = True
-
- LogBestandTextMapper.writeToFile("Caché", "- Opvragen van barcode nummer, retry: " & retry)
- Do While retry
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van alle tellers")
- query = "select * from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers where label='BARCODE'"
+ Private Sub updateStapNummer(ByVal verwerkingID As String)
+ LogBestandTextMapper.writeToFile("Caché", "Updaten stapnummer met verwerkingID: " & verwerkingID)
Try
- executeIntoDataReader(query)
+ Dim query As String = "UPDATE APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem SET StapNummer=-StapNummer WHERE VerwerkingID= '" & verwerkingID & "' and StapNummer>0"
- dr.Read()
-
- teller = CInt(dr.Item("Teller"))
- maxteller = CInt(dr.Item("MaxTeller"))
- minTeller = CInt(dr.Item("MinTeller"))
+ executeCommand(query)
Catch ex As Exception
- Throw New Exception("Er is een fout opgetreden bij het opvragen van de tellers voor een test lade barcode nummer" & vbNewLine & ex.Message)
+ Throw New Exception("Er is een fout opgetreden bij het updaten van het stapnummer bij het opslaan van een rework reden in de Caché databank" & vbNewLine & ex.Message)
End Try
+ LogBestandTextMapper.writeToFile("Caché", "Updaten stapnummer met verwerkingID: " & verwerkingID, True)
+ End Sub
- If teller > maxteller Then
- nieuweTeller = minTeller
- Else
- nieuweTeller = teller + 1
- End If
+ Private Sub slaRedenOp(ByVal rework As Rework.Rework)
+ LogBestandTextMapper.writeToFile("Caché", "Rework reden wegschrijven naar de databank, reden: " & rework.reden)
+ rework.aanpassenData()
+ Dim datum As String = Now.ToString("yyyy-MM-dd HH:mm:ss")
+ Dim query As String = "insert into APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem (BatchID, DossierCode, DueOut, IsRework, Kar, MachineID, Onderdeel, PartijID, ProductID, SequentieNummer, StapNummer, TijdstipCreatie, TijdstipProductie, ToeleveringID, VerwerkingID, ReworkReden) values ('" & rework.batch & "', '" & rework.dossierCode & "', '" & rework.DueOut & "', '" & rework.IsRework & "', '" & rework.kar & "', '" & rework.MachineID & "', '" & rework.OrigineelOnderdeel & "', '" & rework.PartijID & "', '" & rework.ProductID & "', '" & rework.SequentieNummer & "', '" & rework.StapNummer & "', '" & datum & "', '" & datum & "' ,'" & rework.ToeleveringID & "', '" & rework.barcode & "', '" & rework.reden & "')"
+ Try
+ Dim addCommand As New OdbcCommand
+ addCommand.CommandText = query
+ addCommand.Connection = _sqlConnection
- 'alleen uitvoeren als de verwerk optie aanstaat
- If Configs.geefVerwerkStatus Then
+ ConnectToCache()
+ addCommand.ExecuteNonQuery()
+ Catch ex As Exception
+ Throw New Exception("Er is een fout opgetreden bij het wegschrijven van de rework met reden naar Caché " & vbNewLine & ex.Message)
+ End Try
+ LogBestandTextMapper.writeToFile("Caché", "Rework reden wegschrijven naar de databank, reden: " & rework.reden, True)
+ End Sub
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van alle tellers", True)
+ 'Opvragen barcode nummer voor test lade of special lade
+ Public Function geefBarcodeNummer() As Integer
+ Dim query As String = ""
+ Dim teller, maxteller, minTeller, nieuweTeller As Integer
- LogBestandTextMapper.writeToFile("Caché", "Updaten van de teller met de nieuwe teller: " & nieuweTeller)
- query = "Update APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers set Teller=" & nieuweTeller & " where label='BARCODE'"
- executeCommand(query)
- LogBestandTextMapper.writeToFile("Caché", "Updaten van de teller met de nieuwe teller: " & nieuweTeller, True)
+ Dim retry As Boolean = True
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van de geüpdate teller")
- query = "select Teller from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers where label='BARCODE'"
+ LogBestandTextMapper.writeToFile("Caché", "- Opvragen van barcode nummer, retry: " & retry)
+ Do While retry
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van alle tellers")
+ query = "select * from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers where label='BARCODE'"
Try
- executeIntoDataReader(query)
+ ExecuteIntoDataReader(query)
dr.Read()
- teller = dr.Item("Teller")
+ teller = CInt(dr.Item("Teller"))
+ maxteller = CInt(dr.Item("MaxTeller"))
+ minTeller = CInt(dr.Item("MinTeller"))
Catch ex As Exception
- Throw New Exception("Er is een fout opgetreden bij het opvragen van de nieuwe teller voor test lade barcode nummer" & vbNewLine & ex.Message)
+ Throw New Exception("Er is een fout opgetreden bij het opvragen van de tellers voor een test lade barcode nummer" & vbNewLine & ex.Message)
End Try
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van de geüpdate teller", True)
- If nieuweTeller <> teller Then
- If retry Then
- retry = False
- Else
- Throw New Exception("Kan geen unieke barcode nummer opvragen")
- End If
+
+ If teller > maxteller Then
+ nieuweTeller = minTeller
Else
- retry = False
+ nieuweTeller = teller + 1
End If
- Else 'er wordt niet verwerkt
- retry = False
- End If
- Loop
- LogBestandTextMapper.writeToFile("Caché", "- Opvragen van barcode nummer, retry: " & retry, True)
- Return nieuweTeller
- End Function
+ 'alleen uitvoeren als de verwerk optie aanstaat
+ If Configs.geefVerwerkStatus Then
- 'Opvragen barcode nummer voor test lade
- Public Function geefTestLadeTrayNummer() As Integer
- Dim query As String = ""
- Dim teller, maxteller, minTeller, nieuweTeller As Integer
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van alle tellers", True)
- Dim retry As Boolean = True
+ LogBestandTextMapper.writeToFile("Caché", "Updaten van de teller met de nieuwe teller: " & nieuweTeller)
+ query = "Update APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers set Teller=" & nieuweTeller & " where label='BARCODE'"
+ executeCommand(query)
+ LogBestandTextMapper.writeToFile("Caché", "Updaten van de teller met de nieuwe teller: " & nieuweTeller, True)
- LogBestandTextMapper.writeToFile("Caché", "- Opvragen van tray nummer, retry: " & retry)
- Do While retry
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van alle tellers")
- query = "select * from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers where label='TRAY'"
- Try
- executeIntoDataReader(query)
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van de geüpdate teller")
+ query = "select Teller from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers where label='BARCODE'"
+ Try
+ ExecuteIntoDataReader(query)
- dr.Read()
+ dr.Read()
- teller = CInt(dr.Item("Teller"))
- maxteller = CInt(dr.Item("MaxTeller"))
- minTeller = CInt(dr.Item("MinTeller"))
- Catch ex As Exception
- Throw New Exception("Er is een fout opgetreden bij het opvragen van de tellers voor test lade tray nummer")
- End Try
- If teller > maxteller Then
- nieuweTeller = minTeller
- Else
- nieuweTeller = teller + 1
- End If
+ teller = dr.Item("Teller")
+ Catch ex As Exception
+ Throw New Exception("Er is een fout opgetreden bij het opvragen van de nieuwe teller voor test lade barcode nummer" & vbNewLine & ex.Message)
+ End Try
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van de geüpdate teller", True)
+ If nieuweTeller <> teller Then
+ If retry Then
+ retry = False
+ Else
+ Throw New Exception("Kan geen unieke barcode nummer opvragen")
+ End If
+ Else
+ retry = False
+ End If
- 'alleen uitvoeren als de verwerk optie aanstaat
- If Configs.geefVerwerkStatus Then
+ Else 'er wordt niet verwerkt
+ retry = False
+ End If
+ Loop
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van alle tellers", True)
+ LogBestandTextMapper.writeToFile("Caché", "- Opvragen van barcode nummer, retry: " & retry, True)
+ Return nieuweTeller
+ End Function
- LogBestandTextMapper.writeToFile("Caché", "Updaten van de teller met de nieuwe teller: " & nieuweTeller)
- query = "Update APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers set Teller=" & nieuweTeller & " where label='TRAY'"
- executeCommand(query)
- LogBestandTextMapper.writeToFile("Caché", "Updaten van de teller met de nieuwe teller: " & nieuweTeller, True)
+ 'Opvragen barcode nummer voor test lade
+ Public Function geefTestLadeTrayNummer() As Integer
+ Dim query As String = ""
+ Dim teller, maxteller, minTeller, nieuweTeller As Integer
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van de geüpdate teller")
- query = "select Teller from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers where label='TRAY'"
+ Dim retry As Boolean = True
+
+ LogBestandTextMapper.writeToFile("Caché", "- Opvragen van tray nummer, retry: " & retry)
+ Do While retry
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van alle tellers")
+ query = "select * from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers where label='TRAY'"
Try
- executeIntoDataReader(query)
+ ExecuteIntoDataReader(query)
dr.Read()
- teller = dr.Item("Teller")
+ teller = CInt(dr.Item("Teller"))
+ maxteller = CInt(dr.Item("MaxTeller"))
+ minTeller = CInt(dr.Item("MinTeller"))
Catch ex As Exception
- Throw New Exception("Er is een fout opgetreden bij het opvragen van de nieuwe teller voor test lade tray nummer")
+ Throw New Exception("Er is een fout opgetreden bij het opvragen van de tellers voor test lade tray nummer")
End Try
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van de geüpdate teller", True)
- If nieuweTeller <> teller Then
- If retry Then
- retry = False
+ If teller > maxteller Then
+ nieuweTeller = minTeller
+ Else
+ nieuweTeller = teller + 1
+ End If
+
+ 'alleen uitvoeren als de verwerk optie aanstaat
+ If Configs.geefVerwerkStatus Then
+
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van alle tellers", True)
+
+ LogBestandTextMapper.writeToFile("Caché", "Updaten van de teller met de nieuwe teller: " & nieuweTeller)
+ query = "Update APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers set Teller=" & nieuweTeller & " where label='TRAY'"
+ executeCommand(query)
+ LogBestandTextMapper.writeToFile("Caché", "Updaten van de teller met de nieuwe teller: " & nieuweTeller, True)
+
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van de geüpdate teller")
+ query = "select Teller from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.Tellers where label='TRAY'"
+ Try
+ ExecuteIntoDataReader(query)
+
+ dr.Read()
+
+ teller = dr.Item("Teller")
+ Catch ex As Exception
+ Throw New Exception("Er is een fout opgetreden bij het opvragen van de nieuwe teller voor test lade tray nummer")
+ End Try
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van de geüpdate teller", True)
+ If nieuweTeller <> teller Then
+ If retry Then
+ retry = False
+ Else
+ Throw New Exception("Kan geen unieke tray nummer opvragen")
+ End If
Else
- Throw New Exception("Kan geen unieke tray nummer opvragen")
+ retry = False
End If
- Else
+
+ Else 'er wordt niet verwerkt
retry = False
End If
+ Loop
- Else 'er wordt niet verwerkt
- retry = False
- End If
- Loop
+ LogBestandTextMapper.writeToFile("Caché", "- Opvragen van tray nummer, retry: " & retry, True)
+ Return nieuweTeller
+ End Function
- LogBestandTextMapper.writeToFile("Caché", "- Opvragen van tray nummer, retry: " & retry, True)
- Return nieuweTeller
- End Function
+ 'Opslaan van gegenereerde onderdeel door eerst het origineel op te vragen en bepaalde velden aan te passen en dan te inserten
+ Public Sub opslaanGegenereerdeOnderdelen(origineelOnderdeel As ArdisData, nieuwOnderdeel As ArdisData, nieuwOnderdeelNaam As String)
+ LogBestandTextMapper.writeToFile("Cache", "Opslaan van gegenereerde onderdeel aan de hand van oud bestaand onderdeel, barcode bestaand onderdeel, barcode nieuw onderdeel: " & origineelOnderdeel.PartCalc & ", " & nieuwOnderdeel.PartCalc)
- 'Opslaan van gegenereerde onderdeel door eerst het origineel op te vragen en bepaalde velden aan te passen en dan te inserten
- Public Sub opslaanGegenereerdeOnderdelen(origineelOnderdeel As ArdisData, nieuwOnderdeel As ArdisData, nieuwOnderdeelNaam As String)
- LogBestandTextMapper.writeToFile("Cache", "Opslaan van gegenereerde onderdeel aan de hand van oud bestaand onderdeel, barcode bestaand onderdeel, barcode nieuw onderdeel: " & origineelOnderdeel.PartCalc & ", " & nieuwOnderdeel.PartCalc)
+ Dim query As String = "Insert into APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem (BatchID, DossierCode, DueOut, IsRework, Kar, MachineID, Onderdeel, PartijID, ProductID, SequentieNummer, StapNummer, TijdstipCreatie, TijdstipProductie, ToeleveringID, VerwerkingID) "
+ query &= "select top 1 BatchID, DossierCode, DueOut, ?, Kar, MachineID, ?, PartijID, ProductID, SequentieNummer, ?, ?, ?, ToeleveringID, ? from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem where VerwerkingID=?"
+ Try
+ Dim addCommand As New OdbcCommand
+ addCommand.CommandText = query
+ addCommand.Connection = _sqlConnection
- Dim query As String = "Insert into APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem (BatchID, DossierCode, DueOut, IsRework, Kar, MachineID, Onderdeel, PartijID, ProductID, SequentieNummer, StapNummer, TijdstipCreatie, TijdstipProductie, ToeleveringID, VerwerkingID) "
- query &= "select top 1 BatchID, DossierCode, DueOut, ?, Kar, MachineID, ?, PartijID, ProductID, SequentieNummer, ?, ?, ?, ToeleveringID, ? from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem where VerwerkingID=?"
- Try
- Dim addCommand As New OdbcCommand
- addCommand.CommandText = query
- addCommand.Connection = SQLConnection
+ addCommand.Parameters.AddWithValue("@isReworkNieuw", OdbcType.VarChar).Value = False
+ addCommand.Parameters.AddWithValue("@OnderdeelNieuw", OdbcType.VarChar).Value = nieuwOnderdeelNaam
+ addCommand.Parameters.AddWithValue("@StapNummerNieuw", OdbcType.VarChar).Value = 0
+ addCommand.Parameters.AddWithValue("@TijdstipCreatieNieuw", OdbcType.VarChar).Value = Now.ToString("yyyy-MM-dd HH:mm:ss")
+ addCommand.Parameters.AddWithValue("@TijdstipProductieNieuw", OdbcType.VarChar).Value = Now.ToString("yyyy-MM-dd HH:mm:ss")
+ addCommand.Parameters.AddWithValue("@VerwerkingIDNieuw", OdbcType.VarChar).Value = nieuwOnderdeel.PartCalc
+ addCommand.Parameters.AddWithValue("@VerwerkingIDOrigineel", OdbcType.VarChar).Value = origineelOnderdeel.PartCalc
- addCommand.Parameters.AddWithValue("@isReworkNieuw", OdbcType.VarChar).Value = False
- addCommand.Parameters.AddWithValue("@OnderdeelNieuw", OdbcType.VarChar).Value = nieuwOnderdeelNaam
- addCommand.Parameters.AddWithValue("@StapNummerNieuw", OdbcType.VarChar).Value = 0
- addCommand.Parameters.AddWithValue("@TijdstipCreatieNieuw", OdbcType.VarChar).Value = Now.ToString("yyyy-MM-dd HH:mm:ss")
- addCommand.Parameters.AddWithValue("@TijdstipProductieNieuw", OdbcType.VarChar).Value = Now.ToString("yyyy-MM-dd HH:mm:ss")
- addCommand.Parameters.AddWithValue("@VerwerkingIDNieuw", OdbcType.VarChar).Value = nieuwOnderdeel.PartCalc
- addCommand.Parameters.AddWithValue("@VerwerkingIDOrigineel", OdbcType.VarChar).Value = origineelOnderdeel.PartCalc
+ ConnectToCache()
+ addCommand.ExecuteNonQuery()
- connectToCache()
- addCommand.ExecuteNonQuery()
+ Catch ex As Exception
+ Throw New Exception("Er is een fout opgetreden bij het opslaan van de gegenereerde onderdelen in de caché databank" & vbNewLine & ex.Message)
+ End Try
+ LogBestandTextMapper.writeToFile("Cache", "Opslaan van gegenereerde onderdeel aan de hand van oud bestaand onderdeel, barcode bestaand onderdeel, barcode nieuw onderdeel: " & origineelOnderdeel.PartCalc & ", " & nieuwOnderdeel.PartCalc, True)
+ End Sub
- Catch ex As Exception
- Throw New Exception("Er is een fout opgetreden bij het opslaan van de gegenereerde onderdelen in de caché databank" & vbNewLine & ex.Message)
- End Try
- LogBestandTextMapper.writeToFile("Cache", "Opslaan van gegenereerde onderdeel aan de hand van oud bestaand onderdeel, barcode bestaand onderdeel, barcode nieuw onderdeel: " & origineelOnderdeel.PartCalc & ", " & nieuwOnderdeel.PartCalc, True)
- End Sub
+ 'Opvragen gegevens met barcodes voor voorraad aanvulling
+ Private Function geefDataReader(barcodes As List(Of String)) As OdbcDataReader
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met barcodes: " & String.Join(", ", barcodes.ToArray()))
- 'Opvragen gegevens met barcodes voor voorraad aanvulling
- Private Function geefDataReader(barcodes As List(Of String)) As OdbcDataReader
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met barcodes: " & String.Join(", ", barcodes.ToArray()))
+ If barcodes Is Nothing OrElse barcodes.Count <= 1 Then
+ Throw New Exception("De lijst met barcodes om de OdbcDataReader op te vragen mag niet leeg zijn (minstens 2 elementen)")
+ End If
- If barcodes Is Nothing OrElse barcodes.Count <= 1 Then
- Throw New Exception("De lijst met barcodes om de OdbcDataReader op te vragen mag niet leeg zijn (minstens 2 elementen)")
- End If
+ Try
+ Dim builder As New StringBuilder
+ builder.Append("'").Append(barcodes.Item(0)).Append("'")
+ 'list omzetten in juiste formaat voor query
+ For Each barcode As String In barcodes.GetRange(1, barcodes.Count - 1)
+ builder.Append(", '").Append(barcode).Append("'")
+ Next
- Try
- Dim builder As New StringBuilder
- builder.Append("'").Append(barcodes.Item(0)).Append("'")
- 'list omzetten in juiste formaat voor query
- For Each barcode As String In barcodes.GetRange(1, barcodes.Count - 1)
- builder.Append(", '").Append(barcode).Append("'")
- Next
+ Dim query As String = "Select BatchID, ToeleveringID, Klant.naam, log.dossiercode, Kar, log.VerwerkingID, Onderdeel, max(StapNummer) as Status, sum(IsRework) as Rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) "
+ query &= "where log.VerwerkingID in (" & builder.ToString & ")"
+ 'query &= "where log.VerwerkingID in (" & "'RKV01990US02363D0', 'RKV01990US02363D1'" & ")"
+ query &= " group by BatchID, ToeleveringID,Klant.naam,log.VerwerkingID, log.dossiercode,Onderdeel, Kar order by BatchID, ToeleveringID, Kar"
- Dim query As String = "Select BatchID, ToeleveringID, Klant.naam, log.dossiercode, Kar, log.VerwerkingID, Onderdeel, max(StapNummer) as Status, sum(IsRework) as Rework from APPS_Halux_Opvolging_ProductieStap_TAOR_dto.ProductieStapLogItem log join derde_klant.klant on klant.ID=$Piece(log.PartijID,'||',2) "
- query &= "where log.VerwerkingID in (" & builder.ToString & ")"
- 'query &= "where log.VerwerkingID in (" & "'RKV01990US02363D0', 'RKV01990US02363D1'" & ")"
- query &= " group by BatchID, ToeleveringID,Klant.naam,log.VerwerkingID, log.dossiercode,Onderdeel, Kar order by BatchID, ToeleveringID, Kar"
+ ExecuteIntoDataReader(query)
+ Catch ex As Exception
+ Throw New Exception("Fout bij opvragen van OdbcDataReader met barcodes: " & String.Join(", ", barcodes.ToArray()) & vbNewLine & ex.Message)
+ End Try
+ LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met barcodes: " & String.Join(", ", barcodes.ToArray()), True)
+ Return dr
+ End Function
- executeIntoDataReader(query)
- Catch ex As Exception
- Throw New Exception("Fout bij opvragen van OdbcDataReader met barcodes: " & String.Join(", ", barcodes.ToArray()) & vbNewLine & ex.Message)
- End Try
- LogBestandTextMapper.writeToFile("Caché", "Opvragen van OdbcDataReader met barcodes: " & String.Join(", ", barcodes.ToArray()), True)
- Return dr
- End Function
-
-End Module
+ End Module
\ No newline at end of file
Index: TAOR-rework-bugfixing/TAOR rework/formulieren/FormSelectID.vb
===================================================================
diff -u -r1596 -r1603
--- TAOR-rework-bugfixing/TAOR rework/formulieren/FormSelectID.vb (.../FormSelectID.vb) (revision 1596)
+++ TAOR-rework-bugfixing/TAOR rework/formulieren/FormSelectID.vb (.../FormSelectID.vb) (revision 1603)
@@ -105,24 +105,28 @@
Try
Dim gevondenCache As Boolean = False
Dim gevondenArdis As Boolean = False
- Dim dataReader As Object
- 'ODBC dataReader
- dataReader = CacheMapper.geefdatareader(tabel, input)
- If DirectCast(dataReader, OdbcDataReader).HasRows Then
+ 'Data table opvragen uit Caché.
+ Dim dataTable = CacheMapper.GeefDataTable(tabel, input)
+
+ If (dataTable IsNot Nothing) AndAlso (dataTable.rows.Count > 0) Then
+ 'Er zijn rijen aanwezig.
gevondenCache = True
ElseIf tabel = Kolommen.barcode Then
- 'datareader opvragen
- dataReader = ArdisMapper.geefDataReader(input)
- If DirectCast(dataReader, SqlDataReader).HasRows Then
- gevondenArdis = True
- End If
+ 'Todo ardis ook updaten en datatable laten retourneren
+ 'Er zijn geen rijen aanwezig en het type is een barcode.
+ 'Data table opvragen opvragen
+ 'dataTable = ArdisMapper.geefDataReader(input)
+ 'If DirectCast(dataTable, SqlDataReader).HasRows Then
+ ' gevondenArdis = True
+ 'End If
End If
+
If gevondenCache Then
'formgrid laden met ODBC dataReader
- FormController.getInstance.laadFormGrid(Me, tabel, input, dataReader)
+ FormController.getInstance.laadFormGrid(Me, tabel, input, dataTable)
ElseIf gevondenArdis Then
- FormController.getInstance.laadFormGrid(Me, Kolommen.barcodeArdis, input, dataReader)
+ FormController.getInstance.laadFormGrid(Me, Kolommen.barcodeArdis, input, dataTable)
Else
'datareader bestaat niet
lblFoutmeldingOpzoeken.Text = "Er zijn geen resultaten"