Ao escrever uma fórmula do Notion que tenta referenciar uma propriedade cujo nome inclui um caractere especial como hífen, barra, apóstrofo ou parêntese, a fórmula geralmente retorna um erro ou não salva. Isso acontece porque a sintaxe de fórmulas do Notion trata certos caracteres como operadores ou delimitadores, quebrando a referência. Este artigo explica os caracteres exatos que causam o problema e mostra como escrever uma referência de propriedade válida que funciona sempre.
Principais conclusões: Referenciando propriedades com caracteres especiais em fórmulas do Notion
- Sintaxe prop(“Nome da Propriedade”): A forma básica de referenciar uma propriedade; falha se o nome contiver caracteres especiais como hífens ou barras.
- Escapar com crases: Envolva o nome da propriedade com crases (`) para que o Notion o trate como uma string literal em vez de sintaxe.
- Remover ou renomear a propriedade: A correção permanente mais simples se você controlar o esquema do banco de dados e quiser evitar a sintaxe de escape.
Por que a fórmula do Notion falha com caracteres especiais em nomes de propriedades
As fórmulas do Notion usam uma sintaxe semelhante ao JavaScript ou Excel, onde certos caracteres têm significados reservados. Quando você escreve prop("Task-Status"), o hífen é interpretado como um operador de subtração, não como parte do nome da propriedade. O mesmo problema ocorre com barras (interpretadas como divisão), apóstrofos (conflito com delimitador de string), parênteses (operador de agrupamento) e espaços (separador de argumentos).
O mecanismo de fórmula analisa o texto dentro das aspas, mas também verifica operadores fora das aspas. Um hífen diretamente dentro dos parênteses de prop() é ambíguo. O Notion vê o hífen e tenta avaliá-lo como uma subtração entre duas referências de propriedade, o que causa um erro de análise. A mensagem de erro geralmente diz “Fórmula inválida” ou destaca o caractere problemático em vermelho.
Caracteres que quebram referências de propriedade
Os seguintes caracteres causam erros de análise quando usados em um nome de propriedade dentro de uma chamada prop() sem escape:
- Hífen ou sinal de menos (-)
- Barra (/)
- Barra invertida (\)
- Apóstrofo ou aspas simples (‘)
- Parênteses ( )
- Colchetes [ ]
- Chaves { }
- Sinal de mais (+)
- Asterisco ()
- Sinal de porcentagem (%)
- Arroba (@)
- Ponto de exclamação (!)
- Ponto de interrogação (?)
- Dois pontos (:)
- Ponto e vírgula (;)
- Aspas duplas (“)
Espaços dentro do nome da propriedade não quebram a referência se o nome estiver entre aspas corretamente. Mas o mecanismo de fórmula pode falhar se o espaço aparecer adjacente a um caractere especial.
Passos para referenciar uma propriedade com caractere especial
Você tem dois métodos confiáveis para referenciar uma propriedade cujo nome inclui um caractere especial. Use o método de escape com crases quando quiser manter o nome original da propriedade. Use o método de renomear quando preferir uma sintaxe mais limpa.
Método 1: Usar crases para escapar o nome da propriedade
- Identifique o nome exato da propriedade
Abra o banco de dados no Notion e veja o cabeçalho da coluna. Por exemplo, a propriedade pode ser chamada de “Task-Status” ou “Project/Phase”. - Escreva a fórmula com crases
Em vez deprop("Task-Status"), escrevaprop("Task`-`Status"). Coloque uma crase antes e depois de cada caractere especial. Para uma propriedade chamada “Project/Phase”, escrevaprop("Project`/`Phase"). - Teste a fórmula
Clique em Salvar no editor de fórmulas. Se a fórmula ainda mostrar um erro, adicione crases ao redor de todo o nome da propriedade:prop("`Task-Status`"). Isso trata o nome inteiro como uma string literal. - Use crases para vários caracteres especiais
Para uma propriedade como “Cost+Tax% (Final)”, escrevaprop("Cost`+`Tax`%` `(`Final`)`"). Cada caractere especial ou espaço adjacente a um caractere especial recebe seu próprio par de crases.
Método 2: Renomear a propriedade para remover caracteres especiais
- Clique no cabeçalho da propriedade
Na visualização do banco de dados, clique no cabeçalho da coluna da propriedade que deseja renomear. - Selecione Renomear
No menu suspenso, escolha Renomear. O nome da propriedade se torna editável. - Substitua caracteres especiais por underscores ou camelCase
Altere “Task-Status” para “Task_Status” ou “taskStatus”. Altere “Project/Phase” para “Project_Phase” ou “projectPhase”. Evite usar qualquer caractere da lista acima. - Atualize todas as fórmulas que referenciam o nome antigo
Toda fórmula que usavaprop("Task-Status")deve ser editada para usar o novo nome. O Notion não atualiza automaticamente as referências de fórmula quando você renomeia uma propriedade.
Se a fórmula do Notion ainda falhar após usar crases
Editor de fórmula mostra sublinhado vermelho após escape com crase
O erro mais comum é colocar crases na posição errada. A crase deve preceder e seguir imediatamente o caractere especial, sem espaços. Por exemplo, prop("Task - Status") tem um espaço antes e depois do hífen. Você deve escrever prop("Task` `-` `Status") para escapar tanto os espaços quanto o hífen. Se o erro persistir, envolva todo o nome da propriedade em crases: prop("`Task - Status`").
Fórmula salva, mas retorna valor errado
Se a fórmula salvar sem erro, mas retornar um resultado inesperado, o escape com crase pode ter criado uma referência de propriedade diferente. Por exemplo, prop("Task`-`Status") pode referenciar uma propriedade literalmente chamada “Task`-`Status” em vez de “Task-Status”. Verifique o nome real da propriedade abrindo as configurações da propriedade. Se o nome literal incluir crases, renomeie a propriedade para evitar confusão.
Escape com crase não funciona para todos os caracteres
O método de escape com crase funciona para a maioria dos caracteres especiais, mas o Notion não documentou todos os casos extremos. Caracteres como aspas duplas (“) ainda podem causar problemas porque entram em conflito com o delimitador de string. Se você não conseguir escapar um caractere com sucesso, renomeie a propriedade para remover esse caractere completamente.
Métodos de referência de fórmula do Notion comparados
| Item | Sintaxe prop() padrão | Escape com crase | Propriedade renomeada |
|---|---|---|---|
| Exemplo de entrada | prop(“Task-Status”) | prop(“Task`-`Status”) | prop(“Task_Status”) |
| Suporta hífens | Não | Sim | Sim (após renomear) |
| Suporta barras | Não | Sim | Sim (após renomear) |
| Suporta espaços | Sim (com aspas) | Sim | Sim (sem espaços) |
| Requer edição de fórmulas após renomear propriedade | Sim | Sim | Não (se renomear primeiro) |
| Legibilidade | Alta | Baixa (crases poluem a fórmula) | Alta |
O método de escape com crase é a única maneira de manter o nome original da propriedade com caracteres especiais. O método de renomear fornece fórmulas mais limpas e menos problemas de sintaxe. Escolha o método de renomear se você controlar o esquema do banco de dados e puder alterar o nome da propriedade sem quebrar outras fórmulas.