Index: APPS/Verpakking/Optimizer.cls.xml =================================================================== diff -u -r72270 -r72317 --- APPS/Verpakking/Optimizer.cls.xml (.../Optimizer.cls.xml) (revision 72270) +++ APPS/Verpakking/Optimizer.cls.xml (.../Optimizer.cls.xml) (revision 72317) @@ -68,7 +68,7 @@ } ElseIf (BasisDoos.%Extends("APPS.Verpakking.dto.ZelfstaandMetDeksel")) { Do ..OptmizeZelfstaandMetDeksel(.BasisDoos) } ElseIf (BasisDoos.%Extends("APPS.Verpakking.dto.Overdoos")) { - Do ..OptimizeOverdoos(.BasisDoos) + Do ..OptimizeOverdoos(.BasisDoos, MachineTechnologie) } Set BasisDoos.CardBoardID = ..KartonRepository.GeefKartonID(BasisDoos.CardBoardThickness, ..BreedtePlano, BasisDoos.LogoPrint, ..MachineId) @@ -181,30 +181,29 @@ Set ..BreedtePlano = 2399 } } ElseIf (MachineTechnologie = ##class(APPS.Verpakking.enu.MachineTechnologie).Panotec()) { - - #dim BreedtePlanoVoorSwapRecept209 As %Decimal = BasisDoos.K1 + BasisDoos.CardBoardThickness + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.Width + 5 + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.K1 + BasisDoos.CardBoardThickness + #dim BreedtePlanoVoorSwapRecept209 As %Decimal = BasisDoos.K1 + BasisDoos.CardBoardThickness + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.Width + 5 + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.K1 + BasisDoos.CardBoardThickness + 50 //50 marge voor panotec #dim DieptePlanoVoorSwapRecept209 As %Decimal = BasisDoos.Depth + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.Depth + 10 + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.K2 #dim NodigeKartonBreedteVoorSwapRecept209 = $Select(BreedtePlanoVoorSwapRecept209 <= ..AfmetingBreedsteKarton: ..KartonRepository.GeefKartonBreedte(BasisDoos.CardBoardThickness, BreedtePlanoVoorSwapRecept209, BasisDoos.LogoPrint, ..MachineId), 1: 9999999) #dim OppTotaleKartonVoorSwapRecept209 As %Decimal = DieptePlanoVoorSwapRecept209 * NodigeKartonBreedteVoorSwapRecept209 - #dim BreedtePlanoVoorSwapRecept219 As %Decimal = BasisDoos.Width + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.Width + 10 + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.K2 + #dim BreedtePlanoVoorSwapRecept219 As %Decimal = BasisDoos.Width + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.Width + 10 + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.K2 + 50 //50 marge voor panotec #dim DieptePlanoVoorSwapRecept219 As %Decimal = BasisDoos.K1 + BasisDoos.CardBoardThickness + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.Depth + 5 + BasisDoos.Height + BasisDoos.CardBoardThickness + BasisDoos.K1 + + BasisDoos.CardBoardThickness #dim NodigeKartonBreedteVoorSwapRecept219 = $Select(BreedtePlanoVoorSwapRecept219 <= ..AfmetingBreedsteKarton: ..KartonRepository.GeefKartonBreedte(BasisDoos.CardBoardThickness, BreedtePlanoVoorSwapRecept219, BasisDoos.LogoPrint, ..MachineId), 1: 9999999) - #dim OppTotaleKartonVoorSwapRecept219 As %Decimal = DieptePlanoVoorSwapRecept219 * NodigeKartonBreedteVoorSwapRecept209 + #dim OppTotaleKartonVoorSwapRecept219 As %Decimal = DieptePlanoVoorSwapRecept219 * NodigeKartonBreedteVoorSwapRecept219 If (OppTotaleKartonVoorSwapRecept209 < OppTotaleKartonVoorSwapRecept219) { - Set ..BreedtePlano = BreedtePlanoVoorSwapRecept209 - Set ..DieptePlano = DieptePlanoVoorSwapRecept209 - Set BasisDoos.Recipe = 209 - } Else { - Set ..BreedtePlano = BreedtePlanoVoorSwapRecept219 - Set ..DieptePlano = DieptePlanoVoorSwapRecept219 - Set BasisDoos.Recipe = 219 - } + Set ..BreedtePlano = BreedtePlanoVoorSwapRecept209 + Set ..DieptePlano = DieptePlanoVoorSwapRecept209 + Set BasisDoos.Recipe = 209 + } Else { + Set ..BreedtePlano = BreedtePlanoVoorSwapRecept219 + Set ..DieptePlano = DieptePlanoVoorSwapRecept219 + Set BasisDoos.Recipe = 219 + } } Else { #dim SwapRecept219IsBeter, SwapRecept209IsBeter As %Boolean = $$$False @@ -438,22 +437,39 @@ - + 1 ..AfmetingBreedsteKarton) { //Breedte grootste karton, als het te breed is wordt er geswapt -> Definitie van swap = 2 - Set BreedtePlanoRecept = BasisDoos.Height + BasisDoos.Width + 35 + BasisDoos.Height - Set DieptePlanoRecept = (BasisDoos.Height * (1-BasisDoos.AG)) + (2 * BasisDoos.CardBoardThickness) + BasisDoos.Height + BasisDoos.Depth + 75 + BasisDoos.Height + (2 * BasisDoos.CardBoardThickness) + (BasisDoos.Height * (1-BasisDoos.AG)) - Set BasisDoos.Swap = 1 - } - - Set ..BreedtePlano = BreedtePlanoRecept - Set ..DieptePlano = DieptePlanoRecept + If (MachineTechnologie = ##class(APPS.Verpakking.enu.MachineTechnologie).Panotec()) { + If (BasisDoos.Swap = 2) { + Set BasisDoos.Swap = 0 + #dim BreedtePlanoRecept As %Decimal = BasisDoos.Height + BasisDoos.Width + 35 + BasisDoos.Height + 100 //Marge voor panotec + #dim DieptePlanoRecept As %Decimal = (BasisDoos.Height * (1-BasisDoos.AG)) + (2 * BasisDoos.CardBoardThickness) + BasisDoos.Height + BasisDoos.Depth + 75 + BasisDoos.Height + (2 * BasisDoos.CardBoardThickness) + (BasisDoos.Height * (1-BasisDoos.AG)) + + If (BreedtePlanoRecept > ..AfmetingBreedsteKarton) { //Breedte grootste karton, als het te breed is wordt er geswapt -> Definitie van swap = 2 + Set BreedtePlanoRecept = BasisDoos.Height + BasisDoos.Depth + 35 + BasisDoos.Height + Set DieptePlanoRecept = (BasisDoos.Height * (1-BasisDoos.AG)) + (2 * BasisDoos.CardBoardThickness) + BasisDoos.Height + BasisDoos.Width + 75 + BasisDoos.Height + (2 * BasisDoos.CardBoardThickness) + (BasisDoos.Height * (1-BasisDoos.AG)) + Set BasisDoos.Swap = 1 + } + + Set ..BreedtePlano = BreedtePlanoRecept + Set ..DieptePlano = DieptePlanoRecept + } + } Else { + If (BasisDoos.Swap = 2) { + Set BasisDoos.Swap = 0 + Set BreedtePlanoRecept = BasisDoos.Height + BasisDoos.Depth + 35 + BasisDoos.Height + Set DieptePlanoRecept = (BasisDoos.Height * (1-BasisDoos.AG)) + (2 * BasisDoos.CardBoardThickness) + BasisDoos.Height + BasisDoos.Width + 75 + BasisDoos.Height + (2 * BasisDoos.CardBoardThickness) + (BasisDoos.Height * (1-BasisDoos.AG)) + + If (BreedtePlanoRecept > ..AfmetingBreedsteKarton) { //Breedte grootste karton, als het te breed is wordt er geswapt -> Definitie van swap = 2 + Set BreedtePlanoRecept = BasisDoos.Height + BasisDoos.Width + 35 + BasisDoos.Height + Set DieptePlanoRecept = (BasisDoos.Height * (1-BasisDoos.AG)) + (2 * BasisDoos.CardBoardThickness) + BasisDoos.Height + BasisDoos.Depth + 75 + BasisDoos.Height + (2 * BasisDoos.CardBoardThickness) + (BasisDoos.Height * (1-BasisDoos.AG)) + Set BasisDoos.Swap = 1 + } + + Set ..BreedtePlano = BreedtePlanoRecept + Set ..DieptePlano = DieptePlanoRecept + } } ]]>