CONVERSION_EXIT_ALPHA_INPUT
Rellena con ceros a la izquierda un valor numérico, hasta la longitud de su campo.
- Transacción
SE37- Grupo
- Varios
- Actualizado
- 21 de octubre de 2026
Alternativa moderna. Desde ABAP 7.02 puedes hacerlo sin llamar a la función, con la opción ALPHA = IN de las plantillas de texto (ver el ejemplo moderno).
Para qué sirve
CONVERSION_EXIT_ALPHA_INPUT convierte un valor del formato externo (el que ve el usuario) al formato interno de SAP: si el valor solo contiene dígitos, lo alinea a la derecha y rellena con ceros a la izquierda hasta la longitud del campo de destino. Por ejemplo, 4711 en un campo de 10 posiciones pasa a 0000004711.
Si el valor contiene letras, no lo modifica. Es la «rutina de conversión ALPHA» que tienen asociados muchos dominios, como los de número de cliente (KUNNR), material (MATNR) o documento (VBELN).
Hace falta, por ejemplo, antes de un SELECT con un valor que llega de un fichero o de otro sistema: en la base de datos el valor está guardado con ceros y, sin la conversión, la consulta no encuentra nada. La función inversa, que quita los ceros, es CONVERSION_EXIT_ALPHA_OUTPUT.
Parámetros
Importing
Lo que recibe la función. En CALL FUNCTION se pasan tras EXPORTING.
| Parámetro | Tipo | Descripción |
|---|---|---|
INPUTObligatorio | CLIKE | Valor en formato externo, por ejemplo '4711'. |
Exporting
Lo que devuelve. En CALL FUNCTION se recogen tras IMPORTING.
| Parámetro | Tipo | Descripción |
|---|---|---|
OUTPUT | CLIKE | Valor en formato interno. Su longitud la marca el campo que recibe el resultado. |
Ejemplo
DATA lv_cliente TYPE kunnr. " CHAR 10
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = '4711'
IMPORTING
output = lv_cliente.
" lv_cliente = '0000004711'
SELECT SINGLE name1 FROM kna1
WHERE kunnr = @lv_cliente
INTO @DATA(lv_nombre).Hoy lo harías así: ALPHA = IN
DATA lv_cliente TYPE kunnr.
" Plantilla de texto con ALPHA = IN: mismo resultado sin llamar a la función
lv_cliente = |{ '4711' ALPHA = IN }|.
" lv_cliente = '0000004711'
" Y al revés, para mostrarlo sin ceros
DATA(lv_texto) = |{ lv_cliente ALPHA = OUT }|. " '4711'Errores y excepciones habituales
- El resultado no tiene ceros: el campo que recibe OUTPUT es de tipo STRING o más corto de lo esperado. La longitud del relleno la da el campo de destino: usa un campo con el tipo correcto, como KUNNR o MATNR.
- No convierte valores con letras: es el comportamiento normal. Si el valor tiene letras (por ejemplo 'A100'), lo deja como está.
- Materiales de 40 posiciones en S/4HANA: para MATNR la rutina de conversión es MATN1, no ALPHA. Usa CONVERSION_EXIT_MATN1_INPUT para materiales.
Relacionadas
Funciones relacionadas
CONVERSION_EXIT_ALPHA_OUTPUTCONVERSION_EXIT_CUNIT_INPUTCONVERSION_EXIT_PDATE_INPUT
Más en Varios
CLAF_CLASSIFICATION_OF_OBJECTSCLOI_PUT_SIGN_IN_FRONTENQUE_SLEEPENQUEUE_READF4_DXFILENAME_TOPRECURSIONMM_ADDRESS_GETQF05_RANDOM_INTEGERROUNDSAPGUI_PROGRESS_INDICATORSPELL_AMOUNTSXPG_COMMAND_EXECUTETH_DELETE_USER
Transacciones y tablas
En abap.es
¿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