Vous êtes sur la page 1sur 24

Capacitação ABAP

ALV

Pensando grande para você, pensando grande como você.

Ver. 1.1.1107 fevereiro de 19


Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Conceitos gerais

O Abap List Viewer(ALV) é uma ferramenta que padroniza e


simplifica o uso de listas e relatórios no sistema R/3 tanto para o
desenvolvedor quanto para o usuário que interage com o relatório.

O ALV através de suas funções e estruturas torna o


desenvolvimento mais simples na medida que economiza
significativas linhas de código como por exemplo no tratamento de
quebras, totais, subtotais, cores e outras vantagens.

fevereiro de 19 2
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

ALV List

fevereiro de 19 3
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

ALV List

fevereiro de 19 4
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

ALV GRID

fevereiro de 19 5
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

ALV GRID

fevereiro de 19 6
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV


 TYPE-POOL SLIS:
O primeiro passo, é declarar o TYPE-POOL SLIS.
Um TYPE-POOL é semelhante a um INCLUDE, a única diferença
está no fato de que em um TYPE-POOL somente é permitido a
declaração de constantes e tipos.

 I_CALLBACK_PROGRAM:
Neste parâmetro é passado o nome do programa que faz a
chamada do ALV. A variável de sistema SY-REPID contém o
nome do programa que está em execução

fevereiro de 19 7
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV


 IT_FIELDCAT:
Antes de definir os valores dos campos da IT_FIELDACAT, é
necessário declarar uma tabela interna do tipo
SLIS_T_FIELDCAT_ALV.

 Neste parâmetro são definidos quais as colunas que serão


exibidas bem como suas características. A IT_FIELDCAT deve
ter no mínimo os campos FIELDNAME e TABNAME
preenchidos.

fevereiro de 19 8
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV

 T_OUTTAB:
Tabela interna que contém os dados que serão impressos no
relatório. Somente os campos declarados no parâmetro
IT_FIELDCAT serão exibidos no relatório.

fevereiro de 19 9
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Exercício
 Utilizando o programa anterior, crie um novo radiobutton com a
decrição Saída em ALV.
 Imprimir os campos selecionados em um relatório ALV GRID,
com o campo EBELN marcado como chave na fieldcat.

fevereiro de 19 10
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV


 WA_LAYOUT:
Definir o LAYOUT do ALV é muito fácil. Para tal, basta preencher
uma WORK AREA e passá-la no parâmetro IS_LAYOUT da
função.
A maioria dos campos dessa WORK AREA são FLAGs que
quando preenchidos: habilitam, desabilitam ou implementam
funcionalidades.
O primeiro passo é declarar uma WORK AREA do tipo
SLIS_LAYOUT_ALV.

fevereiro de 19 11
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV


 WA_LAYOUT:
Após declarar a WORK AREA, basta atribuir valor aos seus
campos. Nas tabelas abaixo, segue a listagem de todos os
campos da WORK AREA:

fevereiro de 19 12
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Exercício
 Utilizando programa ALV criado anteriormente, criar uma
constante com o valor X e alimentar a estrutura criada para o
layout com os valores abaixo:
 zebra --> Listrado
 no_totalline --> Sem linha de Total
 flexible_key --> Campos Chaves flexiveis
 no_unit_splitting --> Sem separador de Totais
 colwidth_optimize --> Largura ideal das Col.
 confirmation_prompt --> Confirmar Saída da lista

fevereiro de 19 13
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV


 IT_SORT:
O critério de ordenação pode ser definido pelo desenvolvedor,
quando este está desenvolvendo o ALV.
Quando a ordenação é definida em tempo de desenvolvimento,
é possível definir subtotais e quebras entre os itens do relatório.
O primeiro passo é declarar uma Tabela Interna do tipo
SLIS_T_SORTINFO_ALV.

fevereiro de 19 14
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV

fevereiro de 19 15
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV

fevereiro de 19 16
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Exercício
 Utilizando programa ALV criado anteriormente, definir uma
ordenação crescente pelo campo Fornecedor e calcular os
subtotais:

fevereiro de 19 17
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV


 Definindo o PF-STATUS:
Este evento permite definir a STATUS GUI (Graphical User
Interface) utilizada pelo ALV. Em outras palavras: é possível
personalizar a barra de ferramentas adicionando novas
funcionalidades ou ocultando botões STANDARDs.

Criando o FORM para o evento PF-STATUS


Quando o evento PF-STATUS é disparado, o ALV executa o
FORM associado a este evento. Sendo assim, o primeiro passo
é a criação do FORM.
O FORM recebe um parâmetro do tipo SLIS_T_EXTAB.

fevereiro de 19 18
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV

fevereiro de 19 19
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV


 Dicas:
Quando novos botões forem adicionados à barra de ferramenta,
o ideal é copiar o STATUS GUI padrão do ALV através da
transação SE41 e depois modificar a cópia.

Para saber qual o STATUS GUI que um programa está usando,


acesse o menu: Sistema Status... O nome do STATUS GUI está
descrito no campo STATUS DA INTERFACE, e o nome do
programa onde está declarado a STATUS GUI estão descrito no
campo PROGRAMA (GUI).

fevereiro de 19 20
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Exercício
 Utilizando programa ALV criado anteriormente, copiar o
STATUS GUI padrão do ALV e criar um botão chamado ELIM.
 Adicionar o símbolo de deletar neste botão  ICON_CANCEL.

fevereiro de 19 21
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV


 Definindo o USER-COMMAND:
Este evento é chamado sempre que um botão da barra de
ferramenta é clicado. No ALV é possível definir uma rotina para
customizar este evento. Entretanto, a rotina só será chamada se
o botão da barra de ferramenta clicado pelo usuário for um
botão não STANDARD do ALV. Em regra geral, os botões
STANDARDs do ALV começam com o caractere “%”.
Usualmente, este evento é customizado no ALV quando botões
não STANDARDs são inseridos na barra de ferramenta.

fevereiro de 19 22
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Construindo o primeiro ALV


Criando o FORM para o evento USER-COMMAND
Quando um botão não STANDARD da barra de ferramenta é
clicado, o ALV executa o FORM associado ao evento USER-
COMMAND. Sendo assim, o primeiro passo é a criação do
FORM.

fevereiro de 19 23
Argentina • Brasil • Chile • Colômbia • Costa Rica • Equador • México • Peru • Uruguai

Exercício
 Utilizando programa ALV criado anteriormente, criar lógica no
botão ELIM, para que a linha selecionada no saída do relatório
seja eliminada.

Dica:
Antes deve ser criado um campo BOX para definiar a linha que
foi selecionada na sapida do relatório, para tal adicione os dois
campos abaixo na tabela de layout:
box_fieldname = 'BOX'. " Nome do Campo
box_tabname = 'IT_SAIDA'. "IT Contém o Campo BOX

E o campo abaixo na estrutura da tabela de saída:


box(1) TYPE c, " CHECKBOX

fevereiro de 19 24

Vous aimerez peut-être aussi