2015 Jan 24 12:51 PM
I want to know that performance wise which procedure is best to display simple reports (Single screen output) from the below :
1. set_table_for_first_display &
2. Reuse_alv_grid_display.
While using set_table_for_first_display we have to define screen.
Will it take more time because of the screen (Screen Loops)?
Please give me your suggestions.
Thank You,
Uday
2015 Jan 24 6:33 PM
Dear Uday,
There is no considerable performance changes b/w these two. But I use "set_table_for_first_display" because it is newer and mostly seen procedure these days.
"Reuse_alv_grid_display" is bit old and "set_table_for_first_display" is on OOP. and has more features.
REUSE_ALV_GRID_DISPLAY is a Function Module and SET_TABLE_FOR_FIRST_DISPLAY is a method of class ref to CL_GUI_ALV_GRID.When using the class, it is meant to be used inside of a custom container in your screen, so you could have more than one.
Thanks
Tharaka
2015 Jan 24 6:33 PM
Dear Uday,
There is no considerable performance changes b/w these two. But I use "set_table_for_first_display" because it is newer and mostly seen procedure these days.
"Reuse_alv_grid_display" is bit old and "set_table_for_first_display" is on OOP. and has more features.
REUSE_ALV_GRID_DISPLAY is a Function Module and SET_TABLE_FOR_FIRST_DISPLAY is a method of class ref to CL_GUI_ALV_GRID.When using the class, it is meant to be used inside of a custom container in your screen, so you could have more than one.
Thanks
Tharaka
2015 Jan 30 5:44 AM
Hi Fernando,
Thank for your reply. I am very clear about REUSE_ALV_GRID_DISPLAY and SET_TABLE_FOR_FIRST_DISPLAY.
Basically I want to know performance wise issue like we are creating a screen to display. Will it take more time to execute because of the screen loops?.
Uday
2015 Jan 30 5:51 AM
Dear Uday,
It wont take more time as per your requirements. All these methods are SAP built and being used over a period of time.
I use SET_TABLE_FOR_FIRST_DISPLAY for my developments.
your rewards points may be usefull !
Thanks
Tharaka
2015 Jan 30 6:05 AM
Hello Fernando,
We are creating a screen to display while using SET_TABLE_FOR_FIRST_DISPLAY.
I want to know the performance of the program when creating a program with screen??
Uday
2015 Jan 30 6:13 AM
I believe you can create an ALV without even creating a screen. You could use cl_gui_custom_container=>screen0 in i_parent in SET_TABLE_FOR_FIRST_DISPLAY. Give a try
2015 Jan 30 6:14 AM
Hello Uday,
You can measure the performance of the report using ABAP performance monitoring.
ex: SAT / ST05 etc..
My view is there is no drawbacks in performance when using Set_table_for_first_display...
2015 Jan 30 6:28 AM
Hi Uday,
In my view SET_TABLE_FOR_FIRST_DISPLAY
is a good choice to show 3 to 4 outputs in one single screen. For this method
we are creating a screen/container but it won't make any performance delay.
While comparing REUSE_ALV_GRID_DISPLAY
with the class method, REUSE_ALV_GRID_DISPLAY will take more time since it is a
FM. At
runtime, the system will load the complete function group into your session.
Another option you can choose is SALV.
Demo Program: SALV_DEMO_TABLE_LAYOUT (There are many search in ABAP editor
with SALV*).
You do not need to create a container as it automatically creates. It also
does not have a draw back as OOPS ALV i.e. a dump is background. Future of ALV
is SALV.
Class you can use is: CL_SALV_TABLE.
Also, one more advantage of this is you do not need to create a field catalog.
You only need to pass the internal table and not necessarily the structure
should exist in DDIC, structure can be declared in your program too.
Hope it helps.
2015 Jan 30 6:14 AM
I guess using set_table_for_first_display will be slight faster than Reuse_alv_grid_display. Because
calling methods of global classes is always faster than calling function modules.
And about screen, in case of FM we are using standard screen while in oops we are using a custom screen, so that should not make any difference.
2015 Jan 30 6:26 AM