Utilizando o método CL_SALV_TABLE => FACTORY
Com o método CL_SALV_TABLE=>FACTORY você irá instanciar o ALV em memória como em um passe de mágicas.
Descrição do FACTORY:
- Instancia o objeto ALV em memória utilizando como referência a tabela interna desejada.
Parâmetros:
- LIST_DISPLAY – Determina se o ALV será mostrado como uma lista da SE16 ou como um GRID (muito mais agradável aos olhos do usuário);
- R_CONTAINER – Determina se o ALV deverá ser mostrado em uma área de tela especifica;
- CONTAINER_NAME – Nome do container onde será mostrado o ALV;
- R_SALV_TABLE – Objeto ALV do tipo CL_SALV_TABLE;
- T_TABLE – Tabela interna que contém os dados;
Exemplo de utilização:
*”Objetos
DATA: r_salv TYPE REF TO cl_salv_table.
*”Irá instanciar o objeto R_SALV utilizando o layout da tabela interna TI_DADOS.
CALL METHOD cl_salv_table=>factory
IMPORTING
r_salv_table = r_salv
CHANGING
t_table = ti_dados.
Essa é a forma mais simples de se utilizar o método, você informa a origem dos dados e ele te devolve um objeto ALV instanciado.
Lembrando que, ele apenas será mostrado em tela após a chamada do método DISPLAY.
Teste os demais parâmetros e veja como será a reação a cada um deles, se tiver alguma dificuldade me avise e complemento o post.
Abraços,
LNUNES