Index: AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml
===================================================================
diff -u -r72639 -r72678
--- AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml (.../SalesOrderConverter.cls.xml) (revision 72639)
+++ AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml (.../SalesOrderConverter.cls.xml) (revision 72678)
@@ -128,8 +128,18 @@
1
+
+DOM.PM.impl.DataM.DataMProductRepository
+1
+
+
+
+WSimpl.AX.CalculatedProduct.ProductService
+1
+
+
-OrderAPI:DOM.VKP.OrderAPI,OrderLevenCyclusService:APPS.VKP.OrderLevenCyclusService,DateTimeAPI:TECH.DateTime.DateTimeAPI="",ProductBepaler:AXimpl.Admin.Common.ProductBepaler,DocumentReferentiesRepository:DOM.VKP.DocumentReferentiesRepository,OrderlijnenSorteerder:AXimpl.Dynamics.SalesOrderIn.Converter.OrderlijnenSorteerder,OrderSluiter:CHUI.VKP.OrderIngave.BevestigdAXOrderSluiterv01,ToeleveringService:AXimpl.Dynamics.SalesOrderIn.Converter.ToeleveringService,OrderIngaveService:APPS.VKP.OrderIngaveService,OfferteRepository:APPS.VKP.Offerte.OfferteRepository,SalesOrderLineStatusRepository:AXdata.Dynamics.SalesLineStatus.SalesOrderLineStatusRepository,VerkoopApi:DOM.VKP.VerkoopAPI,Mailer:AXimpl.Dynamics.SalesOrderIn.Converter.Mailer,LeverAdresMaker:AXimpl.Dynamics.SalesOrderIn.Converter.SalesOrderConverter.LeverAdresMaker,LandRepository:DOM.common.Locatie.impl.LandRepository,ProductRepository:Prod.ProductRepository="",ProductTypeAPI:DOM.PM.impl.ProductTypeAPIimpl=""
+OrderAPI:DOM.VKP.OrderAPI,OrderLevenCyclusService:APPS.VKP.OrderLevenCyclusService,DateTimeAPI:TECH.DateTime.DateTimeAPI="",ProductBepaler:AXimpl.Admin.Common.ProductBepaler,DocumentReferentiesRepository:DOM.VKP.DocumentReferentiesRepository,OrderlijnenSorteerder:AXimpl.Dynamics.SalesOrderIn.Converter.OrderlijnenSorteerder,OrderSluiter:CHUI.VKP.OrderIngave.BevestigdAXOrderSluiterv01,ToeleveringService:AXimpl.Dynamics.SalesOrderIn.Converter.ToeleveringService,OrderIngaveService:APPS.VKP.OrderIngaveService,OfferteRepository:APPS.VKP.Offerte.OfferteRepository,SalesOrderLineStatusRepository:AXdata.Dynamics.SalesLineStatus.SalesOrderLineStatusRepository,VerkoopApi:DOM.VKP.VerkoopAPI,Mailer:AXimpl.Dynamics.SalesOrderIn.Converter.Mailer,LeverAdresMaker:AXimpl.Dynamics.SalesOrderIn.Converter.SalesOrderConverter.LeverAdresMaker,LandRepository:DOM.common.Locatie.impl.LandRepository,ProductRepository:Prod.ProductRepository="",ProductTypeAPI:DOM.PM.impl.ProductTypeAPIimpl="",DataMProductRepository:DOM.PM.impl.DataM.DataMProductRepository="",ProductService:WSimpl.AX.CalculatedProduct.ProductService=""
1
1
%Status
@@ -151,6 +161,8 @@
Set ..LandRepository = $$$Inject(LandRepository,##class(DOM.common.Locatie.impl.LandRepository).%New())
Set ..ProductRepository = $$$Inject(ProductRepository,##class(Prod.ProductRepository).%New())
Set ..ProductTypeAPI = $$$Inject(ProductTypeAPI,##class(DOM.DomeinContext).Instance().GeefProductTypeAPI())
+ Set ..DataMProductRepository = $$$Inject(DataMProductRepository, ##class(DOM.PM.impl.DataM.DataMProductRepository).%New())
+ Set ..ProductService = $$$Inject(ProductService, ##class(WSimpl.AX.CalculatedProduct.ProductService).%New())
Set ..VerkoopApi = $$$Inject(VerkoopApi, ##class(DOM.VKP.impl.VerkoopAPI).%New())
Set ..VhConfigHelper = ##class(DOM.PM.Maatwerk.Calc.Common.VhConfigHelper).%New()
@@ -233,7 +245,7 @@
Do ..Logger.Warning("SalesOrderIn - Orderlijn is reeds geproduceerd", "OrderLijn met InventTransId '" _OrderLine.InventTransId _"' is reeds geproduceerd. Er wordt geen update uitgevoerd.")
Continue
}
-
+
If $$$Not(..MagOrderLijnUpdaten(OrderLine)) {
Do ..Mailer.ZetMeldingGeblokkeerdeOrderLijn(Order, OrderLine.InventTransId)
Do ..Logger.Warning("SalesOrderIn - Orderlijn is geblokkeerd", "OrderLijn met InventTransId '" _OrderLine.InventTransId _"' is in verwerking. Er wordt geen update uitgevoerd.")
@@ -528,35 +540,26 @@
0) {
- Set ProductData = ##class(DOM.PM.dto.ProductData).%New()
- Set ProductData.PRNr = ReedsGekendeProductId
- Set ProductData.DossierNummer = ConfiguratieData.DossierCode
- Set MaatwerkProduct = BerekeningServiceProduct.MaakProductVanKenmerken(..VhConfigHelper.GeefIngegevenKenmerken(), ..KlantID, ProductData, ConfiguratieData.VhConfig)
- Set ProductId = MaatwerkProduct.GeefID()
Do PrijsOrderLijn.ZetProductID(ProductId, $$$True)
- } Else {
- Set MaatwerkProduct = BerekeningServiceProduct.MaakProductVanKenmerken(..VhConfigHelper.GeefIngegevenKenmerken(), ..KlantID, , ConfiguratieData.VhConfig)
- Set ProductId = MaatwerkProduct.GeefID()
- Do PrijsOrderLijn.ZetProductID(ProductId, $$$False)
}
} ElseIf (IsEenMaatwerkLijn && IsAdminProductNummerMeegegeven) {
Do PrijsOrderLijn.ZetProductID(..GeefAttributeValue(OrderLine.Attribute,"AdminProductNummer"), $$$True)
@@ -574,6 +577,97 @@
]]>
+
+
+1
+%String
+ 0) {
+ Do ..VerwijderOrderLijn(Order, OrderLine)
+ Do ..BewaarOrder(Order)
+ Do ..LogLijn(Order.GeefID(), OrderLine, "Verwijder OrderLijn")
+
+ If $$$Not(..ProductService.HeeftBezwaarVoorProductDelete(ReedsGekendeProductId)) {
+ Set ProductData.PRNr = ReedsGekendeProductId
+ Do ..NeemLockOpProduct(ReedsGekendeProductId)
+ Do ..VerwijderProduct(ReedsGekendeProductId)
+ }
+ }
+
+ #dim MaatwerkProduct As DOM.PM.MaatwerkProduct = BerekeningServiceProduct.MaakProductVanKenmerken(..VhConfigHelper.GeefIngegevenKenmerken(), ..KlantID, 1, ProductData, VhConfig)
+
+ If (ReedsGekendeProductId > 0) {
+ Do ..Logger.Warning("SalesOrderIn - ProductCreatie", "Product '"_ReedsGekendeProductId_"' opnieuw gemaakt in Cache! DossierNummer = '"_OrderLine.DossierCode_"'")
+ Do ..UnlockProduct(ReedsGekendeProductId)
+ }
+
+ Quit MaatwerkProduct.GeefID()
+]]>
+
+
+
+ProductId:%String
+1
+
+
+
+
+ProductId:%String
+1
+
+
+
+
+ProductId:%String
+1
+
+
+
+
+ProductId:%String
+1
+
+
+
+
+ProductId:%String
+1
+
+
+
Order:DOM.VKP.Order,OrderHeader:AXif.Dynamics.SalesOrderIn.MessageParts.AxdEntityOrderHeader
1
@@ -668,7 +762,7 @@
OrderLine:AXif.Dynamics.SalesOrderIn.MessageParts.AxdEntityOrderLine
1
%Boolean
-