Créer des chargeurs infonuagiques personnalisés
Des connaissances et une expérience approfondies en matière de programmation JavaScript sont requises pour créer un chargeur infonuagique personnalisé. Vous ne devez pas commencer à créer un chargeur infonuagique personnalisé si vous ne disposez pas d’un programmeur JavaScript expérimenté. L’autorisation Développeur d’intégration doit également vous avoir été assignée sous Administration > Ensemble d’autorisations, avant d’essayer de créer un chargeur infonuagique personnalisé.
Les chargeurs infonuagiques personnalisés vous permettent d'exporter
Adaptive Planning
Les données du plan directement dans des systèmes infonuagiques tiers.Regardez la vidéo :
3 min 16 sÉtapes de base
- Saisissez les paramètres de la source de données.
- Définissez les paramètres.
- Écrivez du code Java à l’aide des API CCDS dans la section Espace de noms ai.
- Définissez les règles de gestion.
- Exécutez ou planifiez le chargeur.
Conditions préalables
Conditions préalables
- Vérifiez que vous disposez de l’autorisation Développeur d’intégration.
- Vérifiez queAdaptive PlanningLes données de plan que vous souhaitez exporter existent déjà dans une table intermédiaire
- Créez un identifiant OAuth pour votre système externe ou obtenez des identifiants que vous pouvez explicitement inclure dans votre JavaScript.
- Vous devez savoir quels paramètres transmettre à votre système externe et les valeurs par défaut qu’attend le système externe.
- Vous devez savoir comment écrire au point de terminaison du système externe.
Navigation
À partir du menu de navigation, accédez à Saisir les paramètres de source de données
Les paramètres de source de données vous permettent de choisir la table source que vous souhaitez utiliser dans les données intermédiaires de votre instance, déterminent les identifiants à utiliser et le niveau de détail du journal à enregistrer lors d’une exécution du chargeur.
Créer un nouveau chargeur infonuagique personnalisé
- Accédez au concepteur de données en sélectionnantIntégration > Concevoir des intégrations.
- Dans le dossier Chargeurs de la Bibliothèque de composants, cliquez surCréer un nouveau chargeur.
- SélectionnezChargeur infonuagique personnalisécomme type de chargeur et donnez-lui un nom.Si vous ne voyez pas l’option Chargeur infonuagique personnalisé, soit elle n’est pas activée pour cette instance, soit vous ne disposez pas de l’autorisation Développeur d’intégration nécessaire pour y accéder.
- SélectionnezCréer.
Sélectionner la table source, l’identifiant et le niveau de journalisation
- Saisissez les informations du chargeur infonuagique personnalisé :
- Table source :sélectionnez une table intermédiaire contenantAdaptive Planningles données Planning que vous souhaitez exporter.
- Identifiant obligatoire :indiquez si le système externe nécessite OAuth et si vous exigez qu’un utilisateur disposant de l’autorisation Opérateur d’intégration sélectionne l’identifiant OAuth approprié.
- Identifiant :sélectionnez un identifiant OAuth préexistant.
- Niveau de journalisation :indiquez le niveau de détail à consigner lors de l’exécution du chargeur :
- Erreur:consigne uniquement les erreurs.
- Informations:consigne toutes les informations de base. Par exemple, lorsque la source de données a été mise à jour.
- Mode détaillé:fournit des informations très détaillées sur toutes les phases et actions. Principalement utilisé pour le débogage ou l’audit, car il peut générer plus d’informations de journal que nécessaire pour une utilisation normale.
- Cliquez surEnregistrerdans le menu Actions.
Définir des paramètres
Définissez les paramètres dont votre javaScript doit faire l'exportation
Adaptive Planning
les données vers votre système externe. Les paramètres peuvent inclure des adresses URL de connexion, des noms d’utilisateur, des mots de passe et des dimensions de Adaptive Planning
, et d’autres renseignements. Les paramètres configurés vous permettent de modifier leurs valeurs au moment de l’exécution. Les paramètres statiques persistent à chaque exécution du chargeur.- Cliquez surParamètres du concepteur.
- Faites glisser les éléments de paramètres paramétrables ou statiques du panneauComposant de paramètresdans le tableauParamètres du concepteur.
- Les valeurs des paramètres paramétrables saisies ici deviennent les valeurs par défaut du chargeur si vous n’en fournissez aucune autre lors de l’exécution du chargeur.
- Les paramètres statiques que vous saisissez ici sont utilisés à chaque exécution du chargeur et n’exigent aucune entrée au moment de l’exécution.
- Booléen : valeur représentée par la valeur 1 ou 0.
- Dimension : une dimension de l'administrateur des dimensions dansAdaptive Planning.
- Entier : un nombre entier non négatif.
- Mot de passe : un mot de passe. Cette valeur n’est plus visible une fois enregistrée.
- Plage de périodes : une plage de périodesAdaptive Planning.
- Texte : une valeur alphanumérique.
- Cliquez deux fois sur un élément de paramètre pour saisir un nom et modifier sa valeur.
- Faites glisser tous les éléments que vous devez référencer dans votre JavaScript.
- Enregistrez le chargeur.
- Utilisez le nom d’un paramètre dans votre JavaScript pour le référencer.
Écrire un JavaScript
- SélectionnezScript.
- Sélectionnez le modèle préexistant et modifiez-le ou sélectionnezNouveau scriptpour créer votre propre script.
- Écrivez le javaScript que vous souhaitez que le chargeur exécute à l’aide des API CCDS dans le Espace de noms ai.
- Vérifiez que le script contient les éléments requis suivants :
- testConnectionfonction pour créer une demande https à publier dans votre système externe
- exportDatafonction pour exporter des données deAdaptive Planning. Voir Fonction d’exportation de données (Chargeur infonuagique personnalisé seulement) dans la rubrique Fonctions de Adaptive Planning.
- Référencez par nom tous les paramètres que vous avez créés dans les paramètres du concepteur.
- Enregistrez le script.
Vous pouvez formater et améliorer un script dans l’éditeur à l’aide du raccourci clavier
CTRL+Maj+B
. Recherchez et remplacez les lancements avec CTRL+H
.Vous pouvez séparer un long script en plusieurs fichiers pour faciliter sa maintenance.
Exemple : vous pouvez inclure toutes vos valeurs
testConnection
logique en un seul script appelée testconnectionscript
. Un deuxième script, appelé exportdatascript
, peut contenir la totalité des exportData
logique. Lorsque la même fonction est déclarée dans plusieurs scripts, celle provenant du script le plus récemment ajouté est utilisée.
Utiliser OAuth dans les scripts du chargeur infonuagique personnalisé
Lorsque vous sélectionnez Identifiant obligatoire pour un chargeur infonuagique personnalisé, votre script doit contenir
ai.https.authorizedRequest.
Voir Authentification avec OAuth pour savoir comment créer un identifiant OAuth.
Les personnes qui exécutent un chargeur infonuagique personnalisé faisant référence à un identifiant doivent :
- SélectionnerDemander une autorisationavant d’exécuter le chargeur.
- Fournir des détails supplémentaires pour l’autorisation, tels que le champ d’application, requis pour le point de terminaison du système externe.
- SélectionnerTester la connexionpour vérifier que les identifiants OAuth ont été correctement transmis au point de terminaison.
- Noter la date d’autorisation et le code utilisateur dans le statut d’autorisation. Les dates d’expiration des autorisations varient d’un système externe à un autre. Cliquez sur Réinitialiser l’autorisation dans le panneau Actions pour réattribuer une autorisation, le cas échéant.
Définir des règles de gestion
Vous pouvez utiliser des règles de gestion pour créer des expressions SQL qui limitent les données intermédiaires exportées vers le système externe. Seuls les enregistrements répondant à vos critères de filtrage seront chargés.
L’onglet Règles de gestion contient une zone de texte pour saisir du langage SQL.
- Cliquez sur l’ongletRègles de gestion.
- Cliquez surModifier.
- Saisissez une expression SQL. Vous pouvez cliquer sur un élément dans Colonnes disponibles pour inclure cette colonne dans l’expression SQL, plutôt que de la saisir.
- Cliquez surAppliquerpour vérifier votre syntaxe. En cas d’erreurs, un cadre rouge entoure l’expression. Passez la souris sur l’expression pour afficher des informations concernant des erreurs de syntaxe.
- Corrigez toute erreur dans votre syntaxe et cliquez surAppliquer. Seules les lignes intermédiaires correspondant à l’expression SQL seront chargées.
Inclure le chargeur infonuagique personnalisé dans une tâche d’intégration
Les chargeurs infonuagiques personnalisés doivent être exécutés comme des tâches d’intégration. Une tâche peut contenir un ou plusieurs chargeurs. Une tâche peut également contenir d’autres tâches d’intégration et chargeurs. Voir : Créer des tâches d’intégration.
Une bonne pratique consiste à utiliser une tâche d’intégration distincte par chargeur.
Si une tâche contient plusieurs chargeurs, les paramètres de chaque chargeur sont présentés à chaque exécution de la tâche. Si un paramètre commun/partagé est utilisé dans les chargeurs d’une tâche, la tâche ne lance le paramètre qu’une seule fois. Vous pouvez choisir de remplacer les invites des paramètres.
Pour les exécutions planifiées de la tâche, les valeurs par défaut des paramètres, stockées lors de la création des chargeurs, sont utilisées.
Exemple de script de chargeur infonuagique personnalisé
Utilisez l’exemple ci-dessous pour vous connecter à votre instance AWS S3 pour exporter et afficher les données de vos feuilles de calcul. Vous aurez besoin du nom de compartiment, de la clé, de la clé d’accès, de la clé secrète et des valeurs régionales. Pour plus d’informations et des exemples de codes, voir ai.AWss3.
- Configurez une source de données de type feuille de calcul.
- Créez un nouveau chargeur infonuagique personnalisé dans le panneauChargeurs.
- Naviguez jusqu’à l’ongletParamètres de source de donnéeset sélectionnez votre source de données de type feuille de calcul dans le champTable source.
- Copiez l'exemple de script ci-dessous dans l'ongletScripts.// Manually invoke this method via 'Test connection' function testConnection(context) { return true; } // Manually invoke this method via 'Run manually' function exportData(context) { //"xxx" is the name of your Amazon S3 bucket. var bucketName = 'xxx'; //Name of the sample CSV file to which data from your spreadsheet data source is exported var key = 'exampleTest.csv'; //"xxxx" is the access key for your AWS S3 bucket. var awsAccessKey = 'xxxx'; //"xxxx" is the secret key of your AWS S3 bucket. var awsSecretKey = 'xxxx'; var region = 'us-west-1'; // Step 1: Get the data var reader = context.createTableReader(); // Step 2: Process and export the data var result = "Column,Heading,Names\n"; var row = null; while ((row = reader.readRow()) !== null) { // remove meta columns we don't need row.length = row.length - 2; result += row.join() + '\n'; } ai.awss3.putFile(bucketName, key, result, region, awsAccessKey, awsSecretKey); }
- SélectionnezEnregistrerdans le panneauActions.
- Pour exécuter le script, cliquez surExécuter manuellementdans le panneauActions.