Conheça o método SET_SELECTION_MODE da classe CL_SALV_SELECTIONS

O método SET_SELECTION_MODE da classe CL_SALV_SELECTIONS é utilizado para determinar qual o tipo de seleção de dados no ALV criado com CL_SALV_TABLE.

Quando criamos um ALV usando essa classe mencionada, podemos controlar a maneira como o usuário interage com nosso grid. Podemos permitir que ele selecione apenas uma célula ou várias, apenas uma linha ou várias, apenas uma coluna ou várias ou não permitir que ele selecione nada, apenas aprecie sua obra prima. rsr

Exemplo para utilizar SET_SELECTION_MODE.

*”Declaramos o objeto
DATA: r_tpselalv TYPE REF TO cl_salv_selections.

*”Atribuímos a ele o tipo desejado
r_tpselalv = r_salv->get_selections( ).
r_tpselalv->set_selection_mode( vl_tp_selecao ).

*”Onde vl_tp_selecao poderá ser:
* 0 –> NONE –> Sem seleção permitida
* 1 –> SINGLE –> Seleção de linha individual
* 2 –> MULTIPLE –> Seleção múltipla
* 3 –> CELL –> Seleção de células. Essa opção habilita a velha e boa coluna “MARK”.
* 4 –> ROW_COLUMN –> Permite seleção de linhas e colunas. Essa opção habilita a velha e boa coluna “MARK”.

Simples assim, como o objeto é criado por referência, todas as modificações feitas no objeto r_tpselalv são refletidas imediatamente no ALV.

A classe CL_SALV_SELECTIONS, que trabalha em conjunto com a nossa famosa CL_SALV_TABLE, permite que você verifique qual o tipo de seleção atribuído ao ALV, qual a célula, linha ou coluna está selecionada, ou permite ainda que você mostre o ALV já com as células mais relevantes selecionadas.

Imagine que em um ALV de resultado de determinada operação o usuário costuma selecionar duas ou mais colunas desse ALV por algum motivo, você pode usar essa classe para que o ALV seja gerado já com essas colunas selecionadas para que o usuário somente pressione o Ctrl+C. Boa hein…

SET_SELECTION_MODE*Importante: Esse método deve ser utilizado depois de o ALV estar instanciado em memória e antes dele ser mostrado em tela.

No próximo post da sequência mostrarei como selecionar os registros selecionados graças ao que vimos aqui.

Vejo você em breve, abraços,

LNunes

Quer ver uma série de posts especifica para a classe CL_SALV_SELECTIONS? Cadastre-se e deixe um comentário!

* Campo obrigatório