Index: APPS/EDI/Bestel/impl/BestelService/TandemboxBesteller/ProductValidator.cls.xml
===================================================================
diff -u -r36238 -r36290
--- APPS/EDI/Bestel/impl/BestelService/TandemboxBesteller/ProductValidator.cls.xml (.../ProductValidator.cls.xml) (revision 36238)
+++ APPS/EDI/Bestel/impl/BestelService/TandemboxBesteller/ProductValidator.cls.xml (.../ProductValidator.cls.xml) (revision 36290)
@@ -3,11 +3,6 @@
TECH.Mockable,TECH.Validator.Validator
-
-APPS.EDI.common.dto.v001.LadeTBX
-1
-
-
APPS.EDI.Bestel.impl.BestelService.TandemboxBesteller.Validator.CorpusWandDikteValidator
1
@@ -53,17 +48,10 @@
1
-
-TECH.Exceptions
-list
-1
-
-
-Product:APPS.EDI.common.dto.v001.LadeTBX
+
%Boolean
0,$$$false,$$$true)
+ Quit $$$If(Exceptions.Count()>0,$$$false,$$$true)
]]>
Index: APPS/EDI/Bestel/impl/BestelService.cls.xml
===================================================================
diff -u -r36264 -r36290
--- APPS/EDI/Bestel/impl/BestelService.cls.xml (.../BestelService.cls.xml) (revision 36264)
+++ APPS/EDI/Bestel/impl/BestelService.cls.xml (.../BestelService.cls.xml) (revision 36290)
@@ -41,6 +41,16 @@
If $$$Not($IsObject(ResultaatTBX.Exceptie) || $IsObject(ResultaatUNI.Exceptie)){
Do ..TandemboxBesteller.BestelOfferte()
Do ..UnishopBesteller.BestelOfferte(ResultaatUNI.OfferteID, Aanvraag)
+ } Else {
+ Set Exception = ##class(TECH.Exceptions.InvalidInputException).%New("Ongeldige data")
+
+ If $IsObject(ResultaatTBX.Exceptie){
+ Do Exception.VoegToeInnerExceptie(ResultaatTBX.Exceptie)
+ }
+ If $IsObject(ResultaatUNI.Exceptie){
+ Do Exception.VoegToeInnerExceptie(ResultaatUNI.Exceptie)
+ }
+ Do ##class(TECH.ExceptionHandler).Throw(Exception)
}
Quit ResultaatUNI
Index: vhUnitTest/APPS/EDI/Bestel/impl/BestelService/PlaatsBestelling/Test.cls.xml
===================================================================
diff -u -r36264 -r36290
--- vhUnitTest/APPS/EDI/Bestel/impl/BestelService/PlaatsBestelling/Test.cls.xml (.../Test.cls.xml) (revision 36264)
+++ vhUnitTest/APPS/EDI/Bestel/impl/BestelService/PlaatsBestelling/Test.cls.xml (.../Test.cls.xml) (revision 36290)
@@ -19,6 +19,9 @@
Do TandemboxBestellerStub.VerwachtMethodCall("MaakOfferte",Aanvraag).ExactAantalKeer(1).DanReturn(..GeefResultaatMetExceptie())
Do TandemboxBestellerStub.VerwachtMethodCall("BestelOfferte").ExactAantalKeer(0)
+ #dim Substrings = ##class(TECH.ListUtils).CreateListOfDataTypes("Ongeldige data")
+ do ..ZetVerwachteExceptie(##class(Tools.Test.VerwachteExceptie).%New("TECH.Exceptions.InvalidInputException",Substrings))
+
Set BestelService = ##class(APPS.EDI.Bestel.impl.BestelService).%New(UnishopBestellerStub, TandemboxBestellerStub)
Do BestelService.PlaatsBestelling(Aanvraag)
@@ -38,6 +41,9 @@
Do TandemboxBestellerStub.VerwachtMethodCall("MaakOfferte",Aanvraag).ExactAantalKeer(1).DanReturn(..GeefResultaatMetExceptie())
Do TandemboxBestellerStub.VerwachtMethodCall("BestelOfferte").ExactAantalKeer(0)
+ #dim Substrings = ##class(TECH.ListUtils).CreateListOfDataTypes("Ongeldige data")
+ do ..ZetVerwachteExceptie(##class(Tools.Test.VerwachteExceptie).%New("TECH.Exceptions.InvalidInputException",Substrings))
+
Set BestelService = ##class(APPS.EDI.Bestel.impl.BestelService).%New(UnishopBestellerStub, TandemboxBestellerStub)
Do BestelService.PlaatsBestelling(Aanvraag)
@@ -57,6 +63,9 @@
Do TandemboxBestellerStub.VerwachtMethodCall("MaakOfferte",Aanvraag).ExactAantalKeer(1).DanReturn(..GeefResultaatZonderExceptie())
Do TandemboxBestellerStub.VerwachtMethodCall("BestelOfferte").ExactAantalKeer(0)
+ #dim Substrings = ##class(TECH.ListUtils).CreateListOfDataTypes("Ongeldige data")
+ do ..ZetVerwachteExceptie(##class(Tools.Test.VerwachteExceptie).%New("TECH.Exceptions.InvalidInputException",Substrings))
+
Set BestelService = ##class(APPS.EDI.Bestel.impl.BestelService).%New(UnishopBestellerStub, TandemboxBestellerStub)
Do BestelService.PlaatsBestelling(Aanvraag)
@@ -74,7 +83,7 @@
Do UnishopBestellerStub.VerwachtMethodCall("BestelOfferte",1234,Aanvraag).ExactAantalKeer(1)
#dim TandemboxBestellerStub As vhTest.Mock.APPS.EDI.Bestel.impl.BestelService.TandemboxBesteller = ##class(vhTest.Mock.APPS.EDI.Bestel.impl.BestelService.TandemboxBesteller).%New()
Do TandemboxBestellerStub.VerwachtMethodCall("MaakOfferte",Aanvraag).ExactAantalKeer(1).DanReturn(..GeefResultaatZonderExceptie())
- Do TandemboxBestellerStub.VerwachtMethodCall("BestelOfferte").ExactAantalKeer(1)
+ Do TandemboxBestellerStub.VerwachtMethodCall("BestelOfferte").ExactAantalKeer(1)
Set BestelService = ##class(APPS.EDI.Bestel.impl.BestelService).%New(UnishopBestellerStub, TandemboxBestellerStub)
Do BestelService.PlaatsBestelling(Aanvraag)
@@ -102,7 +111,7 @@
APPS.EDI.Bestel.BestelService.PlaatsBestelling.Resultaat
right
-Product:APPS.EDI.common.dto.v001.LadeTBX
+
%Boolean
-
Index: vhUnitTest/APPS/EDI/Bestel/impl/BestelService/TandemboxBesteller/ProductlijnToevoeger/Test.cls.xml
===================================================================
diff -u -r35928 -r36290
--- vhUnitTest/APPS/EDI/Bestel/impl/BestelService/TandemboxBesteller/ProductlijnToevoeger/Test.cls.xml (.../Test.cls.xml) (revision 35928)
+++ vhUnitTest/APPS/EDI/Bestel/impl/BestelService/TandemboxBesteller/ProductlijnToevoeger/Test.cls.xml (.../Test.cls.xml) (revision 36290)
@@ -31,7 +31,7 @@
Set WebOrder = ##class(WS.TBX.Order).%New()
Set ProductValidatorStub = ##class(vhTest.Mock.APPS.EDI.Bestel.impl.BestelService.TandemboxBesteller.ProductValidator).%New()
- Do ProductValidatorStub.IndienMethodCall("IsValid",$$$ElkeWaarde).DanReturn($$$True)
+ Do ProductValidatorStub.IndienMethodCall("IsValid",$$$ElkeWaarde,$$$ElkeWaarde).DanReturn($$$True)
Set ProductlijnToevoeger = ##class(APPS.EDI.Bestel.impl.BestelService.TandemboxBesteller.ProductlijnToevoeger).%New(ProductValidatorStub)
Do ProductlijnToevoeger.VoegToeLijnen(Aanvraag.Order, WebOrder)
Index: APPS/EDI/Bestel/impl/BestelService/TandemboxBesteller/ProductlijnToevoeger.cls.xml
===================================================================
diff -u -r35903 -r36290
--- APPS/EDI/Bestel/impl/BestelService/TandemboxBesteller/ProductlijnToevoeger.cls.xml (.../ProductlijnToevoeger.cls.xml) (revision 35903)
+++ APPS/EDI/Bestel/impl/BestelService/TandemboxBesteller/ProductlijnToevoeger.cls.xml (.../ProductlijnToevoeger.cls.xml) (revision 36290)
@@ -44,14 +44,25 @@
Set Iterator = ##class(TECH.ListIterator).%New(Order.Lijnen)
#dim FilterIterator As TECH.Iterator = ##class(TECH.DynamicIterator).%New(Iterator,,Filter)
+
+ Set Exceptions = ##class(TECH.ExceptionList).%New()
+ #dim ExceptionsSmijten As %Boolean = $$$False
#dim Volgnummer As %Integer = 0
While FilterIterator.HasNext() {
#dim Lijn As APPS.EDI.common.dto.ProductLijn = FilterIterator.Next()
- If ..ProductValidator.IsValid(Lijn.Product) {
+ If ..ProductValidator.IsValid(Lijn.Product, .Exceptions) {
Set Volgnummer = Volgnummer + 1
Do ..VoegToeLijn(Lijn, Volgnummer)
+ } Else {
+ Set ExceptionsSmijten = $$$True
}
+ }
+
+ If ExceptionsSmijten {
+ Set Exception = ##class(TECH.Exceptions.InvalidInputException).%New("Ongeldige data")
+ Do Exception.ZetInnerExcepties(Exceptions)
+ Do ##class(TECH.ExceptionHandler).Throw(Exception)
}
]]>