Um relacionamento entre entidades é uma referência entre documentos que pertencem a domínios distintos. Essa referência é definida por um campo em uma dessas entidades. Na prática, esse campo será preenchido com o ID de um documento da entidade relacionada, sendo este invisível para o usuário.
Por exemplo, sua loja tem uma entidade Cliente e outra Lista de Compras, e você quer que cada cliente possa ter várias listas de compras. Para isso, é necessário criar um campo na entidade Lista de Compras para informar a qual cliente ela pertence.
O Master Data já possui por padrão alguns relacionamentos pré-definidos, como os de Cliente (CL) e Endereço (AD).
Criar um relacionamento entre entidades de dados
Para criar um relacionamento, é necessário ter duas entidades de dados. Se só tiver uma, você poderá criar outra durante o passo a passo a seguir. Para mais informações sobre entidades de dados, consulte o guia Entidade de dados.
No exemplo citado na introdução, é necessário criar uma entidade de dados chamada Lista de Compras que se relacionará com a entidade Cliente. Esse relacionamento permitirá que um cliente possa ter várias listas de compras, porém uma lista de compras só pode pertencer a um único cliente.
Confira o passo a passo a seguir, ilustrado com esse exemplo:
-
No Admin VTEX, acesse Configurações da loja > Storefront > Master Data.
-
Clique em
Configurações avançadas
. -
Clique em Estrutura de dados. Você será direcionado(a) a uma nova aba.
-
Clique na aba Entidades de dados.
-
Se deseja criar um relacionamento em uma nova entidade, clique no botão
Adicionar
para criar uma nova entidade de dados.Caso queira criar um relacionamento em uma entidade existente, localize-a e clique no botão de edição , depois siga para o passo 7.
-
Configure a entidade que será criada preenchendo os campos Acrônimo e Nome e adicionando os campos desejados. Saiba mais sobre campos no guia Criar um campo no Master Data.
Neste exemplo, a entidade utilizará o nome
Lista de compras
, o acrônimoLC
e, inicialmente, o campocompras
de tipoVarchar 750
.Para mais detalhes sobre o preenchimento, consulte o guia Entidade de dados.
-
Adicione um campo de tipo Relacionamento e defina seu nome. Neste exemplo, ele será chamado de
Cliente
. -
Clique no ícone de engrenagem ao lado do campo de Relacionamento para configurá-lo.
-
Em Configurações de campo personalizado, selecione a entidade à qual deseja fazer referência e o campo que será mostrado no relacionamento. Neste exemplo, o relacionamento será feito com a entidade Cliente e será exibido o campo email.
-
Clique no botão
Salvar
para salvar as configurações. -
Clique no ícone de publicação para publicar a entidade.
-
Também pode ser necessário atualizar as aplicações para que sejam implementadas as modificações. Para isso, vá em Configurações da loja > Storefront > Master Data e clique no botão
Recarregar aplicações
.
Criar um relacionamento entre documentos
Os relacionamentos também podem ser aplicados a documentos, uma vez que houver um relacionamento entre entidades de dados. Para isso, será necessário modificar o formulário de uma entidade de dados.
Confira o passo a passo a seguir:
-
No Admin VTEX, acesse Configurações da loja > Storefront > Master Data.
-
Clique no ícone de engrenagem ao lado do nome da aplicação.
Você será direcionado(a) para a listagem de formulários existentes nessa aplicação.
-
Para criar um novo formulário, clique em
+ Novo
. -
Preencha o Nome do formulário.
-
Selecione a Entidade de dados à qual o formulário será vinculado. Neste passo a passo, vamos utilizar a entidade Lista de Compras como exemplo.
Os campos da entidade serão exibidos em uma listagem na aba Campos da lista e podem ser selecionados para compor o formulário.
-
Selecione o campo de relacionamento e quaisquer outros que desejar incluir no formulário. Seguindo o exemplo, vamos incluir o campo Cliente (relacionamento) e os campos ID do documento e Compras.
-
Clique na aba Esquemas de layout para configurar o layout do formulário.
-
Clique em
Adicionar nova seção
para criar uma seção no formulário. -
Nomeie a seção.
-
Arraste o campo de relacionamento (nesse caso, Cliente) para a seção e os demais campos que desejar incluir no formulário.
-
Clique em
Salvar
. Você será conduzido(a) para a listagem de formulários da aplicação, incluindo o novo formulário. -
Na linha do novo formulário, clique no ícone de edição .
-
Clique na aba Esquemas de layout.
-
Ao lado do campo de relacionamento (no exemplo, Cliente), clique no ícone de edição .
-
Selecione a opção Caixa de combinação e clique em
OK
. Essa opção fará com que seja possível selecionar valores existentes do campo armazenados na entidade relacionada ao preencher o formulário. -
Clique em
Salvar
. -
Clique na aba Aplicações.
-
Clique no botão
Recarregar aplicações
.
Agora, ao criar um novo documento a partir do formulário, você pode selecionar o valor desejado (neste exemplo, o Cliente preexistente que irá se relacionar com a Lista de Compras).
Além do relacionamento, é possível também visualizar os registros relacionados ao visualizar cada registro de uma entidade, por exemplo, visualizar a ‘Lista de compras’ criada por um ‘Cliente’ ao consultar o registro do cliente.
Para isso, você precisa adicionar ao formulário da entidade o valor {acronimo_da_entidade_relacionada}.{nome_campo_relacionamento}
no campo Consultas de visualização. Exemplo de preenchimento: LC.cliente
.
Adicionar filtros aos campos de relacionamento
Os relacionamentos são mantidos através dos IDs dos documentos. Então, ao tentar inserir o valor do campo de relacionamento como filtro no formulário, obteremos apenas os valores dos IDs dos documentos referidos, e não os valores do campo escolhido para cada documento. As imagem abaixo mostra esse resultado. Veja mais informações no artigo Filtrar dados no Master Data.
