Anfang des InhaltsbereichsABAP-Textpool Dokument im Navigationsbaum lokalisieren

Numerierung

Alle Texte, die in einem Programm definiert sind, müssen mit einer Nummer versehen im Textpool abgelegt werden. Sonst können sie nicht übersetzt werden.

Länge

Die Länge der Texte sollte durch eine Endemarke (;;) erkennbar sein.

Die Endemarke zeigt dem Übersetzer, an welcher Stelle der Text enden muß.

Achtung

Da die Basis die Endemarke noch nicht unterstützt, dürfen die Texte z.Zt. nur mit Längenangabe ausgegeben werden.

Beispiel

WRITE: /(35) TEXT-001

Zusammenhängende Texte

Texte, die logisch zusammengehören, sollten auch im Textpool so abgelegt werden, daß der Zusammenhang erkennbar wird.

Beispiel

A01 Objekt löschen ;;

A02 Möchten Sie das Objekt wirklich;;

A03 löschen? ;;

B01 Objekt anlegen ;;

B02 Möchten Sie das Objekt wirklich;;

B03 anlegen? ;;

Es ist besser, Texte doppelt abzulegen (A02 = B02), als Fließtexte unrekonstruierbar zur Laufzeit zusammenzusetzen.

Sehr gefährlich ist es bei diesem Beispiel, den Teilstring A02 für beide Sätze zu verwenden. Dies führt in der Fremdsprache zu Komplikationen.

Selbst wenn die Texte übersetzbar sind, ist es in fast allen Fällen sehr schwer, einen syntaktisch korrekten Satz zu erzeugen. Dies illustriert das folgende Beispiel.

Beispiel englisch

Do you want to delete

Do you want to create

this object?

this object?

Hier ist der zweite Teil des Satzes identisch statt wie im Deutschen der erste Teil. Würde der Teilstring A02 für beide Sätze verwendet werden, wäre der Übersetzer gezwungen, die deutsche Satzstellung beizubehalten. Für jeden fremdsprachigen Anwender wäre es eine Zumutung, solche untypischen (deutschen) Satzstellungen in der Fremdsprache lesen zu müssen:

Do you really want this object

Do you really want this object

to delete?

to create?

Zusammengesetzte Sätze

Sätze, die von Entwicklern aus mehreren unabhängigen Teilstrings zusammengesetzt werden, sind niemals korrekt übersetzbar, weil zum einen der Übersetzer nicht den Zusammenhang kennt (vor allem, wenn die Texte über den Textpool verstreut sind) und zum anderen die Satzstellung nicht beeinflußbar ist.

Auch in einzeiligen Sätzen wäre, wie die zur Abschreckung danebenstehende englische Übersetzung zeigt, die folgende Textausgabe unübersetzbar:

Text-001 = 'Wollen Sie das Objekt'.

'Do you want object'

Text-002 = 'löschen?'.

'to delete?'

WRITE: Text-001, objectname, Text-002.

Richtig wäre:

Text-001 = 'Wollen Sie das Objekt &1 löschen?'.

Hilfsfeld = Text-001.

REPLACE '&1' WITH objectname INTO Hilfsfeld.

WRITE: Hilfsfeld.

Freigewordene Textnummern

Bei der Weiterentwicklung eines Programms sollten freigewordene Textnummern niemals für andere Texte wiederverwendet werden. Bitte immer einen neuen Text mit einer neuen Nummer anlegen! Denn es kann nicht gewährleistet werden, daß die ausgelieferte Fremdsprache den gleichen Stand hat wie die aktuelle deutsche Version.

Fließtext

Im ABAP-Textpool sollte nach Möglichkeit kein Fließtext abgelegt werden.

Die Anzeige von Fließtext innerhalb einer Liste wird in Zukunft von der Entwicklungsumgebung unterstützt werden. Hierfür wird jedoch eine andere Textablage benutzt werden.

Datenelementschlüsselwörter

Die direkte Ausgabe von Datenelementschlüsselwörtern (WRITE: DTEL-KEYWORD) innerhalb einer Liste ist z.Zt. nicht möglich.

Ende des Inhaltsbereichs