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

 X 

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

1-Que es una ampliación?

Son diferentes herramientas que presenta SAP para realizar mejoras , modificaciones o agregados a aun programa estándar del sistema.

Algunos programas estándares se le pueden agregar funcionalidad nuevas existentes, se pueden validar campos de alguna dynpro en particular, agregar campos a una pantalla con codigo que permita tratar esos datos nuevos, agregar una opción nueva dentro de un menú, también agregar campos a las tablas estándares.

Las amplificaciones se generan y codifican módulos aparte del codigo estándar, estas no se necesita modificarlas manteniendo la funcionalidad original.

Ventajas:

  • Permite modificar ciertos programas y adaptarlos a nuestra necesidad agregando nuevas características.
  • Permite realizar mejoras sin modificar el código original.
  • Los cambios toman efecto con solo transportar los nuevos objetos.

Desventajas:

  • No siempre se pueden hacer todas las modificaciones ya que algunas aplicaciones 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 todo tipo de ampliaciones

Existen varios tipos de ampliaciones de acuerdo al requerimiento que se quisiera desarrollar

  • User Exits
  • Customer Exito o Exito de cliente
  • KeyWord Exits
  • Field Exito o Exito de Campo
  • Estructuras Append
  • Badis
  • Enhancements
  • Menú Extis

2- User Exist

Subrutina definida dentro de un programa ABAP que esta hueca s(sin código) es para que el usuario ponga su propio código y le permita realizar una tarea especifica que no están previstas por SAP.

Son las primeras ampliaciones dentro de SAP

Son propias del módulo SAP SD ventas y distribución, no existen en otros módulos.

Todos los User exit definidos como USEREXIT_XXXXXXXX.

FORM USEREXIT_XXXXXXX.

...

...

ENDFORM.

Su principal problema es encontrar el User Exit correcto, una vez encontrado debemos verificar que el mismo sirva para nuestro propósito.

Código ABAP que se inserta dentro del User Exit puede colocarse dentro de un INCLUDE que comenzara con Z o sino suelto.

Para modificarlo no se necesita clave de acceso.

En el programa MV45AFZZ se encuentra el User Exit es utilizado por las transacciones VA02 cada vez que lee un documento.

VA02 es una transacción estándar para modificar los pedidos de ventas, en ciertas aplicaciones MÓDULO SD todavía se utilizan este tipo de ampliaciones. En su lugar se utilizan el resto de los tipos de ampliaciones disponibles USER EXIT serán mantenidos por SAP en las versiones del sistema.

TIPS: Estos huecos están ubicados en lugares determinados del sistema, no es posible generar nuevos huecos USEREXIT solo debemos trabajar únicamente con los ya existentes, sino encontramos un USEREXIT que se ajuste a nuestros requerimientos deberemos buscar otra alternativa dentro de las ampliaciones posibles que ofrece SAP.

3-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 un módulo de función algunos programas estándares tienen dentro su código llamado módulos de funciones que puede ser modificados por el programador.

Los Customer Exit no llamados por un numero dentro de los estándares, este número es la terminación del nombre del módulo de función asociado al programa.

En la tabla MODSAP se encuentran todos los módulos de función que se utilizan en el Exito de clientes. (la tabla MODSAP almacena todas la ampliaciones existentes en el sistema SAP. de cada ampliaciones se guarda nombre, tipo de que componente puede ser E para EXIT de función S para imágenes, T para tablas, C para código GUI y finalmente del objeto SAP(programa, módulo de función, etc) que se modifica.

Los módulos de función tienen una nomenclatura estandar

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

Por ej: EXIT_SAPMV45A_003

llamada a un exit de un módulo de función es implementada en un programa estándar de SAP.

CALL CUSTOMER-FUNCION <3 dígitos>

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

Las principales ventajas que presenta.

  • EL Customer Exit 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.

Las principales desventajas:

  • No siempre se ajusta el Customer Exit a la 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 Customer Exit por programa con una aclaración amplia de su utilización, para buscarlos hay que realizar una búsqueda del storing 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 Exit vamos utilizar principalmente dos transacciones que son:

  • SMOD: para administrar las ampliaciones.
  • CMOD: para la gestión de proyectos de ampliaciones.

Las transacciones SMOD y CMOD las utilizamos para trabajar con los exit de cliente.

4- Pasos para realizar un Customer Exit

Primero nos dirigimos a la transacción SMOD, que es la que maneja las ampliaciones en SAP. En esta transacción se debe completar el nombre de la ampliación que contiene el módulo de función a utilizar por el Customer Exit. Si no se conoce el nombre hay que ir a las transacciones SE16, con la tabla MODSAP, en el campo MEMBER completar con el nombre del módulo de función a buscar (Ejemplo EXIT_SAPMV45A_003) y ek campo NAME nos dirá la ampliación que la contiene. Si tampoco se conoce el módulo de función especifico, debe buscarse el código del programa estándar las llamadas de funciones de usuario que estarán indicadas por CALL CUSTOMER-FUNCTION '001', donde el número del final puede ir cambiando si presenta mas de una llamada. es decir varios customer exit o exit de cliente.

Una vez que tenemos el nombre de la ampliación en este ejemplo V45A0003, lo colocamos en el campo Ampliaciones de la transacción SMOD y presionamos Visualizar.

Después en la siguiente pantalla presionamos COMPONENTES y se visualizaran todos los módulos de funciones que tiene esta ampliación. Para la ampliación V45A0003 existen dos modulo de función, cada uno va hacer ejecutado en algún momento determinado de la ejecución del programa al cual pertenece, en este caso SAPMV45A.

Una vez que ya sabemos el módulo de función a usar debemos hacer doble clilc sobre el mismo se divisa la pantalla en la cual se puede ver que objetos importa y exporta esta unción, asi como también las tablas que importa y que pueden modificarse y las cuales utilizan códigos fuentes.

En la solapa Código.fte. se encuentra el Include Z se utiliza para agregar código

En las ultimas versiones de SAP el include comienza con ZX si no se utilizo debemos crearlo ya que no existiría. si el include no existe le vamos doble clic sobre el mismo pedirá al usuario que le asigne una orden de transporte para generarlo. Una vez creado es posible generar el código ABAP utilizando todos los objetos que figuren en la solapa Import, Modific. y tablas pudiendo devolver resultados modificando los objetos que se encuentran en la solapas Export, Modif. y Tablas.

Dentro del include ZXDBAU05 vamos a escribir el código ABAP que colocaremos dentro del exit en general el codigo será destinado a general validaciones de los campos de entrada, en caso de cumplirse una condición determinada se emitirá en pantalla un mensaje de error que impedirá el normal funcionamiento de la transacción caso contrario se continuara con el procesamiento normal.

Terminada la codificación la ampliación debe activarse en incluirse en el proyecto, estos son creados en la transacción CMOD, allí se debe general un proyecto Z en la cual se incluirán las ampliaciones que se desee.

Para agrupar, clasificar y controlar los Customer Exit crearemos un proyecto de ampliación.

UN proyecto de ampliación asocia n ampliaciones, su activación o desactivaron afecta a todas las ampliaciones asociadas.

La transacción para acceder a los proyectos de ampliaciones es la CMOD ahí ingresamos el nombre del proyecto y luego creamos. El nombre del proyecto de ampliación debe estar dentro del rango permitido para los clientes, debe comenzar con Z. Luego presionamos el botón Asignación ampliación para asignar las ampliaciones que vamos a incluir en el proyecto. Después en la pantalla de asignación introducimos las ampliaciones y presionamos el botón COMPONENTES para visualizar los componentes de cada ampliaciones. En la pantalla de componentes vamos activar presionando el botón activación. Cada uno de estos componentes son los Exit de ampliación, es ahí donde debemos incorporar el código de validación o proceso a controlar con la ampliación. Una vez activado el proyecto este pasara a color verde. Podemos anular la activación del proyecto de ampliación presionando el botón para desactivar.

Es importante recordad que si el EXIT no esta activo, la llamada a esta funcionando no tendrá efecto alguno.

5-¿Cómo probar un Customer Exit?

Un punto complicado en la utilización de Custimer Exito es ubicarlos y conocer el momento del proceso en el que ocurren los mismos. amar determinar que datos y que particularidades, se puede realizar en ese momento.

Para realizar un a 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 punto exacto del proceso en donde se encuentra.


 

 

 


Sobre el autor

Publicación académica de Ninoska Marquez, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Master

Ninoska Marquez

Profesión: Ing. de Sistema - Honduras - Legajo: FU90M

✒️Autor de: 99 Publicaciones Académicas

🎓Egresado de los módulos:

Presentación:

Me llamo ninoska marquez tengo 44 anos, tengo varios años de trabajar para una empresa donde me desempeño con el cargo de programador junior, soy perseverante, amable, tranquila

Certificación Académica de Ninoska Marquez

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

Ampliación (exit) Hay diferentes herramientas en SAP para realizar mejoras, modificaciones o agregados a un programa estandar del sistema. Se codifican en módulos aparte Los más importantes son: User Exits Customer Exits Keyword Exits Field Exits Estructuras Append BADIS Enhancements Menu Exits User Exits Subrutina hueca definida en un programa estándar Propias de SD Customer Exits Punto dentro de un programa donde se puede llamar a uno propio. La tabla MODSAP contiene los módulos de función de los Customer Exits (TYP= 'E') CALL CUSTOMER-FUNCTION 'xxxxx' Tx SMOD: para administrar las ampliaciones Tx CMOD: para gestionar los...

Acceder a esta publicación

Creado y Compartido por: Xavier Martinez Garsaball

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

SAP Senior

AMPLIACIONES.- diferentes herramientas para realizar mejoras o modificaciones a un programa estandar. entre los mas importantes user exits customer exits o exits de cliente. keyword exits. field exits o exits de campo estructuras append badis enhancesment. menu exits user exit.- propias de los modulos de sd ventas y distribución estan implementados en forma de subrutina. y se los nombra asi: USERXIT_XXXX. NO SE NECESITA LA CLAVE DE ACCESO A SAP. customer exit. ES UN PUNTO DENTRO DE UN PROGRAMA EN DONDE SE PUEDE LLAMR A UN PROGRAMA PROPIO. TX SMOD y CMOD. Transacciones estandar para trabajar con exits.

Acceder a esta publicación

Creado y Compartido por: Karyna Alexandra Suarez Flores

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

SAP Master

Las ampliaciones son herramientas de SAP que permiten realizar mejoras, modificaciones o agregados a un programa estándar del sistema. Los tipos de ampliaciones más importantes son: user exits, customer exits, keyword exits, field exits, estructuras append, badis, enhancements, menú exits. La tabla estándar MODSAP almacena las ampliaciones existentes en SAP. La transacción SMOD se utiliza para administrar las ampliaciones y la transacción CMOD se utiliza para la gestión de proyectos de ampliaciones.

Acceder a esta publicación

Creado y Compartido por: Mónica Robles

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

SAP Master

Ampliaciones: Herramientas de SAP para modificar un programa estándar. * User Exits: Subrutina definida dentro de un programa estándar ABAP (Sólo para SD) * Customer Exits o exits de cliente: Punto de un programa en donde se puede llamar a un programa propio (Tabla MODSAP estás todos lo módulos de función que se pueden utilizar) Tx SMOD: Administrar ampliaciones Tx CMOD: Gestión de proyectos de ampliación * KeyWord Exits * Field Exits o Exits de campo * Extructuras append * Badis * Enhascements * Menú Exits

Acceder a esta publicación

Creado y Compartido por: Helen Silva Ruiz

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

SAP Master

ampliaciones son diferentes herramienta que presetna sap para realizar mejoras modificaciones o agregados a un programa estandar de sap. tipos : user exits estrcututras append badis enhancement menu exits. CUSTOMER EXIT es un punto de un programa en donde se puede llamar aun programa propio. tabla MODSAP almacena todas las ampliaciones existentes en el sistema. SMOD TX administrar las ampliaciones. cmod gestion de proyectos de ampliaicones

Acceder a esta publicación

Creado y Compartido por: Leidy Giselle Parra Mora

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

SAP Master

Las ampliaciones son herramientas de sap para realizar mejoras modificaciones o agregar un programa estandar del sistema. Ventajas . Permite modificar ciertos programas para adaptarlios a necesidades particuklares de las empresas. Permite realizar mejoras a un programa sin modificar el codigo del mismo, manteniendo un buen funcionamiento y las caracterisicas. Los cambios toman efecto con solo transportar los nuevos objetos. Desventajas. No siempre se podran hacer todas las modificaciones de manera satisfactoria, ya que la mayoria de las ampliaciones estan preparadas para una determinada tarea. No todos los programas estandar estan preparados para agregar todos los tipos de am pliaciones Tipos de ampliaciones: User Exits Customer exits KeyWord...

Acceder a esta publicación

Creado y Compartido por: Jesus Enrique Ramos Bello / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP SemiSenior

RESUMEN Unidad 3 - Lección 1 (Ampliaciones: User Exits y Customer Exits) USER EXIT >> Son de SD >> No se necesita clave de acceso de SAP. >> En forma de subrutinas Ejercicio: SE80> PAQUETES > VMOD >Se despliegan los USER_EXITS de SD. CUSTOMER EXIT >> Invocación a un módulo de función. >> Tabla: MODSAP: todos los modulos de función que se utilizan en los Exists de cliente.>> Tipo de componente: E(Exit de funciones), S(Imagenes), T(Tablas), C(Código GUI)>> Nomenclatura: EXIT_PROGRAMA_3(NUMEROFUNCION) Llamada: CALL CUSTOMER-FUNCTION <3digitos> tx: SMOD >> Para adminitrar las ampliaciones tx: CMOD >> Para la gestión de proyectos...

Acceder a esta publicación

Creado y Compartido por: Ana Patricia Sánchez Paredes

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

SAP Master

AMPLIACIONES Son herramientas que permiten agregar funcionalidad a un programa estandar y modificar la ya existente. Las ampliaciones se realizan en modulos separados del prog estandar por lo que se mantiene la funcionalidad original. Es importante aclarar que no todos los prog estandar estan preparados para utilizar todas las ampliaciones. Las ampliaciones mas importantes son: User Exits Customer Exits Keyword Exits Field Exits Estructuras append Badis Enhancements Menu Exits USER EXITS Es una subrutina definida dentro de un prog estandar solo perteneciente al modulo SD, cuyo nombre sera USEREXIT_xxx. Dentro de esta subrutina podemos colocar un include Z o directamente la nueva funcionalidad. Es importante...

Acceder a esta publicación

Creado y Compartido por: Jonatan Richioni

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

SAP Master

Ampliaciones: Son herramientas que proporciona SAP para realizar mejoras, modificaciones o funcionalidades extras a un programa estandar de SAP. Por ejemplo, agregar validaciones a los campos de una dynpro, agregar campos en pantalla, nueva opcion en el menu o agregar campos a tablas estandares. Ventajas: 1. Se modifican los programas y adaptarlos a las necesidades del cliente. 2. Se permite realizar mejoras al programa sin afectar el funcionamiento y caracteristicas que el programa proporciona. 3. Se pueden transportar los cambios de estas modificaciones. Desventajas: 1. No siempre se pueden hacer las modificaciones de manera satisfactoria. 2. No todos los programas estandares tienen la posibilidad de agregar los tipos de ampliaciones. Entre...

Acceder a esta publicación

Creado y Compartido por: Erick Omar Mármol Ascencio / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Expert


Unidad 3: Ampliaciones y Notas en SAP. Lección 1: Ampliaciones: User Exits y Customer Exits. Audio tip 1: Los User Exits son huecos que genera SAP en el sistema estándar. Estos huecos están ubicados en lugares determinados el sistema. Es importante dejar en claro que no es posible generar nuevos huecos o User Exits sino que debemos trabajar únicamente con los ya existentes. Si no encontramos un user exit que se ajuste a nuestro requerimiento entonces deberemos de buscar otra alternativa de solución dentro de las demás soluciones de ampliaciones posibles que ofrece SAP en su sistema. Audio tip 2: Tal como mencionamos dentro del include ZXVVAU05 vamos a escribir el código ABAP que colocaremos dentro...

Acceder a esta publicación

Creado y Compartido por: Brenda Castillo Domínguez / Disponibilidad Laboral: FullTime

 


 

👌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!