Skip to Content

Multi Select Rows in Webdynpro ALV with out using ctrl key.

Hi all,

I saw many people asking how to do a multi-selection on a webdynpro ALV without using ctrl key.

First of all it isn’t a straight forward method but does the job.

So if you are in a situation where you have to do multi-selection without ctrl key, this document should help you.

Before I start this document I assume that you know how to create an ALV in webdynpro.

Step 1:Create an ALV and while initializing the ALV ( In my case its in WDDOINIT method ) set the selection mode as MULTI./wp-content/uploads/2013/05/doinit_221180.jpg

Step 2:Create a global table as an attribute to the controller.

global table.jpg

GT_INDEX is of type ZINDEX_T

ZINDEX_T has the line type ZINDEX_S

and ZINDEX_S has the structure:


Step 3:Implement the event handler method on_lead_select of the ALV


Step 4:Write the following code in the method.

DATA: ls_index TYPE zindex_s,
         lv_index TYPE i.
   DATA lo_nd_table_node TYPE REF TO if_wd_context_node.
   lo_nd_table_node = wd_context->get_child_node( name = wd_this->wdctx_table_node ).
   READ TABLE wd_this->gt_index WITH KEY idx = r_param->index TRANSPORTING NO FIELDS.
   IF sy-subrc = 0.
     DELETE wd_this->gt_index INDEX sy-tabix.
     CLEAR ls_index.
     ls_index-idx = r_param->index.
     APPEND ls_index TO wd_this->gt_index.
   LOOP AT wd_this->gt_index INTO ls_index.
     lv_index = ls_index-idx.
         flag  = abap_true    " Value with Which Property Is to Filled
         index = lv_index    " Index of Context Element


Now you go and click on the rows required without pressing ctrl key to select it and click again to deselect it.


Thank you.

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