ALV ListViewer Refresh

In der Regel kümmert sich das Web Dynpro Framework um die Aktualisierung der eingebundenen ALV Tabellen. Hin und wieder kann es allerdings notwendig sein, einen manuellen Refresh der Tabelle auszulösen.

Ich möchte anhand eines kleinen Beispiels zeigen, wie einfach so ein manueller Refresh ausgelöst werden kann. Als erstes holt man sich die Referenz auf die ALV Table API. Hat man diese im Zugriff, dann ist die halbe Miete bereits erbracht. Danach muss dem ALV noch mitgeteilt werden, welche Art von Refresh man durchführen möchte. Leider kann man den Parameter nicht direkt an die Refresh Methode übermitteln, sondern muss den Weg über eine Struktur gehen. Dies soll uns aber nicht von unserem Vorhaben abhalten.

METHOD refresh_table.
  DATA: obj_table_api TYPE REF TO iwci_salv_wd_table.
  DATA: wa_in TYPE if_salv_wd_table=>s_type_param_refresh_in.

* Get table reference
  obj_table_api = wd_this->wd_cpifc_cmp_check_data_table( ).

* Refresh table
  MOVE if_salv_wd_table=>default TO wa_in-dummy.
  obj_table_api->refresh( wa_in ).

  FREE: obj_table_api.
  CLEAR: wa_in.
ENDMETHOD.

Im Interface if_salv_wd_table findet man alle möglichen Refresh Parameter als Klassenattribute.

Posted on 20. März 2015 in Blog, Web Dynpro/ABAP

Back to Top