Searching objectDB

Searching objectDB
0
Tags: #<Tag:0x00007f769ebd88e8>

Bonjour,
Je veux parcourir une liste d’objet, j’utilise la méthode présente ici :
https://docs.simplicite.io/documentation/01-core/basic-code-examples.md#searching

Seulement la méthode setValues me retourne un warning @Deprecated
Je peux quand même utiliser cette méthode ou il vaut mieux que j’utilise autre chose ?

Oui en 4.0 il faut désormais utiliser la setValues qui indique explicitement si on met ou pas les old values, cf. https://docs.simplicite.io/4.0/javadoc/com/simplicite/util/ObjectCore.html#setValues(java.util.List,java.lang.Boolean)

Mettre les old values n’a d’intérêt que si on effectue des update sur les records

1 Like

Cette méthode n’est plus deprecated dans les versions récentes, ça posait trop de problème de “hasChanged” qui ne se lançaient pas lors du save : par défaut un setValue(row) valorise désormais values + old values.

Mais on peut ne pas valoriser les old value ou les remettre à vide via :

setValues​(List values, Boolean withOldValues)

withOldValues :

  • true : copie les values dans les old values = quand on veut faire ensuite des setValue() + save()
  • false : remise à vide des old values = pour forcer un “hasChanged” sur tous les champs lors du save()
  • null : ne change pas les old values = cas d’une boucle en lecture seule, d’une publication…