1 vhConsistency.Check DOM.PM.ProductAPI 1 DOM.PM.ProductBeheerAPI 1 %ListOfDataTypes 1 %Boolean 1 1 %Status 1 1 1 %Status 1 1 Do ##class(vhConsistency.ConsistencyCheck).VoerUit(1,1,"vhConsistency.Checks.Multiples") %Status ProductID:%String Product:DOM.PM.Product,Multiples:%ListOfDataTypes,MultipleGroep:%String 1 0) { If (Multiples.Count() = 1){ Do ..VoegMeldingToe("Product "_Product.GeefKorttekst()_" ("_Multiples.GetAt(1)_") heeft maar één multiple, dit kan niet. Er moeten bij multiples minstens twee items aanwezig zijn.") }ElseIf ($Piece(Multiples.GetAt(1),".",2)'="1") { Set ..Status = $$$ERROR($$$GeneralError,"Fout") Do ..VoegMeldingToe("Product "_Product.GeefKorttekst()_" ("_Product.GeefID()_") heeft multiples die niet starten met nummer 1.") }ElseIf (Multiples.Count() > 1) { Do ..ControleerMultiplesMetGaten(Product,Multiples) } If ..HeeftKenmerkenInDataDefinitieGlobal(MultipleGroep) { Do ..ControleerUnIDsDieNietVoorkomenInMultiples(Product,Multiples,MultipleGroep) Do ..ControleerMultiplesZonderProdMulti(Product,Multiples,MultipleGroep) } } ]]> Product:DOM.PM.Product,Multiples:%ListOfDataTypes,MultipleGroep:%String 1 Product:DOM.PM.Product,Multiples:%ListOfDataTypes 1 Product:%String,Multiples:%ListOfDataTypes,MultipleGroep:%String 1 %ListOfDataTypes 0 { Set ..Status = $$$ERROR($$$GeneralError,"Fout") Do ..VoegMeldingToe("Product "_Product.GeefKorttekst()_" ("_Product.GeefID()_") heeft UnIDs die niet voorkomen in de Multiples lijst : ("_##class(TECH.ListUtils).ListToPieces(UnIDsDieNietVoorkomenInMultiples,",")_" niet in "_##class(TECH.ListUtils).ListToPieces(Multiples,",")_").") Do ..VoegToeHandleiding() } ]]> ProductID:%String,Multiples:%ListOfDataTypes,MultipleGroep:%String 1 %ListOfDataTypes ProductID:%String,MultipleGroep:%String 1 %Boolean 0) ; Controleer kenmerk "GeneratieType", want dit is een verplicht OL-kenmerk ]]> 1 MultipleGroep:%String 1 %Boolean Do ##class(vhConsistency.Checks.Multiples).%New().FixUnIDHeeftMaarEenMultiple(UnID) UnID:%String %String