Index: TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisData.vb
===================================================================
diff -u -r1732 -r1738
--- TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisData.vb (.../ArdisData.vb) (revision 1732)
+++ TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisData.vb (.../ArdisData.vb) (revision 1738)
@@ -1,4 +1,5 @@
Imports System.Diagnostics.Eventing.Reader
+Imports System.Text.RegularExpressions
Public Class ArdisData
Public PartId As String
@@ -38,6 +39,8 @@
Property KamerfreesSlotNr As String
Property Bestandsnaam As String 'Naam van het bestand waar de Ardis data zich in bevindt voor special laden.
+ Property AndereZijkantVanPaar As ArdisData
+
Public Function ShallowCopy() As ArdisData
Return DirectCast(Me.MemberwiseClone(), ArdisData)
End Function
@@ -185,13 +188,12 @@
''' Nieuwe data voor een linkse rug.
'''
'''
- '''
'''
- Public Sub SifonLadeNieuweRug1Data(positieSifon As Double, oorspronkelijkeLengteRug As String, isVerlaagdeRug As Boolean)
+ Public Sub SifonLadeNieuweRug1Data(positieSifon As Double, isVerlaagdeRug As Boolean, partExt01Zijkant As String)
'PartL updaten.
Dim nieuwePartL = positieSifon - 23.5
'Ticketlijnen en PartL updaten.
- SifonladeUpdatePartLEnEtiketlijnen(oorspronkelijkeLengteRug, nieuwePartL, isVerlaagdeRug, RugStuk.Links)
+ SifonladeUpdatePartLEnEtiketlijnen(nieuwePartL, isVerlaagdeRug, RugStuk.Links, partExt01Zijkant)
'Kleur aanpassen.
PasKleurAanSpecial()
End Sub
@@ -201,13 +203,12 @@
''' Nieuwe data voor een rechtse rug van een enkele sifonlade.
'''
'''
- '''
'''
- Public Sub SifonLadeNieuweRug2Data(rest As Double, oorspronkelijkeLengteRug As String, isVerlaagdeRug As Boolean)
+ Public Sub SifonLadeNieuweRug2Data(rest As Double, isVerlaagdeRug As Boolean, partExt01Zijkant As String)
'PartL berekenen.
Dim nieuwePartL = rest - 23.5
'Ticketlijnen en PartL updaten.
- SifonladeUpdatePartLEnEtiketlijnen(oorspronkelijkeLengteRug, nieuwePartL, isVerlaagdeRug, RugStuk.Rechts)
+ SifonladeUpdatePartLEnEtiketlijnen(nieuwePartL, isVerlaagdeRug, RugStuk.Rechts, partExt01Zijkant)
'Kleur aanpassen.
PasKleurAanSpecial()
End Sub
@@ -216,30 +217,37 @@
''' Nieuwe data voor de middelste rug.
'''
'''
- '''
- Public Sub SifonLadeNieuweRugMData(breedteMiddenstuk As Double, oorspronkelijkeLengteRug As String)
+ Public Sub SifonLadeNieuweRugMData(breedteMiddenstuk As Double, partExt01Zijkant As String)
'PartL berekenen.
Dim nieuwePartL = breedteMiddenstuk - 15
'Zet type op Valligne.
PartCalc = PartCalc.Substring(0, 2) & "A" & PartCalc.Substring(3)
'Ticketlijnen updaten.
'Ticketlijnen en PartL updaten.
- SifonladeUpdatePartLEnEtiketlijnen(oorspronkelijkeLengteRug, nieuwePartL, False, RugStuk.Midden)
+ SifonladeUpdatePartLEnEtiketlijnen(nieuwePartL, False, RugStuk.Midden, partExt01Zijkant)
'Kleur aanpassen.
PasKleurAanSpecial()
End Sub
'''
''' PartExt01 aanpassen.
'''
- '''
- Private Sub SifonLadeUpdateEtiketLijn1Rug(oorspronkelijkeLengteRug As String)
+ Private Sub SifonLadeUpdateEtiketLijn1Rug(partExt01Zijkant As String)
Dim afdekKapjesEnSy As String = PartExt01.Substring(PartExt01.LastIndexOf("/"))
Dim tempPartExt01 As String = PartExt01.Substring(0, PartExt01.LastIndexOf("/"))
afdekKapjesEnSy = tempPartExt01.Substring(tempPartExt01.LastIndexOf("/")) & afdekKapjesEnSy
tempPartExt01 = tempPartExt01.Substring(0, tempPartExt01.LastIndexOf("/"))
afdekKapjesEnSy = tempPartExt01.Substring(tempPartExt01.LastIndexOf("/")) & afdekKapjesEnSy
- PartExt01 = PartRef.Substring(0, 3) & "/" & PartExt07 & "-" & PartExt07 & "/" & CStr(CDbl(oorspronkelijkeLengteRug.Replace(".", ",")) + 5).Replace(",", ".") & "x" & PartW & "/" & PartRemark & afdekKapjesEnSy
+
+ Dim r = New Regex("\/\w*-(\w*)-\w*\/", RegexOptions.IgnoreCase)
+ Dim m as Match= r.Match(partExt01Zijkant)
+ If Not m.Success Then
+ Throw New Exception("Kon materiaal voor etiketlijn 1 van een rug niet updaten, de juiste kleur is niet aanwezig in de partExt01 van de zijkant.")
+ End If
+
+ dim materiaalZijkant = m.Groups(1).Value
+
+ PartExt01 = $"{PartRef.Substring(0, 3)}/{PartExt07}-{materiaalZijkant}/{PartL}x{PartW}/{PartRemark}{afdekKapjesEnSy}"
End Sub
Private Enum RugStuk
@@ -253,13 +261,12 @@
''' Anders als PartL kleiner dan minimum lengte rug -> minimum lengte rug.
''' Als verlaagde rug en te kort dan PartL - 5.5
'''
- '''
'''
'''
- Private Sub SifonladeUpdatePartLEnEtiketlijnen(oorspronkelijkeLengteRug As String, nieuwePartL As Double, isVerlaagdeRug As Boolean, rugstuk As RugStuk)
+ Private Sub SifonladeUpdatePartLEnEtiketlijnen(nieuwePartL As Double, isVerlaagdeRug As Boolean, rugstuk As RugStuk, partExt01Zijkant As String)
Dim isVergrootteBaliko As Boolean = False
Dim isVergrootteVallinge As Boolean = False
- dim isteKorteRug as Boolean = false
+ Dim isteKorteRug As Boolean = False
'Controleren of het een verlaagde rug is.
If isVerlaagdeRug Then
@@ -305,7 +312,7 @@
PartL = Configs.SifonLadeGeefMinimumLengteRug()
End If
- SifonLadeUpdateEtiketLijn1Rug(oorspronkelijkeLengteRug)
+ SifonLadeUpdateEtiketLijn1Rug(partExt01Zijkant)
'Bij etiketlijn 2 'kar' vervangen door 'sifon'.
PartExt02 = PartExt02.Replace("KAR", "SIFON")
@@ -357,7 +364,7 @@
If isTeKorteRug Then
'Te korte rug.
lengte = nieuwePartL
- elseIf Not ((Not isVerlaagdeRug) And isVergrootteVallinge) Then
+ ElseIf Not ((Not isVerlaagdeRug) And isVergrootteVallinge) Then
'Normaal.
lengte = CDbl(PartL.Replace(".", ",")) - 5
Else
@@ -392,6 +399,9 @@
'Toewijzen aan variabele.
PartCalc = nieuweBarcode
+
+ 'PartExt04 aanpassen met nieuwe barcode.
+ PartExt04 = PartCalc & PartExt04.Substring(PartExt04.IndexOf("/"))
End Sub
Public Function sifonLadeGeefOorspronkelijkeLengteRug()