Transaktion SE37 (Function Builder)

Aus SAP-Wiki
Wechseln zu: Navigation, Suche

Die Transaktion SE37 (Function Builder) ist die zentrale Transaktion, um mit Funktionsbausteinen zu arbeiten.

Sammlung Funktionsbausteine

Einstieg in Transaktion SE37

In der Transaktion wird hier der Funktionsbaustein REUSE_ALV_GRID_DISPLAY_LVC eingegeben, der ALV-Listen auf dem Bildschirm ausgibt

Funktionsbaustein6.jpg

Eigenschaften

  • Funktionsgruppe
  • Kurzbezeichnung Funktionsgruppe
  • Kurzbezeichnung Funktionsbaustein
  • Normaler Funktionsbaustein / Remote fähiger Funktionsbaustein (RFC) / Verbuchungsbaustein
  • Verantwortlicher/Ersteller
  • Letzter Änderer
  • Änderungsdatum
  • Paket
  • Freigegeben oder Nicht Freigegeben

Wenn SAP einen Funktionsbaustein freigegeben hat, kann man davon ausgehen, dass die Funktionalität eines Funktionsbausteins bestehen bleibt und auch die Schnittstelle konstant ist. Wenn der SAP nicht freigegeben ist, aber das letzte Änderungsdatum ein paar Jahre zurückliegt, halte ich es für sicher genug, diesen Funktionsbaustein zu verwenden, auch wenn er von SAP offiziell noch nicht freigeben wurde. Mit dieser Vorgehensweise hatte ich noch keine negativen Erfahrungen.

Funktionsbaustein1b.jpg

Schnittstelle

Die Schnittstelle des Funktionsbausteins unterteilt sich in

Import-(Parameter)

  • Importparameter können obligatorisch oder optional sein
  • Importparameter können als Referenz gekennzeichnet oder mit "Wertübergabe". Bei der Wertübergabe wird der Importparameter kopiert im Hauptspeicher und der Funktionsbaustein arbeitet dann mit der Kopie. Die Wertübergabe ist speziell bei größeren Internen Tabellen aus Performancegründen zu vermeiden. Wird ein Funktionsbaustein als RFC-Funktionsbaustein gekennzeichnet, müssen alle Parameter Werteübergabe haben.
  • Wählt man die Wertübergabe beim Parameter an, ist es auch möglich den Importparameter zu verändern. Dies ist in aller Regel nicht empfehlenswert, kann aber manchmal sehr nützlich sein. Einen Referenz-Importparameter kann man nicht verändern. Hier bekommt man auch sofort eine Error-Meldung vom Syntaxchecker.

Export-(Parameter)

  • Exportparameter geben lediglich Variablen zurück. Sie sind immer optional.

Changing-(Parameter)

  • Variablen werden in den Funktionsbaustein importiert, dort ggf. verändert und wieder nach exportiert.

Tabellen-(Parameter)

  • Die Tabellen-Schnittstelle sollte bei eigenen Funktionsbausteinen nicht verwendet werden, da hier bei diesem Parameter nicht klar ist, ob eine Tabelle lediglich importiert wird, nur exportiert oder im Funktionsbaustein geändert wird. Diese Tabellen können durch die anderen drei Schnittstellen ersetzt werden, indem hier auf geeignete Tabellentypen typisiert wird.
  • Tabellen-Parameter werden zwingend als Referenz übergeben. Für RFC-Funktionsbausteine kann daher der Reiter "Tabellen" nicht verwendet werden.

Funktionsbaustein7.jpg

Codingansicht

In der Codingansicht kann das Coding des Funktionsbausteins angezeigt und verändert werden (bei Y/Z-Funktionsbausteinen).

Funktionsbaustein8.jpg

Varianten speichern

Bei einem Funktionsbaustein ist es oft nicht einfach die passenden Daten für die Importparameter zu finden. In der Transaktion SE37 können die Selektionsparameter eines Funktionsbausteinaufs gespeichert werden und benutzerübergreifend und mandantenübergreifend aufgerufen werden.

Der Funktionsbaustein wird aus der Einstiegsmaske der SE37 mit F8 ausgeführt.

FunktionsbausteinVariante1.jpg

Hier beim Funktionsbaustein CONVERSION_EXIT_ALPHA_INPUT (der eine extrem einfache Importschnittstelle hat), werden die Importparameter gepflegt mit INPUT = 80000.

FunktionsbausteinVariante2.jpg

Wenn der Funktionsbaustein nun mit F8 ausgeführt wird, wird der Exportparameter ausgegeben OUTPUT = 00....80000. Wenn der Importparameter 10 Stellen hätte, wäre 0000800000 zurückgegeben worden.

FunktionsbausteinVariante3.jpg

Mit Speichern kann diese Selektion nun gespeichert werden, mit einer Kurzbeschreibung

FunktionsbausteinVariante4.jpg

In der Eingabemaske des Selektionsbildschirms bei F8 kann nun auf den Button TESTDATENVERZ. geklickt werden, um sich mögliche Varianten anzeigen zu lassen. Diese können dann per Doppelklick ausgeführt werden und die Importparameter sind dann mit den entsprechenden Werten gefüllt. Es bietet sich an eigene Varianten mit dem eigenen Namen zu benennen, um diese gleich zu erkennen.

FunktionsbausteinVariante5.jpg

FunktionsbausteinVariante6.jpg

Dokumentation

Über den Button Funktionsbaustein10.jpg lässt sich die Funktionsbausteindokumentation aufrufen, sofern sie gepflegt ist. Wenn sie nicht gepflegt ist, ist der Button nicht anklickbar

Funktionsbaustein9.jpg

Web-Links