Desde la versión 5.0.0.33 se incluye la opción de saltarse la restricción de 20.000 registros impuesta en las búsquedas de colecciones.
Esta restricción es una condición necesaria para minimizar el impacto de búsquedas costosas sobre la base de datos que podrían llegar no sólo a bloquear el equipo del empleado que lanza la consulta sin filtrar, sino de la propia base de datos y, por extensión, de todos los usuarios y aplicaciones que trabajan sobre la misma.
Una consulta, por ejemplo, sobre una tabla de líneas de pedidos con un millón de registros sin un filtro previo adecuado, podría llegar a tardar minutos en devolver la información, consumiendo un porcentaje importante de recursos (RAM, procesador) en el servidor SQL (dependiendo de la potencia y configuración del mismo).
Por este motivo, el parámetro necesario para saltarse la restricción TECHFUN_LIMITECOLECCIONES no es accesible desde el entorno del ERP y es necesario modificarlo por base de datos.
UPDATE Ceesi_Configuracion SET Valor = 'ON' WHERE Parametro = 'TECHFUN_LIMITECOLECCIONES'
Una vez activado el parámetro, en las colecciones del ERP aparecerá un nuevo componente para poder seleccionar el límite de registros mostrados en la misma.
El combo muestra dos valores por defecto y permite introducir un valor manualmente (foco en el combo, borrando el contenido y escribiendo el valor numérico). Al escribir el valor es necesario pulsar ENTER para volver a ejecutar la consulta y aplicar el nuevo límite del filtro.
El valor introducido manualmente en el combo no aparecerá para seleccionar en el mismo a menos que se guarde junto a la configuración de la colección para el usuario (tabla Perfiles, campo NumRegistrosColecciones). Si se guarda, se respetará este valor por defecto cada vez que se haga una búsqueda en esa colección, incluso entre reinicios de la aplicación.
El número de registros y el color del mismo varía en función del filtro de tabla, el límite de registros mostrados y el total de registros de la consulta ejecutada. De esta forma encontramos tres numeraciones.
Cargados A de B sobre C registros.
- El valor de A hace referencia al número de registros que se están visualizando en la tabla en ese momento (incluyendo todas las páginas de la misma, no sólo la que se muestra en pantalla)
- El valor de B hace referencia al número máximo de registros que el sistema puede recuperar en la consulta o, dicho de otra manera, el límite de registros de la colección. Por defecto todas las colecciones entran en modo (Recomendado) que equivale a los 20.000 valores de tope.
- El valor de C hace referencia al número total de registros de la consulta. Es decir, si se hace una búsqueda sin filtro, este número sería el total de registros de la base de datos.
En el caso de la imagen anterior se interpretaría de la siguiente forma: se muestran en la tabla 500 registrossobre los 500 máximos marcados por el límite de registros del combo, de un total de 20.496 registros que hay en la base de datos. Si, por ejemplo, se aplicara un filtro en una columna de la colección sin pulsar ENTER (filtro local de la tabla), el número de registros cargados variaría.
En este caso se mostraría 4 registros filtrados sobre los 500 previamente cargados (no sobre los 20.496 totales). Si se quisiera aplicar el filtro de la cabecera sobre el total de registros, habría que relanzar la consulta pulsando ENTER en la misma y recuperando el resto de registros de esos 20.496 que sí cumplen con el filtro establecido.
Visualmente, si la colección no puede mostrar el total de registros que devuelve la consulta (con o sin filtros), el texto se remarca en rojo para facilitar la comprensión del usuario.
¿Le ha sido útil este artículo?
¡Qué bien!
Gracias por sus comentarios
¡Sentimos mucho no haber sido de ayuda!
Gracias por sus comentarios
Sus comentarios se han enviado
Agradecemos su esfuerzo e intentaremos corregir el artículo