Saltar al contenido

Variables globales en Jitterbit Integration Studio

Introducción

Las variables globales son uno de los tipos de elementos de datos globales disponibles en Harmony. Los otros tipos de elementos de datos globales — variables de proyecto, variables de Jitterbit y palabras clave de nombre de archivo — también están disponibles globalmente a lo largo de un proyecto. Se establecen de manera diferente, como se describe en Variables de proyecto, Variables de Jitterbit y Palabras clave de nombre de archivo, respectivamente. Sin embargo, dado que todos los elementos de datos globales comparten el mismo espacio de nombres, sus nombres deben ser únicos en comparación con todos los demás elementos de datos globales.

Las variables globales se declaran primero en una operación, después de lo cual se vuelven disponibles para ser referenciadas en la misma operación o en operaciones y scripts posteriores. Las operaciones o scripts posteriores son aquellos que están enlazados dentro de una cadena de operaciones utilizando acciones de operación o las funciones RunOperation o RunScript. Las operaciones posteriores pueden estar dentro de los mismos flujos de trabajo o flujos de trabajo posteriores.

Las variables globales también se pueden utilizar como fuente o destino dentro de la operación, como se describe en Lectura de variable y Escritura de variable.

Puede que desee utilizar variables globales si su caso de uso implica compartir información con partes posteriores de una cadena de operaciones, como en estos ejemplos:

  • Usar valores creados en una transformación en una transformación posterior. Por ejemplo, un ID de sesión (devuelto por un servicio web de inicio de sesión) puede ser necesario al llamar a servicios web posteriores para autenticación.
  • Usar un valor creado en una parte de una transformación en una etapa posterior de esa misma transformación. Por ejemplo, un número de registro puede ser inicializado e incrementado para cada registro insertado en un destino para identificar su número de ítem.
  • Usar un valor devuelto en una transformación en la configuración de componentes en operaciones posteriores. Por ejemplo, la configuración de URL devuelta por una transformación puede ser utilizada para establecer la URL del servicio web de una llamada a un servicio web posterior.

Las variables globales pasan a través de operaciones encadenadas. Estas incluyen operaciones que están vinculadas a una operación anterior dentro de la cadena de operaciones utilizando "en éxito" o "en fallo" acciones de operación, así como aquellas que están vinculadas a través de la función RunOperation. Las variables globales también pueden ser utilizadas dentro de la misma transformación.

Visualización de variables globales

Las variables globales definidas se muestran en varios lugares:

  • En el panel del proyecto, las variables globales se muestran en la pestaña Componentes en la categoría Variables Globales. Desde aquí puedes ver si la variable global es referenciada en otro lugar del proyecto y ver las dependencias.
  • En el editor de scripts, las variables globales se muestran en la paleta de componentes de script dentro de la pestaña Variables en la subpestaña Variables Globales. Esta ubicación proporciona un acceso fácil para insertar referencias de variables globales en scripts, incluyendo scripts de transformación.
  • En una transformación, las variables globales se muestran dentro de la pestaña Variables a la izquierda en la categoría Variables Globales. Esta ubicación proporciona un acceso fácil para insertar referencias de variables globales durante el mapeo de transformaciones.
  • En las pantallas de configuración de endpoints, las variables globales pueden ser accedidas y utilizadas en cualquier campo que tenga un ícono de variable . Como alternativa a seleccionar una variable global, puedes ingresar manualmente la referencia de la variable utilizando la sintaxis estándar de corchetes cuadrados de Jitterbit.

Crear y actualizar variables globales

Las variables globales se crean o actualizan utilizando Jitterbit Script (en scripts y transformaciones) o JavaScript (solo en scripts creados como un componente de proyecto). Consulte Tipos de script y creación para obtener información sobre cómo crear los diferentes tipos de scripts. Las variables globales configuradas en una conexión de Variable se crean o actualizan automáticamente (consulte Conexión de variable).

Nombres de variables globales

Los nombres de las variables globales pueden estar compuestos por caracteres alfanuméricos (las letras a-z y A-Z, y los dígitos 0-9), puntos (.) y guiones bajos (_). (No se recomiendan otros caracteres, como los guiones, ya que pueden causar problemas). Los nombres de las variables globales no son sensibles a mayúsculas; una variable llamada GlobalVar se trata de la misma manera que globalvar.

Es una buena práctica utilizar puntos o guiones bajos al definir variables globales para que sean fáciles de encontrar. Por ejemplo, una variable global creada en un Jitterbit Script llamada org.account.filename comienza con org, seguida de account, etc., organizándola efectivamente cuando está en una lista entre otras variables globales construidas de manera similar. Tenga en cuenta que para las variables globales creadas en JavaScript (o para las variables globales de Jitterbit Script que podrían usarse más tarde en JavaScript) recomendamos usar guiones bajos en lugar de puntos. Usar puntos en variables globales definidas por el usuario causa problemas en tiempo de ejecución. Se proporciona más información en la subsección JavaScript a continuación.

Jitterbit Script

En Jitterbit Script utilizado dentro de scripts y transformaciones, una variable global se puede definir comenzando con un signo de dólar $ o llamando a la función Set:

  • $: Usando la sintaxis del signo de dólar $, $ServerURL=URL crea o actualiza una variable global llamada ServerURL con el valor de URL (el nombre de otra variable o el nombre de un campo en una transformación).
  • Set: Usando la función Set, Set("ServerURL", URL) crea o actualiza una variable global llamada ServerURL con el valor de URL (el nombre de otra variable o el nombre de un campo en una transformación).

JavaScript

En JavaScript utilizado dentro de scripts creados como un componente de proyecto, la sintaxis utilizada para establecer una variable global depende de si el nombre de la variable global contiene un punto:

  • El nombre no incluye un punto (recomendado): Una variable global que no contiene un punto en su nombre puede ser creada o actualizada usando var $<name> o actualizada simplemente usando $<name> sin var:

    • var $: La expresión var $ServerURL="https://www.example.com/" crea o actualiza una variable global ServerURL con un valor de cadena de https://www.example.com/. Una nueva variable global debe preceder el $ con var.
    • $: La expresión $ServerURL="https://www.example.com/" actualiza la misma variable global ServerURL con la misma URL de cadena. Esto solo funciona para variables globales que ya existen.
  • El nombre incluye un punto (recomendado solo para variables de Jitterbit y valores de objetos de JavaScript): Una variable que contiene puntos en su nombre puede ser actualizada o recuperada en JavaScript solo con las funciones Jitterbit.SetVar y Jitterbit.GetVar. Como estas funciones no están destinadas a variables globales definidas por el usuario, consulte variables de Jitterbit para más información.

    Advertencia

    Las funciones de JavaScript Jitterbit.SetVar y Jitterbit.GetVar están diseñadas específicamente para acceder a las variables de Jitterbit predefinidas. No deben ser utilizadas para acceder a variables globales definidas por el usuario.

Variable endpoint

Durante la configuración de una conexión variable, se puede crear o actualizar automáticamente una variable global.

Es decir, si durante la configuración proporcionas el nombre de una variable que aún no existe, se crea automáticamente una variable global. Si proporcionas el nombre de una variable global que ya existe, se asocia con el endpoint variable.

Para obtener detalles sobre cómo crear o actualizar una variable global utilizando este método, consulta la conexión variable.

Retrieve global variables in scripts or transformations

El valor de una variable global se puede devolver utilizando Jitterbit Script (en scripts o transformaciones) o utilizando JavaScript (solo en scripts creados como un componente de proyecto).

Jitterbit Script

En scripts y transformaciones, puedes comenzar con un signo de dólar $ o usar la función Get para recuperar el valor de una variable global:

  • $: Con un signo de dólar $, el ejemplo de código $serverURL recupera el valor (o campo en una transformación) de la variable global llamada "serverURL".
  • Get: Usando la función Get, el ejemplo de código Get("serverURL") devuelve el mismo valor (o campo en una transformación).

En scripts y transformaciones, las variables globales existentes también se muestran en la pestaña Variables de la paleta de componentes de script dentro de la subpestaña Variables Globales. Consulta Agregar una variable global a un script a continuación.

JavaScript

En JavaScript scripts dentro de una operación, la sintaxis utilizada para recuperar el valor de una variable global depende de si el nombre de la variable global contiene un punto.

  • El nombre no incluye un punto (recomendado): El valor de una variable global que no contiene un punto en su nombre se puede recuperar comenzando con un signo de dólar $. Prefijado con un signo de dólar $, la expresión $ServerURL recupera el valor de la variable global llamada ServerURL.

  • Nombre con puntos (recomendado solo para variables de Jitterbit y valores de objetos de JavaScript): Una variable que contiene un punto en su nombre se puede actualizar o recuperar en JavaScript solo con las funciones Jitterbit.SetVar y Jitterbit.GetVar. Como estas funciones no están destinadas a variables globales definidas por el usuario, consulte la sección sobre variables de Jitterbit para más información.

    Advertencia

    Las funciones de JavaScript Jitterbit.SetVar y Jitterbit.GetVar están diseñadas específicamente para acceder a las variables de Jitterbit predefinidas. No deben usarse para acceder a variables globales definidas por el usuario.

    En JavaScript, no mezcle y combine su uso de SetVar (y GetVar) con el prefijo $ al establecer (y recuperar) una variable. Use solo una sintaxis. Mezclar las dos sintaxis diferentes para la misma variable puede causar problemas en tiempo de ejecución.

    Si un JavaScript falla, cualquier cambio realizado en el valor de una variable global se pierde. Solo si el JavaScript se completa con éxito, los valores de las variables globales modificadas están disponibles fuera del script.

En scripts y transformaciones, las variables globales existentes también se muestran en la pestaña Variables de la paleta de componentes del script dentro de la subpestaña Variables Globales. Consulte Agregar una variable global a un script a continuación.

Agregar una variable global a un script

En Jitterbit Script o JavaScript utilizado dentro de scripts creados dentro de una operación, las variables globales existentes se muestran en la pestaña Variables de la paleta de componentes del script dentro de la subpestaña Variables Globales:

global variables

Utiliza los triángulos de divulgación para ver u ocultar detalles de uso, incluyendo qué componentes leen o escriben en la variable:

var dependency

Puedes hacer clic en el nombre de cualquier componente para abrir su pantalla de configuración.

Para agregar la sintaxis de la variable a un script (Jitterbit Script o JavaScript), utiliza uno de estos métodos:

  • Arrastra la variable desde la paleta al script para insertar la sintaxis de la variable.
  • Haz doble clic en la variable en la paleta para insertar la sintaxis de la variable en la ubicación del cursor dentro del script.
  • Comienza a escribir el nombre de la variable y luego presiona Control+Space para mostrar una lista de sugerencias de autocompletado. Selecciona una variable para insertar la sintaxis de la variable.
  • Ingresa manualmente la sintaxis de la variable.

Usar variables globales en pantallas de configuración

Durante la configuración de varios componentes del proyecto, incluyendo la configuración de puntos finales utilizando conectores, puedes usar variables globales en cualquier campo que tenga un ícono de variable . Las variables se pueden usar en campos junto con otra entrada, incluyendo otras variables o palabras clave. Estas acciones se cubren a continuación:

Seleccionar una variable global

Para acceder a las variables globales, puedes hacer clic en el ícono de variable o ingresar un corchete cuadrado abierto [ para mostrar un menú que enumera variables y palabras clave (si están disponibles para el campo actual).

Dentro de la lista, cada tipo de variable o palabra clave está indicado por el ícono junto a su nombre:

  • para palabra clave de nombre de archivo
  • para variable global
  • para variable de proyecto
  • para variable de Jitterbit

El fondo del ícono es sólido si la variable global tiene un valor predeterminado especificado en este campo de configuración, o vacío si no lo tiene. El fondo del ícono no se ve afectado si la misma variable global tiene un valor especificado en otro campo de configuración, ya que solo se utiliza un valor predeterminado que está especificado en el campo actual.

Advertencia

Si una variable global obtiene su valor en un script que está aguas arriba del componente, su valor evaluado anula el valor predeterminado especificado en el campo de configuración. Ten en cuenta que los valores evaluados que se obtienen en un script no se reflejan en el Valor en el popup de información.

Selecciona una variable para agregar al campo en la ubicación de tu cursor, en cualquier parte de la cadena. La variable se muestra en un formato de píldora similar al que se muestra a continuación:

FTP read get files pill

Para revisar información sobre la variable, pasa el cursor sobre la píldora de la variable para mostrar un popup de información:

FTP read get files pill hover

  • Etiqueta: N/A para una variable global.
  • Valor predeterminado: Poblado solo si la variable global tiene un valor predeterminado especificado en este campo de configuración.
  • Descripción: N/A para una variable global.
  • Editar valor predeterminado: Haz clic para definir o editar un valor predeterminado.

Definir un valor predeterminado

En tiempo de ejecución de la operación, un valor predeterminado definido dentro de un campo de configuración, como se muestra a continuación, se utiliza solo si el valor de la variable no se ha establecido durante el tiempo de ejecución. Esto es diferente durante las pruebas de scripts, donde — dado que los valores de los scripts ascendentes aún no se habrán instanciado — se utiliza cualquier valor predeterminado definido dentro de un campo de configuración.

Para definir un valor predeterminado dentro de un campo de configuración, pasa el cursor sobre la pastilla de la variable y haz clic en Editar valor predeterminado para editar manualmente el campo Valor predeterminado en la ventana emergente de información.

FTP read get files pill default

Haz clic en Guardar para confirmar tus cambios en el campo Valor predeterminado.

Cuando se especifican valores predeterminados, se utiliza el valor de la variable global si está definido; de lo contrario, se utiliza el valor predeterminado.

Consejo

Al usar una variable global en una cláusula WHERE, como en una consulta de base de datos o de Salesforce, puedes especificar un valor predeterminado para que sea posible la prueba de scripts. De lo contrario, dado que una variable global obtiene su valor en tiempo de ejecución, durante la prueba la sintaxis puede ser inválida si no se ha especificado un valor predeterminado.

Eliminar una variable

Para eliminar la variable, haz clic en el ícono de eliminar :

FTP read get files pill remove

Ver dependencias de variables globales

Las dependencias de una variable global son los otros componentes que hacen referencia a esa variable al leerla o escribir en ella. Después de crear y usar una variable global en un proyecto, puedes ver estas dependencias.

Después de crear una variable global, la opción Ver dependencias se vuelve disponible desde la pestaña Componentes en el panel del proyecto. Para obtener más información sobre la pestaña Componentes, consulta el menú de acciones de componentes en la pestaña Componentes del panel del proyecto.

La opción Ver dependencias cambia la vista en el panel del proyecto para mostrar otros componentes del proyecto que hacen referencia a la variable global.

Alternativamente, se pueden ver las dependencias de la variable global directamente en la pestaña Variables de la paleta de componentes de script.

Vista de dependencias de variables globales

En la vista de dependencias, el nombre de la variable global seleccionada aparece en la parte superior, debajo de las opciones de búsqueda y filtrado existentes. El nombre de la variable global es seguido por una lista de Dependencias que hacen referencia a la variable.

Las dependencias están organizadas por categorías como Actividad y Script. Dentro de cada categoría, los componentes se clasifican como Lectura o Escritura para mostrar cómo se accede a la variable.

Puedes hacer clic en el nombre de cualquier componente para abrir su pantalla de configuración.

dependencias variable global

Los siguientes ejemplos muestran cómo se muestran diferentes tipos de referencias de variables en la vista de dependencias:

  • Si un script contiene $myVar1='abc', está escribiendo un valor en la variable y haciendo referencia a myVar1 para acceso de escritura.
  • Si un script contiene $myVar2=$myVar1, está haciendo referencia a myVar2 para acceso de escritura y a myVar1 para acceso de lectura.
  • Si un script contiene If(myVar1=='abc', TRUE, FALSE), está haciendo referencia a myVar1 para acceso de lectura.

Cómo usar variables globales

Consulta estas secciones para obtener detalles sobre el uso de variables globales en proyectos:

Convertir una variable global en una variable de proyecto

Puedes convertir una variable global ya existente en una variable de proyecto.

Las variables globales se pueden convertir en variables de proyecto durante la configuración de variables de proyecto. Al configurar una variable de proyecto, ingresa el nombre de una variable global existente en el campo de nombre. Al intentar guardar, se muestra un aviso que te pide confirmar que deseas convertir la variable global en una variable de proyecto:

Texto del diálogo

La variable global ya existe
Una variable global con el mismo nombre ya existe en el proyecto. ¿Deseas convertir la variable global existente en una variable de proyecto?

Al hacer clic en Continuar, todas las referencias y dependencias de la variable global se transfieren a la variable de proyecto. Esto incluye referencias a la antigua variable global dentro de los scripts, que ahora hacen referencia a la variable de proyecto. (Ten en cuenta que un valor para una variable de proyecto establecido en un script durante la ejecución de la cadena de operaciones anula el valor predeterminado especificado en la configuración de la variable de proyecto.)

Para más detalles sobre las variables de proyecto, consulta Variables de proyecto.

Verificar valores nulos o indefinidos

Una variable global que no ha sido definida tiene un valor nulo.

Por ejemplo, IsNull(Get("GlobalVariableName")) devuelve verdadero si una variable global con el nombre GlobalVariableName aún no ha sido definida. Esto se puede usar para verificar si una variable global ha sido definida o no.

Establecer y acceder a variables de arreglo

Puedes crear arreglos de variables globales, también conocidas como variables de arreglo. Consulta Arreglos para obtener información sobre cómo establecer y recuperar valores de variables de arreglo.