DYNP_VALUES_READ
Lee el valor que hay en pantalla en un campo de dynpro, antes de que llegue al programa.
- Transacción
SE37- Grupo
- Field exit
- Actualizado
- 21 de octubre de 2026
Para qué sirve
En una ayuda F4 propia (POV) o en una exit de campo, los valores de los demás campos de la pantalla todavía no han pasado al programa. DYNP_VALUES_READ los lee directamente de la pantalla.
Se le pasa el programa y el número de dynpro y una tabla con los nombres de los campos que se quieren leer; devuelve sus valores en la misma tabla.
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ámetro | Tipo | Descripción |
|---|---|---|
DYNAMEObligatorio | — | Programa de la pantalla. |
DYNUMBObligatorio | — | Número de dynpro. |
TRANSLATE_TO_UPPER | — | 'X' convierte los valores a mayúsculas. |
Tables
Tablas internas que se pasan o se devuelven (TABLES).
| Parámetro | Tipo | Descripción |
|---|---|---|
DYNPFIELDSObligatorio | DYNPREAD | Campos que se leen: FIELDNAME y, a la vuelta, FIELDVALUE. |
Excepciones
Errores que devuelve en sy-subrc, en el bloque EXCEPTIONS.
| Excepción | Cuándo se produce |
|---|---|
INVALID_ABAPWORKAREA | Área de trabajo no válida. |
INVALID_DYNPROFIELD | El campo no está en la pantalla. |
INVALID_DYNPRONAME | Programa no válido. |
INVALID_DYNPRONUMMER | Número de dynpro no válido. |
INVALID_REQUEST | Petición no válida. |
NO_FIELDDESCRIPTION | Sin descripción del campo. |
Ejemplo
PARAMETERS: p_bukrs TYPE bukrs,
p_gjahr TYPE gjahr.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_gjahr.
" p_bukrs aún no tiene el valor de pantalla: hay que leerlo
DATA lt_campos TYPE STANDARD TABLE OF dynpread.
lt_campos = VALUE #( ( fieldname = 'P_BUKRS' ) ).
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = sy-repid
dynumb = sy-dynnr
TABLES
dynpfields = lt_campos
EXCEPTIONS
OTHERS = 1.
IF sy-subrc = 0.
DATA(lv_bukrs) = lt_campos[ 1 ]-fieldvalue.
ENDIF.Errores y excepciones habituales
- INVALID_DYNPROFIELD: el nombre del campo va en mayúsculas y tal como está en la pantalla (por ejemplo 'P_BUKRS' o 'VBAK-VKORG').
- Valor sin convertir: llega como texto de pantalla, sin rutinas de conversión ni formato interno.
Relacionadas
Funciones relacionadas
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