Call Transaction Method: In Call Transaction method we call the transaction in BDC program itself. If we want this program is executed by some one else then we need to expose the code to him. Call Transaction Method Works in Foreground. No Display Mode is equal to Background Processing in call transaction method. Call Transaction Method can handle only one Application at a time. In Call Transaction Method no Log File by Default. We have to design Log File by using BDCMSGCOLL. Call Transaction Method Updates the Database Asynchronously. (Note: Asynchronous updation is Faster than Synchronous)
Batch Session Method: On the other hand in batch session method we create a session which can be executed at any time by any authorized person without exposing the code of the program. Session Method works in Background and as well as in Foreground. Session Method can handle Multiple Applications at a time. Session Method holds Log File by Default. Session Method Updates the Database Synchronously.
End of the selection event is mostly used when we are writing HR-ABAP code. In the HR-ABAP code, data is retrieved in the start of selection event and printing on the list and all will be done at the end of the selection event.