Hauptmenü

RuleSet: ExecuteMacro mit DFWerten funktioniert nicht

Begonnen von Alexander Gensler, 20.02.2026 09:51:58

⏪ vorheriges - nächstes ⏩

Alexander Gensler

Hallo zusammen,

ich habe folgenden Fehler in RuleSets bei "ExecuteMacro". Gegeben sei folgende einfache Rule, die analog zum Beispiel auf der Macro-Dokumentationsseite Werte aus den dynamischen Feldern in ein Macro übergibt:
Rule "Zeitdifferenz" on Ticket
    ExecuteMacro "ZeitdifferenzBerechnen" as ZeitResult with {"start": ${TR.DynamicFields|JSON|jq(.[] :: select(.Name == "von") :: .Value)},"ende": ${TR.DynamicFields|JSON|jq(.[] :: select(.Name == "bis") :: .Value)}}
    Set DynamicFields.Tage "${ZeitResult.Data}"
End

Das dazugehörige Makro sieht wie folgt aus:
Makro.png

Wie zu sehen, soll einfach der Zeitraum zwischen den zwei Eingabewerten in Tagen berechnet werden. Das Problem ist, dass bereits die Übergabe im RuleSet in das Macro nicht funktioniert. Ich habe deswegen testweise einfach nur einen der eingegebenen Werte direkt wieder ausgegeben. Das Feld wird nicht mit dem Datum (als String) befüllt, sondern mit <VariableFilterValue1>.
Tage.png

Das tritt auch auf, wenn ich die Übergabe ohne den jq-Filter mache, sprich nur
Rule "Zeitdifferenz" on Ticket
    ExecuteMacro "ZeitdifferenzBerechnen" as ZeitResult with {"start": ${TR.DynamicFields|JSON}}
    Set DynamicFields.Tage "${ZeitResult.Data}"
End

Ich gehe davon aus, dass entweder der JSON-Filter oder das TR.DynamicFields aktuell verbuggt sind (oder alternativ die oben verlinkte Dokumentation fehlerhaft ist und die Verwendung mit anderer Syntax erfolgen muss).

Kann das bitte auf KIX-Seite gegengeprüft werden. Aktuelle Version ist 18.35.3. Update auf 18.36.1 erfolgt nächste Woche.

Viele Grüße
Alexander