[ABAP] ALV-Grid: Nach Drücken der Enter-Taste in die nächste Zeile springen

METHOD on_data_changed.
  DATA: lv_row_id TYPE lvc_s_row.
  DATA: lv_col_id TYPE lvc_s_col.
  DATA: lv_row_no TYPE lvc_s_roid.

* aktuelle Zelle holen
  o_alv->get_current_cell( IMPORTING
                             es_row_id = lv_row_id
                             es_col_id = lv_col_id
                             es_row_no = lv_row_no ).

* Wert für Zeile erhöhen
  lv_row_id-index  = lv_row_id-index  + 1.
  lv_row_no-row_id = lv_row_no-row_id + 1.

* akt. Zeile setzen,
* dabei prüfen, ob Zeilenindex nicht größer als Inhalt der internen
* Tabelle im ALV-Grid ist
  IF lv_row_id-index < lines( itab ).
    o_alv->set_current_cell_via_id( EXPORTING
                                      is_row_id    = lv_row_id
                                      is_column_id = lv_col_id
                                      is_row_no    = lv_row_no ).
  ENDIF.
ENDMETHOD.