BL.Derde.KlantSpecifiek,BL.Derde.LevSpecifiek,vhLib.Macro
1
TECH.Mockable
Night job to clean old batches
Delete the old inactive batches from the Batch table and from the Sequence table
Add a new Batch
Batch:APPS.Halux.common.Batch
%Status
Add a production order to a batch
Batch:APPS.Halux.common.Batch,Toelevering:DOM.AKP.Toelevering
%Status
Delete a production order from a batch
Batch:APPS.Halux.common.Batch,Toelevering:DOM.AKP.Toelevering
%Status
Delete all production orders from a batch
Batch:APPS.Halux.common.Batch
%Status
Search Info of the batches
0:"X",1:"")
Set arBatch(i)=$J(BatchNr,6)_"`"_$J(TimeStamp,14)_"|"_$J(LineNr,3)_" |"_$J(ProductionType,2)_" |"_$$$FormatNbr(Drawers,6)_"|"_$$$FormatNbr(TipOn,6)_"|"_$$$FormatNbr(Sink,6)_"|"_$J(OnderdelenSpecial,3)
Set i = i + 1
}
}
]]>
Toelevering:DOM.AKP.Toelevering
BL.PPS.TBX.ToeleveringProductInfo
0) { Set ToeleveringProductInfo.AantalHangmappen = ToeleveringProductInfo.AantalHangmappen + Aantal }
If (TBXLade.%Extends("DOM.PM.TBXProduct.TBXLadeMetUitsparing")) { Set ToeleveringProductInfo.AantalLadenMetUitsparing = ToeleveringProductInfo.AantalLadenMetUitsparing + Aantal }
If ($Length($LG(##class(Prod.Kenmerk.DataDefinitie).Get("TBX", TBXLade.GeefPRNr(),"ODSP")))) {
Set ToeleveringProductInfo.AantalOnderdelenSpeciaal = ToeleveringProductInfo.AantalOnderdelenSpeciaal + Aantal
}
#dim Verpakking As DOM.PM.enu.TBXVerpakking = TBXLade.GeefVerpakking()
If ((Verpakking '= ##class(DOM.PM.enu.TBXVerpakking).StukMetOnderdelen()) && (Verpakking '= ##class(DOM.PM.enu.TBXVerpakking).StukZonderOnderdelen()) && (ToeleveringProductInfo.VerpakkingsTypes '[ Verpakking)) {
Set ToeleveringProductInfo.VerpakkingsTypes = ToeleveringProductInfo.VerpakkingsTypes_Verpakking
}
} ElseIf (Product.%Extends("DOM.PM.LBXProduct.LBXLade")) {
Set Aantal = ProductLijn.GeefAantal()
#dim LBXLade As DOM.PM.LBXProduct.LBXLade = Product
Set IngegevenKenmerkenTypeAPI = ##class(DOM.PM.Maatwerk.impl.IngegevenKenmerkenTypeAPI).%New()
Set IngegevenKenmerken = LBXLade.GeefIngegevenKenmerken()
If (IngegevenKenmerkenTypeAPI.IsSpoelbaklade(IngegevenKenmerken) || IngegevenKenmerkenTypeAPI.IsSifonlade(IngegevenKenmerken)) {
Set ToeleveringProductInfo.AantalLadenMetUitsparing = ToeleveringProductInfo.AantalLadenMetUitsparing + Aantal
}
If IngegevenKenmerkenTypeAPI.IsSmalleLade(IngegevenKenmerken) {
Set ToeleveringProductInfo.AantalSmalleLaden = ToeleveringProductInfo.AantalSmalleLaden + Aantal
}
} ElseIf (Product.%Extends("DOM.PM.MVXProduct.MVXLade")) {
Set Aantal = ProductLijn.GeefAantal()
#dim MVXLade As DOM.PM.LBXProduct.LBXLade = Product
Set IngegevenKenmerkenTypeAPI = ##class(DOM.PM.Maatwerk.impl.IngegevenKenmerkenTypeAPI).%New()
Set IngegevenKenmerken = MVXLade.GeefIngegevenKenmerken()
If (IngegevenKenmerkenTypeAPI.IsSpoelbaklade(IngegevenKenmerken) || IngegevenKenmerkenTypeAPI.IsSifonlade(IngegevenKenmerken)) {
Set ToeleveringProductInfo.AantalLadenMetUitsparing = ToeleveringProductInfo.AantalLadenMetUitsparing + Aantal
}
}
}
Catch {
#dim GecatchteException As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch()
Set NewException = ##class(TECH.Exceptions.GeneralErrorException).%New("Fout bij GeefToeleveringProductInfo voor Toelevering '"_Toelevering.GeefID() _"' en Product ID '"_ProductLijn.GeefProductID()_"'.")
Do NewException.VoegToeInnerExceptie(GecatchteException)
Do ##class(TECH.ExceptionHandler).Throw(NewException)
}
}
Quit ToeleveringProductInfo
]]>
Convert timestamp to European format
TimeStamp:%TimeStamp
%String
Print ProPlus
Print Cabinet
d ##class(BL.PPS.TBX.LeanBatch).%New().PrintV1(4001,$tr("Z;E;L;F;O;M;R;K",";")) ]]>
ProductID:%String,KLNr:%String