TECH.RegisteredObject DOM.PM.Maatwerk.Calc.HF.HalffabContext 1 1 %Status 1 %Query BodemRug:APPS.Halux.PPS.TBXZaag.enu.BodemRug 1 1 %Status 1 qPlatenLijstExecute %Status 1 qPlatenLijstExecute %Status BodemRug:APPS.Halux.PPS.TBXZaag.enu.BodemRug 1 %ListOfObjects ELEMENTTYPE="APPS.Halux.PPS.TBXZaag.dto.MVXPlaatMateriaal" Rol:DOM.PM.Maatwerk.Calc.HF.enu.MVXRol 1 %ListOfObjects ELEMENTTYPE="DOM.PM.Maatwerk.Calc.HF.Halffab" Rol:DOM.PM.Maatwerk.Calc.HF.enu.MVXRol 1 DOM.PM.Maatwerk.Calc.HF.IHalffabItemBuilder PlaatMateriaalLijst:%ListOfObjects(ELEMENTTYPE="APPS.Halux.PPS.TBXZaag.dto.MVXPlaatMateriaal"),HalffabLijst:%ListOfObjects(ELEMENTTYPE="DOM.PM.Maatwerk.Calc.HF.Halffab"),PlaatType:APPS.Halux.PPS.TBXZaag.enu.BodemRug,Rol:DOM.PM.Maatwerk.Calc.HF.enu.MVXRol 1 MVX? #dim AftrekDiepte = $S(Halffab.RugWandMateriaal = ##class(DOM.PM.enu.MVXRugWandMateriaal).Staal(): 22, 1: 26) #dim PlaatKleuren As %List = ##class(Prod.Kenmerk.DataDefinitie).Get("MVX_PPS_"_Rol, Halffab.GeefProductID(), "Kleur") // TODOPA FSC claim ophalen #dim PlaatClaim = "" #dim ProductID As %String = Halffab.GeefProductID() #dim AdministratiefProduct As DOM.PM.AdministratiefProduct = ##class(DOM.DomeinContext).Instance().GeefProductRolAPI().GeefAdministratiefProduct(ProductID) #dim Korttekst As %String = AdministratiefProduct.GeefKorttekst() Set PlaatMateriaal = ##class(APPS.Halux.PPS.TBXZaag.dto.MVXPlaatMateriaal).%New() Set PlaatMateriaal.ProductNr = ProductID Set PlaatMateriaal.Type = PlaatType Set PlaatMateriaal.Kleuren = ..VertaalKleuren(PlaatKleuren) Set PlaatMateriaal.KortTekst = Korttekst // TODOPA niet alle kleurcombinaties hebben al een thumbnail (maar niet zeker of ze gebruikt worden op de zaag) // TODOPA indien gebruikt moeten we mogelijk nieuwe thumbnails maken voor MVX. Set PlaatMateriaal.ImageURL =..GeefBiKleurenImageURL(PlaatKleuren) // TODOPA ruggen hebben nog geen PPS-kenmerk "Kleur" If (Rol = ##class(DOM.PM.Maatwerk.Calc.HF.enu.MVXRol).Bodem()) { Set PlaatMateriaal.Hoogte = Halffab.LadeDiepte - AftrekDiepte Set PlaatMateriaal.HoogteOms = Halffab.LadeDiepte _ " " _ PlaatMateriaal.Hoogte Set PlaatMateriaal.HoogteEnKleurOms = "MVX" _ " " _ PlaatMateriaal.HoogteOms_" "_PlaatMateriaal.Kleuren_" "_ PlaatClaim _ Halffab.RugWandMateriaal } ElseIf (Rol = ##class(DOM.PM.Maatwerk.Calc.HF.enu.MVXRol).Rug()) { #dim RugUtils As DOM.PM.Maatwerk.Lade.RugUtils = ##class(DOM.DomeinContext).Instance().GeefMaatwerkCalcAPI().GeefLadeRugUtils(##class(DOM.PM.enu.LadeVariant).MVX()) #dim RHmm As %Decimal = RugUtils.GeefRugHoogteInMm(Halffab.RugHoogte) Set PlaatMateriaal.Hoogte = RHmm Set PlaatMateriaal.HoogteOms = Halffab.RugHoogte _ " " _ PlaatMateriaal.Hoogte Set PlaatMateriaal.HoogteEnKleurOms = "MVX" _ " " _ PlaatMateriaal.HoogteOms_" "_PlaatMateriaal.Kleuren_" "_ PlaatClaim } // QUICKFIX DIE WEG MAG ZODRA ALLE LADEDIEPTES VOOR MVX GEIMPLEMENTEERD ZIJN (PM heeft reeds data, halffabjes, voorzien ervoor, waarbij LadeDiepte daarvoor null is momenteel) #dim IsPlaatMateriaalHoogteNegatiefOfNul As %Boolean = (+PlaatMateriaal.Hoogte <= 0) #dim IsPlaatMateriaalHoogteLeeg As %Boolean = (PlaatMateriaal.Hoogte = "") If ($$$Not(IsPlaatMateriaalHoogteLeeg) && $$$Not(IsPlaatMateriaalHoogteNegatiefOfNul)) { Do PlaatMateriaalLijst.Insert(PlaatMateriaal) } } ]]> KleurenLijst:%List 1 %String 1) { Set Kleuren = $$ListToPieces^vhLib(KleurenLijst,"/") } Else { Set Kleuren = $LG(KleurenLijst) } Quit Kleuren ]]> KleurCode:%String 1 PlaatKleuren:%List 1