Anmelden

View Full Version : VRUNDEN() in RPG



Seiten : 1 [2]

camouflage
02-06-23, 16:38
Ich fass es nicht. Dieser Meccano ist doch seit S/34 Zeiten bekannt. Klar, wir müssen hier natürlich auch mit 5er Rundungen leben. Mit ensprechendem Multiplikator und Divisor funktioniert das in allen Schattierungen bis man lustig ist. Mal schauen ob das die KI auch weiss.

Fuerchau
02-06-23, 16:56
Meine 1. Lösung war mal gedacht zum generellen Aufrunden.
Z.B. bei Preiskalulationen auf die nächste schöne Zahl hochrunden, z.B. auf 0,25 oder 2,50 oder bei großen Werten auch gerne af 250 oder 500.
Dabei sollte eben nicht gerundet werden, wenn das Ergebnis bereits passte.
Negative Werte wurden auch aufgerundet, also von -1,20 auf -1,00, um z.B. bei Rechnungen einen höheren Wert als bei Gutschriften zu haben. Das Wertrisiko liegt da beim Kunden.

Interessant ist, dass man für alles und jedes nun SQL nehmen soll;-).

B.Hauser
02-06-23, 18:18
Meine 1. Lösung war mal gedacht zum generellen Aufrunden.
Z.B. bei Preiskalulationen auf die nächste schöne Zahl hochrunden, z.B. auf 0,25 oder 2,50 oder bei großen Werten auch gerne af 250 oder 500.
Dabei sollte eben nicht gerundet werden, wenn das Ergebnis bereits passte.
Negative Werte wurden auch aufgerundet, also von -1,20 auf -1,00, um z.B. bei Rechnungen einen höheren Wert als bei Gutschriften zu haben. Das Wertrisiko liegt da beim Kunden.

Interessant ist, dass man für alles und jedes nun SQL nehmen soll;-).

Das war aber nicht gefragt!
... und wenn, warum sollte man sich in RPG die Fingerchen brechen wenn es in SQL die Funktion CEILING gibt. Diese kann man dann in RPG einbinden genauso mit Division und Multiplikation einsetzen.

camouflage
02-06-23, 20:05
Das war aber nicht gefragt!
... und wenn, warum sollte man sich in RPG die Fingerchen brechen wenn es in SQL die Funktion CEILING gibt. Diese kann man dann in RPG einbinden genauso mit Division und Multiplikation einsetzen.

Birgitta, ich versteh es ja, du verdienst dir mit deiner SQL Kompetenz deine Brötchen. Nur, warum soll ich mir einen SQL Overhead antun, wenn es mit zwei simplen RPG Statements auch geht und das Ganze sogar noch nachhaltiger ist. SQL ist auch nicht immer der letzte Schrei.

Fuerchau
03-06-23, 08:39
Ceiling => %dech(val + 0.49 : 11 : 0)
Floor => %dec(val : 11 : 0)

Meinst du SQL macht da was anderes?

camouflage
03-06-23, 09:00
Und ganz vermessen, wenn man ChatGPT nach der SQL Rundung frägt:

SELECT Wert, ROUND(Wert * 2, 0) / 2 AS GerundeterWert
FROM MeineTabelle;

oder so:
SELECT ROUND(12.345 * 2, 0) / 2 AS GerundeteZahl from sysibm.sysdummy1

Merke, das in Deutsch und funktioniert auch noch.

BenderD
03-06-23, 14:49
... man muss sich auf die wichtigen Dinge konzentrieren:
- es heißt Db2 und nicht DB2
- es heißt nicht AS/400 sondern i
- es heißt nicht OS/400 sondern OS 4 i (oder so)
- wir erstellen alle Dateien mit SQL
- auf Indexe greifen wir dann mit RLA zu
- Views brauchen wir keine
- commit ist überflüssig (no risc no fun)
- RPG heißt immer noch RPG, obwohl keine Reports generiert werden
- native Dateizugriffe sind toll
- für SQL nehmen wir naming *SYS (damit es nicht zum Standard passt)
- SQL ist eine tolle Programmiersprache
- Journale belasten die Maschine
- Binder language ist toll
- SQL Standard ist was für Dummys
- SQL 4 i hat tolle SQL Erweiterungen
- Eclipse ist eine abgespeckte Version von IBM RDi
- free format declarations sind keine verunglückte C Abart
- das programmieren überlässt man ChatGPT
- das denken überlässt man den Pferden, die haben einen größeren Kopf

Schönes Wochenende noch

D*B

Fuerchau
03-06-23, 19:15
Und da hast du wahrscheinlich mehr als die Hälfte vergessen. Nun ja, wir werden halt alle älter...

BenderD
04-06-23, 08:37
Und da hast du wahrscheinlich mehr als die Hälfte vergessen. Nun ja, wir werden halt alle älter...

... das wird überschätzt, die relative Alterszunahme nimmt ab: in meinem zweiten Lebensjahr lag die bei 100%, seit 20 Jahren liegt die schon unter 2% und bewegt sich auf die 1% zu.