Lol-query: DateFormat nicht im gewünschten Format für enaio

Grüße zusammen,
Ihr gebt im Client in Zeile 456 ein Datum im Format „yyyy-mm-dd“ zurück. Bei Tests unter enaio 11 (Webclient, Workflow) ist aufgefallen, dass enaio das Datum falsch interpretiert. Der Eingangskorb (Workflow) stellt das Datum als „01.01.1970“ dar. Somit muss das Format vor der Übergabe an die Server-API erneut formatiert werden (dd.mm.yyyy). Ist das beabsichtigt?

Hallo @Globisch, ich nehme an, Du beziehst Dich darauf?

Dies ist eine Anfrage, d. h. hier wäre zunächst für mich spannend, ob im Python-Programm die angefragten Datumswerte richtig für Dich ankommen?

Wie werden diese in Deinem Anwendungsfall (danach?) in den Workflow übertragen?

Hey Roland,

aus der lol_query bekomme ich das Datum(Tabellenfeld) im Format „yyyy-mm-dd“ . Wenn ich mit diesem Datum nun einen WF starte und per DataField das Datum mitgebe.
date
Wird es vom Workflow zumindest im Frontend richtig geparsed.
date
sobald es nun in den Eingangskorb vom enaio(Webclient) erscheint, haben wir:
date

Wenn ich das Datum nun im Datafield anstatt im Format „yyyy-mm-dd“ → „dd.mm.yyyy“ übergebe, wird es im Eingangskorb richtig formatiert.

Meine Schlussfolgerung daraus ist, dass enaio das Datum im Hintergrund im Format „yyyy-mm-dd“ behält, der Workflow es im Frontend in „dd.mm.yyyy“ formatiert bekommt, der Webclient dies jedoch nicht schafft.

Die Frage die sich daraus ergibt, ist die Rückgabe der lol_query im Format „yyyy-mm-dd“ unpassend oder ist der Fehler eher in enaio zu suchen ?

Unter Version 11 konnte ich beobachten, dass ein Datum zumindest als Tabellenfeld nicht mehr als String sondern als DateObject gepflegt wird.

Hoi Malte, ja, bei der lol_query(...) habe ich damals pauschal yyyy-MM-dd hinterlegt. enaio verwendet gerne dd.MM.yyyy. Ist absolut möglich, dass der WF-Client da etwas weniger Plausibles macht. Wahlweise könnten wir die lol_query(...) erweitern oder, zumindest testweise empfände ich es als gut, wenn Du Dein Datum manuell umformatieren könntest. Etwa kurz so oder „richtig“ dem datetime-Modul:

❯ python
Python 3.11.8 (main, Feb 12 2024, 14:50:05) [GCC 13.2.1 20230801] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> testdate = "2024-08-22"
>>> testdate2 = ".".join(reversed(testdate.split("-")))
>>> print(testdate2)
22.08.2024

Hey Roland,

mein Datum ist bereits umformatiert, ich wollte es nur hier melden, vielleicht ist das Verhalten ungewollt. :slight_smile:

1 Like

Hoi Malte, ach so. Jain, sage ich mal. Die Datumsformatierung in enaio® ist immer etwas schwierig ggü. modernen Schnittstellen und anderen Tools, wo immer möglich, habe ich als Standard ISO genommen und lebe mit den Unschärfen. Aber wenn es für Dich relevant ist, können wir die Formatierung gerne mal als Parameter ergänzen.

Für mich ist es nicht relevant, dafür arbeitet man ja außerhalb von enaio, um darauf reagieren zu können. Es war jedoch interessant, in Erfahrung zu bringen, ob es sich um eine „Unschärfe“ handelt oder vielleicht um einen Bug in der Version 11.

1 Like