Index: APPS/Halux/PPS/Document/impl/common/BatchNaarObjective/OptieGenerator/AantalRollenOptiesGenerator.cls.xml
===================================================================
diff -u -r74483 -r74723
--- APPS/Halux/PPS/Document/impl/common/BatchNaarObjective/OptieGenerator/AantalRollenOptiesGenerator.cls.xml (.../AantalRollenOptiesGenerator.cls.xml) (revision 74483)
+++ APPS/Halux/PPS/Document/impl/common/BatchNaarObjective/OptieGenerator/AantalRollenOptiesGenerator.cls.xml (.../AantalRollenOptiesGenerator.cls.xml) (revision 74723)
@@ -110,21 +110,41 @@
If ..MagHalffabItemToegevoegdWorden(HalffabItem, NietMeeleverenLijst, IngegevenKenmerken.GeefVariant()) {
#dim Naam As %String = ..GeefRolNaam(HalffabItem, IngegevenKenmerken)
#dim Aantal As %String = ProductLijn.GeefAantal() * HalffabItem.GeefAantal()
+ #dim IsTBXDubbeleSifonlade As %Boolean = $$$False
- #dim KeyValuePair As TECH.KeyValuePair = AantallenPerRol.FindByKey(Naam)
- If ($IsObject(KeyValuePair)) {
- Set Aantal = KeyValuePair.Value + Aantal
- Do AantallenPerRol.RemoveByKey(Naam)
- Do AantallenPerRol.InsertKeyValue(Naam, Aantal)
- } Else {
- Do AantallenPerRol.InsertKeyValue(Naam, Aantal)
+ If ((Naam = "Sifonkap") && (IngegevenKenmerken.%ClassName(1) = "DOM.PM.Maatwerk.Calc.Common.impl.TBXKenmerken")){
+ Set Naam = "Sifonkap.z1"
+ If (HalffabItem.GeefAantal() = 2) {
+ Set IsTBXDubbeleSifonlade = $$$True
+ Set Aantal = Aantal / 2
+ }
}
+
+ Do ..VoegToeAantalPerRol(AantallenPerRol, Naam, Aantal)
+
+ If (IsTBXDubbeleSifonlade) {
+ Do ..VoegToeAantalPerRol(AantallenPerRol, "Sifonkap.z2", Aantal)
+ }
}
}
}
]]>
+
+
+
+
+
HalffabItem:DOM.PM.Maatwerk.Calc.HF.IHalffabItem,NietMeeleverenLijst:%ListOfDataTypes,Variant:%String
%Boolean
Index: APPS/Halux/PPS/Document/impl/common/BatchNaarObjective/OptieGenerator/RollenEnStuklijstOptiesGenerator.cls.xml
===================================================================
diff -u -r74613 -r74723
--- APPS/Halux/PPS/Document/impl/common/BatchNaarObjective/OptieGenerator/RollenEnStuklijstOptiesGenerator.cls.xml (.../RollenEnStuklijstOptiesGenerator.cls.xml) (revision 74613)
+++ APPS/Halux/PPS/Document/impl/common/BatchNaarObjective/OptieGenerator/RollenEnStuklijstOptiesGenerator.cls.xml (.../RollenEnStuklijstOptiesGenerator.cls.xml) (revision 74723)
@@ -57,15 +57,33 @@
#dim IsRolTbxStabilisatorStang As %Boolean = (HalffabItem.GeefRol() = ##class(DOM.PM.Maatwerk.Calc.HF.enu.TBXRol).StabilisatorStang())
#dim IsRolLbxIngebrepenAfdekkapBinnen As %Boolean = ((HalffabItem.%ClassName() [ "InbegrepenHalffabItem") && (HalffabItem.GeefRol() = ##class(DOM.PM.Maatwerk.Calc.HF.enu.LBXRol).AfdekkapBinnen()) && (Batch.GeefCategorie() = ##class(APPS.Halux.common.enu.Categorie).Legrabox()))
#dim IsRolLbxIngebrepenAfdekkapBuiten As %Boolean = ((HalffabItem.%ClassName() [ "InbegrepenHalffabItem") && (HalffabItem.GeefRol() = ##class(DOM.PM.Maatwerk.Calc.HF.enu.LBXRol).AfdekkapBuiten()) && (Batch.GeefCategorie() = ##class(APPS.Halux.common.enu.Categorie).Legrabox()))
+ #dim IsRolTbxSifonkap As %Boolean = ((HalffabItem.GeefRol() = ##class(DOM.PM.Maatwerk.Calc.HF.enu.TBXRol).Sifonkap()) && (Batch.GeefCategorie() = ##class(APPS.Halux.common.enu.Categorie).Tandembox()))
+ #dim IsTbxDubbeleSifon As %Boolean = $$$False
Do ..FixHalffabItemVoorInbegrepenAfdekkappen(.HalffabItem, Batch, IngegevenKenmerken, KlantId)
If (($$$Not(HalffabItem.%Extends("DOM.PM.Maatwerk.Calc.HF.SamengesteldHalffabItem"))) && ($$$Not(HalffabItem.%ClassName() [ "InbegrepenHalffabItem"))) {
If ($$$Not(IsRolTbxStabilisatorStang) || (IsRolTbxStabilisatorStang && (HuidigeMESFase > 1))) {
+ If (IsRolTbxSifonkap) {
+ Do HalffabItem.ZetRol("Sifonkap.z1")
+ If (HalffabItem.GeefAantal() = 2) {
+ Do HalffabItem.ZetAantal(1)
+ Set IsTbxDubbeleSifon = $$$True
+ }
+ }
+
If ($$$Not(HalffabItem.GeefAantal() = 0)) {
Do Opties.Insert(..GeefOptieVoorLadeVoorRol(HalffabItem, IngegevenKenmerken, SequentieNummerLade))
Do Opties.Insert(..GeefOptieVoorLadeVoorStuklijst(HalffabItem, IngegevenKenmerken, SequentieNummerLade, $Increment(Index)))
}
+
+ If (IsTbxDubbeleSifon) {
+ Do HalffabItem.ZetRol("Sifonkap.z2")
+ Do Opties.Insert(..GeefOptieVoorLadeVoorRol(HalffabItem, IngegevenKenmerken, SequentieNummerLade))
+ Do Opties.Insert(..GeefOptieVoorLadeVoorStuklijst(HalffabItem, IngegevenKenmerken, SequentieNummerLade, $Increment(Index)))
+ Do HalffabItem.ZetRol(##class(DOM.PM.Maatwerk.Calc.HF.enu.TBXRol).Sifonkap())
+ Do HalffabItem.ZetAantal(2)
+ }
}
Set:((..GeefRolNaam(HalffabItem, IngegevenKenmerken) = "Rugstaal")) StalenRugPRNr = HalffabItem.GeefHalffab().GeefProductID()