action – Scoped, Global
Die Aktions- API ermöglicht die Verarbeitung von Daten für URLs in einem UI-Aktionsskript.
Verwenden Sie die Aktions- API, um UI-Aktionen zu konfigurieren, mit denen Benutzer interagieren können. Verwenden Sie diese Skripts in der Tabelle „UI-Aktion“ [sys_ui_action]. Weitere Informationen finden Sie unter UI-Aktionen.
Methoden für diese API werden in jedem serverseitigen JavaScript-Code durch den Variablennamen „action“ referenziert. Weitere Informationen finden Sie unter Interaktionen mit UI-Aktionen erstellen.
action – getGlideURI()
Ruft ein GlideURI-Objekt ab, um die Benutzeransicht zu bestimmen.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Objekt | GlideURI-Objekt, das den URI-Parameter der Benutzeransicht darstellt. Hinweis: Jeder andere zurückgegebene Wert wird als Fehler betrachtet, einschließlich NULL. |
Das folgende Beispiel zeigt, wie Sie die Benutzeransicht abrufen und die Umleitungs-URL für die Servicekatalog-Homepage festlegen.
var uri = action.getGlideURI();
var path = 'catalog_home.do';
uri.set('sysparm_view', 'catalog_default');
action.setRedirectURL(uri.toString(path));
action – getReturnURL()
Ruft die URL der Rückkehrseite ab, die nach Abschluss einer UI-Aktion angezeigt wird.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | URL der Rückkehrseite, die nach Abschluss einer UI-Aktion angezeigt wird. |
action.getReturnURL();
action – getURLParameter(String parameterName)
Ruft den Wert eines URL-Parameters ab.
| Name | Typ | Beschreibung |
|---|---|---|
| parameterName | Zeichenfolge | Name des URL-Parameternamens, der nach dem URL-Parameterwert abgefragt werden soll. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | URL-Parameterwert. |
action.getURLParameter('sysparm_query');
action – openGlideRecord(Object gr)
Öffnet eine Seite mit einem GlideRecord in der Benutzeransicht.
| Name | Typ | Beschreibung |
|---|---|---|
| gr | GlideRecord | GlideRecord der Seite, die in der Benutzeransicht geöffnet werden soll. |
| Typ | Beschreibung |
|---|---|
| void |
Das folgende Beispiel zeigt, wie der Name des Anrufers und die Incident-Beschreibung, die aus einem Interaktionsdatensatz erstellt wurde, einbezogen werden. Weitere Informationen finden Sie unter Benutzerdefinierte UI-Aktionen in Workspace einrichten.
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(Boolean noPop)
Gibt an, ob Popup-Fenster auf der Seite in der aktuellen Ansicht aktiviert oder deaktiviert werden sollen.
| Name | Typ | Beschreibung |
|---|---|---|
| noPop | Boolean | Kennzeichnung, die angibt, ob Popup-Fenster auf der Seite aktiviert oder deaktiviert werden sollen:
|
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie Popup-Fenster für eine UI-Aktion deaktiviert werden.
action.setNoPop(true);
action – setRedirectURL(Object URL)
Legt den Umleitungs-URI für diese Transaktion fest, der die nächste Seite bestimmt, die dem Benutzer angezeigt wird.
| Name | Typ | Beschreibung |
|---|---|---|
| URL | Objekt | URL, die als Umleitung festgelegt werden soll. Sie können die URL als Zeichenfolge oder GlideRecord angeben. Wenn Sie die URL als GlideRecord übergeben, legt dieser Wert den Fokus auf das Formular dieses Datensatzes. |
| Typ | Beschreibung |
|---|---|
| void |
Das folgende Beispiel zeigt, wie ein Benutzer mithilfe der Variablen current von einer UI-Aktion zu einer URL umgeleitet wird.
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(Object URL)
Legt den Rückgabe-URI für diese Transaktion fest, nachdem eine UI-Aktion abgeschlossen wurde. Sie können diese Methode verwenden, um zu bestimmen, welche Seite der Benutzer anzeigt, wenn er von der Übermittlung zurückkehrt.
| Name | Typ | Beschreibung |
|---|---|---|
| URL | Objekt | URI, der nach Abschluss einer UI-Aktion als Rückgabeort festgelegt werden soll. Sie können die URL als Zeichenfolge oder GlideRecord angeben. |
| Typ | Beschreibung |
|---|---|
| void |
Im folgenden Beispiel kann der Benutzer die UI-Aktion auswählen, um einen Change-Datensatz mit Informationen aus dem Problemdatensatz und der Change-Vorlage zu erstellen. Nach der Änderung kehrt der Benutzer zur aktuellen Ansicht zurück. Weitere Informationen finden Sie unter Geskriptete Vorlagen. Weitere Anwendungsfälle finden Sie unter Aufgabenbeziehungen mit UI-Aktionen definieren.
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)
Legt einen URL-Parameternamen und -wert fest.
| Name | Typ | Beschreibung |
|---|---|---|
| parameterName | Zeichenfolge | Name des URL-Parameters. |
| parameterWert | Zeichenfolge | Wert des Parameters. |
| Typ | Beschreibung |
|---|---|
| void |
action.setURLParameter('sysparm_query', 'priority=2^active=true');