Konvertierungen gemäß dem SAP-Standard Im SAP-Standard werden in einem SAP-System ohne Unicode-Zeichensätze Daten unterschiedlicher Codepages an folgenden Stellen konvertiert:
Bei der Erfassung und Ausgabe von Daten im SAP-System werden Daten vom Format der Frontend-Codepages in das Format der im SAP-System verwendeten SAP(ISO)-Codepages konvertiert. Konvertiert wird während der Kommunikation zwischen dem SAP GUI und dem Applikationsserver über SAP-interne Zeichennummern. Die Zuordnung dieser Nummern zu den einzelnen Zeichen finden Sie im SAP-System in der Tabelle TCP01.

Korrekte Datenkonvertierung in der GUI-Server-Kommunikation
In diesem Beispiel werden tschechische Daten auf einem Frontend mit Microsoft NT als Betriebssystem erfasst und ins SAP-System übertragen (grüne Pfeile). Die Daten stammen aus der Microsoft-Codepage 1250. Dieser Codepage entspricht die im SAP-System enthaltene SAP(Frontend)-Codepage 1404. Die Daten müssen dann vom Format der SAP(Frontend)-Codepage 1404 in das Format der SAP(ISO)-Codepage 1401 konvertiert werden, die auf der ISO-Codepage ISO 8859-2 basiert.
Dem erfassten Zeichen Ž ist in der SAP(Frontend)-Codepage 1404 (wie in der Microsoft-Codepage 1250) der Hex-Code 8E zugeordnet. Zu diesem Hex-Code gehört die SAP-interne Zeichennummer 291. Nach dieser Zeichennummer wird in der SAP(ISO)-Codepage 1401 des Applikationsserver gesucht. Es wird der Hex-Code AE gefunden, der auf der Datenbank abgelegt wird.
Ebenfalls dargestellt ist die Ausgabe des tschechischen Zeichens Ž auf dem Frontend (blaue Pfeile). Hierzu wird der Hex-Code AE von der Datenbank gelesen und analog konvertiert: Zum Hex-Code AE der SAP(ISO)-Codepage 1401 gehört die SAP-interne Zeichennummer 291. Diese wird in der SAP(Frontend)-Codepage 1404 gesucht, wobei der Hex-Code 8E gefunden wird. Dieser wird am Frontend als Zeichen Ž ausgegeben.
Folgende Punkte stellen sicher, dass Daten korrekt konvertiert werden:
Sie müssen auf dem Frontend das richtige Gebietsschema eingestellt haben, das für die zu erfassende oder auszugebende Sprache die Datenein- und -ausgabe gemäß der korrekten Betriebssystem-Codepage (im Beispiel: Microsoft-Codepage 1250) ermöglicht.
Sie müssen im SAP-Logon-Dialogfenster des SAP GUI die SAP(Frontend)-Codepage (im Beispiel: SAP(Frontend)-Codepage 1404) eingetragen haben, die mit der Betriebssystem-Codepage des Frontend übereinstimmt.

Die im SAP-Logon-Dialogfenster des SAP GUI eingetragene Codepage oder der Frontend-Umgebungsparameter SAP_CODEPAGE bestimmt die SAP(Frontend)-Codepage, die für die Konvertierung genutzt wird. Der Eintrag im SAP-Logon-Dialogfenster überschreibt den Umgebungsparameter.
Die beschriebene Anmeldung stellt sicher, dass zur eingestellten SAP(Frontend)-Codepage die entsprechende (passende) SAP(ISO)-Codepage aktiv ist (im Beispiel: 14041401). Beispiele für derartige Codepage-Paare finden Sie unter Sprachen, Codepages und Konvertierungen .
Wenn SAP(Frontend)- und SAP(ISO)-Codepage nicht zusammen passen, kann es vorkommen, dass die SAP-internen Zeichennummern einzelner Zeichen nicht gefunden werden. Es wird dann das Nummernzeichen ( #) gesetzt. Für dieses wird der zugehörige Hex-Code 23 in der Datenbank abgelegt bzw. das Nummernzeichen ( #) am Frontend ausgegeben. Die folgende Abbildung zeigt den ersten Fall:

Fehlerhafte Konvertierung bei der Dateneingabe
Hier wird nicht korrekt konvertiert, da die aktive SAP(ISO)-Codepage auf dem Applikationsserver (1100) nicht zur SAP(Frontend)-Codepage (1404) passt.
Bei der Kommunikation über einen Remote Function Call (RFC) zwischen einem Sender- und Empfängersystem bestimmen die Codepages des Senders und Empfängers sowie das Datenformat die Konvertierung der übertragenen Daten. Dabei gelten folgende Regeln:
Es wird nicht konvertiert, wenn bei der RFC-Kommunikation nur Daten im BINÄR-Modus oder vom Datentyp X (Hexadezimal) übertragen werden.
Es wird nicht konvertiert, wenn die aktive Codepage des Sendersystems gleich der aktiven Codepage des Empfängersystems ist. Dies gilt unabhängig von der Anmeldesprache und dem Kommando SET LOCALE <LANGUAGE>.
Ob eine Konvertierung erfolgt, wenn sich die aktive Codepage des Sendersystems von der aktiven Codepage des Empfängersystems unterscheidet, hängt von der Art der beteiligten Codepages und dem Release ab. Bei zueinander passenden Codepages wird in der Regel konvertiert. Dabei gelten folgende Regeln:
Die Zeichenkonvertierung erfolgt gemäß den beteiligten aktiven Sender- und Empfängercodepages. Die Sprachenschlüssel der zu übertragenen Daten haben keinen Einfluss auf die Konvertierung.

Daten, die über eine andere als die aktiven Sendercodepage abgebildet werden müssen, können somit falsch konvertiert und dadurch zerstört werden.
Zeichen, die in der Empfängercodepage nicht enthalten sind, werden durch das Nummernzeichen (#) ersetzt.
Die Konvertierung kann nicht satzweise durchgeführt werden, wenn in einem Aufruf Daten mehrerer Codepages übertragen werden.

Dies bedeutet, dass sprachabhängige Daten verschiedener Codepages bei der Übertragung in der RFC-Kommunikation im Ganzen konvertiert werden. Dabei steuern nur die beteiligten Sender- und Empfängercodepages und nicht die Sprachenschlüssel der Daten die Konvertierung. Daten können dadurch falsch konvertiert und zerstört werden.
Bei der Kommunikation zwischen einem SAP-System mit Unicode und einem SAP- oder externen System ohne Unicode wird von Unicode nach ASCII (gemäß der aktuellen Codepage des nicht-Unicode-Systems) und umgekehrt konvertiert. Auch diese Konvertierung wird nicht satzweise für Daten mehrerer Codepages durchgeführt.
Application Link Enabling (ALE) basiert auf einer RFC-Kommunikation zwischen zwei SAP-Systemen, so dass bei der Datenübertragung Konvertierungen gemäß der Regeln der RFC-Kommunikation durchgeführt werden.
IDOCs werden im ALE immer im CHAR-Format übertragen, so dass bei verschiedenen aktiven Codepages des Sender- und Empfängersystems grundsätzlich eine Konvertierung möglich ist. Da jedoch sowohl im Sender- als auch im Empfängersystem die Daten im Format der im SAP-System verwendeten SAP(ISO)-Codepages abgelegt sind, muss bei der Datenübertragung per ALE nicht konvertiert werden. Unnötige Konvertierungen können vermieden werden, wenn die aktive Codepage des Senders gleich der aktiven Codepage des Empfängers ist. Daten werden dann im Empfänger identisch zum Sender abgelegt.
Auch Business Application Programming Interfaces (BAPIs) basieren auf einer RFC-Kommunikation. Wird z.B. ein BAPI in einer JAVA-Applikation aufgerufen, so bestimmen die Codepages des JAVA-Frontends und des SAP-Systems die Konvertierung der Daten.