Hauptmenü

Rule Set - Field Reset

Begonnen von mplan, 21.12.2023 08:58:51

⏪ vorheriges - nächstes ⏩

mplan

Hallo,
wir sind dabei ein Rule Set zu erstellen, dass in Abhängigkeit des Status den Abschlusscode (CloseCode) abfragt.
Prinzipiell funktioniert es soweit. wird der Status auf geschlossen oder "Warten auf Schließen" gesetzt, wird das Feld eingeblendet, sonst ausgeblendet.
Gerade bei diesem Feld ist es aber so, dass man den Inhalt nicht mehr löschen kann, wenn er einmal gesetzt ist.
Ändert man den Ticket Status wieder zurück z.B. von geschlossen auf Offen, bleibt der CloseCode erhalten
Wie kann man im Rule Set den Inhalt des Feldes wieder löschen?
Mein Versuch mit
Set CloseCode "" zeigt keine Wirkung.
Gibt es eine Möglichkeit, das Feld zurückzusetzen bzw. zu leeren, also so etwas wie ein "Unset"?

Viele Grüße
Michael

Frank Niethardt

Hallo Michael,

wie wär es mit einem Job, der auf TicketStateUpdate lauscht und das Feld wieder leert bei entsprechenden Status?

Viele Grüße
Frank

Benedikt Geißler

Hallo Michael,

es gibt die Direktive "Clear <Attribute>", die ein Attribut zurücksetzt. Vgl. https://docs.kixdesk.com/kix18Administration/kix-pro/workflow/rule-sets

Du müsstest also beispielsweise solch ein Rule Set hier verwenden:
Rule "Alpha" on Ticket if TR.StateID == 4
  Show DynamicFields.CloseCode
  Enable DynamicFields.CloseCode
End

Rule "Beta" on Ticket if !Rule "Alpha"
  Clear DynamicFields.CloseCode
  Disable DynamicFields.CloseCode
End

Beim dynamischen Feld CloseCode ist standardmäßig "0" als Vorgabewert in der Konfiguration des DFs hinterlegt, daher wird das Feld durch das Zurücksetzen dann auf "solved/gelöst" gestellt.

Viele Grüße
Benedikt

mplan

Hallo Benedikt und Frank,
Leider funktioniert das Leeren des Feldes in der Rule bei mir nicht. Meine Rule ist nahezu identisch (bis auf Prüfung der zweiten StateID und das Markieren als Optionales Feld beim Einblenden).
Das Anzeigen und Setzen funktioniert. Ändert man danach den Status wieder auf "Offen" oder eine andere StateID != (4 oder 5), dann bleibt bei mir der Wert des Feldes unverändert. Er ändert sich nicht auf 0 (Solved) und wird auch nicht gelöscht.
Hat das bei Dir funktioniert, Benedikt?

Viele Grüße
Michael