Você adicionou uma propriedade Rollup para contar itens de banco de dados relacionados, mas o número inclui páginas ocultas por um filtro na visualização. Isso acontece porque o Rollup calcula valores de todos os registros relacionados, independentemente das configurações de filtro da visualização. Neste artigo, você aprenderá por que o Rollup ignora filtros e como usar uma fórmula para contar apenas páginas visíveis.
Principais Conclusões: Corrigir Contagem Rollup que Inclui Páginas Filtradas
- Propriedades Rollup ignoram filtros de visualização: O Rollup sempre conta todas as páginas relacionadas, mesmo aquelas ocultas por um filtro no banco de dados de origem.
- Propriedade Fórmula com
filter(): Use uma fórmula do Notion para contar apenas páginas que atendem a uma condição específica, como uma propriedade Status definida como Concluído. - Adicione uma propriedade auxiliar: Crie uma propriedade Caixa de Seleção ou Seleção no banco de dados relacionado para marcar páginas que devem ser contadas e, em seguida, referencie-a na fórmula.
Por que o Rollup Ignora Filtros de Banco de Dados
Uma propriedade Rollup no Notion calcula um valor agregado—como contagem, soma ou média—sobre todas as páginas vinculadas por meio de uma propriedade Relação. O Rollup não considera a visualização que você definiu no banco de dados de origem. As visualizações são filtros visuais aplicados à tabela do banco de dados; elas não alteram os dados que o Rollup lê. Se uma página está vinculada ao item atual, ela é incluída no cálculo do Rollup, mesmo que esteja oculta por um filtro no banco de dados de origem.
Por exemplo, imagine que você tem um banco de dados Projetos com uma Relação para um banco de dados Tarefas. No banco de dados Tarefas, você filtra a visualização para mostrar apenas tarefas com status Concluído. Um Rollup no banco de dados Projetos que conta todas as tarefas relacionadas ainda contará tarefas com status Não Iniciado, porque essas tarefas existem no banco de dados Tarefas e estão vinculadas. O filtro apenas as oculta da visualização; não as remove da relação.
Para obter uma contagem que corresponda apenas às páginas que você considera visíveis ou relevantes, você deve usar uma propriedade Fórmula que verifique uma condição em cada página relacionada. A fórmula pode usar a função filter() para selecionar apenas páginas onde uma determinada propriedade atende aos seus critérios.
Passos para Contar Apenas Páginas Filtradas Usando uma Fórmula
Estes passos pressupõem que você já tenha uma propriedade Relação vinculando dois bancos de dados e uma propriedade Rollup que atualmente conta todas as páginas relacionadas. Você substituirá esse Rollup por uma Fórmula que conta apenas páginas que correspondem à sua condição de filtro.
- Identifique a condição do filtro
Decida qual propriedade no banco de dados relacionado determina se uma página deve ser contada. Escolhas comuns são uma propriedade Seleção como Status ou uma propriedade Caixa de Seleção como Incluído. Para este exemplo, use uma propriedade Seleção chamada Status com opções Concluído e Não Concluído. - Adicione uma propriedade auxiliar Caixa de Seleção ou Seleção (opcional)
Se nenhuma propriedade existente corresponder à sua condição de filtro, adicione uma nova. Para uma alternância simples, adicione uma propriedade Caixa de Seleção chamada Contar. Marque a caixa em cada página que deve ser contada. Alternativamente, use uma propriedade Seleção com valores Sim e Não. - Remova a propriedade Rollup antiga
No banco de dados principal, abra o menu de propriedades na coluna Rollup e selecione Excluir. Você a substituirá por uma Fórmula. - Adicione uma nova propriedade Fórmula
Clique no ícone + no cabeçalho do banco de dados e escolha Fórmula. Nomeie como Contagem Filtrada ou similar. - Insira a fórmula para contar páginas filtradas
Use a funçãofilter()combinada comlength(). A sintaxe básica é:length(filter(prop("Tarefas Relacionadas").map(current.prop("Status")), current == "Concluído"))
SubstituaTarefas Relacionadaspelo nome da sua propriedade Relação eStatuspela propriedade que contém sua condição de filtro. SubstituaConcluídopelo valor exato que você deseja contar. - Teste a fórmula
Adicione algumas páginas relacionadas e altere seus valores de Status. A Contagem Filtrada deve ser atualizada para mostrar apenas páginas onde Status é igual a Concluído. Se a contagem mostrar 0, verifique se os nomes das propriedades na fórmula correspondem exatamente, incluindo maiúsculas e minúsculas.
Se o Notion Ainda Mostrar Contagens Erradas
Fórmula retorna 0 mesmo quando páginas correspondem à condição
A causa mais comum é um erro de digitação no nome da propriedade ou valor. Abra o editor de fórmulas e verifique se o nome da propriedade Relação aparece exatamente como no cabeçalho do banco de dados. Os nomes das propriedades diferenciam maiúsculas de minúsculas. Confirme também se o valor que você está comparando (por exemplo, Concluído) corresponde exatamente ao rótulo da opção, incluindo espaços.
Rollup conta páginas de uma relação diferente
Se seu banco de dados tiver várias propriedades Relação, o Rollup ou Fórmula pode estar referenciando a errada. Verifique se a fórmula usa o nome correto da propriedade Relação. Uma maneira rápida de verificar é passar o mouse sobre o nome da propriedade no editor de fórmulas—o Notion destaca a coluna correspondente no banco de dados.
Contagem filtrada não atualiza quando altero uma página relacionada
As fórmulas do Notion recalculam quando a página atual é editada ou quando uma página relacionada é adicionada ou removida. Se você alterar uma propriedade em uma página relacionada, a fórmula pode não ser atualizada imediatamente. Clique na página principal para forçar um recálculo ou adicione uma edição fictícia, como adicionar um espaço em uma propriedade de texto na página principal.
Comparação entre Rollup e Fórmula com filter()
| Item | Rollup (Contagem) | Fórmula com filter() |
|---|---|---|
| Respeita filtros de visualização | Não | Não (usa condição de propriedade) |
| Pode contar com base em uma condição | Não | Sim |
| Requer propriedade auxiliar | Não | Opcional |
| Atualiza instantaneamente ao editar a página | Sim | Sim (com pequeno atraso em alguns casos) |
| Funciona com todos os tipos de relação | Sim | Sim |
Uma contagem Rollup é simples, mas não pode excluir páginas com base em qualquer condição. Uma Fórmula com filter() oferece controle exato sobre quais páginas são contadas. Use um Rollup quando precisar de uma contagem total de todos os registros relacionados. Use uma Fórmula quando precisar de uma contagem baseada em condição, como contar apenas tarefas concluídas ou projetos ativos.
Agora você sabe que as propriedades Rollup do Notion não respeitam os filtros de visualização do banco de dados e por que isso acontece. Usando uma propriedade Fórmula com a função filter(), você pode contar apenas páginas que correspondem a um valor de propriedade específico. Para filtragem avançada, considere adicionar uma propriedade Caixa de Seleção ou Seleção ao banco de dados relacionado para marcar páginas para inclusão. Para refinar ainda mais suas contagens, explore a função map() combinada com filter() para verificar múltiplas condições em cada página relacionada.