ABAPCONVERT_TEXT - CONVERT TEXT
SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up General Data in Customer MasterDiese Dokumentation steht unter dem Copyright der SAP AG.
CONVERT TEXT
Syntax
CONVERT TEXT text INTO SORTABLE CODE hex.
Wirkung
Der Inhalt des Operanden text wird in eine sortierbare Bytefolge konvertiert und das Ergebnisder Variablen hex zugewiesen, wobei das Datenobjekt text selbst unverändert bleibt. Bei text handelt es sich um einezeichenartige Ausdrucksposition.
Der Operand text muss vom Typ c oder string und das Datenobjekt hex mussbyteartig sein. Der Inhalt von text muss gültige Zeichen enthalten. Die sortierbare Bytefolgeist plattformabhängig so definiert, dass ein Größenvergleich oder eine Standardsortierung mehrerer solcher Felder zu einer Reihenfolge führt, in der die Ausgangsfelder text nach dem in der aktuellenTextumgebung definiertenLocalesortiert sind. Die Textumgebung wird beim Öffnen eines internen Modus oder über die Anweisung SET LOCALE gesetzt.
Wenn das Datenobjekt hex vom Typ x ist und seine Länge nicht für die Bytefolgeausreicht, kommt es zu einer unbehandelbaren Ausnahme. Wenn die Länge größer alsdie der Bytefolge ist, wird rechts mit hexadezimal 0 aufgefüllt. Die für alle Plattformenausreichende Länge berechnet sich aus 24-mal die Länge von text plus 24, kann aberfür einzelne Plattformen deutlich geringer sein. Wenn hex vom Typ xstring ist, passt sich seine Länge automatisch an.
Hinweise
- Damit die Anweisung CONVERT TEXT funktioniert, darf derProfilparameterinstall/collate/active nicht den Wert 0 haben.
- Die Anweisung CONVERT TEXT ist im Wesentlichen dazu vorgesehen, in internen Tabellen oderExtrakteneine Indexspalte zu füllen, nach der die Zeilen der Tabelle bzw. die Extrakte gemäßeinem Locale sortiert werden können. Da interne Tabellen und Extrakte durch den Zusatz ASTEXT der Anweisung SORTauch direkt gemäß einem Locale sortiert werden können, ist CONVERT TEXT besonders für die nachfolgenden Anforderungen geeignet:
- Eine interne Tabelle soll gemäß einem Locale sortiert und dann in der Anweisung READ TABLE binär durchsucht werden.
- Eine interne Tabelle oder ein Extrakt sollen mehrfach nach einem Locale sortiert werden. Die Verwendung einer sortierbaren Bytefolge ist dann performanter als der Zusatz AS TEXT.
- Indizes für Datenbanktabellen sollen gemäß einem Locale aufgebaut werden.
- Es sollen textuelle Vergleiche zwischen zeichenartigen Datenobjekten vorgenommen werden.
Beispiel
Die Zeichen "a" und "Z" werden direkt und nach der Konvertierung mit CONVERT TEXT verglichen.Während "Z" beim direkten Vergleich für die meisten Codepages vor "a" liegt, liefert der Vergleich der konvertierten Werte die erwartete textuelle Reihenfolge. Siehe auch dasBeispiel zu SORT für interne Tabellen.
DATA: ax TYPE xstring,
zx TYPE xstring.
IF 'a' > 'Z'.
WRITE / `'a' > 'Z'`.
ELSE.
WRITE / `'a' < 'Z'`.
ENDIF.
CONVERT TEXT: 'a' INTO SORTABLE CODE ax,
'Z' INTO SORTABLE CODE zx.
IF ax > zx.
WRITE / `'a' > 'Z'`.
ELSE.
WRITE / `'a' < 'Z'`.
ENDIF.
Ausnahmen
Unbehandelbare Ausnahmen
- Ursache: Einer der Operanden hat einen unzulässigen Datentyp.
Laufzeitfehler: CONVERT_TEXT_BAD_OP - Ursache: Das Quellfeld hat einen unzulässigen Inhalt.
Laufzeitfehler: CONVERT_TEXT_BAD_SRC - Ursache: Das Zielfeld ist zu klein.
Laufzeitfehler: CONVERT_TEXT_DEST_TOO_SHORT
rdisp/max_wprun_time - Maximum work process run time Fill RESBD Structure from EBP Component Structure
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 5897 Date: 20120526 Time: 193319 triton ( 221 ms )






