Todos los productos
Search
Centro de documentos

Data Management:Variables

Última actualización: Sep 03, 2026

Este tema explica las variables utilizadas en la orquestación de tareas.

Descripción general de variables

Las variables son valores dinámicos dentro de un flujo de tareas y se clasifican en variables de sistema, variables de tiempo y variables sin tiempo. Puede hacer referencia a cualquier variable dentro de un nodo mediante la sintaxis ${varName}.

Variables de sistema

Las variables de sistema son valores predefinidos, como el ID del flujo de tareas actual y el momento de ejecución del flujo.

Nota

Si una variable personalizada tiene el mismo nombre que una variable de sistema, su valor reemplaza al de la variable de sistema, por lo que la variable personalizada tiene mayor prioridad.

Variables de tiempo

  • Variable de flujo de tareas (variable global): esta variable se calcula al aplicar un desplazamiento de tiempo a la marca de tiempo de los datos. De forma predeterminada, la marca de tiempo de los datos corresponde al momento de ejecución menos un día. Al ser una variable global, está disponible para todos los nodos del flujo de tareas actual.

    Nota

    Configure una variable de flujo de tareas en cualquier nodo del flujo. La configuración se sincroniza automáticamente con todos los demás nodos.

  • Variable de nodo: es una variable de tiempo creada al aplicar un desplazamiento de tiempo a la variable integrada bizdate (T-1). El alcance de esta variable se limita al nodo donde se define.

    Por ejemplo, si la fecha actual es el 22 de agosto de 2023 y aplica un desplazamiento de +1 día, el valor de la variable será el 23 de agosto de 2023.

Variables sin tiempo

  • Constante de flujo de tareas (variable global): es un valor fijo utilizable en todos los nodos del flujo de tareas actual.

  • Variable de entrada: el sistema completa automáticamente las variables de entrada. Haga referencia a una variable de entrada en las instrucciones SQL del nodo actual mediante la sintaxis ${var_name}, o bien úsela como variable condicional en un nodo Conditional Branch. Las variables de entrada incluyen:

    • Variable ascendente: es una variable de salida proveniente de un nodo anterior.

    • Variable de estado: para obtener más información, consulte Status variables.

    • Variable de sistema: para obtener más información, consulte System variables.

  • Variable de salida: defina y asigne un valor a esta variable en el nodo actual. Los nodos posteriores pueden acceder a ella y utilizarla como referencia.

    Por ejemplo, si configura una variable de salida en un nodo Script, podrá referenciarla en las instrucciones SQL de un nodo posterior.

  • Variable de salida de un nodo Single Instance SQL: este tipo de nodo permite definir un conjunto de resultados a partir de una consulta SQL, el cual forma una matriz bidimensional. Durante la definición de la variable, extraiga un solo elemento o concatene todos los valores de una fila o columna.

  • Variable de salida de script: si la última línea de la salida de un script es un objeto JSON con el formato { key1: value1, key2: value2, … } y los valores son de tipo String, la tarea del script analiza automáticamente los pares clave-valor de JSON. Esto genera una variable llamada key, cuyo valor se establece según el valor correspondiente. Haga referencia a la variable como ${key}.

    Por ejemplo, si la última línea del script es echo {"hello": "world"}, la tarea del script crea una variable llamada hello con el valor world.

Configurar variables de tiempo

Parámetro

Descripción

Variable name

Introduzca el nombre de la variable personalizada.

Nota

Para eliminar una variable configurada, haga clic en el icono 删除-变量.

Variable rule

Configure las reglas para la variable de tiempo.

  • Formato de hora: especifique el formato de hora deseado. Para obtener más información, consulte Time formats.

  • Desplazamiento de tiempo: una variable de tiempo se calcula al aplicar un desplazamiento a la marca de tiempo de los datos (bizdate), que de forma predeterminada corresponde al día anterior al momento de ejecución del flujo de tareas.

    Por ejemplo, considere una variable llamada 6_month_ago con formato de tiempo yyyy-MM-dd y un desplazamiento de -6 meses. Si el momento de ejecución es 2021-08-12 (lo que hace que bizdate sea 2021-08-11), el valor de la variable ${6_month_ago} será 2021-02-11.

    El uso de mes o año como unidad de desplazamiento puede generar secuencias de fechas no continuas. Para obtener una secuencia diaria continua, utilice día como unidad de desplazamiento.

Nota

Una vez configurada una variable de tiempo, refiriéncela en instrucciones SQL mediante la sintaxis ${var_name}. También puede hacer clic en SQL Preview para comprobar el valor de la variable de tiempo.

Formatos de tiempo

A continuación, la tabla describe los especificadores de formato de tiempo compatibles.

Especificador

Descripción

Ejemplo de entrada

Ejemplo de salida

Era

G indica la era.

Gyyyy

AD 2021

Año

  • y o yyyy: el año.

  • yy: los últimos dos dígitos del año.

  • Y: el año de numeración de semanas, que corresponde al año al final de la semana (domingo).

yyyy

2021

Mes

M: el mes del año. Valores válidos: [1.12]. MM: con relleno de ceros. Valores válidos: [01.12].

MM

08

Semana

  • w: la semana del año. Valores válidos: [1, 52]. ww: con relleno de ceros. Valores válidos: [01, 52].

  • W: la semana del mes. Valores válidos: [1, 5].

ww

13

Día

  • D: el día del año. Valores válidos: [1, 365]. DD: con relleno de ceros. Valores válidos: [01, 365]. DDD: con relleno de dos ceros a la izquierda. Valores válidos: [001, 365].

  • d: el día del mes. Valores válidos: [1, 31]. dd: con relleno de ceros. Valores válidos: [01, 31].

D

360

Día de la semana

  • E: el nombre del día de la semana, de lunes a domingo.

  • e: el número del día de la semana. Valores válidos: [1, 7]. De forma predeterminada, 1 representa el lunes.

    Nota

    Establezca el desplazamiento de tiempo en +1 día para alinearlo con calendarios donde 1 representa el domingo.

e

1

AM/PM

a: el marcador AM/PM. Devuelve AM para horas de 00:00 a 11:59, y PM para horas de 12:00 a 23:59.

a

AM

Hora

  • H: la hora del día (0-23). 0 representa la medianoche. Valores válidos: [0, 23]. HH: con relleno de ceros. Valores válidos: [00, 23].

  • h: la hora en formato AM/PM (1-12). 1 representa la primera hora. Valores válidos: [1, 12]. hh: con relleno de ceros. Valores válidos: [01, 12].

  • K: la hora en formato AM/PM (0-11). 0 representa la primera hora. Valores válidos: [0, 11]. KK: con relleno de ceros. Valores válidos: [00, 11].

  • k: la hora del día (1-24). 1 representa la primera hora. Valores válidos: [1, 24]. kk: con relleno de ceros. Valores válidos: [01, 24].

HH

10

Minuto

m: el minuto de la hora. Valores válidos: [0, 59]. mm: con relleno de ceros. Valores válidos: [00, 59].

m

27

Segundo

  • s: el segundo del minuto.

  • S: el milisegundo.

ss

08

Zona horaria

z: la zona horaria.

z

UTC+08:00

Ejemplos de formatos de tiempo combinados:

Ejemplo de entrada

Ejemplo de salida

yyyy-MM-dd

2021-08-12

yyyyMM01

20210801

HH:mm:ss

11:05:21

yyyyMMdd HH:mm:ss

20210812 11:05:21

Variables de sistema

Nombre de la variable

Descripción

Ejemplo

sys.flow.start.timestamp

La marca de tiempo del momento de ejecución.

2021-05-24T11:20:07.562+08:00

sys.flow.start.year

El año del momento de ejecución.

2021

sys.flow.start.month

El mes del momento de ejecución.

5

sys.flow.start.day

El día del momento de ejecución.

24

sys.flow.start.hour

La hora del momento de ejecución.

11

sys.flow.start.minute

El minuto del momento de ejecución.

20

sys.flow.start.second

El segundo del momento de ejecución.

7

sys.flow.start.milliseconds

Los milisegundos del momento de ejecución.

562

sys.flow.start.timezone

La zona horaria del momento de ejecución.

Asia/Shanghai

sys.flow.biztime

La marca de tiempo de los datos. De forma predeterminada, corresponde al momento de ejecución menos un día.

1621740007562

sys.flow.name

El nombre del flujo de tareas.

dwd_activity_daily_pv

sys.node.name

El nombre del nodo.

Single Instance SQL-1

Variables de estado

Nombre de la variable

Descripción

all_success

Todas las tareas anteriores se ejecutaron correctamente.

all_failed

Todas las tareas anteriores se ejecutaron con errores.

one_success

Como mínimo una tarea anterior se ejecutó correctamente.

one_failed

Como mínimo una tarea anterior se ejecutó con errores.

Nota

Utilice variables de estado en un nodo Conditional Branch para controlar si el flujo de tareas ejecuta las tareas subsiguientes según un estado de ejecución específico.