SAP ABAP - Tabelas Internas
A tabela interna é na verdade uma tabela temporária, que contém os registros de um programa ABAP que está sendo executado. Uma tabela interna existe apenas durante o tempo de execução de um programa SAP. Eles são usados para processar grandes volumes de dados usando a linguagem ABAP. Precisamos declarar uma tabela interna em um programa ABAP quando você precisar recuperar dados de tabelas de banco de dados.
Os dados em uma tabela interna são armazenados em linhas e colunas. Cada linha é chamada deline e cada coluna é chamada de field. Em uma tabela interna, todos os registros possuem a mesma estrutura e chave. Os registros individuais de uma tabela interna são acessados com um índice ou uma chave. Como a tabela interna existe até que o programa associado seja executado, os registros da tabela interna são descartados quando a execução do programa é finalizada. Portanto, as tabelas internas podem ser usadas como áreas de armazenamento temporário ou buffers temporários onde os dados podem ser modificados conforme necessário. Essas tabelas ocupam memória apenas em tempo de execução e não no momento de sua declaração.
As tabelas internas existem apenas quando um programa está em execução, portanto, quando o código é escrito, a tabela interna deve ser estruturada de forma que o programa possa fazer uso dela. Você verá que as tabelas internas funcionam da mesma maneira que as estruturas. A principal diferença é que as estruturas têm apenas uma linha, enquanto uma tabela interna pode ter quantas linhas forem necessárias.
Uma tabela interna pode ser composta por vários campos, correspondentes às colunas de uma tabela, da mesma forma que no dicionário ABAP uma tabela foi criada usando vários campos. Os campos-chave também podem ser usados com tabelas internas e, ao criar essas tabelas internas, eles oferecem um pouco mais de flexibilidade. Com tabelas internas, pode-se especificar uma chave não exclusiva, permitindo que qualquer número de registros não exclusivos sejam armazenados e permitindo que registros duplicados sejam armazenados, se necessário.
O tamanho de uma tabela interna ou o número de linhas que ela contém não é fixo. O tamanho de uma tabela interna muda de acordo com os requisitos do programa associado à tabela interna. Mas é recomendável manter as tabelas internas o mais pequenas possível. Isso evita que o sistema funcione lentamente enquanto se esforça para processar enormes quantidades de dados.
As tabelas internas são usadas para muitos propósitos -
Eles podem ser usados para armazenar resultados de cálculos que podem ser usados posteriormente no programa.
Uma tabela interna também pode conter registros e dados para que possam ser acessados rapidamente, em vez de ter que acessar esses dados de tabelas de banco de dados.
Eles são extremamente versáteis. Eles podem ser definidos usando qualquer número de outras estruturas definidas.
Exemplo
Suponha que um usuário deseja criar uma lista de números de contato de vários clientes de uma ou várias tabelas grandes. O usuário primeiro cria uma tabela interna, seleciona os dados relevantes das tabelas do cliente e, em seguida, coloca os dados na tabela interna. Outros usuários podem acessar e usar essa tabela interna diretamente para recuperar as informações desejadas, em vez de escrever consultas de banco de dados para realizar cada operação durante o tempo de execução do programa.