Rundung einstellen

8. April 2007 00:18

Hallo,

kann man eigentlich Decimal Felder so einstellen das sie nach einer Vorgabe runden? ODer geht das nur im Quellcode?

Ich will ein Ergebnis runden:

rec_auf10000.END_PREIS := Ausgang * "Nettopreis pro Stück";

0,01 sollte das sein, habe das schon mit diesem Round probiert aber wie es der Zufall will klappt das nicht.

8. April 2007 00:46

Hallo Tesarolle,

mir ist eine definiertes (immer abrunden, immer aufrunden unsw.)Runden als Propertie nicht bekannt.

Da du ohnehin den Wert in dem Feld erechenen musst, ist ein FORMAT Befehl mehr wohl auch nicht tragisch oder?
Hier ein Link zum Thema Runden:
FORMAT Beispiele

Mit der Suchfunktion findest du zu den Stichworten
FORMAT oder
ROUND
weitere Beiträge zum Thema.
Gruß Mikka

8. April 2007 19:14

Hallo Mikka,

ich hatte die Suchfunktion schon bemüht, konnte diese Beispiele aber nicht auf mein o.g. Beispiel anwenden, bzw. dafür gab es kein Beispiel.

Wie kann ich meine Variable die ja das Ergebnis darstellt auf 0.01 Runden?

8. April 2007 19:59

Guck doch einfach in die Navision-eigene Onlinehilfe. Dort findest du gute Beispiele für die ROUND-Funktion, eben mit deiner Nachkommastellenanfoderung.

9. April 2007 10:07

Mit der Forumssuche und dem Stichwort ROUND währst du unter anderem auf folgenden Beitrag gestossen:

ROUND bei Navision24

Der ROUND-Befehl ist ausführlich und in Deutsch beschrieben!

9. April 2007 12:55

Hallo,

Wenn ich meine Variable "rec_auf10000.END_PREIS" runden möchte auf 0.01 muss ich das dann in einer zweiten zeile tun also:??


rec_auf10000.END_PREIS := Ausgang * "Nettopreis pro Stück";
rec_auf10000.END_PREIS := Round()

oder geht das nicht auch direkt in der ersten Zeile?

Mir geht es darum wie ich das in einer Zeile lösen kann!

Die Onlinehilfe habe ich nicht installiert, muss ich noch tun.

Frohe Ostern!

9. April 2007 14:04

Ja, das kannst du auch direkt in der ersten Zeile tun:
Code:
Gerundete Nummer := ROUND(Nummer, Präzision);

Und wie es Navision-like nunmal ist, kannst du statt der fertigen Nummer auch ihre Berechnung einfügen, also
Code:
Gerundete Nummer := ROUND(x*y, Präzision);


Trau dich ruhig, sowas mal wild auszuprobieren; der Compiler wird schon meckern, wenns eben doch mal nicht gehen sollte.

9. April 2007 20:09

tesarolle hat geschrieben:Die Onlinehilfe habe ich nicht installiert, muss ich noch tun.


Die wird doch Standardmäßig Installiert?!
Mit F1 kommst du in diese.

Wenn du im "C/AL Symbol Menü" einen Befehl anklickst bzw. Markierst und dann F1 drückst, geht Navision sogar direkt zu diesen Befehl.
Gruß Mikka

Natalie hat geschrieben:Trau dich ruhig, sowas mal wild auszuprobieren;

Dem stimme ich zu.
Schau dir im CRONUS den Original Code an, wie es MS gemacht hat.
Hier kannst du viel lernen.

Gruß Mikka

9. April 2007 21:51

Da 0.01 der Betragsrundung entspricht , kann man hier bei dem Feld die Property AutoFormatType auf 1 einstellen.

1 : Betragspreisrundung
2 : Stückpreisrundung

lt. Finanzbuchhaltung Einrichtung

Die Felder der Verkaufszeile / Einkaufszeile verwenden dies z.B. ( Amount, Unit Price, Unit Cost etc.) , wobei hier ggf. noch die Währungsrundung mit dazu kommt (wenn in AutoFormatExpr der Währungscode mitgegeben wird). Es werden dann stattdessen die für die jeweilige Währung hinterlegten Rundungen verwendet. Dies wird von der Funktion AutoFormatTranslate in Codeunit 1 erledigt.