Existen muchas funciones para sumar horas a fechas en ABAP, pero siempre requieren que las horas a sumar esten en formato HHMMSS, pero ¿que pasa si lo que quieres es sumar 1.354 horas? y no tienes el dato en formato HHMMSS, recientemente necesitaba hacer esto y encontré una solución muy practica.
"Declarar una variable de tipo t data: hora_t type t, horas_sumar type p length 4 decimals 3 . "Cantidad de horas a sumar horas_sumar = '1.25'. "Esto hara el truco, y tendremos algo asi: 011500 "en formato HHMMSS, una hora con 15 minutos hora_t = horas_sumar * 3600.
Ahora si lo que queremos es sumar esas horas a una fecha, podemos usar el siguiente código
"Declarar una variable de tipo t
DATA: hora_t TYPE t,
horas_sumar TYPE p LENGTH 4 DECIMALS 3,
hora TYPE t,
fecha TYPE d .
"Cantidad de horas a sumar
horas_sumar = '1.25'.
"Esto hara el truco, y tendremos algo asi: 011500
"en formato HHMMSS
hora_t = horas_sumar * 3600.
"ahora podemos utilizar las demas f
CALL FUNCTION 'C14B_ADD_TIME'
EXPORTING
i_starttime = sy-timlo "o la hora que deseemos
i_startdate = sy-datum "o la fecha que deseemos
i_addtime = hora_t
IMPORTING
e_endtime = hora "Nueva hora, despues de sumar 1.25
e_enddate = fecha. "Nueva fecha, puede se que corra al siguiente dia
Sumar fracciones de hora en un campo fecha
Tío veo tu post y me doy cuenta de lo menso que soy, no se por que no se me habia ocurrido algo asi. Saludos desde Lima, Perú
Me alegra que te haya gustado