Visual Basic.NET - Calculo de Horas

 
Vista:

Calculo de Horas

Publicado por Calculo Horas (1 intervención) el 09/02/2017 16:22:09
Estoy haciendo un sistema para el control de viáticos y ya realice lo siguiente

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Dim SALIDA As Date = "07:50"
    Dim LLEGADA As Date = "06:50"
    Dim fechaS As Date = "24/05/2016"
    Dim fechaL As Date = "26/05/2016"
    Dim SAL As Date = fechaS + " " + SALIDA
    Dim LEG As Date = fechaL + " " + LLEGADA
    Dim FECHAF As TimeSpan = LEG - SAL
    Dim DESAYUNO As Integer
    Dim ALMUERZO As Integer
    Dim CENA As Integer
    If FECHAF.TotalHours > 24 Then
        Dim X = FECHAF.TotalHours / 24
        Dim Y = CDec(X).ToString(0)
        DESAYUNO = Y
        ALMUERZO = Y
        CENA = Y
    End If
End If
If LLEGADA > "07:00" And SALIDA <= "07:00" Then
    DESAYUNO = DESAYUNO + 1
End If
If LLEGADA >= "14:00" And SALIDA <= "11:00" Then
    ALMUERZO = ALMUERZO + 1
End If
If LLEGADA >= "20:00" And SALIDA <= "18:00" Then
    ALMUERZO = ALMUERZO + 1
End If

eso me calcula la cantidad de dasayunos, almuerzos o cenas durante un dia completo.
pero debo calcular por las horas para sumarle lo que le falta es decir

para obtener desayuno debe salir antes o a las 7:00 y llegar después de las 7:00
para obtener almuerzo debe salir antes o a las 11:00 y llegar después o a las 14:00
para obtener cena debe salir antes o a las 18:00 y llegar después o a las 20:00

si un dia sale a las 6:00 12/12/12 y regresa a las 8:00 12/12/12 el me calcula el desayuno
pero si un dia sale a las 21:00 11/12/12 y regresa a las 8:00 12/12/12 no me calcula el desayuno porque la hora en teoria es mayor pero por el dia es menor, entonces no se como realizarlo

AYUDAAAAAAAAAAAAAAAAAA!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Diego
Val: 605
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Calculo de Horas

Publicado por Diego (190 intervenciones) el 09/02/2017 18:41:46
Hola, podés utilizar la función DateDiff y DateAdd, para realizar tus cálculos y diferenciaciones.
Investiga sobre esas 2 funciones.

Saludos y +bytes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar