Kleinstes Datum ermitteln

Fragen und Antworten rund um das Thema JavaScript im LiveCycleDesigner
Antworten
Gigi
Beiträge: 5
Registriert: 12.02.2018, 12:58

Kleinstes Datum ermitteln

Beitrag von Gigi » 19.02.2018, 21:19

Hallo zusammen
Bei uns in den Werkstätten müssen die Mitarbeitern ein Formular ausfüllen nach abgeschlossener Instandhaltung.
Mittels diesen Daten ermittle ich gleich im Formular die nächsten Plandaten der nächsten Instandhaltungen.
Nun bringe ich es aber nicht fertig aus mehreren Daten automatisch das kleinste (zuerst eintreffende) Datum zu ermitteln.

Mein Ansatz war zuerst die Werte mittels Date.parse in eine Ganzzahl umzuwandeln und anschliessend mittels Math.min der kleinste Werte zu selektieren. Wie erhalte ich nun aus dem parse-Wert wieder in ein Datum?

Code: Alles auswählen

//Kleinster Wert ermitteln

var Datum_num1 = Date.parse(Datum1)
var Datum_num2 = Date.parse(Datum2)
var Datum_num3 = Date.parse(Datum3)
var Datum_num4 = Date.parse(Datum4)
var datum_def = (Math.min(Datum_num1, Datum_num2, Datum_num3, Datum_num4))
Oder ist dies ein komplizierter Ansatz? Gibt es eine einfachere Lösung?

Vielen Dank für eure Hilfe.

armine
Beiträge: 2690
Registriert: 16.05.2009, 10:24

Kleinstes Datum ermitteln

Beitrag von armine » 20.02.2018, 09:31

Bei "Date.parse" sollte ein String übergeben werden, nicht das Objekt.
Umständlich ist dein Lösungsansatz trotzdem. Das gesuchte Datum erhältst du mit

this.rawValue = [Datum1.rawValue, Datum2.rawValue, Datum3.rawValue, Datum4.rawValue].sort()[0] ;

Übrigens: Du solltest künftig dein PDF hochladen.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Gigi
Beiträge: 5
Registriert: 12.02.2018, 12:58

Kleinstes Datum ermitteln

Beitrag von Gigi » 20.02.2018, 20:03

Super vielen Dank für die schnelle Antwort. Deine Variante klingt definitiv einfacher.
Ich werde dies sobald ich dazukomme so umsetzen.
Die Datei darf ich leider so nicht hochladen. Aber ich könnte das nächste Mal einfach eine eigene erstellen, nur mit meinem Script und den nötigen Feldern.

Gigi
Beiträge: 5
Registriert: 12.02.2018, 12:58

Kleinstes Datum ermitteln

Beitrag von Gigi » 20.02.2018, 22:57

Also, ich habe es nun versucht. Leider gibt er mir immer das Datum zurück, welches den  kleinsten Tag ausweist, unabhängig von Monat und Jahr.
Beiliegend meine Datei inkl. der Berechnung. Ich hoffe euch wird nicht übel vom Code. Ich befasse mich erst seit kurzer Zeit mit Javascript :-)
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

armine
Beiträge: 2690
Registriert: 16.05.2009, 10:24

Kleinstes Datum ermitteln

Beitrag von armine » 21.02.2018, 12:12

Wenn du kein Datumsformat (hier: "yyyy-mm-dd") anbietest, kann mein Ansatz nicht greifen.
Versuch’s mal so:
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Gigi
Beiträge: 5
Registriert: 12.02.2018, 12:58

Kleinstes Datum ermitteln

Beitrag von Gigi » 24.02.2018, 22:26

Vielen Dank armine. Der Tipp mit ("yyyy-mm-dd") hat mir geholfen.
Nun stehe ich vor einem weiteren Problem, welches ich nicht nachvollziehen kann.
Ich habe eine SWITCH-Anweisung erstellt um Tabellen mittels Auswahlknopf ein-auszublenden. In einem anderen Formular funktioniert dies auch einwandfrei.
Aber im beiliegenden greift zwar die SWITCH-Anweisung, jedoch nicht auf "hidden" und "visible".
Hat jemand einen Tipp?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

armine
Beiträge: 2690
Registriert: 16.05.2009, 10:24

Kleinstes Datum ermitteln

Beitrag von armine » 26.02.2018, 10:04

Tipp:
Öffne deine Datei und stelle in der XML-Quelle die Anzahl der Zeilen fest.
Erstelle mit dem LCD(!) eine neue Datei und kopiere sowohl die Optionsfelder als auch die beiden Tabellen hinein.
Vergewissere dich, dass es da nun wie gewünscht funktioniert.
Stelle in der XML-Quelle die Anzahl der Zeilen in der neuen Datei fest und wundere dich, was da in der alten Datei an offenbar nicht benötigtem steckt.
Trete die alte Datei und alles was dazu geführt hat in den Papierkorb.
Lösche diese Dateien auch im Papierkorb.

P.S.: „switch“ ist bei der Menge der Optionen überdimensioniert. Ein einfaches „if“ genügt.

Gigi
Beiträge: 5
Registriert: 12.02.2018, 12:58

Kleinstes Datum ermitteln

Beitrag von Gigi » 27.02.2018, 20:23

Super armine, es funktioniert.
Es werden künftig noch weitere verschiedene Tabellen dazukommen, deshalb habe ich mal die switch-Variante gewählt.

Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Re: Kleinstes Datum ermitteln

Beitrag von nele_sonntag » 05.04.2018, 10:52

Hallo Gigi,
danke für deine Rückmeldung.
Das ist für den Helfenden immer recht nett udn natürlich für andere Suchende aufschlussreich.
LG Mandy

Antworten