🚀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.40

MEJORAS ABAP: Junto Sap Netweaver 7.40 llegó el servidor de aplicaciones ABAP AS ABAP 7.40 para Hana (sucesor de AS ABAP 7.31 / 7.02 / 7.0 todos estos para ERP). Estas mejoras permiten escribir un código ABAP más corto y legible El paradigma code pushdown puede utilizarse para realizar cálculo dentro de la BD y la aplicación puede orquestarse usando considerablemente menos código de aplicación.

COMO VERIFICAR LA VERSIÓN ABAP: Ingresar a un modo SAP Ir al menú Sistema > Status Click al botón Componentes (Product Version) En la lista de componentes de software instalados buscar la versión de los componentes SAP_BASIS y SAP_ABA Verificar que estas trabajando con ABAP 7.5

FUNDAMENTOS ABAP 7.5: Es compatible con el servidor de aplicaciones ABAP 7.4 Corre con el kernel 7.45 Solo funciona con sistemas Unicode Soporta la BD SAP HANA y otras bases de datos Facilita la explotación de HANA con optimizaciones sofisticadas centradas en la BD 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 eprimera clase en Eclipse Proporciona herramientas de administración de código personalizadas para una actualización y migración simples a SAP S/4HANA.

DECLARACIONES EN LINEA (Inline Declarations). Permiten declarar las variables en los puntos donde se van a utilizar, cogiendo así el tipo de dato por el contexto y evitando tener que declararlas previamente. Este tipo de declaración se puede utilizar en muchos sitios, conocidos como posiciones de declaración. Ayuda a reducir y optimizar el código generados. Sin embargo, el código puede volverse muy complejo de seguir.

Sentencia READ TABLE. Se puede leer un registro de una tabla interna en una estructura sin haberla definitdo previamente.

READ TABLE ti_scarr WITH KEY carrid = 'LH' INTO DATA(wa_scarr).

Expresiones con tablas. Uso de corchetes ([ ]) para hacer accesos a las tablas internas (dejamos de usar el READ TABLE).

cl_demo_output=>display( |Carrier: { ti_scarr[ carrid = 'LH' ]-carrname }| )

Declaraciones con DATA. Se declara variable y se asigna valor en una misma línea

DATA(v_texto) = 'Hola Mundo'.

Loop AT INTO work area. Se declara y asigna una work area para recorrer un loop en una misma instrucción

LOOP AT ti_carrier INTO DATA(wa_carrier). ENDLOOP.

Call method. Se declaran los antributos y se llama el método en una misma instrucción.

TRY .

"Generar tabla alv

cl_salv_table=>factory( IMPORTING r_salv_table = DATA(lo_alv_inline)

CHANGING t_table = lt_data ).

"Mostrar alv

lo_alv_inline->display( ).

CATCH cx_salv_msg INTO DATA(lo_exc_inline).

MESSAGE lo_exc TYPE 'I' DISPLAY LIKE 'E'.

ENDTRY.

Loop at assigning. Se declara el Field Symbol y en la misma instrucción loop se almacena cada registro en una tabla interna

LOOP AT ti_bukrs ASSIGNING FIELD-SYMBOL(<wa_bukrs>). ENDLOOP.

Read table assigning. Se declara el Field Symbol y se asignan los valores al mismo momento de leer el registro

READ TABLE ti_matnr ASSIGNING FIELD-SYMBOL(<wa_matnr>) INDEX 3.

Select into table. La declaración de la tabla interna se realiza en la misma sentencia

Select SELECT * FROM scarr INTO TABLE @DATA(ti_scarr).

Select single into. Ya no se declaran las variables para almacenar los resultados de la selección. Se hace explicitamente en el Select

SELECT SINGLE carrname FROM scarr WHERE carrid EQ 'AA' INTO @DATA(v_carrname).

................................................................................................................................................................

EXPRESIONES CON TABLAS. Los cambios a partir de ABAP 7.40 son muchos. Uno de los más significativos: Se reemplaza el SY-SUBRC por la excepción CX_SY_ITAB_LINE_NOT_FOUND para cuando una línea de la tabla no es encontrada al momento de realizar por ejemplo un READ.

Read Table Index. Para leer un registro puntual de una tabla interna.

DATA(wa_carrier) = ti_carrier[ 1 ]

Read Table Index With Key. Para leer un registro de una tabla interna utilizando campos claves.

DATA(vl_nombre) = ti_carrier[ carrid = 'LH' ]-carrname.

¿Existe el registro? Verificamos si existe un registro

IF line_exists( ti_carrier[ carrid = 'AA' ] ). ENDIF.

Obtener índice de una tabla.

DATA(v_index) = line_index( ti_scarr[ carrid = 'AA' ] ).

................................................................................................................................................................

EXPRESIONES CON CONSTRUCTOR. Permiten cear e inicializar objetos ABAP, estructuras de datos y referencias de datos por medio de una expresión.

Crear instancia de un objeto.

DATA(o_reporte) = NEW lcl_reporte( 1 ).

Inicialización de una estructura o tablas internas

ls_carr = VALUE #( carrid = 'LH' carrname = 'Lufthansa' ).

La expresión VALUE puede combinarse con una declaración en línea (se debe especificar el tipo de datos exacto).

DATA(ls_carr) = VALUE scarr ( carrid = 'LH' carrname = 'Lufthansa' ).

El operador VALUE también se puede usar para declarar tablas internas.

lt_carrier = VALUE #( ( carrid = 'AA' carrname = 'American Airlines' ) ( carrid = 'LH' carrname = 'Lufthansa') ).

Referencia de datos. lo_result_set->set_param_table( ref #( result ) ).

Además de los operadores NEW, VALUE y REF existen muchos más tales como conversiones (CONV) o conversiones de tipo (CAST)

................................................................................................................................................................


 

 

 


Sobre el autor

Publicación académica de Johanna Thaina Rangel Lucero, en su ámbito de estudios para el Máster ABAP for HANA.

Johanna Thaina Rangel Lucero

Profesión: Consultor Sap Abap Certificado - Colombia - Legajo: NS56F

✒️Autor de: 10 Publicaciones Académicas

🎓Egresado del módulo:

Disponibilidad Laboral: FullTime

Presentación:

Formación en ciencias de la computación. contratación freelance y/o empleado. presencial, remoto y/o híbrido según disponibilidad.

Certificación Académica de Johanna Rangel