Types d’opérations RTE inclus dans l’application Éléments communs d'intégration pour CMDB
Les types d’opération RTE (Robust Transform Engine) sont des méthodes d’exploitation courantes à utiliser dans ETL sans avoir à écrire vos propres transformations de données complexes.
Les types d’opérations suivants sont disponibles dans l’application Éléments communs d'intégration pour CMDB .
Concaténation
Combine les valeurs des champs d’entrée en une seule chaîne, en les joignant dans le champ facultatif joining_string .
| Détails | |
|---|---|
| Table | Opération de concaténation de l’entité RTE [sys_rte_eb_concat_operation] |
| Champ d'entrée | source_sys_rte_eb_fields L’entrée est un ensemble de champs et de constantes. |
| Champ de sortie | target_sys_rte_eb_field La sortie est la valeur combinée des champs fournis sous la forme d’une seule chaîne. |
| Champs supplémentaires | joining_string (Facultatif) |
| Entrée | joining_string | Résultat |
|---|---|---|
| « input_1 », « input_2 », « input_3 » | ", " | « input_1, input_2, input_3 » |
Convertir en booléen
Convertit la valeur entrante en booléen.
| Détails | |
|---|---|
| Table | Opération de conversion en booléen de l’entité RTE [sys_rte_eb_to_boolean_operation] |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur de chaîne. |
| Champ de sortie | target_sys_rte_eb_field La sortie est |
| Entrée | Résultat |
|---|---|
| input_1 | faux |
| VRAI | VRAI |
| 1 | VRAI |
| 0 | faux |
| 11 | faux |
Convertir en date
Tente de convertir la valeur entrante en valeur GlideDateTime en appliquant la date_format à la valeur entrante.
| Détails | |
|---|---|
| Table | Conversion en date d’une opération de l’entité RTE [sys_rte_eb_to_date_operation] |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur d’horodatage de données au format de date. |
| Champ de sortie | target_sys_rte_eb_field La sortie correspond à l’horodatage au format de date spécifié. Tente une conversion directe à l’aide de GlideDateTime si la date_format est incorrecte. Renvoie une valeur vide en cas d’impossibilité d’analyse. |
| Entrée | Résultat |
|---|---|
| « 2018/09/20 11:21:00 AM EST » avec date_format « yyyy/MM/dd hh :mm :ss a z » | "2018-09-20 16:21:00" |
| « 2018/09/20 01:21:00 PM EST » avec date_format « yyyy/MM/dd hh :mm :ss a z » | « 20/09/2018 18:21:00 » |
| « 09/20/18 » avec date_format « yyyy/MM/dd hh :mm :ss a z » | ""0018-09-20 00:00:0" |
Convertir en numérique
Convertit la valeur entrante en nombre.
| Détails | |
|---|---|
| Table | Conversion en numérique d’une opération de l’entité RTE [sys_rte_eb_to_numeric_operation] |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur. |
| Champ de sortie | target_sys_rte_eb_field La sortie est une valeur numérique. Si la valeur d’entrée n’est pas numérique, la sortie est vide. |
| Entrée | Résultat |
|---|---|
| input_1 | null |
| 1.23 | 1.23 |
| 1.00 | 1 |
| deux | null |
Copier
Copie la valeur du champ source dans tous les champs cibles.
| Détails | |
|---|---|
| Table | Opération de copie de l’entité RTE [sys_rte_eb_copy_operation] |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur. |
| Champ de sortie | target_sys_rte_eb_fields La sortie est la valeur du champ source copiée. |
| Champ supplémentaire | overwrite_existing_value (facultatif, booléen) : si vrai, les valeurs des champs cibles sont remplacées. Dans le cas contraire, aucune valeur non vide n’est remplacée. |
Extraire le premier numérique
Définit le champ cible comme première valeur numérique trouvée dans le champ source.
| Détails | |
|---|---|
| Table | Opération numérique d’extraction RTE [sys_rte_eb_extract_numeric_operation] |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur. |
| Champ de sortie | target_sys_rte_eb_field La sortie est la valeur numérique trouvée dans l’entrée. |
| Champs supplémentaires |
|
| Entrée | Résultat |
|---|---|
| 100 Mo | 100 |
| 100.123 mb | 100.123 |
| 100.123 MB avec decimal_places=2 | 100.12 |
| 100 Mo avec decimal_places=2 | 100.00 |
| 100 Mo avec remainder_target_field | Mo |
Opération de recherche Glide
Effectue une recherche dans la base de données sur la table cible spécifiée dans le target_table champ.
| Détails | |
|---|---|
| Table | Opération de recherche Glide RTE [sys_rte_eb_glide_lookup_operation] |
| Champ d'entrée | source_sys_rte_eb_fields Table de base de données à rechercher. |
| Champ de sortie | target_sys_rte_eb_fields Données qui en résultent en fonction de l’opération de recherche. |
| Champs supplémentaires |
|
| Entrée | Résultat |
|---|---|
|
Champ de sortie 1 : 25ab9c4d0a0a0bb300f7dabdc0ca7c1c |
Script d’entrée multiple
Exécute un script avec plusieurs entrées définissant le target_sys_rte_eb_field champ comme sortie pour ce script.
| Détails | |
|---|---|
| Table | Opération de script d’entrée multiple RTE [sys_rte_eb_multi_in_script_operation] |
| Champ d'entrée | source_sys_rte_eb_fields L’entrée est un script. |
| Champ de sortie | target_sys_rte_eb_field La sortie est le résultat du script d’entrée. |
| Champs supplémentaires |
|
Exemple d’utilisation use_unique_input_setsde , avec une fonction de script qui prend record_type et operating_system comme entrée et renvoie record_with_os :
| Enregistrement | record_type | operating_system |
|---|---|---|
| 1 | ordinateur | Windows XP |
| 2 | ordinateur | Linux |
| 3 | ordinateur | Windows XP |
Si use_unique_inputs_sets est défini sur true, le script ne traite que deux valeurs (ordinateur + Windows XP et ordinateur + Linux). Si use_unique_inputs_sets est défini sur faux, chacune des trois valeurs est traitée individuellement (ordinateur + Windows XP,ordinateur + Linux et ordinateur + 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 d'entrée/sortie multiple
Exécute un script avec plusieurs entrées définissant les champs cibles spécifiés dans le target_sys_rte_eb_fields champ comme sorties multiples pour ce script.
| Détails | |
|---|---|
| Table | Opération de script d’entrée/sortie multiple RTE [sys_rte_eb_multiple_input_output_script_operation] |
| Champ d'entrée | source_sys_rte_eb_fields L’entrée est un script. |
| Champ de sortie | target_sys_rte_eb_fields La sortie est le résultat du script d’entrée. |
| Champs supplémentaires | 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);Remplacement Regex
Remplace chaque sous-chaîne de la chaîne d’entrée qui correspond au modèle d’expression régulière spécifié dans le match_regex champ par la chaîne spécifiée dans le replacement_regex champ.
| Détails | |
|---|---|
| Table | Opération de remplacement d’expression régulière de l’entité RTE [sys_rte_eb_regex_replace_operation] |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur de chaîne. |
| Champ de sortie | target_sys_rte_eb_field La sortie est la chaîne remplacée. |
| Champs supplémentaires |
|
| Entrée | Résultat |
|---|---|
| « String&With(Special)$Characters » avec match_regex="[^0-9a-zA-Z]+ » et replacement_regex= » » | « Chaîne avec caractères spéciaux » |
Remplacer
Remplace chaque sous-chaîne de la chaîne d’entrée qui correspond à la chaîne spécifiée dans le match_string champ par la chaîne spécifiée dans le replacement_string champ.
| Détails | |
|---|---|
| Table | Opération de remplacement de l’entité RTE [sys_rte_eb_replace_operation |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur de chaîne. |
| Champ de sortie | target_sys_rte_eb_field La sortie est la chaîne remplacée. |
| Champs supplémentaires |
|
| Entrée | Résultat |
|---|---|
| « Chaîne d’origine » avec match_string = « Original » et replacement_string= « Remplacement » | « Chaîne de remplacement » |
Numérique arrondi
Arrondit la valeur numérique entrée au nombre entier le plus proche. Les nombres autres que les nombres sont tronqués.
| Détails | |
|---|---|
| Table | Opération numérique d’arrondi de l’entité RTE [sys_rte_eb_round_numeric_operation] |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur numérique. |
| Champ de sortie | target_sys_rte_eb_field La sortie est un nombre entier. |
| Champs supplémentaires |
|
| Entrée | Résultat |
|---|---|
| « 1,5 » | « 2 » |
| « 1.4 » | « 1 » |
| « Je suis une corde » | "" |
Opération du script
| Détails | |
|---|---|
| Table | Opération de script de l’entité RTE [sys_rte_eb_script_operation] |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est un script. |
| Champ de sortie | target_sys_rte_eb_field La sortie est le résultat du script d’entrée. |
| Champs supplémentaires |
|
(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);
*/ Poser
Définit la valeur du target_sys_rte_eb_field champ sur la chaîne fournie dans le set_value champ.
| Détails | |
|---|---|
| Table | Opération de définition de l’entité RTE [sys_rte_eb_set_operation] |
| Champ de sortie | target_sys_rte_eb_field La sortie est la valeur associée au set_value champ. |
| Champs supplémentaires |
|
Définir Min/Max
Définit le champ cible sur le maximum ou le minimum des valeurs de tous les champs d’entrée.
| Détails | |
|---|---|
| Table | Opération min./max. de l’entité RTE [sys_rte_eb_min_max_operation] |
| Champ d'entrée | source_sys_rte_eb_fields L’entrée est un ensemble de valeurs. |
| Champ de sortie | target_sys_rte_eb_field La sortie est la valeur maximale ou minimale basée sur la min_max valeur. |
| Champs supplémentaires |
|
| Entrée | Sortie |
|---|---|
| "2", "-1", "0" | 2 |
| « a », « b » | c |
| « 2 », « -1 », « 0 » | -1 |
| « a », « b » | a |
Fendre
Divise la chaîne incluse dans la valeur d’entrée source_sys_rte_eb_field au niveau du séparateur spécifié dans le splitting_string champ et affecte le tableau de chaînes obtenu au champ, dans l’ordre target_sys_rte_eb_field .
| Détails | |
|---|---|
| Table | Opération de division de l’entité RTE [sys_rte_eb_split_operation] |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur de chaîne. |
| Champ de sortie | target_sys_rte_eb_fields La sortie est une liste de sous-chaînes. |
| Champs supplémentaires | splitting_string (chaîne) |
| Entrée | Résultat |
|---|---|
| "valeur1||valeur2||value3 », splitting_string :"||" avec target_sys_rte_eb_fields {target1,target2,target3} | target1 : valeur1, cible2 : valeur2, cible3 : valeur3 |
| "valeur1||valeur2||value3 », splitting_string :"||" avec target_sys_rte_eb_fields {target1} | target1 : valeur1 |
| « value1 », splitting_string :"||" avec target_sys_rte_eb_fields {target1,target2,target3} | target1 : value1, target2 : <null>, target3 : <null> |
Couper
Supprime les espaces au début et à la fin de la chaîne incluse dans la valeur d’entrée source_sys_rte_eb_field et affecte le résultat au target_sys_rte_eb_field champ. Cette transformation est équivalente à la méthode String trim() Java.
| Détails | |
|---|---|
| Table | Opération de découpage de l’entité RTE [sys_rte_eb_trim_operation |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur de chaîne. |
| Champ de sortie | target_sys_rte_eb_field La sortie correspond à la valeur de chaîne d’entrée, mais sans espaces de début et de fin. |
| Entrée | Résultat |
|---|---|
| « valeur 1 » | « valeur 1 » |
Majuscule
Remplace tous les caractères de la source_sys_rte_eb_field valeur d’entrée en majuscules et affecte le résultat au target_sys_rte_eb_field champ.
| Détails | |
|---|---|
| Table | Opération de conversion en majuscules de l’entité RTE [sys_rte_eb_upper_case_operation] |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur de chaîne. |
| Champ de sortie | target_sys_rte_eb_field La sortie correspond à la valeur de chaîne en majuscules. |
| Entrée | Résultat |
|---|---|
| « valeur 1 » | « VALEUR1 » |
Découpage des majuscules
Combine à la fois les transformations Majuscule et Découpage.
| Détails | |
|---|---|
| Table | Opération de découpage en majuscules de l’entité RTE [sys_rte_eb_upper_case_trim_operation] |
| Champ d'entrée | source_sys_rte_eb_field L’entrée est une valeur de chaîne. |
| Champ de sortie | target_sys_rte_eb_field La sortie correspond à une valeur de chaîne en majuscules sans aucun espace au début et à la fin. |
| Entrée | Résultat |
|---|---|
| « value1 » | « VALEUR1 » |