Index: BL/PPS/WPVerpakOptibox.cls.xml =================================================================== diff -u -r29059 -r69183 --- BL/PPS/WPVerpakOptibox.cls.xml (.../WPVerpakOptibox.cls.xml) (revision 29059) +++ BL/PPS/WPVerpakOptibox.cls.xml (.../WPVerpakOptibox.cls.xml) (revision 69183) @@ -12,7 +12,10 @@ Do ..SnijService.SnijVoorLade(MaatwerkProduct.GeefVariant()_"."_QueueItem.TOENr_".LO", CallBack, Prioriteit, MachineID,1) ; optimize with immidiate cut - Set QueueItem.WPVerpak.SnijStatus=$$$osOptimize ; Queued for optimalisatie + If (##class(TECH.Config.ConfigMgr).Instance().GetString("APPS.Verpakking.Machine."_MachineID_"_Codepad") = "Cache") { + Set QueueItem.WPVerpak.SnijStatus=$$$osOptimize ; Queued for optimalisatie + } + Quit ##class(BL.Sys.Proxy.pxStatus).Create(1, "Snijopdracht gegeven", "", "") ]]> Index: APPS/Halux/PPS/Verpakking/impl/DoosLosseOnderdelen.cls.xml =================================================================== diff -u -r69113 -r69183 --- APPS/Halux/PPS/Verpakking/impl/DoosLosseOnderdelen.cls.xml (.../DoosLosseOnderdelen.cls.xml) (revision 69113) +++ APPS/Halux/PPS/Verpakking/impl/DoosLosseOnderdelen.cls.xml (.../DoosLosseOnderdelen.cls.xml) (revision 69183) @@ -89,16 +89,22 @@ Set Params("HOOGTE")=..Hoogte Set Params("BREEDTECP")=..BreedteCorpusProfiel Set PPSOutput=0 ; rechtdoor (bij een vorige machine kon men links, rechts of rechtdoor uitsluizen) - - Set Status=OptiBox.OneBox(..#OptiGroep,..#OptiIDLosseOnderdelen, .Params, Qty, BaseRef, ProductID, .CallBack, .SnijPrioriteit, PPSOutput, .MachineID) - Try { - Set DoosService = ##class(APPS.Verpakking.DoosService).%New() - Do DoosService.GeefDoos(..#OptiGroep, ..#OptiIDLosseOnderdelen, .MachineID, .Qty, .Params, ProductID, .SnijPrioriteit, BaseRef, .CallBack) - } Catch { - #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch() - #dim Logger = ##class(vhLib.Logger).%New("VH doos service").Debug("GeefDoos", "Er is iets fout gelopen bij het verwerken van GeefDoos. OptiID: '"_..#OptiGroep_ " "_..#OptiIDLosseOnderdelen_"', PRNr: '"_ ProductID _"', MachineID: '"_ MachineID _"'."_Exception.GeefOmschrijving()) + If (##class(TECH.Config.ConfigMgr).Instance().GetString("APPS.Verpakking.Machine."_MachineID_"_Codepad") = "Cache") { + Set Status=OptiBox.OneBox(..#OptiGroep,..#OptiIDLosseOnderdelen, .Params, Qty, BaseRef, ProductID, .CallBack, .SnijPrioriteit, PPSOutput, .MachineID) } + + If (##class(TECH.Config.ConfigMgr).Instance().GetString("APPS.Verpakking.Machine."_MachineID_"_Codepad") = "NodeRed") { + Try { + Set DoosService = ##class(APPS.Verpakking.DoosService).%New() + Do DoosService.GeefDoos(..#OptiGroep, ..#OptiIDLosseOnderdelen, .MachineID, .Qty, .Params, ProductID, .SnijPrioriteit, BaseRef, .CallBack) + Set Status = $$$OK + } Catch { + Set Status = $$$ERROR($$$GeneralError, "GeefDoos fout") + #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch() + #dim Logger = ##class(vhLib.Logger).%New("VH doos service").Error("GeefDoos", "Er is iets fout gelopen bij het verwerken van GeefDoos. OptiID: '"_..#OptiGroep_ " "_..#OptiIDLosseOnderdelen_"', PRNr: '"_ ProductID _"', MachineID: '"_ MachineID _"'."_Exception.GeefOmschrijving()) + } + } ]]> Index: APPS/Halux/PPS/Verpakking/impl/KartonSnijVisitor.cls.xml =================================================================== diff -u -r69113 -r69183 --- APPS/Halux/PPS/Verpakking/impl/KartonSnijVisitor.cls.xml (.../KartonSnijVisitor.cls.xml) (revision 69113) +++ APPS/Halux/PPS/Verpakking/impl/KartonSnijVisitor.cls.xml (.../KartonSnijVisitor.cls.xml) (revision 69183) @@ -67,34 +67,41 @@ #dim CallBack As %List = $LB("APPS.Halux.PPS.Verpakking.impl.KartonSnijder", "CallBackOptimizer", UitvoeringInfo.WerklijstItemID) #dim Status As %Status - #dim ProxyStatus As BL.Sys.Proxy.pxStatus - Set ProxyStatus = ..Optibox.OneBox( - UitvoeringInfo.DoosGroep, - UitvoeringInfo.DoosNaam, - .Params, - UitvoeringInfo.AantalDozen, - "T." _ UitvoeringInfo.ToeleveringID, - UitvoeringInfo.ProductID, - CallBack, - $S(UitvoeringInfo.IsRework: 7, 1: UitvoeringInfo.SnijPrioriteit), - 0, // PPSOutput - UitvoeringInfo.MachineID - ) - - Try { - Set DoosService = ##class(APPS.Verpakking.DoosService).%New() - Do DoosService.GeefDoos(UitvoeringInfo.DoosGroep, UitvoeringInfo.DoosNaam, UitvoeringInfo.MachineID, UitvoeringInfo.AantalDozen, .Params, UitvoeringInfo.ProductID, $S(UitvoeringInfo.IsRework: 7, 1: UitvoeringInfo.SnijPrioriteit), "T." _ UitvoeringInfo.ToeleveringID, CallBack) - } Catch { - #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch() - #dim Logger = ##class(vhLib.Logger).%New("VH doos service").Debug("GeefDoos", "Er is iets fout gelopen bij het verwerken van GeefDoos. Doosgroep: '"_UitvoeringInfo.DoosGroep_"', DoosNaam: '"_ UitvoeringInfo.DoosNaam _", PRNr: '"_ UitvoeringInfo.ProductID _"', MachineID: '"_ UitvoeringInfo.MachineID _"'."_Exception.GeefOmschrijving()) + If (##class(TECH.Config.ConfigMgr).Instance().GetString("APPS.Verpakking.Machine."_UitvoeringInfo.MachineID_"_Codepad") = "Cache") { + #dim ProxyStatus As BL.Sys.Proxy.pxStatus + Set ProxyStatus = ..Optibox.OneBox( + UitvoeringInfo.DoosGroep, + UitvoeringInfo.DoosNaam, + .Params, + UitvoeringInfo.AantalDozen, + "T." _ UitvoeringInfo.ToeleveringID, + UitvoeringInfo.ProductID, + CallBack, + $S(UitvoeringInfo.IsRework: 7, 1: UitvoeringInfo.SnijPrioriteit), + 0, // PPSOutput + UitvoeringInfo.MachineID + ) + + If ProxyStatus.IsOK { + Set Status = $$$OK + } Else { + Do ##class(vhLib.Logger).%New("Optibox").WarningMail("SnijDoos",ProxyStatus.FullMsg()_$C(13,10)_$C(13,10)_$$GetStackToString^vhLib.System()) + Set Status = $$$ERROR($$$GeneralError, "Optimizer fout") + } } - - If ProxyStatus.IsOK { - Set Status = $$$OK - } Else { - Do ##class(vhLib.Logger).%New("Optibox").WarningMail("SnijDoos",ProxyStatus.FullMsg()_$C(13,10)_$C(13,10)_$$GetStackToString^vhLib.System()) - Set Status = $$$ERROR($$$GeneralError, "Optimizer fout") - } + + If (##class(TECH.Config.ConfigMgr).Instance().GetString("APPS.Verpakking.Machine."_UitvoeringInfo.MachineID_"_Codepad") = "NodeRed") { + Try { + Set DoosService = ##class(APPS.Verpakking.DoosService).%New() + Do DoosService.GeefDoos(UitvoeringInfo.DoosGroep, UitvoeringInfo.DoosNaam, UitvoeringInfo.MachineID, UitvoeringInfo.AantalDozen, .Params, UitvoeringInfo.ProductID, $S(UitvoeringInfo.IsRework: 7, 1: UitvoeringInfo.SnijPrioriteit), "T." _ UitvoeringInfo.ToeleveringID, CallBack) + Set Status = $$$OK + } Catch { + Set Status = $$$ERROR($$$GeneralError, "GeefDoos fout") + #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch() + #dim Logger = ##class(vhLib.Logger).%New("VH doos service").Error("GeefDoos", "Er is iets fout gelopen bij het verwerken van GeefDoos. Doosgroep: '"_UitvoeringInfo.DoosGroep_"', DoosNaam: '"_ UitvoeringInfo.DoosNaam _", PRNr: '"_ UitvoeringInfo.ProductID _"', MachineID: '"_ UitvoeringInfo.MachineID _"'."_Exception.GeefOmschrijving()) + } + } + Quit Status ]]> Index: APPS/Halux/PPS/TAORVerpakking/impl/DoosLade.cls.xml =================================================================== diff -u -r69113 -r69183 --- APPS/Halux/PPS/TAORVerpakking/impl/DoosLade.cls.xml (.../DoosLade.cls.xml) (revision 69113) +++ APPS/Halux/PPS/TAORVerpakking/impl/DoosLade.cls.xml (.../DoosLade.cls.xml) (revision 69183) @@ -139,35 +139,41 @@ Index: vhUnitTest/APPS/Verpakking/DoosService/Test.cls.xml =================================================================== diff -u -r69163 -r69183 --- vhUnitTest/APPS/Verpakking/DoosService/Test.cls.xml (.../Test.cls.xml) (revision 69163) +++ vhUnitTest/APPS/Verpakking/DoosService/Test.cls.xml (.../Test.cls.xml) (revision 69183) @@ -3,7 +3,7 @@ vhUnitTest.TestCase - + Index: BL/PPS/TBX/WPVerpakOptibox.cls.xml =================================================================== diff -u -r29059 -r69183 --- BL/PPS/TBX/WPVerpakOptibox.cls.xml (.../WPVerpakOptibox.cls.xml) (revision 29059) +++ BL/PPS/TBX/WPVerpakOptibox.cls.xml (.../WPVerpakOptibox.cls.xml) (revision 69183) @@ -10,11 +10,15 @@ Set BaseRef="T."_QueueItem.TOENr Set CallBack=$LB("BL.PPS.WPVerpak","CBOptimizer",QueueItem.%Id()) Set pxStatus=%blPPSTBXOptiBox.SnijV1(..ProductID, 1, "V1", BaseRef, CallBack , Prioriteit, PPSOutput, MachineID) ; optimize with immediate cut - If $$$pxStatusIsOK(pxStatus) Do ; Queued voor optimalisatie - . Set QueueItem.WPLosOnderdeel.SnijStatus=$$$osOptimize ; Queued for optimalisatie - Else Do - . Set QueueItem.WPLosOnderdeel.SnijStatus=$$$osError ; Error - . Set QueueItem.WPLosOnderdeel.Message=pxStatus.FullMsg() + + If (##class(TECH.Config.ConfigMgr).Instance().GetString("APPS.Verpakking.Machine."_MachineID_"_Codepad") = "Cache") { + If $$$pxStatusIsOK(pxStatus) Do ; Queued voor optimalisatie + . Set QueueItem.WPLosOnderdeel.SnijStatus=$$$osOptimize ; Queued for optimalisatie + Else Do + . Set QueueItem.WPLosOnderdeel.SnijStatus=$$$osError ; Error //Wss wordt hier error gezet voor grote doos TBX? + . Set QueueItem.WPLosOnderdeel.Message=pxStatus.FullMsg() + } + Quit pxStatus ]]> Index: APPS/Verpakking/DoosService.cls.xml =================================================================== diff -u -r69163 -r69183 --- APPS/Verpakking/DoosService.cls.xml (.../DoosService.cls.xml) (revision 69163) +++ APPS/Verpakking/DoosService.cls.xml (.../DoosService.cls.xml) (revision 69183) @@ -73,23 +73,24 @@ SnijDoos + If $G(CallBack) { //Er kan ook gesneden worden zonder CallBack: zoals rechtstreekse snijopdrachten via admin via F11 -> SnijDoos + #dim Product As DOM.PM.Product = ..ProductAPI.GeefProduct(ProductId) Set OptiData = ..MaakOptiData(Doos, BaseRef, Aantal, Product, MachineID, Prioriteit) Set SnijData = ..MaakSnijData(Doos, BaseRef, OptiData, Product, MachineID, Prioriteit) Set SnijDef = ..MaakSnijDef(Doos, SnijData) @@ -102,7 +103,11 @@ Do WerklijstItemStatusUpdater.UpdateWerklijstItemStatusViaID($LG(CallBack,3), $$$False, ##class(APPS.Halux.PPS.Verpakking.enu.KartonMachineStatus).Geoptimaliseerd()) } ElseIf (..ProductTypeAPI.IsTandemboxProduct(ProductId) || ..ProductTypeAPI.IsTAORboxProduct(ProductId)) { Set Queue = ##class(DS.PPS.TBX.Queue).%OpenId($LG(CallBack,3)) - Set Queue.WPVerpak.SnijStatus = "Q" + If ##class(TECH.StringUtils).Equals(Doos.Recipe, "214", "218") { //Losse onderdelen + complexe scheiding kartons + Set Queue.WPLosOnderdeel.SnijStatus = "Q" + } Else { + Set Queue.WPVerpak.SnijStatus = "Q" + } } Else { Do ..Logger.Error("GeefDoos", "Voor dit maatwerktype is nog geen implementatie voorzien in de de VHDoosService.") } Index: BL/PPS/TBX/OptiBox.cls.xml =================================================================== diff -u -r69113 -r69183 --- BL/PPS/TBX/OptiBox.cls.xml (.../OptiBox.cls.xml) (revision 69113) +++ BL/PPS/TBX/OptiBox.cls.xml (.../OptiBox.cls.xml) (revision 69183) @@ -423,42 +423,57 @@ Do ..GetV1Params(PRNr, Qty, .Params, .OptiID,"S") Set Gewicht=$$$PRGet($$$Gewicht) Set:$G(BaseRef)="" BaseRef="X."_$I(^Prod.OptiBox.BaseRefD) + #dim KartonViaCache As %Boolean = (##class(TECH.Config.ConfigMgr).Instance().GetString("APPS.Verpakking.Machine."_MachineID_"_Codepad") = "Cache") + #dim KartonViaNodeRed As %Boolean = (##class(TECH.Config.ConfigMgr).Instance().GetString("APPS.Verpakking.Machine."_MachineID_"_Codepad") = "NodeRed") If Usage="LOS" Do . If $G(Params("LOQTY"))>0 Do . . Set OptiID="TBX||V1 LosseOnderdelen" . . Set Params("LOQTY")=Qty - . . Set Status=##class(BL.Prod.OptiBox.Optimize).OneBox($$$SplitID(OptiID), .Params, Qty, BaseRef, .PRNr, .CallBack, .SnijPrioriteit, .PPSOutput, .MachineID) - . . Do ..GeefDoos(OptiID, .MachineID, .Qty, .Params, .PRNr, .SnijPrioriteit, BaseRef, .CallBack) + . . If (KartonViaCache) Do + . . . Set Status = ##class(BL.Prod.OptiBox.Optimize).OneBox($$$SplitID(OptiID), .Params, Qty, BaseRef, .PRNr, .CallBack, .SnijPrioriteit, .PPSOutput, .MachineID) + . . If (KartonViaNodeRed) Do + . . . Set Status = ..GeefDoos(OptiID, .MachineID, .Qty, .Params, .PRNr, .SnijPrioriteit, BaseRef, .CallBack) . If $G(Params("BKQTY"))>0 Do . . Set OptiID="TBX||V1 Boxkap Doos" . . Set OptiID="TBX||V1 Boxkap" . . Set Params("BKQTY")=Qty - . . Set Status=##class(BL.Prod.OptiBox.Optimize).OneBox($$$SplitID(OptiID), .Params, Qty, BaseRef, .PRNr, .CallBack, .SnijPrioriteit, .PPSOutput, .MachineID) - . . Do ..GeefDoos(OptiID, .MachineID, .Qty, .Params, .PRNr, .SnijPrioriteit, BaseRef, .CallBack) + . . If (KartonViaCache) Do + . . . Set Status = ##class(BL.Prod.OptiBox.Optimize).OneBox($$$SplitID(OptiID), .Params, Qty, BaseRef, .PRNr, .CallBack, .SnijPrioriteit, .PPSOutput, .MachineID) + . . If (KartonViaNodeRed) Do + . . . Set Status = ..GeefDoos(OptiID, .MachineID, .Qty, .Params, .PRNr, .SnijPrioriteit, BaseRef, .CallBack) Else If Usage="V1" Do . Set Params("LOQTY")=-1 . Set Params("BKQTY")=-1 - . Set Status=##class(BL.Prod.OptiBox.Optimize).OneBox($$$SplitID(OptiID), .Params, Qty, BaseRef, .PRNr, .CallBack, .SnijPrioriteit, .PPSOutput, .MachineID) - . Do ..GeefDoos(OptiID, .MachineID, .Qty, .Params, .PRNr, .SnijPrioriteit, BaseRef, .CallBack) + . If (KartonViaCache) Do + . . Set Status = ##class(BL.Prod.OptiBox.Optimize).OneBox($$$SplitID(OptiID), .Params, Qty, BaseRef, .PRNr, .CallBack, .SnijPrioriteit, .PPSOutput, .MachineID) + . If (KartonViaNodeRed) Do + . . Set Status = ..GeefDoos(OptiID, .MachineID, .Qty, .Params, .PRNr, .SnijPrioriteit, BaseRef, .CallBack) Else Do . ;k %Params m %Params=Params zw %Params - . Set Status=##class(BL.Prod.OptiBox.Optimize).OneBox($$$SplitID(OptiID), .Params, Qty, BaseRef, .PRNr, .CallBack, .SnijPrioriteit, .PPSOutput, .MachineID) - . Do ..GeefDoos(OptiID, .MachineID, .Qty, .Params, .PRNr, .SnijPrioriteit, BaseRef, .CallBack) + . If (KartonViaCache) Do + . . Set Status = ##class(BL.Prod.OptiBox.Optimize).OneBox($$$SplitID(OptiID), .Params, Qty, BaseRef, .PRNr, .CallBack, .SnijPrioriteit, .PPSOutput, .MachineID) + . If (KartonViaNodeRed) Do + . . Set Status = ..GeefDoos(OptiID, .MachineID, .Qty, .Params, .PRNr, .SnijPrioriteit, BaseRef, .CallBack) Quit $G(Status) ]]> +%Status Index: BL/PPS/TBX/WPLosOnderdeelOptibox.cls.xml =================================================================== diff -u -r29059 -r69183 --- BL/PPS/TBX/WPLosOnderdeelOptibox.cls.xml (.../WPLosOnderdeelOptibox.cls.xml) (revision 29059) +++ BL/PPS/TBX/WPLosOnderdeelOptibox.cls.xml (.../WPLosOnderdeelOptibox.cls.xml) (revision 69183) @@ -10,11 +10,15 @@ Set BaseRef="T."_QueueItem.TOENr Set CallBack=$LB("BL.PPS.WPLosOnderdeel","CBOptimizer",QueueItem.%Id()) Set pxStatus=%blPPSTBXOptiBox.SnijV1(..ProductID, 1, "LOS", BaseRef, CallBack , Prioriteit, PPSOutput, MachineID) ; optimize with immediate cut - If $$$pxStatusIsOK(pxStatus) Do ; Queued voor optimalisatie - . Set QueueItem.WPLosOnderdeel.SnijStatus=$$$osOptimize ; Queued for optimalisatie - Else Do - . Set QueueItem.WPLosOnderdeel.SnijStatus=$$$osError ; Error - . Set QueueItem.WPLosOnderdeel.Message=pxStatus.FullMsg() + + If (##class(TECH.Config.ConfigMgr).Instance().GetString("APPS.Verpakking.Machine."_MachineID_"_Codepad") = "Cache") { + If $$$pxStatusIsOK(pxStatus) Do ; Queued voor optimalisatie + . Set QueueItem.WPLosOnderdeel.SnijStatus=$$$osOptimize ; Queued for optimalisatie + Else Do + . Set QueueItem.WPLosOnderdeel.SnijStatus=$$$osError ; Error + . Set QueueItem.WPLosOnderdeel.Message=pxStatus.FullMsg() + } + Quit pxStatus ]]> Index: BL/PPS/WPLosOnderdeelOptibox.cls.xml =================================================================== diff -u -r29059 -r69183 --- BL/PPS/WPLosOnderdeelOptibox.cls.xml (.../WPLosOnderdeelOptibox.cls.xml) (revision 29059) +++ BL/PPS/WPLosOnderdeelOptibox.cls.xml (.../WPLosOnderdeelOptibox.cls.xml) (revision 69183) @@ -12,7 +12,10 @@ Do ..SnijService.SnijVoorLosseOnderdelen(MaatwerkProduct.GeefVariant()_"."_QueueItem.TOENr_".LO", CallBack, Prioriteit, MachineID,1) ; optimize with immidiate cut - Set QueueItem.WPLosOnderdeel.SnijStatus=$$$osOptimize ; Queued for optimalisatie + If (##class(TECH.Config.ConfigMgr).Instance().GetString("APPS.Verpakking.Machine."_MachineID_"_Codepad") = "Cache") { + Set QueueItem.WPLosOnderdeel.SnijStatus=$$$osOptimize ; Queued for optimalisatie + } + Quit ##class(BL.Sys.Proxy.pxStatus).Create(1, "Snijopdracht gegeven", "", "") ]]>