Überlauf bei gepackter Zahl

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

Überlauf bei gepackter Zahl

Beitrag von MasterSAP (ForumUser / 5 / 0 / 0 ) »
Hallo ihr SAPler,

ich habe gerade ein vermutlich ziemlich triviales Problem, dennoch hänge ich gerade ein wenig bei der Lösung des Problems. Es geht darum auf Basis von 2 Werten einen Prozentsatz zu ermitteln, also quasi den Anteil vom einen am anderen Wert.

Die Werte selbst habe ich in Datenelementen mit der Domäne WERTV8 abgelegt, das entspricht dem Typ P. Den Prozentwert habe ich in der Struktur mit DEC Länge 5 und Dezimalstellen 2 definiert (eben max. 100,00%).

Die beiden Werte können durchaus vom Inhalt her in die Millionen gehen, deswegen habe ich auch testweise einmal die Domäne auf WERTV8 und 9 geändert, allerdings ohne merkliche Besserung, denn mein Report dumpt nach wie vor mit folgendem Fehler:

COMPUTE_BCD_OVERFLOW
CX_SY_ARITHMETIC_OVERFLOW


Folglich muss es in irgendeiner Form an dem Prozentwert liegen, aber welche Domäne/Datentyp soll ich denn für einen prozentualen Wert nutzen?

Vielen Dank für Eure Hilfe, bin wirklich gerade am Hängen...

Wünsche Euch frohe Weihnachten.

Markus

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


Re: Überlauf bei gepackter Zahl

Beitrag von ralf.wenzel (Top Expert / 3921 / 200 / 280 ) »
Es wäre zielführend gewesen, auch die dumpende Rechenoperation zu posten.


Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Beitrag von TWP (Specialist / 445 / 0 / 1 ) »
Kann es sein, das einer deiner Daten 0 ist?

Hast du dir den Dump mal richtig angeschaut, dort findest du oft auch die aktuellen Werte die dazu geführt habe.

SOnst muss ich Ralf recht geben, genauere Angaben aus deinem Programm sind sicherlich hilfreich um dein Problem zu analysieren bzw. konkrete Hinweise zu geben.

MfG

Thomas

Beitrag von MasterSAP (ForumUser / 5 / 0 / 0 ) »
Hallo Ihr,

sorry für die fehlenden infos, diese werde ich gerne nachliefern.

Grundsätzlich sieht die dumpende Berechnung wie folgt aus:

Code: Alles auswählen.

diff_amount = amount - amount_comp.
IF amount NE 0.
diff_percent = diff_amount / amount * 100.
ELSE.
diff_percent = 0.
ENDIF.
Also Amount und amount_comp haben jeweils den Datentyp WERTV8, während diff_percent einen eigenen Datentyp/Domäne verwendet, welcher eben auf DEC basiert mit einer Länge von 5 und 2 Nachkommastellen (da ja eben mehr als 100% ned gehen)...

Vielen Dank schonmal :)

Grüße
Markus

Beitrag von Thomas R. (Expert / 755 / 78 / 34 ) »
Hallo Markus,
ändere doch mal die Definiton von diff_percent in p decimals 2 und sieh nach, ob es immer noch dumpt.

MfG
Thomas R.

Seite 1 von 1

Vergleichbare Themen

8
Antw.
4957
Views
Umstellung Unicode - Zuweisung gepackter Felder
von gutzeli » 18.10.2012 08:06 • Verfasst in ABAP® für Anfänger
6
Antw.
3465
Views
CONVT_OVERFLOW bei Zahl in HEX konvertieren
von Oltsch » 16.12.2013 16:01 • Verfasst in ABAP® Core
6
Antw.
4082
Views
Gleitkommazahl in Normale Zahl
von Thanatos82 » 09.09.2013 12:17 • Verfasst in ABAP® für Anfänger
3
Antw.
4377
Views
Zahl und Text zusammenfügen
von ABAP - Programmierer » 20.07.2005 09:35 • Verfasst in ABAP® für Anfänger
7
Antw.
3782
Views
zahl ziffernweise auslesen
von miomio » 16.10.2012 20:48 • Verfasst in ABAP® für Anfänger

Ü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

Daten an Tabelle binden
vor 16 Stunden von Bright4.5 1 / 351
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1994
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8593