Tema
O construtor de consultas
O construtor abre num modal grande, a partir do inspector do widget. É onde se escolhem as tabelas, as ligações, as colunas e as condições.

Chegar ao construtor
- Seleccione o widget.
- No inspector, secção Dados, dê um nome ao conjunto.
- Escolha o modo Query visual (joins/agregados).
- Carregue em Abrir construtor.
O outro modo, Entidade única, lê directamente de uma tabela sem junções nem agregados. Serve para listagens simples; para tudo o resto, o modo visual é o caminho.
Trocar de modo pede confirmação
Passar de consulta visual para entidade única descarta a consulta — tabelas, junções, colunas e condições. O separador pergunta antes, dizendo o que se vai perder ("esta consulta tem 3 tabelas e 5 colunas"). Trocar a partir de uma consulta vazia não pergunta nada.
As cinco zonas
Adicionar tabela
A lista no topo tem todas as entidades do modelo. Escolher uma coloca-a no canvas.
O canvas
Cada tabela é um cartão com os seus campos e tipos. Os cartões arrastam-se — a posição fica guardada, portanto vale a pena arrumá-los de forma legível.
Cada campo tem uma caixa de selecção: marcá-lo acrescenta-o às colunas de output. Ao lado do campo marcado aparece um seletor:
- num campo normal, escolhe-se o agregado (nenhum, soma, média, mínimo, máximo, contagem, contagem distinta);
- num campo de data, escolhe-se também a granularidade (dia, semana, mês, trimestre, ano).
As linhas curvas entre cartões são as junções.
Relações (joins)
O painel da direita lista as ligações entre tabelas. Cada uma tem quatro escolhas: tabela e campo de um lado, tipo de junção, tabela e campo do outro.
Condições
Por baixo das relações, a secção Condições filtra as linhas antes da agregação. Sem condições, a consulta devolve tudo.
Cada condição tem tabela, campo, operador e valor. Num campo de data há ainda a opção só o período mais recente que existir, que dispensa operador e valor — ver Filtros da consulta.
O construtor aceita valores fixos. Origens dinâmicas — parâmetro do ecrã, selecção noutro widget, valor de um campo de entrada — existem no formato, mas configuram-se pelo editor de código do ecrã ou por um assistente ligado por MCP.
Colunas de output
A lista do que a consulta devolve, pela ordem em que sai. Cada linha mostra:
- um marcador
dim(dimensão) ouΣ(medida); - o campo de origem;
- a granularidade, nos campos de data;
- o nome de saída (alias), editável — é este que os widgets veem.
Por baixo, o aviso que resume o modelo: há medidas, as dimensões entram automaticamente no GROUP BY.
No topo da secção há dois botões: cálculo, que acrescenta uma medida calculada, e + contar linhas, que acrescenta um COUNT(*) sem ter de escolher campo nenhum.
Nomes de saída
O nome de saída é o que aparece no mapeamento do gráfico, no cabeçalho da tabela e nas condições dos filtros do dashboard. Vale a pena escolhê-lo bem:
- curto e sem espaços —
vendas,mes,margemPct; - igual em consultas diferentes quando representa a mesma coisa. Um filtro do dashboard sobre
regiaoalcança todas as consultas cuja coluna de saída se chameregiao.
Ordenação
A ordenação e por nome de saída, ascendente ou descendente, e podem-se acumular vários critérios.
Duas regras práticas:
- séries temporais ordenam-se pela dimensão de data, ascendente;
- rankings ordenam-se pela medida, descendente.
Limite de linhas
O limite corta o resultado a N linhas depois de ordenado. É como se faz um "top 10": ordenar pela medida descendente e limitar a 10.
Sem limite explícito aplica-se o tecto de 5000 linhas.
Operadores
| Operador | Significado |
|---|---|
eq | Igual |
neq | Diferente |
contains | Contém |
startsWith | Começa por |
endsWith | Termina em |
gt, gte | Maior, maior ou igual |
lt, lte | Menor, menor ou igual |
Ver Filtros da consulta para o detalhe de cada um e para as origens do valor.
O modo SQL
No fundo do construtor há dois separadores: Visual e SQL. O modo SQL substitui tudo o resto por um SELECT escrito à mão.
Serve para o que o construtor visual não alcança: subconsultas, funções de janela, uniões.
Regras:
- apenas um statement, sem
;; - tem de começar por
SELECTouWITH; - qualquer palavra de escrita (
insert,update,delete,drop,alter,create,pragma, ...) é recusada.
O modo SQL exige nomes reais de tabelas
No modo visual escrevem-se nomes de entidades; no modo SQL escrevem-se os nomes reais das tabelas na base de dados. São diferentes, e uma tabela reimportada pode mudar de nome. Reserve o modo SQL para os casos em que compensa mesmo.
Ver o resultado
Não há botão de pré-visualização porque não é preciso: ao fechar o construtor, o widget desenha-se com os dados reais, ali no editor. Se ficar vazio, a consulta não devolveu linhas — reveja as condições e as junções.