Você quer rastrear quanto tempo gasta em uma tarefa no Notion, mas precisa pausar o cronômetro durante uma pausa. O Notion não possui um cronômetro nativo, mas você pode criar um sistema de controle de tempo usando fórmulas, rollups e um mecanismo manual de pausa. Este artigo explica como criar um banco de dados que registra horários de início e pausa e calcula o tempo total decorrido menos as pausas. Você configurará uma fórmula que respeita os intervalos de pausa e produz valores de duração precisos.
Ao final, você poderá rastrear sessões de trabalho ao longo de vários dias, pausar e retomar sem perder dados e visualizar o tempo total em horas e minutos.
Principais Conclusões: Construindo um Temporizador no Notion com Lógica de Pausa
- Esquema do banco de dados com Hora de Início, Início da Pausa, Fim da Pausa e Hora de Término: Quatro propriedades de data que permitem registrar manualmente cada segmento da sessão.
- Propriedade de fórmula com instruções if aninhadas: Calcula o total de segundos subtraindo os blocos de pausa do bloco de tempo principal.
- Formatação da saída com round e floor: Converte segundos brutos em uma string legível “Xh Ym”.
Como Funciona o Recurso de Controle de Tempo com Pausa
As fórmulas do Notion operam nos valores das propriedades dentro de uma única linha do banco de dados. Para suportar pausas, você deve armazenar vários carimbos de data/hora em propriedades de data separadas: uma hora de início, uma ou mais horas de início de pausa e uma ou mais horas de fim de pausa. A fórmula então subtrai a duração total da pausa do tempo total decorrido entre o início e o momento atual ou uma hora de término.
Este método exige que você atualize manualmente as propriedades de pausa quando parar e reiniciar o trabalho. Ele não usa um cronômetro em tempo real. Em vez disso, a fórmula recalcula a duração sempre que qualquer propriedade é alterada, fornecendo um total atualizado cada vez que você edita a linha.
Pré-requisitos
Você precisa de um workspace do Notion com acesso a banco de dados. A fórmula usa as funções dateBetween, if, empty, now, round e floor. Nenhuma integração ou ferramenta de terceiros é necessária.
Passos para Construir o Banco de Dados de Controle de Tempo com Suporte a Pausa
- Crie um novo banco de dados
Abra o Notion e crie um novo banco de dados. Use o layout Tabela para maior clareza. Nomeie o banco de dados como Controle de Tempo. - Adicione as propriedades de data necessárias
Adicione estas quatro propriedades de data:
– Hora de Início (tipo Data) — quando a sessão começou.
– Início da Pausa (tipo Data) — quando você pausou o trabalho.
– Fim da Pausa (tipo Data) — quando você retomou o trabalho.
– Hora de Término (tipo Data) — quando a sessão terminou. Deixe vazio se a sessão ainda estiver em andamento. - Crie a propriedade de fórmula
Adicione uma nova propriedade, defina o tipo como Fórmula e nomeie-a como Duração Total. Cole a seguinte fórmula no editor:let(
inicio, prop("Hora de Início"),
pausaInicio, prop("Início da Pausa"),
pausaFim, prop("Fim da Pausa"),
fim, prop("Hora de Término"),
agoraOuFim, if(empty(fim), now(), fim),
totalSegundos, dateBetween(agoraOuFim, inicio, "seconds"),
pausaSegundos, if(and(empty(pausaInicio), empty(pausaFim)), 0, dateBetween(pausaFim, pausaInicio, "seconds")),
segundosLiquidos, totalSegundos - pausaSegundos,
horas, floor(segundosLiquidos / 3600),
minutos, round((segundosLiquidos % 3600) / 60),
format("" + horas + "h " + minutos + "m")
)
Esta fórmula calcula o total de segundos entre o início e o fim (ou agora se o fim estiver vazio), subtrai a duração da pausa e formata o resultado como horas e minutos. - Teste a fórmula com dados de exemplo
Crie uma nova linha. Defina Hora de Início como 09:00, Início da Pausa como 10:00, Fim da Pausa como 10:15 e Hora de Término como 12:00. A fórmula deve exibir 2h 45m (3 horas totais menos 15 minutos de pausa). - Adicione uma propriedade de Hora de Retomada para múltiplas pausas (opcional)
Se precisar de mais de uma pausa, adicione um segundo conjunto de propriedades de pausa: Início da Pausa 2 e Fim da Pausa 2. Atualize a fórmula para subtrair ambos os blocos de pausa. Exemplo de adição dentro da fórmula:pausaSegundos2, if(and(empty(prop("Início da Pausa 2")), empty(prop("Fim da Pausa 2"))), 0, dateBetween(prop("Fim da Pausa 2"), prop("Início da Pausa 2"), "seconds")),
segundosLiquidos, totalSegundos - pausaSegundos - pausaSegundos2, - Use o banco de dados para rastreamento ao vivo
Ao iniciar uma tarefa, preencha Hora de Início. Ao pausar, preencha Início da Pausa. Ao retomar, preencha Fim da Pausa. Quando a sessão terminar, preencha Hora de Término. A fórmula é atualizada automaticamente.
Erros Comuns e Limitações a Evitar
A fórmula retorna “NaN” ou vazio
Isso acontece quando Hora de Início está vazia. A fórmula requer um valor de início para calcular dateBetween. Sempre preencha Hora de Início primeiro.
Duração da pausa negativa
Se Fim da Pausa for anterior a Início da Pausa, a fórmula subtrai um número negativo e adiciona tempo em vez de removê-lo. Certifique-se de inserir o fim da pausa após o início da pausa.
Apenas uma pausa suportada na fórmula básica
A fórmula como escrita lida com um único bloco de pausa. Para múltiplas pausas, você deve estender a fórmula com pares adicionais de propriedades de pausa, conforme mostrado no passo 5. As fórmulas do Notion não podem fazer loop, então você deve adicionar cada par manualmente.
Problemas de fuso horário
As datas do Notion são armazenadas em UTC, mas exibidas no seu fuso horário local. A fórmula usa os valores UTC subjacentes, portanto a duração calculada está correta independentemente do seu fuso horário. No entanto, se você inserir uma data sem hora, o Notion assume meia-noite UTC, o que pode produzir resultados inesperados. Sempre inclua a hora ao preencher propriedades de data.
Propriedades de Data do Notion Usadas no Controle de Tempo: Entrada vs Comportamento da Fórmula
| Propriedade | Entrada do Usuário Necessária | Como a Fórmula a Usa |
|---|---|---|
| Hora de Início | Sim — definida uma vez no início da sessão | Âncora base para o cálculo de dateBetween |
| Início da Pausa | Sim — definida ao pausar | Início do bloco de pausa; se vazio, os segundos de pausa são zero |
| Fim da Pausa | Sim — definida ao retomar | Fim do bloco de pausa; deve ser posterior ao Início da Pausa |
| Hora de Término | Opcional — deixe vazio para rastreamento ao vivo | Se vazio, a fórmula usa now(); se definido, usa esse horário fixo |
Cada propriedade é um campo de data padrão do Notion. A fórmula não requer formatação especial.
Por Que Este Método Funciona Sem Atualizações em Tempo Real
As fórmulas do Notion só recalculam quando uma propriedade na linha é alterada. A função now() é atualizada apenas quando você edita a linha ou quando o editor de fórmulas é salvo. Isso significa que a duração exibida não é um cronômetro em tempo real. Para ver a duração atual, você precisa fazer qualquer edição na linha — por exemplo, adicionar um espaço a uma propriedade de texto. Essa limitação é inerente ao mecanismo de fórmulas do Notion. Para rastreamento em tempo real, seria necessário um aplicativo dedicado de controle de tempo integrado via API do Notion.
Apesar dessa limitação, o método fornece tempo decorrido preciso para relatórios e faturamento. Você pode criar uma linha de modelo com propriedades pré-preenchidas e duplicá-la para cada nova tarefa.