Buscar K
Aparência
Aparência
Na aba Tabelas você escolhe as tabelas do HorusDW que a Aplicação usa e liga uma à outra por chave. Por que a ligação tem direção e o que a cardinalidade muda está em Modelo de dados.
Você precisa editar a Aplicação na Minha Mesa e ter acesso às tabelas que vai usar. Quem edita com acesso limitado (sem a permissão de criar Aplicação) não vê a aba Tabelas. Tabelas do tipo Datalake não entram em Aplicação; veja Tipos de tabela.
Ao passar o mouse sobre a tabela na área central, aparecem Visualizar Dados (uma amostra dos primeiros registros), Trocar Tabela (troca por outra mantendo as ligações) e o botão de remover. Recalcular Posição, no topo, reorganiza as tabelas quando ficam umas sobre as outras. Para remover uma tabela ou uma ligação, selecione e tecle Delete (ou Backspace); a tela pede confirmação. Ctrl + S (⌘ + S no Mac) salva.
Clientes.ID_CLIENTE, Lado N Vendas.ID_CLIENTE.Se as colunas têm tipos diferentes, a lateral avisa "Tipos incompatíveis (...)". Se a chave do Lado 1 se repete no dado, a lateral mostra quantos valores se repetem; o aviso não impede salvar, mas a soma do outro lado pode inflar. Veja A chave do Lado 1 precisa ser única.
Quando um lado é data com hora e o outro é só data, marque Ignorar Horário na comparação na chave. Sem isso, 2026-10-14 15:32 não casa com 2026-10-14 e nenhuma linha se liga.
Quando uma coluna sozinha não identifica a linha, adicione mais de uma chave com colunas diferentes. Todas valem juntas: um funcionário identificado por empresa e matrícula liga a folha só quando COD_EMP e COD_COLAB coincidem.
Uma fato com duas datas (emissão e entrega) usa o mesmo Calendário pelas duas. Cadastre as duas chaves repetindo a coluna do Calendário:
| Ordem | Lado 1 (Calendário) | Lado N (Faturamento) | Na tela |
|---|---|---|---|
| 1ª | DATA | DATA_EMISSAO | Padrão |
| 2ª | DATA | DATA_ENTREGA | Secundário (use) |
A primeira chave vale em todo filtro e agrupamento. As outras só valem numa expressão com use(); veja Linguagem de expressões. Arraste as chaves para mudar qual é a padrão.
Uma ligação pode ter chave composta e chave secundária ao mesmo tempo, desde que só uma coluna do Lado 1 se repita. Com duas colunas repetidas, a lateral avisa: "Chaves compostas não são suportadas para relacionamentos secundários." Nesse caso, crie no HorusDW uma coluna que concatene as chaves e ligue por ela.
Para muitos para muitos, como alunos e cursos, use uma tabela no meio, com uma linha por par (Aluno_Curso). Selecione essa tabela e, em Tipo da Tabela, escolha Tabela de Ligação (n-n). Ligue as duas dimensões a ela.
Se a tabela marcada como de ligação tem menos de duas tabelas ligadas, a lateral avisa que a marca pode duplicar linhas. Tire a marca ou ligue a segunda dimensão.
Selecione a tabela e use Renomear no app. O nome novo vale só aqui; o original aparece como "Original: ..." e Usar o nome original desfaz. O nome no HorusDW não muda.
Selecione a tabela e preencha Filtros Pré Aplicados. O filtro vale em toda consulta que usa a tabela, em todo Widget, e o leitor não o vê nem tira. Ponha o filtro na dimensão para ele descer a todas as fatos ligadas: Tipo = Combustível em Produto restringe Vendas, Estoque e Compras de uma vez. Num filtro em tabela fato, ele só entra quando o Widget usa uma coluna daquela fato. Os outros tipos de filtro estão em Filtros.
| O que acontece | Causa | Conserto |
|---|---|---|
| O total sai maior do que deveria | Chave repetida no Lado 1, ou duas fatos ligadas direto | Corrija a chave na origem ou ligue as fatos por uma dimensão compartilhada |
| Salvar recusa com "Coluna não definida no relacionamento entre ... e ..." | Uma ligação está sem coluna de chave em um dos lados | Selecione a ligação e escolha as chaves, ou remova-a |
| Nenhuma linha casa | Data com hora de um lado e só data do outro | Marque Ignorar Horário na comparação |
A expressão com use() diz que a coluna não existe | A chave secundária não está cadastrada | Adicione a chave na ligação, como acima |
Pelo Lumo CLI
Tabelas, ligações e filtros da Aplicação também podem ser criados e versionados em YAML. Veja a referência de app.