Compute Programm erzeugt DUMP

Getting started ... Alles für einen gelungenen Start.
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Compute Programm erzeugt DUMP

Beitrag von JohnLocklay (Specialist / 183 / 30 / 2 ) »
Einen schönen guten Tag.

hab mich gerade hier im Forum angemeldet. Bin selber gerade in
einer Fortbildung zu ABAP Entwickler und wäre gerade sehr dankbar darüber
wenn mir jemand bei meinem Code eine Hilfestellung geben könnte.

Es handelt sich um ein einfaches Rechnerprogramm.
Vermieden werden soll lediglich das man nicht durch null teilen darf und im
Feld pa_op kein anderes Zeichen als die anderen Operanten angegeben werden.
Setze ich im feld pa int2 die zahl auf null bekomme ich das message Feld angezeigt- bestätigt man das Feld
wird danach ein Dump ausgelöst. weiss irgend jemand warum?

Ich hoffe mein Code ist nicht zu trivial.. bin noch ganz am Anfang.
Über Hilfe wäre ich dankbar.

Hier der Code.
*******************************************************************************

PARAMETERS pa_int1 TYPE i.
PARAMETERS pa_op TYPE c LENGTH 1.
PARAMETERS pa_int2 TYPE i.

DATA gv_result TYPE p LENGTH 16 DECIMALS 2.

IF pa_op = '/' and pa_int2 = 0.
MESSAGE 'nicht durch null teilbar' TYPE 'I'.
ENDIF.

CASE pa_op.
WHEN '+'.
gv_result = pa_int1 + pa_int2.
WHEN '-'.
gv_result = pa_int1 - pa_int2.
WHEN '*'.
gv_result = pa_int1 * pa_int2.
WHEN '/'.
gv_result = pa_int1 / pa_int2.
WHEN OTHERS.
MESSAGE 'Falscher Operant' TYPE 'I'.
ENDCASE.

WRITE gv_result.
Code once - Think twice

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Compute Programm erzeugt DUMP

Beitrag von Andaria (ForumUser / 18 / 1 / 6 ) »
Hi,

das ist eigentlich ganz einfach. Debugge doch einfach mal dein Programm - du wirst sehen, dass deine Nachricht ausgegeben wird, danach aber die weitere Verarbeitung ganz normal ausgeführt wird und somit dann auch versucht wird durch 0 zu dividieren.
Schau dir mal die Doku zum Verhalten von Nachrichten an, dort ist erklärt wie sich der Befehl MESSAGE verhält, je nachdem was für ein "TYPE" mit angegeben wird. Da du als Typ 'I', also eine Informationsnachricht ausgewählt hast, wird die Verarbeitung des Programmes weiter ausgeführt. Um das Programm abbrechen zu lassen müsstest du den Typ 'E' (oder 'A') verwenden.

Re: Compute Programm erzeugt DUMP

Beitrag von JohnLocklay (Specialist / 183 / 30 / 2 ) »
manchmal sieht man den wald vor lauter bäumen nicht.
Vielen dank!
Code once - Think twice

Seite 1 von 1

Vergleichbare Themen

2
Antw.
2747
Views
ALV im Dialogboxcontainer erzeugt Dump
von h.c.w » 25.10.2013 12:00 • Verfasst in ABAP Objects®
9
Antw.
4076
Views
Wie man einfach einen Dump erzeugt....
von ralf.wenzel » 30.10.2013 10:11 • Verfasst in ABAP® Core
4
Antw.
628
Views
replace erzeugt Leerzeichen
von A6272 » 18.02.2022 14:06 • Verfasst in ABAP® für Anfänger
0
Antw.
1673
Views
2
Antw.
2963
Views
cl_alv_table_create=>create_dynamic_table erzeugt Kurzdum
von Gast » 13.12.2005 08:54 • Verfasst in ABAP® Core

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Unbeantwortete Forenbeiträge

Username als Variable in xdc-Datei?
vor einer Woche von uli3480 1 / 1654
Substitution zum Zeitpunkt 60
vor 3 Wochen von irene 1 / 4258
CDS View Erweitern mit Hierarchie
vor 3 Wochen von Interger 1 / 6921
Intervall mit Beziehungswissen füllen
letzen Monat von wolli 1 / 41006