Public Class ArdisData
Public PartId As String
Public OrderId As String
Public PartRef As String
Public PartQty As String
Public PartMat As String
Public PartL As String
Public PartW As String
Public PartCalc As String
Public PartRemark As String
Public PartRemark2 As String
Public PartRemark3 As String
Public PartGroup As String
Public PartLevel As String
Public PartExt01 As String
Public PartExt02 As String
Public PartExt03 As String
Public PartExt04 As String
Public PartExt05 As String
Public PartExt06 As String
Public PartExt07 As String
Public PartExt08 As String
Public PartExt09 As String
Public PartD As String
Public PartProd As String
Public GroupCode As String
Public Status As String
Public Inserted As String
Public LastChanged As String
Public PartQtyCut As String
Public PartExt10 As String
Public PartExt11 As String
Property Label As String
Property KamerfreesTrayId As String
Property KamerfreesSlotNr As String
Property Bestandsnaam As String 'Naam van het bestand waar de Ardis data zich in bevindt voor special laden.
Public Function ShallowCopy() As ArdisData
Return DirectCast(Me.MemberwiseClone(), ArdisData)
End Function
Public Overrides Function ToString() As String
Return PartCalc
End Function
Public Sub updateKommasNaarPunten()
PartL = PartL.Replace(",", ".") 'lengte
PartW = PartW.Replace(",", ".") 'breedte
PartExt06 = PartExt06.Replace(",", ".") 'dikte
End Sub
Public Sub aanpassenDataRework()
PartProd = 0
Status = 0
PartRemark3 = "Rework"
PartExt04 = Mid(PartExt04, 1, 11) & "/***REWORK***"
End Sub
Public Function geefLinksOfRechts() As String
Return PartCalc.Substring(5).Substring(0, 1).ToUpper()
End Function
Public Function geefColorEnkel(andereKant As ArdisData) As String
Return GeefKleurBinnen() & "-" & andereKant.GeefKleurBinnen
End Function
Public Function geefColorDubbel(andereKant As ArdisData) As String
Return GeefKleurBinnen() & "-" & andereKant.GeefKleurBinnen & "-" & GeefKleurBinnen() & "-" & andereKant.GeefKleurBinnen
End Function
Public Function GeefBatch() As String
Return PartGroup.Substring(0, PartGroup.Length - 3)
End Function
Public Function GeefKleurBinnen() As String
Return PartExt07
End Function
'Specials
'''
''' PartExt07 aanpassen met huidig materiaal.
'''
public Sub PasKleurAanSpecial()
Dim firstIndex As Integer = PartMat.IndexOf(".", StringComparison.Ordinal) + 1
Dim lastIndex As Integer = PartMat.LastIndexOf(".", StringComparison.Ordinal)
PartExt07 = PartMat.Substring(firstIndex, lastIndex - firstIndex)
End Sub
'''
''' Opvragen of een zijkant is gegenereerd in een sifonlade. Dus of het een binnenzijkantje is.
'''
'''
Function IsSpecialGegenereerd() As Boolean
Return PartExt09.ToUpper.Equals("A") Or PartExt09.ToUpper.Equals("B")
End Function
#Region "sifon laden"
'''
''' Updaten etiketlijn 2 en 4.
'''
Public Sub SifonLadeUpdateEtiketLijnen()
'Bij etiketlijn 2 'kar' vervangen door sifon
PartExt02 = PartExt02.Replace("KAR", "SIFON")
'Etiketlijn 4 aanpassen.
PartExt04 = PartCalc & "/B/" & CStr(CDbl(PartL.Replace(".", ",")) - 5).Replace(",", ".") & "xH:" & CStr(CDbl(PartW.Replace(".", ",")) - 5).Replace(",", ".")
End Sub
'''
''' Nieuw zijkantplaatje aanmaken met bepaalde data.
''' Aanpassingen aan: PartL, PartW, PartMat, PartExt09, Barcode en etiketlijnen 2 en 4.
'''
'''
'''
'''
'''
'''
Public Sub SifonLadeNieuweZijkantData(lengte As String, hoogteRug As String, materiaalBodem As String, barcodeRug As String, isLinksPlaatje As Boolean)
'Nieuwe barcode geven.
'Kijken of het een linkse of rechtse plaat is
Dim typePlaat As String = PartCalc.Substring(5, 1)
'De barcode opbouwen met eerste teken uit originele barcode.
Dim nieuweBarcode As String = PartCalc.Substring(0, 1)
'Tweede teken is tweede teken van barcode rug.
nieuweBarcode &= barcodeRug.Substring(1, 1)
'Derde teken is opnieuw van originele barcode.
nieuweBarcode &= PartCalc.Substring(2, 1)
'Teken daarna is de STEMAS B code, opvragen en toevoegen.
nieuweBarcode &= Configs.geefCodeStemasB(lengte)
'Speciale letter toevoegen, afhankelijk of het links of rechts is.
If typePlaat.ToUpper.Equals("L") Or typePlaat.ToUpper.Equals("C") Then
nieuweBarcode &= "E"
ElseIf typePlaat.ToUpper.Equals("R") Or typePlaat.ToUpper.Equals("D") Then
nieuweBarcode &= "F"
Else
Throw New Exception($"Type {typePlaat} is niet gekend in de barcode voor nieuwe zijkant data")
End If
'De barcode vullen met nullen en de uniek nummer dat wordt opgehaald.
Dim nummer As String = CacheMapper.GeefBarcodeNummer
Dim aantalNullen As Integer = PartCalc.Length - nieuweBarcode.Length - CStr(nummer).Length
For teller = 0 To aantalNullen - 2
nummer &= "0"
Next
'De letter 'S' in het midden toevoegen.
nieuweBarcode &= nummer.Insert(2, "S")
'Toewijzen aan PartCalc.
PartCalc = nieuweBarcode
'PartL aanpassen.
PartL = lengte + 5
'PartW (hoogte) aanpassen.
PartW = CStr(CDbl(hoogteRug.Replace(".", ",")) + 10.0).Replace(",", ".")
'Materiaal aanpassen.
PartMat = materiaalBodem
'PartExt09 updaten afhankelijk van links or rechts.
If isLinksPlaatje Then
'Is links.
PartExt09 = "A"
Else
'Is rechts
PartExt09 = "B"
End If
'Kleur aanpassen.
PasKleurAanSpecial
'Updaten etiket.
SifonLadeUpdateEtiketLijnen()
End Sub
'''
''' Kijken of de rug verlaagd is, aan de hand van het eerste tekens van de PartCalc.
'''
''' PartCalc van een originele zijkant
''' True als de sifonlade verlaagd is
Public Function SifonLadeIsVerlaagdeRug(partCalcOrigineleZijkant As String) As Boolean
Return Not PartCalc.Substring(1, 1).Equals(partCalcOrigineleZijkant.Substring(1, 1))
End Function
'''
''' Nieuwe data voor een linkse rug.
'''
'''
'''
'''
Public Sub SifonLadeNieuweRug1Data(positieSifon As Double, oorspronkelijkeLengteRug As String, isVerlaagdeRug As Boolean)
'PartL updaten.
PartL = positieSifon - 7.5 - 21 + 5.5 + 5
'Ticketlijnen updaten.
SifonLadeUpdateEtiketLijnen()
SifonLadeUpdateEtiketLijn1Rug(oorspronkelijkeLengteRug)
'Barcode updaten.
SifonLadeUpdateBarcodeRug(isVerlaagdeRug, True)
'Kleur aanpassen.
PasKleurAanSpecial
End Sub
'''
''' Nieuwe data voor een rechtse rug.
'''
'''
'''
'''
'''
'''
'''
Public Sub SifonLadeNieuweRug2Data(lw As Double, breedteUitsparingSifon As Double, partLRug1 As Double, oorspronkelijkeLengteRug As String, partLOrigineleRug As String, isVerlaagdeRug As Boolean)
'PartL berekenen.
PartL = (lw - 31) - (breedteUitsparingSifon - 1) - (partLRug1 - 5) + 5
'Controleren of de PartL minder is dan de minimum lengte van de rug.
If PartL < Configs.SifonLadeGeefMinimumLengteRug() Then
'Te korte rug.
'PartL overschrijven met minimum lengte rug.
PartL = Configs.SifonLadeGeefMinimumLengteRug()
'Etiketlijnen zelf aanpassen.
'Bij etiketlijn 2 'kar' vervangen door 'sifon'.
PartExt02 = PartExt02.Replace("KAR", "SIFON")
'Etiketlijn 4 aanpassen.
PartExt04 = $"{PartExt04.Substring(0, PartExt04.IndexOf("/"))}/*CUT-{CStr(CDbl(partLOrigineleRug.Replace(".", ",") + 5)).Replace(",", ".")}*"
Else
'Controleren of het een verlaagde rug is.
If isVerlaagdeRug Then
'Verlaagde rug, PartL aanpassen.
PartL = CStr(CDbl(PartL.Replace(".", ",")) - 5.5).Replace(",", ".")
End If
'Etiketlijnen updaten.
SifonLadeUpdateEtiketLijnen()
SifonLadeUpdateEtiketLijn1Rug(oorspronkelijkeLengteRug)
End If
'Barcode updaten.
SifonLadeUpdateBarcodeRug(isVerlaagdeRug, False)
'Kleur aanpassen.
PasKleurAanSpecial
End Sub
'''
''' PartExt01 aanpassen.
'''
'''
Private Sub SifonLadeUpdateEtiketLijn1Rug(oorspronkelijkeLengteRug 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
End Sub
'''
''' Barcode voor een rug opbouwen.
'''
'''
'''
Private Sub SifonLadeUpdateBarcodeRug(isVerlaagdeRug As Boolean, isLinkseRug As Boolean)
'Nieuwe barcode
Dim nieuweBarcode As String
If Not isVerlaagdeRug Then
'Geen verlaagde rug.
nieuweBarcode = PartCalc.Substring(0, 2)
If isLinkseRug Then
nieuweBarcode &= "L"
Else
nieuweBarcode &= "R"
End If
Else
'Is verlaagde rug, juiste letter toevoegen.
nieuweBarcode = PartCalc.Substring(0, 2)
If isLinkseRug Then
nieuweBarcode &= "C"
Else
nieuweBarcode &= "D"
End If
End If
'De lengte in de barcode steken.
Dim lengte As Double
If Not isVerlaagdeRug Then
lengte = CDbl(PartL.Replace(".", ",")) - 5
Else
'Verlaagde rug.
lengte = CDbl(PartL.Replace(".", ",")) - 5 - 5.5
End If
Dim getallenStuk As String = ""
If lengte < 1000 Then
getallenStuk &= 0
End If
'De niet kommagetallen toevoegen.
getallenStuk &= Math.Floor(lengte)
'Deel voor de komma eruit halen.
getallenStuk &= CStr(lengte Mod 1).Replace("0,", String.Empty)
'Getal gedeelte toevoegen.
nieuweBarcode &= getallenStuk
'Vaste waarde toevoegen.
nieuweBarcode &= "US"
'De opgevraagde nummer vullen met nullen en de unieke nummer die we ophalen.
Dim nummer As Integer = CacheMapper.GeefBarcodeNummer
Dim aantalNullen As Integer = PartCalc.Length - nieuweBarcode.Length - CStr(nummer).Length - 2 'De twee wijst op de vaste waarden die we nog gaan toevoegen.
For teller = 0 To aantalNullen - 1
nieuweBarcode &= "0"
Next
nieuweBarcode &= nummer
'Vaste waarde toevoegen.
nieuweBarcode &= "D0"
'Toewijzen aan variabele.
PartCalc = nieuweBarcode
End Sub
Public Function sifonLadeGeefOorspronkelijkeLengteRug()
Dim getal As Double
Dim lengteInBarcode = PartCalc.Substring(3, 5)
Try
getal = PartCalc.Substring(3, 5)
Catch ex As InvalidCastException
Throw New Exception($"Kan oorspronkelijke lengte rug niet uit de barcode '{PartCalc}' halen, huidige resultaat lengte: '{lengteInBarcode}'")
End Try
getal /= 10
Return getal
End Function
Function SifonLadeGeefLWBodem() As String
Return PartL - 5 + 31
End Function
Public Shared Function sifonLadeGeefBreedte(lw As Double) As Double
Return lw - 31
End Function
Public Shared Function sifonLadeGeefDiepte(nlLade As String) As String
Return nlLade - 20
End Function
Public Shared Function sifonLadeGeefDiepteSifonUitsparing(lengte As String) As String
Return CDbl(lengte) - 8
End Function
Public Function sifonLadeGeefOnderdeelLetter() As String
Return PartCalc.Substring(5, 1)
End Function
Public Shared Function sifonLadeGeefPositieUitsparing(positionSifon As Double)
Return positionSifon + 5 - 21 + 5.5 - 13
End Function
#End Region
#Region "spoelbak lade"
Function spoelbakLadeGeefLWBodem() As String
Return PartL - 5 + 31
End Function
Public Shared Function spoelbakgeefNLSpoelbakUitsparing(nlLade As Double)
Return nlLade - 100
End Function
Public Shared Function spoelbakgeefDiepteUitsparing(nlSpoelbakUitsparing As Double)
Return nlSpoelbakUitsparing - 20 - 7
End Function
Public Shared Function spoelbakLadeGeefDiepte(nlLade As String) As Double
Return nlLade - 20
End Function
Public Shared Function spoelbakLadeGeefBreedte(lw As String) As Double
Return lw - 31
End Function
Public Shared Function spoelbakLadegeefNuttigeRuimteZijvakken(lw As Double, breedteUitsparing As Double)
Return ((lw - 42) - breedteUitsparing) / 2
End Function
Public Shared Function spoelbakLadegeefInitiëlePositieUitsparing(nuttigeRuimteZijvakken As Double) As Double
Return nuttigeRuimteZijvakken + 10.5
End Function
Public Shared Function spoelbakLadegeefRestBreedte(nuttigeRuimteZijvakken As Double, positieUitsparing As Double) As Double
Return nuttigeRuimteZijvakken * 2 - (positieUitsparing - 10.5) + 10.5
End Function
Public Sub spoelbakLadeUpdateEtiketLijnen()
'bij etiketlijn 1 'SP' van spoelbak toevoegen achteraan de lijn
PartExt01 &= "SP"
'bij etiketlijn 2 'kar' vervangen door sifon
PartExt02 = PartExt02.Replace("KAR", "SPOELBAK")
End Sub
Public Shared Function spoelbakLadeGeefLengteNieuweZijkantAfgewerkt(nominaleLengteNieuweZijkant As Double) As Double
Return nominaleLengteNieuweZijkant - 14 - 5
End Function
Public Sub spoelbakLadeNieuweZijkantData(lengte As String, lengteNieuweZijkantAfgewerkt As Double, hoogteRug As String, barcodeRug As String)
'lengte aanpassen
PartL = lengte + 8 + 5
'hoogte aanpassen
PartW = CStr(CDbl(hoogteRug.Replace(".", ",")) + 10.0).Replace(",", ".")
'nieuwe barcode geven
'kijken of het een linkse of rechtse plaat is
Dim typePlaat As String = PartCalc.Substring(5, 1)
'de barcode al vullen met de eerste 3 letters uit de oude, als het een verlaagde rug is de letter uit de rug nemen
Dim nieuweBarcode As String = PartCalc.Substring(0, 1)
nieuweBarcode &= barcodeRug.Substring(1, 1)
nieuweBarcode &= "V"
'de STEMAS B code opvragen en toevoegen
nieuweBarcode &= Configs.spoelbakLadeGeefCodeStemasB(lengteNieuweZijkantAfgewerkt)
nieuweBarcode &= typePlaat
'de barcode vullen met nullen en de unieke nummer die we ophalen
Dim nummer As String = CacheMapper.GeefBarcodeNummer
Dim aantalNullen As Integer = PartCalc.Length - nieuweBarcode.Length - CStr(nummer).Length
For teller As Integer = 0 To aantalNullen - 2
nummer &= "0"
Next
'de letter S in het midden toevoegen
nummer = nummer.Insert(2, "S")
nieuweBarcode &= nummer
PartCalc = nieuweBarcode
End Sub
Public Sub spoelbakLadeStelLengteRugIn(nuttigeRuimteZijvakken As Double, vasteWaardeRugBerekening As Double)
PartL = (nuttigeRuimteZijvakken + 11) * 2 + vasteWaardeRugBerekening + 5
End Sub
Public Sub spoelbakLadeUpdateBarcodeRug()
'nieuwe barcode met vast gedeelte oude barcode
Dim nieuweBarcode As String = PartCalc.Substring(0, 2)
nieuweBarcode &= "V"
'de lengte in de barcode steken
Dim lengte As Double = PartL - 5
Dim getallenStuk As String = ""
If lengte < 1000 Then
getallenStuk &= 0
End If
'de niet kommagetallen toevoegen
getallenStuk &= Math.Floor(lengte)
getallenStuk &= CStr(lengte Mod 1).Replace("0,", "")
'getal gedeelte toevoegen
nieuweBarcode &= getallenStuk
'vaste waarde toevoegen
nieuweBarcode &= "US"
'de opgevraagde nummer vullen met nullen en de unieke nummer die we ophalen
Dim nummer As Integer = CacheMapper.GeefBarcodeNummer
Dim aantalNullen As Integer = PartCalc.Length - nieuweBarcode.Length - CStr(nummer).Length - 2 'de twee wijst op de vaste waarden die we nog gaan toevoegen
For teller As Integer = 0 To aantalNullen - 1
nieuweBarcode &= "0"
Next
nieuweBarcode &= nummer
'vaste waarde toevoegen
nieuweBarcode &= "D0"
PartCalc = nieuweBarcode
End Sub
#End Region
#Region "test lade"
Public Sub testLadeUpdateTrayEnSlotNummer(trayNummer As String, Optional slotNummer As String = "")
KamerfreesTrayId = trayNummer
KamerfreesSlotNr = slotNummer
End Sub
#End Region
#Region "special lade diepere zijkant"
Public Function geefBarcodeDeelDiepereZijkant() As String
Return PartCalc.Substring(3, 2)
End Function
Public Sub specialLadeDiepereZijkantUpdateZijkant(diepteVerschil As Integer, barcodeDeel As String)
PartL = (CInt(PartL.Replace(".", ",")) + diepteVerschil).ToString.Replace(",", ".")
Dim nieuweBarcode As String = PartCalc.Substring(0, 3)
nieuweBarcode &= barcodeDeel & PartCalc.Substring(5)
PartCalc = nieuweBarcode
End Sub
Public Sub specialLadeDiepereZijkantUpdateBodem(diepteVerschil As Integer)
PartW = (CInt(PartW.Replace(".", ",")) + diepteVerschil).ToString.Replace(",", ".")
'updaten het tweede deel afmetingen partext01
Dim nieuwePartExt01 As String = PartExt01
nieuwePartExt01 = nieuwePartExt01.Remove(nieuwePartExt01.LastIndexOf("/"))
nieuwePartExt01 = nieuwePartExt01.Remove(nieuwePartExt01.LastIndexOf("/"))
nieuwePartExt01 = nieuwePartExt01.Remove(nieuwePartExt01.LastIndexOf("/"))
nieuwePartExt01 = nieuwePartExt01.Remove(nieuwePartExt01.LastIndexOf("/"))
Dim waarde As String = nieuwePartExt01.Substring(nieuwePartExt01.LastIndexOf("x") + 1)
waarde = (CInt(waarde.Replace(".", ",")) + diepteVerschil).ToString.Replace(",", ".")
PartExt01 = PartExt01.Replace(nieuwePartExt01, nieuwePartExt01.Substring(0, nieuwePartExt01.LastIndexOf("x") + 1) & waarde)
'updaten tweede deel laatste afmetingen
Dim nieuwePartExt04 As String = PartExt04.Remove(PartExt04.IndexOf("xD:") + 3)
Dim waarde2 As String = PartExt04.Substring(PartExt04.IndexOf("xD:") + 3)
waarde2 = (CInt(waarde2.Replace(".", ",")) + diepteVerschil).ToString.Replace(",", ".")
nieuwePartExt04 &= waarde2
PartExt04 = nieuwePartExt04
End Sub
#End Region
#Region "special lade hogere zijkant"
Public Sub specialLadeHogereZijkantUpdateZijkant(hoogteLetter As String)
PartW = (Configs.geefNieuweHoogtesData(hoogteLetter)).ToString.Replace(",", ".")
Dim nieuweBarcode As String = PartCalc.Substring(0, 1)
nieuweBarcode &= hoogteLetter & PartCalc.Substring(3)
PartCalc = nieuweBarcode
End Sub
Public Sub specialLadeHogereZijkantUpdateRug(hoogteLetter As String)
Dim hoogte As String = (Configs.geefNieuweHoogtesData(hoogteLetter) - 10).ToString.Replace(",", ".")
PartW = hoogte
'updaten het tweede deel afmetingen partext01
Dim nieuwePartExt01 As String = PartExt01
nieuwePartExt01 = nieuwePartExt01.Remove(nieuwePartExt01.LastIndexOf("/"))
nieuwePartExt01 = nieuwePartExt01.Remove(nieuwePartExt01.LastIndexOf("/"))
nieuwePartExt01 = nieuwePartExt01.Remove(nieuwePartExt01.LastIndexOf("/"))
nieuwePartExt01 = nieuwePartExt01.Remove(nieuwePartExt01.LastIndexOf("/"))
Dim waarde As String = nieuwePartExt01.Substring(nieuwePartExt01.LastIndexOf("x") + 1)
PartExt01 = PartExt01.Replace(waarde, hoogte)
'updaten tweede deel laatste afmetingen
Dim nieuwePartExt04 As String = PartExt04.Remove(PartExt04.IndexOf("xH:") + 3)
nieuwePartExt04 &= hoogte
PartExt04 = nieuwePartExt04
End Sub
#End Region
#Region "special lade nieuwe kleur"
'te vervangen kleur opvragen
Public Function specialLadeNieuweKleurGeefTeVervangenKleur() As String
Dim kleur As String = PartMat.Remove(0, PartMat.IndexOf(".") + 1)
kleur = kleur.Remove(kleur.IndexOf("."))
Return kleur
End Function
'bodem heeft maar 1 kleur veld
Public Sub specialLadeNieuweKleurVervangBodemKleuren(teVervangenKleur As String, nieuweKleur As String, nieuweKleurData As String)
Dim gelukt As Boolean = specialLadeNieuweKleurUpdatePlaatmateriaalEnKleurEnDecor(teVervangenKleur, nieuweKleurData)
If gelukt Then
Dim nieuweEtiketlijn As String = PartExt01.Replace(teVervangenKleur, nieuweKleur)
PartExt01 = nieuweEtiketlijn
End If
End Sub
'rug heeft 2 kleur velden
Public Sub specialLadeNieuweKleurVervangRugKleuren(teVervangenKleur As String, nieuweKleur As String, nieuweKleurData As String, kantenbandKleur As String)
Dim gelukt As Boolean = specialLadeNieuweKleurUpdatePlaatmateriaalEnKleurEnDecor(teVervangenKleur, nieuweKleurData)
If gelukt Then
Dim kleurenLetters As String = PartExt01.Remove(0, PartExt01.IndexOf("/") + 1)
kleurenLetters = kleurenLetters.Substring(0, kleurenLetters.IndexOf("/"))
Dim nieuweKleurenLetters As String = kleurenLetters.Substring(0, kleurenLetters.IndexOf("-")).Replace(teVervangenKleur, nieuweKleur) + "-"
nieuweKleurenLetters += kleurenLetters.Substring(kleurenLetters.LastIndexOf("-") + 1).Replace(teVervangenKleur, kantenbandKleur)
PartExt01 = PartExt01.Replace(kleurenLetters, nieuweKleurenLetters)
End If
End Sub
'zijkant heeft 3 kleur velden
Public Sub specialLadeNieuweKleurVervangZijkantKleuren(teVervangenKleur As String, nieuweKleur As String, kantenbandNieuweKleur As String, nieuweKleurData As String)
Dim gelukt As Boolean = specialLadeNieuweKleurUpdatePlaatmateriaalEnKleurEnDecor(teVervangenKleur, nieuweKleurData)
If gelukt Then
Dim kleurenLetters As String = specialLadeNieuweKleurGeefKleurenLetters()
Dim nieuweKleurenLetters As String = kleurenLetters.Substring(0, kleurenLetters.IndexOf("-")).Replace(teVervangenKleur, nieuweKleur)
nieuweKleurenLetters += "-" & kantenbandNieuweKleur & "-"
nieuweKleurenLetters += kleurenLetters.Substring(kleurenLetters.LastIndexOf("-") + 1).Replace(teVervangenKleur, nieuweKleur)
PartExt01 = PartExt01.Replace(kleurenLetters, nieuweKleurenLetters)
End If
End Sub
Public Function specialLadeNieuweKleurGeefKleurenLetters() As String
Dim kleurenLetters As String = PartExt01.Remove(0, PartExt01.IndexOf("/") + 1)
Return kleurenLetters.Substring(0, kleurenLetters.IndexOf("/"))
End Function
Private Function specialLadeNieuweKleurUpdatePlaatmateriaalEnKleurEnDecor(teVervangenKleur As String, nieuweKleurData As String) As Boolean
'kijken of het wel geüpdate moet worden
Dim nieuwePartMat As String = PartMat.Remove(0, PartMat.IndexOf(".") + 1)
If nieuwePartMat.ToLower.Contains(teVervangenKleur.ToLower) Then
'updaten plaatmateriaal
nieuwePartMat = nieuwePartMat.Remove(0, nieuwePartMat.IndexOf("."))
nieuwePartMat = nieuweKleurData & nieuwePartMat
PartMat = nieuwePartMat
'updaten kleur
Dim nieuweKleur As String = nieuweKleurData.Remove(0, PartMat.IndexOf(".") + 1)
PartExt07 = nieuweKleur
'updaten decor
Dim nieuwDecor As String = nieuweKleurData.Substring(0, nieuweKleurData.IndexOf("."))
PartExt08 = nieuwDecor
Return True
End If
Return False
End Function
#End Region
#Region "voorraad"
Public Function geefColorDubbelVoorraad(zijkantB As ArdisData, andereZijkantA As ArdisData, andereZijkantB As ArdisData) As String
Return GeefKleurBinnen() & "-" & zijkantB.GeefKleurBinnen & "-" & andereZijkantA.GeefKleurBinnen & "-" & andereZijkantB.GeefKleurBinnen
End Function
Public Sub voorraadStelInitieleWaardenIn(diepte As String, hoogteLetter As String, label As String, kleur As String)
PartRef = "Zijkantplaat" 'rol/onderdeel
PartQty = "1" 'aantal
PartMat = "WORDT VERVANGEN" 'plaatmateriaal"
PartCalc = "WORDT VERVANGEN" 'barcode
PartRemark2 = "1" 'ladesequenty
PartRemark = "NoRework" 'dossiercode
PartExt09 = "" 'extrainfo
PartL = diepte 'lengte
PartW = Configs.geefHoogteDataVoorraad(hoogteLetter) 'breedte
PartExt06 = "6,5" 'dikte
PartExt07 = kleur 'kleur
PartExt08 = "WORDT VERVANGEN" 'decor
PartExt01 = label 'etiketlijn1
PartExt02 = "" 'etiketlijn2
PartExt03 = "" 'etiketlijn3
PartExt04 = "WORDT VERVANGEN" 'etiketlijn4
PartExt05 = "NoLabel" 'etiketinfo
PartRemark3 = "NoRework" 'rework
PartGroup = "99999001" 'kar
PartLevel = DateTime.Now.ToString("yyyyMMdd") + "12" 'banding
PartExt07 = kleur 'kleur
PartMat = Configs.voorraadGeefPlaatmateriaal(kleur) 'plaatmateriaal
PartExt08 = PartMat.Substring(0, PartMat.IndexOf("."))
End Sub
Public Sub voorraadGenereerBarcodeEnStelEtiketlijnIn(linksOfRechts As LinksOfRechts, hoogteLetter As String, barcodeNummer As String)
'barcodenummer opvullen met nullen (0076)
Do Until barcodeNummer.Length = 4
barcodeNummer = "0" & barcodeNummer
Loop
'barcode opbouwen
Dim barcode As String = ""
'eerste letter (onderdeel)
barcode &= "Z"
'tweede letter (breedte)
barcode &= hoogteLetter
'derde letter (vast)
barcode &= "V"
'cijfer (lengte)
barcode &= Configs.voorraadGeefCodeStemasB(Configs.voorraadGeefNettoLengte(PartL))
'letter voor rechts of links
barcode &= If(linksOfRechts = TA_OR_rework.LinksOfRechts.Links, "L", "R")
'eerste deel barcodeNummer
barcode &= barcodeNummer.Substring(0, 2)
'tussenletter (vast)
barcode &= "A"
'tweede deel barcodeNummer
barcode &= barcodeNummer.Substring(2)
'nieuwe barcode en etiketlijn4 instellen
PartCalc = barcode
PartExt04 = barcode
End Sub
#End Region
End Class