Sie verwenden keine aktuelle Browser-Version. Deshalb wird die Webseite möglicherweise nicht korrekt dargestellt. Hier finden Sie weitere Hinweise.

Multilinguality in SAC

Inhaltsverzeichnis

Einleitung

SAP Analytics Cloud (SAC) ist ein Cloud-basiertes Analysetool, das eine Vielzahl von Merkmalen und Funktionen für die Datenvisualisierung und Analyse bietet. Der Storydesigner ermöglicht es Benutzern, ansprechende Berichte auf Basis von Datenmodellen zu erstellen und diese Objekte einer Vielzahl von Anwendern zugänglich zu machen. Insbesondere in internationalen Organisationen ergibt sich jedoch die Herausforderung der Mehrsprachigkeit bei der Nutzbarkeit und Zugänglichkeit der erstellten Berichte. Zum Beispiel möchte ein Kollege aus Polen den auf Deutsch erstellten Bericht gerne in seiner Landessprache aufrufen, um die Zahlen und Erkenntnisse ohne Sprachbarriere analysieren zu können.

Eine der wichtigsten Funktionen in diesem Zusammenhang sind öffentliche Dimensionen (Public Dimensions). Public Dimensions sind SAC-Objekte, die in mehreren Datenmodellen von SAC wiederverwendet und für andere Benutzer freigegeben werden können.

In diesem Blog wird erklärt, wie Public Dimensions in verschiedenen Sprachen implementiert werden können. Wir zeigen dies detailliert und mit allen notwendigen Systemeinstellungen anhand eines konkreten Anwendungsfalls. In diesem Szenario sollen Hauptbuchkonten aus einem S4HANA-System extrahiert und in SAC als mehrsprachige Public Dimension modelliert werden.

Implementierung einer SAC Public Dimension in verschiedenen Sprachen

Aktivierung der API in SAP S/4HANA

Die API API_GLACCOUNTINCHARTOFACCOUNTS_SRV ist ein Standard-SAP-OData-Service, welcher Zugriff auf die Hauptbuchkonten im Kontenplan bietet. Diese API kann als Datenquelle in SAC verwendet werden, um Public Dimension in verschiedenen Sprachen zu implementieren. Gegebenenfalls muss dieser Service zunächst im jeweiligen S4H-System aktiviert werden. Hierzu in der SAP GUI per Transactioncode: /IWFND/MAINT_SERVICE den gewünschten Service hinzufügen.

Über die SAP GUI Services aktivieren

In SAP S/4HANA API gibt es zwei Arten von Feldern für Sachkonten: Sachkonto im Kontenplan und Sachkonto im Kontenplantext. Nähere Informationen liefert die SAP übersichtlich: (https://api.sap.com/api/API_GLACCOUNTINCHARTOFACCOUNTS_SRV/overview)

Das Feld Sachkonto im Kontenplan: Ein Datenfeld, das den numerischen Wert des Sachkontos speichert. Es dient zur Darstellung der Kontonummer und wird zur Aufzeichnung der Finanztransaktionen eines Unternehmens verwendet. Dieses Feld wird typischerweise in Buchhaltungsprozessen, Finanzberichten und Analysen verwendet.

Das Feld Sachkonto im Kontenplan Text: Ist hingegen ein Textfeld, in dem die Beschreibung oder der Name des Sachkontos gespeichert wird. Es wird verwendet, um zusätzliche Informationen über das Konto bereitzustellen, z. B. über seinen Zweck oder seine Verwendung. Dieses Feld wird normalerweise in der Finanzberichterstattung und -analyse sowie in der Stammdatenverwaltung verwendet.

Der Hauptunterschied zwischen den beiden Feldern besteht darin, dass das Feld Sachkonto im Kontenplan den numerischen Wert des Sachkontos darstellt, während das Feld Sachkonto im Kontenplan Text die Ausprägung der Beschreibung des Sachkontos darstellt. In diesem Beispiel liefert somit das Textfeld auch die Werte für jeweilige Sprache.

Erstellen einer Public Dimension

Wenn die benötigte API im Backend aktiviert wurde, kann aus der SAC ein Request abgesetzt werden. Hierfür wird jedoch zunächst eine generische öffentliche Dimension benötigt, welche über den Pfad: Modeler -> Public Dimension erstellt werden kann. Jede Public Dimension beinhaltet per default einen Schlüssel und Beschreibung. Zudem können bei Bedarf weitere Attribute, Hierarchien, Währungsinformationen aktiviert werden.

Public Dimension erstellen

Member Description

In den Details der Dimension kann die Spracheigenschaft des Schlüsselmerkmals definiert werden, so dass ein Schlüssel mehrere Sprachen beinhalten kann. Diese Sprachen sind von der SAP vorgegeben und aktuell auf 49 begrenzt. Im Grunde wird implizit die Sprache als weiterer Schlüssel hin hinzugefügt, so dass 1-49 Beschreibungen einem echten Schlüssel erweitert werden.

Mehrsprachigkeit aktivieren

Über den Translationbutton rechts oben (gelb markiert) können auch manuell Änderungen an Sprachen vorgenommen werden.

Manuelle Änderung an Übersetzung

Deutsch:

Eintrag ändern durch Textfeld

Englisch:

Eintrag ändern durch Textfeld (en)

Member ID

Das ist der Schlüssel, welcher einen Datensatz eindeutig identifiziert. In einer öffentlichen Dimension kann nur ein Merkmal als Schlüssel definiert werden. Lässt sich die Eindeutigkeit nur aus zwei Ausprägungen definieren, dann muss die Member-ID als String konkateniert werden. In diesem Fall ist die Member ID als <Chart of Accounts>/<G/L Account> definiert. Hier kann sehr gut erkannt werden, dass es den Wert aus dem Sachkonto 1000 insgesamt 5x gibt. Eindeutig wird es erst, wenn der Kontenplan als Information hinzukommt und die Sprachbeschreibung somit dem korrekten Schlüssel zugeordnet werden kann.

Schlüsseldefinition

Properties

Die Beschreibung und die Member ID wird implizit vom System als Feld erstellt. Durch das Erstellen von weiteren Attributen können den Daten zusätzlicher Kontext an Informationen mitgegeben werden. Abhängig von der Datenquellen können bei Bedarf um zusätzliche Attribute erweitert werden. Im Fall der API API_GLACCOUNTINCHARTOFACCOUNTS_SRV werden sehr viele weitere Attribute je Schlüssel zurückgegeben:

API bietet eine Vielzahl an Attribute

Darüber hinaus können Attribute verwendet werden, um Daten in Visualisierungen zu filtern und zu gruppieren, so dass Benutzer die Daten detaillierter analysieren können. In unserem Beispiel werden wir zunächst nur die Schlüsselmerkmale und Account Group (Kontengruppe) befüllen.

Erstellung von Attributhüllen

Verwendung der API

Mit der Erstellung der Public Dimension wurde eine Hülle erstellt, um diese nun mit Informationen zu füllen, bedarf es die im ersten Schritt aktvierte API. Hierfür im Workspace auf die Ansicht Data Management wechseln und den Button Daten aus einer Data Source importieren anklicken.

Befüllen von Public Dimension Step 1

Da wir Daten aus einem S/4HANA extrahieren möchten auch das betroffene System auswählen.

Befüllen von Public Dimension S4H Step 2

Wenn das System über den Cloud Connector bereits in Ihrer SAC angebunden ist, dann erscheint im Dropdownfenster die gewünschte Verbindung.

Dropdownfenster Connection Step 3

Über den externen Servicenamen API_GLACCOUNTINCHARTOFACCOUNTS_SRV kann der Service gefunden werden und die SAC bietet beide Felder/Tabellen zur API an. Falls der Service bei Ihnen hier nicht auftaucht, dann überprüfen Sie noch einmal die Aktivierung des Services im Quellsystem.

Servicename in SAC Step 4

A_GLAccountInChartOfAccounts liefert die numerischen Merkmale, welche wir zunächst in die Pendants aus der Public Dimension befüllen werden. Hierfür die benötigten Quellfelder nach Selected Data per Drag&Drop schieben.

Quellfelder selektieren Step 5

Nun versucht das System automatisch die Quelldaten aus der Datasource in die Pendants aus der Public Dimension zu mappen. Fehler wie hier werden rot markiert, da kein Schlüssel in die Dimension ID gemappt wurde.

Mapping und Fehlermeldung Step 6

Per Datenmanipulierungsfunktion die Daten als Feldschlüssel aus Chart of Accounts und G/L Account mit Seperator definieren.

Schlüssel für Member ID definieren Step 7

Danach das Feld der Dimension ID hinzufügen, da der Schlüssel ein Pflichtfeld ist.

Dimension ID/ Member ID den neuen zusammengesetzten Schlüssel zuweisen Step 8

Erledigt! Die numerischen Daten wurden nun erfolgreich importiert.

Alle Attributmerkmale wurden hinzugefügt

Im nächsten Schritt erfolgt der Zugriff auf die Texte. Die Vorgehensweise ist ähnlich, jedoch unterscheiden sich die benötigten Attribute. Es wird der gesamte Schlüssel aus G/L Account und Chart of Account benötigt um die geigten Texte zuordnen zu können. Ein wichtiges Konzept bei der Arbeit mit Texten ist der Language Key. Dieser Schlüssel ist ein Code, der die Sprache des zu erstellenden oder zu bearbeitenden Textes identifiziert. Er wird verwendet, um sicherzustellen, dass der Text für Benutzer, die diese Sprache sprechen, korrekt angezeigt wird. Der Sprachenschlüssel ist in der Regel ein zweistelliger Code, der für die Sprache steht. Zum Beispiel steht „EN“ für Englisch, „DE“ für Deutsch und „FR“ für Französisch. Eine Liste aller Sprachschlüssel in S/4HANA finden Sie in der Transaktion SE63. Die Zuweisung erfolgt im Dimension Mapping auf die Pendants im Ziel der Public Dimension.

Verwendete Quellen:

Quelldaten: Schlüsselinformation, Language Key und Langtexte Step 1

Zuordnung und Manipulation der Quelldaten. Dabei wird die Language ID mit dem Sprachcode gefüllt und die Beschreibung ausgehend des entsprechenden Codes.

Mapping für die Textbeschreibungen in unterschiedliche Sprachen.

Nach Beladung der Texte erfolgt z. B. im Konto 1000 diese Zuordnung. (Reihenfolge unterschiedlich)

Englisch:

Anzeige des Konto 1000 in Englisch

Deutsch:

Anzeige des Konto 1000 in Deutsch

Verwendung der Public Dimension

Um die generische Public Dimension zu verwenden, wird eine Datenquelle benötigt welche Bewegungsdaten zum Konto und Kontenplan führt, damit auf das generische Objekt referenziert werden kann. In unserem Use-Case ist das eine einfache SAP Business Warehouse Query.

Definition der Query:

Queryansicht

Aufruf der Bewegungsdaten ausgehend einer BW Query:

Query nach Aufruf in AfO

Neues SAC-Datenmodell erstellen mit dem erstellten Public Dimension Objekt. Im zweiten Schritt erfolgt die Beladung ausgehend der Query.

Datenmodell in Verwendung der erstellten Public Dimension

Daten importiern aus der BW-Query in das SAC-Datenmodell

Verwendete Queryobjekte zur Beladung des Datenmodells in der SAC

Da es sich bei unserer Datenquelle um eine SAP BW Query handelt und das Sachkonto Merkmal ein Infoobjekt ist, welches bereits am Kontenplan geklammert ist, wird das Quellobjekt Sachkonto bereits im richtigen Format wie die Public Dimension angezeigt. Falls Sie Daten aus einer anderen Datenquelle extrahieren z. B. Fileupload, dann sollten Sie sich vergewissern, in welchem Format diese in Ihrem Public Dimension Schlüssel sind und diese ggf. per Datenmanipulationswerkzeuge in der SAC anpassen.

BW-Query Datenquelle

Mapping des Sachkonto aus Quelle mit Public Dimension

Mapping in die Public Dimension

Im letzten Schritt kann basierend auf dem erstellten Datenmodell eine Story erstellt werden.

Hier das Ergebnis eines einfachen Widgets unter Verwendung der Public Dimension in der Anmeldesprache (de):

Anzeigesprache Deutsch

Über die Profile Settings kann die Sprache für den Datenzugang verändert werden:

Anzeigesprache ändern

Ein Auffrischen der Story und die Werte werden in Englisch angezeigt:

Anzeigesprache Englisch

 Abgrenzung zu Texten in der Application/Story

In dem beschrieben Use-Case werden jedoch nur die Beschreibungen anhand der vorliegenden Sprachecodes aus dem Quellsystem übersetzt und in der Dimension gespeichert.

Da eine Story zusätzlich aus Informationen bestehen kann, welche nicht Teil des Datenmodells sind wie, z. B. statische Texte, Seitennamen usw. gibt die SAP dem Storycreator die Möglichkeit auch diese anhand der eingestellten Sprache im Benutzerkonto des Viewers zu pflegen.

Hierfür muss in der Story die Übersetzung in den Story Eigenschaften aktiviert werden.

Die eigentliche Übersetzung der Storyelemente wird über die Translationfunktion in der SAP Analytics Cloud ausgeführt, welche über die Navigationsleiste zu finden ist. Dabei gibt es die Möglichkeit alle Elemente per XLIFF-Datei zu importieren oder direkt im Menü der Übersetzung.

XLIFF-Dateien basieren auf XML (eXtensible Markup Language) und sind deshalb strukturierte Informationen. Sie enthalten den zu übersetzenden Quelltext und ensprechende Metadaten im xml-Format. Dieses Format ermöglicht, mit dem Inhalt unabhängig der SAC, auf strukturierte und konsistente Weise zu arbeiten. Durch die Verwendung von XLIFF-Dateien können Unternehmen Ihren Aufwand reduzieren, die Konsistenz verbessern und somit die Zusammenarbeit zwischen den Stakeholdern am Übersetzungsprozess reduzieren.

Hierfür einmal den aktuellen Stand exportieren und z. B. mit Notepad++ die Datei öffnen. Unterhalb der Deklaration die Zielsprache eingeben, per target-language= <“Sprachcode“>:

Danach unterhalb der Übersetzungsstruktur mit dieser Syntax die Übersetzung definieren

<target>ÜBERSETZUNG</target>. Dabei ist jedes übersetzbare Element in einer trans-unit gewrapped.

Es ist zu beachten, dass in der generierten XLIFF-Datei die Textfelder doppelt angezeigt werden. Diese definieren die Eigenschaft Mouseover und die Textfeldanzeige in der Story und sind mit entsprechender Datentypisierung definiert.

  1. Das Textfeld wird mit dem Datentyp „x-urn:x-sap:sls-mlt:xhtml-ph“ definiert
  2. Der Mouseover auf dem Textfeld wird als datatype „x-urn:x-sap:sls-mlt:java:messageformat“ definiert

Sind alle Übersetzungen erledigt, dann wieder importieren. Hierbei ist wichtig, dass die Datei unter <Technischer Name der Story><_><Ziel-Sprachcode>.xlf gespeichert wird, da sonst die Datei nicht interpretiert werden kann.

Alternativ kann die Übersetzung auch direkt im Menü der SAC ausgeführt werden. Hier muss die Zielsprache ausgewählt werden und die Textinputfelder neben dem Originaltext ausgefüllt werden. Häufig verfügen Übersetzer über keine entsprechenden Berechtigungen im SAC-System und Administratoren definieren nicht immer valide unternehmensweite Übersetzungen, dann kann die Variante per XLIFF-Datei die als optimal zu wählende Option sein.

Fazit

Von unserer Seite gibt es für die Nutzung von Public Dimension und somit der Mehrsprachigkeit von Merkmalen eine klare Handlungsempfehlung. Auf diese Weise können Sie sicherstellen, dass die Bezeichnungen in verschiedenen Sprachen konsistent und genau sind, was die Datengenauigkeit verbessern und Fehler reduzieren kann. SAC wählt dann automatisch die passende Sprachversion auf der Grundlage der Spracheinstellungen des Systems aus. Zudem besteht eine grundsätzliche Handlungsempfehlung für die Nutzung von Public Dimension in Import-Datenmodellen. Durch die Nutzung eines solchen generischen Objektes in Datenmodellen erreichen Sie eine konsistente und standardisierte Sicht auf Ihre Daten. Durch die Erstellung einer Reihe von Dimensionen, die in verschiedenen Modellen und Analysen gemeinsam genutzt werden können, stellen Sie sicher, dass jeder in Ihrem Unternehmen die gleichen Definitionen und die gleiche Terminologie verwendet. Insgesamt können Sie mit öffentlichen Dimensionen in der SAC tiefere Einblicke in Ihre Daten gewinnen, die Datengenauigkeit/-konsistenz verbessern und eine bessere Zusammenarbeit und Kommunikation innerhalb Ihres Unternehmens ermöglichen. Zudem ist die Übersetzungsvariante von Storyelementen der SAC über das angebotene Übersetzungscockpit für einfach zu nutzen und erfüllt seinen Zweck. Sollten Übersetzungen in größerem Format skaliert werden und sind an Unternehmensrichtlinien gekoppelt, dann empfiehlt es sich einen Workflow mit Hilfe von XLIFF-Dateien zu definieren, so dass alle Stakeholder am Übersetzungsprozess abgeholt werden können.

Nehmen Sie Kontakt zu uns auf!

    Mit der Erhebung, Verarbeitung und Nutzung meiner personenbezogenen Daten zur Bearbeitung meiner Anfrage erkläre ich mich einverstanden. Ich kann mein Einverständnis jederzeit ohne Angabe von Gründen widerrufen. Weitere Informationen finden Sie in unserer Datenschutzerklärung.