
AMPLIACIONES.- Son diferentes herramientas que presenta SAP para realizar mejoras, modificaciones o agregados a un programa estándar del sistema
TABLA MODSAP: La tabla base de datos estandar almacena todas las ampliaciones existentes en el sistema SAP. De cada ampliación se guarda: el nombre de la ampliación, el tipo de componente que puede ser "E" para Exit de funciones, "S" para imagenes, "T" para tablas y "C" para Código GUI y finalmente el nombre del objeto SAP que se modifica.
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, manteniendo el buen funcionamiento y las características que tenía.
- Los cambios tomas 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.
TIPOS: >User Exits >Customer Exits o Exits de Cliente >KeysWor Exits > Field Exits o Exits de Campo >Estructuras Append >Badis >Emhancements >Menú Exits
CUSTOMER EXIT.- También llamado Exit de Cliente es un punto de un programa en donde se puede llamar a un programa propio. Tienen la siguiente nomenclatura.- EXIT_<nombre del programa>_<número de función>. (EXIT_SAPQ013V:003).
TRANSACCIONES SMOD Y CMOD: Utilizaremos estas 2 transacciones estándar con los exits de Cliente.
VENTAJAS:
- 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.
DESVENTAJAS:
- No siempre se ajusta el 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 utilizacion, para buscarlos hay que realizar una búsqueda de 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.
¿Cómo probar un Customer Exit?.- Un punt complicado en la utilización de Customer Exits es ubicarlos y conocer el momento del proceso en el que ocurren los mismos. Todo esto par determinar que datos y que particularmente, se puede realizar en ese momento. Para realizar esta investigación, lo más 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.