MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 31/03/08, 19:25:59
jossnet jossnet is offline
Member
 
Fecha de Ingreso: oct 2007
Mensajes: 61
cantidad de horas entre dos fechas

saludos: tengo un programa donde ingreso una fecha y hora de inicio asi como una fecha y hora de fin,pero debo de calcular la cantidad de horas comprendidas entre esos valores considerando que no necesariamente la fecha de fin es la misma fecha de inicio,alguno conoce un modulo de funcion que pueda servir
Responder Con Cita
  #2  
Viejo 31/03/08, 20:09:04
Avatar de DavidXD_XD
DavidXD_XD DavidXD_XD is offline
Moderator
 
Fecha de Ingreso: ago 2006
Localización: Lima - Perú
Mensajes: 1,251
Hola, creo q no existe la funcion, estuve buscando con este nombre *BETWEEN*DATE*, pero ninguna funciona como la que quieres, hice un pequeño reporte, pero solo funciona con horas fijas ... espero te ayude al menos es una idea

REPORT ZPRUEBA_3 MESSAGE-ID ZFI.

* Día y hora de inicio
SELECTION-SCREEN BEGIN OF BLOCK blq1 WITH FRAME TITLE text-t01.
PARAMETERS: p_datum1 TYPE laeda,
p_uzeit1 TYPE udftime.
SELECTION-SCREEN END OF BLOCK blq1.

DATA: g_flag,
g_dias TYPE i,
g_dif_horas TYPE i,
g_horas TYPE i.

* Día y hora de fin
SELECTION-SCREEN BEGIN OF BLOCK blq2 WITH FRAME TITLE text-t02.
PARAMETERS: p_datum2 TYPE laeda,
p_uzeit2 TYPE udftime.
SELECTION-SCREEN END OF BLOCK blq2.

START-OF-SELECTION.

CLEAR: g_flag, g_dias, g_dif_horas, g_horas.

IF p_datum1 > p_datum2.
g_flag = 'X'.
MESSAGE S000 WITH 'Colocar bien las fechas'.
ELSEIF p_datum1 = p_datum2.
IF p_uzeit1 > p_uzeit2.
g_flag = 'X'.
MESSAGE S000 WITH 'Colocar bien las horas'.
ENDIF.
ENDIF.

CHECK g_flag IS INITIAL.
* Calculando diferencia de dias
g_dias = p_datum2 - p_datum1.

IF NOT g_dias IS INITIAL.
g_horas = g_dias * 24.
ENDIF.
* Calculando diferencia de horas
g_dif_horas = p_uzeit2(2) - p_uzeit1(2).

g_horas = g_horas + g_dif_horas.

WRITE: 'Las horas comprendidas entre ambas fechas es ->', g_horas.
__________________
David Carballido Córdova
Responder Con Cita
  #3  
Viejo 31/03/08, 20:13:20
Mauricio Hidalgo Mauricio Hidalgo is offline
Senior Member
 
Fecha de Ingreso: may 2006
Localización: Santiago, Chile
Mensajes: 481
Te servirá esta?

ISHMED_CALC_DATE_TIME_DIFF
Responder Con Cita
  #4  
Viejo 31/03/08, 20:16:51
Avatar de DavidXD_XD
DavidXD_XD DavidXD_XD is offline
Moderator
 
Fecha de Ingreso: ago 2006
Localización: Lima - Perú
Mensajes: 1,251
Parecer ser que esa funcion que coloco Mauricio es ... , todavia toy en la version 4.6 ... un saludo
__________________
David Carballido Córdova
Responder Con Cita
  #5  
Viejo 31/03/08, 20:32:17
jossnet jossnet is offline
Member
 
Fecha de Ingreso: oct 2007
Mensajes: 61
gracias por la ayuda,probe ambos pero la funcion ISHMED_CALC_DATE_TIME_DIFF me considera los minutos y segundos,y eso es lo que necesito,solo tengo que multiplicar por 24 al campo
E_DIFF_DAY para obtener la cantidad total de horas.

thanks
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 10:30:34.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web