Univention Bugzilla – Bug 29121
MemoryStore.put überschreibt keine Werte
Last modified: 2017-02-21 15:38:57 CET
Wenn ich mit einem MemoryStore versuche einen Eintrag zu überschreiben indem ich store.put(item) aufrufe ist der alte Eintrag immernoch vorhanden und keine neuen Werte existieren. Im system-setup wird als Workaround folgendes 2mal benutzt, um das Problem zu umgehen. store.remove(item[id]); store.add(item); Dies sollte im Zuge dieses Bugs rausgelöscht werden.
Gleiches Problem wie in Bug 29120?
Ggf. auch put mit der option overwrite=true? http://dojotoolkit.org/reference-guide/1.8/dojo/store.html#dojo-store
Hm, nach einigem Debuggen, konnte ich soweit keine Probleme feststellen. Der Konverter dojo/data/ObjectStore reicht die durch put ausgelösten Änderungen korrekt weiter an das Grid, die Zeilen werden aktualisiert, wohl aber mit den falschen Werten (es werden die vom Grid gecachten Werte genommen und nicht die aus dem Store). Die Werte durch ein lang.clone() zu duplizieren ändert auch nichts an dem Problem. Ich denke, dass dieser Bug im Zuge von Bug 28073 behoben sein sollte (mit dem neuen dgrid). Vielleicht entstehen die Fehler auch noch durch den verwendeten Adapter, in jedem Fall scheint das Problem etwas komplexer zu sein.
In UCS 4.2 we will use dgrid. This hopefully fixes this. Otherwise reopen if reoccurs. *** This bug has been marked as a duplicate of bug 28073 ***
Probably this was due to a missing Observable().