Index: APPS/VisiDot/impl/EndAfhandelaar.cls.xml =================================================================== diff -u -r2987 -r3523 --- APPS/VisiDot/impl/EndAfhandelaar.cls.xml (.../EndAfhandelaar.cls.xml) (revision 2987) +++ APPS/VisiDot/impl/EndAfhandelaar.cls.xml (.../EndAfhandelaar.cls.xml) (revision 3523) @@ -57,6 +57,8 @@ Set BatchID = ..CaptureHelper.GeefBatchID() /// Enkel uitvoeren als er een batch te discoveren is. If (BatchID){ + Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" (1/4) Batch "_BatchID_" wordt gerecepteerd.") + Set ProductionHelper = ##class(APPS.VisiDot.impl.VHossProductionHelper).%New() Set UserID = "VisiDot" @@ -65,16 +67,25 @@ Set QueueIterator = ProductionHelper.GeefBatchIterator(BatchID) + Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" (2/4) Nieuwe buffer wordt opgebouwd.") /// Nieuwe bufferVolgNr opbouwen If QueueIterator.HasNext() { Set ..bfrVolgNr = ##class(BL.MB.UGLYPicking.Receptie).CreateNewBuffer(ReceptieGroepID,UserID) }Else{ Set Bericht = "De QueueIterator heeft geen elementen voor BatchID : '"_BatchID_"'" Do ##class(vhLib.Logger).%New("VisiDot").Warning("Recepteer Producten",Bericht) } + Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" (3/4) Nieuwe buffer is opgebouwd.") Set IsToeleveringReedsGerecepteerd = 0 + Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" (4/4) QueueIterator heeft elementen ? "_QueueIterator.HasNext()) + + Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" Alle producten moeten gerecepteerd worden.") + + Set DomeinContext = ##class(TECH.Context.RuntimeContext).Instance() + Set GebruikerInitialen = DomeinContext.GeefGebruikerInitialen() + While (QueueIterator.HasNext() && 'IsToeleveringReedsGerecepteerd) { /// QueueElement As DS.PPS.TBX.Queue @@ -84,31 +95,34 @@ Set $ZTRAP = "CatchReceptieProbleem" + Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" : Status Queue element : "_QueueElement.Status) + If (QueueElement.Status = "W"){ Set ProductID = QueueHelper.GeefProductNr() - Set BatchID = BatchID Set ToeleveringID = QueueElement.TOENr /// Als toelevering nog niet gerecepteerd is : Set Toelevering = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI().GeefToelevering(ToeleveringID) + Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" : Toelevering "_ToeleveringID_" is opgehaald.") If ('$IsObject(Toelevering)){ Set IsToeleveringReedsGerecepteerd = 1 Set Bericht = "De toelevering '"_ToeleveringID_"' is reeds gerecepteerd."_$C(13,10) Set Bericht = Bericht_"Bij de recepetie via VisiDot met BatchID : '"_BatchID_"'"_$C(13,10) Do ##class(vhLib.Logger).%New("VisiDot").ErrorMail("Toelevering "_ToeleveringID_" reeds gerecepteerd",Bericht) - }Else{ + }Else{ Set Dossier = QueueElement.DOSNr + Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" : Product met DossierCode '"_Dossier_"' voor Toelevering '"_ToeleveringID_"' wordt gerecepteerd.") Set FrameID = ProductionHelper.GeefPalletIDVanVHossID(QueueHelper.GeefFrameID()) Set ProdIsInKOM = "" - Set DomeinContext = ##class(TECH.Context.RuntimeContext).Instance() - Set GebruikerInitialen = DomeinContext.GeefGebruikerInitialen() Set Status = ##class(BL.MB.UGLYPicking.Receptie).AddToBuffer(ReceptieGroepID,..bfrVolgNr,ProductID,Dossier,LocatieTransit,FrameID,GebruikerInitialen,.ProdIsInKOM,ToeleveringID) If ($LG(Status,1) < 0) { Set FoutString = "##class(BL.MB.UGLYPicking.Receptie).AddToBuffer("_ReceptieGroepID_","_..bfrVolgNr_","_ProductID_","_Dossier_","_LocatieTransit_","_FrameID_","_GebruikerInitialen_","_ProdIsInKOM_")" Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.GeneralErrorException).%New("Fout bij uitvoeren van "_FoutString_$C(13,10)_"Fout: "_$LG(Status,2))) + }Else{ + Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" : Product met DossierCode '"_Dossier_"' voor Toelevering '"_ToeleveringID_"' is gerecepteerd.") } } } @@ -122,6 +136,9 @@ do ##class(vhLib.Logger).%New("VisiDot").ErrorMail("Recepteer Producten",Exception.ToString()) VolgendeReceptie } + }Else{ + Set Melding = "EndAfhandelaar heeft geen BatchID kunnen detecteren, en kon de toelevering niet recepteren." + do ##class(vhLib.Logger).%New("VisiDot").ErrorMail("Recepteer Producten",Melding) } Quit ReturnStatus ]]>