Accéder au contenu principal Passer au contenu complémentaire

Utiliser un élément de choix dans la sortie

Mappez des éléments avec différents enfants au même élément de sortie.

Avant de commencer

Pourquoi et quand exécuter cette tâche

Dans cet exemple, vous avez un fichier JSON d'entrée contenant des informations relatives à des vélos et scooters en vente. Les informations sont réparties entre les éléments bicycle et scooter, qui contiennent des enfants différents. Dans la sortie, vous souhaitez inclure toutes ces informations dans un seul élément details pouvant avoir différents enfants, en fonction de l'élement.

[
    {
        "sku": "AB4589",
        "price": 899.99,
        "bicycle": {
            "make": "MBIKE",
            "seat": "ergon",
            "derailleur": "shimano"
        }
    },
    {
        "sku": "DQ5678",
        "price": 899.99,
        "bicycle": {
            "make": "WBIKE",
            "seat": "selle italia",
            "derailleur": "sram"
        }
    },
    {
        "sku": "MF5612",
        "price": 399.99,
        "scooter": {
            "make": "ESCOOT",
            "maxWeight": 70
        }
    },
    {
        "sku": "MF5612",
        "price": 399.99,
        "scooter": {
            "make": "KSCOOT",
            "maxWeight": 50
        }
    }
]
[
    {
        "sku": "",
        "price": 899.99,
        "details": {
            "bicycle": "",
            "seat": "",
            "derailleur": ""
        }
    },
    {
        "sku": "",
        "price": 399.99,
        "details": {
            "scooter": "",
            "maxWeight": 70
        }
    }
]

Procédure

  1. Ouvrez la structure de sortie créée et développez l'élément details.
  2. Mappez les éléments suivants à l'aide du glisser-déposer :
    • sku à sku
    • price à price
    • bicycle à bicycle {@0}
    • bicycle.make à bicycle
    • scooter.make à scooter
    • maxWeight à maxWeight

Résultats

Les éléments sont mappés et, si vous cliquez sur les alternatives de sortie bicycle {@0} et scooter {@1}, vous pouvez voir que les expressions conditionnelles ont été générées automatiquement.
Mapping des éléments.
Par exemple, IF (isPresent(bicycle)) indique que l'élément de sortie details va correspondre à la première alternative, uniquement si l'élément bicycle est présent dans l'entrée. Dans cet exemple, la fonction Test Run (Exécution de test) retourne le résultat suivant :
[
   {
      "sku":"AB4589",
      "price":899.99,
      "details":{
         "bicycle":"MBIKE",
         "seat":"ergon",
         "derailleur":"shimano"
      }
   },
   {
      "sku":"DQ5678",
      "price":899.99,
      "details":{
         "bicycle":"WBIKE",
         "seat":"selle italia",
         "derailleur":"sram"
      }
   },
   {
      "sku":"MF5612",
      "price":399.99,
      "details":{
         "scooter":"ESCOOT",
         "maxWeight":70
      }
   },
   {
      "sku":"MF5612",
      "price":399.99,
      "details":{
         "scooter":"KSCOOT",
         "maxWeight":50
      }
   }
]

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.