Was ist der eleganteste Weg, um centgenau ab(!)zurunden?

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Was ist der eleganteste Weg, um centgenau ab(!)zurunden?

Beitrag von DeathAndPain (Top Expert / 1833 / 222 / 401 ) »
Hallo zusammen,

ich stehe vor einem Problem, das auf den ersten Blick simpel wirkt: Ich möchte einen Betrag (also einen Wert mit zwei Nachkommastellen) durch eine Zahl teilen, und zwar dergestalt, dass Centbruchteile immer abgerundet werden (auch wenn die dritte Stelle nach dem Komma 9 wäre und bei kaufmännischer Rundung aufgerundet werden würde).

Soweit ich das beurteilen kann, runden die ganzen Rundungsfunktionen, die ABAP so bereithält (DIV, TRUNC, ROUND, FLOOR usw.) alle auf ganze Zahlen. Ich will aber centgenau, also auf die zweite Nachkommastelle runden und dabei immer abrunden.

Ein Weg, der mir einfällt, besteht darin, den ganzen Betrag mit 100 zu multiplizieren, dann mit DIV zu dividieren und das Ergebnis anschließend wieder durch 100 zu teilen. Wirkt auf mich aber nicht sonderlich elegant. Ist das schon der beste Weg, oder gibt es einen besseren?

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


Re: Was ist der eleganteste Weg, um centgenau ab(!)zurunden?

Beitrag von wreichelt (Top Expert / 1039 / 30 / 189 ) »
Hallo,

der FB Round

https://www.berater-wiki.de/Funktionsbaustein_ROUND


Gruß Wolfgang

Folgende Benutzer bedankten sich beim Autor wreichelt für den Beitrag:
DeathAndPain


Re: Was ist der eleganteste Weg, um centgenau ab(!)zurunden?

Beitrag von black_adept (Top Expert / 3987 / 108 / 898 ) »
TRUNC( x * 100 ) / 100.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

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.