none
TimeSpan - Uso em Relógio de Ponto RRS feed

  • Pergunta

  • Olá amigos, após algumas horas de pesquisa eu tenho uma dúvida e preciso de ajuda. Tenho um cadastro de turno conforme imagem anexo, nele gravo algumas informações como horário entrada do turno, saída e almoço, ex: 08:00 - 18:00 - 02:00 (ou seja, duas horas de almoço); O que preciso é pegar entrada - saída = 10:00 horas e depois subtrair o almoço que dariam as 08:00. A ideia é deixar flexível a hora que vai sair para o almoço, desde que cumpra as 2 horas prevista conforme exemplo.


    Olha a maneira que busco os dados no banco:

    String _entradaTurno = dtGetTurno.Rows[0]["TURNO_ENTRADA"].ToString();
    String _saidaTurno = dtGetTurno.Rows[0]["TURNO_SAIDA"].ToString();
    String _almocoTurno = dtGetTurno.Rows[0]["TURNO_ALMOCO"].ToString();

    Após isso preciso fazer a subtração que seria _entradaTurno - _saidaTurno = 10:00 e isso subtrai _almocoTurno = 08:00

    Desta forma terei como dar continuidade no meu código, obrigado.

    terça-feira, 10 de fevereiro de 2015 14:50

Respostas

  • Utilize timeSpan para isso:
     double horas = (TimeSpan.Parse(_saidaTurno) - TimeSpan.Parse(_entradaTurno)).TotalHours;
                double minutos = (TimeSpan.Parse(_saidaTurno) - TimeSpan.Parse(_entradaTurno)).TotalMinutes;
                MessageBox.Show(string.Format("Horas: {0} minutos {1}", horas.ToString(), minutos.ToString()));
    • Marcado como Resposta Trassi terça-feira, 10 de fevereiro de 2015 16:01
    terça-feira, 10 de fevereiro de 2015 15:41

Todas as Respostas

  • Utilize timeSpan para isso:
     double horas = (TimeSpan.Parse(_saidaTurno) - TimeSpan.Parse(_entradaTurno)).TotalHours;
                double minutos = (TimeSpan.Parse(_saidaTurno) - TimeSpan.Parse(_entradaTurno)).TotalMinutes;
                MessageBox.Show(string.Format("Horas: {0} minutos {1}", horas.ToString(), minutos.ToString()));
    • Marcado como Resposta Trassi terça-feira, 10 de fevereiro de 2015 16:01
    terça-feira, 10 de fevereiro de 2015 15:41
  • Muito Obrigado amigo Mr. GMSOFT, é exatamente o que preciso, fica com deus, vlw.
    terça-feira, 10 de fevereiro de 2015 16:05