Index: DOM/PM/impl/DataM/DataMBouwsteenCreator.cls.xml =================================================================== diff -u -r29978 -r30204 --- DOM/PM/impl/DataM/DataMBouwsteenCreator.cls.xml (.../DataMBouwsteenCreator.cls.xml) (revision 29978) +++ DOM/PM/impl/DataM/DataMBouwsteenCreator.cls.xml (.../DataMBouwsteenCreator.cls.xml) (revision 30204) @@ -184,20 +184,23 @@ Item:DOM.PM.Maatwerk.Calc.HF.BewerktHalffabItem,SamengesteldeRol:%String="" %Status -HalffabItem:DOM.PM.Maatwerk.Calc.HF.ConcreetHalffabItem,IsBewerkt:%Boolean=0,SamengesteldeRol:%String="" +HalffabItem:DOM.PM.Maatwerk.Calc.HF.ConcreetHalffabItem,IsBewerkt:%Boolean=0,SamengesteldeRol:%String="",RecD:%String="" 1 %String HARDCODED, moet nog correct ingevuld worden Set $P(Rec,"\",11) = "H" //Groep -> HARDCODED, moet nog correct ingevuld worden - Set $P(Rec,"\",13) = "Omschrijving van het product" //Oms. -> HARDCODED, moet nog correct ingevuld worden + set $P(Rec,"\",13)=##class(TECH.StringUtils).StripFirstPart(HalffabItem.GeefVolledigeRolNaam(),".") // N.B. Bij een volgende wijziging in dit gebied, kan best overwogen worden of we de logica niet zouden omdraaien: // By default mag een bestaande BSKey NIET hergebruikt worden. Dat lijkt een veiligere default. // Bij een expliciet gemapte label (via DataMBouwsteenLabelInfo) is er uiteraard wél hergebruik indien de mapping dat zo aangeeft. - #dim MagBestaandeBSKeyGebruiken As %Boolean = 1 If (SamengesteldeRol '= "") { Set TeZoekenRol = SamengesteldeRol } Else { Set TeZoekenRol = HalffabItem.GeefRol() } &SQL(SELECT Label INTO :Label FROM DOM_PM_impl_DataM.DataMBouwsteenLabelInfo WHERE Rol = :TeZoekenRol AND IsBewerkt = :IsBewerkt) - - d WLIP^vhDBG(97,TeZoekenRol_" -> "_$G(Label)) - If ('$Data(Label)) { Set Label = ##class(TECH.StringUtils).ToUpper($E(HalffabItem.GeefRol(), 1, 8)) - If (HalffabItem.GeefRol()?.E1"_"1.2N) { - Set MagBestaandeBSKeyGebruiken = 0 - } - ElseIf (Label="LINKS")||(Label="RECHTS") { - Set MagBestaandeBSKeyGebruiken = 0 - } } If (..ProductSpecificatie.GeefFamilie() = ##class(DOM.PM.enu.Familie).Lade() && (";PRBDHO;PRBDHZ;PRRUGHS;PRVPCP;PRVPZW;PRVPOD;PRVULSTUK;PRVULPAL" [ Label)) { @@ -247,18 +240,22 @@ set $P(Rec,"\",$$$IsMeeTeRekenenInPrijs) = $$$Not(HalffabItem.IsMeeTeRekenenInPrijs) set $P(Rec,"\",$$$IsMeeTeRekenenVoorVoorraad) = $$$Not(HalffabItem.IsMeeTeRekenenVoorVoorraad) - #dim BSKey As %String = ..GeefBSKey(Rec,Label,MagBestaandeBSKeyGebruiken) + #dim BSKey As %String = ..GeefBSKey(HalffabItem,Label,Rec,RecD) // Als de bouwsteen al bestond moeten we de aantallen verhogen - If ($Data(^PRBS("BS",..PRNr,BSKey))) Set $P(Rec,"\",2) = Aantal + $P(^PRBS("BS",..PRNr,BSKey),"\",2) + If ($Data(^PRBS("BS",..PRNr,BSKey))) { + Set $P(Rec,"\",2) = Aantal + $P(^PRBS("BS",..PRNr,BSKey),"\",2) + Set $P(Rec,"\",13) = $P(^PRBS("BS",..PRNr,BSKey),"\",13)_";"_$P(Rec,"\",13) + + } Set ^PRBS("BS",..PRNr,BSKey) = Rec Quit BSKey ]]> -Rec:%String,Label:%String,MagBestaandeBSKeyGebruiken:%Boolean +HalffabItem:DOM.PM.Maatwerk.Calc.HF.ConcreetHalffabItem,Label:%String,Rec:%String,RecD:%String 1