From e3752c848b9fa6dc5b13719442aa7d715058a63e Mon Sep 17 00:00:00 2001 From: Jos Groot Lipman Date: Thu, 12 Jan 2017 09:35:34 +0000 Subject: [PATCH] FSN#39008 MoveFirst problemen bij meer dan 100 records svn path=/Website/branches/v2016.3/; revision=32327 --- APPL/Shared/kenmerk_common.inc | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/APPL/Shared/kenmerk_common.inc b/APPL/Shared/kenmerk_common.inc index 454b1cd36e..6aa9f3dd85 100644 --- a/APPL/Shared/kenmerk_common.inc +++ b/APPL/Shared/kenmerk_common.inc @@ -268,7 +268,6 @@ function listKenmerk(sql, module, key, props) var hasfilter = props.hasfilter || false; // De kenmerken kunnen op naam gefilterd worden. var tmpfolder = props.tmpfolder || ""; - var oRs = Oracle.Execute(sql); var predone = false; var colCount = 0; // Even/oneven zodat we weten of we links of rechts zitten @@ -294,21 +293,21 @@ function listKenmerk(sql, module, key, props) // Zitten er expressie kenmerken tussen? var flexExprIncluded = false; - if (!oRs.eof) + var oRs = Oracle.Execute(sql); + while (!oRs.eof) { - while (!oRs.eof) - { - var kdefault = oRs("kenmerk_default").Value; - if (kdefault && kdefault.match('##EXPR##') != null) - { - flexExprIncluded = true; - break; - } - oRs.MoveNext(); - } - // movefirst kan alleen als er resultaat was, vandaar de if (!oRs.eof) hieromheen. - oRs.MoveFirst(); + var kdefault = oRs("kenmerk_default").Value; + if (kdefault && kdefault.match('##EXPR##') != null) + { + flexExprIncluded = true; + break; + } + oRs.MoveNext(); } + oRs.Close(); + + // Opnieuw dezelfde query is niet supperefficient maar een MoveFirst is problematisch (FSN#39008) + var oRs = Oracle.Execute(sql); // ============================================================================================ // Doorloop alle flexkenmerken