Lentitud en búsqueda


([N1] servinfordelfin) #1

Hola me va muy lento lo siguiente :

Tengo una tabla de trabajadores con sus datos donde uno de los campos es la empresa a la que pertenecen.

Quiero que los usuarios (que serán las distintas empresas) únicamente vean los datos de "su empresa" para ello les he dado como nombre de usuario el código de su empresa que es el mismo que sale en el campo empresa de la ficha de trabajadores. Ese código de usuario es el que me debe servir para filtar en las listas. He creado un formulario inicial y luego otro con un campo objeto con la rejilla de trabajadores.

Lo primero que he intentado es coger la variable de sistema  SysUserName que coge el nombre de usuario y filtrar por ella en la tabla personal. El resultado es una búsqueda muy lenta y cuando salgo del formulario lista de trabajadores me da error V7 y se cierra la aplicación.

Lo segundo que he intentado es crear una variable global que al entrar en el formulario inicial mediante un evento coge el valor de SysUserName con eso logro que no se cierre v7 pero la búsqueda por filtor en la tabla sigue muy lenta.

Tercero un proceso

Cargar lista empleados - Filtro por la variable - ordeno lista y cargo y añado lista a la salida.

Va más rápido peo tarda uno 10 segundos en abrir una lista de 100 trabajadores con lo que sigue siendo lento

Cómo podría ir más rápido?

 

 


([N1] soportec) #2

Hola,

En lugar de utilizar un filtro debes añadir un componente mas a la búsqueda que contenga al índice empresa de la tabla de trabajadores, le pones que busque o por ejemplo rangos e inicializas los valores desde y hasta a la variable global o una local previmente inicializada.

Saludos,

Julio


([N1] servinfordelfin) #3

Hola Julio, gracias por tu respuesta le acabo de añadir componente más a la búsqueda con el índice empresa pero donde se pone lo del rango o que busque que me comentas?


([N1] soportec) #4

Debes acceder a las propiedades del componente y dentro de ellas modificar la propiedad MODO al valor ENTRE LIMITES, entonces se mostrarán dos propiedades mas, una para el valor desde y otra para el valor hasta. Ahí introduces el nombre de la variable que limita los datos.

Saludos,

Julio


([N1] servinfordelfin) #5

Julio, no te doy un beso porque eres tío y estamos en internet pero esto !!!!!ya va de cine!!!!! muuuuchas gracias