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
Inform System Specialist (data base error)
Posting did not take place for &1
Report does not permit placeholders
Closed fiscal years cannot be reset
Unable to delete payment card &1 from business partner &2
Enter a to-date that is after the last entry
All loan items have to be posted to one company code
Choose an application area
Table still has no fields
Budget account assignments were not entered correctly.
Choose a unique selection for InfoObject &1
Document &1: IVA already reset with &2 &3 due to reversal
Entry &1 already exists
Enter the date
No table specified
Transferred currency &1 is not the same as area currency &2
No valid reconciliation keys selected
Keine Analyseprozesse gefunden
Analyseprozess '&1' unbenannt in '&2'
Keine noch archivierten Requests zur Reorganisation gefunden