vhLib.Macro 1 %RegisteredObject,DOM.PM.ProductKenmerkenSets right %Integer 1 %String 1 DOM.PM.ProductKenmerkenSet list 1 KenmerkGroep:%String,PRNr:%Integer 1 1 %Status %Integer %String %Integer Geen één kenmerkset voor product met een gekend UnID UnID:%String DOM.PM.ProductKenmerkenSet 1 0) } If (HeeftMultiples) { Set MultiplesIt = ##class(TECH.ListIterator).%New(Multiples) While MultiplesIt.HasNext(){ Set UnID = MultiplesIt.Next() Do ..KenmerkenSets.Insert(##class(DOM.PM.impl.ProductKenmerkenSet).%New(..KenmerkGroep,..PRNr,UnID)) } } Else { Do ..KenmerkenSets.Insert(##class(DOM.PM.impl.ProductKenmerkenSet).%New(..KenmerkGroep,..PRNr,..PRNr)) } } ]]> Geeft een iterator terug van ProductKenmerkenSet. Met voor iedere multiple een TECH.Iterator Kopieer alle kenmerken van een BronUnID naar een DoelUnID Opgelet : er worden voor multiples geen TECH.Events.KenmerkModifiedEventData events geraised ! BronUnID:%String,DoelUnID:%String DOM.PM.ProductKenmerkenSet Maak voor een product een multiple aan. BronUnID : mag een PRNr of UnID zijn. - Als PRNr dan worden .1 en .2 aangemaakt. - Als UnID dan wordt bron .1 er een .2 bijgemaakt. Als BronUnID leeg is, dan wordt automatisch het PRNr gebruikt. Return : Lijst met gewijzigde PRNr's Opgelet : er worden voor multiples geen TECH.Events.KenmerkModifiedEventData events geraised ! BronUnID:%String %ListOfDataTypes Verwijderen van een kenmerkenset voor opgegeven UnID (non-multiple of multiple) !!! OPGELET !!! Deze method alleen gebruiken wanneer het volledige product verwijderd wordt !!! Indien slechts 1 kenmerkenset verwijderd wordt, dan moet de method VerwijderKenmerkenSet() opgeroepen worden. UnID:%String Verwijderen van een kenmerkenset voor opgegeven UnID (non-multiple of multiple) Indien er maar één multiple meer overschiet wordt het product automatisch een gewoon product zonder multiple. VerwijderAutoProducten : mag enkel op true gezet worden als het intern wordt aangeroepen. Return : Lijst met PRNr's die verwijderd zijn. Opgelet : er worden voor multiples geen TECH.Events.KenmerkModifiedEventData events geraised ! UnID:%String,VerwijderAutoProducten:%Boolean=0 %ListOfDataTypes $ListLength(lbMulti)){ Do ..VerwijderKenmerkenSetMetEvent(UnIDToRemove) } } } } Quit GewijzigdePRNrs ]]> Verwijderen van een kenmerkenset voor opgegeven UnID (non-multiple of multiple) Event van het type DOM.PM.event.KenmerkenSetVerwijderdEvent wordt geraised UnID:%String 1 UnID:%String 1 %Status