Ao usar uma propriedade Rollup no Notion para agregar datas de entradas vinculadas, o resultado pode mostrar um horário com diferença de várias horas do esperado. Essa diferença geralmente é de exatamente 4, 5 ou 8 horas, dependendo da sua região. A causa raiz é que o Notion armazena todos os valores de data e hora em UTC e a agregação do Rollup não os converte de volta para o fuso horário local antes de exibir o resultado. Este artigo explica por que essa discrepância ocorre e fornece etapas claras para corrigir a saída do fuso horário em suas fórmulas de rollup.
Principais Conclusões: Corrigindo Erros de Fuso Horário em Rollup de Data no Notion
- Rollup > Editar Propriedade > Formato de Data: Habilitar o formato de data correto não corrige o fuso horário — a agregação do rollup sempre retorna UTC
- Propriedade Fórmula com dateSubtract ou dateAdd: Use uma propriedade Fórmula para ajustar manualmente a saída UTC adicionando ou subtraindo horas para corresponder ao seu fuso horário local
- Banco de Dados > Página > Propriedade Data: Certifique-se de que a propriedade Data original esteja configurada para o fuso horário desejado, mas entenda que os rollups ignoram essa configuração para resultados de agregação
Por que a Agregação de Data em Rollup do Notion Retorna UTC em vez da Hora Local
O Notion armazena todos os valores de data e hora no Tempo Universal Coordenado (UTC). Quando você cria uma propriedade Data em um banco de dados, o Notion converte a hora local inserida em UTC para armazenamento. A exibição na página usa as configurações de fuso horário do seu navegador ou aplicativo, então você vê a hora local correta. No entanto, ao usar uma propriedade Rollup para agregar valores de data — por exemplo, para encontrar a data mais antiga ou mais recente entre entradas vinculadas — a função Rollup realiza o cálculo nos valores UTC subjacentes. O resultado é então exibido como um timestamp UTC sem conversão de volta para o seu fuso horário local. Esse comportamento é proposital; o Rollup retorna o valor bruto calculado. O mesmo problema ocorre com as funções de fórmula prop("Rollup") quando você tenta manipular a data agregada.
A Diferença Entre Exibição e Armazenamento
Uma propriedade Data em uma página do Notion mostra a hora no seu fuso local porque o Notion aplica uma conversão de fuso horário no momento da renderização. Uma propriedade Rollup que agrega datas ignora essa camada de conversão. A saída do Rollup é o valor UTC exato do cálculo. Por exemplo, se você tem dois eventos vinculados com horários de início às 10:00 e 14:00 no Horário do Leste (UTC-5), o Notion os armazena como 15:00 UTC e 19:00 UTC. O Rollup mostrando a data mais antiga exibirá 15:00 UTC, não 10:00 ET. Essa diferença de 5 horas é a raiz da confusão.
Passos para Ajustar o Fuso Horário na Saída de uma Data de Rollup
Como o Rollup não pode ser configurado para exibir em um fuso horário específico, você deve criar uma propriedade Fórmula que pegue o valor do Rollup e o desloque para a sua hora local. Siga estas etapas com cuidado.
- Identifique a propriedade rollup e seu tipo de agregação
Abra seu banco de dados do Notion e localize a propriedade Rollup que está retornando a hora errada. Anote a função de agregação usada —Data Mais Antiga,Data Mais RecenteouContagem. Apenas agregações baseadas em data produzem uma saída de data que pode ser deslocada. - Crie uma nova propriedade Fórmula
No banco de dados, clique no botão + no cabeçalho da última coluna. Selecione Fórmula como o tipo de propriedade. Nomeie algo como “Data Corrigida” ou “Rollup Local”. - Escreva a fórmula para deslocar a hora UTC
No editor de fórmulas, use a funçãodateAddoudateSubtractpara ajustar pelo offset do seu fuso horário. Por exemplo, para o Horário do Leste (UTC-5, ou UTC-4 durante o horário de verão), use:dateAdd(prop("Rollup"), 5, "hours")
Se você estiver a leste de UTC, usedateSubtract. Substitua “Rollup” pelo nome exato da sua propriedade rollup. Substitua o número pelo seu offset em horas. - Lide com o horário de verão automaticamente (opcional)
As fórmulas do Notion não possuem um banco de dados de fusos horários embutido. Para considerar o horário de verão dinamicamente, você pode usar uma fórmula condicional que verifica o mês. Por exemplo, para o Horário do Leste dos EUA:if(month(prop("Rollup")) >= 3 && month(prop("Rollup")) <= 10, dateAdd(prop("Rollup"), 4, "hours"), dateAdd(prop("Rollup"), 5, "hours"))
Isso ajusta entre EDT (UTC-4) e EST (UTC-5). Ajuste o intervalo de meses e os valores de offset para sua região. - Formate a saída como uma data com hora
Por padrão, uma fórmula que retorna uma data será exibida no formato definido nas configurações da propriedade Fórmula. Clique no cabeçalho da propriedade Fórmula, selecione Editar propriedade e depois escolha Formato de data. Selecione um formato que inclua a hora, como "MMM D, YYYY h:mm A". Isso garante que você veja tanto a data quanto a hora no fuso horário corrigido. - Teste com um horário conhecido
Crie uma entrada de teste com uma propriedade Data definida para um horário que você conhece, como 12:00 PM no horário local. Vincule-a a outra entrada que contenha o rollup. Verifique a saída da fórmula corrigida. Agora deve mostrar 12:00 PM no seu fuso local em vez do equivalente em UTC.
Se o Rollup do Notion Ainda Mostrar Hora Errada Após o Ajuste da Fórmula
O tipo de agregação do Rollup é Contagem ou Contar Valores
Se o seu Rollup usar Contagem ou Contar Valores, a saída é um número, não uma data. O método de deslocamento por fórmula não funcionará porque você não pode adicionar horas a um número. Nesse caso, o Rollup não produz uma saída de data, então não há problema de fuso horário. A contagem está correta como um valor numérico.
A fórmula retorna um erro após adicionar horas
Se a agregação do Rollup retornar uma data que é null para algumas linhas, a função dateAdd retornará um erro. Envolva a fórmula em uma instrução if para verificar valores vazios primeiro:if(empty(prop("Rollup")), "", dateAdd(prop("Rollup"), 5, "hours"))
Isso evita erros para entradas sem dados vinculados.
O offset do fuso horário muda durante o ano
O método de offset estático não alterna automaticamente entre horário padrão e horário de verão. Se você precisar de precisão durante todo o ano sem atualizações manuais, use a fórmula condicional descrita no Passo 4. Alternativamente, aceite um offset fixo e ajuste a fórmula manualmente duas vezes por ano quando o horário de verão mudar.
Opções de Manipulação de Data em Rollup: Fórmula vs Ajuste Manual
| Item | Fórmula com dateAdd/dateSubtract | Inserção Manual na Propriedade Data |
|---|---|---|
| Correção de fuso horário | Ajusta UTC para hora local automaticamente | Nenhuma correção necessária se inserido no horário local |
| Automação | Atualiza dinamicamente quando o valor do rollup muda | Requer reinserção manual se as datas de origem mudarem |
| Tratamento de horário de verão | Possível com fórmula condicional, mas complexo | Não aplicável — inserção manual usa seu fuso atual |
| Complexidade | Requer escrita e teste de fórmula | Simples, mas demorado para muitas entradas |
| Propenso a erros | Baixo se o offset estiver correto | Alto — fácil esquecer de atualizar |
Este artigo explicou por que a agregação de data em Rollup do Notion retorna UTC em vez da sua hora local e como corrigir isso usando uma propriedade Fórmula com dateAdd ou dateSubtract. Agora você pode corrigir a saída do fuso horário para qualquer rollup que retorne um valor de data. Para evitar ajustes manuais de horário de verão, implemente a fórmula condicional de verificação de mês. Para bancos de dados que exigem hora local precisa em rollups, considere usar uma propriedade Data separada que você atualiza manualmente em vez de depender da agregação do rollup.