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()