✒️ABAP / Las Ampliaciones: los User Exits y los Customer Exits Por Candela Calzada

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: Las ampliaciones y las notas de SAP
Lección 1: Los User Exits y los Customer Exits

Ampliación:

Son herramientas para hacer mejoras, modificaciones o agregados a un programa estándar del sistema.

Algunos programas estándares están preparados para hacerles pequeños cambios, como validar campos en alguna dynpro, agregar campos, agregar nuevas opciones al menú, etc.
Las ampliaciones se generan y codifican en módulos aparte del cód. estándar, con lo cual no se necesita modificarlo, manteniendo la funcionalidad original y el buen funcionamiento.

Ventajas:

  • Permite modificar ciertos programas para adaptarlos a ciertas necesidades de la empresa.
  • Permite hacer mejoras a un programa sin modificar el cód. original, manteniendo el buen funcionamiento y caract.
  • Los cambios toman efecto con sólo transportar los nuevos objetos.

Desventajas:

  • No siempre se pueden hacer satisfactoriamente las modificaciones, ya que la mayoría de las ampliaciones están preparadas para un cierta 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.

Tipos de ampliaciones:

User Exits, Customer Exits o Exits de Cliente, KeyWord Exits, Field Exits o Exits de Campo, Estructuras Append, Badis, Enhancements y Menú Exits.

Veremos cada una.

User Exits:

  • Subrutina definida dentro de un programa estándar que no tiene cód. Está allí para que el usuario ponga su propio cód. fuente que le permita hacer tareas específicas que no están previstas por SAP.
  • Son las primeras ampliaciones hechas por SAP.
  • Son propias del módulo de SAP SD y no existe en otros módulos.
  • Están implementados en forma de subrutinas.
  • Todos los User Exit están nombrados por SAP como USEREXIT_XXXXXXXX:
  • El problema es encontrar el User Exit correcto y una vez encontrado, hay que ver que nos sirva.
  • El cód. que se insertará dentro, puede colocarse dentro de un INCLUDE que comience con Z o sino, suelto.
  • Además no es posible crear nuevos User Exit, hay que usar los existentes.

Costumer Exits / Exits de Cliente:

  • Punto dentro de un programa en donde se puede llamar a un programa propio.
  • Se ejecuta desde un programa estándar haciendo la invocación a un MF. Algunos programas estándares, dentro de su cód. tienen llamadas a MF que pueden ser modificados por el programador.
  • Los Customer Exit son llamados dentro de los programas estándares por medio de un nro.
    Este nro. es la terminación del nombre del MF que está asociado al programa.
  • En la tabla MODSAP se encuentran todos los MF que se usan en los Exits de cliente.
    **Tabla MODSAP: TBD que almacena todas las ampliaciones existentes. De cada ampliación se guarda el nombre de la aplicación, el tipo de componente y el nombre del objeto (programa, MF, etc) que se modifica.
  • Los MF tienen la nomenclatura:
    Ej: EXIT_SAPMV45A_003.
  • La llamada a un exit de un MF es implementada de la sig. forma en un programa estandar:


    Cada módulo es llamado por el proceso estándar en ciertos momentos y ellos tienen por defecto algunos param. que solo están disponibles dentro de la ampliación.
  • Ventajas:
    Es buena herramienta para agregar funcionalidad nueva a un programa estándar sin modificar el cód. original.
    Para transportar y activar, los Customer Exit es suficiente con el Include nuevo, sin tocar el programa original.
  • Desventajas:
    No siempre se ajusta a las necesidades del programa, ya que los objetos que importa o exporta son fijos.
    No existe un búsq. de Customer Exit por programa con una aclaración, para buscarlos hay que hacer la búsq. del string CALL CUSTOMER-FUNCTION dentro del programa de control estándar y su funcionamiento se prueba sin saber si es el correcto.
  • Transacciones para trabajar con Customer Exits:
    SMOD: para administrar ampliaciones.
    CMOD: para la gestión de proyectos de ampliación.

PASOS PARA HACER UN CUSTOMER EXIT:

  1. Ir a la trans. SMOD y completar el nombre de la ampliación que contiene el MF a usar por el Customer Exit.
    Pero si no sabemos el nombre, ir a la trans SE16 > tabla MODSAP > campo MEMBER (escribir el nombre del MF a buscar) y el campo NAME nos dirá la ampliación que contiene.
    Si tampoco sabemos el MF, hay que buscar en el cód. del programa estándar las llamadas a funciones de usuarios, que estarán indicadas por CALL CUSTOMER-FUNCTION '001', en donde el nro. final puede ir cambiando si presenta más de una llamada, es decir, varios customer exit.
  2. Una vez que tenemos el nombre de la ampliación, la escribimos "V45A0003" y presionamos Visualizar.
  3. En la sig. pantalla presionar Componentes y veremos todos los MF que contiene la ampliación.
    En este, nuestra ampliación cuenta con 2 MF, que se ejecutarán en un momento determinado en la ejecución del programa al que pertenecen, en este caso "SAPMV45A":
  4. Sabiendo los MF a usar, hacer doble clic sobre el mismo y se derivará a otra pantalla, en la cual se puede ver qué objetos importa y exporta esta función, como las tablas que importa y que se pueden modificar.
  5. En la solapa Cód.fte. se encuentra un Include Z que se usa para agregar el cód. del usuario (en ultimas versiones, el include empieza con ZX)
  6. Si el include no existe, hacer doble clic en él y asignarle una orden de transporte para generarlo.
  7. Ahora podemos generar cód. usando todos los objetos que figuren en las solapas de Import, Modific. y Tablas, pudiendo devolver resultados modificando los objetos que se encuentran en las solapas Export, Modif. y Tablas.
  8. Una vez terminada la codificación, la ampliación debe activarse e incluirse en un proyecto; estos son creados en la trans CMOD.
  9. Una vez en la trans, ingresar el nombre del proyecto y Crear.
  10. Presionar "Asignación ampliación" para asignar las ampliaciones que incluiremos en el proyecto.
  11. En la prox pantalla introduciremos las ampliaciones y presionamos "Componentes" para ver cada componente de la ampliación.
  12. En la pantalla de componente, activaremos la ampliación. Cada uno de los componentes son Exit de la ampliación, es allí donde se debe incorporar el cód. de validación o proceso a controlar con la ampliación:
  13. Luego de activarlo, el proyecto pasará a estar en verde, en lugar de rojo.
  14. Para anular la activación del proyecto de ampliación, presionar el botón para desactivarlo.

Cómo probar un Customer Exit:

Lo complicado de usar un Customer Exit, es ubicarlo y conocer el momento del proceso en el que ocurren los mismos. Todo esto para determinar que los datos y que particularmente, se puede hacer en ese momento.

Para esto, lo mejor es crear un proyecto de ampliación, asignar la ampliación, activarla y luego colocar un BreakPoint en el MF para determinar los datos con los que disponemos en ese momento y el punto exacto del proceso en donde se encuentra.


 

Escanear / Compartir

 

 


Sobre el autor

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

SAP Expert


Candela Calzada

Profesión: Técnica Electrónica - Argentina - Legajo: JW91W

✒️Autor de: 160 Publicaciones Académicas

🎓Cursando Actualmente: Carrera Consultor ABAP Nivel Avanzado

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Me encuentro estudiando la ingeniería en sistemas de información. poseo amplia experiencia en edición de videos. tengo bases entorno a la programación que quiero continuar consolidando.

Certificación Académica de Candela Calzada

✒️+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!