Enlaces indirectos: toda la potencia de Velneo V7 en tu mano

Cuando enlazamos una tabla con otra en Velneo V7, lo hacemos a través del campo ID.

Para ello definimos en la propiedad “Tipo de enlace” el valor “Maestro” y seleccionamos en la propiedad “Tabla enlazada” la tabla con la que queremos enlazar.

Pero ¿y si queremos enlazar esas tablas por otro campo que no sea el ID? La solución la tenemos en los “Enlaces Indirectos”

¿Que son los enlaces indirectos?

Para saber qué es un enlace indirecto, como siempre, vamos a ver que dice la ayuda oficial para este caso:

Este enlace se utiliza para relacionar la tabla de datos actual con otra tabla que no es maestra de la actual y que se elige en la propiedad Tabla enlazada. Este enlace necesita ser resuelto manualmente por el diseñador; para ello se ha de usar un índice de clave única de la tabla a enlazar“.

Antes de ver un ejemplo concreto, vamos a revisar los tipos de enlace indirecto que tenemos:

  • Indirecto real: este enlace tiene persistencia en disco y puede ser usado en las actualizaciones de la tabla.
  • Indirecto virtual: este enlace tiene persistencia en memoria y no puede ser usado en las actualizaciones de la tabla.

Ejemplo práctico: enlazando la tabla de “Movimientos de almacén con la tabla de “Stock”

Vamos a suponer que tenemos una aplicación de gestión en la que a partir de los movimientos que se hagan en nuestros almacenes, tenemos que actualizar una tabla de stock de los artículos. Además queremos que ese stock de artículos se lleve por almacén.

Si realizamos un movimiento de un artículo en el almacén 1, tendremos que actualizar posteriormente el stock en ese almacén para ese artículo

Nuestra primera idea sería enlazar la tabla de movimientos con la de stock a través de un enlace a maestro. El enlace se produciría a través del campo ID por lo que en ningún momento tendríamos el control sobre qué almacén y artículo estamos actualizando las existencias.

Las tablas obviamente quedarían enlazadas, pero no cumplirían la funcionalidad que queremos desarrollar.

Lo que vamos a hacer es enlazar las tablas a través de un enlace indirecto real, para posteriormente poder realizar actualizaciones desde la tabla de movimientos a la tabla de stock a través de este enlace.

Creando los objetos necesarios

Lo primero que tendremos que crear en la tabla de “Stock” es el índice de clave única por el que enlazar a través del enlace indirecto desde la tabla de “Movimientos de Almacén” (doy por supuesto que ya tenemos un campo en la tabla de “Stock” enlazado con la tabla de “Artículos” y otro campo enlazado con la tabla de “Almacenes”).

Dicho índice será de clave única y tendrá dos partes:

  • Almacén
  • Artículo

A continuación, crearemos en la tabla de “Movimientos de almacén” un campo para enlazar ambas tablas a través del enlace indirecto. Estas serán sus propiedades:

  • Tipo de enlace: Indirecto real
  • Tabla enlazada: Stock
  • Indice: en esta propiedad nos aparecerán únicamente los índices de clave única de la tabla con la que queremos enlazar.
  • Resolución: tendremos que resolver manualmente todas las partes del índice de clave única. Para ello podemos hacer uso del editor de fórmulas para asignar contenido a dichas partes del índice (campos de la tabla movimientos, variables, etc etc).

Con estos sencillos pasos hemos enlazado dos tablas a través de un enlace de tipo indirecto real.

A partir de aquí, ya podemos utilizar este campo para, por ejemplo, actualizar el stock pendiente de recibir, pendiente de servir, etc del artículo sobre el que estemos realizando el movimiento.

Espero que este post te haya aclarado las dudas que puedas tener a la hora de crear un campo con un enlace indirecto en Velneo V7.

Déjame un comentario mas abajo y comenzamos el debate.

Suscríbete al blog para recibir mas artículos como este… ¡Es gratis!

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

1Comment
  • Matias Castro
    Posted at 17:27h, 06 mayo Responder

    Gracias, me sirvio.
    Aunque me hubiera gustado que pongas imágenes de por ejemplo las propiedades de ese enlace indirecto real terminado, puede parecer tonto pero hay cosas que los que no estamos acostumbrados a programar en Velneo aunque sean tontas se nos pasan o no sabemos como resolverlas rápidamente, Por experiencia al hacer consultorias con programadores expertos, se nota que hay cosas que las tienen incorporadas como automáticas o por default siendo que para otro que no conoce bien la plataforma no lo son.
    Gracias

Post A Comment

Pin It on Pinterest