1 APPS.MAG.ReceptieService %String APPS.Halux.common.Batch 1 Deze moet overschreven worden en mag geen super aanroepen, anders krijg je een framestack error. ReceptieGroepID:%String 1 1 %Status APPS.MAG.Receptie.impl.VervangProductService Als alle producten gerecepteerd zijn, status $$$OK. Indien minstens één product niet gerecepteerd kon worden wordt de status $$$ERROR meegegeven. Van de niet gerecepteerde producten wordt een errormail verstuurd met duidelijke omschrijving in. BatchID:%String %ListOfDataTypes Return : IsToeleveringReedsGerecepteerd 1 %Boolean Return : IsToeleveringReedsGerecepteerd BatchID:%String,DragerID:%String,QueueID:%String,BufferVolgNr:%String 1 %Boolean RecepteerProducten()",Bericht) }Else{ #dim Dossier As %String = QueueElement.DOSNr #dim ProdIsInKOM = "" #dim Status As %List = ##class(BL.MB.UGLYPicking.Receptie).AddToBuffer(..ReceptieGroepID,BufferVolgNr,ProductID,Dossier,LocatieTransit,DragerID,GebruikerInitialen,.ProdIsInKOM,,,,QueueElement.TOENr) #dim AddToBufferString As %String = "##class(BL.MB.UGLYPicking.Receptie).AddToBuffer("_..ReceptieGroepID_","_BufferVolgNr_","_ProductID_","_Dossier_","_LocatieTransit_","_DragerID_","_GebruikerInitialen_","_ProdIsInKOM_","_QueueElement.TOENr_")" If ($LG(Status,1) < 0) { #dim FoutString As %String = AddToBufferString Do ##class(vhLib.Logger).%New("APPS.MAG.Receptie").Info("Recepteer Producten",BatchID_ $C(9)_" : Product met DossierCode '"_Dossier_"' voor Toelevering '"_ToeleveringID_"' : "_FoutString) Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.GeneralErrorException).%New("Fout bij uitvoeren van "_FoutString_$C(13,10)_"Fout: "_$LG(Status,2))) }Else{ Set ProductieAfmeldenHelper = ##class(APPS.Halux.Afmelden.ProductieAfmeldenHelper).%New() #dim BufferLijnNr As %String = ProductieAfmeldenHelper.GeefBufferLijnNrVoorProductInBuffer(ProductID,..ReceptieGroepID,BufferVolgNr) If BufferLijnNr '= "" { Do ##class(vhLib.Logger).%New("APPS.MAG.Receptie").Info("Recepteer Producten",BatchID_ $C(9)_" : Product '"_ProductID_"' met DossierCode '"_Dossier_"' voor Toelevering '"_ToeleveringID_"' is gerecepteerd.") }Else{ Do ##class(vhLib.Logger).%New("APPS.MAG.Receptie").WarningMail("Recepteer Producten",BatchID_ $C(9)_" : Product '"_ProductID_"' met DossierCode '"_Dossier_"' is gerecepteerd. (GEEN TOELEVERING GEKOPPELD)"_$C(13,10)_AddToBufferString) } } } If '..Batch.IsActief() { Set BatchAfgehandeldEventData = ##class(APPS.Halux.common.event.BatchAfgehandeldEventData).%New(BatchID) Set BatchAfgehandeldEvent = ##class(APPS.Halux.common.event.BatchAfgehandeldEvent).%New(BatchAfgehandeldEventData) Do ##class(TECH.Context).Instance().GeefPubSubAPI().GeefEventRaiser().RaiseEventAsync(BatchAfgehandeldEvent) } } }Catch(E){ #dim ReturnStatus As %Status = '$$$OK #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch() do ##class(vhLib.Logger).%New("APPS.MAG.Receptie").ErrorMail("Recepteer Producten",Exception.ToString()) } Do ##class(vhLib.Logger).%New("APPS.MAG.Receptie").Info("Recepteer Producten","Product "_ProductID_" op "_DragerID_" voor batch "_BatchID_" recepteren : einde") Quit IsToeleveringReedsGerecepteerd ]]> BufferVolgNrs:%ListOfDataTypes