Post on 20-Mar-2018
transcript
Praxishandbuch
SAPscript
für SAP® ERP
Corinna Zollmann
INHALTSVERZEICHNIS
3
Inhaltsverzeichnis
Vorwort 5
1 Einleitung 9
1.1 Warum SAPscript? 10
1.2 Voraussetzungen 10
2 Technischer Aufbau eines SAPscript-Formulars 11
2.1 SAPscript-Formular 11
2.2 SAPscript Editor 20
2.3 Druckprogramm 25
3 Ein erstes SAPscript-Formular 35
3.1 SAPscript-Formular 36
3.2 Druckprogramm 57
3.3 SAPscript im Detail 61
4 Massendruck und Adresse ausgeben 83
4.1 SAPscript 84
4.2 Druckprogramm 87
4.3 SAPscript im Detail 90
5 Materialien als Tabelle ausgeben 111
5.1 SAPscript 111
5.2 Druckprogramm 116
5.3 SAPscript im Detail 119
6 Infoblock und PAGE2 anlegen 151
6.1 SAPscript 151
6.2 Druckprogramm 163
INHALTSVERZEICHNIS
4
6.3 SAPscript im Detail 164
7 Übersetzung und Langtexte 177
7.1 Standardtext 178
7.2 SAPscript 182
7.3 Druckprogramm 194
7.4 SAPscript im Detail 195
8 Tipps und Tricks 217
8.1 Suche von SAPscript-Formularen und Druckprogrammen 217
8.2 Syntax-Check 222
8.3 Formatierung von Symbolen 226
9 Zusammenfassung 233
9.1 SAPscript-Steuerkommandos 233
9.2 ABAP-Funktionsbausteine 235
A Die Autorin 239
B Index 241
C Disclaimer 245
Weitere Bücher von Espresso Tutorials 246
11
2 Technischer Aufbau eines SAPscript-Formulars
Um die komplexe Technologie SAPscript vollständig zu erfassen,
ist es hilfreich, sich zunächst den technischen Aufbau eines
SAPscript-Formulars anzusehen. Dies ist die Grundlage für das
Verständnis der Abläufe beim Drucken eines Dokuments. Am
Ende dieses Kapitels kennen Sie die wichtigsten Begriffe im Hin-
blick auf ein SAPscript-Formular und verstehen das Zusammen-
spiel zwischen Druckprogramm und SAPscript-Formular.
2.1 SAPscript-Formular
In diesem Abschnitt werde ich Ihnen die wichtigsten Begrifflichkeiten
aus der SAPscript-Welt an einem theoretischen Beispiel außerhalb
des Systems erläutern.
Beginnen wir mit dem Layout eines Dokuments. Täglich bekommen
wir Briefe, Rechnungen oder Schreiben etc. mit der Post geschickt.
Von Weitem betrachtet bzw. auf den ersten Blick, sehen diese Doku-
mente alle irgendwie gleich aus. Jedes besteht aus ähnlichen Berei-
chen mit ähnlichen Inhalten (vgl. Abbildung 2.1):
dem Logo der Firma und der Anschrift,
der Adresse des Empfängers,
Informationen wie Kundennummer, Datum, Seitenzahl,
dem Hauptfenster, zum Beispiel mit Anschreiben, Auflistung
von Artikeln, Texten,
einer Fußzeile mit allgemeinen Daten der Firma, beispiels-
weise der Bankverbindung.
TECHNISCHER AUFBAU EINES SAPSCRIPT-FORMULARS
12
Abbildung 2.1: Layout eines Dokuments – Seitenfenster
Ein Fenster mit einer festen Position auf einer Seite bezeichnet man
im SAPscript als Seitenfenster. Besteht ein Dokument aus mehreren
Seiten, sind die Folgeseiten meist anders aufgebaut. Hier werden
nicht mehr alle Informationen der ersten Seite benötigt und somit
steht im Hauptfenster mehr Platz zur Verfügung (vgl. Abbildung 2.2):
Die Adresse des Empfängers fällt weg
Verkürzte Informationen, zum Beispiel nur noch Datum und
Seitenzahl
Das Hauptfenster erhält mehr Platz
Logo und Fußzeile bleiben unverändert
TECHNISCHER AUFBAU EINES SAPSCRIPT-FORMULARS
13
Abbildung 2.2: Layout einer Folgeseite
Um unser beschriebenes Beispiel im SAPscript abbilden zu können,
bekommt jede Seite einen Namen:
FIRST – erste Seite
NEXT – alle Folgeseiten
Auch jedes Fenster erhält einen Namen:
LOGO
ADRESSE
INFO1 – erste Seite
INFO2 – Folgeseiten
MAIN – Hauptfenster
FUSS – Fußzeile
TECHNISCHER AUFBAU EINES SAPSCRIPT-FORMULARS
14
NAMEN von Fenstern und Seiten
Im SAPscript sind für die Namen von Seiten und
Fenstern keine Sonderzeichen erlaubt. Das System
setzt die Namen automatisch in Großbuchstaben
um.
Abbildung 2.3: Seitenfenster ADRESSE auf Fenster FIRST
Ändern sich Inhalt und Größe eines Fensters von einer Seite zur
nächsten, so wird dies in zwei verschiedenen Fenstern angelegt (und
TECHNISCHER AUFBAU EINES SAPSCRIPT-FORMULARS
15
zum Beispiel mit »INFO1« und »INFO2« benannt). Bleiben Größe
und Inhalt identisch, ist ein Fenster ausreichend (dieses heißt dann
beispielsweise »LOGO«).
Nun werden die Fenster auf den Seiten mittels konkreter Koordinaten
positioniert, wodurch die Seitenfenster entstehen. Die Fenster be-
kommen eine Länge und Breite zugewiesen und es wird festgelegt,
wo auf einer Seite sich das jeweilige Fenster konkret befindet (siehe
Abbildung 2.3).
Jetzt betrachten wir den Inhalt der Fenster am Beispiel eines INFO1-
Fensters der ersten Seite (vgl. Abbildung 2.4).
Abbildung 2.4: INFO1-Fenster der ersten Seite
Das INFO1-Fenster besteht aus festen Texten:
Auftragsbestätigung
AB-Nummer
Datum
Kundennummer
Seite
Weiterhin enthält es Variablen, die sich entsprechend verändern kön-
nen:
INDEX
241
B Index
A ABAP-Befehl IF 213
ABAP-Programm 26
Absatzformat 16, 19, 132,
154
Absatzformate definieren 52
Adressarten 93
Adressdaten 95
Adressen aufbereiten 96
Anschreiben 111
Layout anpassen 151
Archivindex 29
Ausgabesprache 197
Auskommentieren/löschen
183
B Barcodes 144
benutzerspezifische
Einstellungen 100
BODY-Bereich 18
BOTTOM-Bereich 18
C CONST-Fenster 18
D Darstellung verändern 24
Darstellungsweise 21
Debugging 218
ABAP-Debugging 220
Default-Absatzformat 51
Default-Textelement 75
Definitionen prüfen 226
Dezimalstellen 229
Drucken 55
Standard-Druckdialog 60
Testdruck 55
Druckerschacht steuern 174
Druckprogramm 25, 87, 116,
163, 194
E Exceptions 77
Exponent 229
F F4-Wertehilfe 55
Fenster 43
Festwerte 74
Fließtext 69
Fontpflege 141
Form Painter 20
Formatspalte 68
Formular-Versionen 196
Füllzeichen 230
Funktionsbausteine
CLOSE_FORM 27, 34
CONTROL_FORM 27, 32
END_Form 28
END_FORM 34
INDEX
242
OPEN_FORM 27, 29, 107
START_FORM 28, 29, 173
Übersicht 235
WRITE_FORM 27, 30, 76
WRITE_FORM_LINES 27,
32
G Gliederung 136
Grunddatentext einbinden
184
Grundeinstellungen 16
I Initialwert 229
K Kommandozeile 71
Kommentarzeile 71
Konvertierungsroutine 229
Kopfdaten 16
Kopieren 163
L Länge beschränken 228
Langtext 32, 201
Langzeile 69
Leerzeichen komprimieren
229
M MAIN-Fenster 18
Mandantenabhängigkeit 62
Mandantendurchgriff 62, 65
Mandantenvergleich 62, 65
Maßeinheiten 169
Massendruck 83
Materialien als Tabelle
ausgeben 111
Materialstamm 201
N Nachtext 230
Namenskonventionen 38
Namensräume 205
O Offset-Angabe 228
Originalsprache 187, 196
ändern 198
P Paket 39
Paketzuordnung ändern 78
PERFORM-Aufruf 186
Pflegetransaktion 125
Postfachadresse 98
Produktivsystem 144
R Rahmen und Schattierungen
153
Rohzeile 70
S SAPscript 111, 151, 182, 195
Logik 213
SAPscript-Formular 36
aktivieren 56
Druckprogramm 57
Grundeinstellungen 53
kopieren 63, 199
INDEX
243
SAPscript-Formulare
vergleichen 200
Schriftarten und -größen 140
Seiten
mehrere anlegen 171
Seitenfenster 12, 45
Seitenlayout 49
Seitenumbruch 17, 32
automatischer 97
Sichern 49
eines Formulars 39
Spool-Steuerung 106
Standardattribute 50
Standardtext 178, 204
Startseite, dynamische 30
Steuerkommandos
ADDRESS 86, 91
BOX 165
CASE 214
ELSE 214
ELSEIF 213
ENDCASE 215
ENDIF 213
ENDPROTECT 34
IF 213
INCLUDE 208
NEW-PAGE 33, 172
NEW-WINDOW 173
PERFORM 210
POSITION 166
PRINT-CONTROL 148
PROTECT 34
RESET 140
SET COUNTRY 103
SET DATE MASK 104
SET SIGN 105
SET TIME MASK 105
SIZE 167
SUMMING 212
TOP/BOTTOM 148
Übersicht 233
Suche 217
Symbole 73, 120
formatieren 226
Programmsymbole 123
Standardsymbole 124
Systemsymbole 121
Syntax-Check 222
T Tabulator 72, 135
Textausgabe, bedingte 213
Texteditor 22
WYSIWYG PC-Editor 23
Zeileneditor 23
Textelemente 16, 66
mit Namen 76
ohne Namen Siehe Default-Textelemente
prüfen 222
Text-ID anlegen 206
TOP-Bereich 18
Transportauftrag 40
kopieren 63
U Unterprogramme aufrufen
185
V VAR-Fenster 17
Variablen 15
Vorschau 21
Vortext 228
Vorzeichen 230
INDEX
244
Z Zeichenformat 16, 154
Zeichensatz 197
Zeileneditor 51
Zeilenvorschub 70