Intentando reflejar patrones correctos de programación con Velneo que les ayuden en sus futuros desarrollos. Uno de ellos es «¿Cómo optimizar la carga de registros en Velneo V7?»

¿De dónde partimos?

Queremos conseguir que si el usuario introduce algo en el control de búsqueda (ver formulario mas abajo), la vista de datos nos devuelva los registros que coincidan con el texto introducido. Si no introduce nada… queremos que nos devuelva todos los registro de la tabla ordenados por nombre.

Carga de registros en Velneo V7

Objetos necesarios

Los objetos necesarios para conseguir nuestro objetivo serán:

  • Un proceso para cargar la vista de datos. Este proceso tendrá como «Tabla Asociada»… ninguna y como destino la lista de proyectos (en este caso). El proceso no contendrá nada. Como suena… NADA.
  • Un «Manejador de evento» On init con el siguiente código

Evento on init

  • Obviamente un «Manejador de evento» Refrescar. (Veremos el código mas adelante)
  • Una «Conexión de Evento» que lance el «Manejador de evento» On Init

Conexion Evento On Init

  • Un «Botón» que ejecute el «Manejador de evento» Refrescar

Patrones correctos de programación para optimizar la carga de registros en Velneo V7

Vamos a ver en detalle el «Manejador de evento» Refrescar para conseguir el objetivo que buscamos:

Evento Refrescar

  • Creamos una cesta local de la tabla que queremos mostrar en la vista de datos
  • Comprobamos si hay algún valor en el campo de búsqueda del formulario
  • Si está vacío el campo (entramos por el IF)… creamos un «Manejador de objeto» de la búsqueda que tenemos definida en la tabla por nombre.
  • Disparamos el objeto EN TERCER PLANO… Esto es muy importante para que la búsqueda se realice en el servidor.
  • Si la búsqueda ha encontrado algún registro… con el comando «Cesta: Agregar lista a la cesta» los depositamos en la cesta creada anteriormente para mostrarlos posteriormente en la vista de datos
  • Si el campo de búsqueda tenía algún valor (entramos por el ELSE)… creamos un «Manejador de objeto» de la búsqueda que tenemos definida en la tabla por palabras
  • Con la instrucción «Set variable local de objeto» le pasamos a la búsqueda el valor introducido por el usuario (tendremos que tener en dicha búsqueda una variable del mismo tipo que el valor introducido así como un componente de búsqueda cuyo límite inicial será esta variable)
  • Disparamos el objeto EN TERCER PLANO… Vuelvo a repetir: Esto es muy importante para que la búsqueda se realice en el servidor.
  • Si la búsqueda ha encontrado algún registro… con el comando «Cesta: Agregar lista a la cesta» los depositamos en la cesta creada anteriormente para mostrarlos posteriormente en la vista de datos
  • Procesamos la vista de datos con la instrucción «Interfaz: procesar
  • Con la instrucción «Cortar lista» nos aseguramos que no haya ningún registro en la lista destino
  • Por último, con la instrucción «Cesta: Agregar a la lista en curso» le pasamos a la vista de datos los registros devueltos por cualquiera de las dos búsquedas

Con este montaje nos aseguraríamos de que las distintas búsquedas se lanzasen en el servidor y tendríamos optimizada la carga de registros en Velneo.