Wenn Sie vorhaben, Ihre SAP-Fiori-Apps in eine andere Sprache zu übersetzen, werden Sie oft auch einige ABAP-basierte Objekte aus dem Backend übersetzen müssen. Wäre es in diesem Fall nicht schön, wenn Sie zur Übersetzung aller dieser Texte nur einen einzigen Übersetzungseditor bräuchten? Die Standard-Übersetzungsumgebung für ABAP-basierte Texte ist Transaktion SE63. i18n Translation Manager for SAP® Fiori schließt jetzt diese Lücke und ermöglicht es Ihnen, auch SAP-Fiori-Texte in SE63 zu übersetzen.
Verbinden zweier Welten
Ein Ziel, das wir mit i18n Translation Manager erreichen wollten, war der Brückenschlag zwischen zwei Technologie-Stacks – SAP Fiori und ABAP. In beiden gibt es Texte, die in Fiori-Apps auf der Benutzeroberfläche zu sehen sind und somit übersetzt werden müssen, aber sie sitzen in Silos, komplett voneinander getrennt. SAP-Fiori-Apps speichern ihre Texte auf Business Server Pages und in Git-Repositorys. ABAP-basierte Texte sitzen in einem SAP-System und können von Übersetzern in SE63 aufgerufen werden (oder Sie exportieren die Texte zur Übersetzung). SAP-Fiori-Texte hingegen können von den Übersetzern überhaupt nicht aufgerufen werden: Ein Entwickler muss die Texte aus der Entwicklungsumgebung in Textdateien kopieren und ihnen die Dateien schicken.
Daher der Gedanke, dass SAP-Fiori-Texte in SE63 übersetzbar sein sollten – denn dann käme zusammen, was zusammengehört. Und während SE63 als Übersetzungseditor nicht für jeden die erste Wahl sein mag (und zugegebenermaßen nicht besonders einsteigerfreundlich daherkommt, siehe mein Artikel über die Übersetzungsumgebungen für die SAP-Übersetzung), ist es doch meist die erste Wahl, wenn Sie mit SAP-versierten Übersetzern zusammenarbeiten, die sich mit dieser besonderen Arbeitsumgebung gut auskennen. Und wenn ein Text in SE63 aufgerufen werden kann, bedeutet das auch, dass er theoretisch genauso wie alle anderen SAP-Texte exportiert werden kann, falls Sie gern exportieren möchten.
SAP-Fiori-Texte mit an Bord
i18n Translation Manager ist eine ABAP-basierte Anwendung, die in der Regel in dem SAP-System eingesetzt wird, in dem die Backend-Objekte für Ihr SAP Fiori entwickelt werden. Im Zentrum der App steht das Konzept des Schnappschusses. Wenn das Tool einen Schnappschuss erstellt, ruft es alle Texte aus den relevanten BSP-Applikationen im SAP-Fiori-Gateway-System ab. Dann nimmt es die i18n.properties-Dateien komplett auseinander und prozessiert jeden Text einzeln. Dabei gleicht es nicht nur Quell- und Zieltexte ab, es teilt auch Texte mit Überlänge in überschaubare Textblöcke und prüft die i18n.properties-Dateien auf Probleme wie doppelt verwendete Schlüssel.
Nachdem der Schnappschuss erstellt wurde, gibt das Tool die Anzahl der Zeilen pro Datei aus, wobei dieselben Metriken genutzt werden wie bei den SAP-Standardübersetzungstools – neue, modifizierte und übersetzte Zeilen. An dieser Stelle können Sie den Schnappschuss auch bearbeiten, um Dateien auszuschließen, die gar nicht übersetzt werden müssen. Das kann sehr nützlich sein, wenn Sie einen Schnappschuss für Ihren gesamten Entwicklungsnamensraum erstellt haben, um einen Überblick über alle Apps zu bekommen, aber bestimmte Apps nicht in allen Zielsprachen benötigt werden.
Im Anschluss können Sie den Übersetzungsprozess starten. Dazu werden temporäre Übersetzungsobjekte generiert, die in einem Übersetzungsvorrat zusammengestellt werden können. Dieser wird dann von Ihren Übersetzern in Transaktion SE63 bearbeitet. Und da die in Ihren Fiori-Apps verwendeten ABAP-Objekte aus demselben System stammen, in dem i18n Translation Manager läuft, können sie diesem Arbeitsvorrat ebenfalls hinzugefügt werden. Das ist für die Übersetzer ideal, denn sie können jetzt alle Texte für Ihre Apps in ein und demselben Workflow übersetzen. i18n Translation Manager ist auch bemüht, den Übersetzern so viel Kontext wie möglich zu geben, indem das Tool ihnen für jede Datei möglichst viele Metadaten und, besonders wichtig, auch die Kommentare der Entwickler zur Verfügung stellt. Das heißt, die Entwickler können für die Übersetzer Anmerkungen hinterlassen, indem sie einfach einen Kommentar schreiben.
Sicherheit geht vor
Nachdem die Übersetzung abgeschlossen ist, können Sie die Übersetzungen in Ihre BSP-Applikationen zurückschreiben und gleichzeitig die zugehörigen Git-Repositorys aktualisieren. Bei diesem Vorgang wird jedoch der aktuelle Stand der zielsprachlichen Dateien nicht einfach überschrieben. Stattdessen wird im Hintergrund ein neuer Schnappschuss derselben Apps erzeugt, der alte und der neue Stand miteinander verglichen und mögliche Konflikte aufgelöst. Dadurch wird z. B. sichergestellt, dass ein Text, der als Teil des aktuellen Schnappschusses übersetzt wird, aber in der Zwischenzeit geändert wurde, korrekt verarbeitet wird. In solch einem Fall wird die Übersetzung dann nicht zurückgeschrieben, da sie nicht zum neuen, geänderten Quelltext passen würde. Dasselbe gilt für die Texte in der Zielsprache: Alle Änderungen, die ein Entwickler an der Übersetzung vornimmt, während die Dateien „ausgecheckt“ waren, haben Vorrang vor den vom Übersetzer eingegebenen Übersetzungen.
Diese Methodik des „sicheren Zurückschreibens“ hat noch ein paar andere Vorteile. Wenn ein Schnappschuss zurückgeschrieben wurde, können Sie sofort einen neuen Schnappschuss erstellen. Alle Texte, für die die Übersetzungen erfolgreich zurückgeschrieben wurden, werden jetzt als übersetzt angezeigt, aber alle Texte, bei denen ein Synchronisierungskonflikt dazu geführt hat, dass sie beim Zurückschreiben übersprungen wurden, werden erneut zur Übersetzung vorgelegt. Genauso ist es bei allen neuen Texten, die in der Zwischenzeit von der Entwicklung hinzugefügt wurden. Das bedeutet, dass Sie Übersetzungsdeltas bequem bearbeiten und einen fortlaufenden Übersetzungsprozess etablieren können.
Flexible Korrekturen
Die Korrektur einzelner Texte ist auch ganz einfach. Bei Bedarf können Sie jederzeit schnell einen Schnappschuss für eine App erstellen, auch dann, wenn zur selben Zeit die Übersetzung für eine neue Version dieser App in einem anderen Schnappschuss läuft. Solch ein „Überholer“-Szenario wird explizit unterstützt. Das heißt, Sie nehmen die Korrektur im Rahmen eines zusätzlichen Schnappschusses vor und schreiben sie zurück. Und wenn Sie am Ende den Schnappschuss zurückschreiben, in dem die neue Version der App übersetzt wurde, wird die korrigierte Übersetzung einfach übersprungen, weil der Zieltext in der Zwischenzeit geändert wurde.
Zusammengefasst lässt sich sagen, dass Sie mit i18n Translation Manager Ihre SAP-Fiori-Apps in Transaktion SE63 übersetzen können, aber eben alle Texte, die auf der Benutzeroberfläche der App zu sehen sind – nicht nur die Texte, die aus der App selbst stammen. Außerdem ermöglicht Ihnen das Tool einen zuverlässigen Übersetzungsworkflow, für fortlaufende Übersetzungen genauso wie für Ad-hoc-Korrekturen einer Übersetzung. Ihren Entwicklern wird zudem die Last der Übersetzung von den Schultern genommen. Und die Erstellung von Schnappschüssen und das Zurückschreiben sind vollständig automatisiert, d. h., Sie müssen Ihren Übersetzungsteams nicht einmal mehr Dateien schicken. Für die Übersetzung von SAP-Fiori-Apps ist das eine ideale Lösung.
Update: Fiori-Apps übersetzen einer modernen Web-App
Seit Dezember 2021 können Sie Ihre Fiori apps auch mit dem modernen, webbasierten Editor von XTM übersetzen. Unser neues Tool XTM Connect for SAP Systems ermöglicht jetzt einen Workflow, der wie oben beschrieben funktioniert, jedoch mit der Ausnahme, dass die Texte aus i18n.properties und die ABAP-Backend-Texte nicht in Transaktion bereitgestellt werden. Stattdessen können Sie die Texte zur Übersetzung nach XTM Cloud hochladen.
Erfahren Sie mehr über unsere SAP-Übersetzungstools…