# Mit Datum aus Textfeld rechnen



## UrsA (1. Apr 2022)

Hallo Zusammen

Ich möchte für ein PDF-Formular aus einem Textfeld, in welches ich ein Antrags-Datum (Datum) eintrage, dieses auslesen. Wenn meine Checkbox gedrückt ist, soll dieses Datum um ein Jahr, ansonsten um 30 Tage erhöht werden und in das Feld "Dauer" eingetragen werden. Mit dem aktuellen Datum habe ich dies so gelöst (Dem Feld Datum zugewiesen): 

var Logo = this.getField("SelectLogo");
var Datum = new Date();
var Dauer = this.getField("Dauer");

var tag1 = Datum.getDate() +0;
var monat1 = Datum.getMonth() +1;
var jahr1 = Datum.getYear() +1901;

var tag2 = Datum.getDate() +0;
var monat2 = Datum.getMonth() +4;
var jahr2 = Datum.getYear() +1900;


if (this.getField("SelectLogo").isBoxChecked(0))
Dauer.value = tag1+"."+monat1+"."+jahr1;
else
Dauer.value = tag2+"."+monat2+"."+jahr2;

Kann mir Jemand sagen, wie ich das machen muss?

Danke und Gruss
UrsA


----------



## Oneixee5 (1. Apr 2022)

Falls das wirklich Java ist und nicht JavaScript, solltest du gar nicht so arbeiten. Viele der Methoden sind in Java deprecated. Es wäre besser mit Klassen aus dem Paket java.time zu arbeiten.


----------



## KonradN (1. Apr 2022)

Oneixee5 hat gesagt.:


> Falls das wirklich Java ist und nicht JavaScript,


Das dürfte das JavaScript sein, das in PDFs eingebettet werden kann.

Habe da jetzt auf Anhieb keine gute EInstiegsseite von Adobe zu gefunden, aber https://helpx.adobe.com/de/acrobat/using/add-debug-javascript.html zeigt ein paar Dinge auf (Debugger, Script Editor, ...)

Aber viel mehr Ahnung habe ich davon auch nicht.


----------



## Oneixee5 (1. Apr 2022)

Ah, jetzt ist der Thread auch verschoben.
Es wird `var Datum = new Date();` für die Berechnung des neuen Datums verwendet, statt der Wert aus `Dauer.value` - oder wie auch immer das Feld heißt aus welchem das Datum gelesen werden soll.
Ich denke das müsste in etwa so laufen:

```
if (Dauer.value) {
    var parts = Dauer.value.split('.');
    var date = new Date(parts[2], parts[1] - 1, parts[0]);
    // ... irgendwas mit dem date machen ...
}
```
PS: Variablennamen schreibt man auch in JS klein.


----------



## UrsA (2. Apr 2022)

KonradN hat gesagt.:


> Das dürfte das JavaScript sein, das in PDFs eingebettet werden kann.
> 
> Habe da jetzt auf Anhieb keine gute EInstiegsseite von Adobe zu gefunden, aber https://helpx.adobe.com/de/acrobat/using/add-debug-javascript.html zeigt ein paar Dinge auf (Debugger, Script Editor, ...)
> 
> Aber viel mehr Ahnung habe ich davon auch nicht.


Danke für Deine Antwort. Ich bin nicht Programmierer, sondern versuche einfach die Problembeschreibung zu lösen. Da ich es für PDF verwende, wird es Java Script sein. Ich werde das schon irgendwie hinbringen


----------



## UrsA (2. Apr 2022)

Oneixee5 hat gesagt.:


> Ah, jetzt ist der Thread auch verschoben.
> Es wird `var Datum = new Date();` für die Berechnung des neuen Datums verwendet, statt der Wert aus `Dauer.value` - oder wie auch immer das Feld heißt aus welchem das Datum gelesen werden soll.
> Ich denke das müsste in etwa so laufen:
> 
> ...


Sorry, dass ich im falschen Forum war und Danke für Deinen Input. Hilft mir etwas weiter.


----------

