Project

General

Profile

Anomalie #18841

Erreur d’enregistrement des JSON vides

Added by Quentin RIBAC about 2 years ago. Updated 10 months ago.

Status:
R&D - Terminé
Priority:
1-Majeur
Assignee:
Mathieu PIONNIER
Target version:
Start date:
11/25/2021
Due date:
12/22/2021
Version applicable MC:
Tags Courrier:

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

History

#1 Updated by Quentin RIBAC about 2 years ago

  • Target version set to 21.03

#2 Updated by Emmanuel DILLARD about 2 years ago

  • Due date set to 11/29/2021
  • Status changed from A traiter to R&D - A étudier

#3 Updated by Emmanuel DILLARD about 2 years ago

  • Due date changed from 11/29/2021 to 12/22/2021
  • Status changed from R&D - A étudier to R&D - A planifier
  • Priority changed from 2-Sérieux to 1-Majeur

#4 Updated by Quentin RIBAC about 2 years ago

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.

#5 Updated by Hamza HRAMCHI almost 2 years ago

  • Assignee set to Mathieu PIONNIER

#6 Updated by Emmanuel DILLARD almost 2 years ago

  • Status changed from R&D - A planifier to R&D - En cours

#7 Updated by GIT LAB almost 2 years ago

Commit ajouté sur la branche fix/18841/develop de MaarchCourrier par Mathieu mathieu.pionnier@maarch.org
FIX #18841 TIME 0:15 Empty JSON registration error
https://labs.maarch.org/maarch/MaarchCourrier/commit/5ab020e20d3451f914675a1fc33649541f46e585

#9 Updated by Quentin RIBAC almost 2 years ago

  • Status changed from R&D - En cours to R&D - En test

#12 Updated by Hamza HRAMCHI almost 2 years ago

  • Status changed from R&D - En test to R&D - Terminé

#13 Updated by Emmanuel DILLARD 10 months ago

MAJ Branche Develop->2301

Also available in: Atom PDF