QF05_RANDOM_INTEGER
Devuelve un número entero aleatorio entre un mínimo y un máximo.
- Transacción
SE37- Grupo
- Varios
- Actualizado
- 21 de octubre de 2026
Alternativa moderna. Usa la clase CL_ABAP_RANDOM_INT.
Para qué sirve
QF05_RANDOM_INTEGER genera un número entero al azar dentro del rango que se le indica. Se usa para pruebas, muestreos o generar datos de ejemplo.
En ABAP moderno se usa la clase CL_ABAP_RANDOM_INT, que permite fijar una semilla y generar muchos números de forma eficiente.
Parámetros
Importing
Lo que recibe la función. En CALL FUNCTION se pasan tras EXPORTING.
| Parámetro | Tipo | Descripción |
|---|---|---|
RAN_INT_MAXObligatorio | — | Valor máximo. |
RAN_INT_MINObligatorio | — | Valor mínimo. |
Exporting
Lo que devuelve. En CALL FUNCTION se recogen tras IMPORTING.
| Parámetro | Tipo | Descripción |
|---|---|---|
RAN_INT | — | Número aleatorio. |
Excepciones
Errores que devuelve en sy-subrc, en el bloque EXCEPTIONS.
| Excepción | Cuándo se produce |
|---|---|
INVALID_INPUT | El mínimo es mayor que el máximo. |
Ejemplo
DATA lv_num TYPE i.
CALL FUNCTION 'QF05_RANDOM_INTEGER'
EXPORTING
ran_int_max = 100
ran_int_min = 1
IMPORTING
ran_int = lv_num
EXCEPTIONS
invalid_input = 1
OTHERS = 2.Hoy lo harías así: CL_ABAP_RANDOM_INT
DATA(lo_azar) = cl_abap_random_int=>create( seed = CONV i( sy-uzeit )
min = 1
max = 100 ).
DATA(lv_num) = lo_azar->get_next( ).Errores y excepciones habituales
- Siempre el mismo número: con la clase, una semilla fija repite la secuencia; usa la hora como semilla.
Relacionadas
Funciones relacionadas
Más en Varios
CONVERSION_EXIT_ALPHA_OUTPUTCONVERSION_EXIT_ALPHA_INPUTCLAF_CLASSIFICATION_OF_OBJECTSCLOI_PUT_SIGN_IN_FRONTENQUE_SLEEPENQUEUE_READF4_DXFILENAME_TOPRECURSIONMM_ADDRESS_GETSAPGUI_PROGRESS_INDICATORSPELL_AMOUNTSXPG_COMMAND_EXECUTETH_DELETE_USER
Transacciones y tablas
¿Dudas con esta función?
Pregunta en el foro de abap.es: la comunidad lleva años resolviendo dudas de ABAP en español.
Actualizado: 21 de octubre de 2026