Guias

Published on February 8th, 2011 | by Mauricio Cruz

4

ABAPZombie Guide to ABAP – Parte 5 – APPEND

O APPEND, este velho conhecido dos programadores. Todos os programadores ABAP já deram APPEND em alguma tabela alguma vez na vida.

Se você ainda não é programador, eu explico: O APPEND adiciona uma nova linha no final da sua tabela interna.

– Para tabelas do tipo STANDARD, ele simplesmente adiciona a nova linha no final da tabela.

– Para tabelas do tipo SORTED ele vai apendar contato que a nova linha siga a sequência da ordenação da tabela interna, e se a nova linha não criar uma linha duplicada.

– Para tabelas do tipo HASHED, desencane porque não dá para appendar.

Vamos ver o código do APPEND e algumas terminologias:

– O APPEND INITIAL LINE appenda uma linha vazia na tabela interna;
– O APPEND LINES OF tab1 TO tab2 adiciona linhas de uma tabela em outra tabela.;
– O APPEND wa1 TO tab1 SORTED BY faz o APPEND e na sequência já ordena a tabela do maior para o menor valor. Vale dizer que esse comando fica preso no tamanho máximo da área de memória da tabela (“INITIAL SIZE”), e se você ultrapassar o tamanho, o APPEND com SORTED BY apaga registros sem dó nem piedade. Comente a linha com INITIAL SIZE 10, e descomente a linha com INITIAL SIZE 2 para ver isso acontecendo.

Esse é um dos comandos essenciais no dia-a-dia de programadores. Mas ele ainda perde o IF em quantidade de utilizações 😛

Abraços!

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Google+Email this to someonePrint this page

Tags: ,


About the Author

é pasteleiro há alguns anos e criou o ABAPZombie junto com o Mauro em 2010. Gosta de filosofar sobre fundamentos básicos da programação e assuntos polêmicos. Músicas estranhas, artes marciais e games indies são legais. Zumbis não. Converse comigo no twitter e conheça o meu livro de ABAP!



4 Responses to ABAPZombie Guide to ABAP – Parte 5 – APPEND

  1. Custodio says:

    Ola pessoas,

    Parabens pelo blog, realmente nao ha muitas opcoes em Portugues, principalmente pra quem esta comecando. Tenho algumas observacoes aqui, e se o tempo deixar, farei sempre minha "revisao".

    – Para tabelas do tipo SORTED ele vai apendar contato que a nova linha siga a sequência da ordenação da tabela interna, e se a nova linha não criar uma linha duplicada.
    Na verdade, podera criar uma linha duplicada, se a tabela assim permitir (sorted table with non-unique key).

    De qualquer modo, se voce esta trabalhando com sorted table, esqueca o append e use insert, assim nao precisa se preocupar com duplicate keys.

    O APPEND wa1 TO tab1 SORTED BY faz o APPEND e na sequência já ordena a tabela do maior para o menor valor. Vale dizer que esse comando fica preso no tamanho máximo da área de memória da tabela (“INITIAL SIZE”), e se você ultrapassar o tamanho, o APPEND com SORTED BY apaga registros sem dó nem piedade.
    Correto, lembrando que o SORTED BY funciona apenas para standard tables.

    • Custodio, obrigado pelas observações!

      Sempre que você tiver ressalvas, pode postar, é exatamente pra isso que servem os comentários! Longe de mim ser o dono da verdade, o que eu quero é aprender também! hehe

      Um abraço!

  2. Custodio says:

    corrigindo meu comentario, ao usar INSERT vc continua tendo que se preocupar com duplicate key (se a tabela for WITH UNIQUE KEY), vc nao precisa se preocupar eh se a nova linha esta na sequencia do sort ou nao.

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to Top ↑