Ir al contenido
Programación ABAP

HR_SGPBS_YRS_MTHS_DAYS

Calcula los años, meses y días que hay entre dos fechas. Función de SAP HR.

Módulo de funciónFechas
Transacción
SE37
Grupo
Fechas
Actualizado
21 de octubre de 2026

Para qué sirve

HR_SGPBS_YRS_MTHS_DAYS recibe dos fechas y devuelve la diferencia descompuesta en años, meses y días, además de los totales en cada unidad. Es útil para antigüedades del tipo «3 años, 2 meses y 10 días».

Pertenece a Recursos Humanos. Si solo necesitas años completos, COMPUTE_YEARS_BETWEEN_DATES es más sencilla; para días, basta con restar las fechas.

Parámetros

Esta función tiene muchos parámetros; aquí están los más usados. La lista completa se ve en la transacción SE37.

Importing

Lo que recibe la función. En CALL FUNCTION se pasan tras EXPORTING.

ParámetroTipoDescripción
BEG_DAObligatorioDFecha inicial.
END_DAObligatorioDFecha final.

Excepciones

Errores que devuelve en sy-subrc, en el bloque EXCEPTIONS.

ExcepciónCuándo se produce
DATEINT_ERRORIntervalo de fechas no válido.

Ejemplo

ABAP
" Años completos y días: alternativas sencillas
DATA lv_anios TYPE i.
CALL FUNCTION 'COMPUTE_YEARS_BETWEEN_DATES'
  EXPORTING
    first_date          = '20200315'
    second_date         = sy-datum
  IMPORTING
    years_between_dates = lv_anios
  EXCEPTIONS
    OTHERS              = 1.

DATA(lv_dias) = sy-datum - CONV d( '20200315' ).

Errores y excepciones habituales

  • DATEINT_ERROR: la fecha final es anterior a la inicial.

Relacionadas

Funciones relacionadas

COMPUTE_YEARS_BETWEEN_DATESDAYS_BETWEEN_TWO_DATES

Más en Fechas

CONVERSION_EXIT_LDATE_OUTPUTADD_TIME_TO_DATERP_CALC_DATE_IN_INTERVALEND_TIME_DETERMINEC14B_ADD_TIMECALCULATE_DATECONVERSION_EXIT_PDATE_INPUTCONVERSION_EXIT_PDATE_OUTPUTCONVERSION_EXIT_SDATE_OUTPUTCONVERT_DATE_TO_EXTERNALCONVERT_DATE_TO_INTERNALDATE_COMPUTE_DAY

Transacciones y tablas

SE37

¿Dudas con esta función?

Pregunta en el foro de abap.es: la comunidad lleva años resolviendo dudas de ABAP en español.

Preguntar en el foro

Actualizado: 21 de octubre de 2026