Foros del Web » Programación para mayores de 30 ;) » .NET »

operaciones con horas

Estas en el tema de operaciones con horas en el foro de .NET en Foros del Web. hola, alguien sabe como se puede hacer operaciones con horas: sumar, restar, multiplicar... por ejemplo: dia1: 15 h 20 min dia2: 20 h 10 min ...
  #1 (permalink)  
Antiguo 04/06/2005, 12:01
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 21 años, 4 meses
Puntos: 156
Pregunta operaciones con horas

hola,

alguien sabe como se puede hacer operaciones con horas: sumar, restar, multiplicar...

por ejemplo:

dia1: 15 h 20 min
dia2: 20 h 10 min

total= dia 1 + dia2

suma total de horas


para restar:

hora inicio: 12:00
hora final: 17:45

hora final - hora inicial


etc etc etc para las otras operaciones.


saludos
  #2 (permalink)  
Antiguo 06/06/2005, 04:25
Avatar de moNTeZIon  
Fecha de Ingreso: enero-2005
Ubicación: Lliçà de Munt - BCN
Mensajes: 1.625
Antigüedad: 20 años, 1 mes
Puntos: 9
Con la funcion DateAdd

DateAdd(ParteFecha, Cantidad, FechaHora)

ParteFecha --> En tu caso debe ser "h"
Cantidad --> Positivo para sumar, negativo para restar
FechaHora --> Expresion de Tipo Date o Time
__________________
..:: moNTeZIon ::..
  #3 (permalink)  
Antiguo 06/06/2005, 06:28
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 21 años, 4 meses
Puntos: 156
hola,

lo que pasa que con el DateAdd no vale para hacer sumas totales de horas qeu sobrepasen de 24 h.

Por ejemplo si yo quiero saber el total de horas que X alumno ha asistido a clase un mes, es más de 24 horas.

Dia 1: 3 horas
Dia 2: 6 h.
dia 3: 6 h.
dia 4: 6 h
dia 5: 5h 30 min

etc etc

y al final me debería dar por ejemplo, 100 horas

El dateAdd tiene en cuenta la fecha, y me da un resultado no válido.
  #4 (permalink)  
Antiguo 06/06/2005, 07:37
Avatar de neivan  
Fecha de Ingreso: febrero-2005
Mensajes: 539
Antigüedad: 20 años
Puntos: 1
Dependerá de lo que quieres hacer exactamente,te deberás crear un función concreta,no cuesta nada.
Po ejemplo para ver cuantas horas va un alumno al mes si al día entra a las 12:30 y sale a las 16:00
Pues bien deberias calcular los dias laborables(número) no se si controlarias asistencia,pero luego eso multiplicarselo por las horas al dia,como hacer esto??
Con funciones en las que controles todos lso detalles..Yo por lo menos en mi aplicación de ocuapción de aulas por cursos controlando las horas del curso por dia y totales,festivos,laborables,dias en que se imparte ...... me he tenido que crear funciones para avanzar fechas sumar horas (pasandolo a decimales y utilizando el split para coger horas o minutos ....).
Si concretas más puede que te pueda ayudar más pero en principio si buscas algo ya hecho. o que te lo haga me parece que no vas a encontrar....
  #5 (permalink)  
Antiguo 07/06/2005, 03:43
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 21 años, 4 meses
Puntos: 156
hola,

gracias por contestar.

Pues básicamente es sumar las horas de asistencia de un alumno, de cada mes.

Por ejemplo, en la tabla tengo los campos:

idRegistro
alumno
dia
mes
año
hora_entrada
hora_salida

Entonces se tienen que sacar listados del total horas de ese mes.

Para salir del paso lo que hago es pasarlo todo a minutos, y entonces voy operando así con minutos, y luego para mostrarlo lo paso a horas y minutos otra vez.

Era sólo para saber si hay alguna función ya hecha de sumar horas, sin que tenga en cuenta la fecha. Porque el DateAdd, tiene en cuenta la fecha y no me vale.

Otra cosa, con una consulta SQL es posible sumar horas, y que de un resultado mayor de 24 h.?

saludos!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:28.