Index: DOM/PM/ProductKenmerkenSets.cls.xml
===================================================================
diff -u -r1775 -r1826
--- DOM/PM/ProductKenmerkenSets.cls.xml (.../ProductKenmerkenSets.cls.xml) (revision 1775)
+++ DOM/PM/ProductKenmerkenSets.cls.xml (.../ProductKenmerkenSets.cls.xml) (revision 1826)
@@ -23,7 +23,7 @@
DOM.PM.ProductKenmerkenSet
-
+
Geeft een iterator terug van ProductKenmerkenSet
1
Index: vhConsistency/Checks/MastersVarianten.cls.xml
===================================================================
diff -u -r1775 -r1826
--- vhConsistency/Checks/MastersVarianten.cls.xml (.../MastersVarianten.cls.xml) (revision 1775)
+++ vhConsistency/Checks/MastersVarianten.cls.xml (.../MastersVarianten.cls.xml) (revision 1826)
@@ -24,8 +24,8 @@
Set Product = ProductIterator.Next()
Set PRNr = Product.GeefPRNr()
- Set ProductKenmerkenSets = ProductAPI.GeefProductKenmerkenSets(PRNr,"OL")
- Set KenmerkenSetsIterator = ProductKenmerkenSets.GeefKenmerkenSets()
+ Set ProductKenmerkenSets = ProductAPI.GeefProductKenmerken(PRNr).GeefProductKenmerkenSets("OL")
+ Set KenmerkenSetsIterator = ProductKenmerkenSets.GeefProductKenmerkenSetIterator()
If (KenmerkenSetsIterator.HasNext())
{
Set ProductKenmerkenSet = KenmerkenSetsIterator.Next()
@@ -38,7 +38,7 @@
While (AutoVariantenIterator.HasNext())
{
Set AutoVariantPRNr = AutoVariantenIterator.Next().PRNr
- Set ProductKenmerkenSetsAuto = ProductAPI.GeefProductKenmerkenSets(AutoVariantPRNr,"OL")
+ Set ProductKenmerkenSetsAuto = ProductAPI.GeefProductKenmerken(PRNr).GeefProductKenmerkenSets("OL")
If (ProductKenmerkenSets.GeefAantalSets() '= ProductKenmerkenSetsAuto.GeefAantalSets())
{
Index: CSC ProductKenmerken.prj.xml
===================================================================
diff -u
--- CSC ProductKenmerken.prj.xml (revision 0)
+++ CSC ProductKenmerken.prj.xml (revision 1826)
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Index: vhUnitTest/DOM/PM/TestProductKenmerkenSets.cls.xml
===================================================================
diff -u -r1775 -r1826
--- vhUnitTest/DOM/PM/TestProductKenmerkenSets.cls.xml (.../TestProductKenmerkenSets.cls.xml) (revision 1775)
+++ vhUnitTest/DOM/PM/TestProductKenmerkenSets.cls.xml (.../TestProductKenmerkenSets.cls.xml) (revision 1826)
@@ -39,19 +39,36 @@
]]>
+
+
+
+
DOM.PM.Classificatie
-
-
-Geef de kenmerkenset van het opgegeven PRNr.
-Deze mag ENKEL gebruikt worden indien zeker geweten is dat dit product geen multiples heeft.
-Indien dit niet zeker is (of de code gaat expliciet zelf controleren op multiple of non-multiple) dan moet
-de method GeefProductKenmerkenSets gebruikt worden.
+
1
-PRNr:%Integer,KenmerkenGroep:%String
-DOM.PM.ProductKenmerkenSet
+PRNr:%Integer
+DOM.PM.ProductKenmerken
-
-
-Geeft alle kenmerkensets van het gevraagde product. Maakt zelf onderscheid tussen multiple en non-multiple.
-1
-PRNr:%Integer,KenmerkenGroep:%String
-DOM.PM.ProductKenmerkenSets
-
-
1
ProductKenmerkenSet:DOM.PM.ProductKenmerkenSet
Index: DOM/PM/ProductKenmerkenSet.cls.xml
===================================================================
diff -u -r1777 -r1826
--- DOM/PM/ProductKenmerkenSet.cls.xml (.../ProductKenmerkenSet.cls.xml) (revision 1777)
+++ DOM/PM/ProductKenmerkenSet.cls.xml (.../ProductKenmerkenSet.cls.xml) (revision 1826)
@@ -7,6 +7,11 @@
1
0
+
+1
+%String
+
+
Geeft een iterator terug met alle kenmerken. Key/value pair.
Index: DOM/PM/impl/ProductKenmerkenSets.cls.xml
===================================================================
diff -u -r1775 -r1826
--- DOM/PM/impl/ProductKenmerkenSets.cls.xml (.../ProductKenmerkenSets.cls.xml) (revision 1775)
+++ DOM/PM/impl/ProductKenmerkenSets.cls.xml (.../ProductKenmerkenSets.cls.xml) (revision 1826)
@@ -91,7 +91,7 @@
]]>
-
+
Geeft een iterator terug van ProductKenmerkenSet.
Met voor iedere multiple een
@@ -132,7 +132,6 @@
BronUnID:%String
%ListOfDataTypes
+
+%String
+
+
+
TECH.Iterator
0){
Set ProductKenmerkenSet.GeneratieType = KenmerkenSet.GeefKenmerkWaarden("GeneratieType").GetAt(1)
@@ -398,7 +398,7 @@
While (UnIDIt.HasNext()){
Set UnID = UnIDIt.Next()
Set PRNr = ##class(BL.Kenm.ProdMulti).GetCommonID(UnID)
- Set ProductKenmerkenSets = ProductAPI.GeefProductKenmerkenSets(PRNr,KenmerkGroep)
+ Set ProductKenmerkenSets = ProductAPI.GeefProductKenmerken(PRNr).GeefProductKenmerkenSets(KenmerkGroep)
Set NieuweGewijzigdePRNrs = ProductKenmerkenSets.VerwijderKenmerkenSet(UnID)
Set GewijzigdePRNrs = ##class(TECH.ListUtils).CopyList(NieuweGewijzigdePRNrs,GewijzigdePRNrs)
}
@@ -445,7 +445,7 @@
}
Set PRNr = ##class(BL.Kenm.ProdMulti).GetCommonID(UnID)
- Set ProductKenmerkenSets = ProductAPI.GeefProductKenmerkenSets(PRNr,KenmerkGroep)
+ Set ProductKenmerkenSets = ProductAPI.GeefProductKenmerken(PRNr).GeefProductKenmerkenSets(KenmerkGroep)
/// Indien UnID een Auto is, kan er geen nieuwe kenmerkenset gecreeerd worden
Index: PRDUPLI.mac.rou
===================================================================
diff -u -r1777 -r1826
--- PRDUPLI.mac.rou (.../PRDUPLI.mac.rou) (revision 1777)
+++ PRDUPLI.mac.rou (.../PRDUPLI.mac.rou) (revision 1826)
@@ -160,22 +160,36 @@
. . Do ##class(BL.Prod.OptiBox.BoxData).%New().Copy("PR",PRNr,"PR",NewPRNr)
;Copieren van kenmerken
Set ProductAPI = ##class(DOM.DomeinContext).Instance().GeefProductAPI()
- Set ProductKenmerkenSets = ProductAPI.GeefProductKenmerkenSets(PRNr,"OL")
- If (ProductKenmerkenSets.GeefAantalSets()>0){ ; Heeft kenmerken
+ Set ProductKenmerken = ProductAPI.GeefProductKenmerken(PRNr)
+ If (ProductKenmerken.GeefKenmerkenSetsIterator().HasNext()){ ; Heeft kenmerken
Set X=$$^vhTXTPOP("PRDUPLI","COPYKENMERK","",$P(^KPR(PRNr,0),D,1))
If (X) { ;Copieren
+
+ Set KenmerkenSetsIterator = ProductKenmerken.GeefKenmerkenSetsIterator()
+ While (KenmerkenSetsIterator.HasNext())
+ {
+ Set ProductKenmerkenSets = KenmerkenSetsIterator.Next()
+ Set ProductKenmerkenSetsIterator = ProductKenmerkenSets.GeefProductKenmerkenSetIterator()
+ While (ProductKenmerkenSetsIterator.HasNext()) {
+ Set KenmerkenSet = ProductKenmerkenSetsIterator.Next()
+ Set NewUnID = KenmerkenSet.GeefUnID()
+ Set $Piece(NewUnID,".") = NewPRNr
+ Do ##class(Prod.Kenmerk.DataDefinitie).CopyViaPRNr(KenmerkenSet.GeefUnID(),NewUnID,$LB(KenmerkenSet.GeefGroep()),0,,$LB("OEI")) ; exclude OEI kenmerken
+ }
+ }
+
Set lbClearKenmerken= $LB("GeneratieType","MasterVoorBreedtes","MasterVoorDieptes","MasterVoorKleuren","MasterVoorWandDiktes")
Set lbClearKenmerken = lbClearKenmerken_$LB("SleutelVarFotoB","SleutelVarFotoD","SleutelVarFotoKlr","SleutelVarFotoWD","SleutelVarTekstB","SleutelVarTekstD","SleutelVarTekstKlr","SleutelVarTekstWD")
- Set KenmerkenSetsIterator = ProductKenmerkenSets.GeefKenmerkenSets()
- While (KenmerkenSetsIterator.HasNext()) {
- Set KenmerkenSet = KenmerkenSetsIterator.Next()
+ Set ProductKenmerkenSetsIterator = ProductKenmerken.GeefProductKenmerkenSets("OL").GeefProductKenmerkenSetIterator()
+ While (ProductKenmerkenSetsIterator.HasNext()) {
+ Set KenmerkenSet = ProductKenmerkenSetsIterator.Next()
Set NewUnID = KenmerkenSet.GeefUnID()
- Set $Piece(NewUnID,".") = NewPRNr
- Do ##class(Prod.Kenmerk.DataDefinitie).CopyViaPRNr(KenmerkenSet.GeefUnID(),NewUnID,,0,,$LB("OEI")) ; exclude OEI kenmerken
+ Set $Piece(NewUnID,".") = NewPRNr
For i = 1 : 1 : $LL(lbClearKenmerken) {
- Do ##class(Prod.Kenmerk.DataDefinitie).DeleteKM("OL",NewUnID,$LI(lbClearKenmerken,i))
- }
+ Do ##class(Prod.Kenmerk.DataDefinitie).DeleteKM("OL",NewUnID,$LI(lbClearKenmerken,i))
+ }
}
+
}
}
Index: DOM/PM/impl/ProductKenmerken.cls.xml
===================================================================
diff -u
--- DOM/PM/impl/ProductKenmerken.cls.xml (revision 0)
+++ DOM/PM/impl/ProductKenmerken.cls.xml (revision 1826)
@@ -0,0 +1,90 @@
+
+
+
+1
+%RegisteredObject,DOM.PM.ProductKenmerken
+0
+
+
+DOM.PM.impl.ProductKenmerkenSets
+array
+1
+
+
+
+%Integer
+1
+
+
+
+PRNr:%Integer
+1
+1
+%Status
+
+
+
+
+TECH.Iterator
+
+
+
+
+KenmerkGroep:%String
+DOM.PM.ProductKenmerkenSets
+
+
+
+
+KenmerkGroep:%String
+DOM.PM.ProductKenmerkenSet
+
+
+
+
+KenmerkGroep
+%Boolean
+
+
+
+
+1
+%ArrayOfObjects
+Groep) AS Groep FROM Prod_Kenmerk.DataDefinitie WHERE $Piece(UnID,'.',1) = ?")
+ Do ResultSet.Execute(..PRNr)
+ While (ResultSet.Next())
+ {
+ Set Groep = ResultSet.Data("Groep")
+ Do r%KenmerkenSets.SetAt(##class(DOM.PM.impl.ProductKenmerkenSets).%New(Groep,..PRNr),Groep)
+ }
+ }
+ Quit r%KenmerkenSets
+]]>
+
+
+
Index: DOM/PM/ProductKenmerken.cls.xml
===================================================================
diff -u
--- DOM/PM/ProductKenmerken.cls.xml (revision 0)
+++ DOM/PM/ProductKenmerken.cls.xml (revision 1826)
@@ -0,0 +1,38 @@
+
+
+
+1
+1
+0
+
+
+1
+TECH.Iterator
+
+
+
+
+Geef de kenmerkenset van het opgegeven PRNr.
+Deze mag ENKEL gebruikt worden indien zeker geweten is dat dit product geen multiples heeft.
+Indien dit niet zeker is (of de code gaat expliciet zelf controleren op multiple of non-multiple) dan moet
+de method GeefProductKenmerkenSets gebruikt worden.
+1
+KenmerkGroep:%String
+DOM.PM.ProductKenmerkenSet
+
+
+
+
+Geeft alle kenmerkensets van het gevraagde product. Maakt zelf onderscheid tussen multiple en non-multiple.
+1
+KenmerkGroep:%String
+DOM.PM.ProductKenmerkenSets
+
+
+
+1
+KenmerkGroep
+%Boolean
+
+
+
Index: DOM/PM/impl/DataM/DataMProductAPI.cls.xml
===================================================================
diff -u -r1792 -r1826
--- DOM/PM/impl/DataM/DataMProductAPI.cls.xml (.../DataMProductAPI.cls.xml) (revision 1792)
+++ DOM/PM/impl/DataM/DataMProductAPI.cls.xml (.../DataMProductAPI.cls.xml) (revision 1826)
@@ -201,26 +201,13 @@
]]>
-
-
-Geef de enige kenmerkenset van het opgegeven PRNr
-PRNr:%Integer,KenmerkGroep:%String
-DOM.PM.ProductKenmerkenSet
-
+PRNr:%Integer
+DOM.PM.ProductKenmerken
+
-
-
-Geef meerdere kenmerkenset van het opgegeven PRNr, bij multiples
-PRNr:%Integer,KenmerkGroep:%String
-DOM.PM.ProductKenmerkenSets
-
-
-
ProductKenmerkenSet:DOM.PM.ProductKenmerkenSet
Prod.Kenmerk.Orgalux
@@ -252,7 +239,7 @@
Set KenmerkenSet = KenmerkenSetIt.Next()
Set UnID = KenmerkenSet.UnID
- Set ProductKenmerkenSets = ..GeefProductKenmerkenSets(PRNr,KenmerkGroep.Naam)
+ Set ProductKenmerkenSets = ..GeefProductKenmerken(PRNr).GeefProductKenmerkenSets(KenmerkGroep.Naam)
Set ProductKenmerkenSet = ProductKenmerkenSets.GeefKenmerkenSet(UnID)
/// Nagaan dat product als GeneratieType niet AUTO is.
Index: APPS/PM/OL/MasterAutoGenerator.cls.xml
===================================================================
diff -u -r1775 -r1826
--- APPS/PM/OL/MasterAutoGenerator.cls.xml (.../MasterAutoGenerator.cls.xml) (revision 1775)
+++ APPS/PM/OL/MasterAutoGenerator.cls.xml (.../MasterAutoGenerator.cls.xml) (revision 1826)
@@ -242,7 +242,7 @@
Set ProdKM.KortTekst=KTFromAdmin
Set ProdKM.TeVerwijderen=0
// Alle kenmerken invullen
- Set KenmerkenSet = ##class(DOM.DomeinContext).Instance().GeefProductAPI().GeefProductKenmerkenSets(ProdKM.PRNr, ..KenmerkGroepID).GeefKenmerkenSets().Next()
+ Set KenmerkenSet = ##class(DOM.DomeinContext).Instance().GeefProductAPI().GeefProductKenmerken(ProdKM.PRNr).GeefProductKenmerkenSet(..KenmerkGroepID)
Set KenmerkenIt = KenmerkenSet.GeefKenmerkenIterator()
While (KenmerkenIt.HasNext()) {