Code: Alles auswählen.
cl_abap_char_utilities=>cr_lf.
Code: Alles auswählen.
data: cr type x value '0D'.
data: lf type x value '0A'.
Code: Alles auswählen.
DATA:
var(2) TYPE c.
DATA: cr TYPE x VALUE '0D'.
DATA: lf TYPE x VALUE '0A'.
MOVE cr TO var. " hier keine konvertierung
REPLACE ALL OCCURRENCES OF var IN wa_pnodtx-pntext WITH ' '.
Das klappt an Der Stelle leider nicht, da TRHEX vom Type c, n, d, t oder string sein muss.versuch's mal so :Code: Alles auswählen.
DATA trhex(4) TYPE x VALUE '0D20'. TRANSLATE var USING trhex.
Sollte so gehen:PaddyG hat geschrieben:Gibt es keine Möglichkeit einen Hex-Wert in eine FUBA zu schreiben und dafür den trnasformierten Wert in einen String zu schreiben?
Code: Alles auswählen.
TYPES: BEGIN OF t_translator,
cr TYPE x,
END OF t_translator.
DATA: gw_translator TYPE t_translator.
gw_translator-cr = '0D'.
REPLACE ALL OCCURRENCES OF gw_translator IN wa_pnodtx-pntext WITH ' '.
Code: Alles auswählen.
"GW_TRANSLATOR" must be a character-type data object (data type C, N, D, T or STRING). field string).
Code: Alles auswählen.
REPORT Ztest NO STANDARD PAGE HEADING.
DATA:
wa_pnodtx TYPE pnodtx.
DATA: cr TYPE x VALUE '0D'.
DATA: lf TYPE x VALUE '0A'.
TYPES: BEGIN OF t_translator,
cr TYPE x,
END OF t_translator.
DATA: gw_translator TYPE t_translator.
gw_translator-cr = '0D'.
SELECT SINGLE * FROM pnodtx
INTO wa_pnodtx
WHERE pnguid EQ '42CE716951AB102DE10000000AB06418'.
WRITE: / wa_pnodtx-pntext,
/ wa_pnodtx-pntext_up.
* Und hier kracht es
REPLACE ALL OCCURRENCES OF gw_translator IN wa_pnodtx-pntext WITH ' '.
WRITE: / wa_pnodtx-pntext.
Code: Alles auswählen.
DATA:
cr_lf TYPE string.
* Delete ## (line break)
cr_lf = cl_abap_char_utilities=>cr_lf.
REPLACE ALL OCCURRENCES OF cr_lf IN text WITH ' '.
* Delete # if ## is splitted
cr_lf = cl_abap_char_utilities=>cr_lf+0(1).
REPLACE ALL OCCURRENCES OF cr_lf IN text WITH ' '.
Code: Alles auswählen.
* Delete lf if crlf is splitted
lf = cl_abap_char_utilities=>cr_lf+1(1).
REPLACE ALL OCCURRENCES OF lf IN text WITH ' '.
Code: Alles auswählen.
CONSTANTS:
cv_lf_excel type char02 value '##', "eingegeben als 00230023 über Hex-Eingabe
...
SPLIT <gs_texte>-ltext AT cv_lf_excel INTO TABLE gt_lines.