Funções utilizadas no Construtor de Expressões do Orchestration Pipelines

Use essas funções em editores de código Pipelines, por exemplo, para definir uma variável de usuário ou construir uma condição avançada.

Para ver as funções do Pipelines transferidas de DataStage,, consulte DataStage Functions that are used in pipelines Expression Builder.

O Experssion Builder usa as categorias para funções de codificação:

Funções de conversão

Converte um formato de elemento de dados único em outro.

Tabela para conversão do tipo de dado básico

Tipo Aceita Retorna Sintaxe
double int, uint, string double double(val)
duration string duration duration(string)
A duração deve terminar com "s", que representa segundos.
int int, uint, double, string, timestamp int int(val)
timestamp string timestamp timestamp(string)
Converte cadeias de caracteres em carimbos de data/hora de acordo com RFC3339, ou seja, ""1972-01-01T10:00:20.021-05:00".
uint int, double, string uint uint(val)

Exemplo

Por exemplo, para executar cast de um valor para o tipo double:

double(%val%)

Ao efetuar cast duplo para int | uint, o resultado será arredondado para zero e erros se o resultado estiver fora do intervalo.

Funções padrão

Funcionalidades exclusivas do site IBM Orchestration Pipelines.


sub

Substitui as subsequências de uma sequência que corresponde à expressão regular especificada que inicia no deslocamento de posição

Sintaxe

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

retorna: a sequência com subsequências atualizadas.

Exemplos

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

Retorna 'aaaREcccRE'.

formato

Formata uma sequência de caracteres ou registro de data e hora de acordo com um especificador de formato e retorna a sequência de caracteres resultante.

Sintaxe

format como um método de sequências

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

returns: a cadeia que contém os valores de entrada formatados.

format como um método de registros de data e hora

(timestamp).format(layout(string))

retorna: o registro de data e hora formatado no formato de sequência.

Exemplos

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

Retorna a sequência 'number=1, text=str'.

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

Retorna a sequência '2020/07/24'.

hoje

Retorna o registro de data e hora atual.

Sintaxe

now()

retorna: o registro de data e hora atual.


parseTimestamp

Retorna o timestamp atual no formato string.

Sintaxe

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

retorna: o timestamp atual a uma string de tipo string.

Exemplos

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

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

min

Retorna valor mínimo em lista.

Sintaxe

(list).min()

retorna: o valor mínimo da lista.

Exemplos

[1,2,3].min()

Retorna o número inteiro 1.

máx

Retorna valor máximo em lista.

Sintaxe

(list).max()

retorna: o valor máximo da lista.

Exemplos

[1,2,3].max()

Retorna o número inteiro 3.

argmin

Retorna índice de valor mínimo em lista.

Sintaxe

(list).argmin()

retorna: o índice do valor mínimo da lista.

Exemplos

[1,2,3].argmin()

Retorna o número inteiro 0.

argmax

Retorna índice de valor máximo em lista.

Sintaxe

(list).argmax()

retorna: o índice do valor máximo da lista.

Exemplos

[1,2,3].argmax()

Retorna o número inteiro 2.

soma

Retorna a soma de valores na lista

Sintaxe

(list).sum()

retorna: o índice do valor máximo da lista.

Exemplos

[1,2,3].argmax()

Retorna o número inteiro 2.

base64.decode

Decodifica a sequência base64-encoded para bytes. Essa função retorna um erro se a entrada da cadeia não for base64-encoded.

Sintaxe

base64.decode(base64_encoded_string(string))

retorna: a sequência decodificada base64-encoded em formato de byte.

Exemplos

base64.decode('aGVsbG8=')

Retorna 'hello' em bytes.

base64.encode

Codifica bytes para uma sequência base64-encoded.

Sintaxe

base64.encode(bytes_to_encode (bytes))

retorna: a sequência base64-encoded codificada do valor do byte original.

Exemplos

base64.decode(b'hello')

Retorna 'aGVsbG8=' em bytes.

charAt

Retorna o caractere na posição determinada. Se a posição for negativa ou maior que o comprimento da cadeia, a função produz um erro.

Sintaxe

(string).charAt(index (int))

retorna: o caractere da posição especificada no formato de número inteiro.

Exemplos

'hello'.charAt(4)

Retorna o caractere 'o'.

indexOf

Retorna o índice inteiro da primeira ocorrência da sequência de procura. Se a sequência de procura não for localizada a função retorna -1.

Sintaxe

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

retorna: o índice da primeira ocorrência de caractere após o deslocamento.

Exemplos

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

Retorna o número inteiro 7.

lowerAscii

Retorna uma nova sequência com caracteres ASCII virados para minúsculas.

Sintaxe

(string).lowerAscii()

retorna: a nova sequência em minúsculas.

Exemplos

'TacoCat'.lowerAscii()

Retorna a sequência 'TACOCAT'.

substituir

Retorna uma nova sequência com base no destino, que substitui as ocorrências de uma sequência de procura com uma sequência de substituição se estiver presente. A função aceita um limite opcional sobre o número de substituições de subsequências a serem feitas.

Sintaxe

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

retorna: a nova sequência com ocorrências de uma sequência de procura substituída.

Exemplos

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

Retorna a sequência 'wello wello'.

split

Retorna uma lista de sequências que são divididas da entrada pelo separador. A função aceita um argumento opcional que especifica um limite no número de subsequências produzidas pela divisão.

Sintaxe

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

retorna: a sequência de divisão como uma lista de sequências.

Exemplos

'hello hello hello'.split(' ')

Retorna a lista string ['hello ',' hello ',' hello '].

subsequência

Retorna a subsequência determinada um intervalo numérico correspondente às posições de caracteres. Opcionalmente, você pode omitir o intervalo final para uma subsequência de uma posição de caractere até o final de uma sequência.

Sintaxe

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

retorna: a subsequência no índice especificado da sequência.

Exemplos

'tacocat'.substring(4)

Retorna a sequência 'cat'.

trim

Retorna uma nova sequência, que remove o espaço em branco inicial e final na sequência de destino. A função trim usa a definição Unicode de espaço em branco, que não inclui espaços de largura zero.

Sintaxe

(string).trim()

retorna: a nova cadeia com espaços em branco removidos.

Exemplos

'  \ttrim\n    '.trim()

Retorna a sequência 'trim'.

upperAscii

Retorna uma nova sequência em que todos os caracteres ASCII são de transformados em letras maiúsculas.

Sintaxe

(string).upperAscii()

retorna: a nova sequência com todos os caracteres transformada para letras maiúsculas.

Exemplos

'TacoCat'.upperAscii()

Retorna a sequência 'TACOCAT'.

tamanho

Retorna o comprimento da sequência, bytes, lista ou mapa.

Sintaxe

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

retorna: o comprimento da sequência, bytes, lista ou mapa.

Exemplos

'hello'.size() 

Retorna o número inteiro 5.

'hello'.size() 

Retorna o número inteiro 5.

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

Retorna o número inteiro 3.

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

Retorna o número inteiro 1.

contém

Testa se o operando de sequência contém a subsequência.

Sintaxe

(string).contains(substring (string))

retorna: um valor booleano de se a subsequência existe no operando sequência

Exemplos

'hello'.contains('ll')

Retorna true.

endsWith

Testa se o operando sequência termina com o sufixo especificado.

Sintaxe

(string).endsWith(suffix (string))

retorna: um valor booleano de se a sequência termina com sufixo especificado no operando sequência.

Exemplos

'hello'.endsWith('llo')

Retorna true.

startsWith

Testa se o operando sequência começa com o argumento prefixo.

Sintaxe

(string).startsWith(prefix (string))

retorna: um valor booleano de se a sequência inicia com prefixo especificado no operando sequência.

Exemplos

'hello'.startsWith('he')

Retorna true.

corresponde

Testa se o operando sequência corresponde a expressão regular.

Sintaxe

(string).matches(prefix (string))

retorna: um valor booleano de se a sequência corresponde à expressão regular especificada.

Exemplos

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

Retorna true.

getDate

Obtenha o dia do mês a partir da data com fuso horário (Hora Universal Coordenada padrão), indexação baseada em um.

Sintaxe

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

retorna: o dia do mês com indexação baseada em um.

Exemplos

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

Retorna 24.

getDayOfMonth

Obter o dia do mês a partir da data com fuso horário (Hora Universal Coordenada padrão), indexação baseada em zero.

Sintaxe

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

retorna: o dia do mês com indexação baseada em zero.

Exemplos

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

Retorna 23.

getDayOfWeek

Obter dia da semana a partir da data com fuso horário (Hora Universal Coordenada padrão), indexação baseada em zero, zero para domingo.

Sintaxe

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

retorna: o dia da semana com indexação baseada em zero.

Exemplos

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

Retorna 5.

getDayOfYear

Obter o dia do ano a partir da data com fuso horário (Hora Universal Coordenada padrão), indexação baseada em zero.

Sintaxe

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

retorna: o dia do ano com indexação baseada em zero.

Exemplos

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

Retorna 205.

getFullYear

Obter o ano a partir da data com fuso horário (Hora Universal Coordenada padrão).

Sintaxe

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

retorna: o ano a partir da data.

Exemplos

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

Retorna 2020.

getMonth

Obter o mês a partir da data com fuso horário, 0-11.

Sintaxe

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

retorna: o mês a partir da data.

Exemplos

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

Retorna 6.

getHours

Obter horas a partir da data com fuso horário, 0-23.

Sintaxe

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

retorna: a hora a partir da data.

Exemplos

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

Retorna 9.

getMinutes

Obter minutos a partir da data com fuso horário, 0-59.

Sintaxe

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

retorna: o minuto a partir da data.

Exemplos

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

Retorna 7.

getSeconds

Obter segundos a partir da data com fuso horário, 0-59.

Sintaxe

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

retorna: o segundo a partir da data.

Exemplos

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

Retorna 29.

getMilliseconds

Obter milissegundos da data com fuso horário, 0-999.

Sintaxe

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

retorna: o milissegundo a partir da data.

Exemplos

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

Retorna 21.

Acesso a objetos globais avançados

Obtenha saídas de nó, variáveis de usuário, e parâmetros de pipeline usando o código Pipelines a seguir

Obter variável de usuário

Obtém o valor mais atualizado de uma variável de usuário..

Sintaxe

vars.<var name>

Exemplos

Exemplo Saída
vars.my_user_var Obtém o valor da variável de usuário my_user_var

Obter parâmetros

Obtém os parâmetros de fluxo.

Sintaxe

params.<param name>

Exemplos

Exemplo Saída
params.a Obtém o valor do parâmetro a

Obter conjuntos de parâmetros

Obtém os conjuntos de parâmetros de fluxo

Sintaxe

param_set.<param_set_name>.<param_name>

Exemplos

Exemplo Saída
param_set.ps.a Obtém o valor do parâmetro a de um conjunto de parâmetros ps
param_sets.config Obtém os valores de configuração de pipeline
param_sets.config.deadline Obtém um objeto de data do conjunto de parâmetros de configurações
param_sets.ps["$PARAM"] Obtém o valor do parâmetro $PARAM de um conjunto de parâmetros ps

Obter resultados da tarefa.

Obtenha a saída resultante de uma tarefa de pipeline e outras métricas de uma tarefa de pipeline após concluir sua execução.

Sintaxe

tasks.<node id>.<output name>

Exemplos

Exemplo Saída
tasks.run_datastage_job Obtém o dicionário de resultados da saída de tarefa..
tasks.run_datastage_job.results.score Obtém o valor score de saída de tarefa.
tasks.run_datastage_job.results.timestamp Obtém o registro de data e hora final da execução da tarefa
tasks.run_datastage_job.results.error Obtém o número de erros da execução da tarefa..
tasks.loop_task.loop.counter Obtém o contador iterativo do loop atual da execução da tarefa..
tasks.loop_task.loop.item Obtém o item iterativo de loop atual da execução da tarefa..
tasks.run_datastage_job.results.status Obtém o status de sucesso ou falha da execução da tarefa
tasks.run_datastage_job.results.status_message Obtém a mensagem de status da execução da tarefa..
tasks.run_datastage_job.results.job_name Obtém o nome da tarefa
tasks.run_datastage_job.results.job Obtém o caminho de tarefa do Cloud Pak for Data
tasks.run_datastage_job.results.job_run Obtém o caminho de execução do Cloud Pak for Data da execução da tarefa

Obter objetos de contexto de pipeline

Obtém valores que são avaliados no contexto de um pipeline que é executado em um escopo (projeto, espaço, catálogo).

Exemplos

Exemplo Saída
ctx.scope.id Obtém ID do escopo
ctx.scope.type Retorna "project", "space" ou "catalog"
ctx.scope.name Obtém nome do escopo
ctx.pipeline.id Obtém o ID do pipeline.
ctx.pipeline.name Obtém nome do pipeline
ctx.job.id Obtém ID da tarefa
ctx.run_datastage_job.id Obtém ID de execução da tarefa
ctx.run_datastage_job.started_at Obtém o horário de início da tarefa
ctx.user.id Obtém o ID do usuário

Obter status do erro

Se o manipulador de exceções for acionado, um objeto de erro será criado e se tornará acessível apenas dentro do manipulador de exceções

Exemplos

Exemplo Saída
error.status Obtém o status de sucesso ou falha da execução da tarefa, geralmente com falha
error.status_message Obtém a mensagem de status de erro..
error.job Obtém o caminho de tarefa do Cloud Pak for Data
error.run_datastage_job Obtém o caminho de execução da tarefa Cloud Pak for Data (não disponível em watsonx)