Show TOC

Aktivierbare CheckpointsLocate this document in the navigation structure

Zur Instrumentierung eines ABAP-Programms für Kontroll- und Testzwecke kann dieses die folgenden Anweisungen enthalten:

  • ASSERT

  • BREAK-POINT

  • LOG-POINT

Diese Anweisungen haben keinen operativen Charakter und sind somit keine Bestandteile der Programmlogik. Sie definieren so genannte Checkpoints, von denen es entsprechend obiger Anweisungen die drei folgenden Arten gibt:

  • Assertions

  • Breakpoints

  • Logpoints

Es gibt bedingte und unbedingte Checkpoints. Eine Assertion ist ein bedingter Checkpoint und als solcher mit einem logischen Ausdruck verknüpft. Breakpoints und Logpoints sind dagegen unbedingte Checkpoints.

Da Checkpoints ausschließlich Test- und Kontrollzwecken dienen, ist ihre Ausführung im produktiven Betrieb in der Regel unerwünscht. Aus diesem Grund kann zu jeder der obigen Anweisungen ein Zusatz ID angegeben werden, der sie mit einer so genannten Checkpoint-Gruppe verknüpft.

Über eine Checkpoint-Gruppe können die Aktivierungseinstellungen ihrer zugeordneten Checkpoints festgelegt werden. Mit Checkpoint-Gruppen verknüpfte Checkpoints heißen aktivierbare Checkpoints. Sie sind von außerhalb des Programms aktivierbar und deaktivierbar. Ein inaktiver Checkpoint, d.h. wenn keine geeignete Aktivierungseinstellung vorliegt, wird bei der Programmausführung ignoriert.

Empfehlung

Es wird empfohlen, aktivierbare Checkpoints nur für Tests oder zur Fehlersuche zu verwenden. Der Quelltext Ihrer produktiven Programme darf nie auf bestimmten Aktivierungseinstellungen aufsetzen.

Während Logpoints stets aktivierbare Checkpoints sind, ist die Angabe einer Checkpoint-Gruppe für Assertions und Breakpoints optional. Assertions und Breakpoints ohne Zuordnung einer Checkpoint-Gruppe sind immer aktiv und werden demnach bei der Programmausführung nie ignoriert. Die Anweisungen ASSERT und BREAK-POINT stehen damit sowohl in einer aktivierbaren als auch in einer immer aktiven Version zur Verfügung. Während immer aktive Breakpoints in produktiven Programmen verboten sind, führt eine immer aktive Assertion zu einem Laufzeitfehler, wenn das Ergebnis des zugehörigen logischen Ausdrucks falsch ist.

Bei aktivierbaren Checkpoints wird über die angegebene Checkpoint-Gruppe nach einer passenden Aktivierungseinstellung gesucht, die die Aktivierung und das Systemverhalten bei Ausführung der Anweisung bestimmt. Alternativ dazu kann die Aktivierung auch über die umgebende Kompilationseinheit erfolgen. Weiterhin können zu Checkpoint-Gruppen Aktivierungsvarianten angelegt werden, die die Gruppierung und Massenaktivierung von Checkpoint-Gruppen vereinfachen.

Checkpoint-Gruppen und ihre Aktivierungsvarianten sowie die zugehörigen Aktivierungseinstellungen können mit der Transaktion SAAB oder durch Vorwärtsnavigation ausgehend von dem Wert des Zusatzes ID aus der ABAP-Workbench gepflegt werden.

Die vorliegende Dokumentation beschreibt die Pflege von Checkpoint-Gruppen, Aktivierungsvarianten und den zugehörigen Aktivierungseinstellungen. Zu den Anweisungen ASSERT, BREAK-POINT, LOG-POINT und deren Zusatz ID sowie für eine Beschreibung des Systemverhaltens beim Erreichen einer solchen Anweisung siehe die ABAP-Schlüsselwortdokumentation.