Schlüsselbefehl Define (Makros)

Aus SAP-Wiki
Wechseln zu: Navigation, Suche

Ein sehr alter Schlüsselbefehl ist DEFINE, bzw. END-OF-DEFINITION.

Der Befehl ist heute nicht mehr üblich, aber man findet es gelegentlich noch in alten Programmen oder es gibt vereinzelt Entwickler, die gern mit diesen Makros arbeiten.

Abwägung Verwendung Makros

  • Makros können dem Entwickler Schreibarbeit sparen
  • Makros sind vielen SAP-Entwicklern jedoch nicht oder kaum bekannt und verwirren sie und die Syntax ist ungewohnt.
  • Im Zweifel sollte man auf die Verwendung von Makros verzichten und es gibt keinen zwingen Grund Makros zu verwenden

Beispiel Typgruppe ICON

In der Typgruppe ICON ist ein Include >ICON< eingebunden.

Define1.jpg

In einer Befehlszeile stehen nun lediglich 3 Werte hintereinander, z. B.

ICON_2   ICON_DUMMY   '@00@'.    "PlaceholderIcon


Die Bedeutung dieser Syntax wird erst ersichtlich, wenn man das Include >ICON< öffnet.

Define2.jpg

Es wird hier u. a. ein Makro mit dem Namen ICON_2 erzeugt.

DEFINE ICON_2.
  ...
END-OF-DEFINITION.

Im Makro wird eine Konstante angelegt mit dem Namen des ersten Platzhalters, typisiert auf das Datenelement ICON_L2 und hat den Wert des zweiten Platzhalters.

CONSTANTS: &1 TYPE ICON_L2 VALUE  &2.


Also

*NameMakro  1.Platzhalter  2.Platzhalter  Kommentar
ICON_2      ICON_DUMMY     '@00@'.        "PlaceholderIcon


Wird nun im Report die Typgruppe ICON eingebunden, dann können die Ikonen mit den Konstantennamen ICON_SONDERZEICHEN, ICON_DUMMY etc. angesprochen werden.

Type-Pools: Icon.

...

ikonenwert = icon_sonderzeichen.

Anwendungsbeispiel Makro

  • Im Tricktresor gibt es ein sinnvolles Beispiel für die Anwendung eines Makros.

Web-Links