Récupérer un objet et ses relations sous forme de Json

Bonjour,

Je souhaite publier dans des fichiers txt, des objets sous forme de Json.
Les tools que j’ai expérimenté (notamment JSONTool.fieldsToJson(obj) ) ne me conviennent pas car ils me proposent d’afficher les fields de l’ojectDB sous forme d’un seul et même objet (ex :
{
“row_id”: “26”,
“MlaAftersaleItem_MlaCountry_id”: “13”,
“MlaAftersaleItem_MlaCountry_id__MLA_ALPHA_ISO_CODE_2”: “\tCZ”,
“MlaAftersaleItem_MlaAftersaleItemType_id”: “8”,
“MlaAftersaleItem_MlaAftersaleItemType_id__MLA_TYPE_CODE”: “X”,

}

L’idéal serait d’avoir un format identique à celui des API (RESTMappedObjectsExternalObject utilisé).
Existe-t-il un outil Simplicité construisant ce type de Json ?
Peut on utiliser le code de notre objet externe API pour construire un Json ?
Doit on recontruire nos Json manuellement ?

Merci pour votre aide.
Jean-Baptiste

Les méthodes de construction du JSON renvoyé dans RESTMappedObjectsExternalObject ne sont pas publiques.

Est-ce que le besoin c’est de réutiliser exactement les mappings et les formats de RESTMappedObjectsExternalObject dans une optique de “publication manuelle/batch” ou est-ce qu’on parle d’un format JSON arbitraire qui pourrait être différent ?

Nous sommes en effet dans une optique de publication par batch.
Le besoin n’est pas de réuitiliser les API, mais d’avoir un objet sous forme de JSON dans lequel on peut exploiter la profondeur des relations.
Le format API était un exemple de format attendu

Si c’est un format arbitraire c’est très facile à implémenter spécifiquement (en s’aidant de la lib org.json comme le fait RESTMappedObjectsExternalObject ou autre) à coup de searchs “en profondeur” sur les objets

PS: Sinon il est aussi possible de s’appuyer sur le JSON standard d’un treeview qui fournira directement une structure hiérarchique

Ok ça répond à ma question sur le fait qu’on n’a pas de Tool à disposition.
Ok pour la structure du treeview, je pensais à cela aussi.

Par curiosité, tu pensais à une méthodologie particulière pour récupérer les données des API ?
Il est possible qu’on me demande de produire certains exports au même format que les API.

Les tools “bas niveau” de JSONTool sont utilisables mais ils sont contraignants car ils sont très lié à la mécanique interne de Simplicité.

C’est pas des APIs “publiques” au sens de “facilement utilisable dans du code specifique”

La méthode JSONTool est celle qui sert pour le générer le JSON d’un treeview.

  • L’export XML ou JSON standard parcours récursivement les relations en profondeurs (avec le flag Export = yes dans le paramétrage du Link)
  • Pour un arbre particulier, il faut effectivement préférer un GET sur un Treeview prédéfini.
  • Pour des structures/nommages spécifiques, il faudra alimenter des JSONObject via des search à la mano…
  • sinon il faut modéliser des objets dédiés à l’export avec des noms “public” et des liens virtuels pour exporter que certaines relations/vues “logiques” du modèle

L’avantage du format XML ou JSON natif est qu’il est bijectif (on peut mettre à jour un treeview via un POST avec des “actions” dans les nodes).

Parfait.
Merci pour ces informations.