Negativ oder Positiv?

Negativ oder Positiv?

Eine Frage, die Thomas Binder aus Berlin nicht nur bezüglich seines Immunsystems beschäftigt hat, sondern auch bei der Ausgabe von Daten im ALV-Grid. Er ist dabei über eine böse Falle bei den Darstellungsmöglichkeiten des ALV-Grid gestolpert, die sich einerseits logisch erklären lässt, anderseits jedoch Fragen aufwirft, warum dieser Grund im ALV-Grid nicht einheitlich behandelt wird. Darstellung von Zahlen Thomas hatte einen stinknormalen ALV-Grid programmiert, in dem positive als auch negative Zahlen angezeigt wurden. Alles hat…

WEITERLESEN

Hat eine Klasse Unit Tests?

Hat eine Klasse Unit Tests?

Für interne Audits oder Auswertungen oder auch einfach aus Interesse könnte man prüfen wollen, ob eine Klasse Unit Tests enthält oder nicht. Folgendes kleine Programm gibt alle lokalen Testklassen und die dazugehörigen Unit Tests in einer Liste aus. Coding Ausgabe Für die Klasse CL_AUNIT_PROG_INFO wird die folgende Liste erzeugt, die Auskunft über die enthaltenen Unit Tests gibt:

WEITERLESEN

Dynamische Vorschlagssuche

Dynamische Vorschlagssuche

Seit SAP Release 7.40 gibt es in der F4-Suchhilfe die erweiterte Option „Vorschlagssuche auf Eingabefeldern“. Im englischen wird es auch type-ahead oder proposal search genannt. Sie zeigt dem Anwender sofort nach Eingabe eines Zeichens in das Eingabefeld mögliche Treffer an. Je nach Datenbank kann in der Suchhilfe auch die Spaltenübergreifende Volltextsuche (fuzzy search) aktiviert werden. Die Vorschlagssuche wird in den gängigsten SAP-Transaktionen verwendet. Einstellung im SAPGUI Man kann die Vorschlagssuche in den SAPGUI-Optionen abschalten, denn…

WEITERLESEN

Loop At ITAB Group By

Loop At ITAB Group By

Mühsam ernährt sich das Eichhörnchen. Die heutige Nuss galt dem Befehlszusatz GROUP BY für den LOOP über eine interne Tabelle. Es gibt dankenswerter Weise in der SAP-Doku inzwischen viele Beispiele. Diese sind jedoch sehr abstrakt. Sie zeigen die Syntax, verdeutlichen aber nicht unbedingt, was damit möglich ist. Ich präsentiere euch heute ein paar Möglichkeiten der Gruppierung, die hoffentlich die Funktionsweise deutlich machen. Beispieldaten im Folgenden verwende ich diese Struktur für meine Beispiele: Die Tabelle soll…

WEITERLESEN

Screenshot zur Fehlermeldung erstellen

Screenshot zur Fehlermeldung erstellen

Fehlermeldungen sind eine wichtige Sache in der Programmierung. Sie geben Auskunft darüber, was schief gelaufen ist und im besten Fall noch, was erwartet wurde. Ich habe gerade gelesen, dass Fehlermeldungen die beste Art der Dokumentation sind, denn diese würden aufmerksam gelesen. Nun ja… Meine Erfahrungen sind andere. Häufig sind allein stehende Fehlermeldungen nicht aussagekräftig genug. Fehlermeldung 2.0 Wie wäre es denn, wenn man die Fehlermeldung mit einem Screenshot der aktuellen Transaktion verbinden würde? Es ist…

WEITERLESEN

Übersetzung einer Nachrichtenklasse

Übersetzung einer Nachrichtenklasse

Übersetzen sind eine der schlimmsten Dinge für Entwickler. In der Regel kann man direkt in der zugehörigen Transaktion das bearbeitete Objekt übersetzen: Menü Springen – Übersetzung. Bei Nachrichten funktioniert das jedoch immer nur für eine einzelne Nachricht. Es ist nicht möglich, alle Meldungen der Nachrichtenklasse gesammelt zu übersetzen. Jedenfalls nicht aus der Transaktion SE91 heraus. Übersetzungsumgebung Mit folgendem Vorgehen ist es möglich, die Nachrichten einer Nachrichtenklasse nacheinander abzuarbeiten: Starten der Transaktion SE63 Drucktaste Transport Object…

WEITERLESEN

CORRESPONDING (Tabelle mit Defaultwert)

CORRESPONDING (Tabelle mit Defaultwert)

In dem Beitrag CORRESPONDING habe ich gezeigt, wie mit dem neuen Schlüsselwort CORRESPONDING Werte einer Struktur in eine andere übertragen werden können. Interessant dabei ist die Option, einen Defaultwert übergeben zu können, der in der Quellstruktur nicht gefüllt ist. In diesem Beitrag zeige ich dir einen Codeschnipsel, der eine ganze Tabelle mit Corresponding überträgt. Beispiel: Baumknoten ändern Das GUI-Control CL_LIST_TREE_MODEL zur Darstellung eines Trees hat die Methode UPDATE_ITEMS mit der die einzelnen Felder eines Knotens…

WEITERLESEN

Sprachtransporte

Sprachtransporte

Wenn man ein paar eigenentwickelte Transaktionen oder Reports im SAP-System in eine andere Sprache übersetzt hat, dann stellt als Nächstes sich häufig die Frage, wie diese Texte jetzt in weitere Systeme gelangen sollen. Die offensichtliche Antwort wäre, einfach noch einmal alle Objekte zu transportieren, die zu den übersetzten Transaktionen gehören. Und je nach Einstellung des Transportsystems klappt das auch ganz gut. Aber es ist schon etwas unschön, den ganzen Code noch einmal zu transportieren, wenn…

WEITERLESEN

Hierarchiedarstellung von Controls

Hierarchiedarstellung von Controls

Hierarchien sind was Tolles! Controls sind auch toll! Wir sollten sie nutzen, so lange es sie noch gibt (Stichwort Fiori, ABAP in the Cloud etc.). Deswegen ein schönes Demoprogramm zur Analyse von GUI-Controls zur Laufzeit und Darstellung als Baumstruktur mit Hilfe der Klasse CL_COLUMN_TREE_MODEL. GUI-Elemente GUI-Controls sind ActiveX-Steuerlemente, die mit dem Stichwort EnjoySAP zu SAP Release 4.6C eingeführt wurden. Sie werden auch OCX-Controls genannt. Hier gibt es im Grunde zwei unterschiedliche Arten: Container Controls Sie…

WEITERLESEN
1 2 3 4 14