ABAP FOR Expresión De Iteración
Tabla de Contenidos
ABAP FOR
SAP ha incluido la expresión ABAP FOR en su catálogo de instrucciones para las iteraciones. Es importante mencionar que esta expresión cuenta con 2 principales variantes de uso:
- Iteraciones condicionales, las cuales son realizadas con las condicionales WHILE y UNTILE
- Iteraciones a tablas, las cuales realizadas con la palabra reservada IN
La expresión FOR ABAP puede ser utilizada con los operadores de instancia NEW y VALUE, cuando lo estemos utilizando con tablas internas.
La forma de utilizar esta instrucción ABAP, cuando queramos procesar una tabla interna es la siguiente:
rt_last_names = value #( for ls_names in gt_names ( last_name = ls_names-last_name ) ).
Hacemos la creación de un clase ABAP que se llame zcl_iterator_object.

Declaramos en la sección pública nuestra interface ABAP if_oo_adt_classrun, e implementamos el método main si estás utilizando un entorno On Cloud.

Creamos un ABAP Data Type en nuestra sección pública con dos campos, uno que corresponda al nombre y otro al apellido. Además, creamos un tipo de tabla que corresponda a esta estructura.

Creamos otro ABAP data type que solo cuente con un campo de tipo string con el nombre last_names. De igual forma, crearemos su respectivo tipo ABAP standard table type.

Ahora, vamos a declarar un atributo del tipo de dato tt_names, en la sección privada. Después, implementamos el método constructor ABAP y llenaremos nuestro atributo global con unos cuantos registros, utilizando el operador ABAP VALUE.


Este es el momento en el que vamos a utilizar la sentencia ABAP FOR. Creamos un método ABAP que retorne una tabla del tipo tt_last_name, el cual creamos en uno de los pasos anteriores. Seguidamente, aplicamos la sentencia con la expresión FOR.

Esta instrucción retornará únicamente los apellidos de la tabla interna gt_names.
Por último, hay que crear una instancia ABAP de nuestra clase en nuestro método principal, para poder llamar al método get_last_names, almacenando los valores de retorno en una variable global.

Código Ejemplo
Documentación Oficial SAP
Para más información sobre el uso de la expresión ABAP FOR, puedes visitar el siguiente enlace con la documentación oficial de SAP