BASE64-kodiertes Pony anzeigen
Ein kleines Demo-Programm um ein BASE64 kodiertes Rennpony-GIF in einem Container anzuzeigen.
WEITERLESENEin kleines Demo-Programm um ein BASE64 kodiertes Rennpony-GIF in einem Container anzuzeigen.
WEITERLESENIn dem Beitrag ALV-Grid aus SALV ermitteln habe ich beschrieben, wie du bei einem SALV-Grid an das zugrundeliegende ALV-Grid (Klasse CL_GUI_ALV_GRID) heran kommst. Die Vorgehensweise funktioniert allerdings ab Release 7.55 nicht mehr. Deswegen hier ein Coding, das für SAP-Releases ab 7.55 funktioniert. Danke an Stefan für den Hinweis! Coding Hilfsklasse Coding Verwendung In folgendem Beispiel erzeuge ich ein SALV-Grid und zeige es auf dem Selektionsbildschirm an. Mit der oben genannten Hilfsklasse ermittele ich die CL_GUI_ALV_GRID-Instanz…
WEITERLESENIm SAPGUI Easy Access Menu gibt es die Möglichkeit, ein Bild anzuzeigen. Das ist einerseits hilfreich, um das Unternehmens-Branding direkt beim Anmelden an das R/3-System zu präsentieren. Andererseits kann man auf diese Weise die unterschiedlichen Systeme gut und einfach kennzeichnen, so dass die Anwendenden auf Anhieb wissen, in welchem System sie sich angemeldet haben. In unserem Entwicklungssystem sieht das zum Beispiel wie folgt aus: Einstellungen Um ein Bild für das Easy Access Startmenü festzulegen, gehst…
WEITERLESENÜber Langtexte im SAP wird oft geschimpft, da sie aus historischen Gründen umständlicher verwaltet werden, als man es aktuell tun würde. Dieser Artikel soll eine kurze Übersicht über Texte im Allgemeinen und die Verwendung von Langtexten im SAPMV45A-Umfeld.
WEITERLESENHeute hatte ich einen merkwürdigen Fehler: Ich konnte eine inaktive Klasse nicht aktivieren. Der Class Builder hat nur gemeldet: “Active class has been generated”, aber die Klasse war weiterhin inaktiv. Bei der Fehlersuche bin ich zwar nicht auf die Ursache gestoßen, habe aber einige Funktionsbausteine und Klassen kennengelernt, die bei der Fehlersuche hilfreich waren. Mit Hilfe des Funktionsbausteins RS_INACTIVE_PART habe ich immerhin herausgefunden, welcher Teil der Klasse nicht aktiv war, aber da die Komponenten einer…
WEITERLESENÜbersetzungen sind immer ein leidiges Thema. Stephan hat mir einen Tipp zugesendet, wie man die Arbeit in der Transaktion SE63 Übersetzungseditor etwas zügiger gestalten kann. Noch im Einstieg der SE63 kann man durch Eingabe eines Funktionscodes die Navigation abkürzen so dass man direkt zum Zielobjekt gelangt. Einige Beispiele: DE – Datenelement NA – Nachricht PR – Programm OTRS – OTR-Text Nach wie vor muss man jedoch erst einmal den richtigen Code für das jeweilige Objekt…
WEITERLESENI’d rather write code that writes code than write code mir unbekannter Autor Dieses Zitat passt sehr gut zu dem hier vorgestellten Code-Schnipsel. Mit diesem kleinen Programm zeige ich dir exemplarisch, wie man per Programm eine Klasse im Repository anlegen kann. Es wird die folgende Klasse angelegt: Anlegen einer Klasse Aber nun zu dem spannenden Teil: Der Anlage der Klasse. Es werden alle notwendigen Bestandteile mitgegeben. Bei den meisten verwendeten Tabellen des Bausteins SEO_CLASS_CREATE_COMPLETE beziehen…
WEITERLESENIn einem Projekt stand ich erneut vor der Aufgabe, eine Hierarchie von ausgelösten Exceptions anzeigen zu müssen, um einem Fehler auf die Spur zu kommen. Natürlich kann man sich im Debugger das Ausnahmeobjekt anzeigen lassen und jeweils die PREVIOUS-Ausnahmeobjekte durchklicken. Allerdings funktioniert das nur, wenn man selbst den Fehler nachstellen kann. Einfacher wäre es unter Umständen, wenn der Anwender bereits die Aufrufhierarchie sehen könnte. Das könnten zwar durchaus zu viele und vor allen Dingen zu…
WEITERLESENBevor man damit beginnt, eine vorhandene Applikation zu erweitern oder umfangreich anzupassen, könnte man auf die Idee kommen, prüfen zu wollen, ob die beteiligten Objekte eventuell gerade gesperrt sind. In diesem Fall könnte man die Entwicklung nämlich nicht reibungslos durchführen. Die Änderung des gesperrten Objektes wird dann nämlich dem bereits vorhandenen Transportauftrag zugeordnet. Das wiederum bedeutet, dass die Transportaufträge gemeinsam transportiert werden müssen. Um prüfen zu können, welche Objekte gesperrt sind, habe ich einen kleinen…
WEITERLESENIch arbeite immer noch viel mit Dynpros. Für mich und die meisten meiner Kunden ist das nach wie vor das Frontend, mit dem gearbeitet wird. Bei der GUI-Programmierung habe ich mir angewöhnt, einzelne Teile in separaten Controls zu programmieren. Das hat den Vorteil, dass diese Module austauschbar und einzeln testbar sind. Um mehrere Module unterzubekommen, bieten sich Splittercontainer an. Diese haben jedoch den Nachteil, dass die Konfiguration (Größe, Breite, Höhe) feste definiert werden muss. Verwendet…
WEITERLESEN