Index: AXimpl/Dynamics/SalesOrderIn/Converter/OrderLijnenUpdater.cls.xml =================================================================== diff -u -r47337 -r47341 --- AXimpl/Dynamics/SalesOrderIn/Converter/OrderLijnenUpdater.cls.xml (.../OrderLijnenUpdater.cls.xml) (revision 47337) +++ AXimpl/Dynamics/SalesOrderIn/Converter/OrderLijnenUpdater.cls.xml (.../OrderLijnenUpdater.cls.xml) (revision 47341) @@ -26,16 +26,22 @@ Order:DOM.VKP.impl.DataM.DataMOrder,OrderLijnenLijst:%ListOfObjects (..#OrderLijnVolgNrOffset + OrderLijnenLijst.Count())) { - kill @..#GlobalOrderLijnen(Order.GeefKlantNr(), ..#Facturatie, Order.GeefID(), OrderLijn.Orderlijn.GeefLijnVolgNr()) + Try { + Set OrderLijnenLijstIterator = ##class(TECH.ListIterator).%New(OrderLijnenLijst) + While OrderLijnenLijstIterator.HasNext() { + #dim OrderLijn As DOM.VKP.impl.DataM.DataMOrder.OrderlijnenSorteerder.Orderlijn = OrderLijnenLijstIterator.Next() + Set @..#GlobalOrderLijnen(Order.GeefKlantNr(), ..#Facturatie, Order.GeefID(), OrderLijn.NieuwLijnVolgNr) = OrderLijn.Orderlijn.GeefRecord() + If (OrderLijn.Orderlijn.GeefLijnVolgNr() > (..#OrderLijnVolgNrOffset + OrderLijnenLijst.Count())) { + kill @..#GlobalOrderLijnen(Order.GeefKlantNr(), ..#Facturatie, Order.GeefID(), OrderLijn.Orderlijn.GeefLijnVolgNr()) + } + If $$$Not(OrderLijn.Orderlijn.%Extends("DOM.VKP.impl.DataM.DataMTekstOrderlijn")) { + Set @..#GlobalOrderLijnenIndex("IU",Order.GeefID(),OrderLijn.Orderlijn.GeefID()) = OrderLijn.NieuwLijnVolgNr + } } - If $$$Not(OrderLijn.Orderlijn.%Extends("DOM.VKP.impl.DataM.DataMTekstOrderlijn")) { - Set @..#GlobalOrderLijnenIndex("IU",Order.GeefID(),OrderLijn.Orderlijn.GeefID()) = OrderLijn.NieuwLijnVolgNr - } + } Catch { + #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch() + Do ##class(vhLib.Logger).%New().Error("Het updaten van OrderID " _Order.GeefID() _" met gesorteerde orderlijnenlijst is niet gelukt!") + Do ##class(TECH.ExceptionHandler).Throw(Exception) } ]]>