Ir al contenido
Programación ABAP

ENQUE_SLEEP

Detiene el programa durante los segundos indicados.

Módulo de funciónVarios
Transacción
SE37
Grupo
Varios
Actualizado
21 de octubre de 2026

Alternativa moderna. Usa WAIT UP TO 5 SECONDS.

Para qué sirve

ENQUE_SLEEP hace esperar al programa el número de segundos que se le pasa. Se usaba, por ejemplo, para reintentar un bloqueo pasados unos segundos.

Hoy se hace con la sentencia WAIT UP TO n SECONDS, que además libera el proceso de trabajo mientras espera.

Parámetros

Importing

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

ParámetroTipoDescripción
SECONDSObligatorio—Segundos de espera.

Excepciones

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

ExcepciónCuándo se produce
SYSTEM_FAILUREError del sistema.

Ejemplo

ABAP
CALL FUNCTION 'ENQUE_SLEEP'
  EXPORTING
    seconds        = 5
  EXCEPTIONS
    system_failure = 1
    OTHERS         = 2.

Hoy lo harías así: WAIT UP TO

Ahora
" Reintentar un bloqueo hasta 3 veces, esperando 5 segundos
DO 3 TIMES.
  CALL FUNCTION 'ENQUEUE_EMMARAE'
    EXPORTING
      matnr          = lv_matnr
    EXCEPTIONS
      foreign_lock   = 1
      OTHERS         = 2.
  IF sy-subrc = 0.
    EXIT.
  ENDIF.
  WAIT UP TO 5 SECONDS.
ENDDO.

Errores y excepciones habituales

  • WAIT hace COMMIT: WAIT UP TO provoca un commit de base de datos implícito; tenlo en cuenta en mitad de una actualización.

Relacionadas

Funciones relacionadas

ENQUEUE_READ

Más en Varios

CONVERSION_EXIT_ALPHA_OUTPUTCONVERSION_EXIT_ALPHA_INPUTCLAF_CLASSIFICATION_OF_OBJECTSCLOI_PUT_SIGN_IN_FRONTF4_DXFILENAME_TOPRECURSIONMM_ADDRESS_GETQF05_RANDOM_INTEGERROUNDSAPGUI_PROGRESS_INDICATORSPELL_AMOUNTSXPG_COMMAND_EXECUTETH_DELETE_USER

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