action - champ d’application, global
L’API d’action fournit des méthodes pour traiter les données des URL dans un script d’action d’interface utilisateur.
Utilisez cette API pour configurer les actions d’interface utilisateur avec lesquelles les utilisateurs peuvent interagir. Utilisez ces scripts dans la table Action d’interface utilisateur [sys_ui_action]. Pour en savoir plus, reportez-vous à la section Actions d’interface utilisateur.
Les méthodes de cette API sont désignées par le nom de variable « action » dans tout JavaScript côté serveur. Pour en savoir plus, reportez-vous à la section Création d’interactions à l’aide d’actions d’interface utilisateur.
action : getGlideURI()
Obtient un objet GlideURI pour déterminer la vue utilisateur.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Objet | Objet GlideURI représentant le paramètre URI de la vue utilisateur. Remarque : Toute autre valeur renvoyée est considérée comme une erreur, y compris nulle. |
L’exemple suivant montre comment obtenir la vue utilisateur et définir l’URL de redirection vers la page d’accueil du catalogue de services.
var uri = action.getGlideURI();
var path = 'catalog_home.do';
uri.set('sysparm_view', 'catalog_default');
action.setRedirectURL(uri.toString(path));
action : getReturnURL()
Obtient l’URL de la page de retour en vue lorsqu’une action d’interface utilisateur est terminée.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Chaîne | URL de la page de retour affichée après l’achèvement d’une action d’interface utilisateur. |
action.getReturnURL();
action : getURLParameter(String parameterName)
Obtient la valeur d’un paramètre d’URL.
| Nom | Type | Description |
|---|---|---|
| parameterName | Chaîne | Nom du nom du paramètre d’URL dont la valeur du paramètre d’URL doit être interrogée. |
| Type | Description |
|---|---|
| Chaîne | Valeur du paramètre d’URL. |
action.getURLParameter('sysparm_query');
action : openGlideRecord(Object gr)
Ouvre une page avec un GlideRecord dans la vue utilisateur.
| Nom | Type | Description |
|---|---|---|
| gr | GlideRecord | GlideRecord de la page à ouvrir dans la vue utilisateur. |
| Type | Description |
|---|---|
| nul |
L’exemple suivant montre comment inclure le nom de l’appelant et la description de l’incident créés à partir d’un enregistrement d’interaction. Pour plus d’informations, voir Configurer des actions d’interface utilisateur personnalisées dans Workspace.
if(current.update()){
var inc = new GlideRecord("incident");
inc.newRecord();
inc.caller_id = current.opened_for;
inc.short_description = current.short_description;
action.openGlideRecord(inc);
}
action : setNoPop(booléen noPop)
Indique s’il faut activer ou désactiver les fenêtres contextuelles sur la page dans la vue actuelle.
| Nom | Type | Description |
|---|---|---|
| noPop (en anglais seulement) | Booléen | Marqueur indiquant s’il faut activer ou désactiver les fenêtres contextuelles sur la page :
|
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment désactiver les fenêtres contextuelles pour une action d’interface utilisateur.
action.setNoPop(true);
action : setRedirectURL(URL de l’objet)
Définit l’URI de redirection pour cette transaction, qui détermine la page suivante que l’utilisateur verra.
| Nom | Type | Description |
|---|---|---|
| URL | Objet | URL à définir comme redirection. Vous pouvez fournir l’URL sous forme de chaîne ou de GlideRecord. Si vous transmettez l’URL en tant que GlideRecord, cette valeur met l’accent sur le formulaire de cet enregistrement. |
| Type | Description |
|---|---|
| nul |
L’exemple suivant montre comment rediriger un utilisateur vers une URL à partir d’une action d’interface utilisateur à l’aide de la variable actuelle .
var fixchg = new GlideRecord("change_request");
fixchg.short_description= current.short_description;
fixchg.comments= current.comments.getHTMLValue();
// fixchg.parent = current.sys_id;
fixchg.insert();
FixChange();
gs.addInfoMessage("Change "+ fixchg.number+" created");
action.setRedirectURL(current);
action.setReturnURL(fixchg);
function FixChange(){
var m2m = new GlideRecord('task_rel_task');
m2m.initialize();
m2m.child= current.sys_id;
m2m.parent= fixchg.sys_id;
m2m.type.setDisplayValue("Fixes::Fixed by");
m2m.insert();}
var reqItem = current.u_item;
var requestedFor = current.u_requested_for;
var location = current.location;
if(current.u_incident_request == 'Incident'){
//Create a new incident record and redirect to the new incident
var rec = new GlideRecord('incident');
rec.initialize();
rec.caller_id = requestedFor;
rec.location = location;
rec.insert();
action.setRedirectURL(rec);
}
if(current.u_incident_request == 'Request'){
//Build the url and route the user to the request item
var url = '';
if(current.u_item.sys_class_name == 'sc_cat_item_guide'){
url = 'com.glideapp.servicecatalog_cat_item_guide_view.do?sysparm_initial=true&sysparm_guide=' +
reqItem + '&sysparm_user=' + requestedFor + '&sysparm_location=' + location;
}
else{
url = 'com.glideapp.servicecatalog_cat_item_view.do?sysparm_id=' + reqItem + '&sysparm_user=' +
requestedFor + '&sysparm_location=' + location;
}
action.setRedirectURL(url);
}action : setReturnURL(URL de l’objet)
Définit l’URI de retour pour cette transaction une fois qu’une action d’interface utilisateur est terminée. Vous pouvez utiliser cette méthode pour déterminer la page affichée par l’utilisateur lorsqu’il revient de l’envoi.
| Nom | Type | Description |
|---|---|---|
| URL | Objet | URI à définir comme emplacement de retour après l’achèvement d’une action d’interface utilisateur. Vous pouvez fournir l’URL sous forme de chaîne ou de GlideRecord. |
| Type | Description |
|---|---|
| nul |
L’exemple suivant permet à l’utilisateur de sélectionner l’action d’interface utilisateur pour créer un enregistrement de changement à l’aide des informations tirées de l’enregistrement de problème et du modèle de changement. Après le changement, l’utilisateur revient à la vue actuelle . Pour plus d’informations, consultez Modèles scriptés. Pour plus de cas d’utilisation, reportez-vous à Task relationships with UI actions.
var change = new GlideRecord("change_request");
change.initialize();
change.short_description = current.short_description;
change.description = current.u_details;
change.cmdb_ci = current.u_service;
change.priority = current.priority;
change.requested_by = current.caller_id;
change.assignment_group.setDisplayValue('Change & Release');
change.u_status = 'New';
change.parent = current.number;
change.applyTemplate("standard_rfc");
current.rfc = change.insert();
current.comments = 'Change ' + change.number + ' created.';
var mySysID = current.update();
gs.addInfoMessage("Change " + change.number + " created");
action.setRedirectURL(change);
action.setReturnURL(current);
action : setURLParameter(String parameterName, String parameterValue)
Définit un nom et une valeur de paramètre d’URL.
| Nom | Type | Description |
|---|---|---|
| parameterName | Chaîne | Nom du paramètre d’URL. |
| parameterValue | Chaîne | Valeur du paramètre. |
| Type | Description |
|---|---|
| nul |
action.setURLParameter('sysparm_query', 'priority=2^active=true');