Show TOC

FunktionsdokumentationCONVERT_TEXT_R2 Dieses Dokument in der Navigationsstruktur finden

 

Der Funktionsbaustein konvertiert Texte, zwischen dem SAP R/2-Textformat und dem SAPscript-Format. Zur Zeit ist nur die Umsetzrichtung R/2 nach SAPscript implementiert.

Neben der Umsetzung des Formataufbaus von Textzeilen sind folgende Eigenschaften eines R/2-Textes zu betrachten:

  • Zeilenattribute

  • Steuerkommandos

  • Symbole

Bei der Umsetzung können verschiedene Inkompatibilitäten auftreten. Diese Inkompatibilitäten werden in Stufen zusammengefaßt. Über den Parameter ERRORLEVEL wird die Gradnummer der schwersten Inkompatibilität zurückgegeben.

Zeilenformat

Das Zeilenformat in R/2- und SAPscript-Texten ist ähnlich. Beide Zeilen bestehen aus einem Feld, welches ein Zeilenformat enthält und einem Feld mit dem eigentlichen Inhalt. Die Umsetzung des Zeilenformates wird unter dem Punkt Zeilenattribute beschrieben.

Eine Textzeile in R/2 kann aus maximal 220 Zeichen bestehen, in SAPscript ist der Zeileninhalt auf 132 Zeichen beschränkt. Besteht eine R/2-Textzeile aus mehr als 132 Zeichen, so wird der Rest in eine Folgezeile mit leerem Absatzformat übertragen.

Zeilenattribute

SAPscript unterscheidet nicht zwischen fixen und variablen Zeilen, sondern kennt im R/2-Sinne nur variable Zeilen. Für die Umsetzung der R/2-Zeilenformate gelten folgende Regeln:

Bei Zeilen mit dem Attribut A und F beginnt immer ein neuer SAPscript-Absatz.

Unmittelbar aufeinanderfolgende Zeilen mit dem Attribut V werden als ein Absatz angesehen. Steht vor der ersten V-Zeile eine Zeile mit dem Attribut F, so ist die erste V-Zeile der Beginn eines neuen SAPscript-Absatzes. Hat die vor dem V-Block stehende Zeile das Attribut A, so werden die V-Zeilen als Fortsetzung der A-Zeile angesehen und kein neuer Absatz angefangen.

Standardmäßig wird für alle Absätze der SAPscript-Defaultabsatz '*' eingesetzt. Sie können jedoch über die Parameter PARAGRAPH_AV und PARAGRAPH_F einen anderen Absatz vorgeben.

Steuerkommandos

Die folgenden Steuerkommandos werden nicht umgesetzt, da es keine entsprechenden SAPscript-Äquivalente gibt:

.nlf

nächste 2 Zeilen übereinander drucken

.psz

Anzahl Zeilen pro Seite einstellen

.lpi

Zeilenabstand definieren

.prn

Steuerkommando für Drucker ausgebe

off

linken Rand für Zeilen mit Attribut V einstellen

.nam

Name des Spoolfiles festlegen

.set

Wert für Zahl- und Kapitel-Variable definieren

Die restlichen R/2-Steuerkommandos werden wie folgt auf SAPscript-Kommandos abgebildet:

.ifi &symbol

/: IF &symbol(I)& EQ ' '

.ifn &symbol

/: IF &symbol& NE ' '

.abs <n>

/: PROTECT

Inhalt der nächsten <n> Zeilen aus R/2-Text

/: ENDPROTECT

.def &symbol=<wert>

/: DEFINE &symbol& = '<wert>

.pct=<wert>

/: DEFINE &pct& = '<wert>'

.top <textnr>

/: TOP

/: INCLUDE <textnr>

/: ENDTOP

.bot <textnr>

/: BOTTOM

/: INCLUDE <textnr>

/: ENDBOTTOM

Symbole

Symbole werden einerseits auf die andere Syntax von SAPscript umgestellt, andererseits sind auch die Bezeichnungen von R/2-Datenbanksymbolen, die sich aus Tabellenname/Segment-Id und Feldname zusammensetzen, auf die in R/3 anderslautenden Tabellen und Felder umzusetzen.

Bei der Syntax sind alle Aufbereitungsoptionen (Offset, Länge, Vortext) auch mit SAPscript realisierbar, bis auf die Umsetzung des Symbolwertes über eine Tabelle.

Die Zuordnung des Symbolnamens von R/2-Datenbanksymbolen zu den jeweiligen SAP-Bezeichnungen erfolgt über den Aufruf des Funktionsbausteins RS3L_CONVERT_FIELDNAME. Für weitere Informationen lesen Sie bitte die Dokumentation zu diesem Funktionsbaustein.

Die Parameter SOURCE_SYSTEM, SOURCE_RELEASE, SOURCE_OBJECT, DESTINATION_TABLE und IGNORE_ALIASNAMES werden ohne weitere Interpretation an diesen Funktionsbaustein durchgereicht.

Die R/2-Symbole für Kapitelvariable (p0..p3) werden nicht nach SAPscript übernommen.

Funktionsaufruf:

Syntax Syntax

  1. CALL FUNCTION 'CONVERT_TEXT_R2'
    	EXPORTING HEADER_R2	= ?...
    		HEADER		= ?...
    		DIRECTION	= 'IMPORT'
    		PARAGRAPH_AV	= '* '
    		PARAGRAPH_F	= '* '
    		INCLUDE_ID	= 'ST  '
    		INCLUDE_ZEROS	= 'X'
    		INCLUDE_PREFIX	= SPACE
    		COMMENT_LINES	= 'X'
    		SOURCE_SYSTEM	= 'SAP'
    		SOURCE_RELEASE	= SPACE
    		SOURCE_OBJECT	= SPACE
    		DESTINATION_TABLE = SPACE
    		IGNORE_ALIASNAMES = SPACE
    		ERROR_COMMENTS	= SPACE
    	IMPORTING NEWHEADER_R2	=
    		NEWHEADER	=
    		NEWSTYLE	=
    		ERRORLEVEL	=
    	TABLES LINES_R2		= ?...
    		LINES		= ?...
Ende des Quelltextes.
Export-Parameter:

HEADER_R2

Der Parameter muß den Textheader des R/2-Textes enthalten.

Struktur: TEXTH

HEADER

Der Parameter muß den Textheader des SAPscript-Textes enthalten.

Struktur: THEAD

DIRECTION

Der Parameter legt die Umsetzrichtung fest. Zur Zeit ist nur der Wert IMPORT unterstützt, d.h. eine Konvertierung von Texten im R/2-Format in das SAPscript-Format

Defaultwert: 'IMPORT'

PARAGRAPH_AV

Angabe des Absatzformats, das beim Anfang von R/2-Zeilenblöcken mit dem Attribut A oder V verwendet werden soll. Wird der Parameter nicht angegeben oder hat er als Wert nur Leerzeichen, so wird der Default-Absatz '*' verwendet.

Bezugsfeld: TLINE-TDFORMAT

Defaultwert: '*'

PARAGRAPH_F

Angabe des Absatzformats, das für jede R/2-Zeile mit dem Zeilenattribut F verwendet werden soll. Wird der Parameter nicht angegeben oder hat er als Wert nur Leerzeichen, so wird der Default-Absatz '*' verwendet.

Bezugsfeld: TLINE-TDFORMAT

Defaultwert: '*'

INCLUDE_ID

Sind in R/2-Texten Standardtexte inkludiert, so werden diese Zeilen durch in ein SAPscript-INCLUDE-Kommando umgesetzt. Mit diesem Parameter kann die ID des SAPscript-Textes spezifiziert werden. Defaultwert ist 'ST'.

Bezugsfeld: THEAD-TDID

Defaultwert 'ST'

INCLUDE_ZEROS

Bei der Umsetzung von Texten aus dem SAP R/2-System werden die Nummern der eingebundenen Standardtexte 8-stellig übernommen, d.h. führende Nullen werden mit umgesetzt.

Mit diesem Parameter können Sie die Umsetzung der führenden Nullen in der Standardtextnummer beeinflussen.

Mögliche Werte:

  • 'X' führende Nullen übernehmen

  • ' ' führende Nullen entfernen

  • Defaultwert: 'X'

Beispiel Beispiel

Im R/2-Text ist der Standardtext 33 eingebunden. Die entsprechende Textzeile sieht folgendermaßen aus:

S 00000033

Diese Textzeile wird in SAPscript durch das INCLUDE-Kommando repräsentiert.

/: INCLUDE '00000033' OBJECT 'TEXT' ID 'ST'

Ist der Parameter INCLUDE_ZEROS mit SPACE bewertet, so sieht das generierte INCLUDE-Kommando folgendermaßen aus:

/: INCLUDE '33' OBJECT 'TEXT' ID 'ST'

Ende des Beispiels.

INCLUDE_PREFIX

Sind in den zu übernehmenden Textbausteinen R/2-Standardtexte inkludiert, so kann hier ein Präfix angegeben werden, der beim INLCUDE-Kommando vor die Textnummer gestellt wird:

Defaultwert: SPACE

Beispiel Beispiel

INCLUDE_PREFIX = 'R2_'

R/2-Zeile: S 00001234

SAPscript-Zeile: /: INCLUDE 'R2_00001234'....

Ende des Beispiels.

COMMENT_LINES

Mit diesem Parameter legen Sie fest, wie Kommandozeilen aus R/2 behandelt werden sollen, die von SAPscript nicht mehr unterstützt werden.

Mögliche Werte:

  • 'X' Zeilen als Kommentarzeilen übernehmen

  • ' ' Zeilen nicht übernehmen

  • Defaultwert: 'X'

SOURCE_SYSTEM

Geben Sie den Systemnamen an, aus dem der Textbaustein kommt. Dieser wird i.a. immer 'SAP' sein (Defaultwert).

  • Defaultwert: 'SAP'

Der Funktionsbaustein CONVERT_TEXT_R2 leitet diesen Parameter direkt an den Parameter SOURCE_SYSTEM des intern aufgerufenen Funktionsbausteins RS3L_CONVERT_FIELDNAME weiter, der die Umsetzung des Feldnamens durchführt. Weitere Informationen erhalten Sie über die dortige Parameterdokumentation.

SOURCE_RELEASE

Hier können Sie das Release des umzusetzenden R/2-Textbausteins spezifizieren. Die Angabe wird für die Umsetzung von Datenbanksymbolen des R/2-Textes benötigt.

  • Defaultwert: SPACE

Der Funktionsbaustein CONVERT_TEXT_R2 leitet diesen Parameter direkt an den Parameter gleichen Namens des intern aufgerufenen Funktionsbausteins RS3L_CONVERT_FIELDNAME weiter, der die Umsetzung des Feldnamens durchführt. Weitere Informationen erhalten Sie über die dortige Parameterdokumentation.

SOURCE_OBJECT

Migrationsobjekt, innerhalb dessen die Umsetzung des Feldnamens durchgeführt wird.

  • Defaultwert: SPACE

Der Funktionsbaustein CONVERT_TEXT_R2 leitet diesen Parameter direkt an den Parameter BMIG_OBJECT des intern aufgerufenen Funktionsbausteins RS3L_CONVERT_FIELDNAME weiter, der die Umsetzung des Feldnamens durchführt. Weitere Informationen erhalten Sie über die dortige Parameterdokumentation.

DESTINATION_TABLE

Der Parameter spezifiziert die R/3-Tabelle, zu der der gerade umgesetzte Text gehört.

  • Defaultwert: SPACE

Der Funktionsbaustein CONVERT_TEXT_R2 leitet diesen Parameter direkt an den Parameter R3_TABLE des intern aufgerufenen Funktionsbausteins RS3L_CONVERT_FIELDNAME weiter, der die Umsetzung des Feldnamens durchführt. Weitere Informationen erhalten Sie über die dortige Parameterdokumentation.

IGNORE_ALIASNAMES

Mit diesem Parameter steuern Sie die Prüfung der Alias-Namen bei der Umsetzung.

Mögliche Werte:

  • 'X' Prüfung ignorieren

  • ' ' Prüfung durchführen

  • Defaultwert: SPACE

Der Funktionsbaustein CONVERT_TEXT_R2 leitet diesen Parameter direkt an den Parameter gleichen Namens des intern aufgerufenen Funktionsbausteins RS3L_CONVERT_FIELDNAME weiter, der die Umsetzung des Feldnamens durchführt. Weitere Informationen erhalten Sie über die dortige Parameterdokumentation.

ERROR_COMMENTS

Über ERROR_COMMENTS definieren Sie, ob bestimmte Fehler, die bei der Konvertierung auftreten, als Kommentare in den SAPscript-Text übernommen werden. Die Meldungen beziehen sich i.a. auf einen Fehler, der beim Umsetzen der nachfolgenden Textzeile entdeckt wurde.

Mögliche Werte:

  • 'X' Fehlermeldungen als Kommentar einblenden

  • ' ' Fehlermeldungen nicht einblenden

In jeder Meldungszeile ist durch einen Präfix angegeben, wo die Fehlermeldung entstanden ist. Nähere Informationen können der dortigen Dokumentation entnommen werden.

  • CTR2 Fehlermeldung aus Textumsetzungsroutine

  • RS3L Fehlermeldung aus Umsetzung der Feldnamen

Ist zu dem Fehlerfall kein Fehlertext vorhanden, so wird statt dessen nach dem Präfix die Zeichenkette ?.. angezeigt.

Defaultwert: SPACE

Import-Parameter:

NEWHEADER_R2

Veränderter Header des R/2-Textes.

Da zur Zeit nur die Konvertierung R/2 nach SAPscript realsiert ist, wir der im Parameter HEADER_R2 angegebene Textheader unverändert in diesen Ausgabeparameter zurückgestellt.

Struktur: TEXTH

NEWHEADER

Die Parameter gibt den Textheader zurück mit den entsprechend der durchgeführten Aktion veränderten Feldern.

Struktur: THEAD

NEWSTYLE

Wird zur Zeit nicht gefüllt.

Bezugsfeld: THEAD-TDSTYLE

ERRORLEVEL

Bei der Konvertierung der Texte vom R/2 in das SAPscript-Format können verschiedene Probleme auftreten. Der höchste Grad der aufgetretenen Probleme wird über diesen Parameter zurückgegeben.

  • ERRORLEVEL = 0:

    Es wurden keine besonderen Abweichungen festgestellt.

  • ERRORLEVEL = 1:

    Es wurden kleinere Abweichungen ermittelt, die im wesentlichen die Formatierung betreffen. Der eigentliche Textinhalt wurde unverändert übernommen werden.

    Zeichen für Solltrennstellen wurden entfernt

    Durch Zeilenumbruch getrennte Worte wurden zusammengefügt (nur bei Zeilen mit dem Attribut A oder V)

    Der interne Aufruf des Funktionsbausteins RS3L_CONVERT_FIELDNAME lieferte bei der Umsetzung eines Feldnamens die Fehlerstufe 1 zurück.

  • ERRORLEVEL = 2:

    Die Umsetzung von Textelementen wurde zwar vorgenommen, es ist aber nicht sichergestellt, daß diese im SAP-System entsprechend interpretiert werden können.

    Der umgesetzte Text enthielt Symbole, bei denen nicht sichergestellt ist, daß sie auch im SAP-System durch den entsprechenden Wert ersetzt werden können:

    Symbole, die sich auf Tabellenfelder beziehen *)

    Symbole, die sich auf Segmentfelder beziehen *)

    Symbole, die über die R/2-Tabelle 164V umgesetzt werden

    *) Diese Fehler können nur dann auftreten, wenn der Funktionsbaustein RS3L_CONVERT_FIELDNAME nicht vorhanden ist.

    Der interne Aufruf des Funktionsbausteins RS3L_CONVERT_FIELDNAME lieferte bei der Umsetzung eines Feldnamens die Fehlerstufe 2 zurück.

  • ERRORLEVEL = 3:

    Der R/2-Text enthielt Funktionen, die von SAPscript nicht mehr bzw. z.Zt. noch nicht unterstützt werden.

    R/2-Kommandos:.nlf,.psz,.lpi,.prn,.off,.nam

    Umsetzung der Werte von Symbolen über eine Tabelle &symbol(Txxxx)

    Kapitelzähler: &p0... &p3

    Der interne Aufruf des Funktionsbausteins RS3L_CONVERT_FIELDNAME lieferte bei der Umsetzung eines Feldnamens die Fehlerstufe 3 zurück.

  • ERRORLEVEL = 4:

    Umsetzfehler

    Kommandozeile wurde abgeschnitten:

    Die Zeilenlänge des SAPscript-Textbausteins ist kürzer als ein umzusetzendes Kommando. Der Rest dieser Zeile mußte abgeschnitten werden. Dieses Kommando wird von SAPscript nicht oder nicht richtig interpretiert.

    Ungültige Referenz auf Standardtext:

    Im R/2-Text ist eine Zeile mit dem Zeilenformat S vorhanden, deren Zeileninhalt keine gültige Textnummer darstellt.

    Der interne Aufruf des Funktionsbausteins RS3L_CONVERT_FIELDNAME lieferte bei der Umsetzung eines Feldnamens die Fehlerstufe 4 oder höher zurück.

Der interne Aufruf des Funktionsbausteins RS3L_CONVERT_FIELDNAME erzeugte bei der Umsetzung eines Feldnamens eine der Ausnahmen DOUBLE_TUMLE, DOUBLE_TUMLA oder INTERNAL_ERROR.

Hinweis Hinweis

Die Bedeutung der Fehlerstufen in Bezug auf den Funktionsbaustein RS3L_CONVERT_FIELDNAME können Sie der Dokumentation zu diesem FB entnehmen.

Ende des Hinweises.

Bezugsfeld: SY-SUBRC

Tabellen-Parameter:

LINES_R2

Diese Tabelle enthält die Textzeilen des Textes im R/2-Format.

Struktur: TEXTL

LINES

Die Tabelle LINES enthält die Textzeilen des Textes im SAPscript-Format

Struktur: TLINE