Créer des chargeurs Cloud personnalisés
Des connaissances et une expérience approfondies en matière de programmation Javascript sont requises pour créer un chargeur Cloud personnalisé. Vous ne devez pas commencer à créer un chargeur Cloud personnalisé si vous ne disposez pas d'un programmeur Javascript expérimenté. L'autorisation de Développeur en intégration doit également vous avoir été assignée dans Administration > Ensemble d'autorisations, avant d'essayer de créer un chargeur Cloud personnalisé.
Les chargeurs cloud personnalisés vous permettent d'exporter
Adaptive Planning
données du plan directement à des systèmes cloud tiers.Regardez la vidéo :
3 min 16 sÉtapes de base
- Saisissez les paramètres de la source de données.
- Définir des paramètres
- Écrivez en langage JavaScript à l'aide des API SDCP dans Espace de nom 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 de Développeur en intégration.
- Vérifie queAdaptive PlanningLes données de plan que vous souhaitez exporter existent déjà dans une table temporaire.
- Créez des identifiants OAuth pour votre système externe ou obtenez des identifiants que vous pouvez explicitement inclure dans votre Javascript.
- Demandez les paramètres que vous devez transmettre à votre système externe et les valeurs par défaut qu'attend le système externe.
- en Déterminez la méthode à utiliser pour écrire au point de terminaison du système externe.
Navigation
Dans le menu de navigation, accédez à . Saisir les paramètres de la 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 temporaires de votre instance, de déterminer les identifiants à utiliser et le niveau de détail du journal à enregistrer lors d'une exécution du chargeur.
Créer un nouveau chargeur Cloud 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.
- Cliquez surChargeur Cloud personnalisécomme type de chargeur et donnez-lui un nom.Si vous ne voyez pas l'option Chargeur Cloud personnalisé, soit elle n'est pas activée pour cette instance, soit vous ne disposez pas de l'autorisation Développeur en 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 Cloud personnalisé :
- Table source :sélectionnez une table temporaire contenantAdaptive PlanningLes données Planning que vous souhaitez exporter.
- Exiger un identifiant :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 requis par votre Javascript pour exporter
Adaptive Planning
Les données à votre système externe. Les paramètres peuvent inclure des URL de connexion, des noms d'utilisateur, des mots de passe et des dimensions issues d'. Adaptive Planning
et d'autres informations. Les paramètres configurés vous permettent de modifier leurs valeurs au moment de l'exécution. Les paramètres statiques persistent dans les exécutions du chargeur.- Cliquez surParamètres du concepteur.
- Faites glisser les éléments de paramétrage configurés ou statiques du panneauComposant de paramètresdansParamètres du concepteur.
- Les valeurs des paramètres configurés 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'exige aucune entrée au moment de l'exécution.
- Boolean : valeur représentée par la valeur 1 ou 0.
- Dimension : dimension de l'administrateur de dimensions dansAdaptive Planning.
- Integer : nombre entier non négatif.
- Password : mot de passe. Cette valeur ne peut pas être affichée une fois enregistrée.
- Period range : plage de périodes dansAdaptive Planning.
- Text : valeur alphanumérique.
- Cliquez deux fois sur un élément de paramètre pour saisir un nom et modifier sa valeur.
- Faites glisser un maximum d'éléments à 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 en Javascript
- SélectionnezScript.
- Sélectionnez le modèle préexistant et modifiez-le ou sélectionnezNouveau scriptpour créer votre propre modèle.
- Écrivez le Javascript que le chargeur doit exécuter en utilisant les API SDCP dans les Espace de nom ai.
- Vérifiez que le script contient les éléments requis :
- testConnectionfonction pour créer une requête https à publier sur votre système externe.
- exportDatafonction pour exporter les données depuisAdaptive Planning. Voir Export Data Function (Custom Cloud Loader Only) dans la rubrique Fonctions 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 contenir tous vos éléments
testConnection
logique en un seul script appelé testconnectionscript
. Un deuxième script, appelé exportdatascript
, peut contenir toutes les 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 Cloud personnalisé
Si vous sélectionnez Exiger un identifiant pour un chargeur Cloud personnalisé, votre script devra contenir
ai.https.authorizedRequest.
Pour savoir comment créer un identifiant OAuth, voir Authentification avec OAuth .
Les personnes qui exécutent un chargeur Cloud personnalisé faisant référence à un identifiant doivent :
- SélectionnerDemander une autorisationavant d'exécuter le chargeur.
- Fournir des informations supplémentaires sur l'autorisation, telles que le champ d'application, nécessaires 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 temporaires 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 temporaires correspondant à l'expression SQL seront chargées.
Inclure le chargeur Cloud personnalisé dans une tâche d'intégration
Les chargeurs Cloud personnalisés doivent être exécutés comme des tâches d'intégration. Des tâches peuvent 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 seront présentés à chaque exécution de la tâche. Si un paramètre commun/partagé est utilisé dans le(s) chargeur(s) d'une tâche, alors la tâche ne lancera 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 CCP
Utilisez l'exemple ci-dessous pour vous connecter à votre instance AWS S3 pour exporter et afficher vos données de feuille 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 obtenir plus d'informations des exemples de codes, voir ai.awss3 (rubrique enanglais).
- Configurez une source de données de type feuille de calcul.
- Créez un nouveau chargeur Cloud personnalisé dans le panneauChargeurs.
- Cliquez sur l'ongletParamètres de la 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); }
- Cliquez surEnregistrerdans le panneauActions.
- Pour exécuter le script, cliquez surExécuter manuellementdans le panneauActions.