Einzelnen Beitrag anzeigen

Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.557 Beiträge
 
Delphi 12 Athens
 
#1

Berechnung Einzelposten (Unit-Price, Net-Price)

  Alt 28. Mär 2025, 16:59
Was ist eigentlich bei der Berechnung des Einzelposten für Unit-Price und Net-Price (E-Rechnung) der richtige Variablentyp?

Sollte man hier Float oder Currency verwenden?

Je nach dem, gibt es unterschiedliche Ergebnisse für die Berechnung bei Eingabe eines Bruttopreises und der Berechnung des Nettos daraus:

Delphi-Quellcode:
procedure Tfrm_Main.Button2Click(Sender: TObject);
var
  BruttoD: Double;
  NettoD: Double;
  BruttoC: Currency;
  NettoC: Currency;
begin
  // Mit Double
  BruttoD := 9.99;
  NettoD := BruttoD / 1.19;
  ShowMessage('Double: ' + FormatFloat('0.00', NettoD)); // Ausgabe: 8.39

  // Mit Currency
  BruttoC := 9.99;
  NettoC := BruttoC / (1 + (19 / 100));
  ShowMessage('Currency: ' + FormatFloat('0.00', NettoC)); // Ausgabe: 8.40
end;
Also einmal 8.39 für Net-Price, das andere mal 8.40.

Wenn man Currency verwendet und somit 8.40 ergibt sich hier z.B. bei der Seite PDF-Tools24 das Ergebnis wie anliegend angezeigt.

Also aus dem 9,99 Brutto wird 10,00 Brutto.

Anmerkung: Wenn ich in der Eingabemaske zunächst die 8,39 für den Unit-Price eingebe, dann erhalte ich wie bei mir 9,98 Brutto und das gesammte Rechenergebnis (also mit der Netto-Methode) ist identisch, wie bei mir.
Miniaturansicht angehängter Grafiken
bild_1_28_maerz_2025_1755.png  

Geändert von Harry Stahl (28. Mär 2025 um 17:04 Uhr)
  Mit Zitat antworten Zitat