O que é a cláusula NESTING LEVEL no comando SELECTION-SCREEN?

No caso de programas executáveis (ou do tipo relatório ou report), temos muitos recursos para contruir uma tela de seleção de maneira programática, ou seja, usando código ABAP e não o Screen Painter.

Para fazer telas com tabs é necessário contruí-las com subcreens, usando o comando SELECTION-SCREEN BEGIN OF SCREEN.

Uma das cláusulas muito específicas é a chamada NESTED LEVEL, usada para redimensionar frames dentro de uma tab.

Veja esse exemplo, sem o uso da cláusula NESTED LEVEL:


Figura 1 – Selection screen sem NESTED LEVEL.

Essa tela de seleção é resultado do código abaixo:

Agora, usando NESTED LEVEL, a tela de seleção fica assim:

Figura 2 – Selection screen com NESTED LEVEL.

Isso é resultado do código abaixo:

Conclusão

Quando usamos o comando NESTED LEVEL, o screen processor redesenha a os frames para evitar a barra de rolagem horizontal.

O número que vem após o NESTED LEVEL é o nível de ajuste do frame e vai até 4.