Index: WSimpl/AX/CalculatedProduct/RequestConverter.cls.xml =================================================================== diff -u -r43322 -r43357 --- WSimpl/AX/CalculatedProduct/RequestConverter.cls.xml (.../RequestConverter.cls.xml) (revision 43322) +++ WSimpl/AX/CalculatedProduct/RequestConverter.cls.xml (.../RequestConverter.cls.xml) (revision 43357) @@ -18,8 +18,13 @@ 1 + +WSimpl.AX.CalculatedProduct.BouwsteenConverter +1 + + -ProductApi:DOM.PM.ProductAPI="",InterneFirmaBepaler:WSimpl.AX.CalculatedProduct.InterneFirmaBepaler="",VariantDescriptionBepaler:WSimpl.AX.CalculatedProduct.VariantDescriptionBepaler="" +ProductApi:DOM.PM.ProductAPI="",InterneFirmaBepaler:WSimpl.AX.CalculatedProduct.InterneFirmaBepaler="",VariantDescriptionBepaler:WSimpl.AX.CalculatedProduct.VariantDescriptionBepaler="",BouwsteenConverter:WSimpl.AX.CalculatedProduct.BouwsteenConverter="" 1 1 %Status @@ -28,6 +33,7 @@ Set ..ProductApi = $$$Inject(ProductApi, ##class(DOM.DomeinContext).Instance().GeefProductAPI()) Set ..InterneFirmaBepaler = $$$Inject(InterneFirmaBepaler, ##class(WSimpl.AX.CalculatedProduct.InterneFirmaBepaler).%New()) Set ..VariantDescriptionBepaler = $$$Inject(VariantDescriptionBepaler, ##class(WSimpl.AX.CalculatedProduct.VariantDescriptionBepaler).%New()) + Set ..BouwsteenConverter = $$$Inject(BouwsteenConverter, ##class(WSimpl.AX.CalculatedProduct.BouwsteenConverter).%New()) Quit $$$OK ]]> @@ -54,6 +60,13 @@ Set ConfigVariant.ProductName = Product.GeefKorttekst() Set ConfigVariant.CostPrice = Product.GeefNettoAankoopPrijsInclCif() Set ConfigVariant.VariantDescription = ..VariantDescriptionBepaler.Bepaal(Product, ConfigVariant.ConfigVariantId) + + #dim HalffabricaatBouwstenenIterator As TECH.Iterator = Product.GeefHFBouwstenenIterator() + + While (HalffabricaatBouwstenenIterator.HasNext()) { + #dim HalffabricaatBouwsteen As DOM.PM.Bouwstenen.BouwsteenHalfFabr = HalffabricaatBouwstenenIterator.Next() + #dim BomLine As AXif.Dynamics.CalculatedProductOut.MessageParts.AxdEntityBOMLine = ..BouwsteenConverter.Convert(HalffabricaatBouwsteen) + } } Else { Set ConfigVariant.ErrorText = ##class(WSimpl.AX.CalculatedProduct.Converter.enu.ErrorText).NotFound() } Index: vhTest/Dummy/DOM/PM/Product.cls.xml =================================================================== diff -u -r43075 -r43357 --- vhTest/Dummy/DOM/PM/Product.cls.xml (.../Product.cls.xml) (revision 43075) +++ vhTest/Dummy/DOM/PM/Product.cls.xml (.../Product.cls.xml) (revision 43357) @@ -113,7 +113,7 @@ TECH.Iterator - Index: vhUnitTest/WSimpl/AX/CalculatedProduct/RequestConverter/Test/ProductData.cls.xml =================================================================== diff -u -r43322 -r43357 --- vhUnitTest/WSimpl/AX/CalculatedProduct/RequestConverter/Test/ProductData.cls.xml (.../ProductData.cls.xml) (revision 43322) +++ vhUnitTest/WSimpl/AX/CalculatedProduct/RequestConverter/Test/ProductData.cls.xml (.../ProductData.cls.xml) (revision 43357) @@ -32,14 +32,17 @@ + + +TECH.RegisteredObject + + +HalffabricaatBouwsteen:DOM.PM.Bouwstenen.BouwsteenHalfFabr +AXif.Dynamics.CalculatedProductOut.MessageParts.AxdEntityBOMLine + + + + + Index: vhUnitTest/WSimpl/AX/CalculatedProduct/RequestConverter/Test.cls.xml =================================================================== diff -u -r43322 -r43357 --- vhUnitTest/WSimpl/AX/CalculatedProduct/RequestConverter/Test.cls.xml (.../Test.cls.xml) (revision 43322) +++ vhUnitTest/WSimpl/AX/CalculatedProduct/RequestConverter/Test.cls.xml (.../Test.cls.xml) (revision 43357) @@ -24,11 +24,13 @@ Set ..DummyRequest.ItemId = RandomItemId + #dim BouwstenenIteratorDummy As TECH.Iterator = ##class(TECH.ListIterator).%New(##class(%ListOfObjects).%New()) #dim ProductStub As vhTest.Mock.DOM.PM.Product = ##class(vhTest.Mock.DOM.PM.Product).%New() Do ProductStub.IndienMethodCall("GeefEANCode") Do ProductStub.IndienMethodCall("GeefPRNr").DanReturn(RandomItemId) Do ProductStub.IndienMethodCall("GeefKorttekst") Do ProductStub.IndienMethodCall("GeefNettoAankoopPrijsInclCif") + Do ProductStub.IndienMethodCall("GeefHFBouwstenenIterator").DanReturn(BouwstenenIteratorDummy) #dim ProductApiMock As vhTest.Mock.DOM.PM.ProductAPI = ##class(vhTest.Mock.DOM.PM.ProductAPI).%New() Do ProductApiMock.VerwachtMethodCall("BestaatProduct", RandomItemId).DanReturn($$$True)