Dynamisches Feld wird ungewollt geleert [Solved]

Hilfe zu Znuny Problemen aller Art
Post Reply
zezinho
Znuny newbie
Posts: 25
Joined: 23 Mar 2016, 12:19
Znuny Version: 6.5.9
Real Name: Josef

Dynamisches Feld wird ungewollt geleert [Solved]

Post by zezinho »

Hi,
habe aktuell einen Prozess samt einiger dynamischer Felder eingerichtet damit Agenten ihre Zeiten zu Tickets notieren können.
Es gibt die dynamischen Felder Mitarbeitername (Dropdown), Zeiteinheiten (Dropdown) und Startdatum (Date/Time).

Die Felder beinhalten neben den Auswahl Möglichkeiten auch die Option "Add empty value" / bzw. ist zusätzlich leerer wert ist angehakt.

In einer Aktivität "Solution" gibt es eine Checkmark "Create Time booking"
Wird hier der Haken gesetzt und "Submit" betätigt sorgt eine TransitionAction dafür dass ein "TicketCreate" ausgelöst wird und ein neues Ticket in der Queue TimeBooking erstellt wird.

Das TimeBooking-Ticket zieht in der Transition auch die Werte der ausgewählten Buchungen in das neue Ticket.
Unser ERP bucht dann die Mitarbeiter Zeiten via Soap-Abfrage.

Das klappt soweit auch super, es gibt allerdings ein großes Problem.
Nach der Transition muss scheinbar eine neue Aktivität im Prozess eingebunden werden zu der gewechselt wird.
Also switchen wir von der Aktivität Solution in Dummy_Solution.
Via GenericAgent Job geht es danach zurück in Solution.

Nun das Problem
Dabei werden seltsamerweise die Inhalte der Zeiteinheiten die via Dropdown gesetzt wurden im ursprünglichen Ticket geleert.
In der History ist dann auch die Änderung von zB "3" auf "" zu sehen.
Fall 2:
Das gleiche passiert wenn der Agent in der Solution ist aber nochmal zurück in die vorherige Aktivitat Analyse muss.
Hierzu gibt es ebenfalls einen GenericAgent Job der beim Setzen eines Hakens die Aktivität im Prozess umschreibt.

Mir ist aufgefallen dass man das Rücksetzen der Feldwerte verhindern kann, indem man in den Einstellungen des dynamischen Feldes die Option "Add empty field value" bzw. leeren Wert hinzufügen deaktiviert.
Dann werden bei den Switches zwischen den Aktivitäten bzw. den dahinter liegenden GA Jobs keine Werte auf "" gesetzt.

Das füht aber dazu dass in der Aktivität immer 1 Zeiteinheit vorgewählt wird auch wenn der Agent nichts auswählt.
Da bis zu 3 verschiedene Agents in einem Ticket für Buchungen ausgewählt werden können, wird im Beispiel auch für die Agents 2 und 3 eine Zeiteinheit vorbelegt.
Das lässt sich dann nicht verhindern ohne die Option im dynamischen Feld.

Mir kommt es so vor als wären allein die GenericAgent Jobs für das rücksetzen verantwortlich.
Warum diese allerdings ungefragt die bereits eingegdbenen Werte zurücksetzen ist mir nicht klar.

Version ist noch 6.0.x

Habt ihr eine Idee wie in dem Fall das zurücksetzen der Feldwerte verhindert werden kann und könnt erklären was hier passiert?
Last edited by zezinho on 19 Jun 2024, 19:04, edited 1 time in total.
zezinho
Znuny newbie
Posts: 25
Joined: 23 Mar 2016, 12:19
Znuny Version: 6.5.9
Real Name: Josef

Re: Dynamisches Feld wird bei Prozesswechsel ungewollt geleert

Post by zezinho »

Hi, ist meine Fragestellung klar ? Hat jemand eine Idee ?
zezinho
Znuny newbie
Posts: 25
Joined: 23 Mar 2016, 12:19
Znuny Version: 6.5.9
Real Name: Josef

Re: Dynamisches Feld wird bei Prozesswechsel ungewollt geleert

Post by zezinho »

hi, habe die ursache im 6.0.26 changelog gefunden.

2020-01-08 Fixed bug#13159 - Generic agent deletes the content of dropdown dynamic field if empty value is added. It only happens when 'Add empty value' is set.
Post Reply