"
Categoria > Dicas
Apoiado por

MOVE-CORRESPONDING entre duas tabelas respeitando a chave

O Abapinho não tem falado muito sobre o 7.40 porque as suas novidades têm já sido amplamente descritas em vários sites. Tentamos não inventar a roda.

Mas há pequenas pérolas úteis que ainda são pouco conhecidas. Esta é sobre uma delas.

Ler o resto do artigo! »

Obtém valores únicos de campo de tabela interna

Em SQL consegue-se obter os valores únicos de um campo recorrendo ao DISTINCT. Quando os dados já estão numa tabela interna, antes do ABAP 7.40 tinha de se fazer um LOOP e um COLLECT.

Mas agora que vivemos em tempos mais modernos, há uma forma simples e elegante que consegue o mesmo com um único comando.

Ler o resto do artigo! »

Como correr uma CL_GUI_ALV_GRID em background

Alguém decidiu correr em background uma ALV editável. Deu dump. A solução é simples mas pouco óbvia.
Ler o resto do artigo! »

Usa CL_GUI_ALV_GRID sem ter de criar um ecrã

Hoje em dia é raro usar o CL_GUI_ALV_GRID porque uso quase sempre a SALV. Mas quando é preciso fazer ALVs editáveis continuo a recorrer à CL_GUI_ALV_GRID. Durante muito tempo julguei que, para a usar, tinha de criar um ecrã com um container, o que é uma chatice. E como eu uso ABAP OO, precisava de criar um function group para alojar o ecrã e um function module para o chamar, o que era outra chatice.
Ler o resto do artigo! »

Como fazer uma ALV grid ocupar a janela inteira

Às vezes é nas coisas mais básicas que se perde mais tempo. Por exemplo, recentemente foi preciso que uma ALV grid ocupasse automaticamente a janela inteira. Mas como? Mas como? Mas como?
Ler o resto do artigo! »

Código demo da SAP todo junto

Nos anos 80, quando eu era pequenino, tinha de fazer LOAD "" e depois esperar vários minutos a olhar para riscas numa TV e a ouvir ruído antes que um jogo do ZX Spectrum ficasse pronto a jogar. Muito anos mais tarde, quando já tinha um PC, descobri um emulador que tinha um menu com centenas de jogos do ZX Spectrum. Só tinha de escolher um da lista e começar a jogar instantaneamente.

Ler o resto do artigo! »

Passei a comentar com ” em vez de *

Sempre usei * para comentar o código. Só usava ” quando precisava de usar pseudo-comentários ou adicionar um pequeno comentário no final da linha.

Mas há pouco tempo aprendi que faz muito mais sentido usar “.

Ler o resto do artigo! »

É tão simples converter uma MESSAGE numa EXCEPTION

Há alguns anos atrás mostrei como se podia converter uma MESSAGE normal numa excepção tipificada. Entretanto o ABAP evoluiu um bocadinho e agora, na versão 7.40, aquela solução complexa já não é necessária.

Ler o resto do artigo! »

Conteúdo de tabela interna numa ALV

Não sei há quanto tempo é que isto está disponível mas só agora descobri que é muito fácil ver numa ALV o conteúdo de uma tabela interna durante debug.

Ler o resto do artigo! »

Atalhos mágicos para menus

Se tu que estás a ler isto achares que tudo o que está escrito no Abapinho é literalmente verdade, o que te vou dizer a seguir vai desiludir: quando disse mágico não quis dizer que era sobrenatural. É só uma forma mais abrilhantada de dizer que é surpreendente e inesperado. Tomei esta liberdade um bocado como quando dizes “estou morto de sede” e no entanto ainda estás vivo. Tendo clarificado isto, podemos continuar.

Ler o resto do artigo! »

Atalho para gravar lista em ficheiro local

O SAP está replecto de recantos refundidos e rebuscados raramente reconhecidos que o Abapinho se regozija por revelar.

O comando %pc é equivalente à opção de menu Sistema/Lista/Gravar/File local:

Ler o resto do artigo! »

IF sem IS INITIAL em métodos booleanos

O sistema do cliente onde trabalho actualmente foi finalmente actualizado para o 7.50 e, depois de tantos anos preso ao ABAP convencional, posso desfrutar as maravilhas introduzidas no 7.40.

São às dúzias essas maravilhas, e não vou começar aqui a fazer artigos sobre cada uma porque já existem artigos espalhados pela net sobre quase todas elas o Abapinho faz sempre o possível por ensinar algo novo ou, pelo menos, pouco conhecido.

Mas há uma singela funcionalidade que, não sendo nada de extraordinário, me agrada: já não é preciso fazer IS INITIAL no comando IF quando a condição é um método que retorna um booleano.

Ler o resto do artigo! »

Variantes de activação da SAAB

Em tempos falámos na SAAB e nas vantagens de a utilizar para melhor conseguir analisar e descobrir problemas no nosso código. Nesse artigo não expliquei uma coisa que é realmente importante: variantes de activação.

Ler o resto do artigo! »

Enhancements implícitos em estruturas de dados

Já todos usámos enhancements implícitos para adicionar código ao início ou final de funções, forms ou métodos standard. Mas é menos conhecido o facto de que também podemos adicionar campos a estruturas de dados, estejam elas declaradas como TYPES ou ou directamente como DATA.

Ler o resto do artigo! »

Comentário sobre comentários

Na escola aprende-se que o código deve ter sempre comentários. Depois, na vida real, descobrimos que nem toda a gente prestou atenção na escola.

Sempre tive o cuidado de comentar os vários passos do meu código, especialmente as partes mais obscuras ou que não são auto-explicativas.

Mas depois de ler o livro Clean Code do Uncle Bob, a minha opinião mudou. Hoje acredito que quanto menos comentários melhor. E no entanto não acho que esta mudança seja contraditória.

Ler o resto do artigo! »


Acerca do Abapinho
O Abapinho é suportado pelo WordPress
Artigos (RSS) e Comentários (RSS).