GlideElement - inclus dans le champ d’application

L’API GlideElement incluse dans le périmètre fournit un certain nombre de méthodes de script pratiques pour traiter les champs et leurs valeurs. Les méthodes GlideElement incluses dans le champ d’application sont disponibles pour les champs de l’enregistrement Glide actuel.

GlideElement inclus dans le champ d’application : canCreate()

Détermine si le rôle de l’utilisateur autorise la création de nouvelles entrées dans le champ associé.

Tableau 1. Paramètres
Nom Type Description
Aucun
Tableau 2. Renvoie
Type Description
Booléen Marqueur indiquant si l’utilisateur actuel a les autorisations nécessaires pour créer de nouvelles entrées dans le champ associé.
Valeurs possibles :
  • true : l’utilisateur peut créer de nouvelles entrées.
  • false : l’utilisateur ne peut pas créer de nouvelles entrées.

L’exemple suivant montre comment déterminer si l’utilisateur a les autorisations nécessaires pour créer des entrées pour les trois enregistrements les plus récents de la table Problème [problem].

var gr = new GlideRecord('problem');

// Get records in new state in Problem Table
gr.addQuery('state','101');

// Sort records in order of recent to earlier Created Date
gr.orderByDesc('sys_created_on');

// Limit the query to three records
gr.setLimit(3); 
gr.query();

while(gr.next()){
  if(gr.short_description.canCreate()){ ///check to see if the current user is allowed to create the record
  gs.info("I can create new records for the field Problem statement for - " + gr.number);
  }
}

Sortie :

I can create new records for the field Problem statement for - PRB0000004
I can create new records for the field Problem statement for - PRB0001000
I can create new records for the field Problem statement for - PRB0001001

Équivalent dans le champ d’application

Pour utiliser la méthode canCreate() dans une application incluse dans le périmètre, utilisez la méthode correspondante dans le périmètre : canCreate().

GlideElement inclus dans le champ d’application : canRead()

Indique si le rôle de l’utilisateur lui permet de lire le GlideRecord associé.

Tableau 3. Paramètres
Nom Type Description
Aucun
Tableau 4. Renvoie
Type Description
Booléen Vrai si le champ peut être lu, faux dans les autres cas.

L’exemple suivant montre comment obtenir une liste d’enregistrements d’incidents actifs avec un champ Brève description lisible.

var grIncident = new GlideRecord('incident');
grIncident.addEncodedQuery("active=true"); //Query the Incident table for active incidents
grIncident.orderByDesc('number');
grIncident.setLimit(3); // limit to three results for example
grIncident.query();

while (grIncident.next()) {
    if (grIncident.short_description.canRead()) { //check to see if the current user is allowed to read the record
        gs.info('You have permission to read the short description of: ' + grIncident.number + ' ' + grIncident.short_description);
    }
}

Sortie :

*** Script: You have permission to read the short description of: INC0009009 Unable to access the shared folder.
*** Script: You have permission to read the short description of: INC0009005 Email server is down.
*** Script: You have permission to read the short description of: INC0009001 Unable to post content on a Wiki page

GlideElement inclus dans le champ d’application : canWrite()

Détermine si le rôle de l’utilisateur lui permet d’écrire dans le GlideRecord associé.

Tableau 5. Paramètres
Nom Type Description
Aucun
Tableau 6. Renvoie
Type Description
Booléen Vrai si l’utilisateur peut écrire dans le champ, faux dans les autres cas.

L’exemple suivant montre comment obtenir une liste des enregistrements d’incidents actifs avec un champ Brève description accessible en écriture.

var grIncident = new GlideRecord('incident');
grIncident.addEncodedQuery("active=true"); //Query the Incident table for active incidents
grIncident.orderByDesc('number');
grIncident.setLimit(3); // limit to three results for example
grIncident.query();

while (grIncident.next()) {
    if (grIncident.short_description.canWrite()) { //check to see if the current user is allowed to write to the record
        gs.info('You have permission to write to the short description of: ' + grIncident.number + ' ' + grIncident.short_description);
    }
}

Sortie :

*** Script: You have permission to write to the short description of: INC0009009 Unable to access the shared folder.
*** Script: You have permission to write to the short description of: INC0009005 Email server is down.
*** Script: You have permission to write to the short description of: INC0009001 Unable to post content on a Wiki page

GlideElement inclus dans le champ d’application : changes()

Détermine si le champ actuel a été modifié. Cette fonctionnalité est disponible pour tous les types de données disponibles, à l’exception des champs journal.

Remarque :
La méthode changes() n’est pas prise en charge dans les scripts ACL.
Remarque :
Si le GlideRecord sur lequel vous effectuez cette méthode a seulement été initialisé et lu, et n’a pas été écrit, les valeurs avant/après sous-jacentes sont les mêmes. Dans ce cas, la méthode renvoie « false », car aucune modification n’a été apportée au magasin de données.
Tableau 7. Paramètres
Nom Type Description
Aucun
Tableau 8. Renvoie
Type Description
Booléen Vrai si les champs ont été modifiés, Faux si ce n’est pas le cas.

L’exemple suivant tiré d’une règle métier montre comment créer un événement dans EventQueue si la valeur du champ assigned_to change.

if (!current.assigned_to.nil() && current.assigned_to.changes()) {
  gs.eventQueue('incident.assigned', current, current.assigned_to.getDisplayValue(), previous.assigned_to.getDisplayValue());
}

GlideElement inclus dans le champ d’application : changesFrom(Object o)

Détermine si la valeur précédente du champ actuel correspond à l’objet spécifié.

Remarque :
Si le GlideRecord sur lequel vous effectuez cette méthode a seulement été initialisé et lu, et n’a pas été écrit, les valeurs avant/après sous-jacentes sont les mêmes. Dans ce cas, la méthode renvoie « false », car aucune modification n’a été apportée au magasin de données.
Tableau 9. Paramètres
Nom Type Description
o Objet Une valeur d’objet à vérifier par rapport à la valeur précédente du champ actuel.
Tableau 10. Renvoie
Type Description
Booléen Vrai si la valeur précédente correspond, faux si ce n’est pas le cas.
// The following example shows that in a business rule, if "active" field is changed from true, 
// insert a event in the EventQueue.
if (current.active.changesFrom(true)) {
  gs.eventQueue("incident.inactive", current, current.incident_state, previous.incident_state);
}

GlideElement inclus dans le champ d’application : changesTo(Object o)

Détermine si la nouvelle valeur d’un champ, après un changement, correspond à l’objet spécifié.

Remarque :
La méthode changesTo() n’est pas prise en charge dans les scripts ACL.
Remarque :
Si le GlideRecord sur lequel vous effectuez cette méthode a seulement été initialisé et lu, et n’a pas été écrit, les valeurs avant/après sous-jacentes sont les mêmes. Dans ce cas, la méthode renvoie « false », car aucune modification n’a été apportée au magasin de données.
Tableau 11. Paramètres
Nom Type Description
o Objet Une valeur d’objet à vérifier par rapport à la nouvelle valeur du champ actuel.
Tableau 12. Renvoie
Type Description
Booléen Vrai si la valeur précédente correspond, faux si ce n’est pas le cas.
// The following example shows that in a business rule, if "active" field is changed to false, 
// insert a event in the EventQueue.
if (current.active.changesTo(false)) {
  gs.eventQueue("incident.inactive", current, current.incident_state, previous.incident_state);
}

GlideElement inclus dans le champ d’application : dateNumericValue()

Renvoie le nombre de millisecondes écoulées depuis le 1er janvier 1970 à 00:00:00 GMT pour un champ de durée. Ne nécessite pas la création d’un objet GlideDateTime, car le champ de durée est déjà un objet GlideDateTime.

Tableau 13. Paramètres
Nom Type Description
Aucun
Tableau 14. Renvoie
Type Description
Numéro Nombre de millisecondes depuis le 1er janvier 1970, 00:00:00 GMT.
var inc = new GlideRecord('incident');
inc.get('17c90efb13418700cc36b1422244b05d');
gs.info(inc.calendar_duration.dateNumericValue());

Sortie :

98000

GlideElement inclus dans le champ d’application : getAttribute(String attributeName)

Renvoie la valeur de l’attribut spécifié à partir du dictionnaire.

Si l’attribut est un attribut booléen, utilisez getBooleanAttribute(String) pour obtenir la valeur en tant que booléen plutôt qu’en tant que chaîne.

Tableau 15. Paramètres
Nom Type Description
attributeName Chaîne Nom d'attribut
Tableau 16. Renvoie
Type Description
Chaîne Valeur d'attribut
doit();
function doit() {
  var now_GR = new GlideRecord('sys_user');
  now_GR.query("user_name","admin");
  if (now_GR.next()) {
    gs.info("we got one");
    gs.info(now_GR.location.getAttribute("tree_picker"));
  }
}

GlideElement inclus dans le champ d’application : getBooleanAttribute(String attributeName)

Renvoie la valeur booléenne de l’attribut spécifié à partir du dictionnaire.

Pour obtenir la valeur sous forme de chaîne, utilisez getAttribute(string).

Tableau 17. Paramètres
Nom Type Description
attributeName Chaîne Nom d'attribut
Tableau 18. Renvoie
Type Description
Booléen Valeur booléenne de l’attribut. Renvoie la valeur false si l’attribut n’existe pas.

L’exemple suivant montre comment obtenir les valeurs booléennes de l’attribut ignore_filter_on_new pour deux champs.

var inc = new GlideRecord('incident');
inc.query();

if (inc.next())
 {
   // opened_by field has attribute "ignore_filter_on_new = true"
   gs.info(inc.opened_by.getBooleanAttribute("ignore_filter_on_new"));

  // short_description field does not have attribute ignore_filter_on_new
   gs.info(inc.short_description.getBooleanAttribute("ignore_filter_on_new"));
 }

Sortie :

true
false

GlideElement inclus dans le champ d’application : getChoices(dépendant de la chaîne)

Renvoie la liste de choix pour un champ spécifié.

Le champ pour lequel renvoyer la liste de choix est spécifié dans l’appel de méthode. Par exemple : var choices = glideRecord.urgency.getChoices() ;. Pour plus d’informations sur les types de champs de liste de choix et leurs options associées, voir Type de champ de liste de choix.

Tableau 19. Paramètres
Nom Type Description
dépendant Chaîne Facultatif. Champ dans l’enregistrement associé dont le champ de liste de choix dépend.
Tableau 20. Renvoie
Type Description
Tableau Liste des valeurs possibles pour la liste de choix, qui sont les valeurs de la table Choix [sys_choice]. Si le dependent paramètre est transmis, les résultats de retour reflètent uniquement les choix disponibles pour le champ dépendant spécifié.
var glideRecord = new GlideRecord('incident'); 
glideRecord.query('priority','1'); 
glideRecord.next(); 
 
// urgency has choice list: 1 - High, 2 - Medium, 3 - Low, with value: 1, 2, 3
var choices = glideRecord.urgency.getChoices();

GlideElement inclus dans le champ d’application : getChoiceValue()

Renvoie l’étiquette de choix pour le choix actuel.

Un choix a une valeur (numéro) et une étiquette (chaîne). Cette méthode renvoie l’étiquette.

Tableau 21. Paramètres
Nom Type Description
Aucun
Tableau 22. Renvoie
Type Description
Chaîne L’étiquette du choix sélectionné.
var glideRecord = new GlideRecord('incident'); 
glideRecord.query('priority','1'); 
glideRecord.next(); 
 
// urgency has choice list: 1 - High, 2 - Medium, 3 - Low, with value: 1, 2, 3
var choiceLabel = glideRecord.urgency.getChoiceValue(); 
gs.info(choiceLabel);

Sortie :

1 - High

GlideElement inclus dans le périmètre : getDecryptedValue()

Renvoie la valeur en texte clair pour les champs Mot de passe (chiffré dans 2 sens) dans les applications incluses dans le périmètre.

Tableau 23. Paramètres
Nom Type Description
Aucun
Tableau 24. Renvoie
Type Description
Chaîne Le mot de passe en texte clair.
var tablename = 'x_scoped_app_table'
var CI = new GlideRecord(tablename);  
CI.addQuery('number', '0001002'); 
CI.query(); 
CI.next(); 

var password = CI.password_field
var decrypted = password.getDecryptedValue(); 
gs.info(decrypted);
Sortie :
x_scoped_app: cleartextpassword

GlideElement inclus dans le champ d’application : getDisplayValue(Number maxCharacters)

Renvoie la valeur d’affichage formatée d’un champ spécifié à partir d’un objet GlideRecord associé.

Les valeurs d'affichage sont manipulées en fonction de la valeur réelle dans la base de données, ainsi que des paramètres et préférences système ou utilisateur.

La valeur d’affichage renvoyée dépend du type de champ.
  • Champs de choix : la valeur de base de données peut être un nombre, mais la valeur d'affichage sera plus descriptive.
  • Champs de date : la valeur de base de données est au format UTC, tandis que la valeur d'affichage est basée sur le fuseau horaire de l'utilisateur.
  • Texte chiffré : la valeur de base de données est chiffrée, tandis que la valeur d'affichage n'est pas chiffrée en fonction du contexte de chiffrement de l'utilisateur.
  • Champs de référence : la valeur de base de données est sys_id, tandis que la valeur d'affichage est un champ d'affichage de l'enregistrement référencé.

Pour plus d’informations sur les valeurs d’affichage, consultez Valeurs d’affichage.

Tableau 25. Paramètres
Nom Type Description
maxCharacters (Caractères max) Numéro Facultatif. Nombre maximal de caractères souhaités.

Par défaut : Tous

Tableau 26. Renvoie
Type Description
Chaîne Valeur d’affichage du champ spécifié.

L’exemple suivant montre comment récupérer la valeur d’affichage du champ Priorité dans un enregistrement d’incident.

var glideRecord = new GlideRecord('incident');
glideRecord.query('priority','1');
glideRecord.next();
gs.info(glideRecord.priority.getDisplayValue());

Sortie :

1 - Critical

L’exemple suivant montre comment récupérer à la fois la valeur d’affichage et la valeur interne des champs spécifiés dans la base de données d’incidents.

var now_GR = new GlideRecord('incident');
now_GR.get('9c573169c611228700193229fff72400'); //INC0000001
gs.info('Display Values:');
gs.info('Opened at ' + now_GR.opened_at.getDisplayValue());
gs.info('Opened by ' + now_GR.opened_by.getDisplayValue());
gs.info('Priority ' + now_GR.priority.getDisplayValue());
gs.info('Values:');
gs.info('Opened at ' + now_GR.opened_at.getValue());
gs.info('Opened by ' + now_GR.opened_by.getValue());
gs.info('Priority ' + now_GR.priority.getValue());

Sortie :

Display Values:
Opened at 2022-02-01 15:09:51
Opened by Joe Employee
Priority 1 - Critical
Values:
Opened at 2022-02-01 23:09:51
Opened by 681ccaf9c0a8016400b98a06818d57c7
Priority 1

GlideElement inclus dans le champ d’application : getDisplayValueLang (langue de chaîne)

Récupère la valeur d’affichage du champ dans la langue transmise en paramètre.

Le résultat ne s’applique qu’aux types de champs traduisibles tels que Choix, Champ traduit et Texte traduit. Pour les autres types de champs, le résultat par défaut est getDisplayValue().

Vous devez disposer du module d’extension de langue correspondant pour récupérer une valeur traduite. (pour en savoir plus, consultez Activate a language) ;

Voir aussi GlideElement inclus dans le champ d’application : getLabelLang (langue de chaîne).

Tableau 27. Paramètres
Nom Type Description
language Chaîne Balise de langue conforme à la norme IETF BCP-47.
Tableau 28. Renvoie
Type Description
Chaîne Valeur d’affichage du champ dans la langue transmise. Si une traduction n’est pas disponible, la méthode récupère une valeur traduite dans la langue de l’utilisateur actuel. Si aucune traduction n’est disponible, le résultat par défaut est l’anglais.

L’exemple suivant montre comment obtenir le texte d’origine et le texte traduit en allemand à partir du champ de titre Accepter (vue de l’interface utilisateur).

var uiView = new GlideRecord("sys_ui_view");
uiView.get("fa776f6d97700100f309124eda2975bc");

gs.info("getDisplayValue: " + uiView.getElement("title").getDisplayValue());
gs.info("getDisplayValueLang: " + uiView.getElement("title").getDisplayValueLang("de"));

Sortie :

getDisplayValue: Accept
getDisplayValueLang: Akzeptieren

GlideElement inclus dans le champ d’application : getED()

Renvoie le descripteur d’élément du champ.

Tableau 29. Paramètres
Nom Type Description
Aucun
Tableau 30. Renvoie
Type Description
GlideElementDescriptor Descripteur d’élément du champ.
var grInc = new GlideRecord('incident');
grInc.query('priority', '1');
 
var field = grInc.getElement('priority');
var ed = field.getED();

GlideElement inclus dans le périmètre : getGlobalDisplayValue()

Renvoie le numéro de téléphone au format international.

Tableau 31. Paramètres
Nom Type Description
Aucun
Tableau 32. Renvoie
Type Description
Chaîne Numéro de téléphone au format international.

L’exemple suivant montre comment obtenir le numéro de téléphone d’un emplacement de visite. Cet exemple nécessite le module d’extension Expérience de visite .

// Passing walkup location name and closed phone number in parameters
setWalkupLocPhone('Santa Clara Tech Lounge','phone_number');

function setWalkupLocPhone(locName, field) {
  var walkupLoc = new GlideRecord('wu_location_queue');
  walkupLoc.addQuery('name',locName);
  walkupLoc.query();
  walkupLoc.next();

  // Returns the phone number of walk-up location queue in international format
  gs.info(walkupLoc[field].getGlobalDisplayValue());
}

Sortie :

+91 98124 56789

GlideElement inclus dans le champ d’application : getHTMLValue(Number maxChars)

Renvoie la valeur HTML d’un champ.

Tableau 33. Paramètres
Nom Type Description
maxChars Numéro Facultatif. Nombre maximal de caractères à renvoyer.
Tableau 34. Renvoie
Type Description
Chaîne Valeur HTML pour le champ.
var inccause = new GlideRecord("incident");
inccause.short_description = current.short_description;
inccause.comments = current.comments.getHTMLValue();
inccause.insert();

GlideElement inclus dans le champ d’application : getJournalEntry(Number mostRecent)

Renvoie soit l’entrée de journal la plus récente, soit toutes les entrées de journal.

Tableau 35. Paramètres
Nom Type Description
mostRecent Numéro Si 1, renvoie l’entrée la plus récente. Si -1, renvoie toutes les entrées de journal.
Tableau 36. Renvoie
Type Description
Chaîne

Pour l’entrée la plus récente, renvoie une chaîne contenant l’étiquette de champ, l’horodatage et le nom d’affichage de l’utilisateur de l’entrée de journal.

Pour toutes les entrées de journal, renvoie les mêmes informations pour toutes les entrées de journal jamais saisies sous la forme d’une seule chaîne avec chaque entrée délimitée par « \n\n ».

//gets all journal entries as a string where each entry is delimited by '\n\n'
var notes = current.work_notes.getJournalEntry(-1); 
//stores each entry into an array of strings
var na = notes.split("\n\n");  
                      
for (var i = 0; i < na.length; i++)                 
  gs.info(na[i]);

GlideElement inclus dans le champ d’application : getLabel()

Renvoie l’étiquette de l’objet.

Tableau 37. Paramètres
Nom Type Description
Aucun
Tableau 38. Renvoie
Type Description
Chaîne Étiquette de l’objet
var now_GR = new GlideRecord("sc_req_item");
now_GR.addQuery("request", current.sysapproval);
now_GR.query();
while(now_GR.next()) {
var nicePrice = now_GR.price.toString();
    if (nicePrice != ) {
        nicePrice = parseFloat(nicePrice);
        nicePrice = nicePrice.toFixed(2);
    }
    template.print(now_GR.number + ":  " + now_GR.quantity + " X " + now_GR.cat_item.getDisplayValue() + " at $" + nicePrice + " each \n");
    template.print("    Options:\n");
    var variables = now_GR.variables.getElements();    
    for (var key in variables) {
      var now_V = variables[key];
      if(now_V.getQuestion().getLabel() != ) {
         template.space(4);
         template.print('     ' +  now_V.getQuestion().getLabel() + " = " + now_V.getDisplayValue() + "\n");  
      }
    }
}

GlideElement inclus dans le champ d’application : getLabelLang (langue de chaîne)

Obtient la valeur d’étiquette du champ dans la langue transmise comme paramètre.

Vous devez disposer du module d’extension de langue correspondant pour récupérer une valeur traduite. (pour en savoir plus, consultez Activate a language) ;

Tableau 39. Paramètres
Nom Type Description
language Chaîne Balise de langue conforme à la norme IETF BCP-47.
Tableau 40. Renvoie
Type Description
Chaîne Valeur de l’étiquette de champ dans la langue transmise. Si une traduction n’est pas disponible, la méthode récupère une valeur traduite dans la langue de l’utilisateur actuel. Si aucune traduction n’est disponible, le résultat par défaut est l’anglais.

L’exemple suivant montre comment obtenir le texte de l’étiquette d’origine et sa traduction allemande du titre Accepter (vue de l’interface utilisateur).

var uiView = new GlideRecord("sys_ui_view");
uiView.get("fa776f6d97700100f309124eda2975bc");

gs.info("getLabel: " + uiView.getElement("title").getLabel());
gs.info("getLabelLang: " + uiView.getElement("title").getLabelLang("de"));

Sortie :

getLabel: Title
getLabelLang: Titel

GlideElement inclus dans le champ d’application : getName()

Renvoie le nom du champ.

Tableau 41. Paramètres
Nom Type Description
Aucun
Tableau 42. Renvoie
Type Description
Chaîne Nom de champ.

L’exemple suivant montre comment obtenir le nom et d’autres valeurs pour chaque champ d’un enregistrement sys_user.

var userRec = new GlideRecord("sys_user"); // GlideRecord to sys_user table

userRec.get("5137153cc611227c000bbd1bd8cd2005"); // Sys Id of user: Fred Luddy

var fields = userRec.getFields();

for (var i = 0; i < fields.size(); i++) {

    var field = fields.get(i);
    var name = field.getName(); // Name of the field
    var label = field.getLabel(); // Label of the field
    var value = field.getDisplayValue(); // Value of the field

    gs.info((Number(i) + 1) + ".\n" + "Field Label: " + label + "\n" + "Field Name: " + name + "\n" + "Field Value: " + value);

};

Sortie. Les résultats comprennent 62 champs et ont été tronqués avec des points de suspension (...) pour économiser de l’espace.

*** Script: 1.
Field Label: Country code
Field Name: country
Field Value: 
*** Script: 2.
Field Label: Calendar integration
Field Name: calendar_integration
Field Value: Outlook
...
*** Script: 47.
Field Label: First name
Field Name: first_name
Field Value: Fred
...
*** Script: 54.
Field Label: Last name
Field Name: last_name
Field Value: Luddy
...

GlideElement inclus dans le champ d’application : getReferenceTable()

Obtient le nom de table pour un élément de référence.

Tableau 43. Paramètres
Nom Type Description
Aucun
Tableau 44. Renvoie
Type Description
Chaîne Nom de la table de référence.
var grINC = new GlideRecord('incident');
grINC.query('number','INC0010041'); // record assignment group assigned to "CAB Approval"
if (grINC.next()) { 
  // Get the table name 
  var tableName = grINC.assignment_group.getReferenceTable();
  gs.info( tableName ); 
}

GlideElement inclus dans le champ d’application : getRefRecord()

Renvoie un objet GlideRecord pour un élément de référence donné.

Avertissement :
Si l’élément de référence ne contient pas de valeur, il renvoie un objet GlideRecord vide, pas un objet NULL.
Tableau 45. Paramètres
Nom Type Description
Aucun
Tableau 46. Renvoie
Type Description
GlideRecord Un objet GlideRecord

var grINC = new GlideRecord('incident'); 
grINC.addNotNullQuery('caller_id'); 
grINC.query(); 
if (grINC.next()) { 

// Get a GlideRecord object for the referenced sys_user record 
var grUSER = grINC.caller_id.getRefRecord(); 
if (grUSER.isValidRecord()) 
  gs.info(grUSER.getValue('name')); 

} 

GlideElement inclus dans le champ d’application : getTableName()

Renvoie le nom de la table sur laquelle se trouve le champ.

Tableau 47. Paramètres
Nom Type Description
Aucun
Tableau 48. Renvoie
Type Description
Chaîne Nom de la table. La valeur renvoyée peut être différente de la classe de table dans laquelle se trouve l’enregistrement. Voir Tables et classes dans la documentation du produit.
if (current.approver.getTableName() == "sysapproval_approver") {
  if (current.approver == email.from_sys_id)  {
     current.comments = "reply from: " + email.from + "\n\n" + email.body_text;
 
   // if it's been cancelled, it's cancelled.
  var doit = true;
  if (current.state=='cancelled')
      doit = false;
 
  if (email.body.state != undefined)
     current.state= email.body.state;
 
   if (doit)
      current.update();
} else {
   gs.log("Approval for task ("+current.sysapproval.getDisplayValue()+") rejected because user sending 
           email( "+email.from+") does not match the approver ("+current.approver.getDisplayValue()+")");
}
 
}

GlideElement inclus dans le champ d’application : nil()

Détermine si un champ est nul.

Tableau 49. Paramètres
Nom Type Description
Aucun
Tableau 50. Renvoie
Type Description
Booléen Marqueur indiquant si le champ est nul.
Valeurs possibles :
  • true : le champ est nul.
  • false : le champ n’est pas nul.
var glideRecord = new GlideRecord('incident'); 
glideRecord.query('priority','1'); 
glideRecord.next(); 
gs.info(glideRecord.state.nil());

Sortie :

false

GlideElement inclus dans le périmètre : setDateNumericValue(nombre de millisecondes)

Définit la valeur d’un élément date/heure sur le nombre spécifié de millisecondes depuis le 1er janvier 1970 00:00:00 GMT.

Lorsqu’elle est appelée, setDateNumericValue() crée automatiquement l’objet GlideDateTime/GlideDate/GlideDuration nécessaire, puis définit l’élément sur la valeur spécifiée.

Remarque :
Avant d’appeler cette méthode, l’élément doit déjà exister en interrogeant un enregistrement existant ou en utilisant la méthode now_GR.initialize() pour initialiser un nouvel enregistrement.
Tableau 51. Paramètres
Nom Type Description
millisecondes Numéro Nombre de millisecondes depuis le 01/01/1970
Tableau 52. Renvoie
Type Description
nul
var now_GR = new GlideRecord("incident");
now_GR.initialize();
now_GR.opened_at.setDateNumericValue(10000);

GlideElement inclus dans le champ d’application : setDisplayValue (valeur de l’objet)

Définit la valeur d’affichage du champ.

Tableau 53. Paramètres
Nom Type Description
valide Objet La valeur à définir pour le champ.
Tableau 54. Renvoie
Type Description
nul
var glideRecord = new GlideRecord('incident'); 
glideRecord.query('priority','1'); 
glideRecord.next();
 
//change the urgency to 3 
glideRecord.urgency.setDisplayValue('3 - Low');
gs.info(glideRecord.urgency);

GlideElement inclus dans le champ d’application : setError(String errorMessage)

Ajoute un message d’erreur. Disponible dans le patch Fuji 3.

Tableau 55. Paramètres
Nom Type Description
errorMessage Chaîne Message d’erreur.
Tableau 56. Renvoie
Type Description
nul
var glideRecord = new GlideRecord('incident');
glideRecord.query('priority','1');
glideRecord.next();
 
glideRecord.short_description.setError('Error text');

GlideElement inclus dans le périmètre : setPhoneNumber(Object phoneNumber, booléen strict)

Définit le champ sur le numéro de téléphone spécifié.

Cette méthode n’est disponible que sur un numéro de téléphone GlideElement.

Tableau 57. Paramètres
Nom Type Description
phoneNumber Objet Le numéro de téléphone à définir. Il peut s’agir d’un format international ou local.
strict Booléen Si vrai, spécifie que le nombre spécifié doit correspondre au format correct. Lorsque la valeur est définie sur false, le système tente de corriger un numéro de téléphone mal formaté.
Tableau 58. Renvoie
Type Description
Booléen Marqueur indiquant si la valeur du numéro de téléphone a été définie.

Valeurs possibles :

  • true : la valeur a été définie.
  • false : la valeur n’a pas été définie.

L’exemple suivant montre comment définir le numéro de téléphone d’un emplacement de visite. Cet exemple nécessite le module d’extension Expérience de visite .

setWalkupLocPhone('Santa Clara Tech Lounge','+91 9812456789'); 

function setWalkupLocPhone(locName, phoneNumber) {
  var walkupLoc = new GlideRecord('wu_location_queue');
  walkupLoc.addQuery('name', locName);
  walkupLoc.query();
  walkupLoc.next();
  
  // Set phone number of walk-up location
  var isPhoneNumberSet = walkupLoc.phone_number.setPhoneNumber(phoneNumber, true);
  walkupLoc.update();
  gs.info('Phone Number: ' + walkupLoc.phone_number);
  gs.info('Is phone number specified match the correct format: ' + isPhoneNumberSet);
}

Sortie :

Phone Number: +919812456789
Is phone number specified match the correct format: true

GlideElement inclus dans le champ d’application : setValue(valeur de l’objet)

Définit la valeur d’un champ.

Remarque :
Avant d’appeler cette méthode, l’élément doit déjà exister en interrogeant un enregistrement existant ou en utilisant la méthode now_GR.initialize() pour initialiser un nouvel enregistrement.
Tableau 59. Paramètres
Nom Type Description
valide Objet Valeur d’objet sur laquelle définir le champ.
Tableau 60. Renvoie
Type Description
nul

Définissez la valeur en passant une chaîne.

var glideRecord = new GlideRecord('incident');
glideRecord.query('priority','1');
glideRecord.next();
glideRecord.short_description.setValue('Network failure');

Définir la valeur de passage d’un objet.

var now_GR  = new GlideRecord('student');
now_GR.initialize();
now_GR.setValue('first_name', 'Joe');
now_GR.setValue('last_name', 'Smith');
now_GR.insert();

GlideElement inclus dans le champ d’application : toString()

Convertit la valeur d’un champ GlideRecord en chaîne.

Tableau 61. Paramètres
Nom Type Description
Aucun
Tableau 62. Renvoie
Type Description
Chaîne Valeur sous forme de chaîne.
var glideRecord = new GlideRecord('incident');
glideRecord.query('priority','1');
glideRecord.next();
gs.info(glideRecord.opened_at.toString());

Sortie :

2019-08-31 23:09:51