Variáveis e Formatação
Aprendendo como utilizar variáveis e formatação de dados, se desejar, você pode avançar para o uso de expressões, que permitem realizar cálculos, condições e manipulações mais avançadas. Consulte a documentação de Expressões.
Use variáveis para personalizar seus dados
O ENSPACE permite utilizar variáveis para inserir dinamicamente os valores dos campos dos seus itens em diversos contextos da plataforma. Com elas, você pode exibir informações e formatar dados automaticamente.
As variáveis podem ser utilizadas em qualquer contexto que aceite campos dinâmicos — entre eles: título e descrição de tarefas (agendadas e rápidas), templates de documento, modelos de e-mail, formato de exibição na configuração de campos (ex: display de campo de relacionamento), colunas de expressão em relatórios e construtores de condicionais.
Sintaxe básica
A sintaxe para inserir o valor de um campo é:
{{ data.referencia_do_campo }}
Nesse caso, se um campo foi criado com o nome "Data de vencimento", a referência será:
{{ data.data_de_vencimento }}
A referência de cada campo pode ser consultada na tela de configuração de campos, na coluna Referência. Ela segue o formato
snake_casebaseado no nome do campo.
Fallback com pipe (|)
Você pode definir múltiplas opções dentro de uma variável usando o operador |.
O sistema tentará resolver da esquerda para a direita, retornando o primeiro valor disponível.
| Situação | Expressão | Resultado |
|---|---|---|
| Nome ou sobrenome | {{data.nome | data.sobrenome}}. | Retorna nome se existir. Caso contrário, retorna sobrenome |
| Nome, sobrenome ou valor padrão | {{data.nome | data.sobrenome | 'Cliente'}}. | Retorna o primeiro valor disponível. Ex: nome → sobrenome → "Cliente" |
Variáveis disponíveis para itens
Variáveis padrão do item (metadados)
Sempre que você estiver trabalhando com um item de uma categoria, o ENSPACE disponibiliza automaticamente algumas variáveis para acessar seus dados.
| Variável | Descrição |
|---|---|
id | Identificador único numérico do item |
reference | Referência única do item no ENSPACE |
created_at | Data de criação do item |
updated_at | Data da última atualização do item |
data | Contém todos os campos personalizados do item |
Variáveis de campos personalizados
Os campos que você cria (como nome, valor, data, status, etc.) ficam dentro de data.
Para acessar um campo, use:
{{ data.nome_do_campo }}
| Situação | Expressão | Resultado |
|---|---|---|
| Campo "Nome" | {{ data.nome }}. | Retorna o valor do campo Nome |
| Campo "Valor total" | {{ data.valor_total }}. | Retorna o valor numérico |
| Campo "Data de vencimento" | {{ data.data_de_vencimento }}. | Retorna a data do campo |
Se um campo referenciado não existir ou estiver vazio, o sistema exibirá
--como indicador de valor vazio.
Formatação de dados
Após montar suas variáveis, você pode formatar como os valores serão exibidos. O ENSPACE oferece duas sintaxes para formatação: Sufixo e Função.
Use Sufixo para formatar um campo sozinho. Use Função quando precisar combinar com expressões ou aplicar múltiplas configurações.
Sintaxe com sufixo (__mod[])
Ideal para formatar campos individuais, sem necessidade de expressões.
Estrutura: {{ variavel__mod[format?parametro1=valor1¶metro2=valor2] }}
Detalhamento:
| Parte | Exemplo | O que faz |
|---|---|---|
| Variável | {{ data.valor_total }} | Valor original do campo |
| Modificador | __mod[...] | Indica que será aplicada uma formatação |
| Tipo | format | Define que será usada formatação de dados |
| Parâmetros | ?type=number | Define o tipo de formatação |
| Múltiplos parâmetros | &n_style=currency | Permite adicionar mais configurações |
Exemplos:
| Situação | Expressão | Resultado |
|---|---|---|
| Moeda (USD) | {{ data.valor_total__mod[format?type=number&n_style=currency&n_currency=USD] }}. | $10.00 |
| Moeda (BRL) | {{ data.valor_total__mod[format?type=number&n_style=currency&n_currency=BRL] }}. | R$ 10,00 |
| Percentual | {{ data.taxa__mod[format?type=number&n_style=percent&n_minimumFractionDigits=2] }}. | 7,50% (se valor = 0.075) |
| Data completa | {{ data.data_vencimento__mod[format?type=date&d_style=full] }}. | terça-feira, 8 de março de 2025 |
| Data e hora | {{ data.data_vencimento__mod[format?type=date&d_style=medium&dt_style=short] }}. | 8 de mar. de 2025 14:30 |
| Texto truncado | {{ data.descricao__mod[format?type=text&t_length=20&t_suffix="..."] }}. | Texto limitado com "..." |
| Lista de itens | {{ data.produtos__mod[format?type=list&value_path=nome&l_separator=", "] }}. | Produto A, Produto B, Produto C |
Sintaxe com função format()
Recomendada quando você precisa:
- formatar resultados de expressões
- aplicar múltiplas configurações
- trabalhar com estruturas mais complexas
Estrutura: format(VALOR, {"parametro": "valor"})
Detalhamento:
| Parte | Exemplo | O que faz |
|---|---|---|
| Função | format(...) | Aplica formatação ao valor |
| Valor | {{ data.preco }} | Pode ser variável ou resultado de expressão |
| Configuração | {"type": "number"} | Define como o valor será formatado |
Exemplos:
| Situação | Expressão | Resultado |
|---|---|---|
| Formatar data completa | format({{data.data_vencimento}}, {"type": "date", "locale": "pt-BR", "d_style": "full", "dt_style": "short"}). | Data formatada com dia e hora |
| Formatar moeda (BRL) | format({{data.preco}}, {"type": "number", "locale": "pt-BR", "n_style": "currency", "n_currency": "BRL", "n_minimumFractionDigits": 2}). | Ex: R$ 1.250,50 |
| Calcular e formatar média | format(math(({{data.campo_01}} + {{data.campo_02}} + {{data.campo_03}} + {{data.campo_04}}) / 4), {"type": "number"}). | Retorna a média formatada |
| Formatar lista de itens | format({{data.produtos}}, {"type": "list", "value_path": "nome", "l_separator": " | "}). | Ex: Produto A | Produto B |
Comparação entre as sintaxes
| Recurso | Sufixo (__mod[]) | Função (format) |
|---|---|---|
| Sintaxe | variavel__mod[query_string] | format(variavel, {JSON}) |
| Separador de parâmetros | & | , |
| Suporta expressões | Não | Sim |
| Uso ideal | Exibição simples de campos | Relatórios, dashboards, valores calculados |
Parâmetros de formatação
Os parâmetros de formatação definem como o valor será exibido — por exemplo:
- como número, data ou texto
- com moeda, percentual ou casas decimais
- com formato curto ou completo
Você pode usar esses parâmetros tanto no sufixo (__mod[]) quanto na função format().
Parâmetros gerais
Esses parâmetros são a base de qualquer formatação.
| Parâmetro | O que define | Valores comuns | Padrão |
|---|---|---|---|
type | Tipo de dado | text, date, number, boolean, list, object | "text" |
locale | Idioma/formato regional | pt-BR, en-US | Idioma do sistema |
Parâmetros para datas (type="date")
Controlam como datas e horários são exibidos.
| Parâmetro | O que faz | Valores possíveis | Padrão |
|---|---|---|---|
d_style | Formato da data | full, long, medium, short | "short" |
dt_style | Formato da hora | full, long, medium, short | — |
dt_utc | Converte para UTC | true / false | false |
Exemplos:
- Data completa:
{{ data.custom_due_date__mod[format?type=date&d_style=full] }} - Data e hora:
{{ data.server_time__mod[format?type=date&d_style=medium&dt_style=short] }}
Parâmetros para números (type="number")
Controlam como valores numéricos são exibidos.
| Parâmetro | O que faz | Valores comuns | Padrão |
|---|---|---|---|
n_style | Tipo de número | decimal, currency, percent | "decimal" |
n_currency | Moeda | BRL, USD, EUR | "BRL" |
n_currencyDisplay | Forma da moeda | symbol, code, name | "symbol" |
n_minimumFractionDigits | Casas decimais mínimas | número | — |
n_maximumFractionDigits | Casas decimais máximas | número | — |
n_multiplier | Multiplica o valor antes de exibir | número | 1 |
Exemplos:
- Dólar:
{{ data.preco__mod[format?type=number&n_style=currency&n_currency=USD] }} - Percentual:
{{ data.taxa__mod[format?type=number&n_style=percent&n_minimumFractionDigits=2] }} - Multiplicador:
{{ data.tempo__mod[format?type=number&n_multiplier=60] }}
Parâmetros para texto (type="text")
Usados para limitar ou ajustar textos.
| Parâmetro | Tipo | O que faz | Padrão |
|---|---|---|---|
t_length | number (número) | Limita o tamanho do texto | — |
t_suffix | string (texto) | Texto adicionado ao truncar | "..." |
Exemplo: {{ data.descricao__mod[format?type=text&t_length=20&t_suffix="..."] }}
Parâmetros para listas (type="list")
Usados para exibir listas de itens.
| Parâmetro | Tipo | O que faz | Padrão |
|---|---|---|---|
value_path | string (texto) | Campo a extrair de cada item | obrigatório |
l_separator | string (texto) | Separador entre itens | "<br/>" |
value_pathé obrigatório para listas.
Exemplo: {{ data.produtos__mod[format?type=list&value_path=name&l_separator=", "] }}
Parâmetros para type="object"
Usados para definir como objetos serão exibidos.
| Parâmetro | Tipo | O que faz | Padrão |
|---|---|---|---|
display_string | string | Define um formato personalizado de exibição do objeto | — |
Um objeto é um conjunto de dados estruturados (com múltiplos campos), como por exemplo um item de relacionamento ou um registro com várias propriedades.
Modificador transformText
O modificador transformText permite alterar o formato de textos automaticamente, como:
- mudar para maiúsculas ou minúsculas
- remover espaços ou acentos
- converter para formatos como
slug,camelCase,snake_case
Este modificador é utilizado somente na sintaxe de sufixo (
__mod[]).Opções disponíveis
| Opção | Descrição |
|---|---|
lowercase | Converte para minúsculas |
uppercase | Converte para maiúsculas |
deburr | Remove acentos e caracteres especiais |
stripTags | Remove tags HTML |
trim | Remove espaços no início e fim |
kebabCase | Converte para kebab-case |
camelCase | Converte para camelCase |
snakeCase | Converte para snake_case |
dotCase | Converte espaços em pontos |
capitalize | Primeira letra em maiúscula |
startCase | Todas as palavras iniciam com maiúscula |
titleCase | Capitaliza títulos (preserva preposições) |
numeroPorExtenso | Converte números em palavras (apenas PT-BR) |
slugify | Formato amigável para URLs |
removeNumbers | Remove números do texto |
Exemplos:
| Situação | Expressão | Resultado |
|---|---|---|
| Converter texto para maiúsculas | {{ data.nome_cliente__mod[transformText?options=uppercase] }}. | "joão silva" → "JOÃO SILVA" |
| Remover espaços e ajustar capitalização | {{ data.nome_cliente__mod[transformText?options=trim&options=capitalize] }}. | " maria santos " → "Maria santos" |
| Gerar versão para URL (slug) | {{ data.titulo__mod[transformText?options=slugify] }}. | "Como Usar Variáveis?" → "como-usar-variaveis" |
Encadeando format com transformText
Você pode combinar format com transformText usando pipe (|).
Nesse caso:
- o
formaté aplicado primeiro - o
transformTexttransforma o resultado
| Situação | Expressão | Resultado |
|---|---|---|
| Formatar lista e transformar texto | {{ data.pessoas__mod[format?type=list&value_path=dados.cpf|transformText?options=lowercase&options=capitalize] }}. | Lista formatada e texto ajustado |
Guia rápido de decisão
| Se você precisa... | Use... | Exemplo |
|---|---|---|
| Exibir um campo simples | Variável direta | {{ data.nome }} |
| Fazer um cálculo | Expressões | Veja documentação de Expressões |
| Formatar um campo individual | Sufixo __mod[] | {{ data.preco__mod[format?type=number&n_style=currency] }} |
| Calcular e formatar | format() com expressões | Veja documentação de Expressões |
| Transformar texto | transformText | {{ data.titulo__mod[transformText?options=slugify] }} |
| Formatar e transformar texto | Pipe | {{ data.campo__mod[format?... | transformText?...] }} |
Erros comuns
Quantidade incorreta de chaves
- Errado:
{ data.campo },{{{ data.campo }}},{{ data.campo } - Correto:
{{ data.campo }}— sempre duas chaves de cada lado.
Parênteses não fechados
- Errado:
format(math({{a}} + {{b}}), {"type":"number"} - Correto:
format(math({{a}} + {{b}}), {"type":"number"})
Aspas no JSON
- Errado:
format({{data.valor}}, {type: number}) - Correto:
format({{data.valor}}, {"type": "number"})
Misturar sintaxes
- Errado:
{{ data.valor__mod[format?type=number] }}({"n_style":"currency"}) - Correto: escolha uma das duas sintaxes
Esquecer value_path em listas
- Errado:
{{ data.produtos__mod[format?type=list&l_separator=", "] }} - Correto:
{{ data.produtos__mod[format?type=list&value_path=name&l_separator=", "] }}
Expressões
Para aprender como criar expressões matemáticas, textuais ou de data utilizando variáveis e formatação, consulte a documentação de Expressões