Hallo,
wir haben folgende Funktion in einem Mapper:
<#if stock! == '0' && next_delivery_date!?trim == '' && (manual_delivery_date!?trim == '' || isDateBefore(manual_delivery_date!, datecalc(.now, "DAY", -1)?date?string('yyyy-MM-dd'))?c)> true <#else> false </#if>
Allerdings gibt die Funktion
isDateBefore(manual_delivery_date!, datecalc(.now, "DAY", -1)?date?string('yyyy-MM-dd'))?c
immer nur true zurück. Dabei kommt manual_delivery_date aus einem Datastore in diesem Format ‚2024-05-10‘.
Ich habe es auch so probiert:
isDateBefore(manual_delivery_date!, .now)?c
und so:
isDateBefore(manual_delivery_date!?date('yyyy-MM-dd')?string('yyyy-MM-dd'), .now)?c
Hat aber auch nichts geändert.
Hat jemand eine Idee woran das liegen könnte?
Viele Grüße,
Patrick
UPDATE:
Ich denke ich habe die Antwort schon selbst gefunden. In der IF-Abfrage muss explizit der Wert von isDateBefore abgefragt werden:
isDateBefore(manual_delivery_date!, datecalc(.now, "DAY", -1)?date?string('yyyy-MM-dd'))?c == 'true'