READ TEXT

Aus SAP Wiki ツ

Mit diesem FuBa können die Texte aus Stammsätze und Belege ermittelt werden.

Wie die Parameter für die verschiedenen Texte zusammengesetzt werden müssen, kann man hier auf einen Blick sehen:
=> Texte in Stammsätze und Belege

Der Text wird in eine simple internen Tabelle mit Typ "TLINE" geschrieben. Oft ist es das Ziel die Inhalte in einem String zu speichern.

Zum Beispiel könnte der Inhalt der interne Tabelle so aussehen:

READ TEXT Output Table.png

Die Verkettung abhängig vom TDFORMAT:

  IF sy-subrc = 0 AND lines( lt_text_lines ) > 0.
    LOOP AT lt_text_lines ASSIGNING FIELD-SYMBOL(<text_line>).
      IF <text_line>-tdformat EQ '*' AND sy-tabix > 1.
        rv_result = |{ rv_result }{ cl_abap_char_utilities=>cr_lf }{ <text_line>-tdline }|.
      ELSEIF <text_line>-tdformat EQ '=' OR sy-tabix = 1.
        rv_result = |{ rv_result }{ <text_line>-tdline }|.
      ELSE.
        rv_result = |{ rv_result } { <text_line>-tdline }|.
      ENDIF.
    ENDLOOP.
  ENDIF.

Textkonvertierung von ITF in ASCII bei lesen von SAPScript Textbausteine

Wenn ein Text von einem SO10 Text gelesen wird, können hier u.U. ungewünschte Textformatierungen vorhanden sein. Zum Beispiel wird bei einem Komma bei der Ausgabe das Komma mit "<(>,<)>" angezeigt:

READ TEXT SAPScript textbaustein.png

Mit FuBa "CONVERT_ITF_TO_ASCII" kann das SAPScript Format in ein ASCII konvertiert werden. Es könnte sinnvoll sein, wenn man die oben zu sehende Verkettung macht und dem FuBa für Parameter "itf_lines" die eine Zeile übergibt. Das Attribut "cl_abap_char_utilities=>cr_lf" was für Zeilenumbrüche sorgt, wird z.B. bei der Konvertierung nicht entfernt.