Documentos de Académico
Documentos de Profesional
Documentos de Cultura
0
Ampliaciones (Enhancements) a programas ABAP en ERP 6.0
Tipos de ampliaciones: Explicit - Implicit
Explicit Enhancement: 1) Agregar sucursal en pantalla
Explicit Enhancement: 1) Agregar sucursal en pantalla (Cont.)
Explicit Enhancement: 2) Modificar verificación de datos
Para tener en cuenta ...
Todas las páginas
Página 1 de 6
Enhancement Framework: Nuevo método para realizar ampliaciones al código ABAP en ECC 6.0
(ERP 6.0).
Inicialmente los user-exits en ABAP eran el modo más usual de realizar ampliaciones en SAP. Este método utiliza módulos
de función mediante los cuales se puede ingresar código ABAP. El sistema provee las funciones donde los user-exits son
llamados y se cuenta con una interfaz definida y un programa Include. Es en éste programa Include donde se agrega el
El problema principal de esta solución es que sólo es posible una implementación simple. Esto significa que si el
Para resolver esta limitación SAP provee la utilización de BADI’s que soportan múltiples implementaciones. De esta forma se pueden
crear varias instancias del mismo objeto bajo el concepto de la orientación a objetos.
SAP brinda un nuevo framework para el desarrollo de ampliaciones conocido como Enhancement Framework. Esta nueva opción esta
En este tip nos focalizaremos en los enhancement ABAP para ampliaciones (Enhancements) de código ABAP.
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.
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 Optionsaparecerá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)
Como ejemplo vamos a utilizar el reporte RFBVBIC_0 que lee un archivo, compara y actualiza los datos bancarios proporcionados. La
intención es agregar un nuevo select-option para filtrar la información por el campo Sucursal.
- La ampliación a agregar es de tipo ENHANCEMENT-POINT ya que sólo se agregará un parámetro en la pantalla de selección.
- Se ingresa el nombre del ENHANCEMENT POINT y del ENHANCEMENT SPOT que deberán crearse.
- El sistema agrega en el código fuente del programa la sentencia ENHANCEMENT-POINT … SPOTS …
- Posicionar el cursor sobre la sentencia ENHANCEMENT-POINT y luego ir con el botón derecho del mouse
a: Enhancement Implementation -> Change
· En el siguiente cuadro de diálogo creamos la implementación correspondiente.
· Luego de este paso, en el programa aparecerán las sentencias ENHANCEMENT – ENDENHANCEMENTdonde se debe agregar el
código nuevo.
· Seleccionar el código a reemplazar y luego con el botón derecho del mouse posicionarse en:Enhancements -> Create
· Posicionar el cursor sobre la sentencia ENHANCEMENT-SECTION y luego ir con el botón derecho del mouse a: Enhancement
· Luego de este paso, en el programa aparecerán las sentencias ENHANCEMENT – ENDENHANCEMENT donde se debe agregar el
código nuevo.
IV. Para tener en cuenta.
estándar.
· Lo único que se agrega en el programa estándar son estos Enhancements. La implementación de los mismos es Z, por consiguiente