Pular para o conteúdo

Página de Controle de tempo

A página Controle de tempo é seu registro de auditoria de cada entrada de tempo concluída registrada em trabalhos e estações de trabalho no sistema. Cada vez que um funcionário inicia um temporizador no Kiosk ou aplicativo móvel e depois o para — ou adiciona uma entrada manual à mão — um registro entra nesta página.

Ela responde perguntas como “quanto tempo Jan gastou no Pedido PB-0042?”, “quem esteve na Cabine de Pintura esta semana?” e “este trabalho está acima do orçamento de tempo estimado?”. Abra-a pela barra lateral principal (Controle de tempo) ou navegando para /time-tracking.

Página de Controle de tempo

Diferente da página Produção, que mostra trabalho em andamento ao vivo (temporizadores ativos), a página Controle de tempo é o registro histórico do trabalho concluído. Temporizadores ativos aparecem no grupo de avatares da barra superior da página Produção; temporizadores fechados aparecem aqui.


  1. Para que serve esta página
  2. Anatomia da página
  3. Lendo a tabela
  4. Buscando
  5. Filtros avançados
  6. Cartões de resumo
  7. Exportando para Excel
  8. Como as entradas de tempo chegam aqui
  9. Adicionando um registro de tempo manualmente
  10. Editando uma entrada de tempo
  11. Parando um temporizador ativo
  12. Fechamento automático de temporizadores no fim do turno
  13. Entradas de tempo e Registros de Trabalho
  14. Entradas de tempo e Webhooks
  15. Visualização por trabalho vs. sistema inteiro
  16. Personalizando a página de Controle de tempo
  17. Dicas e melhores práticas

A página de Controle de tempo é a única fonte de verdade para quanto tempo as pessoas gastaram em quê. Use-a para:

  • Entrada de folha de pagamento — veja o total de horas que cada funcionário trabalhou, dividido por trabalho e estação de trabalho.
  • Custeio de trabalho — some o tempo de mão de obra em um único trabalho para comparar com sua estimativa.
  • Relatórios de produtividade — veja quem trabalhou em quê, quando e por quanto tempo.
  • Auditoria — investigue por que um trabalho está acima do orçamento olhando para cada entrada de temporizador individual.
  • Verificação pontual do chão de fábrica — confirme que os fluxos de entrada/saída estão sendo usados corretamente.

A página é majoritariamente de leitura — as entradas são criadas no chão (Kiosk / aplicativo móvel), não daqui. Daqui você principalmente as revisa, opcionalmente edita timestamps se um erro foi cometido e ocasionalmente adiciona uma entrada de preenchimento retroativo à mão.


A página é disposta de cima para baixo em quatro faixas:

  1. Barra de ferramentas superior — título da página; a caixa de Busca à esquerda; o seletor Mostrar N entradas e o botão Exportar para Excel à direita.
  2. Linha de filtros avançados — seletores de Funcionário, Trabalho, Pedido e Estação de trabalho, mais as entradas de data De / Até e um botão Limpar filtros. Veja Filtros avançados.
  3. Cartões de resumo — três números rápidos para o conjunto atualmente filtrado: Tempo total, Entradas, Funcionários. Veja Cartões de resumo.
  4. A própria tabela, uma linha por entrada de tempo concluída, ordenada por iniciado mais recentemente primeiro. Paginação padrão com um contador Mostrando X–Y de Z fica abaixo.

A página lista apenas entradas cujo temporizador foi parado. Temporizadores ativos (ainda em execução) aparecem na barra superior da página Produção e na aba Controle de tempo do trabalho relevante — veja Parando um temporizador ativo.


Cada linha mostra:

ColunaO que mostra
FuncionárioO funcionário que iniciou o temporizador.
TrabalhoO nome do trabalho na primeira linha; o Núm Ref do trabalho (#PB-0042) em uma segunda linha menor abaixo.
PedidoO nome do pedido pai na primeira linha; o Núm Ref do pedido em uma segunda linha menor abaixo.
Estação de trabalhoA coluna de estação de trabalho contra a qual o trabalho foi registrado, mostrado como uma pequena badge.
IniciadoTimestamp de quando o temporizador foi iniciado.
ParadoTimestamp de quando o temporizador foi parado.
DuraçãoTempo total decorrido, formatado de forma compacta: 45s, 12m, 1h 32m.

Um traço (-) aparece quando um pedaço de dados está faltando (por exemplo, um registro de funcionário foi excluído, ou o temporizador está de alguma forma incompleto).

A tabela é ordenada por timestamp Iniciado, descendente — mais recente primeiro — e isso não é configurável pelo usuário a partir da página.


Digite na caixa de busca. A consulta corresponde a:

  • Nome ou sobrenome do Funcionário
  • Nome ou Núm Ref do Trabalho
  • Nome ou Núm Ref do Pedido

A busca não diferencia maiúsculas/minúsculas e usa correspondência de contém, então “Kow” corresponde a “Kowalski” e “0042” corresponde a “PB-0042”.

A lista atualiza cerca de 300 ms depois que você para de digitar. A consulta é refletida na URL, então uma visualização filtrada (por exemplo, “cada entrada no pedido PB-0042”) pode ser favoritada ou compartilhada.

A busca empilha com os filtros avançados abaixo — por exemplo, você pode escolher Funcionário = Jan Kowalski e então digitar “mesa” na caixa de busca para ver apenas as entradas de Jan em trabalhos cujo nome/ref/pedido contém “mesa”.


Abaixo da linha de busca fica a barra de filtros avançados — cinco filtros precisos mais um intervalo de datas. Todos os filtros combinam com E, todos atualizam a URL (para que visualizações sejam favoritáveis e compartilháveis) e todos são honrados pelos cartões de resumo e pela exportação para Excel.

Funcionário, Trabalho, Pedido, Estação de trabalho

Seção intitulada “Funcionário, Trabalho, Pedido, Estação de trabalho”

Estes quatro são seletores combobox pesquisáveis com a mesma UX:

  1. Clique no seletor para abrir o menu suspenso.
  2. Comece a digitar — a lista filtra conforme você digita.
  3. Clique em uma opção, ou clique na linha superior Todos os funcionários / Todos os trabalhos / Todos os pedidos / Todas as estações de trabalho para limpar esse filtro.

As listas têm escopo nas opções que realmente têm entradas de tempo — você não verá trabalhos em que ninguém nunca registrou entrada, então o menu suspenso permanece curto.

FiltroO que combina
FuncionárioEntradas iniciadas por essa pessoa.
TrabalhoEntradas em um trabalho específico (um produto / item de linha de produção).
PedidoEntradas em qualquer trabalho pertencente a um pedido de cliente específico. Útil para “quantas horas gastamos no pedido da Acme até agora?”.
Estação de trabalhoEntradas registradas em uma estação de trabalho específica, independentemente de qual trabalho. Útil para relatórios de capacidade e gargalo em uma máquina ou estação específica.

Duas entradas de data De / Até filtram pelo timestamp Iniciado da entrada:

  • De — apenas entradas que começaram em ou depois desta data (inclusivo, a partir das 00:00 hora local).
  • Até — apenas entradas que começaram em ou antes desta data (inclusivo, até as 23:59 hora local).
  • Deixar qualquer um em branco significa sem limite desse lado — defina apenas De = 2026-01-01 para ver tudo a partir de janeiro.

Quando pelo menos um filtro (busca, seletor ou data) está ativo, um botão Limpar filtros aparece à direita da linha de filtros. Clicar nele redefine cada filtro de uma vez e recarrega a tabela sem filtro aplicado — uma única ida e volta, não cinco.


Uma linha de três cartões diretamente acima da tabela mostra agregados para o conjunto atualmente filtrado (em todas as páginas, não apenas a página na tela):

CartãoO que conta
Tempo totalSoma de duration_seconds em cada entrada correspondente, formatado como Xh Ym.
EntradasQuantas entradas correspondem aos filtros atuais.
FuncionáriosQuantos funcionários distintos são representados nas entradas correspondentes.

Os cartões atualizam automaticamente sempre que você muda um filtro, para que você possa responder perguntas como “quantas horas a equipe de pintura dedicou ao pedido da Acme em janeiro?” em alguns cliques — escolha Estação de trabalho = Cabine de Pintura, Pedido = Acme, De = 2026-01-01, Até = 2026-01-31 e leia o cartão Tempo total.


No canto superior direito da página há um botão Exportar para Excel. Clique nele e o navegador imediatamente baixa um arquivo .csv chamado time-tracking_YYYY-MM-DD_HHMMSS.csv (Excel, Numbers e Google Sheets todos abrem nativamente).

A exportação:

  • Aplica cada filtro ativo — busca, funcionário, trabalho, pedido, estação de trabalho e intervalo de datas. O que você vê na tabela filtrada é exatamente o que vai parar no arquivo.
  • Inclui todas as entradas correspondentes em cada página — a paginação é contornada, então mesmo que a tabela esteja mostrando “Página 1 de 27” você ainda obtém todas as 27 páginas de linhas no arquivo.
  • Faz streaming conforme gera, então seleções muito grandes não terão timeout ou consumirão memória no servidor.
ColunaNotas
EmployeeNome Sobrenome unidos.
JobO nome do trabalho.
Job Ref NoO número de referência do trabalho (por exemplo, PB-0042).
OrderO nome do pedido pai.
Order Ref NoO número de referência do pedido pai.
WorkstationA estação de trabalho contra a qual a entrada foi registrada.
StartedYYYY-MM-DD HH:MM:SS.
StoppedYYYY-MM-DD HH:MM:SS.
Duration (h:mm:ss)Tempo decorrido legível.
Duration (minutes)Minutos com duas casas decimais — fácil de somar para folha de pagamento.
Duration (seconds)Segundos brutos — fácil para scripts downstream.
  • Pré-filtre antes de exportar. Uma exportação semanal de folha de pagamento tipicamente significa: escolha De = Segunda e Até = Domingo, então Exportar. Ou escolha Funcionário = Jan para uma linha de folha de uma pessoa.
  • Sem filtros = exportar tudo. Clicar em Exportar sem nada filtrado baixa cada entrada concluída no sistema. Útil para um backup pontual ou análise externa.
  • O arquivo é UTF-8 com BOM, então caracteres poloneses, tremas alemães etc. abrem corretamente no Excel sem ginástica de “Assistente de Importação”.

As entradas de tempo podem ser criadas de várias maneiras. Todas terminam no mesmo lugar — esta página — uma vez que são paradas.

Um funcionário em uma estação de trabalho toca em Iniciar Trabalho no Kiosk ou aplicativo móvel, insere seu PIN, e um temporizador começa a contar contra um par específico trabalho × estação de trabalho. Quando ele toca em Parar Trabalho, o temporizador fecha, a duração é calculada e a entrada aparece aqui.

2. “Adicionar Registro de Tempo” manual do painel de Trabalho

Seção intitulada “2. “Adicionar Registro de Tempo” manual do painel de Trabalho”

Abra um trabalho → mude para a aba Controle de tempo → clique em Adicionar Registro de Tempo. Você escolhe um funcionário, uma estação de trabalho, um timestamp de início e um timestamp de parada. A entrada é preenchida retroativamente com a duração exata que você especificou.

Isso é útil para capturar trabalho que foi feito mas não registrado (por exemplo, o funcionário esqueceu de iniciar um temporizador, ou o dispositivo estava offline). Veja Adicionando um registro de tempo manualmente.

Se um funcionário deixa um temporizador rodando no fim do turno, seu endpoint de Cron Job programado o fechará automaticamente quando acionado. A nota “Fechado automaticamente por cron job” do cron vai parar no registro do trabalho; a entrada de tempo aparece aqui com o horário de fechamento do cron como Parado.

Se você vê um temporizador ativo na aba Controle de tempo do painel de Trabalho, pode clicar no botão Parar. O temporizador fecha imediatamente e a entrada aparece aqui.


Você não pode criar uma entrada nova diretamente desta página. Entradas manuais são criadas por trabalho:

  1. Abra o trabalho (via a página Trabalhos ou clicando a partir do Controle de tempo).
  2. Mude para a aba Controle de tempo no painel de Trabalho.
  3. Clique em Adicionar Registro de Tempo.
  4. Escolha o Funcionário (digite pelo menos um caractere para buscar).
  5. Escolha a Estação de trabalho onde o trabalho foi feito (deve ser uma estação de trabalho que existe no trabalho).
  6. Defina Iniciado em e Parado em (seletores de data + hora). Parado deve ser depois de Iniciado.
  7. Clique em Salvar.

A entrada é criada com a duração exata entre Iniciado e Parado, uma entrada correspondente de registro de trabalho é adicionada com a nota Time tracked: 1h 25min (added manually by <your name>), e quaisquer webhooks time_log_saved correspondentes disparam com mode: "manual".

Por que um registro de trabalho também? Registros de trabalho são as notas cronológicas por estação de trabalho anexadas a um trabalho. Cada entrada de tempo produz um para que a trilha de auditoria seja unificada — veja Entradas de tempo e Registros de Trabalho.


Erros acontecem — um temporizador foi iniciado às 7:00 mas o funcionário realmente chegou às 7:30. Para corrigir:

  1. Abra o trabalho (a partir da tabela, clique através, ou use a busca para encontrá-lo na página Trabalhos).
  2. Mude para a aba Controle de tempo.
  3. Clique no ícone de lápis ao lado da entrada.
  4. Ajuste Iniciado em e/ou Parado em.
  5. Opcionalmente adicione uma Nota descrevendo por que a entrada foi editada (isso é anexado ao registro de trabalho).
  6. Clique em Salvar.

A duração da entrada é recalculada automaticamente. Uma nova entrada de registro de trabalho é adicionada com a nota Time entry edited by <your name>. New duration: 55min (mais qualquer nota de motivo que você adicionou), e webhooks time_log_saved disparam novamente para refletir a nova duração.

Apenas entradas paradas podem ser editadas. Temporizadores ativos não podem ser editados — pare-os primeiro, depois edite.

Não há trilha de auditoria de valores anteriores. O registro de trabalho captura que uma edição aconteceu, mas não os timestamps antigos. Se isso é importante para sua configuração de conformidade, arquive os valores anteriores do registro de trabalho antes de editar.


A página Controle de tempo lista apenas entradas paradas, então nunca mostra temporizadores ativos. Para parar um durante o turno:

  • Do Kiosk / aplicativo móvel — o funcionário toca em Parar ele mesmo.
  • Do painel de Trabalho — abra o trabalho → aba Controle de tempo → clique no botão vermelho Parar na entrada em andamento.
  • Do Cron Job — chame a URL de endpoint cron configurada para as estações de trabalho em questão (veja Cron Jobs).

Em todos os casos, uma vez parada, a entrada sai da lista ativa e aparece nesta página.


Fechamento automático de temporizadores no fim do turno

Seção intitulada “Fechamento automático de temporizadores no fim do turno”

Oficinas onde funcionários ocasionalmente esquecem de registrar saída podem usar Cron Jobs para fechar temporizadores obsoletos automaticamente. Configure um por equipe / por turno para:

  • Executar em uma programação cron (por exemplo, 17:00 a cada dia útil).
  • Fechar cada temporizador ativo nas estações de trabalho atribuídas a esse cron.
  • Anexar uma nota Auto-closed by cron job: <name> a cada registro de trabalho afetado.
  • Opcionalmente enviar um resumo por e-mail de todas as entradas fechadas a um supervisor.

As entradas fechadas então aparecem nesta página exatamente como se tivessem sido paradas à mão.

Veja Cron Jobs para o guia completo de configuração.


Cada entrada de tempo nesta página tem uma entrada correspondente de registro de trabalho no trabalho contra o qual foi registrada. Registros de trabalho são a trilha de auditoria cronológica por estação de trabalho que você vê na aba Registros de um trabalho. A integração se parece com isto:

EventoFormato da nota do registro de trabalho
Temporizador parado no Kiosk / móvelTime tracked: <duration>
Cron job fechamento automáticoAuto-closed by cron job: <name>
”Adicionar Registro de Tempo” manualTime tracked: <duration> (added manually by <user>)
”Parar” manual do painel de TrabalhoTime tracked: <duration> (manually closed by <user>)
Entrada de tempo editadaTime entry edited by <user>. New duration: <new>

O registro de trabalho captura qty = 0 para essas entradas auto-geradas — elas são registros de mão de obra, não registros de quantidade. Se um funcionário registrou tanto tempo quanto quantidade (o Kiosk permite fazer ambos em uma submissão), a qtd é capturada no mesmo registro.


Cada entrada de tempo — seja criada no Kiosk, adicionada manualmente, parada do painel de trabalho ou fechada automaticamente por um cron — dispara o evento de webhook time_log_saved para qualquer endpoint inscrito.

O payload inclui:

  • Contexto de trabalho e estação de trabalho
  • A duração em minutos
  • O funcionário (id, name, surname)
  • O campo mode, que informa como a entrada foi criada:
    • "manual" — criada via Adicionar Registro de Tempo, botão Parar ou Editar
    • "work_stopped" — criada quando o temporizador do Kiosk/móvel foi parado normalmente

Use esses para enviar entradas de tempo para um sistema de folha de pagamento, sistema de faturamento ou dashboard de produtividade em tempo real. Veja Webhooks para configuração completa.


Você pode olhar as entradas de tempo de dois ângulos:

VisualizaçãoOndeMelhor para
Sistema inteiroEsta página (/time-tracking)Relatórios cross-job, encontrar todas as entradas de um funcionário, revisão diária/semanal
Por trabalhoPainel de Trabalho → aba Controle de tempoCusteio de trabalho — “quanto trabalho neste trabalho?” — mais controles de editar/parar/adicionar por trabalho

Ambas as visualizações leem dos mesmos dados subjacentes, então uma entrada adicionada em uma é visível imediatamente na outra.

Ambas as visualizações também têm cartões de resumo no topo:

  • A página sistema inteiro mostra três cartões — Tempo total, Entradas, Funcionários — calculados no conjunto atualmente filtrado, incluindo qualquer intervalo de datas ativo. Veja a seção Cartões de resumo acima.
  • A aba por trabalho mostra quatro cartões — tempo estimado (soma das estimativas de estação de trabalho), tempo total rastreado, contagem de entradas e contagem de funcionários distintos. Quando o total rastreado excede o estimado, o número é destacado em vermelho — um sinal visual rápido de que um trabalho está acima do orçamento.

A maior parte do que flui para esta página é configurada em outros lugares:

Para alterar…Vá para…
Quem pode registrar entrada (gerenciamento de PIN de funcionário)Configurações do aplicativo → Funcionários
Quais estações de trabalho suportam controle de tempoPainel de Trabalho → aba Estações de trabalho → Permitir Controle de tempo por linha
Estimativas de tempo por trabalho (usadas em orçamento vs real)Painel de Trabalho → aba Estações de trabalho → Tempo Estimado por linha
Fechamento automático no fim do turnoConfigurações do aplicativo → Cron Jobs (docs)
Encaminhamento de entradas de tempo para sistemas externosConfigurações do aplicativo → Webhooks (docs)
Renomear “Controle de tempo” na barra lateralConfigurações do aplicativo → Nomenclatura

As mudanças têm efeito imediato — sem necessidade de atualização.


  • Incentive primeiro o fluxo Kiosk / móvel — ele captura timestamps limpos de Início / Parada sem intervenção manual. Use Adicionar / Editar manual apenas para corrigir exceções.
  • Sempre defina estimativas de estação de trabalho em cada trabalho. Sem elas, a aba Controle de tempo por trabalho pode mostrar tempo real mas não tem nada para comparar.
  • Combine esta página com cron jobs de fim de turno. Sem fechamento automático, funcionários que esquecem de parar seus temporizadores produzirão entradas anormalmente longas. O cron previne isso e é invisível para o chão.
  • Ao editar entradas, deixe um motivo no campo Nota. A nota vai parar no registro de trabalho permanentemente — seu eu futuro (e qualquer auditor) agradecerá.
  • Combine com webhooks time_log_saved para enviar horas para seu provedor de folha de pagamento ou dashboard de BI automaticamente — veja Webhooks.
  • Use a busca amplamente — buscar por um Núm Ref de Pedido é a maneira mais rápida de ver cada minuto de mão de obra que entrou no pedido de um cliente específico. O seletor dedicado Pedido é a maneira mais precisa quando você conhece o cliente; a busca é para “vou reconhecer quando vir”.
  • Para folha de pagamento, apoie-se no intervalo de datas + filtro Funcionário + Exportar. Escolha o período de pagamento em De / Até, opcionalmente restrinja a um funcionário, dê uma olhada no cartão Tempo total para verificação pontual, então Exporte para Excel para o arquivo real de folha.
  • Para custeio de trabalho, combine Pedido ou Trabalho com o intervalo de datas. Filtre para um Pedido ao longo do período do calendário quando o trabalho foi feito, então leia o cartão Tempo total e compare com a estimativa na aba por trabalho.
  • Audite anomalias antes de editar. Um temporizador que rodou por 18 horas quase sempre não é um turno real de 18 horas — é um registro de saída esquecido. Verifique as notas do registro de trabalho para marcadores Auto-closed by cron job: …; esses foram introduzidos pelo cron e podem ser encurtados com segurança para o fim real do turno.
  • O resumo sempre corresponde ao que você exportaria. Se você quiser verificar a sanidade do arquivo Excel, dê uma olhada no cartão Entradas primeiro — o número de linhas de dados no .csv baixado corresponderá (menos a linha de cabeçalho).