Index: vhUnitTest/DOM/LEV/TestToelevering.cls.xml
===================================================================
diff -u -r2239 -r3701
--- vhUnitTest/DOM/LEV/TestToelevering.cls.xml (.../TestToelevering.cls.xml) (revision 2239)
+++ vhUnitTest/DOM/LEV/TestToelevering.cls.xml (.../TestToelevering.cls.xml) (revision 3701)
@@ -116,9 +116,8 @@
Index: DOM/LEV/ToeleveringAPI.cls.xml
===================================================================
diff -u -r1075 -r3701
--- DOM/LEV/ToeleveringAPI.cls.xml (.../ToeleveringAPI.cls.xml) (revision 1075)
+++ DOM/LEV/ToeleveringAPI.cls.xml (.../ToeleveringAPI.cls.xml) (revision 3701)
@@ -1,27 +1,27 @@
+
+Opmerking JBL
+Indien in de toekost een leverancier gewijzigd, gecreeerd, gedelete wordt via de ToeleveringAPI
+Moet gezorgd worden dat de wijziging-event wordt geraised zodat de xml-lijst up to date blijft
+voor vhintra opvragen van leveranciers
1
1
0
-
-
-
-
1
ToeleveringNummer:%Integer
DOM.LEV.Toelevering
+
+1
+ToeleveringNummer:%Integer
+%Boolean
+
+
1
LeverancierNummer:%Integer
Index: APPS/VisiDot/impl/EndAfhandelaar.cls.xml
===================================================================
diff -u -r3523 -r3701
--- APPS/VisiDot/impl/EndAfhandelaar.cls.xml (.../EndAfhandelaar.cls.xml) (revision 3523)
+++ APPS/VisiDot/impl/EndAfhandelaar.cls.xml (.../EndAfhandelaar.cls.xml) (revision 3701)
@@ -103,14 +103,15 @@
Set ToeleveringID = QueueElement.TOENr
/// Als toelevering nog niet gerecepteerd is :
- Set Toelevering = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI().GeefToelevering(ToeleveringID)
- Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" : Toelevering "_ToeleveringID_" is opgehaald.")
- If ('$IsObject(Toelevering)){
+ Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" : Toelevering "_ToeleveringID_" is opgehaald.")
+ Set ToeleveringAPI = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI()
+ If ('ToeleveringAPI.BestaatToelevering(ToeleveringID)){
Set IsToeleveringReedsGerecepteerd = 1
Set Bericht = "De toelevering '"_ToeleveringID_"' is reeds gerecepteerd."_$C(13,10)
Set Bericht = Bericht_"Bij de recepetie via VisiDot met BatchID : '"_BatchID_"'"_$C(13,10)
Do ##class(vhLib.Logger).%New("VisiDot").ErrorMail("Toelevering "_ToeleveringID_" reeds gerecepteerd",Bericht)
}Else{
+ Set Toelevering = ToeleveringAPI.GeefToelevering(ToeleveringID)
Set Dossier = QueueElement.DOSNr
Do ##class(vhLib.Logger).%New("VisiDot").Info("Recepteer Producten",BatchID_ $C(9)_" : Product met DossierCode '"_Dossier_"' voor Toelevering '"_ToeleveringID_"' wordt gerecepteerd.")
Set FrameID = ProductionHelper.GeefPalletIDVanVHossID(QueueHelper.GeefFrameID())
Index: vhConsistency/Checks/InvoerUitvoerLinken.cls.xml
===================================================================
diff -u -r3526 -r3701
--- vhConsistency/Checks/InvoerUitvoerLinken.cls.xml (.../InvoerUitvoerLinken.cls.xml) (revision 3526)
+++ vhConsistency/Checks/InvoerUitvoerLinken.cls.xml (.../InvoerUitvoerLinken.cls.xml) (revision 3701)
@@ -73,9 +73,20 @@
While (ResultSet.Next())
{
Set VerwachteInvoer = VerwachteInvoerAPI.GeefVerwachteInvoer(ResultSet.Data("ID"))
- Set Toelevering = ToeleveringAPI.GeefToelevering(VerwachteInvoer.GeefTransactieReferentie())
- If (('$IsObject(Toelevering)) || ('$IsObject(Toelevering.GeefToeleveringLijnViaCode(VerwachteInvoer.GeefTransactieLijnReferentie()))))
+ Set TeAnnuleren = 0
+
+ If ('ToeleveringAPI.BestaatToelevering(VerwachteInvoer.GeefTransactieReferentie()))
{
+ Set TeAnnuleren = 1
+ }
+ Else
+ {
+ Set Toelevering = ToeleveringAPI.GeefToelevering(VerwachteInvoer.GeefTransactieReferentie())
+ Set TeAnnuleren = '$IsObject(Toelevering.GeefToeleveringLijnViaCode(VerwachteInvoer.GeefTransactieLijnReferentie()))
+ }
+
+ If (TeAnnuleren)
+ {
Do VerwachteInvoerAPI.AnnuleerVerwachteInvoer(VerwachteInvoer.%Id())
Do ..VoegMeldingToe("Verwachte invoer verwijderd (Toelevering, LijnCode): "_VerwachteInvoer.GeefTransactieReferentie()_", "_VerwachteInvoer.GeefTransactieLijnReferentie())
}
@@ -226,23 +237,23 @@
Set OrderLijnCode = VerwachteUitvoerReservatie.GeefVerwachteUitvoer().GeefTransactieLijnReferentie()
Set ToeNr = VerwachteInvoer.GeefTransactieReferentie()
Set ToeLijnNr = VerwachteInvoer.GeefTransactieLijnReferentie()
- Set Toelevering = ToeleveringAPI.GeefToelevering(VerwachteInvoer.GeefTransactieReferentie())
- If ('OrderAPI.BestaatOrder(OrderNr)) && ('$IsObject(Toelevering))
+ If ('OrderAPI.BestaatOrder(OrderNr)) && ('ToeleveringAPI.BestaatToelevering(ToeNr))
{
Do ..VoegMeldingToe("Invoer-uitvoer-link "_InvoerUitvoerLink.%Id()_" verwijst naar order "_OrderNr_" en toelevering "_ToeNr_" die beiden niet bestaan (niet auto oplosbaar)")
}
ElseIf ('OrderAPI.BestaatOrder(OrderNr))
{
Do ..VoegMeldingToe("Invoer-uitvoer-link "_InvoerUitvoerLink.%Id()_" verwijst naar order "_OrderNr_" die niet bestaat (niet auto oplosbaar)")
}
- ElseIf ('$IsObject(Toelevering))
+ ElseIf ('ToeleveringAPI.BestaatToelevering(ToeNr))
{
Do ..VoegMeldingToe("Invoer-uitvoer-link "_InvoerUitvoerLink.%Id()_" verwijst naar toelevering "_ToeNr_" die niet bestaat (niet auto oplosbaar)")
}
Else
{
Set Order = OrderAPI.GeefOrder(OrderNr)
Set OrderLijn = Order.GeefOrderLijnViaCode(OrderLijnCode)
+ Set Toelevering = ToeleveringAPI.GeefToelevering(ToeNr)
Set ToeleveringLijn = Toelevering.GeefToeleveringLijnViaCode(ToeLijnNr)
If ('$IsObject(OrderLijn)) && ('$IsObject(ToeleveringLijn))
{
Index: APPS/Halux/Planning/PlanningService.cls.xml
===================================================================
diff -u -r3463 -r3701
--- APPS/Halux/Planning/PlanningService.cls.xml (.../PlanningService.cls.xml) (revision 3463)
+++ APPS/Halux/Planning/PlanningService.cls.xml (.../PlanningService.cls.xml) (revision 3701)
@@ -24,10 +24,10 @@
}
Set ToeleveringAPI = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI()
- Set Toelevering = ToeleveringAPI.GeefToelevering(ToeleveringNummer)
- If $IsObject(Toelevering)
+ If (ToeleveringAPI.BestaatToelevering(ToeleveringNummer))
{
+ Set Toelevering = ToeleveringAPI.GeefToelevering(ToeleveringNummer)
Set ProductToeleveringLijnIterator = Toelevering.GeefTypeToeleveringLijnIterator(##class(DOM.LEV.enu.ToeleveringLijnType).Product())
While (ProductToeleveringLijnIterator.HasNext())
@@ -81,9 +81,9 @@
While (ToeleveringNummersIterator.HasNext())
{
Set ToeleveringNummer = ToeleveringNummersIterator.Next()
- Set Toelevering = ToeleveringAPI.GeefToelevering(ToeleveringNummer)
- If ($IsObject(Toelevering))
+ If (ToeleveringAPI.BestaatToelevering(ToeleveringNummer))
{
+ Set Toelevering = ToeleveringAPI.GeefToelevering(ToeleveringNummer)
Do Toeleveringen.Insert(Toelevering)
Set Batch = BatchService.GeefBijhorendeBatch(Toelevering)
If ($IsObject(Batch))
@@ -316,12 +316,7 @@
If ($IsObject(ToeleveringInfo))
{
Set Toelevering = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI().GeefToelevering(ToeleveringNummer)
-
- If ('$IsObject(Toelevering))
- {
- Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.InvalidInputException).%New("Toelevering "_ToeleveringNummer_" bestaat niet"))
- }
-
+
Set ProductAPI = ##class(DOM.DomeinContext).Instance().GeefProductAPI()
Set DataService = ##class(APPS.common.DataService).%New()
@@ -332,11 +327,6 @@
Set ToeleveringLijnNr = ResultSet.Data("ToeleveringLijnNr")
Set ToeleveringLijn = Toelevering.GeefToeleveringLijn(ToeleveringLijnNr)
- If ('$IsObject(Toelevering))
- {
- Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.InvalidInputException).%New("Toelevering "_ToeleveringNummer_" heeft geen lijn met nummer "_ToeleveringLijnNr))
- }
-
Set UniekLijnNummer = ToeleveringLijn.GeefUniekLijnNr()
Set FabKey=ToeleveringNummer_";"_UniekLijnNummer
Set BSKey = $O(^HADPR("F",FabKey,"AR",""))
@@ -438,11 +428,6 @@
Set ToeleveringNummer = ToeleveringNummersIterator.Next()
Set Toelevering = ToeleveringAPI.GeefToelevering(ToeleveringNummer)
- If ('$IsObject(Toelevering))
- {
- Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.InvalidInputException).%New("Toelevering "_ToeleveringNummer_" bestaat niet"))
- }
-
Set VerzendWijze = ""
Set Order = Toelevering.GeefOrder()
If ($IsObject(Order))
@@ -545,16 +530,18 @@
While (Iterator.HasNext())
{
Set ToeleveringNummer = Iterator.Next()
- Set Toelevering = ToeleveringAPI.GeefToelevering(ToeleveringNummer)
- If ('$IsObject(Toelevering))
+ If (ToeleveringAPI.BestaatToelevering(ToeleveringNummer))
{
+ Do Toeleveringen.Insert(ToeleveringAPI.GeefToelevering(ToeleveringNummer))
+ }
+ Else
+ {
Set MaakBatchError = ##class(APPS.Halux.Planning.dto.MaakBatchError).%New()
Set MaakBatchError.ToeleveringNummer = ToeleveringNummer
Do MaakBatchError.Boodschappen.Insert("De toelevering is niet aanwezig in het systeem")
Do Resultaat.Errors.Insert(MaakBatchError)
Set Resultaat.IsGeslaagd = 0
}
- Do Toeleveringen.Insert(Toelevering)
}
If (Resultaat.IsGeslaagd)
@@ -601,12 +588,11 @@
Set Resultaat = ##class(APPS.Halux.Planning.dto.SplitsToeleveringResultaat).%New()
Set ToeleveringAPI = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI()
- Set Toelevering = ToeleveringAPI.GeefToelevering(ToeleveringNummer)
- If $IsObject(Toelevering)
+ If (ToeleveringAPI.BestaatToelevering(ToeleveringNummer))
{
+ Set Toelevering = ToeleveringAPI.GeefToelevering(ToeleveringNummer)
TSTART
-
Set SplitsEvaluatieResultaat = ..EvalueerSplitsToelevering(ToeleveringNummer, AantalToeleveringen, DrempelAantalProducten)
Do SplitsEvaluatieResultaat.XMLExportToString(.xml,"","literal,indent")
Set UniekeLijnNummers = ##class(%ListOfDataTypes).%New()
@@ -871,9 +857,10 @@
{
If ('##class(TECH.Config.ConfigMgr).Instance().GetBoolean("Halux_Planning_AutoResync")) { w "Modified "_DataToeNr_" "_GlobalToelevering.GeefToeNr(),! }
// De toeleveringnr komt in beide sets voor
- Set Toelevering = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI().GeefToelevering(DataToeNr)
- If ($IsObject(Toelevering))
+ Set ToeleveringAPI = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI()
+ If (ToeleveringAPI.BestaatToelevering(DataToeNr))
{
+ Set Toelevering = ToeleveringAPI.GeefToelevering(DataToeNr)
Set ToeleveringModifiedEventData = ##class(TECH.Events.ToeleveringModifiedEventData).%New(Toelevering)
Set ToeleveringModifiedEvent = ##class(TECH.Events.ToeleveringModifiedEvent).%New(ToeleveringModifiedEventData)
Do ##class(APPS.Halux.Planning.impl.EventCatcher).ToeleveringModEventListener(ToeleveringModifiedEvent)
Index: APPS/Halux/common/impl/BatchImpl.cls.xml
===================================================================
diff -u -r1133 -r3701
--- APPS/Halux/common/impl/BatchImpl.cls.xml (.../BatchImpl.cls.xml) (revision 1133)
+++ APPS/Halux/common/impl/BatchImpl.cls.xml (.../BatchImpl.cls.xml) (revision 3701)
@@ -80,10 +80,9 @@
While (Iterator.HasNext())
{
Set ToeleveringNummer = Iterator.Next()
- Set Toelevering = ToeleveringAPI.GeefToelevering(ToeleveringNummer)
- If ($IsObject(Toelevering))
+ If (ToeleveringAPI.BestaatToelevering(ToeleveringNummer))
{
- Do Toeleveringen.Insert(Toelevering)
+ Do Toeleveringen.Insert(ToeleveringAPI.GeefToelevering(ToeleveringNummer))
}
}
Quit ##class(TECH.ListIterator).%New(Toeleveringen)
Index: DOM/AKP/event/ProductToelevLijnEventData.cls.xml
===================================================================
diff -u -r3202 -r3701
--- DOM/AKP/event/ProductToelevLijnEventData.cls.xml (.../ProductToelevLijnEventData.cls.xml) (revision 3202)
+++ DOM/AKP/event/ProductToelevLijnEventData.cls.xml (.../ProductToelevLijnEventData.cls.xml) (revision 3701)
@@ -64,7 +64,6 @@
If ('$IsObject(..ProductToeleveringLijn))
{
Set Toelevering = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI().GeefToelevering(..GeefToeleveringID())
- If ('$IsObject(Toelevering)) { Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.ObjectExpectedException).%New("Toelevering "_..GeefToeleveringID()_" bestaat niet")) }
Set ..ProductToeleveringLijn = Toelevering.GeefToeleveringLijnViaCode(..GeefToeleveringLijnCode())
If ('$IsObject(..ProductToeleveringLijn)) { Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.ObjectExpectedException).%New("Toeleveringlijn bestaat niet (OrderID, OrderLijnCode): "_..GeefToeleveringID()_" "_..GeefToeleveringLijnCode()_" bestaat niet")) }
}
Index: DOM/LEV/impl/DataM/DataMToeleveringAPI.cls.xml
===================================================================
diff -u -r1075 -r3701
--- DOM/LEV/impl/DataM/DataMToeleveringAPI.cls.xml (.../DataMToeleveringAPI.cls.xml) (revision 1075)
+++ DOM/LEV/impl/DataM/DataMToeleveringAPI.cls.xml (.../DataMToeleveringAPI.cls.xml) (revision 3701)
@@ -8,10 +8,23 @@
ToeleveringNummer:%Integer
DOM.LEV.Toelevering
-
+
+ToeleveringNummer:%Integer
+%Boolean
+
+
+
LeverancierNummer:%Integer
DOM.LEV.Leverancier
Index: APPS/Halux/Planning/impl/ToeleveringInfo.cls.xml
===================================================================
diff -u -r1382 -r3701
--- APPS/Halux/Planning/impl/ToeleveringInfo.cls.xml (.../ToeleveringInfo.cls.xml) (revision 1382)
+++ APPS/Halux/Planning/impl/ToeleveringInfo.cls.xml (.../ToeleveringInfo.cls.xml) (revision 3701)
@@ -127,10 +127,9 @@
{
Set ToeleveringAPI = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI()
- Set Toelevering = ToeleveringAPI.GeefToelevering(..%Id())
- If ($IsObject(Toelevering))
+ If (ToeleveringAPI.BestaatToelevering(..%Id()))
{
- Set LeverImpact = ##class(APPS.Halux.Planning.impl.ProductPlanningUtils).GeefLeverImpact(Toelevering,..Gepland)
+ Set LeverImpact = ##class(APPS.Halux.Planning.impl.ProductPlanningUtils).GeefLeverImpact(ToeleveringAPI.GeefToelevering(..%Id()),..Gepland)
}
}