
Unidad 3: Las ampliaciones y las notas de SAP
Lección 7: Los Enhancements
Son ampliaciones por las cuales podremos agregar determinadas funcionalidades, para satisfacer los requerimientos de los usuarios que no cubre el sistema.
Existen dos tipos de Enhancements:
Para implementar cualquiera de los dos, hay que presionar el botón del espiral del menú:

Enhancements Impliícitos:
Los localizamos en el cód. estándar en ciertos lugares predefinidos por SAP. Algunos lugares son: al final de todos los programas, al comienzo y al final de las subrutinas, al final de los MF o al final de las clases locales.
Para ver todos los Enhancements implícitos en el cód. usamos la opción del menú Tratar > Operaciones ampliación > Insertar puntos de ampliación implícitos.
Enhancements Implícitos:
Pueden implementarse en cualquier parte del cód. a excepción de algunas áreas registradas por SAP.
Hay dos opciones:
- ENHANCEMENT-POINT: usados en un lugar determinado del cód. y permiten agregar cód. extra en un programa fuente. Pueden ser estáticos (agregando nuevas declaraciones) o dinámicos (agregando cód. con alguna funcionalidad extra).
- ENHANCEMENT-SECTION: usados para reemplazar parte del cód. existente. Pueden ser estáticos (modificando declaraciones) o dinámicos (reemplazando la funcionalidad estándar).
Cuando se implementa un Enhacement-Section solo la implementación se ejecutará y no el cód. original existente.
Esta es una técnica nueva. A causa de estp, solo puede existir una implementación activa de Enhancement-Section.
Pero pueden existir muchas implementaciones activas de Enhancement-point, en cuyo caso se ejecutarán sin ninguna garantía de seguir un orden de ejecución determinado.
Pasos para implementar un Enhancement Implícito:
Tomaremos el programa estándar RFBVBIC_0 que lee un archivo, compara y actualiza los datos bancarios proporcionados. El objetivo de la modificación al programa será agregar una validación en la subru. READ_FILE:
- Ingresar al include RFBNBIC05 y presionar el espiral.
- Posicionar el mouse dentro de la subru. READ_FILE y vamos al menú Tratar > Operaciones ampliación > Insertar puntos de ampliación implícitos.
- Una vez dentro, nos posicionamos sobre la línea de comentarios que indican los ptos implícitos de ampliación y seleccionamos la opción del menú Tratar > Operaciones ampliación > Crear.
- Vemos una ventana que completaremos con el nombre de la implementación, una desc. y hacer clic en la tilde.
- Veremos dentro del cód. que se ha insertado las sig. líneas con el nombre de la implementación para que introduzcamos nuestro cód. dentro:

- Introducimos el cód. de la validación. La idea es que si el usuario ingresa en el param. de la pantalla el texto que indicamos a continuación, entonces emita un msj de error en la pantalla que detenga la ejecución del programa:

- Finalmente activamos el enhancement haciendo clic en:

Probando la validación:
Para esto, colocamos un breakpoint dentro del cód. del enhancement y ejecutamos el reporte RFBVBIC_0, dentro de la pantalla de selección completamos el campo correspondiente al path del archivo y hacemos clic en ejecutar:

La ejecución se detiene en el breakpoint que colocamos. Con ello verificaremos que el cód. dentro del enhancement efectivamente se ejecutará.
Por último presionamos F8 para continuar con la ejecución y veremos en pantalla la emisión del msj. de error.