Passer au contenu principal
Adaptive Planning
Dernière mise à jour : 2023-06-23
Mise à jour en bloc des métadonnées

Mise à jour en bloc des métadonnées

Prise en charge dans API v17 et supérieure
Les API de mise à jour en bloc de métadonnées présentent le principal avantage de permettre la synchronisation des périmètres, des dimensions et des 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 fichier XML compressé (zip) pour mettre à jour, réorganiser et créer des éléments.
Avec les API de métadonnées en bloc, 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échargée restent inchangés.
  • Créer tous les nouveaux éléments trouvés dans le téléchargement, s'ils le peuvent.
  • Mettez à jour les propriétés des éléments téléchargés, y compris leurs propriétés parents.
  • Mettez à jour les affectations d'attributs en cours de téléchargement.
  • Ils autorisent particulièrement le téléchargement partiel d'une arborescence (comme la suppression n'est jamais effectuée, les téléchargements partiels sont non Toutes les modifications).
  • 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 "origine" (pré-mise à jour).
  • Arrêtez en cas d'erreurs et rétrogradez. Il s'agit notamment des erreurs  :
    • Tentatives de création d'un cycle dans une hiérarchie
    • Tentatives de création d'un nouvel élément dont le champ d'identification coïncide avec un élément déjà 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 sorte qu'il se croise avec un champ déjà dans le système.
  • Continuez pour les erreurs ignorées qui n'interrompent pas l'import et indiquez des avertissements dans le rapport de réponse du résultat. Les erreurs ignorées sont celles peu susceptibles de produire un effet répercutant, telles que :
    • Tentatives de remplacement de l'affectation d'attribut par une valeur qui n'existe pas.
    • Tente de définir un nom de périmètre avec un nom trop long pour le champ.

Téléchargement en bloc en XML compressé (zip)

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

Joindre un exemple de URL 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 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 :