0 / 0
Volver a la versión inglesa de la documentación
Funciones utilizadas en el creador de expresiones de Orchestration Pipelines
Última actualización: 31 may 2024
Funciones utilizadas en el creador de expresiones de Orchestration Pipelines

Utilice estas funciones en los editores de código de interconexiones, por ejemplo, para definir una variable de usuario o crear una condición avanzada.

Para ver las funciones de interconexiones transferidas desde DataStage, consulte Funciones deDataStage que se utilizan en el creador de expresiones de interconexiones.

El constructor de experssiones utiliza las categorías para codificar funciones:

Funciones de conversión

Convierte un único formato de elemento de datos en otro.

Tabla para la conversión de tipos de datos básicos

Tipo Acepta Devuelve Sintaxis
double int, uint, string double double(val)
duration string duration duration(string)
La duración debe finalizar con "s", que representa los segundos.
int int, uint, double, string, timestamp int int(val)
timestamp string timestamp timestamp(string)
Convierte series en indicaciones de fecha y hora según RFC3339, es decir, "1972-01-01T10:00:20.021-05:00".
uint int, double, string uint uint(val)

Ejemplo

Por ejemplo, para convertir un valor al tipo double:

double(%val%)

Al convertir doble a int | uint, el resultado se redondea hacia cero y los errores si el resultado está fuera de rango.

Funciones estándar

Funciones que son exclusivas de IBM Orchestration Pipelines.


sub

Sustituye subseries de una serie que coincide con la expresión regular dada que empieza en el desplazamiento de posición.

Sintaxis

(string).sub(substring (string), replacement (string), [occurrence (int), [offset (int)]])

devuelve: la serie con las subseries actualizada.

Ejemplos

'aaabbbcccbbb'.sub('[b]+','RE')

Devuelve 'aaaRECcRE'.

formato

Formatea una serie o indicación de fecha y hora de acuerdo con una especificación de formato y devuelve la serie resultante.

Sintaxis

format como método de series

(string).format(parameter 1 (string or bool or number)... parameter 10 (string or bool or number))

devuelve: la serie que contiene los valores de entrada formateados.

format como método de indicaciones de fecha y hora

(timestamp).format(layout(string))

devuelve: la indicación de fecha y hora en formato de serie.

Ejemplos

'number=%d, text=%s'.format(1, 'str')

Devuelve la serie 'number=1, text=str'.

timestamp('2020-07-24T09:07:29.000-00:00').format('%Y/%m/%d')

Devuelve la serie '2020/07/24'.

now

Devuelve la indicación de fecha y hora actual.

Sintaxis

now()

devuelve: la indicación de fecha y hora actual.


parseTimestamp

Devuelve la indicación de fecha y hora actual en formato de serie.

Sintaxis

parseTimestamp([timestamp_string(string)] [layout(string)])

devuelve: la indicación de fecha y hora actual a una serie de tipo serie.

Ejemplos

parseTimestamp('2020-07-24T09:07:29Z')

Devuelve '2020-07-24T09:07:29.000-00:00'.

min.

Devuelve el valor mínimo de la lista.

Sintaxis

(list).min()

devuelve: el valor mínimo de la lista.

Ejemplos

[1,2,3].min()

Devuelve el entero 1.

máx

Devuelve el valor máximo de la lista.

Sintaxis

(list).max()

devuelve: el valor máximo de la lista.

Ejemplos

[1,2,3].max()

Devuelve el entero 3.

argmin

Devuelve el índice del valor mínimo de la lista.

Sintaxis

(list).argmin()

devuelve: el índice del valor mínimo de la lista.

Ejemplos

[1,2,3].argmin()

Devuelve el entero 0.

argmax

Devuelve el índice del valor máximo de la lista.

Sintaxis

(list).argmax()

devuelve: el índice del valor máximo de la lista.

Ejemplos

[1,2,3].argmax()

Devuelve el entero 2.

suma

Devuelve la suma de valores de la lista.

Sintaxis

(list).sum()

devuelve: el índice del valor máximo de la lista.

Ejemplos

[1,2,3].argmax()

Devuelve el entero 2.

base64.decode

Decodifica la serie base64-encoded a bytes. Esta función devuelve un error si la entrada de serie no está base64-encoded.

Sintaxis

base64.decode(base64_encoded_string(string))

devuelve: la serie base64-encoded decodificada en formato de byte.

Ejemplos

base64.decode('aGVsbG8=')

Devuelve 'hello' en bytes.

base64.encode

Codifica bytes en una serie codificada en base64.

Sintaxis

base64.encode(bytes_to_encode (bytes))

devuelve: la serie codificada en base64 codificada del valor de byte original.

Ejemplos

base64.decode(b'hello')

Devuelve 'aGVsbG8=' en bytes.

charAt

Devuelve el carácter de la posición dada. Si la posición es negativa, o mayor que la longitud de la serie, la función produce un error.

Sintaxis

(string).charAt(index (int))

devuelve: el carácter de la posición especificada en formato de entero.

Ejemplos

'hello'.charAt(4)

Devuelve el carácter 'o'.

indexOf

Devuelve el índice entero de la primera aparición de la serie de búsqueda. Si no se encuentra la serie de búsqueda, la función devuelve -1.

Sintaxis

(string).indexOf(search_string (string), [offset (int)])

devuelve: el índice de la primera aparición del carácter después del desplazamiento.

Ejemplos

'hello mellow'.indexOf('ello', 2)

Devuelve el entero 7.

lowerAscii

Devuelve una nueva serie con caracteres ASCII convertidos a minúsculas.

Sintaxis

(string).lowerAscii()

devuelve: la nueva serie en minúsculas.

Ejemplos

'TacoCat'.lowerAscii()

Devuelve la serie 'TACOCAT'.

sustituir

Devuelve una nueva serie basada en el destino, que sustituye las apariciones de una serie de búsqueda por una serie de sustitución si está presente. La función acepta un límite opcional en el número de sustituciones de subserie que se deben realizar.

Sintaxis

(string).replace(search_string (string), replacement (string), [offset (int)])

devuelve: la nueva serie con apariciones de una serie de búsqueda sustituida.

Ejemplos

'hello hello'.replace('he', 'we')

Devuelve la serie 'wello wello'.

split

Devuelve una lista de series que se dividen de la entrada mediante el separador. La función acepta un argumento opcional que especifica un límite en el número de subseries producidas por la división.

Sintaxis

(string).split(separator (string), [limit (int)])

devuelve: la serie de división como una lista de series.

Ejemplos

'hello hello hello'.split(' ')

Devuelve la lista de series ['hello ',' hello ',' hello '].

substring

Devuelve la subserie dada un rango numérico que corresponde a las posiciones de caracteres. Opcionalmente, puede omitir el rango final para una subserie desde una posición de carácter hasta el final de una serie.

Sintaxis

(string).substring(start (int), [end (int)])

devuelve: la subserie en el índice especificado de la serie.

Ejemplos

'tacocat'.substring(4)

Devuelve la serie 'cat'.

trim

Devuelve una nueva serie, que elimina el espacio en blanco inicial y final de la serie de destino. La función de recorte utiliza la definición Unicode de espacio en blanco, que no incluye los espacios de anchura cero.

Sintaxis

(string).trim()

devuelve: la nueva serie con espacios en blanco eliminados.

Ejemplos

'  \ttrim\n    '.trim()

Devuelve la serie 'trim'.

upperAscii

Devuelve una nueva serie donde todos los caracteres ASCII están en mayúsculas.

Sintaxis

(string).upperAscii()

devuelve: la nueva serie con todos los caracteres convertidos a mayúsculas.

Ejemplos

'TacoCat'.upperAscii()

Devuelve la serie 'TACOCAT'.

tamaño

Devuelve la longitud de la serie, bytes, lista o correlación.

Sintaxis

(string | bytes | list | map).size()

devuelve: la longitud de la serie, bytes, lista o matriz de correlación.

Ejemplos

'hello'.size() 

Devuelve el entero 5.

'hello'.size() 

Devuelve el entero 5.

['a','b','c'].size() 

Devuelve el entero 3.

{'key': 'value'}.size() 

Devuelve el entero 1.

contiene

Prueba si el operando de la serie contiene la subserie.

Sintaxis

(string).contains(substring (string))

devuelve: un valor booleano de si la subserie existe en el operando de la serie.

Ejemplos

'hello'.contains('ll')

Devuelve verdadero.

endsWith

Prueba si el operando de serie termina por el sufijo especificado.

Sintaxis

(string).endsWith(suffix (string))

devuelve: un valor booleano de si la serie termina por el sufijo especificado en el operando de la serie.

Ejemplos

'hello'.endsWith('llo')

Devuelve verdadero.

startsWith

Prueba si el operando de serie empieza por el argumento de prefijo.

Sintaxis

(string).startsWith(prefix (string))

devuelve: un valor booleano que indica de si la serie empieza por el prefijo especificado en el operando de la serie.

Ejemplos

'hello'.startsWith('he')

Devuelve verdadero.

matches

Prueba si el operando de la serie coincide con una expresión regular.

Sintaxis

(string).matches(prefix (string))

devuelve: un valor booleano de si la serie coincide con la expresión regular especificada.

Ejemplos

'Hello'.matches('[Hh]ello')

Devuelve verdadero.

getDate

Obtener el día del mes a partir de la fecha con huso horario (hora universal coordinada predeterminada), una indexación basada en uno.

Sintaxis

(timestamp).getDate([time_zone (string)])

devuelve: el día del mes con una indexación basada en uno.

Ejemplos

timestamp('2020-07-24T09:07:29.000-00:00').getDate()

Devuelve 24.

getDayOfMonth

Obtener el día del mes a partir de la fecha con huso horario (hora universal coordinada predeterminada), indexación basada en cero.

Sintaxis

(timestamp).getDayOfMonth([time_zone (string)])

devuelve: el día del mes con indexación basada en cero.

Ejemplos

timestamp('2020-07-24T09:07:29.000-00:00').getDayOfMonth()

Devuelve 23.

getDayOfWeek

Obtener día de la semana a partir de la fecha con huso horario (hora universal coordinada predeterminada), indexación basada en cero, cero para el domingo.

Sintaxis

(timestamp).getDayOfWeek([time_zone (string)])

devuelve: el día de la semana con indexación basada en cero.

Ejemplos

timestamp('2020-07-24T09:07:29.000-00:00').getDayOfWeek()

Devuelve 5.

getDayOfYear

Obtener el día del año a partir de la fecha con huso horario (hora universal coordinada predeterminada), indexación basada en cero.

Sintaxis

(timestamp).getDayOfYear([time_zone (string)])

devuelve: el día del año con indexación basada en cero.

Ejemplos

timestamp('2020-07-24T09:07:29.000-00:00').getDayOfYear()

Devuelve 205.

getFullYear

Obtener el año a partir de la fecha con huso horario (hora universal coordinada predeterminada).

Sintaxis

(timestamp).getFullYear([time_zone (string)])

returns: el año a partir de la fecha.

Ejemplos

timestamp('2020-07-24T09:07:29.000-00:00').getFullYear()

Devuelve 2020.

getMonth

Obtener el mes a partir de la fecha con huso horario, 0-11.

Sintaxis

(timestamp).getMonth([time_zone (string)])

devuelve: el mes a partir de la fecha.

Ejemplos

timestamp('2020-07-24T09:07:29.000-00:00').getMonth()

Devuelve 6.

getHours

Obtener horas desde la fecha con huso horario, 0-23.

Sintaxis

(timestamp).getHours([time_zone (string)])

devuelve: la hora a partir de la fecha.

Ejemplos

timestamp('2020-07-24T09:07:29.000-00:00').getHours()

Devuelve 9.

getMinutes

Obtener minutos desde la fecha con huso horario, 0-59.

Sintaxis

(timestamp).getMinutes([time_zone (string)])

devuelve: el minuto a partir de la fecha.

Ejemplos

timestamp('2020-07-24T09:07:29.000-00:00').getMinutes()

Devuelve 7.

getSeconds

Obtener segundos desde la fecha con huso horario, 0-59.

Sintaxis

(timestamp).getSeconds([time_zone (string)])

devuelve: el segundo a partir de la fecha.

Ejemplos

timestamp('2020-07-24T09:07:29.000-00:00').getSeconds()

Devuelve 29.

getMilliseconds

Obtener milisegundos a partir de la fecha con huso horario, 0-999.

Sintaxis

(timestamp).getMilliseconds([time_zone (string)])

devuelve: el milisegundo a partir de la fecha.

Ejemplos

timestamp('2020-07-24T09:07:29.021-00:00').getMilliseconds()

Devuelve 21.

Acceso a objetos globales avanzados

Obtenga salidas de nodo, variables de usuario y parámetros de interconexión utilizando el siguiente código de interconexiones.

Obtener variable de usuario

Obtiene el valor más actualizado de una variable de usuario.

Sintaxis

vars.<var name>

Ejemplos

Ejemplo Resultado
vars.my_user_var Obtiene el valor de la variable de usuario my_user_var

Obtener parámetros

Obtiene los parámetros de flujo.

Sintaxis

params.<param name>

Ejemplos

Ejemplo Resultado
params.a Obtiene el valor del parámetro a

Obtener conjuntos de parámetros

Obtiene los conjuntos de parámetros de flujo.

Sintaxis

param_set.<param_set_name>.<param_name>

Ejemplos

Ejemplo Resultado
param_set.ps.a Obtiene el valor del parámetro a de un conjunto de parámetros ps
param_sets.config Obtiene los valores de configuración de interconexión
param_sets.config.deadline Obtiene un objeto de fecha del conjunto de parámetros de configuraciones
param_sets.ps["$PARAM"] Obtiene el valor del parámetro $PARAM de un conjunto de parámetros ps

Obtener resultados de tarea

Obtiene la salida resultante de una tarea de conducto y otras métricas de una tarea de conducto después de que complete su ejecución.

Sintaxis

tasks.<node id>.<output name>

Ejemplos

Ejemplo Resultado
tasks.run_datastage_job Obtiene el diccionario de resultados de la salida del trabajo
tasks.run_datastage_job.results.score Obtiene el valor score de la salida de trabajo
tasks.run_datastage_job.results.timestamp Obtiene la indicación de fecha y hora de finalización del trabajo ejecutado
tasks.run_datastage_job.results.error Obtiene el número de errores de la ejecución del trabajo
tasks.loop_task.loop.counter Obtiene el contador iterativo de bucle actual del trabajo ejecutado
tasks.loop_task.loop.item Obtiene el elemento iterativo de bucle actual del trabajo ejecutado
tasks.run_datastage_job.results.status Obtiene el estado de éxito o error de la ejecución del trabajo
tasks.run_datastage_job.results.status_message Obtiene el mensaje de estado del trabajo ejecutado
tasks.run_datastage_job.results.job_name Obtiene el nombre del trabajo
tasks.run_datastage_job.results.job Obtiene la vía de acceso de Cloud Pak for Data del trabajo
tasks.run_datastage_job.results.job_run Obtiene la vía de acceso de ejecución de Cloud Pak for Data de la ejecución del trabajo

Obtener objetos de contexto de interconexión

Obtiene valores que se evalúan en el contexto de un conducto que se ejecuta en un ámbito (proyecto, espacio, catálogo).

Ejemplos

Ejemplo Resultado
ctx.scope.id Obtiene ID de ámbito
ctx.scope.type Devuelve "project", "space" o "catalog"
ctx.scope.name Obtiene nombre de ámbito
ctx.pipeline.id Obtiene ID de conducto
ctx.pipeline.name Obtiene el nombre de interconexión
ctx.job.id Obtiene ID de trabajo
ctx.run_datastage_job.id Obtiene el ID de ejecución del trabajo
ctx.run_datastage_job.started_at Obtiene la hora de inicio de ejecución del trabajo
ctx.user.id Obtiene el ID de usuario

Obtener estado de error

Si se desencadena el manejador de excepciones, se crea un objeto de error y sólo se puede acceder a él dentro del manejador de excepciones.

Ejemplos

Ejemplo Resultado
error.status Obtiene el estado correcto o fallido de la ejecución del trabajo, normalmente fallido
error.status_message Obtiene el mensaje de estado de error
error.job Obtiene la vía de acceso de Cloud Pak for Data del trabajo
error.run_datastage_job Obtiene la vía de acceso de ejecución de Cloud Pak for Data del trabajo (no disponible en watsonx)

Tema padre: Adición de condiciones a un conducto

Búsqueda y respuesta de IA generativa
Estas respuestas las genera un modelo de lenguaje grande en watsonx.ai que se basa en el contenido de la documentación del producto. Más información