Tipos de operação de RTE incluídos no app Componentes comuns de integração para CMDB
Os tipos de operação do Mecanismo de Transformação Robusta (RTE) são métodos de operação comuns para uso no ETL sem que você precise gravar suas próprias transformações de dados complexas.
Os tipos de operação a seguir estão disponíveis no app Componentes comuns de integração para CMDB.
Concatenação
Combina os valores dos campos de entrada em uma só cadeia de caracteres, juntando-os no campo opcional joining_string.
| Detalhes | |
|---|---|
| Tabela | Operação de concatenação de entidade de RTE [sys_rte_eb_concat_operation] |
| Campo de entrada | source_sys_rte_eb_fields Entrada é um conjunto de campos e constantes. |
| Campo de saída | target_sys_rte_eb_field A saída é o valor combinado dos campos fornecidos como uma única cadeia de caracteres. |
| Campos adicionais | joining_string (opcional) |
| Entrada | joining_string | Resultado |
|---|---|---|
| "input_1", "input_2", "input_3" | ", " | "input_1, input_2, input_3" |
Converter para booliano
Converte o valor de entrada em um Booliano.
| Detalhes | |
|---|---|
| Tabela | Conversão da entidade de RTE em operação booliana [sys_rte_eb_to_boolean_operation] |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor de cadeia de caracteres. |
| Campo de saída | target_sys_rte_eb_field A saída é |
| Entrada | Resultado |
|---|---|
| input_1 | falso |
| verdadeiro | verdadeiro |
| 1 | verdadeiro |
| 0 | falso |
| 11 | falso |
Converter em Data
Tenta converter o valor de entrada em um valor GlideDateTime aplicando o date_format ao valor de entrada.
| Detalhes | |
|---|---|
| Tabela | Conversão da entidade de RTE em operação de data [sys_rte_eb_to_date_operation] |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor de carimbo de data/hora de dados com formato de data. |
| Campo de saída | target_sys_rte_eb_field A saída é o carimbo de data/hora no formato de data especificado. Tenta converter diretamente usando GlideDateTime se date_format estiver incorreto. Retorna um valor vazio se não for possível analisar. |
| Entrada | Resultado |
|---|---|
| "20/09/2018 11:21:00 EST" com date_format "aaaa/MM/dd hh:mm:ss az" | "2018-09-20 16:21:00" |
| "20/09/2018 13:21:00 EST" com date_format "aaaa/MM/dd hh:mm:ss az" | "2018-09-20 18:21:00" |
| "20/09/18" com date_format "aaaa/MM/dd hh:mm:ss az" | ""0018-09-20 00:00:0" |
Converter em Numérico
Converte o valor de entrada em um número.
| Detalhes | |
|---|---|
| Tabela | Conversão da entidade de RTE em operação numérica [sys_rte_eb_to_numeric_operation] |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor. |
| Campo de saída | target_sys_rte_eb_field A saída é um valor numérico. Se o valor de entrada não for numérico, a saída será vazia. |
| Entrada | Resultado |
|---|---|
| input_1 | nulo |
| 1.23 | 1.23 |
| 1.00 | 1 |
| dois | nulo |
Copiar
Copia o valor do campo de origem para todos os campos de destino.
| Detalhes | |
|---|---|
| Tabela | Operação de cópia de entidade de RTE [sys_rte_eb_copy_operation] |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor. |
| Campo de saída | target_sys_rte_eb_fields A saída é o valor do campo de origem copiado. |
| Campo adicional | overwrite_existing_value (opcional, Booliano): se verdadeiro, os valores dos campos de destino serão substituídos. Caso contrário, qualquer valor não vazio não será substituído. |
Extrair Primeiro Numérico
Define o campo de destino como o primeiro valor numérico encontrado no campo de origem.
| Detalhes | |
|---|---|
| Tabela | Operação numérica de extração de RTE [sys_rte_eb_extract_numeric_operation] |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor. |
| Campo de saída | target_sys_rte_eb_field A saída é o valor numérico encontrado na entrada. |
| Campos adicionais |
|
| Entrada | Resultado |
|---|---|
| 100 mb | 100 |
| 100.123 mb | 100.123 |
| 100.123 mb com decimal_places=2 | 100.12 |
| 100 MB com decimal_places=2 | 100,00 |
| 100 mb com remainder_target_field | mb |
Operação de pesquisa de Glide
Executa uma pesquisa no banco de dados na tabela de destino especificada no campo target_table.
| Detalhes | |
|---|---|
| Tabela | Operação de pesquisa de Glide de RTE [sys_rte_eb_glide_lookup_operation] |
| Campo de entrada | source_sys_rte_eb_fields A tabela do banco de dados para pesquisa. |
| Campo de saída | target_sys_rte_eb_fields Os dados resultantes são baseados na operação de pesquisa. |
| Campos adicionais |
|
| Entrada | Resultado |
|---|---|
|
Campo de saída 1: 25ab9c4d0a0a0bb300f7dabdc0ca7c1c |
Script de entradas múltiplas
Executa um script com várias entradas, definindo o campo target_sys_rte_eb_field como a saída para esse script.
| Detalhes | |
|---|---|
| Tabela | Operação de script de entradas múltiplas da entidade de RTE [sys_rte_eb_multi_in_script_operation] |
| Campo de entrada | source_sys_rte_eb_fields A entrada é um script. |
| Campo de saída | target_sys_rte_eb_field A saída é o resultado do script de entrada. |
| Campos adicionais |
|
Exemplo para usar use_unique_input_sets, com uma função de script que usa record_type e operating_system como entrada e retorna record_with_os:
| Registro | record_type | operating_system |
|---|---|---|
| 1 | computador | Windows XP |
| 2 | computador | Linux |
| 3 | computador | Windows XP |
Se use_unique_inputs_sets estiver definido como verdadeiro, o script processará apenas dois valores (computador + Windows XP e computador + Linux). Se use_unique_inputs_sets estiver definido como falso, cada um dos três valores será processado individualmente (computador + Windows XP, computador + Linux e computador + Windows XP).
(function(batch, output) {
for (var i = 0; i < batch.length; i++) {
// batch[i] is the unique set of inputs/individual record
// batch[i].<field> gives access to the field value
var in0 = gs.nil(batch[i].record_type) ? '' : batch[i].record_type;
var in1 = gs.nil(batch[i].operating_system) ? '' : batch[i].operating_system;
// output[i] is the output for the specific combination of inputs/individual record
output[i] = in0 + "_" + in1;
}
}
})(batch, output);Script com várias entradas/saídas
Executa um script com várias entradas, definindo os campos de destino especificados no campo target_sys_rte_eb_fields como as saídas múltiplas para esse script.
| Detalhes | |
|---|---|
| Tabela | Operação de script de várias entradas/saídas da entidade de RTE [sys_rte_eb_multiple_input_output_script_operation] |
| Campo de entrada | source_sys_rte_eb_fields A entrada é um script. |
| Campo de saída | target_sys_rte_eb_fields A saída é o resultado do script de entrada. |
| Campos adicionais | script (script) |
(function(batch, output) {
for (var i = 0; i < batch.length; i++) {
var userId = (batch[i].user_id);
var userIdParts = userId.split(".");
output[i].first_name = userIdParts[0];
output[i].last_name = userIdParts[1];
}
}
})(batch, output);Substituição de regex
Substitui cada substring da cadeia de caracteres de entrada que corresponde ao padrão de expressão regular especificado no campo match_regex com a cadeia de caracteres especificada no campo replacement_regex .
| Detalhes | |
|---|---|
| Tabela | Operação de substituição da expressão regular da entidade de RTE [sys_rte_eb_regex_replace_operation] |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor de cadeia de caracteres. |
| Campo de saída | target_sys_rte_eb_field A saída é a cadeia de caracteres substituída. |
| Campos adicionais |
|
| Entrada | Resultado |
|---|---|
| "String&With(Special)$Characters" com match_regex="[^0-9a-zA-Z]+" e replacement_regex=" " | "Cadeia de caracteres com caracteres especiais" |
Substituir
Substitui cada substring da cadeia de caracteres de entrada que corresponde à cadeia de caracteres especificada no campo match_string com a cadeia de caracteres especificada no campo replacement_string.
| Detalhes | |
|---|---|
| Tabela | Operação de substituição da entidade de RTE [sys_rte_eb_replace_operation |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor de cadeia de caracteres. |
| Campo de saída | target_sys_rte_eb_field A saída é a cadeia de caracteres substituída. |
| Campos adicionais |
|
| Entrada | Resultado |
|---|---|
| "Cadeia de caracteres original" com "match_string" = "Original" e replacement_string= "Substituição" | "Cadeia de caracteres de Substituição" |
Arredondar Numérico
Arredonda o valor numérico de entrada para o número inteiro mais próximo. Itens não numéricos são truncados.
| Detalhes | |
|---|---|
| Tabela | Operação numérica da rodada da entidade de RTE [sys_rte_eb_redonda_numeric_operation] |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor numérico. |
| Campo de saída | target_sys_rte_eb_field A saída é um número inteiro. |
| Campos adicionais |
|
| Entrada | Resultado |
|---|---|
| "1,5" | "2" |
| "1,4" | "1" |
| "Sou uma cadeia de caracteres" | "" |
Operação de script
| Detalhes | |
|---|---|
| Tabela | Operação de script da entidade de RTE [sys_rte_eb_script_operation] |
| Campo de entrada | source_sys_rte_eb_field A entrada é um script. |
| Campo de saída | target_sys_rte_eb_field A saída é o resultado do script de entrada. |
| Campos adicionais |
|
(function(batch, output) {
for (var i = 0; i < batch.length; i++) {
// batch[i] is the unique set of inputs/individual record
// batch[i].input gives access to the field value
var in0 = gs.nil(batch[i].input) ? '' : batch[i].input;
// output[i] is the output for the specific combination of inputs/individual record
output[i] = in0 + " modified by script";
}
}
})(batch, output); /* Example Script
(function(batch, output) {
for (var i = 0; i < batch.length; i++) {
//step1: access the input variables
var a = batch[i].input; //Value of the source field.
//step2: Your script/code goes here.
var b = a + 1;
//step3: set the output for each elements
output[i] = b;
}
})(batch, output);
*/ Definir
Define o valor do campo target_sys_rte_eb_field para a cadeia de caracteres fornecida no campo set_value.
| Detalhes | |
|---|---|
| Tabela | Operação de definição da entidade de RTE [sys_rte_eb_set_operation] |
| Campo de saída | target_sys_rte_eb_field A saída é o valor associado ao campo set_value. |
| Campos adicionais |
|
Definir Mínimo/Máximo
Define o campo de destino como o máximo ou mínimo dos valores de todos os campos de entrada.
| Detalhes | |
|---|---|
| Tabela | Operação mín./máx. da entidade de RTE [sys_rte_eb_min_max_operation] |
| Campo de entrada | source_sys_rte_eb_fields A entrada é um conjunto de valores. |
| Campo de saída | target_sys_rte_eb_field A saída é o valor máximo ou mínimo com base no valor min_max. |
| Campos adicionais |
|
| Entrada | Saída |
|---|---|
| "2", "-1", "0" | 2 |
| "a", "b" | c |
| "2", "-1", "0" | -1 |
| "a", "b" | a |
Dividir
Divide a cadeia de caracteres incluída no valor de entrada source_sys_rte_eb_field no separador especificado no campo splitting_string e atribui a matriz de cadeias de caracteres resultante ao campo target_sys_rte_eb_field, em ordem.
| Detalhes | |
|---|---|
| Tabela | Operação de divisão da entidade de RTE [sys_rte_eb_split_operation] |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor de cadeia de caracteres. |
| Campo de saída | target_sys_rte_eb_fields A saída é uma lista de substrings. |
| Campos adicionais | splitting_string (cadeia de caracteres) |
| Entrada | Resultado |
|---|---|
| "value1||value2||value3", splitting_string:"||" com target_sys_rte_eb_fields {target1,target2,target3} | target1 : value1, target2 : value2, target3 : value3 |
| "value1||value2||value3", splitting_string:"||" com target_sys_rte_eb_fields {target1} | target1 : value1 |
| "value1", splitting_string:"||" com target_sys_rte_eb_fields {target1,target2,target3} | target1 : value1, target2 : <null>, target3 : <null> |
Cortar
Remove todos os espaços em branco no início e no final da cadeia de caracteres incluída no valor de entrada source_sys_rte_eb_field e atribui o resultado ao campo target_sys_rte_eb_field. Esta transformação é equivalente ao Método Java String trim().
| Detalhes | |
|---|---|
| Tabela | Operação de corte da entidade de RTE [sys_rte_eb_trim_operation |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor de cadeia de caracteres. |
| Campo de saída | target_sys_rte_eb_field A saída é o valor da cadeia de caracteres de entrada sem espaços iniciais e finais. |
| Entrada | Resultado |
|---|---|
| " value 1 " | "value 1" |
Maiúsculo
Muda todos os caracteres do valor de entrada source_sys_rte_eb_field para letras maiúsculas e atribui o resultado ao campo target_sys_rte_eb_field.
| Detalhes | |
|---|---|
| Tabela | Operação de maiúsculas da entidade de RTE [sys_rte_eb_upper_case_operation] |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor de cadeia de caracteres. |
| Campo de saída | target_sys_rte_eb_field A saída é o valor da cadeia de caracteres em maiúsculas. |
| Entrada | Resultado |
|---|---|
| "value1" | "VALUE1" |
Corte e maiúsculas
Combina a transformação maiúscula e a de corte.
| Detalhes | |
|---|---|
| Tabela | Operação de corte e maiúsculas da entidade de RTE [sys_rte_eb_upper_case_trim_operation] |
| Campo de entrada | source_sys_rte_eb_field A entrada é um valor de cadeia de caracteres. |
| Campo de saída | target_sys_rte_eb_field A saída é o valor da cadeia de caracteres em maiúsculas sem espaços em branco no início e no final. |
| Entrada | Resultado |
|---|---|
| " value1 " | "VALUE1" |