Passer au contenu principal
Adaptive Planning
Mise à jour en bloc des métadonnées

Mise à jour en bloc des métadonnées

Pris en charge dans l'API v17 +
Le principal avantage des API de mise à jour en bloc des métadonnées est qu’elles permettent de synchroniser les niveaux, les dimensions et les comptes GL dans
Adaptive Planning
avec des contreparties dans un système externe sur une base régulière et planifiée. Au lieu d’appeler des éléments individuels un par un, ces API vous permettent de soumettre un fichier XML brut ou un XML compressé (zIP) pour mettre à jour, réorganiser et créer des éléments.
Avec les API en bloc des métadonnées, la nouvelle version de l’arborescence des éléments existants est importée dans
Adaptive Planning
.
API de mise à jour en bloc des métadonnées :
  • Ne jamais supprimer. Les éléments manquants dans la version téléversée restent inchangés.
  • Créer tous les nouveaux éléments trouvés dans le téléversement, s’ils le peuvent.
  • Mettez à jour les propriétés de tous les éléments téléversés, y compris les propriétés de parent.
  • Mettez à jour les affectations d'attributs en cours de téléversement.
  • En particulier, ils autorisent le téléversement de l’arborescence partielle (du fait que la suppression n’est jamais effectuée, les téléversements partiels ne sont pas terrifiants).
  • Ils permettent d’identifier les éléments existants dans une arborescence soit par leur numéro d’identifiant interne, soit par leur champ d’identifiant unique « initial » (avant la mise à jour).
  • Arrêter sur les erreurs irréversibles et restaurer. Les erreurs catégoriques incluent :
    • Tente de créer un cycle dans une hiérarchie
    • Tente de créer un nouvel élément dont le champ d’identification entre en conflit avec un autre dans le système (par exemple, création d’un nouveau compte avec un code en cours d’utilisation)
    • Tente de mettre à jour le champ d’identification d’un élément de façon à ce qu’il coïncide avec un élément déjà dans le système.
  • Procéder aux erreurs omises qui n’interrompent pas l’importation et les signaler dans la réponse du résultat sous forme d’avertissements. Les erreurs omises incluent celles qui ne sont pas susceptibles de produire un effet en cascade, telles que :
    • Tente de modifier une affectation d'attributs pour une valeur qui n'existe pas.
    • Tente de définir un nom de niveau trop long pour le champ.

Téléversement en bloc au moyen d’un fichier XML compressé (zIP)

Pour les charges utiles importantes, vous pouvez téléverser du contenu compressé sous forme de fichier ZIP contenant uniquement le xml des mises à jour sans sous-répertoires, dossiers ou autre contenu. Si des dossiers ou des sous-répertoires sont détectés dans le fichier ZIP à la poste, la demande est rejetée.

Joindre un exemple de Curl de fichier XML compressé (zIP)

curl -i -X POST -H "Content-Type: multipart/form-data" -F "request=<C:/temp/requestUpdateDimVal.xml" -F "content=@C:/temp/updateDimensions.zip" https://api.adaptiveplanning.com/api/v20
requestUpdateDimVal.xml content
<?xml version='1.0' encoding='UTF-8'?> <call method="updateDimensions" callerName="Steve C"> <credentials login="sampleuser@company.com" password="my_password"/> </call>
updateDimVal.zip/content.xml
<?xml version='1.0' encoding='UTF-8'?> <dimensions> <dimension id="7" name="Education" shortName="" autoCreate="0" listDimension="1" keepSorted="0" useOnLevels="0"> <dimensionValue id="32" name="Graduate" description="Modified Graduate degree" /> </dimension> </dimensions>
Vous pouvez toujours faire des demandes d’API dans le corps d’un appel API sans utiliser de pièces jointes.
<?xml version='1.0' encoding='UTF-8'?> <call method="updateDimensions" callerName="Steve C"> <credentials login="sampleuser@company.com" password="my_password"/> <dimensions> <dimension id="7" name="Education" shortName="" autoCreate="0" listDimension="1" keepSorted="0" useOnLevels="0"> <dimensionValue id="32" name="Graduate" description="Modified Graduate degree" /> </dimension> </dimensions> </call>

API de mise à jour en bloc des métadonnées :