Anomalie #18841
fermé
Erreur d’enregistrement des JSON vides
Ajouté par Quentin RIBAC il y a presque 3 ans.
Mis à jour il y a presque 2 ans.
Assigné à:
Mathieu PIONNIER
Description
Lors de la création / mise-à-jour d’une entité notamment, les champs de type jsonb
en SQL sont initialisés à []
au lieu de {}
.
Impact : le champ external_id
prend la mauvaise valeur []
et non {}
lorsqu’il devient vide. En outre, ceci bloque par la suite l’insertion des external_id
tels que l’UID Multigest ou l’identifiant dans le parapheur externe.
Correction proposée : ajouter aux appels de json_encode()
le flag JSON_FORCE_OBJECT
(back, PHP). Voir https://www.php.net/manual/fr/json.constants.php
- Version cible mis à 21.03
- Echéance mis à 29/11/2021
- Statut changé de A traiter à R&D - A étudier
- Echéance changé de 29/11/2021 à 22/12/2021
- Statut changé de R&D - A étudier à R&D - A planifier
- Priorité changé de 2-Sérieux à 1-Majeur
Après test, on remarquera que l’action de JSON_FORCE_OBJECT est récursive : si un objet contient un tableau, ce tableau sera en fait stocké sous format objet.
Si cela présente un risque, utiliser plutôt quelque chose comme coalesce(data, '{}'::jsonb)
en SQL.
- Assigné à mis à Mathieu PIONNIER
- Statut changé de R&D - A planifier à R&D - En cours
- Statut changé de R&D - En cours à R&D - En test
- Statut changé de R&D - En test à R&D - Terminé
MAJ Branche Develop->2301
Formats disponibles : Atom
PDF