yan2021
Goto Top

Ausfüllbares Formular mit Berechnung erstellen (Acrobat Pro)

Hallo liebe Admin-User,

wir müssen für neue Anträge ein PDF-Formular erstellen.
Dieses soll ausfüllbar sein, was im Grunde kein Problem darstellt, da ich das schon gemacht habe und weiß, wie es geht.

Aber nun sollen innerhalb des neuen Formulars auch ein paar Berechnungen, bzw. Übernahmen aus anderen Feldernmöglich sein.

Und zwar so:

1) Es sollen Zahlen, die weiter oben bereits in Felder eingefügt wurden, in Felder weiter unten übernommen werden. Dies soll automatisch geschehen, also ohne dass man vorher z.B. einen Button drücken muss.

2) Am Ende soll in der unteren Tabelle in einem Feld eine Addition stattfinden von allen Werten, die darüber liegen (also nur aus der 2. Tabelle).

Das wär´s schon.

Meine bisherigen Recherchen ergaben, dass hierzu eine sogenannte "interaktive PDF-Datei" nötig ist.
Ich könnte mir vorstellen, dass dies mit unserer Adobe-Version sogar geht, denn wir nutzen die Acrobat Pro Version.

Meine weitere Suche ergab, dass man für die Berechnung Java-Script-Code eingeben muss, damit das funktioniert. Da bin ich jedoch überfordert, denn damit kenne ich mich leider überhaupt nicht aus.

Könnt Ihr mir mit dem JS-Code helfen, den ich dort eingeben muss für eine einfache Addition in einer Zelle aus den Zellen darüber? Oder geht das erst, wenn ich den Entwurf des Formulars hier mal hochlade, sobald er vorliegt?

Grüße von
Yan face-wink

Content-ID: 5933314948

Url: https://administrator.de/contentid/5933314948

Ausgedruckt am: 23.11.2024 um 23:11 Uhr

5175293307
Lösung 5175293307 10.02.2023 aktualisiert um 14:01:15 Uhr
Goto Top
Zitat von @Yan2021:

1) Es sollen Zahlen, die weiter oben bereits in Felder eingefügt wurden, in Felder weiter unten übernommen werden. Dies soll automatisch geschehen, also ohne dass man vorher z.B. einen Button drücken muss.
Einfach den beiden Feldern den selben Namen verpassen dann geschieht das automatisch.
2) Am Ende soll in der unteren Tabelle in einem Feld eine Addition stattfinden von allen Werten, die darüber liegen (also nur aus der 2. Tabelle).
Dazu braucht man noch nicht mal JavaScript bei einfach Sachen ...
https://www.digicomp.ch/blog/2014/09/22/adobe-acrobat-rechnen-in-pdf-for ....

Wurstel.
Yan2021
Yan2021 10.02.2023 um 14:06:32 Uhr
Goto Top
Hallo @5175293307

Danke für die schnelle Antwort. Werde ich mir am Montag Morgen gleich mal anschauen.

Grüße von
Yan face-wink
Yan2021
Yan2021 13.02.2023 um 14:03:18 Uhr
Goto Top
@5175293307

Hat funktioniert. Klappt und ist wohl auch eine Lösung für mich.
Zwar ohne JavaScript, aber so geht es auch.

Grüße von
Yan face-wink
colinardo
Lösung colinardo 13.02.2023 aktualisiert um 15:01:18 Uhr
Goto Top
Servus,
mit JavaScript geht es natürlich auch, ein kleines Beispiel.

screenshot

Das was man im Feld zurückgeben möchte übergibt man an die Event-Variable event.value
event.value = parseFloat(this.getField('netto').value) * 1.19;  
Mit diesem Konstrukt kommt man generisch an die meisten Werte der Formular-Felder.
this.getField('name_des_feldes').value  
Berechnete Felder setzt man dann in der Regel in den Feldeigenschaften zusätzlich auf Read-Only.

Immer zu Hand haben sollte man die Acrobat JavaScript API-Referenz, das schweizer Taschenmesser für die Entwicklung mit Acrobat und Formularen:
https://opensource.adobe.com/dc-acrobat-sdk-docs/library/jsapiref/index. ...
Gibt es auch als PDF zum Download

Man sollte aber immer im Hinterkopf behalten das das hinterlegte JavaScript nicht zwingend platformübergreifend funktioniert und mobile Devices etc. dies auch in der Regel deaktivieren, bzw. oft auch gar nicht supporten.

Viel Erfolg.

Grüße Uwe
Yan2021
Yan2021 13.02.2023 um 15:42:13 Uhr
Goto Top
Danke auch an Dich, Uwe.

Habe das eben mal ausprobiert und funktioniert hervorragend face-smile

Grüße von
Yan face-wink