Drag and drop en Velneo 7

Vamos a ver como podemos implementar el efecto «drag and drop» (o arrastrar y soltar) entre dos listas de registros en Velneo V7.

¿Qué necesitamos para conseguir el efecto? Obviamente 2 listas de registros, un subobjeto drop en la lista de destino y un proceso que se ejecutará al hacer «drop» en la lista de destino.
Pasar datos de una lista a otra también lo podemos conseguir mediante botones que ejecuten eventos… pero ¿y lo bonito que queda arrastrar en una lista y soltar en la otra?

Para ilustrar el ejemplo utilizaremos el drag and drop que hay en la aplicación gtdenlanube.com para asignar «Contextos» a una tarea (el ejemplo también está disponible en la app GeproGTD

Drag and drop en Velneo V7

Creando los objetos necesarios para el drag and drop

En nuestro ejemplo tenemos dos vistas de datos. En la primera tenemos la lista de todos los contextos y en la segunda tenemos únicamente los contextos asignados a la tarea.

Creando el «drag»

Para realizar el «drag» primero cargamos en la vista de datos los registros a seleccionar mediante un proceso:

Cargar datos en drag

A continuación en la propiedad «Estilo» de la rejilla le indicamos el tipo de «drag»:

Drag_Contextos

  • Arrastrable para copiar: No quita el elemento/s del objeto origen
  • Arrastrable para mover: Quita el elemento/s del objeto origen

Con esto ya tenemos creado el «drag»… qué esperabas ¿algo mas complicado?

Creando el «drop»

Para realizar el «drop» necesitaremos crear un «subobjeto drop» en la rejilla de destino y asignarle un «proceso» con las instrucciones que queremos realizar al ejecutar dicho drop.

Drop contextos

En el drop le indicaremos el origen de los datos que recibirá (es decir la tabla de donde vendrán los registros del «drag») y el proceso a ejecutar que tendrá origen la misma tabla del drag y como destino la tabla del drop.

Creando el proceso a ejecutar en el drop

En el proceso lo que vamos a realizar es asignar uno o varios contextos (depende de los registros seleccionados en el drag) a la ficha de la tarea en la que nos encontramos. El proceso es el siguiente:

Proceso drop

Con la instrucción «Procesar ficha en memoria (Ficha drop)» tenemos acceso a los datos de la ficha sobre la que se ha soltado el drag (en nuestro caso «Contextos de tareas»)

Lo único que nos queda es recorrer la lista de los registros que «vuelan» con el drag y realizar las acciones correspondientes (en el ejemplo comprobamos que los contextos no estén asignados ya a la tarea y si no lo están se los asignamos).

Para que el drag and drop quede completo, crearemos un «Manejador de evento» que ejecute la instrucción «Interfaz: Recalcular» para refrescar el objeto que recibe el drop. Este evento se lo asignamos al control que recibe dicho drop mediante una «Conexión de evento» con la señal «Drop finalizado»

Ahora ya sabes… a practicar y si tienes alguna duda pregunta!!!!

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

No Comments

Post A Comment

Información básica sobre Protección de Datos: Responsable: Francisco José Vila Martín. Finalidad: Gestionar y moderar los comentarios. Legitimación: Tu consentimiento. Destinatarios: Tus datos se alojarán en los servidores de Web Empresa S.L. (UE). Derechos: Tienes derecho a acceder, rectificar, limitar y suprimir los datos, así como otros derechos, como se explica en la información adicional. Información adicional: Puedes consultar la información adicional y detallada sobre protección de datos personales en mi Política de Privacidad.

Pin It on Pinterest