Ansicht
Dokumentation

ABAP/4: Verschärfte Prüfungen zur Laufzeit ( RELNBC_ABAP_SOFT_ERRORS )

ABAP/4: Verschärfte Prüfungen zur Laufzeit ( RELNBC_ABAP_SOFT_ERRORS )

RFUMSV00 - Advance Return for Tax on Sales/Purchases   ABAP Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Kurztext

ABAP/4: Verschärfte Prüfungen zur Laufzeit

Beschreibung

Etliche Situationen, die der Definition der Sprache ABAP/4 widersprechen, aber bislang nicht geprüft wurden, führen in Zukunft zu einem Laufzeitfehler. Da es sich hierbei teilweise um Fehler handelt, die in manchen Fällen nicht zu einem grob falschen Programmverhalten führten (weil z.B. ein Feld mit nicht typgerechtem Inhalt im weiteren Programmablauf gar nicht mehr verwendet wurde), gibt es für den ABAP-Prozessor einen neuen Systemparameter, womit die verschärften Prüfungen ein- und ausgeschaltet werden können. Wenn nicht aktiviert, laufen Programme wie bisher ab; dies empfiehlt sich für den produktiven Betrieb. Im Entwicklungssystem sollten dagegen die neuen Prüfungen eingeschaltet werden, damit auch die kundeneigenen ABAP/4-Programme bereinigt werden können. In vielen Fällen können dadurch Programmfehler aufgedeckt werden, die bislang kaum zu finden waren.

Es handelt sich um die folgenden Prüfungen:

  • Zuweisung eines lokalen Feldes an ein globales Feldsymbol.
  • Prüfung auf korrektes Zahlenformat bei Zuweisung eines C-Feldes an oder Vergleich mit einem I-Feld.
Die Zuweisung eines Textfeldes (ABAP-Typ C) an ein Integer-Feld (ABAP-Typ I) setzt voraus, daß das Textfeld eine Zahl, ggf. mit Vorzeichen und Dezimalpunkt, und sonst nur Leerzeichen enthält. Bislang wurden alle sonstigen Zeichen überlesen, also auch Buchstaben, die mitten in der Ziffernfolge vorkamen; auch ein evtl. vorkommender Dezimalpunkt wurde nicht berücksichtigt. Mit der neuen Prüfung verhält sich diese Zuweisung nun wie die Zuweisung eines Textfeldes an ein gepacktes Feld (ABAP-Typ P). - Beim Vergleich eines Textfeldes mit einem Zahlenfeld wird das Textfeld implizit in eine Zahl konvertiert, so daß derlei Fehler auch hierbei auftreten können.
  • Prüfung in der Verbuchung, ob die übergebenen Daten die richtige Struktur besitzen.
  • Prüfung bei SORT itab BY, ob die angegebenen Sortierfelder auch zu der internen Tabelle itab gehören.
  • Prüfung auf einige nicht implementierte Sprachelemente, die nicht vom Syntax-Check abgefangen werden.

Soft-/Hardwarevoraussetzungen

Besonderheiten bei der Installation

Auswirkungen auf die Systemverwaltung

Es wird empfohlen, diese verschärften Prüfungen nur im Entwicklungssystem zu aktivieren, damit Sie Ihre Eigenentwicklungen bereinigen können, ohne den produktiven Betrieb zu stören. Dazu muß im Profile des Entwicklungssystems der folgende Systemparameter gesetzt werden:

    abap/warnings = dump

Das Nichterfüllen einer verschärften Prüfung führt dann zu einem Abbruch. Ist dagegen der Systemparameter abap/warnings nicht gesetzt, läuft das Programm wie bisher weiter.

Statt des Wertes dump kann man auch list angeben. Auch in diesem Fall läuft ein Programm weiter, wenn eine verschärfte Prüfung nicht erfüllt ist, derartige Verstöße werden jedoch für ein Programm, das unter Kontrolle der Testhilfe ("Debugger") abläuft, protokolliert. Das Protokoll für den aktuellen Programmlauf findet man in der Testhilfe unter dem Menüpunkt Springen->Warnungen. (Die neuen Prüfungen werden darum auch als Laufzeitwarnungen bezeichnet.)

Auswirkungen auf das Customizing

Änderungen in der Vorgehensweise

Abhängige Funktionen

Planungen

Die zu Release 2.0 eingeführten "weichen" Laufzeitfehler werden in Release 2.1 zu normalen Fehlern, die stets einen Abbruch auslösen (auch wenn der Systemparameter abap/warnings nicht gesetzt ist).

Weitere Hinweise






CL_GUI_FRONTEND_SERVICES - Frontend Services   TXBHW - Original Tax Base Amount in Local Currency  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 5067 Date: 20240523 Time: 152529     sap01-206 ( 104 ms )