Jitterbit de JavaScript y Funciones Comunes
Los JavaScripts de Jitterbit pueden acceder, además de las funciones estándar de JavaScript que forman parte de ECMA-262 v5.1—estas funciones específicas de Jitterbit. Como ECMA-262 v5.1 es una versión de JavaScript más antigua que la que se encuentra disponible comúnmente en los navegadores y otros motores de JavaScript, hemos incluido tablas de las funciones de JavaScript comunes y estándar que están disponibles en JavaScripts de Jitterbit.
Importante
Para un mejor rendimiento, recomendamos usar JavaScript solo cuando un Jitterbit Script equivalente no está disponible.
Nota
Se permite un máximo de 50 000 iteraciones de bucle para cada secuencia de comandos de JavaScript. Para aumentar la cantidad de iteraciones permitidas por secuencia de comandos, consulte Iteraciones de bucle bajo JavaScript.
Funciones de Jitterbit
Jitterbit.DbExecute
Declaración
array Jitterbit.DbExecute(string databaseId, string sql)
int Jitterbit.DbExecute(string databaseId, string sql, string outputVariable,...)
Sintaxis
Jitterbit.DbExecute(<databaseId>, <sql>)
Jitterbit.DbExecute(<databaseId>, <sql>, <outputVariable>,...])
Parámetros Necesarios
databaseId
: Una ruta de referencia de cadena a una conexión de base de datos en el proyecto actualsql
: El comando SQL que se ejecutará contra la base de datosoutputVariable
: (Segunda forma) Un parámetro de salida que coincide con los campos devueltos en el comando SQL. Se pueden especificar argumentos adicionales según sea necesario.
Descripción
Ejecuta una sentencia SQL en una base de datos y devuelve los resultados. Consulte el Jitterbit Script DBExecute
función para más detalles.
La base de datos utilizada en esta llamada de función debe estar definida como una conexión de base de datos en el proyecto actual. Para obtener más información, consulte las instrucciones sobre cómo insertar extremos en Extremos en JavaScript.
Jitterbit.DbLookup
Declaración
string Jitterbit.DbLookup(string databaseId, string sql)
Sintaxis
Jitterbit.DbLookup(<databaseId>, <sql>)
Parámetros Necesarios
databaseId
: Una ruta de referencia de cadena a una conexión de base de datos en el proyecto actualsql
: El comando SQL que se ejecutará en la base de datos
Descripción
Ejecuta una sentencia SQL en una base de datos y devuelve el primer campo del primer resultado que coincida con los criterios especificados. Consulte el Jitterbit Script DBLookup
función para más detalles.
La base de datos utilizada en esta llamada de función debe estar definida como una conexión de base de datos en el proyecto actual. Para obtener más información, consulte las instrucciones sobre cómo insertar extremos en Extremos en JavaScript.
Jitterbit.GetVar
Declaración
string Jitterbit.GetVar(string jitterbitVariableName)
Sintaxis
Jitterbit.GetVar(<jitterbitVariableName>)
Parámetros Necesarios
jitterbitVariableName
: El nombre de una variable Jitterbit
Descripción
Devuelve el valor de una variable Jitterbit (una variable global predefinida que está integrada en el agente y comienza con jitterbit.
). Las variables disponibles se pueden ver en Cloud Studio y están documentadas en Variables Jitterbit.
Advertencia
También es posible, aunque no se recomienda, utilizar el Jitterbit.GetVar
función para recuperar el valor de una variable global definida por el usuario.
La Jitterbit.GetVar
la función está diseñada para permitir el uso de variables que contienen puntos dentro del nombre de la variable. Sin embargo, no se recomienda usar puntos en un nombre de variable global definido por el usuario. Como el valor se convertirá en una cadena cuando se establezca la variable, estas funciones no se pueden usar con tipos de datos complejos, como matrices, diccionarios u objetos JSON. En su lugar, se recomienda crear variables globales sin puntos y, en su lugar, usar guiones bajos en lugar de puntos y usar el signo de dólar estándar. $
Sintaxis como se describe en Variables globales.
Ejemplos
// Retrieves the value of the Jitterbit variable "jitterbit.api.request"
var request = Jitterbit.GetVar("$jitterbit.api.request");
Jitterbit.ReadFile
Declaración
string Jitterbit.ReadFile(string sourceId[, string fileFilter])
Sintaxis
Jitterbit.ReadFile(<sourceId>[, <fileFilter>])
Parámetros Necesarios
sourceId
: Una ruta de referencia de cadena a una actividad asociada con un extremo de tipo de archivo en el proyecto actual
Parámetros Opcionales
fileFilter
: Filtro de archivo o nombre de archivo para anular la configuración de la actividad
Descripción
Lee el contenido de un archivo desde una fuente.
La fuente utilizada en esta llamada de función debe definirse como una actividad asociada con un extremo de tipo archivo en el proyecto actual. Estos incluyen actividades configuradas de uso compartido de archivos, FTP, HTTP, almacenamiento local y almacenamiento temporal. Para obtener más información, consulte las instrucciones sobre cómo insertar extremos en Extremos en JavaScript.
El método devuelve el contenido del archivo al que apunta la fuente. Si el filtro de fuente selecciona más de un archivo, se utilizará el primero. Se recomienda especificar una fuente que identifique de forma única un solo archivo.
El parámetro fileFilter
es opcional y se puede utilizar para anular el filtro de archivos utilizado en la configuración de la actividad. Se puede utilizar un nombre de archivo. Alternativamente, se puede utilizar una variable global para anular el filtro de archivos en la configuración de la actividad. Las variables globales se referencian como [de_name]
en la configuración de la actividad.
Si el ReadFile
si la función falla, la operación no falla. Se cancelará un secuencia de comandos, se agregará una advertencia al registro de la operación y la operación continuará.
Este método se puede utilizar para leer datos de una fuente HTTP. En ese caso, todos los Jitterbit $jitterbit.source.http.*
Las variables se completarán.
Advertencia
Esta función no funciona de manera confiable con archivos que tienen contenido binario, ya que generalmente solo leerá una parte del archivo. Si el archivo tiene contenido binario, use la función Jitterbit Script Base64EncodeFile
en lugar de leer todo el contenido del archivo.
Ejemplos
// Reads the first file retrieved from a source
var fileContents = Jitterbit.ReadFile("<TAG>activity:ftp/FTP Endpoint/ftp_read/FTP Files</TAG>");
// Use the filename "test.txt" instead of what is defined in the source
var fileContents = Jitterbit.ReadFile("<TAG>activity:ftp/FTP Endpoint/ftp_read/FTP Files</TAG>", "test.txt");
Jitterbit.SetVar
Declaración
Jitterbit.SetVar(string jitterbitVariableName, string value)
Sintaxis
Jitterbit.SetVar(<jitterbitVariableName>, <value>)
Parámetros Necesarios
jitterbitVariableName
: El nombre de una variable Jitterbitvalue
: Un valor que se asignará a la variable
Descripción
Establece el valor de una variable Jitterbit (una variable global predefinida que está integrada en el agente y comienza con jitterbit.
). Las variables disponibles se pueden ver en Cloud Studio y están documentadas en Variables Jitterbit.
Advertencia
También es posible, aunque no se recomienda, utilizar el Jitterbit.SetVar
función para establecer el valor de una variable global definida por el usuario.
La Jitterbit.SetVar
la función está diseñada para permitir el uso de variables que contienen puntos dentro del nombre de la variable. Sin embargo, no se recomienda usar puntos en un nombre de variable global definido por el usuario. Como el valor se convertirá en una cadena cuando se establezca la variable, estas funciones no se pueden usar con tipos de datos complejos, como matrices, diccionarios u objetos JSON. En su lugar, se recomienda crear variables globales sin puntos y, en su lugar, usar guiones bajos en lugar de puntos y usar el signo de dólar estándar. $
Sintaxis como se describe en Variables globales.
Ejemplos
// Sets a Jitterbit variable
Jitterbit.SetVar("$jitterbit.scripting.db.max_rows", 1000);
Jitterbit.WriteFile
Declaración
void Jitterbit.WriteFile(string targetId, type fileContents[, string filename])
Sintaxis
Jitterbit.WriteFile(<targetId>, <fileContents>[, <filename>])
Parámetros Necesarios
targetId
: Una ruta de referencia de cadena a una actividad asociada con un extremo de tipo de archivo en el proyecto actual
Parámetros Opcionales
fileContents
: Datos que se escribirán en el archivofilename
: Nombre de archivo para anular la configuración de la actividad
Descripción
Escribe el fileContents
al objetivo especificado por targetId
. Si fileContents
es de tipo binario, los datos binarios se escriben en el archivo. En todos los demás casos, se escribe una representación de cadena de los datos. La función vacía y cierra automáticamente el archivo.
El objetivo utilizado en esta llamada de función debe definirse como una actividad asociada con un extremo de tipo archivo en el proyecto actual. Estos incluyen actividades configuradas de uso compartido de archivos, FTP, HTTP, almacenamiento local y almacenamiento temporal. Para obtener más información, consulte las instrucciones sobre cómo insertar extremos en Extremos en JavaScript.
El tercer parámetro, filename
, es opcional y se puede utilizar para anular el nombre de archivo utilizado en la configuración de la actividad. Alternativamente, se puede utilizar una variable global para anular el nombre de archivo en la configuración de la actividad. Las variables globales se referencian como [de_name]
en la configuración de la actividad.
Este método también se puede utilizar para escribir o publicar datos en un destino HTTP. En ese caso, $jitterbit.target.http.*
Las variables se completarán.
Si el WriteFile()
Si la función falla, la operación no falla. Se cancelará un secuencia de comandos, se agregará una advertencia al registro de la operación y la operación continuará.
Ejemplos
// Writes the value of $contents to the file defined by a target
Jitterbit.WriteFile("<TAG>activity:ftp/FTP Endpoint/ftp_write/FTP Files</TAG>", $contents);
// Use the filename "test.txt" instead of what is defined in the target
Jitterbit.WriteFile("<TAG>activity:ftp/FTP Endpoint/ftp_write/FTP Files</TAG>", $contents, "test.txt");
SetScriptOutput
Declaración
void SetScriptOutput(string data)
Sintaxis
SetScriptOutput(<data>)
Parámetros Necesarios
data
: Datos que devolverá el secuencia de comandos
Descripción
Establece el valor devuelto por un secuencia de comandos.
Se puede acceder al valor de retorno de un secuencia de comandos como el valor de retorno de la RunScript
función.
Ejemplos
// In the calling Jitterbit Script script:
$result = RunScript("<TAG>script:CalculateSomething</TAG>", value_to_be_calculated);
// In the Jitterbit JavaScript script "CalculateSomething":
var calculated_value = ...;
...
SetScriptOutput(calculated_value);
SetScriptResult
Declaración
void SetScriptResult(string data)
Sintaxis
SetScriptResult(<data>)
Parámetros Necesarios
data
: Datos que devolverá el secuencia de comandos
Descripción
Un alias para el SetScriptOutput
función. Ver SetScriptOutput
para más detalles.
WriteToOperationLog
Declaración
string WriteToOperationLog(string message)
Sintaxis
WriteToOperationLog(<message>)
Parámetros Necesarios
message
: Un mensaje de cadena
Descripción
Escribe un mensaje en el registro de operación.
Ejemplos
// Writes a message to the operation log
WriteToOperationLog("The source field 'Price' has an invalid value.");
funciones Comunes de JavaScript
Estas funciones comunes de JavaScript, parte de ECMA-262 v5.1—son compatibles con los JavaScripts de Jitterbit.
Propiedad común | Descripción |
---|---|
Array | Consulte las propiedades y funciones de la matriz de JavaScript |
Date | Consulte las propiedades y funciones de fecha de JavaScript |
decodeURI | Decodifica una URI |
decodeURIComponent | Decodifica un componente URI |
encodeURI | Codifica una URI |
encodeURIComponent | Codifica un componente URI |
eval | Evalúa una cadena y la ejecuta como si fuera código JavaScript |
isFinite | Comprueba si un valor es un número finito y legal |
isNaN | Comprueba si un valor es un número ilegal |
JSON.parse | Analiza una cadena JSON y devuelve un objeto JavaScript |
JSON.stringify | Convierte un objeto JavaScript en una cadena JSON |
Math | Consulte las propiedades y funciones matemáticas de JavaScript |
Number | Convierte el valor de un objeto en un número |
parseFloat | Analiza una cadena y devuelve un número de punto flotante |
parseInt | Analiza una cadena y devuelve un entero |
String | Consulte las propiedades y funciones de la cadena JavaScript |