¿Sabes cómo optimizar la carga de plurales en Velneo V7?

¿Estás desesperado porque tus formularios con plurales incrustados en pestañas tardan en cargarse?

¿Sabes que puedes optimizar la carga de plurales en Velneo V7 con 3 simples manejadores de evento?.

¿No me crees?

¡Ingenuo!

Imaginad que tenemos un formulario con una ficha de un maestro y en un separador tenemos unos cuantos formularios en los que tenemos incrustados varios plurales (en mi caso tengo un extracto contable y unos cuantos plurales para ver sus vencimientos, iva soportado, iva repercutido, el iva, etc etc…)

plurales en velneo V7

Lo normal cuando estamos empezando es poner en cada uno de los formularios un objeto vista de datos con un maravilloso proceso con estas líneas:

Proceso_Previo

Este proceso hace precisamente lo que queremos. Nos carga el plural deseado y nos devuelve la lista a la salida…

Este sistema tiene dos problemas:

  • 1.- Velneo, antes de mostrarnos el formulario, carga todos los registros de los plurales que se encuentren en el control “Separador de formularios” (vayamos a mostrarlo o no) al mostrar el formulario principal en el que se encuentra nuestro separador.
  • 2.- El cabreo que se coge el usuario cada vez que tenga que mostrar el formulario que hará que se acuerde de toda tu familia.

¡Tranquilo.!

Hay una solución sencilla para tu problema.

On Hide y On Show son tus aliados para cargar los plurales en Velneo V7

antes de explicarte el proceso, vamos a ir con un poco de teoría sobre estas señales:

  • On Show: el manejador de evento asociado se disparará cuando el formulario que contiene dicha señal esté visible. Esta señal nos permite cargar el contenido del formulario cuando se vaya a mostrar la pestaña en la que está contenido dicho formulario. Hablando en plata… usando esta señal evitaremos que se cargue el contenido al mostrar el formulario principal y por lo tanto evitaremos en problema número 1 visto anteriormente. Para conseguirlo tendremos que disparar un manejador de evento en el que (en el caso de los plurales) nos cargue el contenido en la vista de datos correspondiente.
  • On Hide: el manejador de evento asociado se disparará cuando el formulario deje de estar visible.

¿Que objetos necesitamos para realizar este montaje

Antes de crear ningún objeto, para optimizar todavía mas la carga de los plurales, tenemos que asegurarnos que la vista de datos del formulario se cargue sin registros. Mostraremos la vista de datos sin registros. Ya nos encargaremos posteriormente de cargarlos

Creando los objetos

– 2 Variables

  • Visible: de tipo booleano para saber si el formulario que contiene el plural está visible
  • Loaded: de tipo booleano para saber si ya hemos cargado el plural en la vista de datos

– 3 conexiones de evento

  • ON_HIDE: lanzará el manejador de evento asociado cuando se dispare la señal “On hide”, es decir cuando se oculte el formulario
  • ON_SHOW: lanzará el manejador de evento asociado cuando se dispare la señal “On Show”, es decir cuando se muestre el formulario
  • CHR_REG: lanzará el manejador de evento asociado cuando se dispare la señal “Item_ cambio de seleccionado” (recordad que este formulario puede estar en un multivista por ejemplo)

– 4 manejadores de evento

  • ON_HIDE: marcaremos como oculto el formulario (variable VISIBLE = 0).
  • EVT_ON_HIDE

  • ON_SHOW: marcaremos el formulario como visible (variable VISIBLE = 1) y si no está cargado (variable LOADED = 0), llamaremos al manejador de evento que carga el plural.
  • EVT_ON_SHOW

  • CHR_REG: si cambiamos de registro, marcaremos el plural como no cargado (variable LOADED = 0) y si el formulario está visible (variable VISIBLE = 1), llamaremos al manejador de evento que carga el plural.(
  • EVT_CHG_REG

  • CARGAR_PLURAL: es este manejador, primero crearemos una cesta local de la tabla que vayamos a cargar el plural. Cargaremos el plurar deseado y añadiremos los registros a la cesta creada anteriormente.

    Procesaremos el control en el que se encuentra la vista de datos (“Interfaz: Procesar control”); cortaremos la lista incluida en el mismo (para asegurarnos de que no tenemos ningún registro anterior) y le añadiremos a la vista de datos los registro guardados en la cesta. Por último marcaremos como cargados los registros del plural (variable LOADED = 1).

  • EVT_CARGAR_PLURAL

Con esto hemos terminado de realizar nuestra optimización para cargar los plurales de un formulario.

Si queremos ir un paso mas allá, podemos realizar esta carga en tercer plano. Tan solo tenemos que crear un proceso que se encargue de cargar el plural que queramos (en el ejemplo en lugar de cargar el plurar directamente, cargo una lista con el valor de una variable que le paso desde el manejador ya que lo lanzo desde una tabla virtual)

PRC_CARGA_PLURAL_3P

y modificar el manejador de evento “CARGAR_PLURAL” para que llame a este proceso en tercer plano… mas o menos así:

EVT_CARGAR_PLURAL_OPT

Ya sólo nos queda sacar la “churrera” (como diría mi amigo Jorge) y copy-paste todo este montaje en aquellos formularios donde queramos optimizar la carga de plurales (¡recordad cambiar el plural que os conozco!)

Si te parecido útil el artículo, puedes dejarme un comentario mas abajo y si crees que es interesante… por favor compártelo

NOTA: gracias a Jesús Arboleya por “iluminarme” para la realización de este montaje

Francisco José Vila Martín
ayudavelneo@ayudavelneo.com

Francisco José Vila es autor del blog Ayudavelneo desde donde ayuda a desarrolladores que se están iniciando en Velneo a acortar su curva de aprendizaje para que obtengan beneficios y sean rentables desde el minuto 1.

Además es programador certificado y formador en la plataforma de desarrollo de aplicaciones empresariales Velneo V7.
Ampliar información



3 Comments
  • Héctor Santoveña
    Posted at 18:13h, 13 marzo Responder

    Te puedes ahorrar el evento y la conexion on_hide: en el evento CHR_REG, “setea” la variable VISIBLE con la instruccion “Interfaz: ¿Esta visible?” y listo 😉

    • Francisco José Vila Martín
      Posted at 09:34h, 14 marzo Responder

      Hola Héctor:

      Si tú lo dices… amén. Un placer tener a un maestro de V7 como tú por aquí.

      Por cierto el año pasado te escapaste de los hangouts…. esto año no creo que tengas la misma suerte.

      Un saludo y gracias por darte una vuelta por mi blog.

      • Héctor Santoveña
        Posted at 18:35h, 17 marzo Responder

        Aquí me tienes para lo que gustes.

        Gran trabajo el que haces en Ayudavelneo. Sigue así 🙂

        Un saludo desde el norte.

Post A Comment

Pin It on Pinterest