Saltar al contenido

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

  • El número máximo de iteraciones de bucle permitidas en Harmony es 50 000.
  • La cantidad máxima de iteraciones de bucle en el lenguaje de Jitterbit Script es por cada bucle individual. Para aumentar la cantidad permitida de iteraciones por bucle en un secuencia de comandos del lenguaje de Jitterbit Script, consulte Jitterbit.scripting.while.max_iterations en Creación de scripts de variables Jitterbit.
  • La cantidad máxima de iteraciones de bucle en JavaScript es por secuencia de secuencia de comandos (la suma de todos los bucles dentro de una secuencia de comandos). Para aumentar la cantidad máxima de iteraciones de bucle en JavaScript, consulte Bucle de secuencia de comandos de Java en 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 fuente de base de datos de cadena en el proyecto actual
  • sql: El comando SQL que se ejecutará contra la base de datos
  • outputVariable: (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 obtener más detalles.

Jitterbit.DbLookup

Declaración

string Jitterbit.DbLookup(string databaseId, string sql)

Sintaxis

Jitterbit.DbLookup(<databaseId>, <sql>)

Parámetros Necesarios

  • databaseId: Una fuente de base de datos de cadena en el proyecto actual
  • sql: 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 obtener más detalles.

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 Design 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: Origen del tipo de archivo en el proyecto actual

Parámetros Opcionales

  • fileFilter: Filtro de archivo o nombre de archivo para anular la definición de origen

Descripción

Lee el contenido de un archivo desde una fuente.

La fuente del tipo de archivo que se utiliza en esta llamada de función debe estar definida como una fuente en el proyecto actual.

Consulta las instrucciones sobre insertar elementos del proyecto.

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 archivo utilizado en la definición de origen. Se puede utilizar un nombre de archivo. Alternativamente, se puede utilizar una variable global para anular el filtro de archivo en la definición de origen. Las variables globales se referencian como [de_name] en la definición de fuente.

A partir de Harmony versión 8.20, 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.

Ejemplos

// Reads the first file retrieved from a source
var fileContents = Jitterbit.ReadFile("<TAG>Sources/Customer CSV FTP</TAG>");

// Use the filename "test.txt" instead of what is defined in the source
var fileContents = Jitterbit.ReadFile("<TAG>Sources/Customer CSV FTP</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 Jitterbit
  • value: 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 Design 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: Tipo de archivo de destino en el proyecto actual

Parámetros Opcionales

  • fileContents: Datos que se escribirán en el archivo
  • filename: Nombre de archivo para anular la definición de destino

Descripción

Escribe el fileContents al tipo de archivo de destino 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 destino del tipo de archivo utilizado en esta llamada de función debe definirse como un destino en el proyecto actual.

Las variables disponibles se pueden ver en Jitterbit Studio y están documentadas en Variables de Jitterbit.

El tercer parámetro, filename, es opcional y se puede utilizar para anular el nombre de archivo utilizado en el destino. Alternativamente, se puede utilizar una variable global para anular el nombre de archivo en la definición del destino. Las variables globales se referencian como [de_name] en la definición del objetivo.

Este método también se puede utilizar para escribir o publicar datos en un objetivo HTTP. En ese caso, $jitterbit.target.http.* Las variables se completarán.

A partir de Harmony versión 8.20, 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>Targets/FTP Target</TAG>", $contents);

// Use the filename "test.txt" instead of what is defined in the target
Jitterbit.WriteFile("<TAG>Targets/FTP Target</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>Scripts/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 operaciones.

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