Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Performance issue with set_table_for_first_display

Former Member
0 Likes
1,898

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

1 ACCEPTED SOLUTION
Read only

tharu
Contributor
0 Likes
1,622

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

9 REPLIES 9
Read only

tharu
Contributor
0 Likes
1,623

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

Read only

Former Member
0 Likes
1,622

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

Read only

0 Likes
1,622

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

Read only

Former Member
0 Likes
1,622

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

Read only

Former Member
0 Likes
1,622

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

Read only

0 Likes
1,622

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...

Read only

Former Member
0 Likes
1,622

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.

Read only

Former Member
0 Likes
1,622

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.

Read only

Former Member
0 Likes
1,622

Hi