GUI-Designer „guidrasil“

GUI-Designer „guidrasil“

Vor langer Zeit habe ich mich mit der automatischen und generischen Erzeugung und Verwaltung von SAPGUI-Controls beschäftigt. Aus dieser Beschäftigung heraus ist der GUI-Designer entstanden, den ich guidrasil getauft habe. Folge mir in die Welt der Controls und Container…

WEITERLESEN

Hacking SAPGUI

Hacking SAPGUI

Heute bin ich zufällig auf etwas gestoßen, dass ich erst nicht glauben konnte. Aber eigentlich hätte es klar sein müssen. Ich zeige dir erst einmal ein Bild: Vielleicht ist deine erste Reaktion genauso wie meine: via GIPHY Folgende Controls verwende ich für diesen kleinen Hack: CL_GUI_PICTURE CL_GUI_GOS_CONTAINER Normalerweise wird der GOS-Container nicht explizit aufgerufen, sondern nur implizit von der Klasse CL_GOS_MANAGER verwendet. Container ist Container Im Generic Object Services Menü wird normalerweise ein Pull-Down-Menü angezeigt:…

WEITERLESEN

Bilder aus MIME-Repository anzeigen

Bilder aus MIME-Repository anzeigen

Ich präsentiere: Das hässlichste Logo aller Zeiten: Allerdings hat es auch einen Vorteil: Taucht dieses Bild irgendwo auf, weiß man sofort: Es handelt sich um ein Demo-Programm. SAP-Web-Repository Das Bild ist im SAP-Web Repository gespeichert. Dieses Repository wird mit Transaktion SMW0 aufgerufen. Zur Auswahl stehen „HTML-Schablonen“ und „Binäre Daten“. Wähle „Binäre Daten“ aus: Wenn du weißt, wie der Name des Bildes lautet, kannst du diesen vorbelegen: Die entsprechenden Dateien im Web-Repository werden angezeigt: Einlesen eines…

WEITERLESEN

Mehrfachselektion mit Menu

Mehrfachselektion mit Menu

Möchte man dem Anwender die Möglichkeit geben, aus einer Liste mehrere Einträge auszuwählen, so fällt einem sicherlich zuerst das ALV-Grid ein, in dem man die Einträge per Zeilenmarkierung oder Checkbox markieren kann. Eine Lösung mit der vertikalen Anordnung einer Toolbar (CL_GUI_TOOLBAR) und Menu (CL_CTMENU) käme auch in Frage, nähme jedoch genau so viel Platz ein, wie ein ALV-Grid. Letztendlich kam jedoch eine Variante mit dem CL_CTMENU und heraus.

WEITERLESEN

Switch für Ausnahmen eines Funktionsbausteins [ABAP740]

Switch für Ausnahmen eines Funktionsbausteins [ABAP740]

Seit Release ABAP740 gibt es die Anweisung SWITCH. Sehr anschaulich beschrieben im Blog von Horst Keller: ABAP News for Release 7.40 – Constructor Operators COND and SWITCH Was mich bei Funktionsbausteinen schon immer gestört hat ist, dass man bei der sinnvollen Protokollierung von Returncodes von Funktionsbausteinen umständliche CASE-Konstrukte benötigt. Natürlich nur, wenn der Funktionsbaustein bei einem Fehler lediglich RAISE EXCEPTION verwendet aber nicht MESSAGE RAISING. Und Ersteres ist leider sehr häufig der Fall. Mit dem neuen…

WEITERLESEN

Ausnahmen mit T100-Nachricht [ABAP750]

Ausnahmen mit T100-Nachricht [ABAP750]

Die Verwendung von T100-Nachrichten mit Klassen basierten Ausnahmen ist von Beginn an krampfig. Alt und Neu passte immer irgendwie nicht so richtig zusammen. Paul Hardy hat sich in seinem sehr guten Buch ABAP To The Future dafür ausgesprochen, ausschließlich die neue Variante – also ohne T100-Nachricht zu verwenden. Es sprechen aber im Kampf mit den täglichen Programmiermonstern viele Dinge dafür, die Exceptions mit T100-Nachricht zu verwenden. Umständlich Die Verwendung von Klassen basierten Ausnahmen in Verbindung…

WEITERLESEN