Saltar al contenido

Variables Globales

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 Jitterbit y palabras clave de nombre de archivo) también están disponibles globalmente en todo un proyecto. Se configuran de manera diferente, como se describe en Variables del proyecto, Variables de Jitterbit y Palabras clave de nombre de archivo, respectivamente. Sin embargo, como 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 quedan disponibles para ser referenciadas en las mismas operaciones o abajo en la cadena y secuencias de comandos. Las operaciones o secuencias de comandos posteriores son aquellos que están vinculados dentro de una cadena de operación usando acciones de operación o el RunOperation o RunScript funciones. Las operaciones posteriores pueden estar dentro del mismo flujo de trabajo o dentro de flujos de trabajo abajo en la cadena.

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

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

  • Usar valores creados en una transformación en una transformación posterior. Por ejemplo, es posible que se requiera un ID de sesión (devuelto por un servicio web de inicio de sesión) al llamar a servicios web posteriores para la autenticación.
  • Utilizar 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 inicializarse e incrementarse para cada registro insertado en un objetivo para identificar su número de artículo.
  • Utilizar 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 se puede utilizar para configurar la URL del servicio web de una llamada de servicio web posterior.

Las variables globales pasan por operaciones encadenadas. Estas incluyen operaciones que están vinculadas a una operación anterior dentro de la cadena de operación utilizando "en caso de éxito" o "en caso de error" acciones de operación, así como aquellos que se vinculan a través de la RunOperation función. Las variables globales también se pueden utilizar dentro de la misma transformación.

Visualización de Variables Globales

Las variables globales definidas se muestran en varios lugares:

  • En el panel de proyecto, las variables globales se muestran en la pestañaComponentes en la categoría Variables globales. Desde aquí puede ver si se hace referencia a la variable global en otra parte del proyecto y ver las dependencias.
  • En el editor de secuencia de comandos, las variables globales se muestran en la paleta de componentes de secuencias de comandos dentro de la pestaña Variables en la subpestaña Variables globales. Esta ubicación proporciona un fácil acceso para insertar referencias de variables globales en secuencias de comandos, incluso dentro de secuencias de comandos de transformación en modo secuencia de comandos.
  • En transformación modo de mapeo, 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 fácil acceso para insertar referencias de variables globales durante el mapeo de transformación en el modo de mapeo.
  • En pantallas de configuración del extremo, se puede acceder a las variables globales y utilizarlas en cualquier campo que tenga un icono de variable icono de variable. Como alternativa a seleccionar una variable global, puede ingresar manualmente la referencia de la variable usando la sintaxis de corchetes estándar de Jitterbit Script.

Crear y Actualizar Variables Globales

Las variables globales se crean o actualizan usando Jitterbit Script (en secuencias de comandos y transformaciones) o JavaScript (solo en secuencias de comandos creados como componente del proyecto). Consulte Tipos de secuencias de Secuencia de Comandos y creación para obtener información sobre la creación de los diferentes tipos de secuencias de comandos. 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 guiones, que pueden causar problemas). Los nombres de variables globales no distinguen entre mayúsculas y minúsculas; una variable llamada GlobalVar se trata igual 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 llamado org.account.filename empieza con org, seguido por account, etc. organizándolo 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 luego podrían usarse en JavaScript) recomendamos usar guiones bajos en lugar de puntos. El uso de puntos en variables globales definidas por el usuario causa problemas en tiempo de ejecución. Se proporciona más información en JavaScript subsección siguiente.

Jitterbit Script

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

  • $: Usando el signo del dólar $ sintaxis, $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: Utilizando el Set función, 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 secuencias de comandos creado como componente del proyecto, la sintaxis utilizada para configurar 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 se puede crear o actualizar usando var $<name> o actualizado simplemente usando $<name> sin var:

    • var $: La expresion 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 a la $ con var.
    • $: La expresion $ServerURL="https://www.example.com/" actualiza la misma variable global ServerURL con la misma cadena URL. Esto funciona sólo para variables globales que ya existen.
  • El nombre incluye un punto (recomendado solo para variables Jitterbit y valores de objetos de JavaScript): Una variable que contiene puntos en su nombre se puede actualizar o recuperar en JavaScript solo con el Jitterbit.SetVar y Jitterbit.GetVar funciones. Como estas funciones no están destinadas a variables globales definidas por el usuario, consulte Variables de Jitterbit para más información.

    Advertencia

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

Extremo Variable

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

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 proporciona el nombre de una variable global que ya existe, se asocia con el extremo de la variable.

Para obtener detalles sobre cómo crear o actualizar una variable global usando este método, consulte Conexión de variable.

Recuperar Variables Globales en Secuencias de Comandos o Transformaciones

El valor de una variable global se puede devolver usando Jitterbit Script (en secuencias de comandos o transformaciones) o usando JavaScript (solo en secuencias de comandos creados como componente del proyecto).

Jitterbit Script

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

  • $: Con el prefijo de 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: Utilizando el Get función, el ejemplo de código Get("serverURL") devuelve el mismo valor (o campo en una transformación).

En secuencias de comandos y transformaciones, las variables globales existentes también se muestran en la pestaña Variables de la paleta de componentes de secuencias de comandos dentro de la subpestaña Variables globales. Consulte Agregar una variable global a un Secuencia de Comandos abajo.

Javascript

En JavaScript secuencias de comandos 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 $. Con el prefijo de un signo de dólar $, la expresion $ServerURL recupera el valor de la variable global llamada ServerURL.

  • Nombre con puntos (recomendado solo para variables 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 el Jitterbit.SetVar y Jitterbit.GetVar funciones. Como estas funciones no están destinadas a variables globales definidas por el usuario, consulte la sección sobre variables Jitterbit para más información.

    Advertencia

    El JavaScript Jitterbit.SetVar y Jitterbit.GetVar Las funciones están diseñadas específicamente para acceder a las variables 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 $-prefijo al configurar (y recuperar) una variable. Utilice sólo una sintaxis. Mezclar dos sintaxis diferentes para la misma variable puede causar problemas en tiempo de ejecución.

    Si falla un JavaScript, se pierden todos los cambios realizados en el valor de una variable global. Sólo si el JavaScript se completa correctamente, los valores de las variables globales modificadas estarán disponibles fuera del secuencia de comandos.

En secuencias de comandos y transformaciones, las variables globales existentes también se muestran en la pestaña Variables de la paleta de componentes de secuencias de comandos dentro de la subpestaña Variables globales. Consulte Agregar una variable global a un Secuencia de Comandos abajo.

Agregar una Variable Global a un Secuencia de Comandos

Ya sea en Jitterbit Script o JavaScript utilizado dentro de secuencias de comandos creadas dentro de una operación, las variables globales existentes se muestran en la pestaña Variables de la paleta de componentes de secuencias de comandos dentro de la subpestaña Variables globales:

!variables globales

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

  • Arrastre la variable desde la paleta al secuencia de comandos para insertar la sintaxis de la variable.
  • Haga doble clic en la variable en la paleta para insertar la sintaxis de la variable en la ubicación del cursor dentro del secuencia de comandos.
  • Comience a escribir el nombre de la variable y luego presione Control+Space para mostrar una lista de sugerencias de autocompletar. Seleccione una variable para insertar la sintaxis de la variable.
  • Introduzca manualmente la sintaxis de la variable.

Utilice Variables Globales en las Pantallas de Configuración

Durante la configuración de varios componentes del proyecto, incluida la configuración del extremo usando conectores, puede utilizar variables globales en cualquier campo que tenga un icono de variable icono de variable. Las variables se pueden utilizar en campos junto con otras entradas, incluidas otras variables o palabras clave. Estas acciones se tratan a continuación:

Seleccione una Variable Global

Para acceder a las variables globales, puede hacer clic en el ícono de variable ícono de variable o introduzca un corchete abierto [ para mostrar una lista de variables y palabras clave (si están disponibles para el campo actual).

Dentro de la lista, cada variable o tipo de palabra clave se indica mediante el icono junto a su nombre:

  • nombre de archivo palabra clave para la palabra clave del nombre de archivo
  • variable global para variables globales
  • variable del proyecto para la variable del proyecto
  • variable de jitterbit para la variable Jitterbit

En la lista, pase el cursor sobre el nombre de la variable para obtener una vista previa de la información sobre ella:

ftp leer obtener archivos seleccionar variable

La Descripción en la ventana emergente de información es [Ninguna] para una variable global. Un Valor se completa solo si la variable global tiene un valor predeterminado especificado en este campo de configuración.

El fondo del ícono es sólido valor de variable global si la variable global tiene un valor predeterminado especificado en este campo de configuración, o vacío variable global si no es así. El fondo del icono 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 se especifica en el campo actual.

Advertencia

Si una variable global obtiene su valor en un secuencia de comandos que está arriba en la cadena del componente, su valor evaluado anula el valor predeterminado especificado en el campo de configuración. Tenga en cuenta que los valores evaluados que se obtienen en un secuencia de comandos no se reflejan en el Valor de la ventana emergente de información.

Seleccione una variable para agregarla al campo en la ubicación del 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 leer píldora de obtención de archivos

Para revisar información sobre la variable, coloque el cursor sobre la píldora de la variable:

ftp leer obtener archivos píldora pasar el cursor

Alternar Formatos Entre Píldora y Texto

Para cambiar el formato de píldora variable predeterminado a formato de texto, haga clic en el ícono de contraer icono de contraer:

ftp leer obtener archivos colapso de la píldora

Esto alterna la visualización del formato de píldora a un formato de texto, con el nombre de la variable entre corchetes. [ ]:

ftp leer obtener archivos de texto

En formato de texto, puede definir un valor predeterminado.

Para cambiar de un formato de texto a formato de píldora, cambie el foco fuera del campo, por ejemplo, haciendo clic en otro campo configurable. La entrada del campo vuelve automáticamente al formato de píldora predeterminado.

Definir un Valor Predeterminado

En tiempo de ejecución de operación, un valor predeterminado definido dentro de un campo de configuración, como se muestra a continuación, se usa solo si el valor de la variable no se ha establecido durante el tiempo de tiempo de ejecución. Esto es diferente durante prueba de secuencia de comandos, donde, como aún no se habrá creado una instancia de ningún valor de secuencia de comandos arriba en la cadena, en su lugar 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, primero cambiar al formato de texto.

Inmediatamente después del nombre de la variable global entre corchetes [ ], especifique el valor predeterminado entre llaves { }:

ftp leer obtener archivos texto predeterminado

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

Consejo

Cuando se utiliza una variable global en una cláusula WHERE, como en una base de datos o Salesforce consultar, puede especificar un valor predeterminado para que prueba de secuencia de comandos es posible. De lo contrario, como una variable global obtiene su valor en tiempo de ejecución, durante la prueba la sintaxis puede no ser válida si no se ha especificado ningún valor predeterminado.

Si no desea que se interprete la variable global, utilice una barra invertida \ para escapar del conjunto de corchetes [ ].

Por ejemplo, lo siguiente no utiliza el valor de serverURL incluso si está definido, pero en su lugar siempre usa http://server/index.asp:

\[serverURL{http://server/index.asp}]

Precaución

Dentro de las rutas de archivo que contienen barras invertidas, una sola barra invertida se interpreta como el inicio de una secuencia de escape si va seguida de un conjunto de corchetes. [ ].

Se pueden utilizar barras invertidas adicionales para lograr el resultado deseado. Por ejemplo, \\server\share\\[Directory{testing}] se interpreta como \\server\share\testing si la variable Directory no está definido, de lo contrario \\server\share\"value of Directory" se utiliza.

Para evitar este problema, convierta las rutas de los archivos al formato URL (p. ej. C:/directory/path).

Eliminar una Variable

Para eliminar la variable, haga clic en el icono de eliminación eliminar icono:

ftp leer obtener archivos píldora eliminar

Ver Dependencias de Variables Globales

Las dependencias de una variable global son otros componentes que dependen de la variable porque leen o escriben en la variable global. Una vez que se ha creado y utilizado una variable global en un proyecto, puede ver estas dependencias.

Después de crear una variable global, la opción Ver dependencias está disponible en la pestaña Componentes del panel del proyecto (consulte Menú de acciones de componentes en Pestaña Componentes del panel de proyecto). La opción Ver dependencias cambia la vista en el panel del proyecto para mostrar otras partes del proyecto de las que depende la variable global.

En la vista de dependencia, el nombre de la variable global seleccionada aparece en la parte superior, debajo de las capacidades de búsqueda y filtrado existentes. El nombre de la variable global va seguido de una lista de Dependencias de las que depende la variable. Esta lista está organizada por categorías como Actividad y Secuencia de Comandos y además se clasifica en Lectura o Escritura para indicar el tipo de acceso de una referencia de variable particular:

variable global de dependencias

Por ejemplo:

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

Tutoriales Variables Globales

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

Convertir una Variable Global en una Variable de Proyecto

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

Las variables globales se pueden convertir en variables del proyecto durante la configuración de variables del proyecto. Mientras configura una variable de proyecto, ingrese el nombre de una variable global existente en el campo de nombre. Al intentar guardar, un mensaje le pide que confirme que desea convertir la variable global en una variable de proyecto:

ya existe una variable global con el mismo nombre

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

Para obtener más detalles sobre las variables del proyecto, consulte Variables del proyecto.

Comprobar 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 definido. Esto se puede utilizar para comprobar si se ha definido una variable global o no.

Establecer y Acceder a Variables de Matriz

Puede crear matrices de variables globales, también conocidas como variables de matriz. Vea Matrices para obtener información sobre cómo configurar y recuperar valores de variables de matriz.