✒️ABAP Las tablas internas
ABAP Las tablas internas
TABLAS INTERNAS. Es un objeto de datos que permite guardar en memoria grandes cantidades de registros de datos con la misma estructura. Los limites están dados por la instalación del sistema. El uso típico es:
o Para almacenar temporalmente la información para un procesamiento futuro.
o Para estructurar y formatear datos que se mostraran como salida del programa.
o Para formatear datos para ser utilizados en otros servicios.
· Declarar una Tabla Interna. N significa la cantidad de registros almacenar simultáneamente mas una línea de cabecera. Si el parámetro occurs está en 0, no existe un limite.
Ejemplo:
Data: begin of ri_ejemplo ocurrs 0,
Nombre(100) type c,
Cedula type i,
End of ri_ejemplo.
Otra forma seria:
Data: begin of ri_ejemplo
Nombre(100) type c,
Cedula type i,
End of ri_ejemplo.
Data: ti_ejemplo like standard table of ri ejemplo.
o Llenado de una tabla interna.
o 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 trabaja. Ejemplo:
o Ordenamiento de una tabla interna. Para ordenar una tabla usamos la sentencia sort. Ejemplo: sort ti_provedores by dni descending.
o Procesamiento de una tabla interna. Para recorrer una tabla interna se hace con la sentencia loop –endloop. Ejemplo:
Loop at ti_proveedor into wa_proveedor where not nombreis initial.
Endloop.
Si no existe ningún registro que cumpla la condicion especificada el sy-subrec será distinto de cero.
o Lectura de una tabla interna. Para leer un registro concreto se hace con la palabra clave read table. Read table ti_proveedores into wa_proveedores with key nombre=’ariel’. Si se encuentra el registro la función sy-subrc será cero. Si se desea imprimir un registro en una posición especifica se utilizara:
Read table ti_proveedor into wa_proveedor index 1.
Con la cláusula BINARY SEARCH, la búsqueda será mucho más eficiente.
· Modificación de una tabla interna. Se hace por medio de la sentencia modify.
Si al modificar no se encuentra el archivo la función sy-subrc será distinto de cero.
Para insertar un registro en una posición indicada se hace:
Para borrar un registro se usa la sentencia delete.
Para borrar todo el contenido de una tabla interna usamos la sentencia refresh.
Para saber cuántos registros tiene una tabla, se hace con la tabla DESCRIBE TABLE.
CLEAR NOMBRECABECERATABLA
FREE NOMBRETALBA INTERNA
 
 
 
Agradecimiento:
Ha agradecido este aporte: Yeffer Sierra Saenz
Sobre el autor
Publicación académica de Alexander Cardenas, en su ámbito de estudios para la Carrera Consultor ABAP.
Alexander Cardenas
Profesión: Ingeniero de Sistemas - Colombia - Legajo: UN96T
✒️Autor de: 238 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP MM Nivel Avanzado
- Carrera Consultor en SAP MM Nivel Inicial
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
- Carrera Consultor en SAP SD Nivel Avanzado
- Carrera Consultor en SAP SD Nivel Inicial