Index: APPS/PM/dto/Kenm/KenmerkMetadataList.cls.xml
===================================================================
diff -u -r1112 -r1519
--- APPS/PM/dto/Kenm/KenmerkMetadataList.cls.xml (.../KenmerkMetadataList.cls.xml) (revision 1112)
+++ APPS/PM/dto/Kenm/KenmerkMetadataList.cls.xml (.../KenmerkMetadataList.cls.xml) (revision 1519)
@@ -8,8 +8,8 @@
%RegisteredObject,%XML.Adaptor
0
-
-APPS.PM.dto.Kenm.KenmerkMetadata
+
+APPS.PM.dto.Kenm.KenmerkGroepMetadata
list
Index: Prod/Kenmerk/DataDefinitie.cls.xml
===================================================================
diff -u -r1507 -r1519
--- Prod/Kenmerk/DataDefinitie.cls.xml (.../DataDefinitie.cls.xml) (revision 1507)
+++ Prod/Kenmerk/DataDefinitie.cls.xml (.../DataDefinitie.cls.xml) (revision 1519)
@@ -201,7 +201,7 @@
Oproepen via :
Set sc=##class(Prod.Kenmerk.DataDefinitie).WijzigOfMaak("OL",89973,"Diepte","45",";",17)
1
-GroepID:%String,UnID:%String,KenmerkNaam:%String,Waarden,Delimiter:%String,UserID:%String,Formule:%String=""
+GroepID:%String,UnID:%String,KenmerkNaam:%String,Waarden,Delimiter:%String,UserID:%String,Formule:%String="",RaiseEvent:%Boolean=1
1
%Status
Index: APPS/PM/dto/Kenm/KenmerkGroepMetadata.cls.xml
===================================================================
diff -u
--- APPS/PM/dto/Kenm/KenmerkGroepMetadata.cls.xml (revision 0)
+++ APPS/PM/dto/Kenm/KenmerkGroepMetadata.cls.xml (revision 1519)
@@ -0,0 +1,27 @@
+
+
+
+
+JBL + 2011-06-25
+1
+%RegisteredObject,%XML.Adaptor
+0
+
+
+%String
+
+
+
+%Boolean
+
+
+
+%Boolean
+
+
+
+APPS.PM.dto.Kenm.KenmerkMetadata
+list
+
+
+
Index: DOM/PM/impl/ProductKenmerkenSet.cls.xml
===================================================================
diff -u -r1517 -r1519
--- DOM/PM/impl/ProductKenmerkenSet.cls.xml (.../ProductKenmerkenSet.cls.xml) (revision 1517)
+++ DOM/PM/impl/ProductKenmerkenSet.cls.xml (.../ProductKenmerkenSet.cls.xml) (revision 1519)
@@ -96,10 +96,24 @@
Set Wijziging = ""
Set Identifier = ##class(Prod.Kenmerk.DataDefinitie).BuildDataDefinitionID(..KenmerkGroep,..UnID,KenmerkNaam)
+
+ /// Als het kenmerk nog niet aanwezig is, mag het toch aangemaakt worden.
If '##class(Prod.Kenmerk.DataDefinitie).%ExistsId(Identifier)
{
- Set ErrorMsg = "Kenmerk "_Identifier_" voor UnID "_..UnID_" is niet gevonden."
+ /// Nieuw kenmerk aanmaken.
+ Set LBWaarden = ##class(TECH.ListUtils).ListToListbuild(Waarden)
+ Set GebruikerInitialen = ##class(TECH.Context.RuntimeContext).Instance().GeefGebruikerInitialen()
+ Set RaiseEvent = 0
+
+ Set sc=##class(Prod.Kenmerk.DataDefinitie).WijzigOfMaak(..KenmerkGroep,..UnID,KenmerkNaam,LBWaarden,,GebruikerInitialen,,RaiseEvent)
+
+ If ($$$ISERR(sc)){
+ Set ErrorMsg = "Prod.Kenmerk.DataDefinitie is niet correct verlopen. Kenmerk is niet aangemaakt voor "_..KenmerkGroep_"||"_..UnID_"||"_KenmerkNaam_". "_$$ParseStatus^vhLib(sc)
+ }Else{
+ Set Wijziging = ##class(TECH.Events.KenmerkModifiedEventData).%New(..UnID,..KenmerkGroep,KenmerkNaam,Waarden)
+ }
}Else{
+
Set Kenmerk = ##class(Prod.Kenmerk.DataDefinitie).OpenId(Identifier)
If ($IsObject(Kenmerk))
{
@@ -117,7 +131,7 @@
If (IsGewijzigd)
{
Do Kenmerk.Waarden.Clear()
- Do ##class(TECH.ListUtils).CopyList(Waarden,Kenmerk.Waarden)
+ Set Kenmerk.Waarden = ##class(TECH.ListUtils).CopyList(Waarden,Kenmerk.Waarden)
Set Kenmerk.IsEventRaiser = ..RaiseEvent //Indien bulk wijziging is mag dit geen event raisen en is aanroeper verantwoordelijk voor zelf het event te raisen.
Set Status = Kenmerk.Save()
If $$$ISERR(Status)
Index: vhUnitTest/APPS/PM/TestKenmerkenService.cls.xml
===================================================================
diff -u -r1517 -r1519
--- vhUnitTest/APPS/PM/TestKenmerkenService.cls.xml (.../TestKenmerkenService.cls.xml) (revision 1517)
+++ vhUnitTest/APPS/PM/TestKenmerkenService.cls.xml (.../TestKenmerkenService.cls.xml) (revision 1519)
@@ -103,10 +103,13 @@
Set KenmerkGroepen = ##class(%ListOfDataTypes).%New()
Do KenmerkGroepen.Insert("OL")
- Set KenmerkMetadata = KenmerkenService.GeefMetadata(KenmerkGroepen).Items
+ Set KenmerkGroepMetadata = KenmerkenService.GeefMetadata(KenmerkGroepen).KenmerkGroepen
- Do $$$AssertEquals(KenmerkMetadata.Count(),51,"Correct aantal kenmerken (#51)")
+ Do $$$AssertEquals(KenmerkGroepMetadata.Count(),1,"Correct aantal kenmerkengroepen (#1)")
+ Do $$$AssertEquals(KenmerkGroepMetadata.GetAt(1).Naam,"OL","Correcte naam kenmerkengroep (OL)")
+ Set KenmerkMetadata = KenmerkGroepMetadata.GetAt(1).Kenmerken
+
Set EenKenmerkMetadata = KenmerkMetadata.GetAt(1)
Do $$$AssertEquals(EenKenmerkMetadata.Naam,"ProductType","Kenmerknaam is correct ingevuld.")
Do $$$AssertEquals(EenKenmerkMetadata.Multipliciteit.Minimum,0,"Multipliciteit minimum correct ingevuld.")
Index: APPS/PM/KenmerkenService.cls.xml
===================================================================
diff -u -r1517 -r1519
--- APPS/PM/KenmerkenService.cls.xml (.../KenmerkenService.cls.xml) (revision 1517)
+++ APPS/PM/KenmerkenService.cls.xml (.../KenmerkenService.cls.xml) (revision 1519)
@@ -201,7 +201,7 @@
APPS.PM.dto.Kenm.KenmerkMetadataList