2023 Sep 29 2:45 PM
Hi,
there is a button on ALV and it is changing the cells of selected rows editable or non editable.
refresh_table_display method is refreshing properly but the all rows of ALV are being refreshed.
so i want to refresh only selected rows in ALV because there are too much rows so waiting until finished the refreshing.
is there a way to refresh the only selected rows?
thanks in advance
2023 Sep 29 4:58 PM
I do that frequently and there's no issue, the refresh is done smoothly, no blinking, fast, etc.
What exact problem do you have?
NB: just in case, it depends on your exact logic, you change either the requested fields during the DATA_CHANGED* events, or anything in the internal table and you refresh.
2023 Sep 30 12:23 PM
hello
first define this method in definition part of your class --> data_changed FOR EVENT data_changed OF cl_gui_alv_grid IMPORTING er_data_changed.
and in the implementation part of your method add this code to get data changed in the alv
METHOD data_changed.
er_data_changed->mt_mod_cells .
* above line return rows you need to refresh
ENDMETHOD.
2023 Sep 30 8:00 PM
If I understand well the question, I think that the OP program is changing directly the internal table, so it doesn't answer exactly the question asked, which is about selected lines, not about data changed manually in the grid by the user.