CatalogItemVariableSetM2M : inclus dans le champ d’application

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 4 minutes de lecture
  • L’API CatalogItemVariableSetM2M fournit des méthodes qui vous permettent de créer et de modifier un jeu de variables d’éléments de catalogue de services plusieurs à plusieurs (M2M) à l’aide de scripts.

    Cette API s’exécute dans l’espace de noms sn_sc .

    CatalogItemVariableSetM2M : créer (booléen standardUpdate)

    Insère le jeu de variables M2M de l’élément de catalogue défini.

    Tableau 1. Paramètres
    Nom Type Description
    standardUpdate (Mise à jour standard) Booléen Marqueur indiquant s’il faut activer l’exécution des moteurs et du workflow.
    Valeurs valides :
    • true : activez les moteurs et le workflow.
    • false : n’activez pas les moteurs et le workflow.
    Tableau 2. Renvoie
    Type Description
    Chaîne Sys_id de l’enregistrement de variable inséré.

    Cet exemple ajoute le jeu de variables Standard Employee Questions à l’élément de catalogue de l’iPhone 6s et crée un enregistrement les liant dans la table Jeux de variables de catalogue [io_set_item].

    var cat_item_sys_id = 'bd6fa75a4f334200086eeed18110c79e'; // catalog item - iPhone 6s
    var variable_set_sys_id = 'e01cab1a4f334200086eeed18110c71f'; // variable set - Standard Employee Questions
    var app_scope = 'global'; // sys_id id in case of scoped app
    var varset = new sn_sc.CatalogItemVariableSetM2M();
    var attr = {
        'variable_set': variable_set_sys_id, // required
        'sc_cat_item': cat_item_sys_id, // required
        'sys_scope': app_scope, // optional
        'order': 10 // optional
    };
    varset.setAttributes(attr);
    var m2mRec = varset.create(true);
    gs.info('Variable set added to catalog item and M2M record created in table io_set_item with sys_id ' + m2mRec);

    Sortie :

    Variable set added to catalog item and M2M record created in table io_set_item with sys_id c5c87af187eb30103a730f2d0ebb3578

    CatalogItemVariableSetM2M : deleteRecord(Boolean standardUpdate)

    Supprime le jeu de variables de l’élément de catalogue défini M2M.

    Tableau 3. Paramètres
    Nom Type Description
    standardUpdate (Mise à jour standard) Booléen Marqueur indiquant s’il faut activer l’exécution des moteurs et du workflow.
    Valeurs valides :
    • true : activez les moteurs et le workflow.
    • false : n’activez pas les moteurs et le workflow.
    Tableau 4. Renvoie
    Type Description
    nul

    Cet exemple supprime le jeu de variables Questions standard des employés de l’élément de catalogue iPhone 6s et supprime l’enregistrement qui les lie dans la table Jeux de variables de catalogue [io_set_item].

    var vset = new GlideRecord('io_set_item');
    vset.addQuery('sc_cat_item', 'bd6fa75a4f334200086eeed18110c79e'); // catalog item - iPhone 6s
    vset.addQuery('variable_set', 'e01cab1a4f334200086eeed18110c71f'); // variable set - Standard Employee Questions
    vset.query();
    if (vset.next()) {
        var varset = new sn_sc.CatalogItemVariableSetM2M(vset.getUniqueValue()); // pass sys_id of io_set_item record
        varset.deleteRecord(true);  
    }

    CatalogItemVariableSetM2M : lecture (colonnes d’objets, booléen standardUpdate)

    Renvoie un mappage des valeurs d’attributs M2M du jeu de variables d’éléments de catalogue.

    Tableau 5. Paramètres
    Nom Type Description
    colonnes Objet Ensemble de colonnes dont vous souhaitez obtenir les valeurs.
    standardUpdate (Mise à jour standard) Booléen Marqueur indiquant s’il faut activer l’exécution des moteurs et du workflow.
    Valeurs valides :
    • true : activez les moteurs et le workflow.
    • false : n’activez pas les moteurs et le workflow.
    Tableau 6. Renvoie
    Type Description
    Objet Un objet mappant les noms de colonnes à des valeurs.

    Cet exemple lit tous les jeux de variables utilisés par l’élément de catalogue de l’iPhone 6s.

    var vset = new GlideRecord('io_set_item');
    vset.addQuery('sc_cat_item', 'bd6fa75a4f334200086eeed18110c79e'); // catalog item - iPhone 6s
    vset.query();
    while (vset.next()) {
        var varset = new sn_sc.CatalogItemVariableSetM2M(vset.getUniqueValue()); // pass sys_id of io_set_item record
        //add the fields you want to read from the record
        var attr = {
            'sys_name': '', // optional
            'sys_scope': '', // optional
            'order': '' // optional
        };
        var m2mRec = varset.read(attr, true);
        gs.info(JSON.stringify(m2mRec));
    }

    Sortie :

    {"sys_name":"HTML Description.iPhone 6s","sys_scope":"global","order":"10"}
    {"sys_name":"Standard Employee Questions.iPhone 6s","sys_scope":"global","order":"20"}
    

    CatalogItemVariableSetM2M : setAttributes(attributs de l’objet)

    Définit les valeurs d’attribut de ce jeu de variables d’élément de catalogue M2M.

    Tableau 7. Paramètres
    Nom Type Description
    attributs Objet Un objet mappant les noms de colonnes à des valeurs.
    Tableau 8. Renvoie
    Type Description
    nul

    Dans cet exemple, il ajoute le jeu de variables Standard Employee Questions à l’élément de catalogue de l’iPhone 6s et crée un enregistrement dans la table Jeux de variables de catalogue [io_set_item].

    var cat_item_sys_id = 'bd6fa75a4f334200086eeed18110c79e'; // catalog item - iPhone 6s
    var variable_set_sys_id = 'e01cab1a4f334200086eeed18110c71f'; // variable set - Standard Employee Questions
    var app_scope = 'global'; // sys_id id in case of scoped app
    var varset = new sn_sc.CatalogItemVariableSetM2M();
    var attr = {
        'variable_set': variable_set_sys_id,
        'sc_cat_item': cat_item_sys_id,
        'sys_scope': app_scope,
        'order': 10
    };
    varset.setAttributes(attr);
    var m2mRec = varset.create(true);
    gs.info('Variable set added to catalog item and M2M record created in table io_set_item with sys_id ' + m2mRec);

    Sortie :

    Variable set added to catalog item and M2M record created in table io_set_item with sys_id c5c87af187eb30103a730f2d0ebb3578

    CatalogItemVariableSetM2M : mettre à jour (objet columnValues, booléen standardUpdate)

    Met à jour le jeu de variables de l’élément de catalogue actuel M2M avec des valeurs définies.

    Tableau 9. Paramètres
    Nom Type Description
    columnValues (colonnes de valeurs) Objet Un objet mappant les noms de colonnes à des valeurs.
    standardUpdate (Mise à jour standard) Booléen Marqueur indiquant s’il faut activer l’exécution des moteurs et du workflow.
    Valeurs valides :
    • true : activez les moteurs et le workflow.
    • false : n’activez pas les moteurs et le workflow.
    Tableau 10. Renvoie
    Type Description
    nul

    Cet exemple met à jour l’ordre du jeu de variables Questions employés standard pour l’élément de catalogue iPhone 6s.

    var vset = new GlideRecord('io_set_item');
    vset.addQuery('sc_cat_item', 'bd6fa75a4f334200086eeed18110c79e'); // catalog item - iPhone 6s
    vset.addQuery('variable_set', 'e01cab1a4f334200086eeed18110c71f'); // variable set - Standard Employee Questions
    vset.query();
    if (vset.next()) {
        var varset = new sn_sc.CatalogItemVariableSetM2M(vset.getUniqueValue()); // pass sys_id of io_set_item record
        var attr = {
            'order': '30' // update order to 30
        };
        varset.update(attr, true);
        var readAttr = {
            'sys_name': '',
            'order': '' 
        };
        var m2mRec = varset.read(readAttr, true); // read the record to confirm the update 
        gs.info(JSON.stringify(m2mRec));
    }

    Sortie :

    {"sys_name":"Standard Employee Questions.iPhone 6s","order":"30"}