
lección: Los Field Exits
• •En esta lección, aprenderemos qué son y cómo se implementan los Field Exits, que son validaciones de los elementos de datos asociados a campos de pantallas de SAP.
1 | ¿Qué son los Field Exits?
• Descripción: Los Field Exits son módulos de funciones que son llamados y ejecutados posteriormente a las validaciones estándar del sistema, permitiendo añadir lógica personalizada a campos específicos de las dynpros.
o â—¦ Definición: También llamados "Ampliaciones de campo", son validaciones de los elementos de datos asociados a campos de pantallas o dynpros de SAP.
o â—¦ Funcionamiento: Se ejecutan en instancias de memoria propias, recibiendo el valor del campo en el parámetro INPUT y pudiendo modificarlo a través del parámetro OUTPUT; para usar otros campos, se requieren funciones adicionales.
o â—¦ Búsqueda: Se pueden visualizar todos los Field Exits del sistema buscando FIELD_EXIT_* en la transacción SE37.
o â—¦ Ventajas: Facilitan la validación de campos en un programa estándar sin modificar el código original, pueden usar el mismo código para varias transacciones y aplicarse globalmente o a programas y dynpros específicos.
o â—¦ Desventajas: Toman solo el valor del campo de referencia, el código debe servir para todos los programas que lo usen, y el debugging directo con breakpoints no es posible, requiriendo el uso de mensajes de error.
2 | Los pasos para implementar un Field Exit
• Descripción: Este punto detalla el procedimiento para crear, codificar, asignar y activar un Field Exit en SAP.
o â—¦ Acceso inicial: El primer paso es dirigirse a la transacción CMOD y ejecutar el comando PRFB.
o â—¦ Creación: Para crear un Field Exit, se selecciona el menú Exit campo y la opción Crear.
o â—¦ Definir elemento de datos: Se introduce el nombre del elemento de datos del campo de la dynpro al que se quiere asociar el Field Exit, el cual se obtiene presionando F1 sobre el campo y luego el botón de Información técnica.
o â—¦ Creación del módulo de funciones: El sistema propone la creación de un módulo de funciones en la transacción SE37, donde se asigna a un grupo de funciones (se recomienda crear uno exclusivo) y se le da un texto breve.
o â—¦ Parámetros: El módulo de funciones debe tener un parámetro de entrada INPUT (que contendrá el valor del campo) y uno de salida OUTPUT (el valor que tomará el campo al salir del Exit).
o â—¦ Codificación: En la solapa Cód. fte., se introduce el código ABAP para la validación deseada; si no se quiere modificar el campo, se debe escribir OUTPUT = INPUT.
o â—¦ Obtener otros valores: Para obtener valores de otros campos de la dynpro, se pueden usar Field Exits adicionales con SET PARAMETER y GET PARAMETER, o la función GET_DYNP_VALUE.
o â—¦ Asignación (opcional): Una vez terminada la codificación, si no se quiere que sea global, se puede asignar el Field Exit a un programa y dynpro específicos desde la pantalla de administración de Field Exits (CMOD - PRFB) usando el botón Asignar prog./dynpro.
o â—¦ Activación: Finalmente, se activa el Field Exit desde el menú Exit Campo / Activar, y su estado se visualizará como "activo".
o â—¦ Prueba: Para probar el Field Exit, se accede a la transacción relevante y se ingresan datos que activen la validación programada, verificando la emisión del mensaje de error codificado.