0

Zeit now() wird unterschiedlich gesetzt !!

Ich erzeuge per Script in einer Protokoll-Tabelle (p) Datensätze. Die Uhrzeit wird mit p.(Uhrzeit := time(now())) gesetzt. Wenn ich dieses Script durch eine Schaltfläche ausführe, dann wird das korrekte Datum eingetragen. Wird das Script durch eine Änderung in einem Auswahlfeld getriggert, liegt die Uhrzeit 2 Stunden zurück.

Wenn ich in der Protokoll Tabelle "bei Neuem Datensatz" die Uhrzeit auf now() setze - wird die Uhrzeit gar nicht gefüllt.... daher triggere ich das nach dem Erzeugen des Datensatzes mit let p := (create Protokoll) und anschließendem Setzen der Uhrzeit.

Warum ist now() nicht immer gleich ???

2 Antworten

null
    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Dirk,

    now() ist ein Zeitstempel mit Datum und Uhrzeit. Mit der Schaltfläche machst du es richtig mit time (now()). Ich vermute, dass du beim Trigger statt time(now()) einfach now() geschrieben hast. 

    Jetzt zu dem Trigger bei neu: die Trigger bei neu funktionieren nicht, wenn der Datensatz durch einen anderen Trigger auf Serverebene erstellt wird. Damit vermeidet man die Gefahr von unendlichen Kettenreaktionen. 

    Leo

    • Dirk_Pulver_2020
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Leo,

    danke für die Erklärung, aber es ist mir noch nicht klar weil ich folgendes vergessen habe:

    Ich habe eine globale Funktion "Protokoll" die einen Datensatz in einer Protokoll-Tabelle schreibt und die Werte setzt - eben die Zeit mit time(now()). Diese Funktion rufe ich sowohl von der Schaltfläche aus auf als auch bei Änderung eines Auswahlfeldes. D.h. der Zeitstempel wird doch immer von der Funktion gesetzt - egal woher die aufgerufen wird. Oder verstehe ich da etwas nicht richtig ?

Content aside

  • vor 4 JahrenZuletzt aktiv
  • 2Antworten
  • 1224Ansichten