READ TEXT: Unterschied zwischen den Versionen

Aus SAP Wiki ツ
 
(20 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Mit diesem FuBa können die Texte aus Stammsätze und Belege ermittelt werden.
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:<br />
Wie die Parameter für verschiedene Texte zusammengesetzt werden müssen, kann man hier auf einen Blick sehen:<br />
=> [[Texte_in_Stammsätze_und_Belege#Header_verschiedener_Texte|Texte in Stammsätze und Belege]]
=> [[Texte_in_Stammsätze_und_Belege#Header_verschiedener_Texte|Texte in Stammsätze und Belege]]


Zeile 13: Zeile 13:
Die Verkettung abhängig vom TDFORMAT:
Die Verkettung abhängig vom TDFORMAT:


<syntaxhighlight lang="abap" line start="1">
   IF sy-subrc = 0 AND lines( lt_text_lines ) > 0.
   IF sy-subrc = 0 AND lines( lt_text_lines ) > 0.
     LOOP AT lt_text_lines ASSIGNING FIELD-SYMBOL(<text_line>).
     LOOP AT lt_text_lines ASSIGNING FIELD-SYMBOL(<text_line>).
       IF <text_line>-tdformat EQ '*'.
       IF <text_line>-tdformat EQ '*' AND sy-tabix > 1.
         rv_result = |{ rv_result }{ cl_abap_char_utilities=>cr_lf }{ <text_line>-tdline }|.
         rv_result = |{ rv_result }{ cl_abap_char_utilities=>cr_lf }{ <text_line>-tdline }|.
       ELSEIF <text_line>-tdformat EQ '='.
       ELSEIF <text_line>-tdformat EQ '=' OR sy-tabix = 1.
         rv_result = |{ rv_result }{ <text_line>-tdline }|.
         rv_result = |{ rv_result }{ <text_line>-tdline }|.
       ELSE.
       ELSE.
Zeile 24: Zeile 25:
     ENDLOOP.
     ENDLOOP.
   ENDIF.
   ENDIF.
</syntaxhighlight>
=== Textkonvertierung von ITF in ASCII nach Lesen 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:
[[Datei:READ TEXT SAPScript textbaustein.png]]
Mit FuBa "CONVERT_ITF_TO_ASCII" kann das SAPScript in ein ASCII Format konvertiert werden.
Alternativ arbeitet man am Beispiel des Kommas mit [[REPLACE|REPLACE]].
== Texte über CDS-Views und Klasse ==
Beispiel zur Nutzung in CL_MM_PUR_PR_PROFNL_DPC_EXT
Mapping Verständnis
* ArchObjectNumber = text_objectid
* DocumentText = text_id
* TechnicalObjectType = text_object
* language = spras

Aktuelle Version vom 4. Oktober 2024, 13:57 Uhr

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

Wie die Parameter für verschiedene 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 nach Lesen 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 in ein ASCII Format konvertiert werden. Alternativ arbeitet man am Beispiel des Kommas mit REPLACE.

Texte über CDS-Views und Klasse

Beispiel zur Nutzung in CL_MM_PUR_PR_PROFNL_DPC_EXT

Mapping Verständnis

  • ArchObjectNumber = text_objectid
  • DocumentText = text_id
  • TechnicalObjectType = text_object
  • language = spras