-
Aufrunden auf die nächsten vollen 10 EUR
Hallo zusammen,
ich habe ein num. Feld (13,2) und möchte dieses immer auf die nächsten vollen 10,00 EUR aufrunden.
Hat jemand ein Tipp wie man das schlank hinbekommt.
Vielen Dank + schönes Schwitzen
Peter
-
Hallo Peter,
%inth(Feld/10)*10 bzw. zum Aufrunden %inth(Feld/10+0.49)*10
Gruß
M.Withake
-
Hi,
rundet inth nicht kaufmännisch ????
Peter
-
z.B. so:
PHP-Code:
D MyNumFld S 13P 2 inz(12320,11)
D MyResFld S 13P 2
*-------------------------------------------------
C/Exec SQL Set :MyResFld = Ceiling(:MyNumFld/10) * 10
C/End-Exec
/Free
Dsply MyResFld;
*INLR = *On;
/End-Free
Wir hatte übrigens in der iNN - eNews 5/2006 unter Tekki-Corner mit Nützliche SQL-Funktionen einen Tipp zu diesem Thema:
iNN - eNews 5/2006
Wer iNN noch nicht kennt oder sich registrieren möchte kann dies unter dem folgenden Link nachholen:
iNN - Online.de
Zur Erinnerung iNN ist kostenlos, jedoch nicht umsonst!
Birgitta
-
Das stimmt, deswegen hatte ich meinen Beitrag nochmal aktualisiert.
Durch die Addition von 0.49 bzw 0.499 kann man ein Aufrunden erzwingen.
-
muss ich da nicht 4,99 aufaddieren um auf volle "10,00" aufzurunden.
-
je nachdem wann die Addition durchgeführt wird. In meinem Fall wird die Addition nach der Division durchgeführt. Vor der Divison müsste die Anweisung so lauten:
%inth((feld+4.99)/10)*10
Die Lösung per SQL von Brigitta hat einen starken Overhead durch die SQL-Aufrufe und könnte bei vielen Berechnung sehr langsam werden. Vorteile wäre hier die Behandlung von negativen Zahlen, die man aber auch im RPG nachbilden könnte.
-
Hallo zusammen,
warum nicht einfach Division durch 10 mit Remainder,
Mult 10
Prüfung Remainder >= 5 then addiere 10
K. Hardy
-
Runden auf 10 Euro
Zitat von peter.kinne
...Hat jemand ein Tipp wie man das schlank hinbekommt.
....
Haben ja schon alle was gesagt, deshalb von mir noch ne "Lösung" in UraltRPG:
Das 13.2 Feld (A) bekommt über ne Mini - DS ein Unterfeld 1.2 (B)
Dann später an der Rundungsstelle im RPG einfach
B DIV 1 C 12 60 61
60 ADD 10 A
60 SUB C A
Änderung:
um sich noch Feld C zu ersparen könnte mans auch so machen denke ich...
B DIV 1 B 60 61
60 ADD 10 A
60 SUB B A
-
Zitat von peter.kinne
muss ich da nicht 4,99 aufaddieren um auf volle "10,00" aufzurunden.
ich würde sogar vorschlagen 5 aufzuaddieren, denn aus 35,00 soll doch 40 werden und nicht 30, oder?
Gruß
Christian
-
mhhh...
dann habe ich das wohl falsch verstanden.
Ich dachte auch bei 10,01 soll eine Rundung vorgenommen werden == 20,00??
k.
-
noch eine Lösung im Alt-RPG
PHP-Code:
add 9,99 A(13,2) A div 10 B(10,0) B mult 10 A
Similar Threads
-
By jgv in forum NEWSboard Drucker
Antworten: 7
Letzter Beitrag: 02-08-13, 09:28
-
By marmart in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 25-09-07, 15:29
-
By schatte in forum NEWSboard Windows
Antworten: 7
Letzter Beitrag: 21-11-06, 11:37
-
By pwrdwnsys in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 07-11-06, 15:34
-
By zannaleer in forum NEWSboard Drucker
Antworten: 6
Letzter Beitrag: 13-09-06, 10:35
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks