Eingabefelder

Tabellen

Drucktasten

Meldungen

Baum

Langtext

keepAlive

Taglib Demo: Tabellen

Beispiel  Tabellenselektion
 
Dem Tabellenelement kann ein Exit mitgegeben werden. Das ist ein Objekt, das das Interface zif_table_exit implementiert. Üblicherweise verwenden Sie für diese Präsentierungsaufgabe einen Viewkontext. Das Interface besteht aus einer einzigen Methode render_cell() Sie können damit das Rendern von Zellen selbst übernehmen.

Der folgende Exit stellt den Inhalt des text-Feldes in roter Schriftfarbe dar, wenn es sich um eine Meldung vom Typ E handelt:


Beispielcode

1.) Auf dem View

<z:table binding="//test/gt_test" exit="<%=ctx%>">
  <z:column name="type" listPos="10"/>
  <z:column name="text" listPos="20"/>
</z:table>

2.) Methode render_cell()

method zif_table_exit~render_cell .

  data: lv_gif type string value '<img src="s_s_led#.gif" width="16" height="14">',
        lv_text type string value '<td style="color:red">#</td>'.

* DDIC-Zeilentyp
  field-symbols: <ls_row> type zt100.

* Nur für die gewünschte Tabelle
  check iv_table_id eq 'M__test__gt_test'.

* Feldzugriff ermöglichen
  assign is_row to <ls_row>.

  case is_field-fieldname.
    when 'TYPE'.
* Regel 1: Fehlertyp als GIF darstellen (nur Inhalt geändert)
      replace '#' in lv_gif with <ls_row>-type.
      ev_html = lv_gif.
      ev_done = zif_table_exit~co_content_done.
    when 'TEXT'.
      if <ls_row>-type eq 'E'.
* Regel 2: Nur im Fehlerfall: Meldung rot anzeigen (ganze Zelle geändert)
        replace '#' in lv_text with <ls_row>-text.
        ev_html = lv_text.
        ev_done = zif_table_exit~co_all_done.
      endif.
  endcase.

endmethod.

Ergebnis

Typ Nachrichtentext
No DDIC Table Names Given to the Selection Screen
Choose a valid history sheet item
ADK: Error deleting in archiving classes - internal error
Missing cost elements
Line item is not open ( &1 &2 &3 &4 )
Programmfehler bei der Ausführung von Hintergrundjobs
Only maintenance- or service notifications permitted
No profile found in sales document &1 &2
Table is locked (see restart log)
Last business partner reached
You are already processing contract account &1
Define a function module for correspondence activity &1
Nametab is incomplete
Enter an end date
No bank data for business partner &1 exists
Select items with total amount larger than zero
The bank details already exist under the name &1
Documents were posted under reconciliation key &1
Keine Objektkatalogeinträge für Hierarchien in DWB vorhanden
No alternative/additional recipient defined