Mejor forma de sustituir un multivista


([N2] fermin3f) #1

Buenos días.

Estoy buscando la forma optima de sustituir un multivista. El motivo es poder controlar el tamaño de las distintas vistas. (inconveniente ya tratado en http://velneo.es/foros/topic/dimensiones-de-controles-en-multivista/ )

Para ello voy a utilizar un formulario con un splitter en el que irán los distintos formularios con sus vistas de datos.

Para las vistas de datos que acaban en una lista no hay problema, Se crea un objeto que devuelva una lista a medida gracias a las variables locales y se añade al interfaz. Esta opción se puede optimizar mucho con un proceso en 3 plano que llama a la busqueda. Si alguien no sabe de lo que hablo que mire esto http://ayudavelneo.com/como-optimizar-la-carga-de-registros-en-velneo-v7-de-una-vista-de-datos-en-un-formulario-sin-origen

El problema viene cuando la vista de datos acaba en una ficha con su correspondiente formulario de modificación.

Soluciones planteadas en http://velneo.es/foros/topic/inducir-ficha-en-vista-de-datos-formulario/

  1. A través de variable global en memoria.
    Como la ficha de la vista de datos se alimenta de un proceso de destino ficha, ese proceso coge el parámetro de sincronización de una variable global. Mis dudas respecto a esta opción que funciona perfectamente corresponden a la penalización de usar una variable global.

Para los que estén empezando con velneo, los mandamientos de la velocidad son estos http://www.ascsl.com/2012/06/consejos-para-mejorar-el-desarrollo-en-la-nube/

  1. Lista de 1 Elemento.
    También planteada en este foro, que es tratar la ficha como si fuese una lista de 1 elemento. ¿Cómo un origen lista acaba mostrando un formulario de modificación? Pues con un casillero de 1×1.

Problema si ese formulario de modificación incrustado en el casillero carga plurales a mi me cuelga VClient.

3.Inducir la ficha en el formulario de modificación a través de una variable local.
Esta opción que en teoría sería la ideal, no soy capaz de realizarla.

¿Alguien sabe inducir una ficha en un formulario de modificación que está en una vista de datos?

¿Alguien utiliza otro sistema donde se vea la rejilla y el formulario de modificación de cada ficha?


([N3] ereitmann) #2

Hola, tal vez , se me ocurre,que definiendo un evento de interfaz, digamos un doble clic sobre la vista de datos que contenga a ese formulario con su ficha llame a un manejador de evento en donde se crea un manejador de objeto que finalmente abra en un formulario modal que te permita ahora si modificar esa ficha.


([N4] eic) #3

Hola.

Yo lo tengo hecho sin splitter: pongo dos vistas de datos, una (A) a la izquierda (rejilla) y otra (B) a la derecha (vista de datos que “termina” en un formulario). El proceso que alimenta la vista de datos B tiene salida tipo ficha, y coloco después un formulario normal. Al seleccionar un elemento de la rejilla, modifico una variable global, de la que depende el proceso que alimenta a B, y recalculo la vista B. En definitiva, la solución que planteas tú, utilizando una variable global (en memoria). No he notado penalización por usar esa variable global.


([N3] pacosatu) #4

Hola fermin3f.

Otra forma.
Si quieres inducir la ficha en la Vista de datos del formulario (tu opción 3) usa la función del API de JS oVistaDatosForm.setregister()

  • Gestiona el evento “Cambio de seleccionado” de la Rejilla
  • Obtén el ID selecionado en la Rejilla y guarda en Variable Local
  • Obtén un VRegister (oRegistro) a partir de ese ID
  • Induce el VRegister en la Vista de Datos del formulario con oVistaDatosForm.setRegister(oRegistro)

Saludos
Paco Satué