Index: WSimpl/Vhisie4/Winkelkar/MultipersonalityPrijsWebservice/BerekenProductPrijzen.cls.xml =================================================================== diff -u -r62093 -r62102 --- WSimpl/Vhisie4/Winkelkar/MultipersonalityPrijsWebservice/BerekenProductPrijzen.cls.xml (.../BerekenProductPrijzen.cls.xml) (revision 62093) +++ WSimpl/Vhisie4/Winkelkar/MultipersonalityPrijsWebservice/BerekenProductPrijzen.cls.xml (.../BerekenProductPrijzen.cls.xml) (revision 62102) @@ -72,13 +72,20 @@ Set Request.CalcPrice = $$$True Set Request.CalcStock = $$$False Set Request.MessageId = MessageId - Set Request.Lines = BerekenProductPrijzenRequest.Lines - #dim LinesIterator As TECH.Iterator = ##class(TECH.ListIterator).%New(Request.Lines) + #dim LinesIterator As TECH.Iterator = ##class(TECH.ListIterator).%New(BerekenProductPrijzenRequest.Lines) While (LinesIterator.HasNext()) { - #dim Line As AXif.Dynamics.SalesPriceOut.MessageParts.ADUSalesPriceLineInputDC = LinesIterator.Next() - Set Line.MessageId = MessageId + #dim Line As WS.Vhisie4.Winkelkar.dto.MultipersonalityPrijsWebservice.PrijsLijnInput = LinesIterator.Next() + Set NewLine = ##class(AXif.Dynamics.SalesPriceOut.MessageParts.ADUSalesPriceLineInputDC).%New() + Set NewLine.CostPrice = Line.CostPrice + Set NewLine.CurrencyCode = Line.CurrencyCode + Set NewLine.ItemId = Line.ItemId + Set NewLine.Qty = Line.Qty + Set NewLine.SalesUnit = Line.SalesUnit + Set NewLine.TransDate = Line.TransDate + Set NewLine.MessageId = MessageId + Do Request.Lines.Insert(NewLine) } ;haal korting voor klant @@ -101,7 +108,7 @@ Set Product.Price = Product.Price * Markup Set Product.Price = Product.Price - (Product.Price * KortingPercentage) - } + } } Catch { #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch() Do ##class(vhLib.Logger).%New().LogExceptie(Exception) Index: vhUnitTest/WSimpl/Vhisie4/Winkelkar/MultipersonalityPrijsWebservice/BerekenProductPrijzen/Test.cls.xml =================================================================== diff -u -r62088 -r62102 --- vhUnitTest/WSimpl/Vhisie4/Winkelkar/MultipersonalityPrijsWebservice/BerekenProductPrijzen/Test.cls.xml (.../Test.cls.xml) (revision 62088) +++ vhUnitTest/WSimpl/Vhisie4/Winkelkar/MultipersonalityPrijsWebservice/BerekenProductPrijzen/Test.cls.xml (.../Test.cls.xml) (revision 62102) @@ -3,6 +3,45 @@ vhUnitTest.TestCase + + + + + + + + + + + + + +1 +WS.Vhisie4.Winkelkar.BerekenProductPrijzenRequest + + + 1 WS.Vhisie4.Winkelkar.BerekenProductPrijzenRequest @@ -149,7 +245,7 @@ Set BerekenProductPrijzenRequest.CustAccount = 1234 Set BerekenProductPrijzenRequest.MessageId = "MessageID" - Set InputLine = ##class(AXif.Dynamics.SalesPriceOut.MessageParts.ADUSalesPriceLineInputDC).%New() + Set InputLine = ##class(WS.Vhisie4.Winkelkar.dto.MultipersonalityPrijsWebservice.PrijsLijnInput).%New() Set InputLine.CurrencyCode = "EUR" Set InputLine.ItemId = 5678 Set InputLine.Qty = 1 @@ -169,14 +265,14 @@ Set BerekenProductPrijzenRequest.PersonalityID = 33 Set BerekenProductPrijzenRequest.CustAccount = 1234 - Set InputLine = ##class(AXif.Dynamics.SalesPriceOut.MessageParts.ADUSalesPriceLineInputDC).%New() + Set InputLine = ##class(WS.Vhisie4.Winkelkar.dto.MultipersonalityPrijsWebservice.PrijsLijnInput).%New() Set InputLine.CurrencyCode = "EUR" Set InputLine.ItemId = 5678 Set InputLine.Qty = 1 Set InputLine.SalesUnit = "STK" Set InputLine.TransDate = "2020-09-02" Do BerekenProductPrijzenRequest.Lines.Insert(InputLine) - Set InputLine2 = ##class(AXif.Dynamics.SalesPriceOut.MessageParts.ADUSalesPriceLineInputDC).%New() + Set InputLine2 = ##class(WS.Vhisie4.Winkelkar.dto.MultipersonalityPrijsWebservice.PrijsLijnInput).%New() Set InputLine2.CurrencyCode = "EUR" Set InputLine2.ItemId = 56789 Set InputLine2.Qty = 1 @@ -189,20 +285,44 @@ -Lines:AXif.Dynamics.SalesPriceOut.MessageParts.ADUSalesPriceLineInputDC,Personality:DOM.common.Personality,MessageID:%String +Lines:WS.Vhisie4.Winkelkar.dto.MultipersonalityPrijsWebservice.PrijsLijnInput,Personality:DOM.common.Personality,MessageID:%String AXif.Dynamics.SalesPriceOut.MessageParts.ADUSalesPriceHeaderInputDC + +1 +AXif.Dynamics.SalesPriceIn.MessageParts.ADUSalesPriceHeaderOutputDC + + + 1 AXif.Dynamics.SalesPriceIn.MessageParts.ADUSalesPriceHeaderOutputDC Index: WS/Vhisie4/Winkelkar/BerekenProductPrijzenRequest.cls.xml =================================================================== diff -u -r62083 -r62102 --- WS/Vhisie4/Winkelkar/BerekenProductPrijzenRequest.cls.xml (.../BerekenProductPrijzenRequest.cls.xml) (revision 62083) +++ WS/Vhisie4/Winkelkar/BerekenProductPrijzenRequest.cls.xml (.../BerekenProductPrijzenRequest.cls.xml) (revision 62102) @@ -4,31 +4,76 @@ AXif.Dynamics.SalesPriceOut.MessageParts.XppObjectBase 1 -WS.Vhisie4.Winkelkar.dto.MultipersonalityPrijsWebservice.PrijsHeaderInput +WS.Vhisie4.Winkelkar.dto.MultipersonalityPrijsWebservice.XppObjectBase 1 -http://schemas.datacontract.org/2004/07/Dynamics.Ax.Application_VH +http://schemas.datacontract.org/2004/07/Dynamics.Ax.Application - -Parameter XMLIGNOREINVALIDTAG As BOOLEAN = 1; ADUSalesPriceHeaderInputDC + +1 + + 1 + +%Boolean + + + + +%Boolean + + + + +%String + + + + + +WS.Vhisie4.Winkelkar.dto.MultipersonalityPrijsWebservice.PrijsLijnInput +list + + + + + + +WS.Vhisie4.Winkelkar.dto.MultipersonalityPrijsWebservice.guid + + + %String + + + +%Status + + Index: WS/Vhisie4/Winkelkar/dto/MultipersonalityPrijsWebservice/PrijsLijnInput.cls.xml =================================================================== diff -u -r62083 -r62102 --- WS/Vhisie4/Winkelkar/dto/MultipersonalityPrijsWebservice/PrijsLijnInput.cls.xml (.../PrijsLijnInput.cls.xml) (revision 62083) +++ WS/Vhisie4/Winkelkar/dto/MultipersonalityPrijsWebservice/PrijsLijnInput.cls.xml (.../PrijsLijnInput.cls.xml) (revision 62102) @@ -6,6 +6,10 @@ 1 WS.Vhisie4.Winkelkar.dto.MultipersonalityPrijsWebservice.XppObjectBase + +0 + + 1