CONTADOR DE TEMPO COM BUSCA SQL
Bom dia a todos!
Estou tentando fazer algumas contas com DATETIME no MySQL.
Conforme o usuário está trabalhando exiba na tela um [Ô]contador de tempo[Ô] em um sistema VB.NET.
Essa minha QUERY está funcionando perfeitamente, conforme imagem. A soma das horas me retorna [Ô]25:00:00[Ô].
O problema: Não estou conseguindo puxar isso para meu sistema. A QUERY me retorna um TIME que só estou conseguindo pegar com uma variável do tipo TIMESPAN.
Consequentemente essa função no sistema está me retornando [Ô]1:0:0[Ô] ao invés de [Ô]25:00:00[Ô].
[txt-color=#e80000]***Editado: Erro de Ortográfia[/txt-color]
Estou tentando fazer algumas contas com DATETIME no MySQL.
Conforme o usuário está trabalhando exiba na tela um [Ô]contador de tempo[Ô] em um sistema VB.NET.
Essa minha QUERY está funcionando perfeitamente, conforme imagem. A soma das horas me retorna [Ô]25:00:00[Ô].
O problema: Não estou conseguindo puxar isso para meu sistema. A QUERY me retorna um TIME que só estou conseguindo pegar com uma variável do tipo TIMESPAN.
Consequentemente essa função no sistema está me retornando [Ô]1:0:0[Ô] ao invés de [Ô]25:00:00[Ô].
[ô][ô][ô] <summary>
[ô][ô][ô] Retorna o tempo trabalhado em uma determinada ordem de cliente.
[ô][ô][ô] </summary>
[ô][ô][ô] <param name=[Ô]OrdemCliente[Ô]>Número da ordem de cliente.</param>
[ô][ô][ô] <returns>Tempo.</returns>
Protected Function selectTempo(ByVal OrdemCliente As String) As String
Dim tsTempo As TimeSpan = Nothing
Dim sTempo As String = String.Empty
Try
SQL = New StringBuilder
SQL.Append([Ô]SELECT SEC_TO_TIME(SUM(TIME_TO_SEC(TIMEDIFF(IFNULL(TIME(dFinal),TIME(NOW())),TIME(dInicio)))))[Ô])
SQL.Append([Ô]FROM tPRIORIDADES_Tempo [Ô])
SQL.Append([Ô]WHERE sNome = [ô][Ô]).Append(Recursos.Usuario.Nome).Append([Ô][ô] [Ô])
SQL.Append([Ô]AND sOrdemCliente = [ô][Ô]).Append(OrdemCliente).Append([Ô][ô][Ô])
dr = ODBC.GetDataReader(SQL.ToString)
Do While dr.Read
If Not dr.IsDBNull(0) Then tsTempo = dr.GetTime(0)
Loop
dr.Close()
sTempo = CStr(tsTempo.Hours) & [Ô]:[Ô]
sTempo += CStr(tsTempo.Minutes) & [Ô]:[Ô]
sTempo += CStr(tsTempo.Seconds)
Return sTempo
Catch ex As Exception
Recursos.Erro.Gravar(ex)
Return String.Empty
End Try
End Function
[txt-color=#e80000]***Editado: Erro de Ortográfia[/txt-color]
Esse que é o meu problema! O TimeSpan não está me trazendo as 25 horas.
Veja as informações do TimeSpan (tsTempo) ao receber as informações do banco.
Coloquei um Breakpoint
TotalDays = TotalDays = 0.041666666666666664
TotalHours = 1.0
O TimeSpan simplesmente ignorou as outras 24.
Veja as informações do TimeSpan (tsTempo) ao receber as informações do banco.
Coloquei um Breakpoint
TotalDays = TotalDays = 0.041666666666666664
TotalHours = 1.0
O TimeSpan simplesmente ignorou as outras 24.
Na verdade esse dr.GetTime(0) é que não está me trazendo o horário certo.
Grande [txt-color=#0000f0]LVFIOROT[/txt-color]!!!
Perfeito!!!
Fico te devendo uma GELADA.
Perfeito!!!
Fico te devendo uma GELADA.
Tópico encerrado , respostas não são mais permitidas