Passo a passo
Como criar campos calculados com fórmulas no HubCount BI Studio
Crie um campo novo no cubo a partir de uma fórmula, como lucro, margem ou status da meta, e teste o resultado em todas as linhas antes de salvar.
Crie uma coluna nova no cubo a partir de uma fórmula sobre os outros campos, sem mexer na fonte de dados. Exemplo: receita - custo vira o campo Lucro bruto.
Quando usar
- Para calcular um valor linha a linha, como lucro, margem ou valor total do pedido.
- Para classificar registros, como “Meta batida” e “Abaixo da meta”, ou faixas de atraso.
- Para montar texto ou data a partir de outros campos, como “T1/2026” a partir da data.
A fórmula roda em cada linha do cubo, olhando só os campos daquela linha. Ela não soma nem tira média de várias linhas. Para isso, use medidas sobre o campo calculado.
Antes de começar, escolha os campos do cubo na aba Mapeamento de Campos. Veja Campos do cubo.
Criar o campo
-
No menu lateral do projeto, abra Cubos e clique no cubo.
-
Abra a aba Mapeamento de Campos e clique em Adicionar Campo Calculado. A janela Novo Campo Calculado abre.
-
Preencha Nome Amigável, como “Lucro bruto”. O nome técnico (
lucro_bruto) é criado a partir dele. -
Se quiser, explique o cálculo em Descrição.
-
Clique no editor do Construtor de Fórmulas e escreva a fórmula. Ao clicar no editor, abre ao lado o painel com os campos e as funções. Clique num item para inserir. Também funciona digitar e escolher na lista de sugestões.
-
Confira a linha Resultado logo abaixo do editor. Ela usa a primeira linha dos dados do cubo.
-
Para testar em todas as linhas, clique no ícone de velocímetro da seção do exemplo de dados (Testar fórmula em todas as linhas). Se alguma linha falhar, o botão Erros de Fórmula aparece no canto inferior esquerdo.
-
Clique em Salvar.
-
Ajuste o tipo do campo na tabela e salve o cubo com Ctrl + S (veja a próxima seção).
Ajustar o tipo depois de salvar
O campo calculado entra no cubo marcado, na tabela da aba Mapeamento de Campos. Ele começa com o tipo Valor e o formato Texto, qualquer que seja a fórmula. Troque:
| Resultado da fórmula | Tipo de campo | Formato do valor |
|---|---|---|
| Número (lucro, quantidade) | Valor | Número, Decimal ou Moeda |
| Texto (status, faixa) | Categoria | Texto |
| Data | Data | Data |
Para editar ou excluir o campo, use Editar Campo Calculado e Excluir Campo Calculado na coluna Ações da linha dele.
Como escrever a fórmula
| Elemento | Como escrever | Exemplo |
|---|---|---|
| Campo | O nome técnico da coluna Campo da tabela de mapeamento, sem aspas | receita |
| Número | Com ponto decimal | 0.15 |
| Texto fixo | Entre aspas simples | 'Meta batida' |
| Contas | +, -, *, / e parênteses | (receita - custo) / receita |
| Comparações | ==, !=, >, <, >=, <= | receita >= meta |
| Funções | Nome em maiúsculas, argumentos entre parênteses, separados por vírgula | ROUND(receita, 2) |
- Use
==para comparar, como o editor sugere. - Para combinar condições, use
AND(...),OR(...)eNOT(...). - Para inserir um campo sem errar o nome, clique nele no painel Campos.
- No cálculo do cubo, um campo vazio conta como
0, e texto que parece número ("150.50") é lido como número.
Funções
As funções ficam nas abas Matemática, Texto, Data e Lógica do painel. Ao digitar o nome, o editor mostra os parâmetros.
| Grupo | Função | O que faz |
|---|---|---|
| Lógica | IF(condição, se_verdadeiro, se_falso) | Escolhe entre dois valores. |
| Lógica | IFS(cond1, valor1, cond2, valor2, ...) | Várias condições em sequência. Termine com true, valor para o caso restante. |
| Lógica | IFERROR(valor, valor_se_erro) | Troca um erro ou uma divisão por zero por outro valor. |
| Lógica | IFEMPTY(valor, valor_se_vazio) | Troca texto vazio por outro valor. |
| Lógica | SWITCH(expressão, caso1, res1, ..., padrão) | Compara com cada caso. Sem caso igual e sem padrão, dá erro. |
| Lógica | AND(...), OR(...), NOT(valor) | Combinam condições. |
| Matemática | AVG(n1, n2, ...), MAX(...), MIN(...) | Média, maior e menor entre os valores desta linha. |
| Matemática | ROUND(n, casas) | Arredonda. Sem casas, arredonda para inteiro. |
| Matemática | CEIL(n), FLOOR(n), INT(n), ABS(n) | Arredonda para cima, para baixo, tira a parte decimal, valor absoluto. |
| Matemática | RANDBETWEEN(menor, maior) | Inteiro aleatório. Muda a cada processamento. |
| Matemática | VALUE(texto) | Converte texto em número. Aceita vírgula decimal. |
| Texto | CONCAT(t1, t2, ...) | Junta textos e números. |
| Texto | LEFT(texto, n), RIGHT(texto, n), MID(texto, início, n) | Pedaço do texto. A posição inicial de MID começa em 1. |
| Texto | UPPER(texto), LOWER(texto), TRIM(texto), LEN(texto) | Maiúsculas, minúsculas, tira espaços das pontas, conta caracteres. |
| Texto | REPLACE(texto, antigo, novo) | Troca todas as ocorrências. |
| Texto | SUBFIELD(texto, separador, posição) | Parte do texto dividido pelo separador. A posição começa em 1. |
| Data | DATE(ano, mês, dia) | Monta uma data. |
| Data | PARSE_DATE(texto, formato) | Converte texto em data. O formato é opcional, como 'dd/MM/yyyy'. |
| Data | TODAY(), NOW() | Data de hoje, e data com hora de agora. |
| Data | ADD_DAYS(data, n), ADD_MONTHS(data, n), ADD_YEARS(data, n) | Soma dias, meses ou anos. Use número negativo para subtrair. |
| Data | DAYS_BETWEEN(d1, d2), MONTHS_BETWEEN(d1, d2), YEARS_BETWEEN(d1, d2) | Diferença entre duas datas. |
| Data | YEAR(data), MONTH(data), DAY(data), HOUR(data), MINUTE(data) | Parte da data. |
| Data | WEEKDAY(data), WEEKNUMBER(data) | Dia da semana (1 é segunda, 7 é domingo) e número da semana. |
| Data | DATE_ONLY(data, formato) | Data como texto, sem hora. O formato é opcional e o padrão é dd/MM/yyyy. |
Exemplos com o cubo Vendas
O cubo Vendas é o da Aurora Comércio Ltda, no projeto “Resultado Comercial 2026” da Contabilidade Exemplo.
| Campo calculado | Fórmula | Resultado na primeira linha | Tipo |
|---|---|---|---|
| Lucro bruto | receita - custo | 499451 | Valor, Número |
| Margem (%) | ROUND((receita - custo) / receita * 100, 1) | 32.7 | Valor, Decimal |
| Status da meta | IF(receita >= meta, 'Meta batida', 'Abaixo da meta') | Abaixo da meta | Categoria, Texto |
| Trimestre | CONCAT('T', CEIL(MONTH(data) / 3), '/', YEAR(data)) | T1/2026 | Categoria, Texto |
| Margem segura | IFERROR((receita - custo) / receita, 0) | 0.327 | Valor, Decimal |
Uma classificação em faixas com IFS:
IFS(dias_atraso > 60, 'Crítico', dias_atraso > 30, 'Atenção', true, 'Em dia')
Testar a fórmula
O exemplo de dados fica numa seção abaixo do editor, com a linha 1 do cubo.
| Controle | O que faz |
|---|---|
| Linha Resultado | Mostra o valor da fórmula para a linha do exemplo, ou a mensagem de erro. |
| Ícone de atualizar | Busca de novo os dados de exemplo da fonte. |
| Ícone de velocímetro, Testar fórmula em todas as linhas | Roda a fórmula em todas as linhas lidas e mostra o resultado de cada uma, como Linha 1: 499451. |
| Dados do exemplo | O JSON é editável. Troque um valor para ver como a fórmula reage a um caso específico. |
| Erros de Fórmula | Lista as linhas que falharam, com a mensagem e as variáveis usadas. Mostra até 200 linhas. Clique numa delas para ver os dados dessa linha. |
Mensagens e limites
| Mensagem | Causa e solução |
|---|---|
| Por favor, preencha todos os campos obrigatórios. | O Nome Amigável está vazio. |
| A fórmula não pode estar vazia. | Escreva uma fórmula antes de salvar. |
| Aguardando carregamento dos dados… | O editor ainda não tem dados de exemplo. Confira se o cubo leu a fonte, ou clique no ícone de atualizar. |
| Undefined symbol … | A fórmula cita um nome que não é um campo nem uma função. Confira o nome na coluna Campo. |
| Fórmula inválida: … | Aparece ao processar o cubo. O texto da fórmula tem erro de sintaxe, como parêntese sem fechar. |
| Não há query para executar. | O cubo ainda não tem uma conexão. O editor precisa dela para buscar o exemplo. |
| Tem certeza que quer sair sem salvar as alterações? | Você fechou a janela com alterações não salvas. |
- O campo calculado só enxerga os campos do próprio cubo, incluindo os de relacionamento.
- Use
IFScomtrueno fim. Sem isso, as linhas que não atendem nenhuma condição ficam vazias.
Próximos passos
- Ajuste o tipo do campo novo em Campos do cubo.
- Resuma o campo com medidas, como a soma do Lucro bruto por mês.