Ansicht
Dokumentation
CL_ABAP_UTF8STRING_TAB - Obsolet: Konvertierung Strings <-> UTF-8
ROGBILLS - Synchronize billing plans ABAP Short ReferenceDiese Dokumentation steht unter dem Copyright der SAP AG.
Funktionalität
In Basis-Releases nach 4.6x ist diese Klasse obsolet und ist nur noch aus Gründen der Rückwärtskompatibilität vorhanden. Der RFC selbst unterstützt Unicode.
Diese Klasse konvertiert zeichenartige Daten in ein Format, das für den Transport mit RFC (Remote Function Call) geeignet ist. Die Daten werden in einer Tabelle mit fester Zeilenlänge abgelegt, wobei UTF-8 (Unicode Transformation Format, 8 Bit) benutzt wird.
Der Typ der Tabelle ist UTF8STRTAB. Eine Tabelle repräsentiert eine Liste von Strings. Jedes Objekt hält eine Referenz auf eine Tabelle.
Diese Klasse dient als Übergangslösung, bis der RFC Unicode und den Datentyp STRING unterstützt. Diese Klasse ermöglicht älteren Systemen die Kommunikation mit Unicode-Systemen.
Klassenmethode:
CREATE erzeugt und initialisiert ein Objekt.
Instanzmethoden:
PUT konvertiert Daten nach UTF-8 und hängt sie an die Tabelle an. Die Parameter können zeichenartig oder numerisch oder eine Struktur mit diesen Typen sein.
GET_NEXT holt den nächsten UTF-8-String aus der Tabelle. Falls der Parameter eine Struktur ist, wird eine entsprechende Anzahl von Strings geholt. Der erste Aufruf von GET_NEXT holt ab dem Tabellenanfang einen oder mehrere Strings.
DECREMENT_ITERATOR setzt den Iterator um einen String zurück, so daß der nächste Aufruf von GET_NEXT den letzten gelesenen String noch einmal liest.
SET_ITERATOR setzt den Iterator auf den n-ten String.
CLEAR löscht den Inhalt der Tabelle.
Beziehungen
Beispiel
REPORT utf8str_test.
DATA:
o1 TYPE REF TO cl_abap_utf8string_tab,
xtab TYPE utf8strtab,
rc TYPE utf8str_rc,
str TYPE string,
BEGIN OF struc,
cc(3) TYPE c,
nn(5) TYPE n,
END OF struc.
START-OF-SELECTION.
* The function 'ZTEST_UTF8STR' puts some data into the table.
CALL FUNCTION 'ZTEST_UTF8STR' DESTINATION 'NONE'
TABLES tab = xtab.
CALL METHOD cl_abap_utf8string_tab=>create
IMPORTING ref = o1
CHANGING tab = xtab.
* Get the first string from xtab into str.
CALL METHOD o1->get_next
IMPORTING obj = str
EXCEPTIONS OTHERS = 7.
IF sy-subrc <> 0.
* Some error handling
ENDIF.
* Get the 2nd and 3rd string from xtab into struc.
CALL METHOD o1->get_next
IMPORTING obj = struc
CHANGING rc = rc
EXCEPTIONS non_fatal = 1
OTHERS = 7.
IF sy-subrc <> 0.
* Some error handling
ENDIF.
WRITE :/ 'str:', str.
WRITE :/ 'cc:' , struc-cc.
WRITE :/ 'nn:' , struc-nn.
FUNCTION ztest_utf8str.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" TABLES
*" TAB TYPE UTF8STRTAB
*"----------------------------------------------------------------------
DATA:
o1 TYPE REF TO cl_abap_utf8string_tab,
str TYPE string,
BEGIN OF struc,
cc(3) TYPE c,
nn(5) TYPE n,
END OF struc.
str = 'Some Text to be sent.'.
struc-cc = 'ABC'.
struc-nn = '01234'.
CALL METHOD cl_abap_utf8string_tab=>create
IMPORTING ref = o1
CHANGING tab = tab[].
CALL METHOD o1->put
EXPORTING obj = str
EXCEPTIONS OTHERS = 5.
IF sy-subrc <> 0.
* Some error handling
ENDIF.
CALL METHOD o1->put
EXPORTING obj = struc
EXCEPTIONS OTHERS = 5.
IF sy-subrc <> 0.
* Some error handling
ENDIF.
ENDFUNCTION.
Hinweise
Tabellen des Typs UTF8STRTAB enthalten Daten des Typs RAW. Die erste Tabellenzeile enthält Verwaltungsinformationen. Jeder String beginnt in einer neuen Tabellenzeile. Das erste Byte jeder Zeile gibt an, wieviele der nachfolgenden Bytes zum String gehören. Das erste Byte enthält 'FF' (hexadezimal), falls der String in der folgenden Zeile fortgesetzt werden muß.
Weiterführende Informationen
Die Dokumentation zu den einzelnen Methoden enthält ausführliche Hinweise.
CL_GUI_FRONTEND_SERVICES - Frontend Services General Data in Customer Master
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 7269 Date: 20240426 Time: 092823 sap01-206 ( 81 ms )