Aktionselement konfigurieren
Damit eine Aktionsfunktion funktioniert, müssen Sie ein Aktionselement erstellen, das der Aktionsfunktion zugeordnet werden soll. Aktionselemente definieren, was die Aktionsfunktion ist und wie sie funktioniert.
Vorbereitungen
Erforderliche Rolle: admin
Warum und wann dieser Vorgang ausgeführt wird
Legen Sie mithilfe von Aktionselementen fest, was eine Aktionsfunktion tut, wenn ein Benutzer diese Funktion verwendet. Die folgende schrittweise Anleitung beschreibt im Einzelnen, wie eine Aktion ohne Parameter erstellt wird. Informationen zur Erstellung eines parametrisierten Aktionselements finden Sie unter Aktionselement mit Parametern konfigurieren.
Prozedur
Beispiel
Das folgende Beispiel verwendet ein Skript, um dem aktuellen Benutzer eine Aufgabe mit dem SMTask-Objekt zuzuweisen. Die erste if-Anweisung überprüft, ob die Eingabe ein gültiger wm_task-Datensatz ist, und beendet das Skript, wenn dies nicht der Fall ist. Die zweite if-Anweisung enthält Code, der die Aufgabe dem aktuellen Benutzer zuweist, wenn der Benutzer über die Berechtigung verfügt, die durch die canAssignToSelf-Methode bestimmt wird. Diese Aktion wurde anstelle eines Updates als Skript ausgeführt, sodass diese Prüfungen aufgenommen werden können.
(function WriteBackAction(parm_input, parm_variable) {
var smTask = new global.SMTask();
var work_order_task_id = parm_variable['sys_id'];
var wotGR = new GlideRecord("wm_task");
if (!wotGR.get(work_order_task_id)) {
gs.error("wot_assign_to_me write-back action - failed to find work order task");
gs.addErrorMessage(gs.getMessage("Task assignment failed."));
return;
}
if (smTask.canAssignToSelf(wotGR))
smTask.assignToMe(gs.getUserID(), work_order_task_id);
else
gs.addErrorMessage(gs.getMessage("Not a valid task assignment."));
})(parm_input, parm_variable);
Im folgenden Beispiel wird ein Skript dazu verwendet, eine Navigationsabschlussfunktion auszuführen, nachdem eine Aktion ausgeführt wurde. Geben Sie actionResult als Funktion ein, und definieren Sie anschließend setRedirectionInfo(gr.getUniqueValue(), gr.getTableName(), um anzugeben, wohin navigiert werden soll, nachdem die Aktion ausgeführt wurde.
(function WriteBackAction(parm_input, parm_variable, actionResult) {
var gr = new GlideRecord('incident');
gr.get(parm_variable['sys_id']);
gr.short_description = 'Updated by Scripted Action';
gs.addInfoMessage(gs.getMessage("This is the First success message"));
gs.addInfoMessage(gs.getMessage("This is the Second success message"));
gs.addInfoMessage(gs.getMessage("This is the Third success message"));
gr.update();
actionResult.setRedirectionInfo(gr.getUniqueValue(), gr.getTableName());
})(parm_input, parm_variable, actionResult);
Wenn Sie Parameter für das Aktionselement verwenden, können Sie sie im Skript aufrufen. Der Aufruf im Skript muss genau mit dem Parameternamen übereinstimmen. Wenn der Parametername beispielsweise „wb_wot_reject_work_note“ lautet, wie im ersten, oben angegebenen Skript, können Sie ihn im Skript mit gr.work_notes = input.wb_wot_reject_work_note; aufrufen.
Nächste Maßnahme
Ordnen Sie das Aktionselement einer Aktionsfunktion zu, siehe Aktionsfunktion.
Ordnen Sie einem Aktionselement Aktionsschritte zu, siehe Aktionsschritte in Aktionselement konfigurieren.