Corrigir Migração do Notion Formula 2.0 que Quebra Referência a Propriedades Legadas
🔍 WiseChecker

Corrigir Migração do Notion Formula 2.0 que Quebra Referência a Propriedades Legadas

Você acabou de atualizar uma fórmula de banco de dados do Notion para a Fórmula 2.0 e agora a fórmula mostra um erro ou retorna resultados em branco. Isso acontece porque a Fórmula 2.0 usa uma sintaxe diferente para referenciar propriedades do banco de dados em comparação com o mecanismo de fórmula legado. O formato antigo de referência a propriedades não funciona mais após a migração. Este artigo explica por que a referência a propriedades quebra, como corrigir cada fórmula afetada e quais erros relacionados você pode encontrar.

Principais Conclusões: Corrigindo Referências a Propriedades no Notion Formula 2.0

  • Sintaxe de propriedade no Formula 2.0: Use prop(Nome da Propriedade) em vez do antigo Nome da Propriedade para referenciar colunas do banco de dados.
  • Editar Fórmula no banco de dados: Abra a propriedade de fórmula, mude para Formula 2.0 e reescreva cada referência usando prop().
  • Testar após a conversão: Execute uma linha de amostra para confirmar que a fórmula recalcula sem erros antes de aplicar ao banco de dados completo.

ADVERTISEMENT

Por que a Migração para o Notion Formula 2.0 Quebra Referências a Propriedades Legadas

O Notion lançou o Formula 2.0 no final de 2023 como um mecanismo de fórmula mais poderoso e consistente. A principal diferença em relação ao mecanismo legado é como as propriedades são referenciadas. No mecanismo legado, você podia escrever um nome de propriedade diretamente dentro da fórmula, como Preço * Quantidade. O mecanismo reconhecia automaticamente os nomes das propriedades como referências de coluna.

O Formula 2.0 exige chamadas de função explícitas para referências a propriedades. Você deve usar a função prop(), passando o nome da propriedade como uma string. Por exemplo, prop(Preço) * prop(Quantidade). Se você mantiver a sintaxe antiga após a migração, o mecanismo trata a palavra como uma string literal ou gera um erro de sintaxe. O resultado é uma fórmula quebrada que retorna uma mensagem de erro ou exibe uma célula em branco.

A migração em si é uma ação de um clique no editor de fórmulas. O Notion não reescreve automaticamente suas referências existentes. Você deve atualizar manualmente cada referência de propriedade legada para o novo formato prop(). Se sua fórmula contiver várias propriedades, funções aninhadas ou lógica condicional, cada referência deve ser alterada individualmente.

Passos para Reescrever Referências a Propriedades Legadas no Formula 2.0

  1. Abra o banco de dados que contém a fórmula quebrada
    Navegue até a página do Notion onde o banco de dados está localizado. Clique em qualquer lugar dentro do banco de dados para ativá-lo.
  2. Localize a coluna da propriedade de fórmula
    Encontre o cabeçalho da coluna que contém a fórmula. O cabeçalho pode mostrar um indicador de erro, como um ponto de exclamação vermelho ou uma prévia de célula em branco.
  3. Abra o editor de fórmulas
    Clique no cabeçalho da propriedade de fórmula e selecione Editar propriedade. Em seguida, clique no botão Editar fórmula que aparece no painel de configuração da propriedade.
  4. Mude para o Formula 2.0 se ainda não estiver ativo
    Na parte superior do editor de fórmulas, você vê uma alternância chamada Formula 2.0. Certifique-se de que esteja ativada. Se estiver desativada, ative-a e confirme o prompt que avisa sobre mudanças de sintaxe.
  5. Reescreva cada referência a propriedade usando prop()
    Examine o texto da fórmula. Para cada nome de propriedade que aparece diretamente na fórmula (não dentro de uma string), envolva-o com prop(). Por exemplo, altere Preço * Quantidade para prop(Preço) * prop(Quantidade). Se o nome da propriedade contiver espaços ou caracteres especiais, coloque o nome entre aspas: prop(Preço Unitário).
  6. Verifique argumentos de funções que usam valores de propriedades
    Se sua fórmula usar funções como if(), format() ou dateAdd(), certifique-se de que qualquer referência a propriedade dentro dos argumentos da função use prop(). Por exemplo, if(prop(Status) = "Concluído", "Completo", "Incompleto").
  7. Clique em Concluído e verifique a fórmula
    Depois de reescrever todas as referências, clique em Concluído. O Notion recalcula imediatamente a fórmula para cada linha. Verifique algumas linhas para confirmar que a saída corresponde ao resultado esperado.
  8. Teste casos extremos
    Crie uma linha de teste com valores que acionam diferentes ramos da fórmula. Por exemplo, se sua fórmula usar lógica condicional, teste as condições verdadeira e falsa. Isso confirma que as referências a propriedades funcionam corretamente em todos os cenários.

ADVERTISEMENT

Se o Notion Ainda Tiver Problemas Após a Correção Principal

A fórmula retorna um erro, mas os nomes das propriedades parecem corretos

Se você reescreveu todas as referências a propriedades com prop() mas a fórmula ainda mostra um erro, verifique se há incompatibilidade de tipos de dados. O Formula 2.0 é mais rigoroso quanto à coerção de tipos. Por exemplo, multiplicar uma propriedade numérica por uma propriedade de texto que parece um número pode falhar. Use a função toNumber() para converter propriedades de texto antes de operações aritméticas: prop(Preço) * toNumber(prop(Quantidade)).

A fórmula retorna em branco para linhas que tinham valores antes da migração

Resultados em branco após a migração geralmente significam que a fórmula está referenciando uma propriedade que não existe mais ou foi renomeada. Abra o painel de configuração da propriedade e confirme se cada nome de propriedade usado em prop() corresponde exatamente ao nome atual da propriedade no banco de dados. Os nomes das propriedades diferenciam maiúsculas de minúsculas no Formula 2.0. Renomeie a propriedade no banco de dados ou atualize a string da fórmula para corresponder.

A fórmula legada com propriedades de rollup ou relação falha

Propriedades de rollup e relação exigem tratamento especial no Formula 2.0. Em vez de prop(Nome do Rollup), você pode precisar usar a função map() para acessar valores de bancos de dados relacionados. Por exemplo, se você tiver um rollup que soma valores de uma relação, reescreva a fórmula como prop(Banco Relacionado).map(current.prop(Valor)).sum(). O Notion fornece um auxiliar integrado: quando você digita prop() e seleciona uma propriedade de rollup, o editor sugere automaticamente a sintaxe correta.

Sintaxe de Fórmula Legada vs Referência a Propriedades no Formula 2.0

Item Fórmula Legada Formula 2.0
Referência a propriedade Preço prop(Preço)
Propriedade com espaços Preço Unitário prop(Preço Unitário)
Cálculo numérico Preço * Quantidade prop(Preço) * prop(Quantidade)
Lógica condicional if(Status = "Concluído", "Completo", "Incompleto") if(prop(Status) = "Concluído", "Completo", "Incompleto")
Acesso a rollup Soma Rollup prop(BD Relacionado).map(current.prop(Valor)).sum()
Aritmética de datas dateAdd(Data Início, 7, "days") dateAdd(prop(Data Início), 7, "days")

Depois de converter todas as fórmulas legadas para o Formula 2.0, você ganha acesso a novas funções como map(), filter() e every(). Use o navegador de funções do painel Editar fórmula para explorar essas adições. Teste cada fórmula em um banco de dados duplicado antes de aplicar as alterações aos dados de produção.

ADVERTISEMENT