![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️ABAP Las Ampliaciones: los User Exits y los Customer Exits
ABAP Las Ampliaciones: los User Exits y los Customer Exits
![ABAP Las Ampliaciones: los User Exits y los Customer Exits ABAP Las Ampliaciones: los User Exits y los Customer Exits](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/491.jpg)
Ampliaciones: son diferentes herramientas que presenta SAP para realizar mejoras, modificaciones o agregados a un programa estándar del sistema
Ventajas:
- Permiten modificar ciertos programas para adaptarlos a necesidades particulares de la empresa, agregando nuevas características a las existentes.
- Permiten realizar mejoras a un programa sin modificar el código original del mismo.
- Los cambios toman efecto con sólo transportar los nuevos objetos.
Desventajas:
- No siempre se pueden hacer todas las modificaciones de manera satisfactoria, ya que la mayoría de las ampliaciones están preparadas para una determinada tarea y momento dentro de la ejecución de un programa.
- No todos los programas estándares están preparados para agregar todos los tipos de ampliaciones.
User Exit: es una subrutina definida dentro de un programa estándar ABAP que está hueca, es decir sin código, esta allí para que el usuario ponga su propio código fuente que le permita realizar tareas especificas que no están previstas en SAP.
Son propias del módulo de SAP SD, no existe en otros módulos de SAP.
Esta implementado en la forma de subrutinas.
El código ABAP que se insertará dentro del User EXIT puede colocarse dentro de un INCLUDE que comenzará con Z o sino suelto.
Ciertas aplicaciones del módulo SD todavía utilizan este tipo de ampliaciones pero esta práctica no se esta utilizando para nuevas extensiones al código SAP.
En su lugar se utilizan el resto de los tipos de ampliaciones disponibles, aunque vale tener en cuenta que los User Exit serán mantenidos por SAP en las nuevas versiones del sistema.
Customer Exits: también 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 estándar haciendo una invocación a un módulo de función.
Algunos programas estándares tienen dentro de su código, llamadas a módulos de funciones que pueden ser modificados por el programador.
Los customer exit son llamados dentro de los programas estándares a través de un número.
Este número es la terminación del nombre del módulo de función que está asociado al programa.
En la tabla MODSAP se encuentran todos los módulos de función que se utilizan en los exits de cliente.
Ventajas:
- Es una buena herramienta para agregar funcionalidad nueva a un programa estándar como puede ser una validación o la ejecución de rutinas de control sin modificar el código original.
- Para transportar y activar los customer exit es suficiente con el include nuevo únicamente, sin tocar el programa original.
Desventajas:
- No siempre se ajusta al customer exit 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 búsqueda de customer exit por programa con una aclaración amplia de su utilización, para buscarlos hay que realizar una búsqueda del string CALL CUSTOMER-FUNCTION dentro del programa de control estándar y su funcionamiento se prueba sin saber exactamente si es el correcto para lo que se quiere hacer.
Para trabajar con customer exits vamos a utilizar dos transacciones que son:
- SMOD para administrar las ampliaciones.
- CMOD para la gestión de proyectos de ampliaciones.
Como probar un customer exit: un punto complicado en la utilización de customer exits es ubicarlos y conocer el momento del proceso en el que ocurren los mismos. todo esto para determinar que datos y que particularmente, se puede realizar en ese momento.
Para realizar esta investigación, lo mas efectivo será crear un proyecto de ampliación, asignar la ampliación, activarla y luego colocar un Breakpoint en el módulo de funciones, para determinar los datos con los que disponemos en ese momento y el punto exacto del proceso en donde se encuentra.
 
 
 
Sobre el autor
Publicación académica de Jorge Luis Leal Marquez, en su ámbito de estudios para la Carrera Consultor ABAP.
Jorge Luis Leal Marquez
Profesión: Analista de Sistemas - Venezuela - Legajo: CD46R
✒️Autor de: 113 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP BI / BW BO Nivel Inicial
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: PartTime
Presentación:
Profesional del área de tecnológica, enfocado a garantizar la continuidad de las operaciones. consultor abap.
Certificación Académica de Jorge Leal