SAP Netweaver / ABAP                  Notas técnicas / Tips / Tutorials

Ampliaciones (Enhancements) a programas ABAP en ERP 6.0 - Tipos de ampliaciones: Explicit - Implicit

Índice del artículo

 

II. Tipos de enhancements para ampliación de código fuente

Las ampliaciones de código fuente ABAP (source code enhancement/source code plug-in) es una de las tecnologías disponibles dentro del Enhancement Framework. Esta técnica se almacena en un programa de tipo include y no es parte del código fuente original.
Las ampliaciones de este tipo permiten ampliar la funcionalidad de transacciones estandar sin modificaciones en el código fuente.


Existen dos tipos de ampliaciones:

1. Ampliaciones de tipo Implícito
2. Ampliaciones de tipo Explícito

1. Las ampliaciones de tipo implícito son ampliaciones predefinidas provistas por SAP en el código fuente. Mediante la opción: Enhancement Operations -> Show implicit Enhancement Options aparecerán resaltadas las líneas de código relacionadas con la ampliación. Las podemos encontrar en los siguientes lugares:
- Principio y final de un Include
- Principio y final de un Método, módulo de Función, Rutina
- Al final de una estructura
- Al final de las sección privada, protegida y publica de clases locales

2. Las ampliaciones de tipo explícito pueden implementarse en cualquier parte del código fuente a excepción de algunas áreas restringidas por SAP. Para este tipo de ampliaciones existen dos formas:

- ENHANCEMENT-POINT: permiten agregar código extra en un programa fuente. Pueden ser estáticos (agregar nuevas declaraciones) o dinámicos (agregar código con alguna funcionalidad extra).
- ENHANCEMENT-SECTION: es posible reemplazar parte del código existente. Puede ser estático (modificar declaraciones) o dinámica (reemplazar la funcionalidad estándar)


Enhacements - ABAP/Fig1

En este tip se verá un ejemplo de una Implementación de Ampliación (Enhancement) de tipo Explícito.

Copyright © 2024 Teknoda Tech Portal & Training. Todos los derechos reservados.
Joomla! es software libre, liberado bajo la GNU General Public License.