Einlesen,Subtrahieren von Datumswerten und Ausgeben in Textfelder im Acrobat X10

Die Möglichkeiten und Tücken von Formularen
Antworten
RolleMal
Beiträge: 1
Registriert: 16.02.2011, 12:55

Einlesen,Subtrahieren von Datumswerten und Ausgeben in Textfelder im Acrobat X10

Beitrag von RolleMal » 28.02.2011, 14:55

Zuerst einmal ein Hallo an die große Adobe Gemeinde!

Da ich lange nach einer Lösung zum Subtrahieren im Acrobat X10 gesucht habe, möchte ich, da ich mir jetzt aus ein paar Codeschnippsel einen funktionierenten Code gepastelt habe, alle daran teilhaben lassen!

Ein Textfeld mit den Namen Datum_3 erstellen
unter -> Format -> Benutzerdefiniert = dd.mm.yyyy eintragen.

Ein Textfeld mit den Namen Datum_2 erstellen
unter -> Format -> Benutzerdefiniert = dd.mm.yyyy eintragen.

Ein Textfeld mit den Namen Subtrahieren_Datum erstellen
unter -> Format -> Zahlen -> 0 Dezimalstellen -> kein Währungszeichen
--> Berechnung -> Benutzerdef. Berechnungsscript ->
var Datum_Anfang = util.scand("dd.mm.yyyy",this.getField("Datum_2").value); var Datum_Ende = util.scand("dd.mm.yyyy",this.getField("Datum_3").value); var Differenz01 = Datum_Ende.getTime() - Datum_Anfang.getTime() var Differenz02 = Differenz01 / 86400000 var Differenz03 = Math.ceil( Differenz01 / 86400000 ) this.getField("Subrahieren_Datum").value = Differenz03;
eintragen.


Sobald ich jetzt im Textfeld ein anderes Datum eingebe erscheint sofort die Differenz im Textfeld Subtrahieren_Datum!

Viel Spaß!!

markus9900
Beiträge: 5
Registriert: 24.06.2008, 11:18

Einlesen,Subtrahieren von Datumswerten und Ausgeben in Textfelder im Acrobat X10

Beitrag von markus9900 » 08.03.2011, 12:49

Hallo,

habe den Code ein bisschen umgebaut  -> läuft unter Acrobat 9.0


Datum_Anfang = util.scand("dd.mm.yyyy",this.getField("Datum_2").value);
Datum_Ende = util.scand("dd.mm.yyyy",this.getField("Datum_3").value);

Differenz01 = Datum_Anfang.getTime() - Datum_Ende.getTime();

Differenz02 = (Differenz01 / 86400000);

Differenz03 = Math.ceil(Differenz01 / 86400000) ,this.getField("Subtrahieren_Datum").value = (1) + Differenz03;

Flo B
Beiträge: 1
Registriert: 18.08.2020, 08:20

Re: Einlesen,Subtrahieren von Datumswerten und Ausgeben in Textfelder im Acrobat X10

Beitrag von Flo B » 18.08.2020, 08:36

Hallo zusammen,

schön was man nach so einiger Zeit alles nützliches im Internet findet :)
Ich habe euren Code hier genutzt und möchte nun noch eine Kleinigkeit (?) ergänzen.

Und zwar soll die Differenz grundsätzlich ohne den Starttag berechnet werden, also:
this.getField("Dauer").value = Differenz03;

Wenn der Start und der Endtag aber gleich sind, soll entweder fix der Wert 1 eingetragen werden oder eben:
this.getField("Dauer").value = (1) + Differenz03;

Das wäre der komplette Code, bei dem es allerdings die Meldung "sytax error" bringt. Da ich mich mit Javascript nicht wirklich auskenne, wäre es klasse, wenn mir hier jemand behilflich sein könnte.

____________________________________________________________________________

Datum_Anfang = util.scand("dd.mm.yyyy",this.getField("bis").value);
Datum_Ende = util.scand("dd.mm.yyyy",this.getField("von").value);

Differenz01 = Datum_Anfang.getTime() - Datum_Ende.getTime();

Differenz02 = (Differenz01 / 86400000);

Differenz03 = Math.ceil(Differenz01 / 86400000) ,


if( Datum_Anfang == Datum_Ende )
this.getField("Dauer").value = (1) + Differenz03;

else

this.getField("Dauer").value = Differenz03;

_____________________________________________________________________________

Besten Dank schon mal und schöne Grüße
Flo

Antworten