Una relación entre entidades es una referencia entre documentos que pertenecen a dominios diferentes. Esta referencia está definida por un campo de una de estas entidades. En la práctica, este campo se rellenará con el ID de un documento de la entidad relacionada, siendo dicho documento invisible para el usuario.
Por ejemplo, tu tienda tiene una entidad Cliente y otra Lista de compras, y deseas que cada cliente pueda tener varias listas de compras. Para hacerlo, es necesario crear un campo en la entidad Lista de compras e informar a qué cliente pertenece.
Master Data ya cuenta con algunas relaciones predeterminadas, como Cliente (CL) y Dirección (AD).
Crear relación entre entidades de datos
Para crear una relación se necesitan dos entidades de datos. Si solo hubiera una, puedes crear otra siguiendo las instrucciones a continuación. Para más información sobre entidades de datos, consulta la guía Entidad de datos.
Retomando el ejemplo mencionado en la introducción: se debe crear una entidad llamada Lista de compras para relacionarla con Cliente. Esta relación permitiría a un cliente tener varias listas de la compra; sin embargo, una lista de compras solo puede pertenecer a un único cliente.
Ilustramos a continuación los pasos a seguir con este mismo ejemplo:
-
En el Admin VTEX, accede a Configuración de la tienda > Storefront > Master Data.
-
Haz clic en
Configuración avanzada
. -
Haz clic en Estructura de datos. Accederás a una nueva página.
-
Haz clic en la pestaña Entidades de datos.
-
Si deseas crear una relación en una nueva entidad, haz clic en el botón
Agregar
para crear una nueva entidad de datos.Si deseas crear una relación en una entidad existente, selecciónala haciendo clic en el botón de editar y procede al paso 7.
-
Configura la nueva entidad rellenando los campos Acrónimo y Nombre y añadiendo los campos deseados. Aprende más sobre campos en la guía Crear un campo en Master Data.
En este ejemplo, la entidad utilizará el nombre
Lista de compras
, el acrónimoLC
e, inicialmente, el campocompras
de tipoVarchar 750
.Para más información sobre cómo rellenar los campos, consulta la guía Entidad de datos.
-
Agrega un campo de tipo Relationship y define su nombre. En este ejemplo, se llamará
Cliente
. -
Haz clic en el ícono de engranaje situado al lado del campo Relationship para configurarlo.
-
En Configuración de campo personalizado, selecciona la entidad a la que deseas hacer referencia y el campo que se mostrará en la relación. En este ejemplo, la relación se realizará con la entidad Cliente y se mostrará el campo email.
-
Haz clic en el botón
Guardar
para guardar la configuración. -
Haz clic en el ícono de publicación para publicar la entidad.
-
También puede ser necesario actualizar las aplicaciones para implementar los cambios. Para hacerlo, accede a Configuración de la tienda > *Storefront > Master Data y haz clic en el botón
Volver a cargar aplicaciones
.
Crear relación entre documentos
Las relaciones también pueden aplicarse a documentos, siempre que exista una relación entre entidades de datos. Para proceder, es necesario modificar el formulario de una entidad de datos, como se ilustra a continuación:
-
En el Admin VTEX, accede a Configuración de la tienda > Storefront > Master Data.
-
Haz clic en el ícono de engranaje junto al nombre de la aplicación.
Serás redirigido a la lista de formularios de esa aplicación.
-
Para crear un nuevo formulario, haz clic en
+ Nuevo
. -
Rellena el Nombre del formulario.
-
Selecciona la Entidad de datos a la que se vinculará el formulario. En estas instrucciones, utilizaremos la entidad Lista de compras como ejemplo.
Los campos de la entidad se mostrarán en una lista en la pestaña Campos de la lista y podrán seleccionarse para componer el formulario.
-
Selecciona el campo de relación y cualquier otro que desees incluir en el formulario. Siguiendo el ejemplo, incluiremos el campo Cliente (relación) y los campos Nro. de documento y Compras.
-
Haz clic en la pestaña Esquemas de layout para configurar el diseño del formulario.
-
Haz clic en
Agregar nueva sección
para crear una sección en el formulario. -
Nombra la sección.
-
Arrastra el campo de relación (en este caso, Cliente) a la sección y los otros campos que desees incluir en el formulario.
-
Haz clic en
Guardar
. Accederás a la lista de formularios de la aplicación, incluido el nuevo formulario. -
En la fila del nuevo formulario haz clic en el ícono de editar .
-
Haz clic en la pestaña Esquemas de layout.
-
Haz clic en el ícono de editar situado junto al campo de relación (en el ejemplo, Cliente).
-
Selecciona la opción Cuadro combinado y haz clic en
OK
. Esta opción permitirá seleccionar valores existentes del campo que están almacenados en la entidad relacionada al rellenar el formulario. -
Haz clic en
Guardar
. -
Haz clic en la pestaña Aplicaciones.
-
Haz clic en el botón
Volver a cargar aplicaciones
.
Ahora, al crear un nuevo documento a partir del formulario, podrás seleccionar el valor deseado (en este ejemplo, el Cliente preexistente que se relacionará con la Lista de compras).
Además de la relación, también es posible ver los registros relacionados al consultar cada registro de una entidad. Por ejemplo, se pueden ver las ‘Listas de compras’ creadas por un ‘Cliente’ al consultar el registro del cliente correspondiente.
Para hacerlo, es necesario agregar al formulario de la entidad el valor {acronimo_de_la_entidad_relacionada}.{nombre_campo_relacion}
en el campo Consultas de visualización. Ejemplo de cómo rellenar: LC.cliente
.
Agregar filtros a los campos de relación
Las relaciones se mantienen a través de los ID de los documentos. Así, cuando intentemos ingresar el valor del campo de relación como filtro en el formulario, solamente obtendremos los valores de los ID de los documentos referidos, y no los valores del campo seleccionado para cada documento. La imágen siguiente ilustra este resultado. Aprende más en el artículo Filtrar datos en Master Data.
