# Feld Format? Javascript?



## Shoemaker (14. Januar 2004)

Hallo Experten,

ich hab ein kleines Problem.
Hab ein PDF Formular erstellt, in dem etwas berechnet wird.
Am Ende kann man einen Betrag eingeben, der vom Gesamtbetrag abgezogen werden soll. Das klappt nur, wenn es ein Runder Betrag ist, ohne Komma, z.B. 100. Gebe ich jedoch 100,22 ein, kommt eine Fehlermeldung:"der eingegebene Betrag stimmt nicht mit dem Format des Feldes überein".

Gewählt habe ich Format Zahlen, Dezimalstellen 2 und Trennzeichen 1.234,01.

Was habe ich Falsch gemacht?
Brauch ich dafür auch einen Javascript Code?
Bin Anfänger...

Ich bin für jede Antwort dankbar!

mfg
Lars


----------



## Fabian H (14. Januar 2004)

Was hat PDF mit JavaScript zu tun?

Naja, jedenfalls mal ein Beispiel:

```
sTmp = new String("123.12"); //mit Dezimal Punkt
fNum = parseFloat(sTmp);
alert(fNum);

sTmp = new String("132,12"); //mit Komma
fNum = parseFloat(sTmp.replace(",", "."));
alert(fNum);
```


----------



## LeBigmac (19. Februar 2004)

Hi,

ich habe genau dasselbe Problem mit Acrobat 5. Wenn ich versuche eine MwSt-Berechnung (MwSt.-Betrag aus Bruttowert) ins Formular einzubauen kommt derselbe Fehler. Mein Skript sieht so aus:

var brutto  = this.getField("Endbetrag"); // Endbetrag errechnet sich aus Summe Einzelbeträge
var mwstx   = this.getField("MwSt"); // Auswahlfeld 0,16 bzw. 0,07
event.value  = brutto.value - (brutto.value / mwstx.value);

Hab schon verschiedene Kombinationen versucht aber der Fehler bleibt. Man kann als Format auch selbstdefiniert statt "Zahlen" nehmen aber dafür braucht man wieder ein JScript und ich bin leider auch ein totaler  in der Sprache. Kenne nur PHP, C++ und Pascal und das ist alles schon ne Weile her 

PS: Acrobat arbeitet mit JScript allerdings weiß ich nicht ob man einfach jedes JScript verwenden kann, werde mir mal die ReferenceGuide reinziehen aber da eigentlich wollte ich nicht extra JScript lernen für ne eigentlich popelige Berechnung in nem Formular


----------



## FreakyMice (19. Februar 2004)

Ich kenn mich mit Acrobat nich aus.

Kann man da genauso in den tabellen mit umgehen wie in Excel oder is das anders?


----------



## LeBigmac (19. Februar 2004)

anders 

In Excel ist das ganze in 2min erledigt aber in Acrobat erstellst du selber halt zB in einem eingescanten oder selbstgemachten Formular  an beliebiger Stelle Felder mit der Maus und kannst diesen Feldern dann Eigenschaften geben wie Textfeld, Dropdown etc.
In diesem Bsp. hab ich ein Textfeld erstellt mit der Eigenschaft:
Standardwert: 0
Format: Zahlen €1.234,56 Dezimalstellen 0 (2 Stellen ändert nix)
Berechnung: das obige Skript welches ich auf Basis eines Handbuch Bsp. erstellt habe -->


> var f = this.getField("WertA");
> var g = this.getField("WertB");
> event.value = f.value / g.value;



event ist offensichtlich der Variablenname den Acrobat als Ergebnis auswertet.


----------



## LeBigmac (19. Februar 2004)

oder event ist wohl doch eher eine JS Funktion sonst hätte ich sie ja deklarieren müssen ?

oh man ich geh jetzt was essen und dann schau ich mal weiter. Dummerweise brauch ich morgen früh das Formular  für ne Präsentation ...

Letztendlich wird das ganze dann eh irgendwann später mal über PHP laufen, denn Acrobat kann sich über den Browser aufgerufen mit einem cgi-skript über eine Datenbank Daten holen/schicken und dann kann ich die Berechnung auf der Webseite machen und das Ergebnis ans PDF senden aber so weit bin ich noch lange nicht


----------

