CONVERT_TEXT_R2 
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.
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.
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.
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 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.
Syntax
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 = ?...
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:
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
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:
|
SOURCE_SYSTEM |
Geben Sie den Systemnamen an, aus dem der Textbaustein kommt. Dieser wird i.a. immer 'SAP' sein (Defaultwert).
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.
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.
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.
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:
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:
In jeder Meldungszeile ist durch einen Präfix angegeben, wo die Fehlermeldung entstanden ist. Nähere Informationen können der dortigen Dokumentation entnommen werden.
Ist zu dem Fehlerfall kein Fehlertext vorhanden, so wird statt dessen nach dem Präfix die Zeichenkette ?.. angezeigt. Defaultwert: SPACE |
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.
Der interne Aufruf des Funktionsbausteins RS3L_CONVERT_FIELDNAME erzeugte bei der Umsetzung eines Feldnamens eine der Ausnahmen DOUBLE_TUMLE, DOUBLE_TUMLA oder INTERNAL_ERROR.
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 |
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 |