Application de workflow JSONTODATA

Aperçu

L'application de workflow JSONTODATA vous permet d'analyser (« parse ») le contenu JSON dans des données de processus.

Mode de fonctionnement

    L'application JSONTODATA nécessite le paramètre JSON_CONTENT ou le paramètre JSON_CONTENT_FILE; ceux-ci correspondent au JSON à analyser.
    L'application supporte le langage de requête JSONPath (voir https://github.com/json-path/JsonPath), qui permet l'extraction de données spécifiques à partir du contenu JSON, similaire aux expressions XPath en XML.
    Des logs d'application sont disponibles. Ceux-ci peuvent être spécifiés en définissant la valeur du paramètre JsonToDatalLogLevel dans le fichier web.config sur 0 pour désactiver la journalisation, 1 pour les logs d'erreur, 2 pour des logs d'informations ou 3 pour les logs de débogage; la valeur par défaut est 0.

Paramètres

Paramètre
Type
Direction
Description
JSON_CONTENT
TEXT
IN
Requête à exécuter
JSON_CONTENT_FILE
FILE
IN
Requête à exécuter, stockée dans un fichier

Mappage des paramètres

Utilisation de noms de paramètres simples

L'application supporte les paramètres OUT personnalisés pour mapper un contenu JSON simple.
📌 Exemple
1
{
2
"person": {
3
"address": {
4
"street": "160 Guy Street",
5
"zipcode": "J4G 1U4"
6
},
7
"age": 30,
8
"name": "John"
9
}
10
}
Copied!
Les paramètres suivants vous permettent de mapper le contenu JSON à différentes données de processus :
Paramètre
Type
Direction
Récupérer la valeur dans une donnée
Résultat
person.address.street
Text
OUT
DATA_STREET
160 Guy Street
person.address.zipcode
Text
OUT
DATA_ZIPCODE
J4G 1U4
person.age
Text
OUT
DATA_AGE
30
person.name
Text
OUT
DATA_NAME
John

Utilisation du langage de requête JSONPath

L'application supporte le langage de requête JSONPath, similaire aux expressions XPath en XML. Ce langage vous permet de récupérer des données spécifiques à partir d'un JSON. Voir https://github.com/json-path/JsonPath pour plus d'informations sur la syntaxe JSONPath.
📌 Exemple
1
{
2
"person": {
3
"name": "Elizabeth",
4
"children": [
5
{
6
"name": "Charles",
7
"age": 30,
8
"children": [
9
{
10
"name": "Nathalie",
11
"children": [
12
{
13
"name": "George",
14
"age": 8
15
},
16
{
17
"name": "Charlotte",
18
"age": 10
19
},
20
{
21
"name": "Jefferson",
22
"age": 7
23
}
24
]
25
},
26
{
27
"name": "Harry"
28
}
29
]
30
},
31
{
32
"name": "Bob",
33
"age": 20,
34
"children": [
35
{
36
"name": "John"
37
},
38
{
39
"name": "Mark"
40
}
41
]
42
}
43
]
44
}
45
}
Copied!
Dans l'exemple ci-dessus, nous voulons obtenir les noms des petits-fils de Charles âgés de plus de sept ans, et nous voulons également que ces noms soient séparés par un | (à l'aide du paramètre IN APP_JSONPATH_DELIMITER). Pour obtenir ces informations, les paramètres suivants doivent être définis :
Paramètre
Type
Direction
Valeur IN
OUT Value
APP_JSONPATH_DELIMITER
Text
IN
|
-
PARAM1__JSONPATH
Text
INOUT
person.children[?(@.name == 'Charles')].children[*].children[?(@.age > 7)].name
DATA1_VALUE (value will be: George|Charlotte)
    Dans le nom du paramètre PARAM1__JSONPATH, le nom PARAM1 n'est pas pertinent, mais il doit être suivi du suffixe __JSONPATH (deux traits de soulignement sont utilisés dans le suffixe).
    La valeur par défaut de APP_JSONPATH_DELIMITER est une virgule (,) lorsque ce paramètre n'est pas défini.
Dernière mise à jour 7mo ago