Message Area: Anzuzeigende Zeilen

Bei Web Dynpro Anwendungen mit Datenchecks können recht schnell sehr viele Meldungen entstehen, welche man dem User natürlich nicht vorenthalten möchte. In der Regel werden alle Messages in der Message Area am Stück angezeigt. In den meisten Fällen wird durch diese Darstellung das Layout der jeweiligen Applikation komplett „zerstört“. Zusätzlich ist eine Liste mit mehreren hundert Meldungen für einen User relativ unübersichtlich.

Mit ein paar Zeilen Coding kann man die Message Area allerdings dazu bewegen, nur einige wenige Meldungen auf einmal anzuzeigen. Wird die maximale Meldungsanzahl erreicht, dann wird automatisch ein Scrollbalken angezeigt und der User kann manuell zu den weiteren Nachrichten navigieren.

MSG-Area


Das folgende Beispiel lässt die Message Area maximal 5 Zeilen auf einmal anzeigen. Einfach folgenden Code in der INIT Methode des jeweiligen WINDOW einbauen.

* Init message controller
  DATA: obj_window TYPE REF TO if_wd_window_controller,
        obj_message_area TYPE REF TO if_wd_message_area.

  obj_window ?= wd_this->wd_get_api( ).
  obj_message_area = obj_window->get_message_area( ).

  obj_message_area->set_display_attributes( i_for_all_instances = ' '
                                            i_msg_lines_visible = '5'
                                            i_use_toggle_area   = ' '
                                            i_show_only_current = ' ' ).

  FREE: obj_window, obj_message_area.

Mit dem Parameter i_use_toggle_area kann die Ansicht der Message Area verändert werden. Setzt man diesen Parameter auf ABAP_TRUE, dann wird statt der Liste die Anzahl der Messages und ein SHOW LIST Button angezeigt. Dieser Button öffnet dann eine Tabelle mit den erzeugten Nachrichten.

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

Back to Top