Index: TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisTextMapper.vb =================================================================== diff -u -r1636 -r1637 --- TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisTextMapper.vb (.../ArdisTextMapper.vb) (revision 1636) +++ TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisTextMapper.vb (.../ArdisTextMapper.vb) (revision 1637) @@ -214,7 +214,7 @@ 'kijken of de lade de dossiercode bevat If isGeldig Then 'kijken wat voor rol de lijn heeft (aka onderdeel: zijkantplaat, rug,...) - ardisData = maakArdisData(velden) + ardisData = MaakArdisData(velden) Select Case ardisData.PartRef Case "ZijkantPlaat" nieuweSpecialLaden.voegZijkantToe(ardisData) @@ -260,48 +260,52 @@ End Function Private Function OphalenArdisDatasMetCode(code As String, isLadeCode As Boolean) As List(Of ArdisData) - 'Lijst initialiseren. - Dim ardisDatas As New List(Of ArdisData) - 'Alle bestanden overlopen in de directory met bestanden. - For Each tekstBestandPath As String In Directory.GetFiles(Configs.geefPathArdisSpecialFolder) - 'Alle tekst uit een bestand lezen en spaties vooraan en achteraan verwijderen. - Dim allText As String = My.Computer.FileSystem.ReadAllText(tekstBestandPath).Trim() - 'De verschillende lijnen omzetten in een array. - Dim lijnen As String() = allText.Split(New String() {Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries) - 'De lijnen overlopen. - For Each lijn As String In lijnen - 'Controleren of een lijn de juiste code bevat. Dit gebeurt hier, omdat de conversie naar Ardis data teveel tijd zou kosten. + Try + 'Lijst initialiseren. + Dim ardisDatas As New List(Of ArdisData) + 'Alle bestanden overlopen in de directory met bestanden. + For Each tekstBestandPath As String In Directory.GetFiles(Configs.geefPathArdisSpecialFolder) + 'Alle tekst uit een bestand lezen en spaties vooraan en achteraan verwijderen. + Dim allText As String = My.Computer.FileSystem.ReadAllText(tekstBestandPath).Trim() + 'De verschillende lijnen omzetten in een array. + Dim lijnen As String() = allText.Split(New String() {Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries) + 'De lijnen overlopen. + For Each lijn As String In lijnen + 'Controleren of een lijn de juiste code bevat. Dit gebeurt hier, omdat de conversie naar Ardis data teveel tijd zou kosten. - 'Bijhouden of lijn de juiste code bevat. - Dim bevatCode As Boolean = False + 'Bijhouden of lijn de juiste code bevat. + Dim bevatCode As Boolean = False - 'Alle velden scheiden. - Dim velden = lijn.Split(New String() {vbTab}, StringSplitOptions.None) + 'Alle velden scheiden. + Dim velden = lijn.Split(New String() {vbTab}, StringSplitOptions.None) - 'Controleren of de lijn wel lang genoeg is. - If velden.Count > 19 Then - 'Genoeg lijnen, controleren welk type code is gebruikt, dossier (lade) code of batchnummer. - If isLadeCode Then - 'Dossier (lade) code controleren. - bevatCode = velden(5).Equals(code) 'PartRemark - Else - 'Batch nummer controleren. De kar bevat dit nummer. - bevatCode = velden(18).Contains(code) 'PartGroup + 'Controleren of de lijn wel lang genoeg is. + If velden.Count > 19 Then + 'Genoeg lijnen, controleren welk type code is gebruikt, dossier (lade) code of batchnummer. + If isLadeCode Then + 'Dossier (lade) code controleren. + bevatCode = velden(5).Equals(code) 'PartRemark + Else + 'Batch nummer controleren. De kar bevat dit nummer. + bevatCode = velden(18).Contains(code) 'PartGroup + End If End If - End If - 'Als de lijn de correcte code bevat wordt het geconverteerd naar Ardis data en toegevoegd aan de lijst. - If bevatCode Then - 'Aanmaken ardis data. - Dim ardisData As ArdisData = maakArdisData(velden) - 'Toevoegen bestandsnaam. - ardisData.Bestandsnaam = tekstBestandPath.Substring(tekstBestandPath.LastIndexOf("\", StringComparison.Ordinal) + 1) - 'Toevoegen aan lijst. - ardisDatas.Add(ardisData) - End If + 'Als de lijn de correcte code bevat wordt het geconverteerd naar Ardis data en toegevoegd aan de lijst. + If bevatCode Then + 'Aanmaken ardis data. + Dim ardisData As ArdisData = MaakArdisData(velden) + 'Toevoegen bestandsnaam. + ardisData.Bestandsnaam = tekstBestandPath.Substring(tekstBestandPath.LastIndexOf("\", StringComparison.Ordinal) + 1) + 'Toevoegen aan lijst. + ardisDatas.Add(ardisData) + End If + Next Next - Next - Return ardisDatas + Return ardisDatas + Catch ex As Exception + throw New Exception($"Kon Ardis data niet ophalen uit tekstbestand. {vbNewLine}{ex.Message}") + End Try End Function '''