✒️ABAP / Las Ampliaciones: los User Exits y los Customer Exits Por Hernan Cabezas

Selector Alummnos / Empresas

CVOSOFT UNITED STATES OF AMERICA | 17 años de ingeniería dedicados a formación profesional de Consultores SAP | +info

ABAP Las Ampliaciones: los User Exits y los Customer Exits

ABAP Las Ampliaciones: los User Exits y los Customer Exits

Unidad 3: Ampliaciones y notas en SAP

Lección 1: User Exits y Customer Exits

1| Que es una Ampliación?

- Son herramientas que presenta Sap para realizar mejoras, modificaciones o agregados a un programa estándar. Algunos programas ya están preparados para agregarles funcionalidad nueva a la existente. Un User Exits, también llamado Customer Exit o Ampliación es un punto dentro de un programa en donde se puede llamar a un programa propio.

Se pueden validar o agregar campos a una pantalla, con código para tratar los nuevos datos, agregar opción en un menú o campos a tablas estándares. Las ampliaciones se generan y codifican en módulos aparte fuera del código estándar.

Ventajas:

- Permiten modificar algunos programas para adaptarlos a necesidades de la empresa, agregando característica nuevas.

- Las mejoras se realizan sin necesidad de modificar el código original, manteniendo su funcionalidad.

- Los nuevos objetos toman efecto con solo transportar los cambios.

Desventajas:

- No siempre se pueden hacer todas las modificaciones de manera satisfactoria, ya que la mayoría están preparadas para una determinada tarea y momento dentro de la ejecución de un programa.

- No todos los programas están preparados para agregar todos los tipos de ampliaciones.

Existen varios tipo de ampliaciones:

User Exits

Customer exits o exits del Cliente

KeyWord Exits

Filed Exits o Exits de Campo

Estructuras Append

Badis

Enhancements

Menú Exits

2| User Exits?

- Son espacios que SAP deja en el sistema estándar para que los usuarios agreguen código para sus validaciones y mejoras, a fin de satisfacer los requerimientos. Siendo las primeras ampliaciones que introdujo Sap y son propias del modulo SD; están implementados en forma de subrutinas. No es posible generar mas huecos sino trabajar en los ya existentes.

Se ejecutan desde un programa estándar invocando a un módulo de función.

El código Abap que se insertara dentro de un User Exits puede colocarse dentro de un INCLUDE que comenzara con Z o sino suelto.

USEREXIT_XXXXXXXX

FORM USEREXIT_XXXXXXXX.

...

...

ENDFORM

El programa estándar MV45AFZZ se encuentran los User Exits que es utilizado por ejemplo por la tx VA02 cada vez que lee un documento de pedidos de venta.

3| Customer Exits

- También llamado Exit del cliente es un punto dentro de un programa donde se puede llamar a un programa propio. Se ejecutan desde un programa estándar invocando a un módulo de función. Algunos programas de estándar tienen en su código, llamadas a módulos de funciones que pueden ser modificados por el programador. Estos son llamados dentro de los programas estándar a través de un numero; siendo el número la terminación del nombre en el módulo de función que esta asociado al programa.

En la tabla MODSAP se encuentran todos los módulos de función que utilizan los Exits de Cliente. De cada ampliación se guarda: el nombre de la ampliación, el tipo de componente, que puede ser: “E” para Exits de funciones, “S” para imágenes, “T” para tablas y “C” para código GUI y finalmente el objeto (programa, módulo de función,etc) que se modifica.

Los módulos de función de EC tienen una nomenclatura estándar:

EXIT_<nombre del programa>_<número de función> =======> EXIT_SAPMV45A_003

La llamada a un exit de un módulo de función es implementada de la siguiente forma en un programa estándar de Sap.

CALL CUSTOMER-FUNCTION<3 dígitos>

Cada uno de los módulos es llamado por el proceso estándar en ciertos momentos y ellos tienen por defecto algunos parámetros que son los disponibles dentro de la ampliación.

Ventajas del Customer Exit:

- Es una buena herramienta para agregar funcionalidad nueva a un programa estándar sin modificar el código original.

- Para transportar y activar los Customer Exit es suficiente con el nuevo INCLUDE sin tocar el programa original,.

Desventajas del Customer Exit:

- No siempre se ajusta a las necesidades del programador ya que los objetos que importa o exporta son fijos y puede no tener todos los objetos que se requieran.

- No existe una búsqueda por programa con un detalle amplio de su utilización, para ello hay que realizar una búsqueda del string CALL CUSTOMER-FUNCTION dentro del programa de control estándar y probar si alguno se adecua a lo que queremos hacer.

Se utilizan dos transacciones:

SMOD: Para administrar las ampliaciones

CMOD: Para la gestión de proyectos de ampliaciones

4| Pasos para realizar un Customer Exit

Nos dirigimos a la tx SMOD, aquí completamos en nombre de la ampliación que contiene el módulo de función a utilizar. Si no se conoce el nombre buscamos en la tabla MODSAP, en el campo MEMBER completamos con el nombre del módulo de función (ej. EXIT_SAPMV45A_003) y el campo NAME nos dirá la ampliación que la contiene.

Si tampoco se conoce el MF, debe buscarse en el código del programa estándar las llamadas a funciones de usuario, que estarán indicadas por CALL CUSTOMER-FUNCTION '001', el numero ira cambiando si presenta mas de una llamada osea hay mas exits de cliente.

Una vez conocido el nombre de la ampliación le damos a visualizar en la tx SMOD, clickeando el botón componentes (también se pudo haber seleccionado en la pantalla anterior) nos mostrara todos los módulos de función para esta ampliación. En la ampliación V45A0003, existen dos MF; los que serán ejecutados en algún momento en la ejecución del programa al cual pertenecen SAPMV45A.

Para ver darle doble click al MF y se verán los objetos que importa y exporta esta función, como así también las tablas que importa y la lógica que se utiliza para agregar en código del usuario en un INCLUDE Z. En las ultimas versiones se aprecia un INCLUDE que empieza con ZX, si no se utilizo debemos crearlo al hacer doble click se pedirá al usuario que le asigne una orden de transporte para generarlo.

Un vez terminada la ampliación debe activarse e incluirse en un proyecto, los cuales se crean en la tx CMOD. Allí se debe generar un proyecto Z para agrupar, clasificar y clasificar los Customer Exit, en el cual se incluirán las ampliaciones que se desee; su activación o desactivación afecta a todas las ampliaciones asociadas. Para acceder a los proyectos de ampliación accedemos a la tx CMOD y le damos a crear.

Presionamos el botón Asignación ampliación, para asignar las ampliaciones al proyecto. Y luego introducimos las ampliaciones y presionamos el botón de Componentes, para visualizar los componentes de cada ampliación.

En la siguiente pantalla vamos a a activar la ampliación, cada unos de los componentes son los Exit de la ampliación y es allí donde se incorpora el código de validación.

Una vez activado el proyecto de ampliación pasa a color verde. Se puede anular la activación presionando el botón de desactivar

5| ¿Como probar un Customer Exit?

- Un punto complicado en la utilización de Customer Exit es ubicarlos y conocer el momento del proceso en el que ocurren los mismos. Para realizar esta investigación, lo mas efectivo sera crear un proyecto de ampliación, asignarla, activarla y colocar un BREAK POINT en el MF, a fin de determinar los datos que disponemos en ese momento y el punto en donde se encuentra.


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Hernan Cabezas, en su ámbito de estudios para la Carrera Consultor ABAP Nivel Avanzado.

SAP Master

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Las Ampliaciones: los User Exits y los Customer Exits" de la mano de nuestros alumnos.

SAP Expert


1. Concepto General de Ampliaciones Las ampliaciones son herramientas que ofrece SAP para realizar mejoras, modificaciones o agregados a programas estándar sin alterar el código fuente original. • Funcionamiento: Se codifican en módulos aparte, permitiendo que la funcionalidad original permanezca intacta y facilitando las actualizaciones del sistema. • Ventajas: Permiten adaptar el sistema a necesidades específicas de la empresa y sus cambios toman efecto simplemente transportando los nuevos objetos. • Desventajas: Están limitadas a momentos y tareas específicas de la ejecución del programa predefinidas por SAP. 2. User Exits Fueron las primeras herramientas de ampliación...

Acceder a esta publicación

Creado y Compartido por: Gabriel José Luces González

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

SAP Master


Las Ampliaciones los User Exits y los Customer Exits. Definición y propósito de las ampliaciones Las ampliaciones permiten realizar mejoras en aplicaciones relacionadas con programas estándar de sistemas, agregando funcionalidades sin modificar el código original. Ejemplos de mejoras: agregar campos a módulos y plantillas, nuevas opciones en menús, o modificar tablas de bases de datos. Se desarrollan aparte del código estándar para mantener la funcionalidad y el rendimiento original. Ventajas: adaptación a necesidades de la empresa y facilidad para transportar los nuevos objetos. Desventajas: limitación...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio Romero

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

SAP Master

Introducción: Las ampliaciones son herramientas clave en SAP que permiten adaptar y mejorar los programas estándar sin modificar su código original, garantizando su estabilidad y funcionamiento. Teoría Esencial: ¿Qué son las Ampliaciones? Definición: Son herramientas que permiten realizar mejoras, modificaciones o agregados a un programa estándar de SAP. Objetivo Principal: Adaptar el sistema a las necesidades específicas de una empresa sin alterar el código base de SAP. Principio Fundamental: El código personalizado se escribe en módulos separados, por lo que la funcionalidad original permanece intacta. Ventajas Clave:...

Acceder a esta publicación

Creado y Compartido por: Oscar Aravena Muller / Disponibilidad Laboral: FullTime

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

SAP Expert



Las Ampliaciones en SAP: User Exits y Customer Exits En SAP, las ampliaciones (Enhancements) permiten adaptar el sistema estándar a necesidades específicas del cliente sin modificar el código original. Su objetivo principal es añadir o modificar funcionalidades preservando la integridad del sistema, evitando conflictos durante actualizaciones o upgrades. Entre los tipos de ampliaciones más conocidos se encuentran los User Exits y los Customer Exits. Concepto de User Exits Los User Exits son puntos predefinidos en los programas estándar de SAP donde los desarrolladores pueden insertar código adicional. Se implementan en forma de subrutinas o módulos de función que SAP deja vacíos...

Acceder a esta publicación

Creado y Compartido por: David Ibarra / Disponibilidad Laboral: FullTime + Carta Presentación

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

lección "Las Ampliaciones: los User Exits y los Customer Exits" Introducción a las Ampliaciones • Descripción General de las Ampliaciones: Las ampliaciones en SAP son herramientas que permiten agregar funcionalidad nueva a programas estándar sin modificar su código original, asegurando su buen funcionamiento. Esto permite insertar validaciones, nuevos campos con su lógica, opciones de menú, o campos en tablas de base de datos estándar en lugares preparados por SAP. · â—¦ Ventajas de las Ampliaciones: Permiten adaptar programas a necesidades específicas de la empresa y realizar mejoras sin modificar el código original, con cambios que se...

Acceder a esta publicación

Creado y Compartido por: Roberto Fluder Ahumada

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

SAP Expert


Los User Exits son huecos que genera SAP en el sistema estandar, estos huecos estan en lugares determinados del sistemas, es importante dejar en claro que no es posible generar nuevos huecos user exits sino que debemos trabajar unicamente con los ya existentes sino encontramos un user exits que se ajuste a nuestro requerimiento entonces deberemos buscar otra alternativa de solucion dentro de las demas soluciones de ampliaciones posibles que ofrece SAP en su sistema. Tal como mencionamos dentro del include ZXVVAU05 vamos a escribir el codigo ABAP que colocaremos dentro del exits en general el codigo que colocaremos dentro de los exits sera destinado a realizar validaciones de los campos de entrada en caso de cumplirse una condicion determinada...

Acceder a esta publicación

Creado y Compartido por: Jose Medina / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Senior

Aplicaciones: son diferentes herramientas que presenta SAP para realizar mejoras, modificaciones o agregados a un programa estándar del sistema. Las Aplicaciones se generan y codifican en módulos aparte del código estándar, con lo cual no se necesita modificar el estándar, manteniendo la funcionalidad original y el buen funcionamiento. Las principales Ventajas que presentan las Aplicaciones son: Permiten modificar ciertos programas para adaptarlos a necesidades particulares de la empresa, agregando nuevas características a las existentes. Permite realizar mejoras a un programa si modificar el código original del mismo, manteniendo el buen funcionamiento y las características...

Acceder a esta publicación

Creado y Compartido por: Javier Miguel Angel Barcelo / Disponibilidad Laboral: PartTime

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

SAP Senior

QUE ES UNA AMPLIACIÓN? Son diferentes herramientas que se presenta en SAP para realizar mejoras, modificaciones o agregados a un programa estándar del sistema. Algunos programas estándares están preparados para agregarles funcionalidad nueva a la existente. Las ampliaciones se generan y codifican en módulos aparte del código estándar, con lo cual no se necesita modificar el estándar manteniendo la funcionalidad original y el buen funcionamiento. Las principales ventajas que presentan las ampliaciones son: Permiten modificar ciertos programas para adaptarlos a necesidades particulares de la empresa, agregando nuevas características a las existentes. Permiten realizar mejoras a un...

Acceder a esta publicación

Creado y Compartido por: Luis Enrique Romero Pinto

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

SAP Expert


What is an Enhancement? Enhancements: These are various tools provided by SAP to make improvements, modifications, or additions to a standard system program. Some standard programs are designed to add new functionality to existing ones. In some cases, you can validate fields on a particular dynpro, add fields to a screen with code to handle that new data, add a new option within a menu, or add fields to standard tables. Enhancements are generated and coded in separate modules from the standard code, so there's no need to modify it, thus maintaining the original functionality and proper operation. The main advantages of enhancements are: They allow modifying certain programs to adapt them to the specific needs of the company, adding new...

Acceder a esta publicación

Creado y Compartido por: Jaime Eduardo Gomez Arango / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Expert


Las Ampliaciones: los User Exits y los Customer Exits 1 - Ampliaciones Herramientas para realizar mejoras, modificaciones, agregados a un programa estandar, se generan y codifican aparte del modulo estandar. Ventajas: - permiten modificar los programas a las necesidades de la empresa. - permite modificar sin tocar el programa estandar. - los cambios toman efectos al transportar los objetos. Desventajas: - no todos los programas estandares estan preparados para agregar una ampliacion. - no siempre se pueden hacer las modificaciones de manera satisfactoria, ya que, las ampliaciones estan preparadas para determinada tarea y momento dentro de la ejecucion del programa. Tipos de ampliaciones: - user exits. - customer...

Acceder a esta publicación

Creado y Compartido por: Pablo Adrian Oggero

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.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!