Index: APPS/Halux/common/impl/ProductieSequentieItemService.cls.xml =================================================================== diff -u -r71431 -r72785 --- APPS/Halux/common/impl/ProductieSequentieItemService.cls.xml (.../ProductieSequentieItemService.cls.xml) (revision 71431) +++ APPS/Halux/common/impl/ProductieSequentieItemService.cls.xml (.../ProductieSequentieItemService.cls.xml) (revision 72785) @@ -33,11 +33,21 @@ 1 + +APPS.Halux.common.impl.Encoway.ProductieAansturingService +1 + + DOM.PM.Maatwerk.Calc.Common.impl.OmleidingNaarDotNetBepaler 1 + +DOM.PM.Maatwerk.Calc.Common.impl.OmleidingNaarEncowayBepaler +1 + + MaatwerkService:APPS.PM.Maatwerk.MaatwerkService="",ProductieAansturingIngegevenKenmerkenBepaler:APPS.Halux.common.ProductieAansturingIngegevenKenmerkenBepaler="",DotNetProductieAansturingService:APPS.Halux.common.impl.DotNet.ProductieAansturingService="" 1 @@ -48,10 +58,12 @@ Set ..MaatwerkService = $$$Inject(MaatwerkService, ##class(APPS.PM.Maatwerk.MaatwerkService).%New()) Set ..ProductieAansturingIngegevenKenmerkenBepaler = $$$Inject(ProductieAansturingIngegevenKenmerkenBepaler, ##class(APPS.Halux.common.impl.ProductieAansturingIngegevenKenmerkenBepaler).%New()) Set ..DotNetProductieAansturingService = $$$Inject(DotNetProductieAansturingService, ##class(APPS.Halux.common.impl.DotNet.ProductieAansturingService).%New()) + Set ..EncowayProductieAansturingService = ##class(APPS.Halux.common.impl.Encoway.ProductieAansturingService).%New() Set ..ProductTypeAPI = ##class(DOM.DomeinContext).Instance().GeefProductTypeAPI() Set ..BerekeningService = ##class(APPS.PM.Maatwerk.impl.BerekeningServiceIngegevenKenmerken).%New() Set ..BatchService = ##class(APPS.ApplicatieContext).Instance().GeefProductieAPI().GeefBatchService() Set ..OmleidingNaarDotNetBepaler = ##class(DOM.PM.Maatwerk.Calc.Common.impl.OmleidingNaarDotNetBepaler).%New() + Set ..OmleidingNaarEncowayBepaler = ##class(DOM.PM.Maatwerk.Calc.Common.impl.OmleidingNaarEncowayBepaler).%New() Quit $$$OK ]]> @@ -64,7 +76,10 @@ #dim HalffabItemsBoom As DOM.PM.Maatwerk.Calc.HF.HalffabItemsBoom #dim IngegevenKenmerken As DOM.PM.Maatwerk.Calc.Common.IngegevenKenmerken = ..GeefIngegevenKenmerken(ProductieSequentieItem) - If (..IsHalffabItemsBoomDotNetBasedCalculated(IngegevenKenmerken)) { + If (..IsHalffabItemsBoomEncowayBasedCalculated(IngegevenKenmerken)) { + #dim CID As %String = ..GeefCID(ProductieSequentieItem) + Set HalffabItemsBoom = ..GeefHalffabItemsBoomEncowayBased(CID) + } ElseIf (..IsHalffabItemsBoomDotNetBasedCalculated(IngegevenKenmerken)) { Set HalffabItemsBoom = ..GeefHalffabItemsBoomDotNetBased(IngegevenKenmerken, ProductieSequentieItem) } Else { Set HalffabItemsBoom = ..GeefHalffabItemsBoomCacheBased(IngegevenKenmerken, ProductieSequentieItem) @@ -85,6 +100,26 @@ ]]> + +ProductieSequentieItem:APPS.Halux.common.ProductieSequentieItem +1 +%String + + + + +IngegevenKenmerken:DOM.PM.Maatwerk.Calc.Common.IngegevenKenmerken +1 +%Boolean + + + IngegevenKenmerken:DOM.PM.Maatwerk.Calc.Common.IngegevenKenmerken 1 @@ -119,6 +154,14 @@ ]]> + +CID:%String +1 +DOM.PM.Maatwerk.Calc.HF.HalffabItemsBoom + + + ProductieSequentieItem:APPS.Halux.common.ProductieSequentieItem 1 Index: APPS/Halux/common/impl/Encoway/ProductieAansturingService.cls.xml =================================================================== diff -u --- APPS/Halux/common/impl/Encoway/ProductieAansturingService.cls.xml (revision 0) +++ APPS/Halux/common/impl/Encoway/ProductieAansturingService.cls.xml (revision 72785) @@ -0,0 +1,52 @@ + + + +TECH.RegisteredObject + + +WSimpl.PM.Maatwerk.MaatwerkService.Encoway +1 + + + +APPS.PM.Maatwerk.impl.VhConfigHelper +1 + + + +1 +1 +%Status +1 + + + + +CID:%String +DOM.PM.Maatwerk.Calc.HF.HalffabItemsBoom + + + + + + Index: vhTest/Mock/APPS/PM/Maatwerk/impl/BerekeningServiceIngegevenKenmerken.cls.xml =================================================================== diff -u -r55392 -r72785 --- vhTest/Mock/APPS/PM/Maatwerk/impl/BerekeningServiceIngegevenKenmerken.cls.xml (.../BerekeningServiceIngegevenKenmerken.cls.xml) (revision 55392) +++ vhTest/Mock/APPS/PM/Maatwerk/impl/BerekeningServiceIngegevenKenmerken.cls.xml (.../BerekeningServiceIngegevenKenmerken.cls.xml) (revision 72785) @@ -20,9 +20,9 @@ -IngegevenKenmerken:DOM.PM.Maatwerk.Calc.Common.IngegevenKenmerken,BerekeningsSpecificatie:DOM.PM.Maatwerk.Calc.Common.BerekeningsSpecificatie,MaatwerkAanpassing:DOM.PM.Maatwerk.Aanpassing.dto.MaatwerkAanpassing="" +IngegevenKenmerken:DOM.PM.Maatwerk.Calc.Common.IngegevenKenmerken,BerekeningsSpecificatie:DOM.PM.Maatwerk.Calc.Common.BerekeningsSpecificatie,MaatwerkAanpassing:DOM.PM.Maatwerk.Aanpassing.dto.MaatwerkAanpassing="",CID:%String="" DOM.PM.Maatwerk.Calc.HF.HalffabItemsBoom - Index: APPS/PM/Maatwerk/impl/BerekeningServiceIngegevenKenmerken.cls.xml =================================================================== diff -u -r72784 -r72785 --- APPS/PM/Maatwerk/impl/BerekeningServiceIngegevenKenmerken.cls.xml (.../BerekeningServiceIngegevenKenmerken.cls.xml) (revision 72784) +++ APPS/PM/Maatwerk/impl/BerekeningServiceIngegevenKenmerken.cls.xml (.../BerekeningServiceIngegevenKenmerken.cls.xml) (revision 72785) @@ -33,19 +33,31 @@ 1 + +APPS.Halux.common.impl.Encoway.ProductieAansturingService +1 + + DOM.PM.Maatwerk.Calc.Common.impl.OmleidingNaarDotNetBepaler 1 + +DOM.PM.Maatwerk.Calc.Common.impl.OmleidingNaarEncowayBepaler +1 + + 1 1 %Status 1 2019-07-18 PV+PRA: Aangezien enerzijds het berekenen van boom relatief lang duurt, en anderzijds de boom finaal mag en moet zijn bij aanvang van productie, lijkt het zinvol (maar verder functioneel en technisch te analyseren) om op termijn de boom gewoon te persisteren op bepaalde fases (configureren, order maken, productie starten). -IngegevenKenmerken:DOM.PM.Maatwerk.Calc.Common.IngegevenKenmerken,BerekeningsSpecificatie:DOM.PM.Maatwerk.Calc.Common.BerekeningsSpecificatie,MaatwerkAanpassing:DOM.PM.Maatwerk.Aanpassing.dto.MaatwerkAanpassing="" +IngegevenKenmerken:DOM.PM.Maatwerk.Calc.Common.IngegevenKenmerken,BerekeningsSpecificatie:DOM.PM.Maatwerk.Calc.Common.BerekeningsSpecificatie,MaatwerkAanpassing:DOM.PM.Maatwerk.Aanpassing.dto.MaatwerkAanpassing="",CID:%String="" DOM.PM.Maatwerk.Calc.HF.HalffabItemsBoom -IngegevenKenmerken:DOM.PM.Maatwerk.Calc.Common.IngegevenKenmerken,BerekeningsSpecificatie:DOM.PM.Maatwerk.Calc.Common.BerekeningsSpecificatie,MaatwerkAanpassing:DOM.PM.Maatwerk.Aanpassing.dto.MaatwerkAanpassing +IngegevenKenmerken:DOM.PM.Maatwerk.Calc.Common.IngegevenKenmerken,BerekeningsSpecificatie:DOM.PM.Maatwerk.Calc.Common.BerekeningsSpecificatie,MaatwerkAanpassing:DOM.PM.Maatwerk.Aanpassing.dto.MaatwerkAanpassing,CID:%String 1 DOM.PM.Maatwerk.Calc.HF.HalffabItemsBoom 1 + +APPS.Halux.common.impl.Encoway.ProductieAansturingService +1 + + DOM.PM.Maatwerk.Calc.Common.impl.OmleidingNaarDotNetBepaler 1 + +DOM.PM.Maatwerk.Calc.Common.impl.OmleidingNaarEncowayBepaler +1 + + BatchService:APPS.Halux.common.BatchService,BerekeningService:APPS.PM.Maatwerk.impl.BerekeningServiceIngegevenKenmerken="",IngegevenKenmerkenBepaler:APPS.Halux.common.impl.ProductieAansturingIngegevenKenmerkenBepaler="",ProductAPI:DOM.PM.ProductAPI="",LadeInfoApi:DOM.PM.Maatwerk.LadeInfoAPI="",DotNetProductieAansturingService:APPS.Halux.common.impl.DotNet.ProductieAansturingService="" 1 @@ -51,7 +61,9 @@ Set ..LadeInfoApi = $$$Inject(LadeInfoApi, ##class(DOM.PM.Maatwerk.impl.LadeInfoAPI).%New()) Set ..BerekeningService = $$$Inject(BerekeningService, ##class(APPS.PM.Maatwerk.impl.BerekeningServiceIngegevenKenmerken).%New()) Set ..DotNetProductieAansturingService = $$$Inject(DotNetProductieAansturingService, ##class(APPS.Halux.common.impl.DotNet.ProductieAansturingService).%New()) + Set ..EncowayProductieAansturingService = ##class(APPS.Halux.common.impl.Encoway.ProductieAansturingService).%New() Set ..OmleidingNaarDotNetBepaler = ##class(DOM.PM.Maatwerk.Calc.Common.impl.OmleidingNaarDotNetBepaler).%New() + Set ..OmleidingNaarEncowayBepaler = ##class(DOM.PM.Maatwerk.Calc.Common.impl.OmleidingNaarEncowayBepaler).%New() Quit $$$OK ]]> @@ -67,7 +79,10 @@ #dim BerekeningsSpecificatie As DOM.PM.Maatwerk.Calc.Common.BerekeningsSpecificatie = Product.GeefBerekeningsSpecificatie() Do BerekeningsSpecificatie.ZetBerekeningWijze(##class(DOM.PM.Maatwerk.Calc.Common.enu.BerekeningWijze).ProductieAansturing()) - If ..OmleidingNaarDotNetBepaler.IsMaatwerkCalculatieInDotNet(IngegevenKenmerken.GeefVariant(), IngegevenKenmerken.GeefVersieNr()) { + If ..OmleidingNaarEncowayBepaler.IsMaatwerkCalculatieInEncoway(IngegevenKenmerken.GeefVariant(), IngegevenKenmerken.GeefVersieNr()) { + #dim CID As %String = Product.GeefCID() + Set HalffabItemsBoom = ..EncowayProductieAansturingService.GeefHalffabItemsBoomEncowayBased(CID) + } ElseIf ..OmleidingNaarDotNetBepaler.IsMaatwerkCalculatieInDotNet(IngegevenKenmerken.GeefVariant(), IngegevenKenmerken.GeefVersieNr()) { #dim KlantId As DOM.VKP.VanHoeckeKlantID = BerekeningsSpecificatie.GeefKlantID() #dim Aantal As %Integer = BerekeningsSpecificatie.GeefHoeveelheid() #dim BerekeningWijze As DOM.PM.Maatwerk.Calc.Common.enu.BerekeningWijze = BerekeningsSpecificatie.GeefBerekeningWijze()