!--a11y-->
Bedeutung
Mit dem Funktionsbaustein WWW_HTML_MERGER ersetzen Sie Platzhalter in HTML-Templates durch Daten. Wir empfehlen, daß Entwickler von WebRFC-Anwendungen diesen Funktionsbaustein verwenden, anstatt Templates aus der Datenbanktabelle WWWDATA abzurufen und die Platzhalter direkt im Coding zu ersetzen.

In zukünftigen R/3-Releases kann sich das Verfahren für die Ablage der Templates ändern.
Schnittstelle
WWW_HTML_MERGER hat folgende Parameter:
IMPORTING-Parameter |
Funktion |
TEMPLATE |
Template-Kennung in WWWDATA |
MERGE_TABLE |
Tabelle, die mit dem Template abgemischt werden soll |
MERGE_TEXTPOOL |
Textpool |
EXPORTING-Parameter |
Funktion |
HTML_TABLE |
Der resultierende HTML-Quelltext |
Funktionsbausteine, die WWW_HTML_MERGER aufrufen, müssen:
den Template-Namen übergeben
die Platzhalter und der generierte HTML-Quelltext an den Parameter MERGE_TABLE übergeben
eine Referenz an die Tabelle angeben, wo das resultierende HTML-Dokument abgelegt werden soll
WWW_HTML_MERGER ruft das Template aus der Datenbank ab. Für jede Zeile in MERGE_TABLE sucht der Funktionsbaustein vom Template-Anfang an nach den angegebenen Platzhaltern.
Wird der Platzhalter gefunden, fügt WWW_HTML_MERGER den im Feld html (tatsächlich eine Tabelle) stehende HTML-Quelltext in das Template ein.
Wird der Platzhalter nicht gefunden, überspringt WWW_HTML_MERGER die nächste Zeile in MERGE_TABLE.
Es ist möglich, mehrere Zeilen mit dem gleichen Platzhalternamen in MERGE_TABLE zu haben. Gleichzeitig kann der gleiche Platzhalter in einem Template mehrmals vorkommen.

MERGE_TABLE unterliegt folgenden Regeln:
Parameter MERGE_TABLE
MERGE_TABLE ist eine interne Tabelle mit folgender Struktur:
Feldname |
Feldtyp |
Bedeutung |
Beispiel |
name |
char(30) |
Platzhalterwert |
< !platzhalter!> |
command |
char(1) |
Legt fest, wie der Platzhalter ersetzt werden soll |
Siehe Tabelle der Befehle unten |
html |
table |
Tabelle mit HTML-Quelltext, der den Platzhalter ersetzt |
‘Eingehende Aufträge’ |

Bei dem Feld html handelt es sich um eine Tabelle mit einer Spalte des Typs char(255), die mehrere Zeilen des HTML-Quelltextes, der den Platzhalter ersetzt, enthalten kann.
Angenommen, Sie haben ein Template mit den folgenden Zeilen:
…
(vorherige Zeile)
Report:
Report: <!platzhalter!>
(folgende Zeile)
...
...
Sie haben weiterhin eine Zeile in MERGE_TABLE mit den in obiger Tabelle aufgeführten Werten.
Die Ausgabe im resultierende HTML-Dokument sehen Sie in der folgenden Tabelle:
Befehl |
Bedeutung |
Ausgabe im HTML-Dokument |
space |
Ersetzt Platzhalterzeile (Standard) |
... |
B |
Einfügen vor der Platzhalterzeile |
... |
A |
Nach der Platzhalterzeile einfügen |
... |
R |
Nur Platzhalter ersetzen |
... |
Parameter MERGE_TEXTPOOL
Mit dem Parameter MERGE_TEXTPOOL können Sie Textelemente zum Einfügen in Templates übergeben.
In ABAP werden auf dem Bildschirmbild ausgegebene Texte als Textelemente in Textpools abgelegt, nicht in den Programmen selbst. Bei einer Textänderung müssen Sie daher nicht das Programm-Coding ändern, sondern nur die betroffenen Textelemente. Dadurch können Sie auch mehrsprachige Programme entwickeln, da die Übersetzung der Texte in einem separaten Prozeß erfolgen kann. Im Programm selbst geben Sie nur die Namen der Textelemente an (z.B. TEXT-xxx, wobei xxx für eine beliebige Kombination von Buchstaben und Zahlen steht).
Wenn Sie daher einen Programmnamen im Parameter MERGE_TEXTPOOL übergeben, führt WWW_HTML_MERGER folgende Aktionen aus:
Er sucht im Template einfach nur nach Vorkommen der Zeichenkette <!text-xxx!>.
Er ersetzt die Textelemente mit den Texten des Textpools, dessen Name im Parameter MERGE_TEXTPOOL angegeben wurde.