Rafael Eu entendi que vc permite que o funcionário saia do trabalho após as 18 horas... Não seria mais interessante vc permitir que ele registre sua saída a qualquer momento? Para isso, ao registrar o ponto, o sistema deveria ler o último lançamento de registro daquela matrícula e automaticamente definir qual o tipo de lançamento que estaria sendo feito naquele momento. O problema é que o funcionário pode ter esquecido de registrar no dia anterior a saída e ter a entrada bloqueada no dia seguinte, ou esquecer de bater a entrada, e querer registrar a saída. Isso é trabalhoso para o usuário (funcionário) mas facilita no final na composição dos cálculos de horas. Veja, Situação 1. Funcionário entrou, bateu ponto e saíu sem registrar saída No dia seguinte, o sistema alerta que ele não pode dar entrada, pois não registrou saída do dia anterior e manda ele procurar o supervisor... Aí entra a rotina de acerto feita com senha especial. Problema resolvido e cálculo de horas trabalhadas perfeito no fim das contas sem pendências.
Situação 2 Funcionário esqueceu de bater ponto na entrada, ao sair o sistema verifica que ele não pode registrar saída sem entrada. Manda o dito cujo procurar o supervisor. Aí entra a rotina de acerto feita com senha especial. Problema resolvido e cálculo de horas trabalhadas perfeito no fim das contas sem pendências. Situação 3 Funcionário bateu ponto na entrada hoje, saiu sem bater o ponto, pensadamente, não bateu ponto de entrada no dia seguinte, e tentou bater o ponto na saída, O sistema verifica a quantidade de horas entre entrada e saída, ealerta para que chame o supervisor, sem permitir que registre o ponto... Aí entra a rotina de acerto feita com senha especial. Problema resolvido e cálculo de horas trabalhadas perfeito no fim das contas sem pendências. Agora... A comparação de horas, no meu ver, deve sempre ser feita no formato numérico, ou TDateTime... Não transforme em texto. Compare hora maior com hora menor para extrair diferença de tempo entre elas... transformando tudo em minutos... é mais negócio... Ou compare as duas para saber se uma é maior que a outra. As datas são na realidade números que a parte inteira representam os dias, e a decimal a fração dos dias... assim, comparar números de mesmo formato, fica bem mais simples... Espero ter ajudado! Sds __________________________________ Emanuel Coutinho Salvador-Ba-Brasil