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

 X 

✒️ABAP HANA Las mejoras a partir de ABAP 7.40

ABAP HANA Las mejoras a partir de ABAP 7.40

ABAP HANA Las mejoras a partir de ABAP 7.401 | Las mejoras a ABAP

A partir del lanzamiento del sistema SAP NetWeaver 7.4, se han implementado una serie de mejoras en el lenguaje de programación ABAP.

Junto con SAP NetWeaver 7.40 llegó el servidor de aplicaciones ABAP AS ABAP 7.40.

El AS ABAP 7.40 es el sucesor de AS ABAP 7.31 (también conocido como AS ABAP 7.03) que es el sucesor de AS ABAP 7.02 que se basa en AS ABAP 7.0.

Gracias a una mayor orientación hacia las expresiones, estas mejoras nos permiten escribir un código ABAP más corto y más legible.

En el contexto del desarrollo de ABAP en SAP HANA, las opciones asociadas con las expresiones hacen posible reducir el código ABAP a la intención esencial.

El paradigma code pushdown puede utilizarse para realizar cálculos dentro de la base de datos y (al usar los componentes contenidos en el ABAP AS) la aplicación puede orquestarse utilizando considerablemente menos código de aplicación.

1.1 | ¿Cómo determinamos con cuál versión de ABAP estamos trabajando?

Para determinar si estamos trabajando con ABAP 7.4 o superior debemos ingresar a un modo SAP y dirigirnos al menú Sistema / Status.

A continuación hacemos clic en el botón "Componentes" (Product Version).

De la lista de componentes de software instalados, buscamos la versión o release de los componentes SAP_BASIS y SAP_ABA para verificar la versión de SAP Netweaver.

1.2 | ¿De dónde venimos, dónde estamos y hacia dónde vamos?

A partir de la versión 7.0 ABAP fue orientado a declaraciones.

Supongamos que tenemos la tarea de generar una cadena de caracteres concatenada a partir de un valor de una columna de una tabla interna con algunos contenidos literales, utilizando un método determinado.

Con la versión 7.02, ABAP dio el primer gran paso en la dirección de habilitación de la expresión. Muchas nuevas funciones incorporadas, expresiones de cadena con operador de concatenación && combinadas con cadenas y la capacidad de escribir expresiones en muchas posiciones de operandos, abrieron un nuevo ámbito de programación ABAP.

Una variable auxiliar y una declaración menos gracias a los corchetes en ABAP.

Con la versión 7.40 vamos en la dirección de la orientación de la expresión real: más expresiones y más posiciones de expresión.

Gracias a las llamadas declaraciones en línea (concepto que veremos en detalle en el punto 2 de esta misma lección) reescribimos el código anterior en 7.40

1.3 | ¿Qué es ABAP 7.50 y cuáles son sus fundamentos?

ABAP continuo evolucionando hasta que en Octubre del año 2015, SAP lanza el servidor de aplicaciones SAP NetWeaver AS ABAP 7.5 y con él la nueva versión del lenguaje ABAP 7.5.

Podemos mencionar las siguientes generalidades que presenta ABAP 7.5:

Es compatible con el servidor de aplicaciones ABAP 7.4

Corre con el kernel 7.45

Solo funciona con sistemas Unicode, es decir al momento de comprobar la sintaxis se verificará que el atributo Unicode este tildado.

Soporta la base de datos SAP HANA y otras bases de datos

Facilita la explotación de HANA con nuevas optimizaciones sofisticadas centradas en la base de datos

Ofrece un modelo de programación ABAP común para aplicaciones transaccionales y analíticas

Establece a SAP Fiori como experiencia de usuario de aplicaciones cruzadas

Es compatible con la industria 4.0 y los escenarios de big data

Moderniza y simplifica aún más el lenguaje ABAP

Ofrece una experiencia de desarrollo de primera clase en Eclipse

Proporciona herramientas de administración de código personalizadas para una actualización y migración simples a SAP S/4HANA

2 | Las declaraciones en línea

Lo primero que hacemos cuando creamos un programa ABAP es escribir las declaraciones de datos. Declaramos las variables al inicio de las subrutinas, los métodos y los programas.

La gran mayoría de las líneas de código que escribimos son solo para estas declaraciones de tipos de datos.

A partir de la versión ABAP 7.4 estas declaraciones de datos pueden evitarse por completo.

Esto último que nos lleva a preguntarnos:

¿No más declaraciones de tipos de datos en nuestros programas ABAP?

¿Cómo funciona mi código ABAP sin las declaraciones de datos?

La respuesta es No.

El objetivo de las declaraciones en línea (Inline Declarations) es ayudarnos a reducir y optimizar el código que generamos.

Si bien en algunos casos son realmente muy prácticas y recomendables de utilizar, en otros casos traen como consecuencia que el código ABAP se vuelve muy complejo de seguir, por lo que personalmente no recomiendo su uso.

AUDIO ACLARATIVO: Las declaraciones en línea no cambian el alcance de las variables ABAP, por lo tanto, no es posible usar el mismo nombre de variable varias veces dentro de un método. Es recomendable continuar definiendo al comienzo de una implementación de un método, las variables que deseamos utilizar en varios lugares dentro de un método extenso. Las declaraciones en línea son sumamente útiles para las variables con un contexto de uso limitado y local. Las declaraciones no pueden utilizarse en todas las situaciones.

3 | Las expresiones con tablas

En lo que se refiere al manejo de las tablas internas, los cambios a partir de ABAP 7.40 son muchos.

Uno de los más significativos hace referencia a que cuando una línea de la tabla no es encontrada al momento de realizar por ejemplo un READ, entonces se dispara la excepción CX_SY_ITAB_LINE_NOT_FOUND en lugar de cambiar de valor la variable del sistema SY-SUBRC tal como veníamos trabajando hasta ahora.

4 | Las expresiones de constructor

Las expresiones de constructor nos permiten crear e inicializar objetos ABAP, estructuras de datos y referencias de datos por medio de una expresión.

El beneficio de estas expresiones radica en la reducción de las declaraciones necesarias, así como en la compatibilidad con las declaraciones en línea (Inline declarations).

Cuando analizamos las declaraciones en línea en el punto 2 de esta lección, nos podemos haber preguntado si estas nos sirven para crear una instancia de un objeto.

Esto lo podemos realizar utilizando el operador NEW, el cual nos permite declarar una instancia de un objeto directamente en línea.

Los parámetros para el Constructor son transferidos cuando el método es llamado.


 

 

 


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