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

 X 

✒️ABAP HANA ABAP Development Tools para Eclipse

ABAP HANA ABAP Development Tools para Eclipse

ABAP HANA ABAP Development Tools para Eclipse1 | Introducción al nuevo entorno de desarrollo

El nuevo entorno de desarrollo basado en la plataforma Eclipse, conocido como ABAP en Eclipse o ABAP Development Tools para Eclipse, es un "plugin" o un "add-on" de Eclipse que agrega la perspectiva ABAP a la plataforma Eclipse, proporcionando de esta forma las funciones necesarias para conectarse al repositorio ABAP ( objetos DDIC ) desde esta plataforma.

Analicemos un poco la historia:

En la versión de SAP ECC 6.0 se potencia el “Browser de Repository” (transacción SE80) para tener un solo punto de acceso a las herramientas de desarrollo. Pero siempre bajo el paraguas del SAP GUI.

Este entorno de trabajo aunque válido no estaba a la altura de otras tecnologías que posee SAP: Webdynpro JAVA, Desarrollo en SAP PO, SAP Portal, etc. Todas estas herramientas tienen en común que se desarrollan bajo Eclipse.

Es a partir del 2012 cuando empiezan aparecer los primeros artículos en la web de SAP para desarrolladores ( SDN: SAP Developer Network ) en los cuales se explica que se está trabajando en un nuevo entorno de desarrollo ABAP bajo la plataforma abierta de Eclipse.

La primera versión fue lanzada para la versión ABAP 7.31 SP04 bajo el nombre de: “ABAP Development Tools for SAP NetWeaver” cuya abreviatura es ADT, posteriormente llamado “ABAP Development Tools for Eclipse”, cuya abreviatura es AiE.

El AiE permite a los programadores ABAP desarrollar código fuente ABAP usando las capacidades del servidor de aplicaciones ABAP (AS ABAP) pero desde un entorno de desarrollo integrado (IDE) basado en Eclipse en vez del tradicional IDE, ABAP Workbench (Transacción SE80).

Se instalan en Eclipse como un plugin más de la plataforma. Una vez instalado aparece la perspectiva ABAP que nos permitirá acceder a las herramientas de desarrollo ABAP.

SAP actualiza de forma regular el AiE de modo de ir añadiendo funcionalidades que aparecen con las nuevas versiones de SAP ABAP.

Debemos tener en cuenta que las nuevas funcionalidades de SAP como los son CDS (Core Data Services) que veremos en detalle más adelante solo se encuentran disponibles a través del AiE en Eclipse, es decir no podremos acceder a estas herramientas mediante el SAP GUI.

A diferencia de otros lenguajes como JAVA que usan Eclipse como entorno de desarrollo, la diferencia es que sigue basándose en el servidor. En otras palabras, el código fuente se guarda en el servidor y no de forma local. De esta forma, los servicios de búsqueda, validación de sintaxis, entre otros, se ejecutan en el propio servidor de SAP, con lo que se ahorra tiempo en el proceso.

El AiE no sustituye al SAP GUI ya que para poder conectarse a los distintos sistemas SAP deben de estar configurados de antemano en el SAP Logon. Y para algunos objetos ABAP, como el diccionario de datos ABAP (DDIC), se abre una ventana SAP GUI en el propio Eclipse.

AUDIO ACLARATIVO: ABAP Development Tools para SAP Netweaver incluye a los siguientes componentes de software: El ABAP Core Development Tools, que comprende los editores para editar el código fuente ABAP, Depuradores, conexiones de transporte, etc. About the Development Tools for web dynpro, que son herramientas para desarrollar UIs con web de probar. ABAP Development Tools for web dynpro son herramientas para desarrollar ABAP en SAP HANA. About connectivity and integration Development Tools, que son herramientas para integración de sistemas. ABAP Business software Tools, que son herramientas para Business object, utilizando el Business Objects Processing Framework.

2 | Las ventajas de ABAP Development Tools respecto de la transacción SE80

Hasta este momento todos conocemos las virtudes y flaquezas que presenta la transacción SE80, pero:

¿Qué sucede si comparamos a esta transacción de ABAP Workbench versus el Eclipse y ABAP Development Tools?

¿Cuál de las dos herramientas es mejor?

¿Podemos elegir una de ellas y trabajar exclusivamente con ella? o tendremos que utilizar ambas herramientas?

Para poder contestar a todas las preguntas que planteamos anteriormente, vamos a analizar detalladamente las ventajas que ofrece ABAP Development Tools respecto a la transacción SE80 (Browser de repository).

Errores

En Eclipse los errores nos aparecen a medida que vamos desarrollando ya no es necesario compilar para saber qué errores se van produciendo.

Cada nueva versión del AiE mejora o añade nuevas funcionalidades y posibilidades para la consultoría SAP, por ejemplo, para el desarrollador ABAP. Sin embargo, estas funcionalidades van a depender de la versión de SAP a la cual se conecta el AiE.

Abrir muchos objetos en paralelo

Uno de los puntos más flojos que presenta la transacción SE80 tiene que ver con que solo es posible trabajar con 6 objetos en modo edición al mismo tiempo.

Para colmo si ejecutamos un programa y abrimos una única sesión del depurador o debuger, estaremos ocupando 2 espacios, por lo que nos queda solamente disponible 4 objetos más para abrir.

Si bien con esta limitación podemos desarrollar igualmente, cuando trabajamos en un proyecto en donde tenemos que analizar y modificar varios objetos resulta muy molesto tener que cerrar objetos y abrir otros para luego cerrarlo nuevamente y tener que volver a abrir el objeto original.

En Eclipse hay pestañas que permiten abrir tantos objetos fuente como queramos.

Adicionalmente, mediante Eclipse podemos desarrollar proyectos en paralelo de distintos sistemas SAP, permitiendo comparar múltiples objetos en distintos repositorios.

Posicionamiento de ventanas flexible y personalizado

Sin dudas resulta sumamente útil tener el control sobre lo que vemos en la pantalla.

A través de Eclipse podemos trabajar con ventanas de tamaño flexible, de modo de configurar fácilmente el editor principal en el centro, con el segundo diálogo que me muestra otro código fuente que estoy actualizando y tener una tercera ventana con vista previa en la tabla de la base de datos para ver posibles entradas / valores de salida.

Ya no es necesario pasar de una ventana a otra como en el caso de SAP GUI, todo está en un solo lugar, personalizado para nuestras necesidades.

Refactoring

Si en la SE80 el refactoring es muy limitado, con Eclipse el refactoring es mucho más completo: eliminación de variables segura, renombre de variable en todos los puntos del objeto, insertar las firmas de métodos de una manera sencilla, utilización de templates o plantillas más complejas gracias a las capacidades de eclipse, declaración e implementación automática de métodos (Quickfix), etc.

Quickfix

Eclipse permite crear métodos de una manera sencilla y rápida, tan solo hay que hacer la llamada al método nuevo incluyendo sus parámetros y pulsando CTRL 1 y nos aparecerá una ventana con el método a crear, confirmándolo ya tendremos el método creado con la implementación vacía.

Luego presionamos enter y veremos a continuación un wizard o asistente que nos permitirá actualizar las propiedades de los parámetros.

Búsqueda

Para buscar objetos en la SE80 había que hacerlo individualmente, mientras que en Eclipse pulsando CTRL SHIFT A podemos buscar cualquier objeto, pudiendo utilizar patrones para buscar.

Con eclipse podemos presionar CTRL MAYÚS A y escribir la combinación de letras para cualquier objeto que se desee, incluidos los comodines (tal como zcl * adam *). Sin importar si se trata de una clase, módulo de función o tabla de base de datos: se puede acceder a todo a través de un atajo y funciona, sin dudas mucho mejor que buscar cualquier objeto en la transacción SE80.

Comentarios en el editor, no en el código

Cuando desarrollamos un programa ABAP es común tener tareas pendientes por realizar antes de la finalización de la programación. En ocasiones al analizar un programa nos encontramos con comentarios tales como: "Toda esta lógica debe ser refactorizada o actualizada más tarde".

Con Eclipse en lugar de hacer comentarios en el código, podemos agregar los comentarios al propio editor, de esta manera no ensuciamos el código con comentarios que por error o descuido pasan al ambiente productivo.

Eclipse mantiene una lista de Tareas por hacer. Podemos tener una tarea o tarea general que se asigna a un lugar en el código; luego, al hacer doble clic, podemos saltar directamente al lugar que debe corregirse.

Lista de tareas que mantienen el contexto del desarrollo

Eclipse permite registrar todos los objetos abiertos y asignarlos al contexto guardado en la vista "Lista de tareas".

Se pueden crear muchas tareas, cada una para un nuevo desarrollo, por ejemplo. Simplemente debemos seleccionar el botón derecho sobre la tarea y la opción "Activar" para tener todos los objetos del contexto cargados en Eclipse.

Si terminamos de trabajar con la tarea, simplemente elegimos la opción "Desactivar". Esto cerrará todas las pestañas y guardará el contexto, por lo que se puede abrir la siguiente tarea para trabajar. Esta es una opción muy útil si necesitamos cambiar entre desarrollos, ya que carga el contexto de los cambios en segundos.

Además, las tareas pueden crearse localmente para necesidades propias o también en el servidor del repositorio. Esto significa que podemos compartir el contexto de la tarea con otros desarrolladores. De esta forma se hace que sea muy fácil pasar la tarea con todas las clases modificadas y el contexto a otra persona.

Ciertos objetos nuevos solo existen en Eclipse

Tal como mencionamos en las lecciones anteriores, existen ciertos objetos que son nuevos dentro del mundo ABAP, tales como las CDS (Core Data Services) las cuales veremos en detalle en las siguientes lecciones, que solo pueden ser creadas en el entorno de desarrollo de Eclipse y no en el ABAP Workbench, por lo que esto nos obliga a tener que trabajar si o si con Eclipse.

Como reflexión final podemos decir que trabajar con ABAP en Eclipse es más eficiente que utilizar la transacción SE80, especialmente si desarrollamos con enfoque orientado a objetos, debido a que presenta una serie de herramientas adicionales y modernas, que hacen más fácil la labor diaria del Consultor ABAP.

Hoy en día la mayoría de las herramientas de desarrollo permiten trabajar en varios proyectos en paralelo, cuestión que no es posible con la transacción SE80. Esto tiene que ver con que la transacción es en cierto punto "vieja" y no ha sido actualizada en los últimos años.

Si contamos con experiencia en el manejo de la transacción SE80 entonces pasar a trabajar con Eclipse nos va a tomar unos días hasta que nos acostumbremos a esta nueva herramienta, ya que existen ciertos hábitos en el desarrollo ABAP que son muy propios de la transacción SE80.

AUIDO ACLARATIVO: Así como hay ventajas también hay desventajas, es por ello que algunos de los aspectos que podemos mencionar como una ventaja de ABAP Development Tools respecto de la transacción SE80 son los siguientes:

  • Trabajar con enhancement es más complicado en eclipse que mediante la transacción SE80.
  • Buscar textos en un programa funciona mejor en la transacción SE80 que en eclipse
  • El debugger de la transacción SE80 es más poderoso en cuanto a las funcionalidades que el de bajar de ABAP Development Tools
  • Por último también podemos mencionar que en ocasiones sucede que la ayuda que se visualiza en pantalla al presionar la tecla F1 con eclipse no funciona o demora mucho tiempo más que con la transacción se 80.

3 | La instalación del ABAP Development Tools

Finalizada la instalación del Eclipse, debemos instalar el Plugin para ABAP.

Para ello, presionamos la opción del menú Help y luego seleccionamos Install New Software.

En la siguiente pantalla presionamos el botón Add y luego ingresamos link correspondiente al ABAP Development Tools que es: https://tools.hana.ondemand.com/oxygen

Nuevas versiones de ADT

Si ingresamos a https://tools.hana.ondemand.com/ vamos a encontrar las siguientes versiones disponibles:

For Eclipse 2019-06 (4.12), use https://tools.hana.ondemand.com/2019-06 (ÚLTIMA VERSIÓN)

For Eclipse 2019-03 (4.11), use https://tools.hana.ondemand.com/2019-03

For Eclipse Oxygen (4.7), use https://tools.hana.ondemand.com/oxygen

A continuación vamos a seleccionar los componentes de software que deseamos instalar, en nuestro caso tildamos ABAP Development Tools for SAPNetweaver y SAP HANA Tools.

Llegado a este punto de la instalación debes contar con acceso a internet para poder descargar de la web los paquetes de instalación.

Luego aceptamos las condiciones de instalación y presionamos Siguiente.

Previamente a comenzar con la instalación debes borrar de tu workspace el archivo artifacts.xml, guardando una copia de seguridad del archivo, de modo que finalizada la instalación de las ADT vuelvas a copiar el archivo a tu workspace.

Esto lo hacemos para evitar errores que se producen en la instalación por determinadas sentencias que existen en este archivo.

Finalizada correctamente la instalación veremos los AiE topics en la pantalla de overview.

Luego vamos a ir a la perspectiva ABAP, para ello nos dirigimos al Menu: Window –> Open Perspective –> Other.

A continuación seleccionamos ABAP.

Y visualizamos el editor con la perspectiva ABAP.


 

 

 


Sobre el autor

Publicación académica de Pedro Antonio Duarte, en su ámbito de estudios para el Máster ABAP for HANA.

SAP Master


Pedro Antonio Duarte

Profesión: Consultor de Sap Abap - Argentina - Legajo: JP24O

✒️Autor de: 128 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Certificación Académica de Pedro Duarte