Index: TECH/Persistentie/Repository.cls.xml =================================================================== diff -u -r2373 -r2374 --- TECH/Persistentie/Repository.cls.xml (.../Repository.cls.xml) (revision 2373) +++ TECH/Persistentie/Repository.cls.xml (.../Repository.cls.xml) (revision 2374) @@ -84,15 +84,19 @@ #dim SqlStatement As TECH.String = "SELECT * FROM " _SQLTableName _" WHERE " _Filter #dim ResultSet As TECH.ResultSet = ..QueryAPI.GetResultSet(##class(TECH.DynamicQuery).%New(SqlStatement,Params)) - #dim ResultSetIterator As TECH.ResultSetIterator = ##class(TECH.ResultSetIterator).%New(ResultSet) - + #dim Result As TECH.Persistent = "" + + #dim RecordCount = 0 + while ResultSet.Next() { + Set Result = $classMethod(..#DataClassName,"%OpenId",ResultSet.Data("ID")) + Set RecordCount = RecordCount +1 + If RecordCount > 1 { + Do ##class(TECH.Exceptions.DataNotFoundException).Throw("geen unieke data gevonden voor " _..#DataClassName) + } + } - Set:ResultSetIterator.HasNext() Result = $classMethod(..#DataClassName,"%OpenId",ResultSetIterator.Next().Data("ID")) - - if ResultSetIterator.HasNext() { - Do ##class(TECH.Exceptions.DataNotFoundException).Throw("geen unieke data gevonden voor " _..#DataClassName) - } ElseIf Result="" { + if Result = "" { Do ##class(TECH.Exceptions.DataNotFoundException).Throw("'geen data gevonden voor " _..#DataClassName) }