As relações estabelecidas entre tabelas 4D se utilizam de maneira transparente no contexto de um link 4D Mobile. No entanto, a forma em que estas relações se representam difere em Wakanda a nível do modelo. No editor de modelos, as relações estão vinculadas com atributos específicos, chamados atributos relacionais. Estes atributos podem ser utilizados para mostrar os dados vinculados direto ou para levar a cabo as consultas. Para obter mais informação ao respeito, consulte a seção "Atributos" na documentação de Wakanda.
Para cada relação que se estabelece do lado 4D, se agregam dois atributos relacionais na representação do modelo na parte Wakanda:
- um atributo n->1 na tabela fonte (classe) da relação
- um atributo 1-> na tabela de destino (classe) da relação.
A ambos atributos lhes é dado o nome da relação, como se definiu, respectivamente, para a relação muitos-a-um e um a muitos no Inspetor do lado 4D.
Por exemplo, vamos imaginar que no contexto de uma estrutura "Empregado/Empresa", cria uma relação da tabela [Empregados] a tabela [Empresa]. Você pode caracterizar esta relação por meio do nome, por exemplo, você poderia nomear a relação muitos-a-um "trabalhaPara" e a relação um-a-muitos poderiam ser "contratante":
![](../../picture/1333693/pict1333693.EN.png)
Do lado Wakanda, por meio de um link através do conector, estas relações se materializam automaticamente por dois atributos relacionais adicionais, que pode ser visto no editor do modelo:
![](../../picture/1333695/pict1333695.EN.png)
Pode dar a estas relações (e portanto a seus atributos relacionais correspondentes) o nome que deseje, em base a lógica de sua aplicação.
A vantagem deste é que é bem simples usar estes atributos do lado Wakanda para trabalhar com os dados relacionados. Particularmente, pode criar widgets relacionados com as fontes de dados que se baseiam em atributos relacionais. Estes widgets logo se gerenciam e atualizam automaticamente em função das ações do usuário.
Por exemplo, é bem fácil de criar uma página que contém uma grade com a lista de empresas, e outra lista dos empregados da empresa selecionada. Para isso, basta relacionar as classes de dados "Company", com uma grade, e o atributo relacional "employs" com a outra:
![](../../picture/1333697/pict1333697.EN.png)
As fontes de dados correspondentes são criadas automaticamente e durante a execução, ambas grades se sincronizam automaticamente:
![](../../picture/1333699/pict1333699.EN.png)