Seite 1 von 1

Summenberechnung über Javascript

Verfasst: 23.01.2017, 13:07
von officemanager
Hallo,

ich habe ein Reisekostenformular erstellt, bei dem aber die Summenbildung der Fahrtkosten nicht funktioniert.

Beim Feld "Taxibelege" kommt nach Eingabe eines Betrags  wie z.B. 70,50 immer wieder eine Meldung, dass die Feldformatierung nicht mit der des Summenfeldes übereinstimmt und die Kosten werden nicht addiert.
Die Felder sind aber alle als Zahl mit gleicher Anzahl Dezimalziffern und gleichem Trennzeichen definiert.
Die Berechnung erfolgt über das nachstehende Skript:
getField("Summe Fahrtkosten").value =
getField("Kilometer").value * getField("KM-Pauschale").value + getField("Flugticket").value + getField("Bahntickets").value + getField("Taxikosten").value + getField("SonstigeFahrten").value;


Nachdem ich mir das Teil nun noch einmal intensiv vorgenommen hatte und dabei keinen Fehler entdecken kann, hoffe ich hier Hilfe zu finden.



Summenberechnung über Javascript

Verfasst: 23.01.2017, 19:12
von Merklin
Hi,

geht es jetzt?

VG Merklin

Summenberechnung über Javascript

Verfasst: 24.01.2017, 09:46
von officemanager
Leider nein, das Problem bleibt das Gleiche!
Bitte mal bei Taxibelege den Betrag von 75,6 (für € 75,60) eingeben, dann kommt die Fehlermeldung und es wird nicht korrekt addiert.

Freundliche Grüße,
Marion Jacob

Summenberechnung über Javascript

Verfasst: 24.01.2017, 10:59
von BAlheit
Ich würde erstmal das fehlerhafte Skript im Feld Kilometer korrigieren oder beseitigen.

Bernd Alheit

Summenberechnung über Javascript

Verfasst: 24.01.2017, 11:17
von officemanager
Hallo Herr Alheit,

Was möchten Sie mir mit dieser Antwort sagen?
Und inweiweit soll es hilfreich sein für das beschriebene Problem?

Freundliche Grüße,
Marion Jacob

Summenberechnung über Javascript

Verfasst: 24.01.2017, 12:44
von Semonia
officemanager hat geschrieben:Die Felder sind aber alle als Zahl mit gleicher Anzahl Dezimalziffern und gleichem Trennzeichen definiert.
Die Berechnung erfolgt über das nachstehende Skript:
getField("Summe Fahrtkosten").value =
getField("Kilometer").value * getField("KM-Pauschale").value + getField("Flugticket").value + getField("Bahntickets").value + getField("Taxikosten").value + getField("SonstigeFahrten").value;


Nachdem ich mir das Teil nun noch einmal intensiv vorgenommen hatte und dabei keinen Fehler entdecken kann, hoffe ich hier Hilfe zu finden.
Hallo ...
ich habe mir die PDF-Datei nicht angesehen, weil ich von einer einfachen Fehlerquelle ausgehe.
Zum ersten solltest du sauberer und mit Variablen arbeiten:
Variablen initialisieren:

Code: Alles auswählen

var summe = 0;
etc ...
Die Feldwerte in Variablen überführen:

Code: Alles auswählen

var summe = this.getField("Summe Fahrtkosten").value;
etc ...
Mit den Variablen in die Berechnung gehen ... auch wenn das Motto Punkt vor Strich rechnung ist, trotzdem Klammern nutzen:

Code: Alles auswählen

.... (Betrag1 * Betrag2) +Betrag3  + etc ...;
Wenn Felder geleert bleiben, ändert JS gerne den Variablentyp von Zahl in Text.
Wenn du das verhindern willst kannst du z.B. die Number() Funktion verwenden.

Code: Alles auswählen

Number(Betrag1) + Number(Betrag2) + etc.
LG
Semonia



Summenberechnung über Javascript

Verfasst: 24.01.2017, 15:43
von officemanager
Hallo zusammen,

die Antworten hier im Forum hatten zwar nicht die Lösung des Problems, aber haben mich dranbleiben lassen. Danke für alle Hinweise.

Das Problem lag einzig und alleine daran, dass nicht alle Felder, auf die das Script Bezug nimmt, mit dem Standardwert "0" vorbelegt waren.

Jetzt funktioniert alles wunderbar!

Liebe Grüße
Marion Jacob



Summenberechnung über Javascript

Verfasst: 24.01.2017, 16:38
von Semonia
officemanager hat geschrieben:Hallo zusammen,

die Antworten hier im Forum hatten zwar nicht die Lösung des Problems, aber haben mich dranbleiben lassen. Danke für alle Hinweise.

Das Problem lag einzig und alleine daran, dass nicht alle Felder, auf die das Script Bezug nimmt, mit dem Standardwert "0" vorbelegt waren.

Jetzt funktioniert alles wunderbar!

Liebe Grüße
Marion Jacob
Hallo
Damit hast du jetzt aber nur die Symptome beseitigt nicht aber die Krankheit geheilt ;)
Wenn dir das reicht dann ist allerdings auch gut.
LG
Semonia

Re: Summenberechnung über Javascript

Verfasst: 10.04.2022, 10:01
von bds-oldie
Hallo Semonia,
ich schicke mal das Formular in eine korrigirten Version. Ich habe aber die Gesamtkostenertstattug aus den Zwischensummen gebildet. Wenn es anders sein soll, dann bitte die Endsumme mit den im Originalformular benannten Feldern (Bahntickets, Bewirtungsbelege, Flugticket, Hotelrechnung, PKW-Kosten, Parkplatz, Porto, SonstigeFahrten, Taxibelege, Telefonkosten, Trinkgelder) ändern. Außerdem habe ich noch ein Formatierungsscript für dier IBAN eingfügt.
ENTWURF2-DGZH-Reisekostenabrechnung-10.04.2022.pdf