Types d’opération RTE inclus dans l’application Éléments communs d'intégration pour CMDB

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 9 minutes de lecture
  • Les types d’opération RTE (Robust Transform Engine) sont des méthodes d’opération courantes à utiliser dans ETL sans avoir à écrire vos propres transformations de données complexes.

    Les types d’opération 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 et les joint 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)
    Tableau 1. Exemple
    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 Conversion en booléen d’une opération 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 vraie lorsque l’entrée est vrai ou 1, sinon la sortie est faux. (sans respect de la casse)

    Tableau 2. Exemple
    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 est l’horodatage de la date au format de date spécifié. Tente de convertir directement à l’aide de GlideDateTime si la date_format est incorrecte. Renvoie une valeur vide si l’analyse est impossible.

    Tableau 3. Exemple
    Entrée Résultat
    « 20/09/2018 11:21:00 AM EST » avec date_format « aaaa/MM/jj hh :mm :ss a z » "2018-09-20 16:21:00"
    « 20/09/2018 01:21:00 PM EST » avec date_format « aaaa/MM/jj hh :mm :ss a z » « 2018-09-20 18:21:00 »
    « 09/20/18 » avec date_format « aaaa/MM/jj hh :mm :ss a z » ""0018-09-20 00:00:0"

    Convertir en numérique

    Convertit la valeur entrante en nombre.

    Détails
    Table Opération de conversion en numérique 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.

    Tableau 4. Exemple
    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 de champ source copiée.

    Champ supplémentaire overwrite_existing_value (facultatif, booléen) : si la valeur est vrai, les valeurs des champs cibles sont remplacées. Sinon, aucune valeur non vide n’est écrasé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
    • decimal_places (facultatif, nombre) : force la sortie à avoir un nombre spécifié de décimales.
    • remainder_target_field (facultatif, référence au champ) : défini sur le reste tronqué du champ source, après suppression de la première valeur numérique.
    Tableau 5. Exemple
    Entrée Résultat
    100 Mo 100
    100.123 Mo 100.123
    100.123 Mo 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 pour la recherche.

    Champ de sortie target_sys_rte_eb_fields

    Données résultantes basées sur l’opération de recherche.

    Champs supplémentaires
    • target_table
    • glide_matching_fields (chaîne) : liste séparée par des virgules des noms de colonnes dans la table cible. Pour chaque champ d’entrée dans source_sys_rte_eb_fields, il doit y avoir un nombre égal de valeurs dans glide_matching_fields.
    • glide_target_fields (chaîne) : liste séparée par des virgules des noms de colonnes dans la table cible. Pour chaque champ cible dans target_sys_rte_eb_fields, il doit y avoir un nombre égal de valeurs dans glide_target_fields.
    Tableau 6. Exemple
    Entrée Résultat
    • Champ d’entrée 1 : 100 South Charles Street, Baltimore
    • Champ d’entrée 2 : MD
    • Table cible : Emplacement (cmn_location)
    • Champs de correspondance Glide : rue, état
    • Champs cibles Glide : sys_id
    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
    • script (script)
    • use_unique_input_sets(Booléen) : Si vrai, seules les valeurs d’entrée uniques sont incluses dans le lot de données pour le traitement IRE. Sinon, toutes les valeurs de champ de l’objet d’entrée sont incluses.

    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 :

    Tableau 7. Exemples
    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 false, chacune des trois valeurs est traitée individuellement (ordinateur + Windows XP,ordinateur + Linux et ordinateur + Windows XP).

    Exemple de script :
    (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)
    Exemple de 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
    • match_regex (chaîne, expression régulière)
    • replacement_regex (chaîne)
    Tableau 8. Exemple
    Entrée Résultat
    « String&With(Special)$Characters » avec match_regex="[^0-9a-zA-Z]+ » et replacement_regex= » » « chaîne avec des 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
    • match_string (chaîne)
    • replacement_string (chaîne)
    Tableau 9. Exemple
    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 d’entrée au nombre entier le plus proche. Les non-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
    • match_string (chaîne)
    • replacement_string (chaîne)
    Tableau 10. Exemple
    Entrée Résultat
    « 1,5 » « 2 »
    « 1,4 » « 1 »
    « Je suis une corde » ""

    Opération du script

    Exécute un script avec une entrée et définit le target_sys_rte_eb_field champ comme sortie pour ce script.
    Remarque :
    Le type d’opération de script a été largement remplacé par l’opération de script multi-entrée et est inclus pour la rétrocompatibilité avec les configurations existantes.
    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
    • script(script)
    • use_unique_input_sets (Booléen) : Si vrai, seules les valeurs d’entrée uniques sont incluses dans le lot de données pour le traitement IRE. Sinon, toutes les valeurs de champ de l’objet d’entrée sont incluses. Pour obtenir un exemple et pour plus de détails, consultez la transformation de script d’entrée multiple.
    Le champ source est inclus dans la variable « batch » tout comme le champ JavaScript « input ».
    (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); 
    Exemple :
    /* 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 target_sys_rte_eb_field valeur du 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
    • set_value (chaîne)
    • overwrite_existing_value (facultatif, booléen) : si la valeur est vrai, la valeur actuelle du champ cible est remplacée. Sinon, une valeur non vide n’est pas remplacée.

    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 une valeur maximale ou minimale en fonction de la min_max valeur.

    Champs supplémentaires
    • data_type (liste de choix avec les valeurs STRING, NUMERIC et DATE)
    • min_max (liste de choix avec les valeurs MIN et MAX)
    Tableau 11. Exemples
    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)
    Tableau 12. Exemple
    Entrée Résultat
    "valeur1||valeur2||value3 », splitting_string :"||» avec target_sys_rte_eb_fields {target1,target2,target3} target1 : value1, target2 : value2, target3 : value3
    "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 champ. Cette transformation est équivalente à la méthode trim() de la target_sys_rte_eb_field chaîne Java.

    Détails
    Table Opération de transformation 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 est la valeur de chaîne d’entrée, mais sans aucun espace de début et de fin.

    Tableau 13. Exemple
    Entrée Résultat
    « valeur 1 » « valeur 1 »

    Majuscule

    Convertit tous les caractères de la source_sys_rte_eb_field valeur entrée en majuscules target_sys_rte_eb_field et affecte le résultat au 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 est une valeur de chaîne en majuscules.

    Tableau 14. Exemple
    Entrée Résultat
    « valeur 1 » « VALEUR1 »

    Découpage des majuscules

    Combine 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 est une valeur de chaîne en majuscules sans aucun espace au début et à la fin.

    Tableau 15. Exemple
    Entrée Résultat
    « valeur1 » « VALEUR1 »