Auf Unicode-Kompatibilität überprüfen
Bei der Aktualisierung auf die Unicode-Edition müssen Sie überprüfen, dass sämtliche benutzerdefinierte Logik, die Sie Skripts hinzugefügt haben, dieselben Ergebnisse bei der Ausführung von Unicode-Daten liefert. Es gibt vorhersehbare Bereiche, in denen Skripts betroffen sein können, wenn sie für Unicode-Daten ausgeführt werden.
Bit- und Zeichenfunktionen
Jede der unten aufgelisteten Funktionen gibt Werte auf Basis von Bytepositionen oder einer Byteanzahl zurück. Sie müssen sicherstellen, dass diese Funktionen noch immer korrekt verwendet werden, wenn Sie von einer Darstellung der Zeichen in einzelnen Bytes in der Nicht-Unicode-Edition auf die Codierung der Zeichen in zwei Bytes in Unicode-Daten übergehen:
-
ASCII( )
-
BIT( )
-
BYTE( )
-
CHR( )
-
DIGIT( )
-
HEX( )
-
MASK( )
-
SHIFT( )
Bytelänge entspricht nicht der Zeichenlänge
Sie müssen die Art der Verwendung der folgenden Funktionen in Ihren Skripts überprüfen, um sicherzustellen, dass sie keine 1-zu-1-Übereinstimmung zwischen der Zeichenanzahl der Daten und der Anzahl an Bytes erwarten.
Wenn Sie Vorkommen finden, in der die Logik von einer Entsprechung der Zeichen- und Byte-Anzahl ausgeht, müssen Sie die Logik anpassen, damit sie mit Unicode-Daten richtig funktioniert, die zwei Bytes zur Darstellung jedes Zeichens verwenden. In Zeichenfolgenfunktionen als Parameter angegebene Zahlen, wie z.B. 4 in STRING(1000, 4), beziehen sich auf die Anzahl an Zeichen. Die übliche Verwendung dieser Funktionen wird also zu keinen Problemen führen.
Konvertierungsfunktionen
-
PACKED( )
-
STRING( )
-
UNSIGNED( )
-
VALUE( )
-
ZONED( )
Zeichenfolgefunktionen
-
AT( )
-
BLANKS( )
-
INSERT( )
-
LAST( )
-
LENGTH( )
-
REPEAT( )
-
SUBSTRING( )
Verschiedene Funktionen
-
FILESIZE( )
-
LEADING( )
-
OFFSET( )
-
RECLEN( )
Unicode-spezifische Funktionen ersetzen
Unicode-Produkte von Galvanize unterstützen sechs Unicode-spezifische Funktionen, die Umwandlungen zwischen Nicht-Unicode- und Unicode-Daten ermöglichen. Die folgenden Funktionen sind in Galvanize-Unicode-Produkten verfügbar:
- BINTOSTR() konvertiert ZONED- oder EBCDIC-Daten in die entsprechende Unicode-Zeichenfolge. Dies gewährleistet, dass in ZONED oder EBCDIC codierte Daten richtig angezeigt werden können.
- DHEX( ) gibt das Hexadezimal-Äquivalent eines angegebenen Unicode-Feldwertes zurück. Dies ist die Umkehrfunktion von HTOU( ).
- DBYTE( ) gibt die Unicode-Zeicheninterpretation eines Double-Byte-Zeichens an einer bestimmten Stelle im Datensatz zurück.
- DTOU( ) konvertiert ein Datum basierend auf dem jeweiligen Gebietsschema in eine korrekte Unicode-Zeichenfolge.
- HTOU( ) gibt das Unicode-Äquivalent einer angegebenen Hexadezimalzeichenfolge zurück. Dies ist die Umkehrfunktion von DHEX( ).
- UTOD( ) konvertiert eine gebietsschemaspezifische Unicode-Zeichenfolge in ein Analytics-Datum.