✒️ABAP Las Ampliaciones: los User Exits y los Customer Exits
ABAP Las Ampliaciones: los User Exits y los Customer Exits
AMPLIACIONES: USER EXITS Y CUSTOMER EXITS.
AMPLIACIONES:
Son diferentes herramientas que presenta SAP para realizar mejoras, modificaiones o agregados a un programa estandar del sistema.
En algunos casos se puede validar campos de alguna dynpro en particular, agregar campos a una pantalla con codigo que permita tratar esos datos nuevos; agregar una ueva opcion dentro de un menu o agregar campos a tablas standares. Las ampliaciones se generan y cidifican en modulos aparte del codigo estandar, con lo cual no se necesita modificarlo, manteniendo la funcionalidad oroginal y el buen funcionamiento.
Las ventajas que se presentan son:
- Permite modificar ciertos programas para adaptarlos a necesidades particulares de la empresa, agregando nuevas caracteriscas a las existentes.
- Permiten realizar mejoras a un programa sin modificar el codigo original del mismo, manteniendo el buen funcionamiento y las caracteristicas que tenia.
- Los cambios toman efecto con solo transportar los nuevos objetos.
Las desventajas son:
- No siempre se pueden hacer todas las modificaciones de manera satisfactoria, ya que la mayoria delas ampliaciones estan preparadas para una determinada tarea y momento dentro de la ejecucion de un programa.
- No todos los programas estandares estan preparados para agregar todos los tipos de ampliaciones.
En SAP existen varios tipos de ampliaciones, que son usados de acuerdo al tipo de mejora o requerimiento que se quiera desarrollar.
2. USER EXITS.
Es una subrutina definida dentro de una programa estandar ABAP que esta hueca (sin codigo), esta alli para que el usuario ponga su propio codigo fuente que le permita realizar tareas esoecificas que no estan previstas por SAP. Son las primeras ampliaciones de SAP y son propias del modulo SAP SD, no existen en otros modulos. Estan implementados en la forma de subrutina.
El principal problema que presentan esta en encontrar el User Exits correcto, una vez que lo econtramos deberemos verificar que el mismo sirva para nuestro proposito.
3. CUSTOMER EXITS.
Tambien llamado EXIT DE CLIENTE es un punto dentro de un programa en donde se puede llamar a un programa propio.
Se ejecutan desde un programa estandar haciendo un invocaion a un modulo de funcion. Algunos programas estnadares tienen dentro de su codigo, llamdas a modulos de funciones que pueden ser modificados por el programador. Son llamados dentro de los programas estandares a traves de un numero, este es la terminacion del nombre del modulo de funcion que esta asociado al programa. En la tabla MODSAP se encuentran todos los modulos de funcion que se usan en los Exits del cliente.
(TABLA MODSAP:
ALAMCENA TODAS LA AMPLIACIONES EXISTENTES EN EL SISTEMA SAP. DE CADA AMPLIACION SE GUARDA: EL NOMBRE DE LA AMPLIACION, EL TIPO DE COMPONENTE QUE PUEDE SE "E" PARA EXIT DE FUNCIONES, "S" PARA IMAGENES, "T" PARA TABLAS Y "C" PARA CODIGO GUI Y POR FINAL EL NOMBRE DEL OBJETO SAP QUE SE MODIFICA)
LAS VENTAJAS DEL CUSTOMER EXIT:
- Es una buena herramienta para agregar funcionalidad nueva a un programa estandar como puede ser una validacion o la ejecucion de rutinas de control sin modificar el codigo original.
.- Para transportar y activar los CE es suficiente con el inlcude nuevo unicamente, sin tocar el programa original.
LAS DESVENTAJAS SON:
- no siempre se ajusta el CE a las necesidades del programador ya que los objetos que importa o exporta son fijos y pueden no tener todos los objetos que se requieren.
- No existe una busqueda CE por programa con una aclaracion amplia de su uso, para buscarlos hay que realizar una busqueda del string CALL CUSTOMER-FUNCTION dentro del progrma de control estandar y su funcionamiento se prueba sin saber exactamente si es el correctoo para loq eu se quiere hacer.
Las principales transacciones que se usan con CE son:
SMOD: para administrar las amppliaciones.
CMOD: para la gestion de proyectos de ampliaciones.
(USAREMOS ESTAS 2 TRANSACCIONES ESTANDAR PAR TRABAJAR CON LOS EXITS DE CLIENTE)
4.PASOS PARA REALIZAR UN CUSTOMER EXIT.
Para implementar un CE:
Primero vamos a dirigirnos a la transaccion SMOD, que es la que maneja las ampliaciones en SAP, en esta trasaccion se debe completar el nombre de la ampliacion que contiene el modulo de funcion a usar por el CE. Sino se conoce el nombre, hay que ir a la transaccion SE16, con la tabla MODSAP, en el campo MEMBER completar con el nombre del modulo de funcion a buscar y el campo NAME nos dira la ampliacion que la contiene. Si tampoco se conoce el modulo de funcion, debe buscarse en el codigo del programa estandar las llamadas a funciones de usuario, que estaran indicadas por CALL CUSTOMER-FUNCTION "001", donde el numero del final puede ir cambiando si presernta mas de una llamada, es decir varios CE o exits de clientes.
 
 
 
Sobre el autor
Publicación académica de Bruno Edgardo Gallinoto, en su ámbito de estudios para la Carrera Consultor ABAP.
Bruno Edgardo Gallinoto
Profesión: Asesor de Ventas - Argentina - Legajo: GM88R
✒️Autor de: 67 Publicaciones Académicas
🎓Cursando Actualmente: Consultor Funcional Módulo SD Nivel Inicial
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Con mucha motivación y ganas de poder aprender. mi objetivo principal es brindar todo mi potencial para que obtengan los mejores resultados en el lugar donde me encuentre.
Certificación Académica de Bruno Gallinoto