Creación de cargadores de la nube personalizada
Se requieren extensos conocimientos y experiencia en programación de JavaScript para crear un cargador de la nube personalizada. No debe empezar a crear un cargador de la nube personalizada si no tiene acceso a un programador de JavaScript experimentado. También debe tener asignado el permiso Desarrollador de integración en Administración > Conjuntos de permisos antes de empezar a crear un cargador de la nube personalizada.
Los cargadores en la nube personalizados le permiten exportar
Adaptive Planning
datos de plan directamente a sistemas en la nube de terceros.Vea el vídeo:
3 min 16 sPasos básicos
- Introduzca la configuración del origen de datos
- Defina parámetros.
- Escriba JavaScript con las API de CCDS en el Espacio de nombres ai.
- Definición de reglas de negocio.
- Ejecución o programación del cargador.
Requisitos previos
Requisitos previos
- Verifique que tenga el permiso de Desarrollador de integración.
- Verifique queAdaptive Planninglos datos de plan que desea exportar ya existen en una tabla de almacenamiento provisional.
- Cree una credencial de OAuth para su sistema externo u obtenga credenciales que pueda incluir directamente en su JavaScript.
- Conozca los parámetros que debe pasar a su sistema externo y qué valores por defecto espera el sistema externo.
- Comprenda cómo escribir en el punto final del sistema externo
Navegación
En el menú de navegación, vaya a . Configuración del origen de datos
La configuración de origen de datos le permite elegir la tabla de origen de los datos de almacenamiento provisional de la instancia que desea usar, determinar las credenciales que va a utilizar y el nivel de detalles que se registrarán cuando se ejecute el cargador.
Creación de un nuevo cargador de la nube personalizada
- Acceda al Diseñador de datos desdeIntegración > Diseño de integraciones.
- En la carpeta Cargadores de la biblioteca de componentes, seleccioneCrear nuevo cargador.
- SeleccioneCargador de la nube personalizadacomo tipo de cargador e introduzca un nombre para él.Si no ve el cargador de la nube personalizada como opción, es porque no está activado para la instancia o no cuenta con el permiso de Desarrollador de integración que se requiere para acceder a él.
- SeleccioneCrear.
Seleccionar la tabla de origen, la credencial y el nivel de registro
- Introduzca la siguiente información del cargador de la nube personalizada:
- Tabla de origen:seleccione una tabla de almacenamiento provisional que contengaAdaptive Planninglos datos de Planning que desea exportar.
- Credencial obligatoria:seleccione esta opción si el sistema externo requiere OAuth y usted requiere que un usuario con permiso de Operador de integración seleccione la credencial de OAuth adecuada.
- Credencial:seleccione una credencial preexistente de OAuth.
- Nivel de registro:seleccione la cantidad de detalles que se registrarán cuando se ejecute el cargador:
- Error:solo registra errores.
- Información:registra toda la información básica, como el momento en que se actualiza el origen de datos.
- Detallado:proporciona información muy detallada sobre todas las fases y acciones. Se utiliza principalmente para depuración o auditoría, ya que puede producir más información de registro de la necesaria para el uso común.
- Haga clic enGuardaren el menú de acciones.
Definición de parámetros
Definir qué parámetros requiere su javaScript para exportar
Adaptive Planning
datos a su sistema externo. Los parámetros pueden incluir direcciones URL de conexión, nombres de usuario, contraseñas y dimensiones de Adaptive Planning
y otra información. La configuración parametrizada le permite cambiar los valores en tiempo de ejecución. La configuración estática se mantiene en las ejecuciones del cargador.- SeleccioneConfiguración de diseñador.
- Arrastre los elementos de configuración parametrizados o estáticos del panelComponente de configuraciónaConfiguración de diseñador.
- Los valores de configuración parametrizados introducidos aquí se convierten en valores por defecto del cargador si no proporciona otros en el tiempo de ejecución del cargador.
- Los ajustes de configuración estáticos que introduzca aquí se utilizarán cada vez que se ejecute el cargador y no requieren valores de entrada en el tiempo de ejecución.
- Booleano: un valor representado como uno o cero.
- Dimensión: una dimensión del administrador de dimensión dentro deAdaptive Planning.
- Valor entero: un número entero no negativo.
- Contraseña: una contraseña. Este valor no se puede ver una vez guardado.
- Rango de periodo: un rango de periodo dentro deAdaptive Planning.
- Texto: un valor alfanumérico.
- Haga doble clic en un elemento de parámetro para introducir un nombre y cambiar su valor.
- Arrastre tantos elementos como necesite para hacer referencia en su JavaScript.
- Guarde el cargador.
- Para hacer referencia a un parámetro, utilice el nombre del parámetro en su JavaScript.
Escritura de JavaScript
- SeleccioneSecuencia de comandos.
- Seleccione la plantilla preexistente y cámbiela o seleccioneNueva secuencia de comandospara crear la suya propia.
- Escriba el código JavaScript que desea que el cargador ejecute mediante las API de CCDS en el Espacio de nombres ai.
- Verifique que la secuencia de comandos incluya lo siguiente:
- testConnectionfunción para crear una solicitud https para publicar en su sistema externo
- exportDatafunción desde la que exportar datosAdaptive Planning. Consulte Función de exportación de datos (solo cargador de nube personalizada) en el tema Funciones de Adaptive Planning.
- Haga referencia a cualquier parámetro que haya creado en Configuración de diseñador mediante su nombre.
- Guarde la secuencia de comandos.
Puede dar formato y embellecer una secuencia de comandos en el editor usando el acceso directo de teclado
CTRL + Shift + B.
Busque y reemplace las ejecuciones con Ctrl + H.
Puede dividir una secuencia de comandos larga en varios archivos para facilitar su mantenimiento.
Ejemplo: podría contener todos sus
testConnection
lógica en una secuencia de comandos llamada testconnectionscript
. Una segunda secuencia de comandos, denominada exportdatascript
, podría contener todos los exportData
lógica Cuando se declara la misma función en varias secuencias de comandos, se utiliza la que aparezca en la secuencia de comandos añadida más recientemente.
Uso de OAuth en secuencias de comandos del cargador de la nube personalizada
Cuando selecciona Credencial obligatoria para un cargador de la nube personalizada, la secuencia de comandos debe contener
ai.https.authorizedRequest.
Consulte Autenticación con OAuth para obtener información sobre cómo crear una credencial de OAuth.
Para ejecutar un cargador de la nube personalizada que haga referencia a una credencial se debe hacer lo siguiente:
- SeleccioneSolicitar autorizaciónantes de ejecutar el cargador.
- Proporcione los detalles de autorización adicionales, como el ámbito, necesarios para el punto final del sistema externo.
- SeleccionePrueba de conexiónpara verificar que las credenciales de OAuth se hayan transferido correctamente al punto final.
- Anote la fecha de autorización y el ID de usuario en Estado de la autorización. Las fechas de vencimiento de las autorizaciones varían según el sistema externo. Seleccione Restablecer autorización en el panel Acciones para volver a autorizar cuando sea necesario.
Definición de reglas de negocio
Puede usar reglas de negocio para crear expresiones SQL que limiten los datos de almacenamiento provisional que se exportan al sistema externo. Solo se cargarán los registros que cumplan sus criterios de filtro.
La ficha Reglas de negocio contiene un área de texto para introducir SQL.
- Seleccione la fichaReglas de negocio.
- SeleccioneEditar.
- Introduzca una expresión SQL. Puede hacer clic en un elemento de la lista de Columnas disponibles para incorporar la columna a la expresión SQL en lugar de escribirla.
- SeleccioneAplicarpara comprobar la sintaxis de la expresión. Si hay errores de sintaxis, el borde alrededor de la expresión será rojo. Mantenga el puntero sobre la expresión para ver la información sobre los errores.
- Corrija los errores de sintaxis y seleccioneAplicar. Solo se cargarán las filas de almacenamiento provisional que coincidan con la expresión SQL.
Introducción del cargador de la nube personalizada en una tarea de integración
Los cargadores de la nube personalizada se deben ejecutar como tareas de integración. Pueden contener uno o varios cargadores. Una tarea también puede contener otras tareas de integración y cargadores. Consulte Creación de tareas de integración.
Recomendación: tenga una tarea de integración independiente para cada cargador.
Si una tarea contiene varios cargadores, se presenta la configuración de cada uno cuando se ejecuta la tarea. Si hay una configuración común/compartida utilizada en los cargadores dentro de una tarea, la tarea solo la solicita una vez. Puede sustituir las listas de valores de parámetros.
Para las ejecuciones programadas de la tarea, se utilizan los valores por defecto de la configuración almacenados al crear los cargadores.
Secuencia de comandos CCL de muestra
Utilice el siguiente ejemplo para conectarse a su instancia de AWS S3 para exportar y consultar los datos de la hoja de cálculo. Necesitará el nombre de bucket, la clave, la clave de acceso, la clave secreta y los valores de región. Para obtener más información y códigos de ejemplo, consulte ai.awss3.
- Definición de un origen de datos de hoja de cálculo.
- Cree un nuevo cargador de la nube personalizada en el panelCargadores.
- Vaya a la fichaConfiguración de origen de datosy seleccione su origen de datos de la hoja de cálculo en el campoTabla de origen.
- Copie la siguiente secuencia de comandos de muestra en la fichaSecuencias de comandos.// 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); }
- SeleccioneGuardaren el panelAcciones.
- Para ejecutar la secuencia de comandos, seleccioneEjecución manualen el panelAcciones.