Tablas internas.
El uso típico que se le da a una tabla interna es:
Para almacenar temporalmente los datos de las bases de datos para un procesamiento futuro.
Para estructurar y formatear datos que se mostraran como salida del programa.
Para formatear datos para ser utilizados por otros servicios.
Tabla interna: Es un objeto de datos que permite guardar en memoria grandes cantidades de registros de datos con la misma estructura.
La cantidad de registros máxima esta relacionada con los límites especificaciones en la instalación del sistema.
área de trabajo:Cabecera de una tabla interna que tiene el contenido del registro de la tabla interna que se está procesando.
OCCURS: Cláusula ABAP que se utiliza para especificar la cantidad de registro en memoria de una tabla interna.
Por lo general, en el parámetro OCCURS se especifica 0 lo que permite trabajar con tablas de gran cantidad de registros.
Llenado de una tabla interna:
APPEND TO: Se añade un registro a la tabla interna en la última posición con los valores que tengamos en el área de trabajo.
Llenamos la tabla interna con el contenido de una base de datos. Esto lo haremos con la sentencia SELECT.
ASCENDING: Claúsula ABAP que se utiliza para ordenar una tabla de manera ascendente, es decir de menor a mayor.
Procesamiento de una tabla interna.
Para recorrer una tabla interna y procesar registro a registro utilizaremos la sentencia LOOP-ENDLOOP.
LOOP-ENDLOOP:Palabra reservada del sistema que se utiliza para la representación de bucles.
SY-SUBRC: Variable del sistema que devuelve un código de retorno luego de la ejecución de una sentencia ABAP.
Si la sentencia se ejecuto correctamente el código de retorno sera 0. Caso contrario, si la ejejcución se realizó con
errores, el código de retorno será distinto de cero.
Lectura de una tabla interna.
Para leer un registro concreto de una tabla interna sin necesidad de recorrerla utilizamos la sentencia RED TABLE.
RED TABLE: Sentencia ABAP que se utiliza para leer un registro de una tabla interna.
INDEX: Cláusula ABAP que se utiliza en muchas sentencias para especificar un registro en particular dentro de una tabla interna.
Modificando una tabla interna.
INSERT: Sentencia ABAP que se utiliza para insertar registros en una tabla interna o en una tabla de base de datos SAP.
DELETE: Sentencia ABAP que se utiliza para borrar registros en tablas internas o tablas de bases de datos SAP.
Para borrar todo el contenido de una tabla interna utilizamos la sentencia REFRESH.
REFRESH: Sentencia ABAP que se utiliza para inicializar el contenido de una tabla interna.
Para saber cuantos registros tiene una tabla interna utilizamos la sentencia DESCRIBE_TABLE.
DESCRIBE_TABLE: Sentencia ABAP que se utiliza para obtener la cantidad de registros que tiene una tabla interna en un programa.