Skip to Content

Forget the END-OF-SELECTION

That’s right. Forget the ENDOFSELECTION syntax. I see at nine of ten ABAP reports, the developer uses this statement incorrectly (and without need).

First: it’s obsolete!

/wp-content/uploads/2014/05/print3_463452.jpg

Second: the statement’s intended only for executable programs that are associated with a logical database (most HR reports, for example).

In this case, the event is triggered so the logical database finishes processing the data.

So if you’re just creating a report for reading tables and extracting data (without logical database), forget the ENDOFSELECTION.

Third: ENDOFSELECTION not “closes” the processing block STARTOFSELECTION.

/wp-content/uploads/2014/05/print4_463453.jpg

The STARTOFSELECTION is an event of the flow (block) default processing of an executable program. The event is called after any standard selection screens have been processed.

If you use the ENDOFSELECTION, as above, into an executable program without being associated with a logical database, it will be called immediately after the completion of processing the STARTOFSELECTION block, but there’s no need!

Just this works:

/wp-content/uploads/2014/05/print5_463466.jpg

Regards

Douglas Santos

Source:

http://help.sap.com/abapdocu_702/en/abenabap_submit_report.htm

Obsolete Language Elements (SAP ECC 6.0 Help – ABAP Keyword Documentation)

***[PT-BR]***

Esqueça o ENDOFSELECTION.

É isso mesmo. Esqueça a sintaxe o ENDOFSELECTION. Nove de cada Dez relatórios ABAP que vejo, o desenvolvedor usa essa declaração de forma incorreta (e sem necessidade).

Primeiro: é obsoleto!

/wp-content/uploads/2014/05/print3_463452.jpg

Segundo: a declaração destina-se apenas para programas executáveis ​​que estão associados a um banco de dados lógico (a maioria dos relatórios de RH, por exemplo).

Nesse caso, o evento é executado assim que o banco de dados lógico termina o processamento dos dados.

Então se você está apenas criando um relatório para leitura de tabelas e extração de dados (sem banco de dados lógico), esqueça o ENDOFSELECTION.

Terceiro: o ENDOFSELECTION não “termina” o bloco de processamento STARTOFSELECTION.

  /wp-content/uploads/2014/05/print4_463453.jpg

O STARTOFSELECTION é um evento do fluxo (bloco) de processamento padrão de um programa executável. O evento é chamado após o processamento da tela de seleção.

Se você utilizar o ENDOFSELECTION, como no exemplo acima, em um programa executável sem estar associado a um banco de dados lógico, ele será
chamado logo após o fim do processamento do bloco STARTOFSELECTION, mas não há necessidade!

Apenas isso funciona:

/wp-content/uploads/2014/05/print5_463466.jpg

Att.

Douglas Santos

Fonte:

http://help.sap.com/abapdocu_702/en/abenabap_submit_report.htm

Obsolete Language Elements (SAP ECC 6.0 Help – ABAP Keyword Documentation)

4 Comments
You must be Logged on to comment or reply to a post.