We can do any number of modification to the fieldcatalog and layout of ALV grid even after it has been displayed on the screen, we can hide certain columns , change the column text, change the column position etc. We can achieve all this simply by using the following methods of the class CL_GUI_ALV_GRID:

For fieldcatalog modification:


get_frontend_fieldcatalog

set_frontend_fieldcatalog

For layout modification:

get_frontend_layout

set_frontend_layout

Steps to change the fieldcatalog after first display:

  1. Trigger the PAI using pushbutton or some other manner.
  2. Now for this triggered function code get the existing fieldcatalog using the method get_frontend_fieldcatalog.
  3. Make the required modification to the fieldcatlog.
  4. Now in order to reflect these changes to the ALV grid make use of the method set_frontend_fieldcatalog.
  5. Call the method refresh_table_display of class CL_GUI_ALV_GRID to refresh the ALV display so as to show the modifications done to the ALV grid.

The ALV layout can be changed in a similar manner using the get and set methods meant for layout.


Example:


This is the initial display of ALV gird.

/wp-content/uploads/2014/03/5_400253.png

On clicking the button Technical Name the existing column headings will be replaced by their equivalent technical name.


/wp-content/uploads/2014/03/6_400254.png


On clicking the Layout 1 button the existing layout will be changed to Zebra layout.


/wp-content/uploads/2014/03/7_400255.png


Similarly you can present multiple layout and display options to the user using this technique.



To report this post you need to login first.

Be the first to leave a comment

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

Leave a Reply