Index: TECH/Exceptions/ObjectExpectedException.cls.xml
===================================================================
diff -u
--- TECH/Exceptions/ObjectExpectedException.cls.xml (revision 0)
+++ TECH/Exceptions/ObjectExpectedException.cls.xml (revision 1544)
@@ -0,0 +1,16 @@
+
+
+
+
+1
+TECH.Exceptions.AbstractOmschrijvingException
+
+
+TECH.enu.ExceptionCode
+
+
+
+
+
+
Index: TECH/enu/DatePart.cls.xml
===================================================================
diff -u
--- TECH/enu/DatePart.cls.xml (revision 0)
+++ TECH/enu/DatePart.cls.xml (revision 1544)
@@ -0,0 +1,66 @@
+
+
+
+datatype
+1
+%String
+
+
+1
+TECH.enu.DatePart
+
+
+
+
+1
+TECH.enu.DatePart
+
+
+
+
+1
+TECH.enu.DatePart
+
+
+
+
+1
+TECH.enu.DatePart
+
+
+
+
+1
+TECH.enu.DatePart
+
+
+
+
+1
+TECH.enu.DatePart
+
+
+
+
+1
+TECH.enu.DatePart
+
+
+
+
+1
+TECH.enu.DatePart
+
+
+
+
+
+
Index: TECH/Exceptions/AbstractOmschrijvingException.cls.xml
===================================================================
diff -u
--- TECH/Exceptions/AbstractOmschrijvingException.cls.xml (revision 0)
+++ TECH/Exceptions/AbstractOmschrijvingException.cls.xml (revision 1544)
@@ -0,0 +1,47 @@
+
+
+
+
+1
+TECH.Exceptions.Exception
+
+
+%String
+1
+
+
+
+
+Omschrijving:%String
+1
+1
+%Status
+
+
+
+
+
+Wordt gebruikt om in de ecode weg te schrijven, de omschrijving blijft dus best beperkt.
+%String
+
+
+
+
+
+Wordt door de error handler in het e-mailbericht bijgeschreven.
+%String
+
+
+
+
+
+
Index: TECH/Exceptions/BaseException.cls.xml
===================================================================
diff -u
--- TECH/Exceptions/BaseException.cls.xml (revision 0)
+++ TECH/Exceptions/BaseException.cls.xml (revision 1544)
@@ -0,0 +1,58 @@
+
+
+
+
+1
+TECH.Exceptions.Exception
+
+
+TECH.enu.ExceptionCode
+1
+
+
+
+%String
+1
+
+
+
+
+
+Omschrijving kan gebruikt worden om in de $ECODE te plaatsen
+ExceptionCode:TECH.enu.ExceptionCode,Omschrijving:%String
+1
+1
+%Status
+
+
+
+
+TECH.enu.ExceptionCode
+
+
+
+
+%String
+
+
+
+
+%String
+
+
+
+
+
+
Index: WS/Svn/SvnService.cls.xml
===================================================================
diff -u
--- WS/Svn/SvnService.cls.xml (revision 0)
+++ WS/Svn/SvnService.cls.xml (revision 1544)
@@ -0,0 +1,27 @@
+
+
+
+%SOAP.WebService
+
+
+SvnService
+
+
+
+subversion.vanhoecke.be
+
+
+
+1
+
+
+
+%String
+1
+
+
+
+
+
+
Index: TECH/Config/dto/ConfigItems.cls.xml
===================================================================
diff -u
--- TECH/Config/dto/ConfigItems.cls.xml (revision 0)
+++ TECH/Config/dto/ConfigItems.cls.xml (revision 1544)
@@ -0,0 +1,16 @@
+
+
+
+
+1
+%RegisteredObject,%XML.Adaptor
+right
+
+
+TECH.Config.dto.ConfigItem
+list
+
+
+
+
+
Index: TECH/Exceptions/RuntimeException.cls.xml
===================================================================
diff -u
--- TECH/Exceptions/RuntimeException.cls.xml (revision 0)
+++ TECH/Exceptions/RuntimeException.cls.xml (revision 1544)
@@ -0,0 +1,68 @@
+
+
+
+
+1
+TECH.Exceptions.Exception
+
+
+%String
+1
+
+
+
+
+%String
+1
+
+
+
+
+ECode:%String,ZError:%String
+1
+1
+%Status
+
+
+
+
+%String
+
+
+
+
+TECH.enu.ExceptionCode
+
+
+
+
+%String
+
+
+
+
+%String
+
+
+
+
+%String
+
+
+
+
+
+
Index: TECH/Exceptions/Exception.cls.xml
===================================================================
diff -u
--- TECH/Exceptions/Exception.cls.xml (revision 0)
+++ TECH/Exceptions/Exception.cls.xml (revision 1544)
@@ -0,0 +1,114 @@
+
+
+
+
+1
+TECH.IException,%RegisteredObject
+right
+
+
+TECH.IException
+1
+
+
+
+
+TO DO : Stack zou een %Stream moeten worden.
+%String
+1
+
+
+
+
+%TimeStamp
+1
+
+
+
+%List
+1
+
+
+
+1
+1
+%Status
+
+
+
+
+Exception:TECH.IException
+
+
+
+
+%String
+
+
+
+
+TECH.IException
+
+
+
+
+%String
+
+
+
+
+%TimeStamp
+
+
+
+
+StackLevel
+1
+%String
+ "_$STACK($STACK-i,"MCODE")
+ }
+ Quit Txt
+]]>
+
+
+
+%String
+
+
+
+
+
+
Index: TECH/Exceptions/SaveFailedException.cls.xml
===================================================================
diff -u
--- TECH/Exceptions/SaveFailedException.cls.xml (revision 0)
+++ TECH/Exceptions/SaveFailedException.cls.xml (revision 1544)
@@ -0,0 +1,39 @@
+
+
+
+
+1
+TECH.Exceptions.AbstractOmschrijvingException
+
+
+%Status
+1
+
+
+
+Omschrijving:%String,Status:%Status
+1
+1
+%Status
+
+
+
+
+TECH.enu.ExceptionCode
+
+
+
+
+%String
+
+
+
+
+
+
Index: TECH/Config/ConfigItem.cls.xml
===================================================================
diff -u
--- TECH/Config/ConfigItem.cls.xml (revision 0)
+++ TECH/Config/ConfigItem.cls.xml (revision 1544)
@@ -0,0 +1,88 @@
+
+
+
+
+Een configuratie key-value item.
+Naast een algemeen-geldende waarde, kunnen er applicatie-specifieke waarden
+gedefinieerd zijn. Die laatste hebben voorrang op de algemeen-geldende.
+persistent
+1
+%Persistent
+
+
+%String
+1
+
+
+
+
+%String
+1
+
+
+
+
+
+%String
+
+
+
+
+
+%String
+array
+1
+
+
+
+
+
+1
+Omgeving,Sleutel
+
+
+
+
+Remark: Parameter "Applicatie" is optioneel.
+%String
+
+
+
+
+Waarde:%String,Applicatie:%String
+
+
+
+
+%Library.CacheStorage
+^TECH.Config.ConfigItemD
+ConfigItemDefaultData
+^TECH.Config.ConfigItemD
+^TECH.Config.ConfigItemI
+^TECH.Config.ConfigItemS
+
+AppSpecifiekeWaarden
+subnode
+"AppSpecifiekeWaarden"
+
+
+
+%%CLASSNAME
+
+
+Waarde
+
+
+
+
+
+
+
Index: TECH/Config/ConfiguredFactory.cls.xml
===================================================================
diff -u
--- TECH/Config/ConfiguredFactory.cls.xml (revision 0)
+++ TECH/Config/ConfiguredFactory.cls.xml (revision 1544)
@@ -0,0 +1,29 @@
+
+
+
+
+TECH.Error
+0
+%RegisteredObject
+
+
+1
+ImplKlasseConfigSleutel:%String
+%RegisteredObject
+
+
+
+
+
+
Index: TECH/Error.inc.rou
===================================================================
diff -u
--- TECH/Error.inc.rou (revision 0)
+++ TECH/Error.inc.rou (revision 1544)
@@ -0,0 +1,68 @@
+ /// Routine : TECH.Error.INC
+ ///
+ /// Author : Paul Verhulst
+ /// Created : 11/08/2010
+ ///
+
+#include vhLib.Macro
+#include %occInclude
+
+
+
+ /// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+
+#define TECHErrorTrapOn new $ETRAP Set $ETRAP="Do ##class(TECH.Error.impl.ErrorHandler).TrapHandler()"
+#define TECHErrorTrapOff Set $ETRAP=""
+
+#define LocalErrorTrapOn new $ETRAP Set $ETRAP="Do %TECHErrorLocalTrap("_$stack_").TrapHandler()" $$$InitLocalErrorTrap
+#define LocalErrorTrapOnLabeled(%Label,%Opts) new $ETRAP Set $ETRAP="Do %TECHErrorLocalTrap("_$stack_").TrapHandler("%Label","%Opts")" $$$InitLocalErrorTrap
+#define LocalErrorTrapOff Kill %TECHErrorLocalTrap($stack) $$$TECHErrorTrapOff
+
+#define InitLocalErrorTrap Set %TECHErrorLocalTrap($stack)=%this,%TECHErrorLocalTrap($stack,1)=$ETRAP
+
+#define CheckLocalErrorTraps $$$DollarOrderCheck $$$DollarDataCheck
+#define DollarOrderCheck Set:($O(%TECHErrorLocalTrap($stack))'="") $ECODE="`PreviousTrapNotCleared"
+#define DollarDataCheck Set:($D(%TECHErrorLocalTrap($stack))) $ECODE="`PreviousTrapNotCleared"
+
+#define ThrowError(%s,%v) Set $ECODE="`"_%s_"`"_%v_"`"
+#define ThrowErrorStatus(%s,%v,%r) Set $ECODE="`"_%s_"`"_%v_"`"_$$ParseStatus^vhLib(%r)_"`"
+#define ThrowErrorUser(%s,%v,%u) Set $ECODE="`"_%s_"`"_%v_"``"_%u,
+#define ThrowErrorStatusAndUser(%s,%v,%r,%u) Set $ECODE="`"_%s_"`"_%v_"``"_%u
+#define ThrowErrorObject(%o) Do ##class(TECH.Error).Throw(%o) set $ECODE="`"_%o.GeefErrorCode()_"`"_%o.GeefErrorType()
+
+#define ClearError Set $ECODE=""
+#define ClearLocalError Set ErrorLevelTrapOn=$O(%TECHErrorLocalTrap(""),-1) If $ES=(ErrorLevelTrapOn+2) $$$ClearError
+#define StdHandling Do ##class(TECH.Error.impl.ErrorHandler).TrapHandler(.Label,.Options)
+#define ReThrow ; Rethrow is automatic
+
+#define chkRequiredParameter(%p) If '$length($get(%p)) $$$ThrowError($$$errParameterRequired,"%p")
+#define chkIsObject(%obj) If '$isobject(%obj) $$$ThrowError($$$errObjectExpected,"%obj")
+#define chkValidateObject(%obj) Set sc=%obj.%ValidateObject() If $$$ISERR(sc) $$$ThrowErrorStatus($$$errObjectValidationFailed,"%obj",sc)
+#define chkValidateDataType(%dt,%p) if '##class(%dt).IsValid(%p) $$$ThrowError($$$errInvalidInput,%p)
+#define chkMaxLength(%var,%maxlength) if $length(%var) > %maxlength $$$ThrowError($$$errInvalidInput,%var_": "_$length(%var)_">"_%maxlength)
+
+#define CreateStdErrorObject set %vhLastError = ##class(TECH.Error.ErrorObject).%New()
+#define AddToErrorObject(%String) do %vhLastError.Info.Insert(%String)
+
+#define errGeneralError "1000:GeneralError"
+#define errPropertyRequired "1001:PropertyRequired"
+#define errParameterRequired "1002:ParameterRequired"
+#define errParameterInvalid "1002:ParameterInvalid"
+#define errObjectExpected "1003:ObjectExpected"
+#define errLocked "1004:Locked"
+#define errInvalidInput "1005:InvalidInput"
+#define errInvalidOutput "1005:InvalidOutput"
+#define errInvalidID "1007:InvalidID"
+#define errCreateObject "1006:Create object"
+#define errInvalidEnumeration "1008:InvalidEnumerationValue"
+#define errUnimplemented "1009:Unimplemented"
+
+#define errObjectValidationFailed "3000:ObjectValidationFailed"
+#define errSaveFailed "3001:SaveFailed"
+
+#define errUserError "5000:UserError"
+
+
+
+
Index: TECH/Context/RuntimeContext.cls.xml
===================================================================
diff -u
--- TECH/Context/RuntimeContext.cls.xml (revision 0)
+++ TECH/Context/RuntimeContext.cls.xml (revision 1544)
@@ -0,0 +1,149 @@
+
+
+
+
+Verzameling van eigenschappen van de runtime context
+waarin de uitvoerende code zich bevindt.
+Deze context eigenschappen kunnen bvb bij start en einde van
+een inkomende SOAP of Java call, of unit test ingesteld worden.
+
+vhLib.Macro
+1
+%RegisteredObject
+
+
+%String
+
+
+
+
+%String
+
+
+
+
+%String
+1
+
+
+
+
+1
+TECH.Context.RuntimeContext
+
+
+
+
+1
+
+
+
+
+%String
+
+
+
+
+
+Werkt wanneer oproep via webservice of telnet binnenkomt binnen het netwerk.
+Oproepen van buiten het netwerk kunnen mogelijks problemen opleveren.
+%String
+ c:\"_FileName // ping vervangen door nslookup
+ Set Ok=$ZF(-1,"NSLOOKUP "_IP_" > c:\"_FileName)
+
+ Set Stream=##class(%FileCharacterStream).%New()
+ Set Stream.Filename="c:\"_FileName
+
+ Do Stream.ReadLine()
+ Do Stream.ReadLine()
+ Do Stream.ReadLine()
+ Set ComputerNaamOutput = Stream.ReadLine()
+
+ Set PiecesIterator = ##class(TECH.PiecesIterator).%New(ComputerNaamOutput," ")
+ While (PiecesIterator.HasNext())
+ {
+ Set ..ComputerNaam = PiecesIterator.Next()
+ }
+
+ Set Stream = ""
+
+ Do ##class(%File).Delete("c:\"_FileName)
+ }
+ }
+
+ Quit ..ComputerNaam
+]]>
+
+
+
+%String
+
+
+
+
+%String
+
+
+
+
+1
+1
+%Status
+
+
+
+
+
+
Index: TECH/enu/ExceptionCode.cls.xml
===================================================================
diff -u
--- TECH/enu/ExceptionCode.cls.xml (revision 0)
+++ TECH/enu/ExceptionCode.cls.xml (revision 1544)
@@ -0,0 +1,133 @@
+
+
+
+datatype
+1
+%String
+
+
+;1000:GeneralError;1001:PropertyRequired;1002:ParameterRequired;1002:ParameterInvalid;1003:ObjectExpected;1004:Locked;1005:InvalidInput;1005:InvalidOutput;1007:InvalidID;1006:Create object;1008:InvalidEnumerationValue;1009:Unimplemented;1010:FilesystemFailed;3000:ObjectValidationFailed;3001:SaveFailed;5000:UserError;5804:Concurrency
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+
+
+
Index: TECH/Exceptions/LockedException.cls.xml
===================================================================
diff -u
--- TECH/Exceptions/LockedException.cls.xml (revision 0)
+++ TECH/Exceptions/LockedException.cls.xml (revision 1544)
@@ -0,0 +1,16 @@
+
+
+
+
+1
+TECH.Exceptions.AbstractOmschrijvingException
+
+
+TECH.enu.ExceptionCode
+
+
+
+
+
+
Index: TECH/Config/dto/ConfigItem.cls.xml
===================================================================
diff -u
--- TECH/Config/dto/ConfigItem.cls.xml (revision 0)
+++ TECH/Config/dto/ConfigItem.cls.xml (revision 1544)
@@ -0,0 +1,21 @@
+
+
+
+
+1
+%RegisteredObject,%XML.Adaptor
+right
+
+
+%String
+
+
+
+
+TECH.Config.dto.ConfigWaarde
+list
+
+
+
+
+
Index: TECH/Config/ConfigService.cls.xml
===================================================================
diff -u
--- TECH/Config/ConfigService.cls.xml (revision 0)
+++ TECH/Config/ConfigService.cls.xml (revision 1544)
@@ -0,0 +1,46 @@
+
+
+
+
+1
+%RegisteredObject
+
+
+TECH.Config.dto.ConfigItems
+
+
+
+
+
+
Index: TECH/Exceptions/FileException.cls.xml
===================================================================
diff -u
--- TECH/Exceptions/FileException.cls.xml (revision 0)
+++ TECH/Exceptions/FileException.cls.xml (revision 1544)
@@ -0,0 +1,39 @@
+
+
+
+
+1
+TECH.Exceptions.AbstractOmschrijvingException
+
+
+%Status
+1
+
+
+
+Omschrijving:%String,Status:%Status
+1
+1
+%Status
+
+
+
+
+TECH.enu.ExceptionCode
+
+
+
+
+%String
+
+
+
+
+
+
Index: TECH/Exceptions/StatusException.cls.xml
===================================================================
diff -u
--- TECH/Exceptions/StatusException.cls.xml (revision 0)
+++ TECH/Exceptions/StatusException.cls.xml (revision 1544)
@@ -0,0 +1,39 @@
+
+
+
+
+1
+TECH.Exceptions.BaseException
+
+
+%Status
+1
+
+
+
+ExceptionCode:TECH.enu.ExceptionCode,Omschrijving:%String,Status:%Status
+1
+1
+%Status
+
+
+
+
+%String
+
+
+
+
+%String
+
+
+
+
+
+
Index: TECH/DateTime.cls.xml
===================================================================
diff -u
--- TECH/DateTime.cls.xml (revision 0)
+++ TECH/DateTime.cls.xml (revision 1544)
@@ -0,0 +1,322 @@
+
+
+
+
+1
+%RegisteredObject
+
+
+1
+Horolog:%String
+%Integer
+1
+
+
+
+
+1
+Horolog:%String
+%TimeStamp
+1
+
+
+
+
+1
+Horolog:%String
+%Boolean
+1
+
+
+
+
+1
+Horolog:%String
+%Date
+1
+
+
+
+
+1
+Text:%String,Type:%String="",Taal:%String=""
+%Date
+1
+
+
+
+
+1
+Timestamp:%TimeStamp
+%Integer
+1
+
+
+
+
+1
+Timestamp:%TimeStamp
+%Date
+1
+
+
+
+
+1
+TimeStamp:%TimeStamp
+%String
+1
+
+
+
+
+1
+Date:%Date
+%TimeStamp
+1
+
+
+
+
+1
+Horolog1:%String,Horolog2:%String
+%Boolean
+ ..HorologToSeconds(Horolog2)
+]]>
+
+
+
+1
+%Date
+
+
+
+
+1
+%Date
+
+
+
+
+1
+%TimeStamp
+
+
+
+
+1
+%Time
+
+
+
+
+1
+%TimeStamp
+
+
+
+
+1
+DatePart:TECH.enu.DatePart,Timestamp1:%TimeStamp,Timestamp2:%TimeStamp
+%Integer
+
+
+
+
+1
+TimeStamp:%TimeStamp,Verschil:%Integer,DatePart:TECH.enu.DatePart
+%TimeStamp
+
+
+
+
+1
+Datum:%Date,Verschil:%Integer,DatePart:TECH.enu.DatePart
+%Date
+
+
+
+
+
+Werkt ook met timestamp
+1
+Dag:%Date
+%String
+
+
+
+
+1
+Dag:%Date
+%Boolean
+
+
+
+
+1
+TijdExpressie:%TimeStamp
+%Integer
+
+
+
+
+1
+TijdExpressie:%TimeStamp
+%Integer
+
+
+
+
+1
+TijdExpressie:%TimeStamp
+%Integer
+
+
+
+
+
+Werkt ook met %Date
+1
+TijdExpressie:%TimeStamp
+%Integer
+
+
+
+
+
+Werkt ook met %Date
+1
+TijdExpressie:%TimeStamp
+%Integer
+
+
+
+
+
+Werkt ook met %Date
+1
+TijdExpressie:%TimeStamp
+%Integer
+
+
+
+
+
+Werkt ook met %Date
+1
+TijdExpressie:%TimeStamp
+%Integer
+
+
+
+
+1
+Datum:%Date
+%Date
+
+
+
+
+1
+Datum:%Date
+%Date
+
+
+
+
+1
+Datum:%Date,Verschil:%Integer
+%Date
+
+
+
+
+
+TimeStamp naar DD/MM uu:mm
+1
+TimeStamp:%TimeStamp
+%String
+
+
+
+
+1
+Datum:%Date
+%String
+
+
+
+
+
+
Index: TECH/Exceptions/GeneralErrorException.cls.xml
===================================================================
diff -u
--- TECH/Exceptions/GeneralErrorException.cls.xml (revision 0)
+++ TECH/Exceptions/GeneralErrorException.cls.xml (revision 1544)
@@ -0,0 +1,16 @@
+
+
+
+
+1
+TECH.Exceptions.AbstractOmschrijvingException
+
+
+TECH.enu.ExceptionCode
+
+
+
+
+
+
Index: TECH/Config/ConfigMgr.cls.xml
===================================================================
diff -u
--- TECH/Config/ConfigMgr.cls.xml (revision 0)
+++ TECH/Config/ConfigMgr.cls.xml (revision 1544)
@@ -0,0 +1,211 @@
+
+
+
+
+De ConfigMgr beheert configuratie-waarden.
+Het gebruikt ConfigItem instanties als data-bron.
+Elk proces heeft zijn eigen ConfigMgr instantie.
+Een proces kan zijn instantie resetten, bvb aan het begin van het verwerken van een SOAP call.
+Een proces kan een config waarde tijdelijk wijzigen, zonder andere processen te impacteren.
+
+Dit kan uitgebreid worden met:
+- controle op het type van de waarde
+- wijziging van een waarde enkel in het huidige proces toepassen
+- periodiciteit van waardes
+- in sync houden van waardes over meerdere databanken
+- Default waarde (per omgeving?)
+- duurtijd waarop een applicatie een configuratie waarde mag cachen
+...
+
+vhLib.Macro,TECH.Error
+1
+%RegisteredObject
+
+
+ConfigMgr
+
+
+
+ALLE
+
+
+
+1
+TECH.Config.ConfigMgr
+
+
+
+
+Sleutel:%String
+%Boolean
+
+
+
+
+
+Remark: DefaultWaarde is optioneel.
+Sleutel:%String,DefaultWaarde:%String
+%String
+
+
+
+
+Sleutel:%String,DefaultWaarde:%String
+%String
+
+
+
+
+Sleutel:%String,DefaultWaarde:%Boolean
+%Boolean
+
+
+
+
+
+Remark: DefaultWaarde is optioneel.
+Sleutel:%String,DefaultWaarde:%Boolean
+%Boolean
+
+
+
+
+
+Remark: Applicatie is optioneel.
+Sleutel:%String,Waarde:%String,Applicatie:%String
+
+
+
+
+Sleutel:%String,Waarde:%String,Applicatie:%String
+
+
+
+
+Omgeving:%String="",Sleutel:%String
+
+
+
+
+Sleutel:%String,Waarde:%Boolean,Applicatie:%String
+
+
+
+
+Sleutel:%String
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Index: TECH/IException.cls.xml
===================================================================
diff -u
--- TECH/IException.cls.xml (revision 0)
+++ TECH/IException.cls.xml (revision 1544)
@@ -0,0 +1,39 @@
+
+
+
+1
+
+1
+
+
+
+Wordt gebruikt om in de ecode weg te schrijven, de omschrijving blijft dus best beperkt.
+1
+%String
+
+
+
+1
+TECH.enu.ExceptionCode
+
+
+
+1
+%String
+
+
+
+1
+%TimeStamp
+
+
+
+
+Wordt door de error handler in het e-mailbericht bijgeschreven.
+1
+%String
+
+
+
+
+
Index: TECH/Config/dto/ConfigWaarde.cls.xml
===================================================================
diff -u
--- TECH/Config/dto/ConfigWaarde.cls.xml (revision 0)
+++ TECH/Config/dto/ConfigWaarde.cls.xml (revision 1544)
@@ -0,0 +1,21 @@
+
+
+
+
+1
+%RegisteredObject,%XML.Adaptor
+right
+
+
+%String
+
+
+
+
+%String
+
+
+
+
+
+
Index: TECH/Exceptions/InvalidInputException.cls.xml
===================================================================
diff -u
--- TECH/Exceptions/InvalidInputException.cls.xml (revision 0)
+++ TECH/Exceptions/InvalidInputException.cls.xml (revision 1544)
@@ -0,0 +1,16 @@
+
+
+
+
+1
+TECH.Exceptions.AbstractOmschrijvingException
+
+
+TECH.enu.ExceptionCode
+
+
+
+
+
+
Index: TECH/ExceptionHandler.cls.xml
===================================================================
diff -u
--- TECH/ExceptionHandler.cls.xml (revision 0)
+++ TECH/ExceptionHandler.cls.xml (revision 1544)
@@ -0,0 +1,90 @@
+
+
+
+
+1
+%RegisteredObject
+
+
+1
+Exception:TECH.IException
+
+
+
+
+1
+ExceptionTypes...:%String
+TECH.IException
+
+
+
+
+
+Laat de callstack intakt. Exceptie is exceptioneel. Wanneer deze is leeggelaten wordt de bestaande exceptie gerethrowed (indien deze niet werd gecatched uiteraard!)
+In geval van een transactie kan de rethrow zonder exceptie parameter niet gebruikt worden omdat de $zerror ook wordt gerollbacked.
+Volgende stramien moet dan gebruikt worden:
+ Set Exceptie = ##class(TECH.ExceptionHandler).Catch()
+ TROLLBACK
+ Do ##class(TECH.ExceptionHandler).Rethrow(Exceptie)
+1
+Exceptie:TECH.IException
+
+
+
+
+
+