✒️ABAP Las tablas internas
ABAP Las tablas internas
Que son las tablas internas?
Es un objeto de datos que permite guardar en memoria grandes cantidades de registros de datos con la misma estructura.
Uso típico que se le da a una tabla interna:
- Almacenar temporalmente los datos de las bases de datos para un procesamiento futuro.
- Estructurar y formatear dato que se mostrarán como salida del programa.
- Formatear datos para ser utilizados por otros servicios.
Como se declara una tabla Interna?
Usa la siguientes sintaxis: Las líneas que se definen en OCCURS es la cantidad de registros que se guardan simultáneamente.
DATA: BEGIN OF<tabla> OCCURS <n>
<Def.Campo>,
END OF <tabla>
Por lo general, en el parámetro OCCURS se especifica la cantidad 0, lo que permite trabajar con tablas de gran cantidad de registros.
LLenado de una tabla interna.
Para llenar con datos una tabla interna utilizamos:
- APPEND TO: Añade un registro a la tabla interna en la última posición con los valores que tengamos en el área de trabajo.
Ordenamiento de una tabla interna.
Para ordenar una tabla interna usamos la sentencia SORT.
- SORT ti_proveedores BY dni DESCENDING ó ASCENDING.
Procesamiento de una tabla interna:
Para recorrer una tabla interna y procesar registro a registro utilizaremos la sentencia LOOP-ENDLOOP.
- LOOP AT ti_proveedores INTO wa_proveedores
WHERE NOT nombre IS INITIAL.
ENDLOOP.
Nota: Para declarar una estructura o área de trabajo de una tabla interna:
LIKE LINE OF.
Eje: DATA: wa_proveedores LIKE LINE OF ti_proveedores.
Lectura de una tabla interna:
Para leer un registro concreto de una tabla interna se usa READ TEBLE:
READ TABLE ti_proveedores INTO wa_proveedores
WHIT KEY nombre = 'Ariel'.
Modificado de una tabla interna:
Para modificar el contenido de un registro se usa la sentencia MODIFY.
EJE: wa_provedores-dni = '12345678'.
MODIFY ti_proveedores FROM wa_proveedores INDEX 1.
Para insertar registros se usa la sentencia INSERT.
wa_proveedores-nombre = 'Roger'.
wa_proveedores-apellido = 'Chavarria Rivera'.
wa_proveedores-dni = '123456789'.
INSERT ea_proveedores INTO ti_proveedores INDEX 2.
Para borrar el contenido de un registro se usa DELETE.
Eje: DELETE ti_proveedores
WHERE dni = '12345678'.
Para borrar todo el contenido de una tabla interna se usa: REFRESH.
Eje. REFRESH ti_proveedores.
Para saber cuantos registros tiene una tabla interna usamos la sentencia: DESCRIBE TABLE.
Eje: DATA: v_lineas TYPE i.
DESCRIBE TABLE ti_proveedores LINES v_lineas.
 
 
 
Sobre el autor
Publicación académica de Roger Chavarria Rivera, en su ámbito de estudios para la Carrera Consultor ABAP.
Roger Chavarria Rivera
Profesión: Ingeniero de Sistemas - Colombia - Legajo: HW68R
✒️Autor de: 21 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: FullTime
Certificación Académica de Roger Chavarria