🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP Los Field Exits

ABAP Los Field Exits

ABAP Los Field Exits

FIELD EXITS.

Llamados ampliaciones de campo, son validaciones de los elementos de datos asociados a campos de pantalla o dynpros de SAP.

Como son mòdulos de funciones, se ejecutan en instancias de memoria propia y al momento de su ejecuciòn, sòlo se dispone del valor del campo, que se importa en el paràmetro INPUT y que puede ser modificado a travès del paràmetro OUTPUT. Para el uso de otros campos de la pantalla, se debe proceder al uso de funciones que permiten capturar dichos valores.

Si se quiere insertar un valor en un campo determinado de una dynpro entonces pondrìamos una validaciòn en ese campo a nivel Field Exit para que solo permita insertar determinados valores.

"Si ingresamos a la transacciòn SE37(Biblioteca de Funciones), colocamos FIELD_EXIT_* " y luego pulsamos F4, visualizamos todos los Field Exit del sistema.

Ventajas:

- Facilita la validaciòn de campos en un programa estàndar sin modificar el còdigo original.

- Puede utilizarse el mismo còdigo para varias transacciones.

- Se puede aplicar globalmente (para todos los programas) o para determinados programas y dynpros que se le asignen.

Desventajas:

- Toma de la dynpro (import) un solo valor, que es el del campo al cual hace referencia, por lo que no se pueden utilizar tablas internas especìficas del problema estàndar en el còdigo del Field Exit.

- El mismo còdigo del Field Exit tiene que servir para todos los programas que se quieran utilizar, por lo que se tiene que especificar en el còdigo que acciòn tomarà de acuerdo al programa en el cual se està ejecutando.

- No es posible hacer un Debug del còdigo del Field Exit de forma directa, a travès de un Breakpoint. Para esto se utilizan mensajes de error para ir viendo que valores van tomando los diferentes objetos (variables, tablas, etc) y por donde va pasando dentro del còdigo del Field Exit.

2.- Pasos para realizar un Field Exit.

Con la transacciòn CMOD (Gestiòn de proyectos de ampliaciones SAP).

Allì ejecutamos el comando PRFB dentro de la CMOD, sin anteponer /N.

En la pantalla siguiente se encuentran todos los Field Exits del sistema. Aquì podemos ver tambièn se estàn activados a nivel global(para todas las transacciònes) o tienen algùn programa y dynpros asignados.

Para crear un Field Exit, seleccionamos el menù "Exit campo" y la opciòn "Crear".

En la siguiente ventana de diàlogo introducimos el nombre del elemento de datos al cual se quiere realizar el Field Exit. Este elemento de datos debe ser el mismo que tiene el campo de la dynpro al cual se quiere relacionar.

Este dato lo obtenemos presionando la tecla F1 sobre el campo de la dynpro y luego presionando el botòn de "informaciòn tècnica".

Ingresamos el elemento de datos y presionamos enter (ZZ_DIREC2).

A continuaciòn el sistema nos propone la creaciòn del mòdulo de funciones en la SE37, por lo que presionaremos el botòn "Crear".

Luego el sistema nos solicita la asignaciòn de un grupo de funciones, es recomendable crear uno exclusivamente para el Field Exit. Tambièn introducimos un "Texto Breve" para el mòdulo de funciones.

Este mòdulo de funciones tiene la particularidad de tener un paràmetro de "Import" y uno de "Export". El paràmetro de entrada es INPUT y contendrà el valor del campo al cual se ha asignado el Field Exit.

El paràmetro de salida OUTPUT es el valor que tomarà el campo al salir del Field Exit.

En la solapa "Còd fte" vamos a ingresar el còdigo correspondiente a la validaciòn que deseamos agregar. Por ejemplo en este caso emitimos un mensaje de error en caso de que el usuario introduzca en el campo de la pantalla el texto "CORRIENTES 123".

IF input EQ 'CORRIENTES 123'.

MESSAGE e000(z_clase_men) WITH 'Direcciòn no permitida'.

ENDIF.

Si en la funciòn no se quiere modificar el campo donde esta colocado el Field Exit entonces al principio de todo se debe escribir OUTPUT=INPUT para devolver el mismo valor que se ingresò.

Dentro del mòdulo de funciòn sòlo se pueden trabajar con estas paràmetros, pero si se quiere obtener valores de otros campos de la dynpro se pueden utilizar otros Field Exits en los cuales se utilizarà el comando SET PARAMETER para poder grabar en memoria al valor del campo y utilizarlo en el Field Exit anterior tomàndolo de memoria con GET PARAMETER.

Otra opciòn es utilizar la funciòn GET_DYN_VALUE para obtener valores de otros campos de la dynpro.

Una vez terminada la codificaciòn se debe asignar un programa y dynpro al Field Exit (si no se quiere hacer Global, es decir para todos los programas).

"Mientras no se haya realizados la asignaciòn de la dynpro, el Field Exit afectarà a todas las pantallas donde se encuentre un campo con el elemento de datos".

Para asignar el programa y dynpro se debe ir a la pantalla de administraciòn de Field Exit(CMOD - PRFB), seleccionar Field Exit y presionar el botòn "Asignar/dynpro".

En la siguiente pantalla donde asignaremos el nombre del programa y el nùmero de dynpro correspondiente.

"Se pueden asignar varios programas y dynpros al mismo Field Exit".

Por ùltimo, activamos el Field Exit desde el menù "Exit campo / Activar".

Y luego veremos el Field Exit activado.

Con la transacciòn SM30, para probar nuestro Field Exit ya que el elemento de datos al cual le creamos el Field Exit pertenece al campo "Direcciòn" de una tabla base de datos Z.

Generaremos una nueva entrada en la tabla, en el campo "Direcciòn" introducimos el valor "CORRIENTES 123" y presionamos la tecla enter.

Y visualizaremos en pantalla el mensaje de error que previamente codificamos en nuestro Field Exit.

A nivel de administraciòn del sistema SAP, existe el paràmetro de instancia ABAP FIELD EXIT, el cuàl controla la activaciòn o desactivaciòn de los Field Exits en el sistema.

Se puede utilizar la funciòn DYN_VALUE_READ, para leer valores de otros campos de la pantalla.

En un Field Exit, no se puede usar las siguientes instrucciones:

BREAK POINT

CALL SCREEN

CALL DIALOG

CALL TRANSACTION

SUBMIT

COMMIT WORK

ROLLBACK WORK

MESSAGE ID

Con la transacciòn RZ10, se configura el paràmetro correspondiente al Field Exit.


 

 

 


Sobre el autor

Publicación académica de Miguel Angel Acosta Acosta, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Expert


Miguel Angel Acosta Acosta

Profesión: Ingeniero de Sistemas - Ecuador - Legajo: TF64C

✒️Autor de: 238 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Profesional de ingeniería de sistemas en computación e informática, con experiencia en la implantación y soporte de proyectos informáticos para empresas del sector industrial y financiero.

Certificación Académica de Miguel Acosta

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Los Field Exits" de la mano de nuestros alumnos.

SAP Expert


FIELD EXITS: Tambien llamados ampliaciones de campo, Son validciones de los elementos de datos asociados a campos de pantallas o dynpros de SAP. Transaccion SE37: (biblioteca de funciones) colocamos FIELD_EXIT_* luego F4 visualizamos todos los Field Exit de sistema. Si no se le asigna una dynpro, el Field Exit afectara a todas las pantallas donde se encuentre un elemento de datos. IDEAS: Se pueden asignar varios programas y dynpros al mismo field Exit.

Acceder a esta publicación

Creado y Compartido por: Ernesto Aristides Romano

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Field exits o exits de campo: son módulos de funciones que son llamados despues de las validaciones en transacciones estándard. FIELD_EXIT_* Transacción CMOD. Ejecutamos el comando PRFB dentro del CMOD, sin anteponer /N. (TRUCO) Nos mostrará la lista de los Fields exits. Menú: Exit campo --> Crear. Nombre del elemento de datos. Igual al elemento de datos de la dynpro. (para ver el elmento de datos pulsar F1 sobre el campo de la dynpro) Creamos el módulo de funciones y su módulo de funciones. Pestaña input(recibe datos), pestaña export(valor que tomará el Field Exit al salir). Pestaña Cód. fte. pondremos la lógica. Para...

Acceder a esta publicación

Creado y Compartido por: Javier Exposito Diaz

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

FIELD EXITS llamados apliaciones de campo, son validaciones de los elementos de datos asociados a campos o dynpros de SAP., son modulos de funciones para activar un field exit se debe hacerlo en el servidor por medio de la transaccion RZ10 Transaccion SE37 biblioteca de funciones COMANDO PRFB cuando ya estemos en la transaccion CMOD y probar el field exit mediante la transaccion SM30

Acceder a esta publicación

Creado y Compartido por: Andres Felipe Escobar Lopez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Field Exits Son validaciones de los elementos de datos asociados a campos de dynpros Son llamados después de validar el campo de una dynpro Desde la Tx SE37, si escribimos FIELD_EXIT_* las veremos todas Desde la Tx CMOD llamamos a la Tx PRFB (sin el /n) y obtendremos todos los Field Exits Sólo tiene acceso al valor de la dynpro al que hace referencia Para obtener el valor de otros campos de la dynpro: SET PARAMETER desde el otro campo GET PARAMETER desde el que queremos recuperar el valor usar función GET_DYNP_VALUE

Acceder a esta publicación

Creado y Compartido por: Xavier Martinez Garsaball

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

A una FIELD EXIT se le llama también EXIT DE CAMPO. Se hace a nivel del elemento de datos. En ella puedes poner tus comprobaciones para un campo en el programa que quieras. Puedes tener varias field exit para un mismo campo en distintas pantallas. Una FIELD EXIT es una función que tiene la particularidad de que sólo tiene un parámetro de entrada INPUT y uno de salida OUTPUT. A priori no puedes conocer ningún dato más, aunque siempre puedes utilizar otras field exits para guardar el contenido de otros campos en variables globales al grupo de función, o utilizar la función DYNP_VALUES_READ para leer valores de otros campos de la misma pantalla. En un Field exit NO podemos usar ninguna...

Acceder a esta publicación

Creado y Compartido por: Juan Carlos Ayala Chira

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Los FIELD EXITS son validaciones de elementos de campo de dynpros. Se ejecutan después de las validaciones estándar. Entre sus ventajas destaca que se puede reutilizar el mismo código para varias transacciones, programas, dynpros, etc. En contra, debido a esa reutilización, es probable que se tenga que parametrizar el código en función del programa en el que se esté ejecutando. Tampoco se pueden utilizar Breakpoints. El parámetro INPUT contendrá el valor del elemento de datos asociado al FIELD EXIT. El parámetro OUTPUT contendrá el valor que toma el campo al salir del FIELD EXIT. Para poder utilizar otros parámetros, desde la dynpro se utilizará el comando...

Acceder a esta publicación

Creado y Compartido por: Francisco Javier López Andreu

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

FIELD EXITS También llamados ampliaciones de campo, son validaciones de los elementos de datos asociados a campos de pantalla o dynpros de SAP. Estos módulos de funciones son llamados y ejecutados posteriormente de las validaciones del sistema estándar. SE37: Transacción estándar SAP que se utiliza para la creación de módulos de funciones. VENTAJAS. *Facilita la validación de campos de un programa estándar sin modificar el campo original . *Puede utilizar el mismo código para varias transaccones. *Se puede aplicar DE FORMA global(PARA TODOS LOS PROGRAMAS) o para determinados programas y dynpros que siguen. DESVENTAJAS. *No se puede utilizar en tablas internas. *Se debe especificar...

Acceder a esta publicación

Creado y Compartido por: Juan Santamaria Borja

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Lección 4: Field Exits. 1.- Field Exits. Son módulos de funciones que son llamados y ejecutados posteriormente de las validaciones del sistema estándar. Un ejemplo en donde utilizaríamos un Field Exit es si se quiere insertar un valor en un campo determinado de una dynpro entonces pondríamos una validación en ese campo a nivel Field Exit para que solo permita insertar determinados valores. Con la transacción SE37, podemos ver todos los Field Exit del sistema, para ello colocamos FIELD_EXIT_* y F4. Ventajas: Facilita la validación de campos en un programa estándar sin modificar el código original. Puede utilizar el mismo código para varias transacciones....

Acceder a esta publicación

Creado y Compartido por: Calixto Gutiérrez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

* Field Exits: (Ampliaciones de campo) Validaciones de los elementos de datos asociados a campos de pantallas o dynpros de SAP. Para crear un Field Exit ejecutamos la Tx CMOD y luego RPFB (sin /N) Notas: - No es posible hacer debug del código directamente con Break point, se deben utilizar mensajes de error para ir viendo que valores van tomando los diferentes objetos (Variables, Tablas,etc.). - Para obtener otros valores que no son el perteneciente al campo que se quiere modificar, es posible utilizar: SET PARAMETER, GET PARAMETER o la Fm GET_DYNP_VALUE. - Si no se asigan una pantalla (dynpro), el cambio afectará a todas las dynpro donde se utilice el ELEMENTO DE DATOS.

Acceder a esta publicación

Creado y Compartido por: Helen Silva Ruiz

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Lección: Field Exits [ 4º de 9 ] FIELD EXIT: Ampliaciones de campo, validaciones de los elementos de datos asociados a campos de pantallas o fynpros de SAP. Son llamados y ejecutados posteriormente de las validaciones del sistema estándar. Los mismos, por ser módulos de funciones se ejecutan en instancias de memoria propias y al momento de su ejecución, solo se dispone del valor del campo. Transacción de administración: CMOD >PRFB Ventajas: Facilita las validaciones de campos en un programa estándar. Puede utilizarse el mismo código para varias transacciones. Se puede aplicar globalmente o para deternados programas y dynpros que se le asignen. Desventajas: Solo toma un valor....

Acceder a esta publicación

Creado y Compartido por: Jose Angel Valles Bustos

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!