Index: WSimpl/PM/Maatwerk/MaatwerkService/DotNet/HalffabrikatenFromJsonNaarDomConverter.cls.xml =================================================================== diff -u -r67588 -r67605 --- WSimpl/PM/Maatwerk/MaatwerkService/DotNet/HalffabrikatenFromJsonNaarDomConverter.cls.xml (.../HalffabrikatenFromJsonNaarDomConverter.cls.xml) (revision 67588) +++ WSimpl/PM/Maatwerk/MaatwerkService/DotNet/HalffabrikatenFromJsonNaarDomConverter.cls.xml (.../HalffabrikatenFromJsonNaarDomConverter.cls.xml) (revision 67605) @@ -109,6 +109,10 @@ #dim SubHalffabItemParsedFromJson As APPS.PM.Maatwerk.dto.DotNet.HalffabItemParsedFromJson = HalffabItemIterator.Next() #dim SubHalffabItem As DOM.PM.Maatwerk.Calc.HF.IHalffabItem = ..GeefHalffabItem(SubHalffabItemParsedFromJson) Do HalffabItem.VoegToe(SubHalffabItem) + If (SubHalffabItem.%Extends("DOM.PM.Maatwerk.Calc.HF.InbegrepenHalffabItem")) + { + Do ..ZetReferentieHalffabItem(SubHalffabItem, SubHalffabItemParsedFromJson) + } } Set HalffabItem.Aantal = +(HalffabItemParsedFromJson.Aantal) Set HalffabItem.Gewicht = +(HalffabItemParsedFromJson.Gewicht) @@ -159,7 +163,8 @@ ElseIf Classname = "DOM.PM.Maatwerk.Calc.HF.InbegrepenHalffabItem" { #dim HalffabInbegrepen As DOM.PM.Maatwerk.Calc.HF.Halffab = ..GeefHalffab(HalffabItemParsedFromJson) Set HalffabItem = ##class(DOM.PM.Maatwerk.Calc.HF.InbegrepenHalffabItem).%New("", HF.Rol, HalffabInbegrepen) - + + // Invullen van ReferentieHalffabItem gebeurt na "Do HalffabItem.VoegToe(SubHalffabItem)" Set HalffabItem.Aantal = +(HalffabItemParsedFromJson.Aantal) Set HalffabItem.Gewicht = +(HalffabItemParsedFromJson.Gewicht) Do HalffabItem.ZetMagazijnZoneID(HalffabItemParsedFromJson.MagazijnZoneID) @@ -202,18 +207,41 @@ } } Else { - Do ##class(TECH.Exceptions.UnimplementedException).Throw("Geen implementatie voor halffabitem klasse '"_Classname_"'") //InbegrepenHalffab is nog niet geimplementeerd + Do ##class(TECH.Exceptions.UnimplementedException).Throw("Geen implementatie voor halffabitem klasse '"_Classname_"'") } If (..IsRolOpTeNemenInHalffabItemsLookup(HF.Rol) || (Classname = "DOM.PM.Maatwerk.Calc.HF.MaatwerkProductHalffabItem")) { Do:($IsObject(HalffabItem)) ..HalffabItemsBoom.AddHalffabItem(HalffabItem) - } Quit HalffabItem ]]> + +InbegrepenHalffabItem:DOM.PM.Maatwerk.Calc.HF.InbegrepenHalffabItem,HalffabItemParsedFromJson:APPS.PM.Maatwerk.dto.DotNet.HalffabItemParsedFromJson +1 +"_HalffabItemParsedFromJson.HalffabItem.Rol // HalffabItem wordt ReferentieHalffabItem + Set ReferentieHalffabItem = ..HalffabItemsBoom.GeefHalffabItem(TeZoekenRol) + } Else { + Set TeZoekenRol = HalffabItemParsedFromJson.HalffabItem.Rol // HalffabItem wordt ReferentieHalffabItem + #dim ParentHalffabItem As DOM.PM.Maatwerk.Calc.HF.SamengesteldHalffabItem = InbegrepenHalffabItem.ParentItem + Set ReferentieHalffabItem = ParentHalffabItem.GeefHalffabItem(TeZoekenRol) + } + + If ($IsObject(ReferentieHalffabItem)) { + Set InbegrepenHalffabItem.HalffabItem = ReferentieHalffabItem + } +]]> + + HalffabItemParsedFromJson:APPS.PM.Maatwerk.dto.DotNet.HalffabItemParsedFromJson 1