Variables Globales¶
Introducción¶
Las variables globales son uno de los tipos de elementos de datos globales disponibles en Jitterbit 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
. 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 llamadaServerURL
con el valor deURL
(el nombre de otra variable o el nombre de un campo en una transformación).Set
: Utilizando elSet
función,Set("ServerURL", URL)
crea o actualiza una variable global llamadaServerURL
con el valor deURL
(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>
sinvar
:var $
: La expresionvar $ServerURL="https://www.example.com/"
crea o actualiza una variable globalServerURL
con un valor de cadena dehttps://www.example.com/
. Una nueva variable global debe preceder a la$
convar
.$
: La expresion$ServerURL="https://www.example.com/"
actualiza la misma variable globalServerURL
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
yJitterbit.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
yJitterbit.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 elGet
función, el ejemplo de códigoGet("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 llamadaServerURL
. -
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
yJitterbit.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
yJitterbit.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
(yGetVar
) 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:
!
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 . 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
- Alternar formatos entre píldora y texto
- Definir un valor predeterminado
- Eliminar una variable
Seleccione una Variable Global¶
Para acceder a las variables globales, puede hacer clic en el í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:
para la palabra clave del nombre de archivo
para variables globales
para la variable del proyecto
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:
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 si la variable global tiene un valor predeterminado especificado en este campo de configuración, o vacío
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:
Para revisar información sobre la variable, coloque el cursor sobre la píldora de la variable:
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 :
Esto alterna la visualización del formato de píldora a un formato de texto, con el nombre de la variable entre corchetes. [ ]
:
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 { }
:
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 :
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:
Por ejemplo:
- Si un secuencia de comandos contiene
$myVar1='abc'
, está escribiendo un valor en la variable y haciendo referenciamyVar1
para acceso de escritura. - Si un secuencia de comandos contiene
$myVar2=$myVar1
, está haciendo referenciamyVar2
para acceso de escritura ymyVar1
para acceso de lectura. - Si un secuencia de comandos contiene
If(myVar1=='abc', TRUE, FALSE)
, está haciendo referenciamyVar1
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
- Compruebe si hay valores nulos o indefinidos
- Establecer y acceder a variables de matriz
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:
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.