Index: APPS/Verpakking/CubeIQRequestBuilder.cls.xml =================================================================== diff -u -r72320 -r72329 --- APPS/Verpakking/CubeIQRequestBuilder.cls.xml (.../CubeIQRequestBuilder.cls.xml) (revision 72320) +++ APPS/Verpakking/CubeIQRequestBuilder.cls.xml (.../CubeIQRequestBuilder.cls.xml) (revision 72329) @@ -1,7 +1,7 @@ -TECH.RegisteredObject +TECH.Mockable %String @@ -51,7 +51,6 @@ #dim CubeIQProductToLoad As APPS.Verpakking.dto.CubeIQ.Request.ProductToLoad = ..GeefCubeIQProductToLoad(BoxData) If (CubeIQProductToLoad.quantity > 0) { - Do ProductList.Insert(CubeIQProduct) Do ProductToLoadList.Insert(CubeIQProductToLoad) } Index: APPS/Verpakking/OrgaluxBonOptimizer.cls.xml =================================================================== diff -u -r72325 -r72329 --- APPS/Verpakking/OrgaluxBonOptimizer.cls.xml (.../OrgaluxBonOptimizer.cls.xml) (revision 72325) +++ APPS/Verpakking/OrgaluxBonOptimizer.cls.xml (.../OrgaluxBonOptimizer.cls.xml) (revision 72329) @@ -162,7 +162,6 @@ BoxDataLijstVanTeStapelenDozen:%ListOfObjects -1 APPS.Verpakking.dto.CubeIQ.Response BoxDataLijstVanTeStapelenDozen:%ListOfObjects -1 %Integer 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) + #dim SnijData As DS.Prod.OptiBox.SnijData = ..MaakSnijDataVoorOverdoos(BoxDataOverdoosAangevuld, Overdoos, .OptiData, AfbeeldingCode, SnijDataParent, IsOverdoosNodig) #dim SnijDefOverdoos As DS.Prod.OptiBox.sub.emSnijDef = ..MaakSnijDef(BoxDataOverdoosAangevuld) Do SnijData.SnijDefs.SetAt(SnijDefOverdoos, ##class(APPS.Verpakking.enu.MachineID).VH()) #dim SaveStatus As %Status = SnijData.%Save() @@ -536,8 +534,8 @@ Set SnijData.BoxUsage = "BOTTOM" Set SnijData.PPSPrioriteit = 1 } - Set SnijData.Diepte = (Overdoos.overalllength + 15) //Extra zodat dozen makkelijk in overdoos geraken - Set SnijData.Breedte = (Overdoos.overallwidth + 15) //Extra zodat dozen makkelijk in overdoos geraken + Set SnijData.Diepte = Overdoos.overalllength + Set SnijData.Breedte = Overdoos.overallwidth Set SnijData.Hoogte = Overdoos.overallheight Set SnijData.CreatieTijdStip = ..GeefHuidigeTimeStamp() @@ -768,7 +766,7 @@ BoxDataLijst:%ListOfObjects -1 %ListOfObjects BoxDataLijst:%ListOfObjects -1 %ListOfObjects BoxDataLijst:%ListOfObjects -1 %ListOfObjects BonID:%String -1 %ListOfObjects (..#MaximumVerpakkingBreedteVoorEuropallet )) && ((##class(TECH.Math).Min(BoxData.Breedte, BoxData.Diepte) + (3 * 6.7)) > ..#MaximumVerpakkingDiepteVoorEuropallet) { // 3 * 6.7 is svoor dikte kartonverpakking in rekening te brengen + 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) @@ -1067,7 +1061,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) + (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 + 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) Index: vhUnitTest/APPS/Verpakking/OrgaluxBonOptimizer/Test.cls.xml =================================================================== diff -u --- vhUnitTest/APPS/Verpakking/OrgaluxBonOptimizer/Test.cls.xml (revision 0) +++ vhUnitTest/APPS/Verpakking/OrgaluxBonOptimizer/Test.cls.xml (revision 72329) @@ -0,0 +1,305 @@ + + + +vhUnitTest.TestCase + + +APPS.Verpakking.OrgaluxBonOptimizer +1 + + + +APPS.Verpakking.SnijDataRepository +1 + + + +%String +BonTestOrgaluxBonOptimizer + + + +%String +KlantTestOrgaluxBonOptimizer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + dan de toegelaten 1173. Dit dient manueel te worden nagekeken zodat dit kan worden opgelost en dit niet meer voorvalt.") + Do ..ZetVerwachteExceptie(##class(Tools.Test.VerwachteExceptie).%New("TECH.Exceptions.InvalidResponseException", Substrings)) + + #dim BoxDataList As DS.Prod.OptiBox.BoxDataMetID = ..GeefLijstBoxDataMetKartonMetBufferZone() + #dim BoxData As DS.Prod.OptiBox.BoxDataMetID = BoxDataList.GetAt(1) + Set BoxData.Breedte = 9999999 + Set BoxData.Aantal = 1 + Set BoxData.ObjRef = "TestProductOrgaluxBonOptimizer" + Set ^KPR(BoxData.ObjRef, 0) = "DummyKorttekst" + + #dim BesteStapeling As APPS.Verpakking.dto.CubeIQ.Response = ..OrgaluxBonOptimizer.BepaalMinimumAantalPallettenVoorBon(BoxDataList) + + Kill ^KPR(BoxData.ObjRef, 0) +]]> + + + + + + + + + + +1x1 doos en 1x2 (boxdata w goed gevonden) + + + + + + + + + +1 +%ListOfObjects + + + + +1 +%ListOfObjects + + + + +1 + + + + +1 + + + + + +