You are not logged in.
Bonjour à tous,
Je tourne en rond sur la question, et je n'arrive pas à trouver la solution qui je suis sur se trouve sur le forum en plus.
Afin de remplir les valeurs d'une liste déroulante crée via le plugin Fields, je veux pouvoir avoir plusieurs niveaux dans les données.
Par exemple :
Secteur Financier
-> Comptabilité
-> Gestion
Secteur Production
-> Hotline
-> Techniciens
J'arrive à enregistrer les valeurs "Secteur Financier" et "Secteur Production" sans problème, par contre je ne trouve pas la syntaxe pour expliquer à l'API que "Comptabilité" et "Gestion" sont des enfants de "Secteur Financier".
J'ai essayer de jouer avec l'url sur la requête Curl, sur l'input, mais rien à faire il ne veux pas.
Vous avez une solution de votre côté ?
Last edited by bagahe (2020-08-20 10:22:32)
Offline
Personne n'a d'idées ?
Offline
Je n'ai jamais utiliser de liste hierarchique custom via l'API.
Pour les listes natives, quand on ajoute un enfant, il faut passer l'ID du parent. Il n'y a pas de nomenclature spécifique mais quand on ajoute l'enfant, il faut idiquer le niveau de profondeur et l'id du parent.
Quand tu crées un éléments "enfant" à la main puis que tu récupères cet élément via l'API, il a quoi comme attribus ?
Offline
A la main cela fonctionne, les valeurs enfants/parents sont bien indiquées dans la base de données GLPI.
Je dois me manquer quelque chose dans la syntaxe je pense
J'ai tout essayer dans l'input, toute les variantes.
Comment cela se présente sur un cas "classique", hors champs fields ?
Last edited by bagahe (2020-07-30 14:53:35)
Offline
Il faudrait que je puisse regarder dans un des scripts que j'ai fait pour un client mais je n'y aurai pas accès avant mi aout.
De mémoire, pour ajouter un élément "enfant", il faut donner
- Son nom
- son niveau (2, si c'est un enfant de première génération)
- l'ID du parent
Tout le reste est fait automatiquement.
Je me souviens que, quand ça a fonctionné, je me suis dis que, finalement, c'était très logique, mais je n'ai pas mon script sous les yeux.
Offline
Voilà mon input, à moins que je me trompe dans les nom de variables je ne vois vraiment pas T_T
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"input": {
"name": "'.$value.'",
"plugin_fields_'.$item.'Dropdowns_id": "'.$parent.'",
"level": "'.$level.'"
}}'
);
Mes variables sont justes à chaque fois, il insère bien une ligne mais comme une entrée de niveau 1
Offline
De mémoire (toujours...) l'ID des parents ne contenait pas le nom du parent. La variable s'appelle "parent_id" ou un truc comme ça.
Quand tu fais un get sur une valeur 'enfant', tu as quoi comme propriétés ?
Offline
Voilà mon retour sur un get d'un enfant :
Array ( [id] => 63 [name] => Test Enfant [completename] => DAC > Test Enfant [comment] => [plugin_fields_branchedelamoadropdowns_id] => 49 [level] => 2 [ancestors_cache] => [sons_cache] => [entities_id] => 0 [is_recursive] => 0 [links] => Array ( [0] => Array ( [rel] => PluginFieldsBranchedelamoaDropdown [href] => http://localhost/glpi/apirest.php/PluginFieldsBranchedelamoaDropdown/49 ) [1] => Array ( [rel] => Entity [href] => http://localhost/glpi/apirest.php/Entity/0 ) ) )
Offline
Je vais essayer de voir si je ne peux pas retrouver un script...
Offline
Merci, j'ai pratiquement terminé ce truc d'intégration c'est tout ce qu'il me manque
Offline
Il faudrait que je puisse regarder dans un des scripts que j'ai fait pour un client mais je n'y aurai pas accès avant mi aout.
De mémoire, pour ajouter un élément "enfant", il faut donner
- Son nom
- son niveau (2, si c'est un enfant de première génération)
- l'ID du parent
Tout le reste est fait automatiquement.
Je me souviens que, quand ça a fonctionné, je me suis dis que, finalement, c'était très logique, mais je n'ai pas mon script sous les yeux.
Bonjour, toujours coincé pour ma part, rien ne fonctionne pour ajouter un script enfant.
Offline
Je suis de retour chez mon client, j'ai pu remettre la main sur mon script.
Ici, je crée des catégories ITIL.
Pour ajouter une catégorie "filles", je passe uniquement deux propriétés.
"name" qui correspond au nom de la catégorie à créer
"itilcategories_id" qui correspond à l'ID du la catégorie mère.
En espérant que ça soit utile :-)
Offline
Bonjour,
Oui, cela m'a aidé, en gros tout venait d'une faute de frappe dans le nom de mon champ Id sur cette partie de mon code T_T
Maintenant c'est fonctionnel
Merci beaucoup Jean-Christophe
Offline