Searching objectDB

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

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…