# HierarchyBelongsTo

Esse prefixo é usado para transformar uma tabela de hierarquia pai-filho em uma tabela que seja útil em um modelo de dados do QlikView. Ele pode ser colocado na frente de um comando LOAD ou SELECT e usará o resultado do comando de carregamento como entrada para uma transformação de tabela.

O prefixo cria uma tabela que contém todas as relações entre filho e ancestral da hierarquia. Então, os campos de ancestral podem ser usados para selecionar árvores inteiras da hierarquia. A tabela de saída quase sempre contém vários registros por nó.

Sintaxe:

HierarchyBelongsTo (NodeID, ParentID, NodeName, AncestorID, AncestorName, [DepthDiff])(loadstatement | selectstatement)

A tabela de entrada deve ser uma tabela de nós adjacentes. As tabelas de nós adjacentes são tabelas em que cada registro corresponde a um nó e tem um campo que contém uma referência para o nó pai. Em uma tabela como essa, o nó é armazenado em apenas um registro, mas o nó ainda pode ter um número indefinido de filhos. A tabela pode conter campos adicionais que descrevem atributos para os nós.

Um campo adicional que contém a diferença de profundidade dos nós pode ser criado.

Argumentos:

Argumentos HierarchyBelongsTo

| Argumento | Descrição |
| --- | --- |
| NodeID | O nome do campo que contém a id do nó. O campo deve existir na tabela de entrada. |
| ParentID | O nome do campo que contém a id do nó do nó pai. O campo deve existir na tabela de entrada. |
| NodeName | O nome do campo que contém o nome do nó. O campo deve existir na tabela de entrada. |
| AncestorID | Uma string usada para atribuir um nome a um novo campo da id do ancestral, que contém a id do nó do ancestral. |
| AncestorName | Uma string usada para atribuir um nome a um novo campo de ancestral, que contém o nome do nó do ancestral. |
| DepthDiff | Uma string usada para atribuir um nome ao novo campo DepthDiff, que contém a profundidade do nó na hierarquia em relação ao nó do ancestral. Parâmetro opcional. Se omitido, esse campo não será criado. |

Exemplo:

`HierarchyBelongsTo (NodeID, AncestorID, NodeName, AncestorID, AncestorName, DepthDiff) LOAD * inline [` `NodeID, AncestorID, NodeName` `1, 4, London` `2, 3, Munich` `3, 5, Germany` `4, 5, UK` `5, , Europe` `];`

**Resultado:**

Exemplo 1

| NodeID | AncestorID | NodeName | AncestorName | DepthDiff |
| --- | --- | --- | --- | --- |
| 1 | 1 | London | London | 0 |
| 1 | 4 | London | UK | 1 |
| 1 | 5 | London | Europe | 2 |
| 2 | 2 | Munich | Munich | 0 |
| 2 | 3 | Munich | Germany | 1 |
| 2 | 5 | Munich | Europe | 2 |
| 3 | 3 | Germany | Germany | 0 |
| 3 | 5 | Germany | Europe | 1 |
| 4 | 4 | UK | UK | 0 |
| 4 | 5 | UK | Europe | 1 |
| 5 | 5 | Europe | Europe | 0 |

## Saiba mais

* [Load](https://help.qlik.com/pt-BR/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptRegularStatements/Load.htm)
* [Select](https://help.qlik.com/pt-BR/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/Scripting/ScriptRegularStatements/Select.htm)
* [Hierarquias](https://help.qlik.com/pt-BR/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/DataSource/Hierarchies.htm)