Index: APPS/Verpakking/OrgaluxBonOptimizer.cls.xml
===================================================================
diff -u -r72320 -r72325
--- APPS/Verpakking/OrgaluxBonOptimizer.cls.xml (.../OrgaluxBonOptimizer.cls.xml) (revision 72320)
+++ APPS/Verpakking/OrgaluxBonOptimizer.cls.xml (.../OrgaluxBonOptimizer.cls.xml) (revision 72325)
@@ -5,7 +5,7 @@
%Integer
-1170
+1173
@@ -162,6 +162,7 @@
BoxDataLijstVanTeStapelenDozen:%ListOfObjects
+1
APPS.Verpakking.dto.CubeIQ.Response
BoxDataLijstVanTeStapelenDozen:%ListOfObjects
+1
%Integer
dan de toegelaten " _ ..#MaximumVerpakkingBreedteVoorEuropallet _ ". Dit dient manueel te worden nagekeken zodat dit kan worden opgelost en dit niet meer voorvalt."
+ Do ..Logger.ErrorMail("Bepaal minimum aantal palletten", FoutOmschrijving)
+ Set Exception = ##class(TECH.Exceptions.InvalidResponseException).%New(FoutOmschrijving)
+ Do ##class(TECH.ExceptionHandler).Throw(Exception)
}
Set MinimumAantalPallettenVoorBon = CubeIQResponse.cubeiq.loadedcontainers.loadedcontainer.Count()
If (MinimumAantalPallettenVoorBon = 0) {
- #dim FoutOmschrijving As %String = "Het minimum aantal palletten voor bon " _ ..BonId _ " is 0. Dit kan niet kloppen en moet manueel worden nagekeken."
+ Set FoutOmschrijving = "Het minimum aantal palletten voor bon " _ ..BonId _ " is 0. Dit kan niet kloppen en moet manueel worden nagekeken."
Do ..Logger.ErrorMail("Bepaal minimum aantal palletten", FoutOmschrijving)
Set Exception = ##class(TECH.Exceptions.DataNotFoundException).%New(FoutOmschrijving)
Do ##class(TECH.ExceptionHandler).Throw(Exception)
@@ -410,7 +422,7 @@
}
#dim BoxDataOverdoosAangevuld As DS.Prod.OptiBox.BoxDataMetID = ..CopyBoxData(BoxDataOverdoos)
- Set BoxDataOverdoosAangevuld.Breedte = Overdoos.overallwidth
+ Set BoxDataOverdoosAangevuld.Breedte = $Select(Overdoos.overallwidth > 1170 : 1170, 1: Overdoos.overallwidth) //Indien overdoos toch net groter is dan 1170, waarde naar 1170 zetten, dan spant het maar een beetje ;)
Set BoxDataOverdoosAangevuld.Diepte = Overdoos.overalllength
Set BoxDataOverdoosAangevuld.Hoogte = Overdoos.overallheight
#dim SnijData As DS.Prod.OptiBox.SnijData = ..MaakSnijDataVoorOverdoos(BoxDataOverdoos, Overdoos, .OptiData, AfbeeldingCode, SnijDataParent, IsOverdoosNodig)
@@ -758,7 +770,7 @@
#dim JSONStream = ##class(%Stream.GlobalBinary).%New()
Do JSONStream.Write(RequestString)
- ;Do ..Logger.Debug("BlackBox request", JSONStream)
+ Do ..Logger.Debug("BlackBox request", JSONStream)
Set HttpRequest = ##class(%Net.HttpRequest).%New()
Set HttpRequest.Server = ##class(TECH.Config.ConfigMgr).Instance().GetString("APPS.Verpakking.OrgaluxBonOptimizer.BlackBoxURL")
@@ -1038,7 +1050,13 @@
Set BoxData.Breedte = ..CalcMetDefault(1, BoxData.BreedteExec, .Params)
Set BoxData.Diepte = ..CalcMetDefault(1, BoxData.DiepteExec, .Params)
Set BoxData.Hoogte = ..CalcMetDefault(1, BoxData.HoogteExec, .Params)
- Do BoxDataLijst.Insert(BoxData)
+
+ If ((##class(TECH.Math).Max(BoxData.Breedte, BoxData.Diepte) + (3 * 6.7)) > (..#MaximumVerpakkingBreedteVoorEuropallet )) && ((##class(TECH.Math).Min(BoxData.Breedte, BoxData.Diepte) + (3 * 6.7)) > ..#MaximumVerpakkingDiepteVoorEuropallet) { // 3 * 6.7 is svoor dikte kartonverpakking in rekening te brengen
+ Do ..Logger.Debug("PastProductOpEuropallet", "Genest product "_PRNr_" past niet op een europallet voor bon " _ BonID_". Er zijn " _ Aantal _" producten genest in deze verpakking.")
+ } Else {
+ Do BoxDataLijst.Insert(BoxData)
+ }
+
Set BoxData = ..CopyBoxData(BoxData)
}
} Else {
@@ -1049,7 +1067,7 @@
Set BoxData.Diepte = ..CalcMetDefault(1, BoxData.DiepteExec, .Params)
Set BoxData.Hoogte = ..CalcMetDefault(1, BoxData.HoogteExec, .Params)
- If (##class(TECH.Math).Max(BoxData.Breedte, BoxData.Diepte) > ..#MaximumVerpakkingBreedteVoorEuropallet) && (##class(TECH.Math).Min(BoxData.Breedte, BoxData.Diepte) > ..#MaximumVerpakkingDiepteVoorEuropallet) {
+ If ((##class(TECH.Math).Max(BoxData.Breedte, BoxData.Diepte) + (3 * 6.7)) > ..#MaximumVerpakkingBreedteVoorEuropallet) && ((##class(TECH.Math).Min(BoxData.Breedte, BoxData.Diepte) + (3 * 6.7)) > ..#MaximumVerpakkingDiepteVoorEuropallet) { // 3 * 6.7 is svoor dikte kartonverpakking in rekening te brengen
Do ..Logger.Debug("PastProductOpEuropallet", "Product "_PRNr_" past niet op een europallet voor bon " _ BonID_".")
} Else {
Do BoxDataLijst.Insert(BoxData)
@@ -1065,6 +1083,7 @@
BoxData:DS.Prod.OptiBox.BoxData
+1
DS.Prod.OptiBox.BoxDataMetID