Index: WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml
===================================================================
diff -u -r58444 -r58458
--- WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml (.../ToeleveringService.cls.xml) (revision 58444)
+++ WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml (.../ToeleveringService.cls.xml) (revision 58458)
@@ -18,8 +18,13 @@
1
+
+vhLib.Logger
+1
+
+
-ToeleveringVoorbereidingService:APPS.Halux.Voorbereiding.VoorbereidingService="",BatchService:APPS.Halux.common.BatchService="",ToeleveringApi:DOM.AKP.ToeleveringAPI=""
+ToeleveringVoorbereidingService:APPS.Halux.Voorbereiding.VoorbereidingService="",BatchService:APPS.Halux.common.BatchService="",ToeleveringApi:DOM.AKP.ToeleveringAPI="",Logger:vhLib.Logger=""
1
1
%Status
@@ -28,6 +33,7 @@
Set ..ToeleveringVoorbereidingService = $$$Inject(ToeleveringVoorbereidingService, ##class(APPS.Halux.Voorbereiding.VoorbereidingService).%New())
Set ..BatchService = $$$Inject(BatchService, ##class(APPS.Halux.common.impl.BatchService).%New())
Set ..ToeleveringApi = $$$Inject(ToeleveringApi, ##class(DOM.AKP.impl.DataM.DataMToeleveringAPI).%New())
+ Set ..Logger = $$$Inject(Logger, ##class(vhLib.Logger).%New("CalculatedProduct"))
Quit $$$OK
]]>
@@ -39,13 +45,24 @@
If (..ToeleveringApi.BestaatToelevering(ToeleveringId)) {
#dim Toelevering As DOM.AKP.Toelevering = ..ToeleveringApi.GeefToelevering(ToeleveringId)
- If ($$$Not(..IsKlaarGezet(Toelevering))) {
- // Indien nog niet KLAARGEZET => Order/Toeleveringen aanpassen => Niemand verwittigen!
- } ElseIf ($$$Not(..ZitToeleveringInBatch(ToeleveringId))) {
- // Indien reeds KLAARGEZET MAAR NOG NIET IN BATCH => Order/Toeleveringen aanpassen => Halux hiervan verwittigen!
- } Else {
- // Indien reeds KLAARGEZET EN AL WEL IN BATCH (al dan niet gestart) => Order/Toeleveringen NIET aanpassen => Halux hiervan verwittigen!
+ Try {
+ Do ..LockToelevering(ToeleveringId)
+
+ If ($$$Not(..IsKlaarGezet(Toelevering))) {
+ // Indien nog niet KLAARGEZET => Order/Toeleveringen aanpassen => Niemand verwittigen!
+ } ElseIf ($$$Not(..ZitToeleveringInBatch(ToeleveringId))) {
+ // Indien reeds KLAARGEZET MAAR NOG NIET IN BATCH => Order/Toeleveringen aanpassen => Halux hiervan verwittigen!
+ } Else {
+ // Indien reeds KLAARGEZET EN AL WEL IN BATCH (al dan niet gestart) => Order/Toeleveringen NIET aanpassen => Halux hiervan verwittigen!
+ }
+ Do ..UnLockToelevering(ToeleveringId)
+ } Catch {
+ Do ..UnLockToelevering(ToeleveringId)
+ #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch()
+ Do ..Logger.Error("ProductUpdater", "Tijdens het aanpassen van Toelevering '"_ToeleveringId_"' na een ProductUpdate van OudProductId '"_OudProductId_"' naar NieuwProductId '"_NieuwProductId_"' deed zich in de ToeleveringService een Exceptie voor: "_Exception.ToString())
}
+ } Else {
+ Do ..Logger.Warning("ProductUpdater", "In de ToeleveringService werd gezocht naar Toelevering '"_ToeleveringId_"' met het oog op het aanpassen van ProductId '"_OudProductId_"' naar '"_NieuwProductId_"' op de Lijnen ervan, maar er werd geen verwijzing naar de Toelevering gevonden in ^KTO1 volgens de ToeleveringApi")
}
]]>
@@ -83,6 +100,25 @@
+
+
+ToeleveringId:%Integer
+1
+
+
+
+
+ToeleveringId:%Integer
+1
+
+
Index: vhTest/Mock/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml
===================================================================
diff -u -r58444 -r58458
--- vhTest/Mock/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml (.../ToeleveringService.cls.xml) (revision 58444)
+++ vhTest/Mock/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml (.../ToeleveringService.cls.xml) (revision 58458)
@@ -9,7 +9,7 @@
right
-ToeleveringVoorbereidingService:APPS.Halux.Voorbereiding.VoorbereidingService="",BatchService:APPS.Halux.common.BatchService="",ToeleveringApi:DOM.AKP.ToeleveringAPI=""
+ToeleveringVoorbereidingService:APPS.Halux.Voorbereiding.VoorbereidingService="",BatchService:APPS.Halux.common.BatchService="",ToeleveringApi:DOM.AKP.ToeleveringAPI="",Logger:vhLib.Logger=""
%Status