Bestellleitfäden automatisch ausführen

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 4 Minuten Lesedauer
  • Servicekatalog-Bestellleitfäden ermöglichen es Kunden, eine einzige Servicekatalog-Anforderung zu stellen, die mehrere bestellte Artikel generieren kann. Administratoren können Bestellleitfäden so konfigurieren, dass sie automatisch (über einen Workflow oder ein Skript) ausgeführt werden, um einen Satz bestellter Artikel zu generieren, ohne dass manuell eine Servicekatalog-Anforderung gesendet werden muss. Administratoren können auch die Fehler im Bestellleitfaden überprüfen und erneut verarbeiten.

    Als Anwendungsfall kann ein Onboarding-Workflow für einen neuen Mitarbeiter einen Bestellleitfaden ausführen, um automatisch Artikel für diesen Mitarbeiter zu bestellen.

    Hinweis:
    Sie können nur Katalogelemente speichern, nicht den Bestellleitfaden (d. h. anfängliche Zielseitenoptionen).

    Bestellleitfäden über Skripts ausführen

    Das Ausführen von Bestellleitfäden mit einem serverseitigen Skript ist komplexer als die Verwendung von Workflows, bietet jedoch mehr Flexibilität und kann in Situationen ohne Workflow verwendet werden.

    Sie können beispielsweise Bestellleitfaden-Skripts mit UI Actions oder serverseitigen Business Rules verwenden.
    Hinweis:
    Wenn Bestellleitfäden automatisch ausgeführt werden, werden die UI-Richtlinien für Bestellleitfäden nicht durchgesetzt. Außerdem können Optionen im Bildschirm „Optionen auswählen“ nicht ausgewählt werden. Stellen Sie daher sicher, dass die Bestellleitfaden-Regeln sinnvolle Standardwerte für diese Optionen definieren, um Verarbeitungsfehler zu vermeiden.

    Verwenden Sie die Java-Klasse SNC.ScriptableOrderGuide, um Bestellleitfäden mit einem Skript auszuführen.

    Verwenden Sie den Konstruktor SNC.ScriptableOrderGuide (String orderGuideId), um ein neues ScriptableOrderGuide-Objekt zu erstellen.

    Methodenübersicht

    Methode Rückgabewert Beschreibung
    process(String json) boolean Führt den Bestellleitfaden mit dem JSON-codierten Zeichenfolgenparameter als Eingabe für den Bestellleitfaden aus. Gibt true oder false zurück, abhängig davon, ob die Verarbeitung erfolgreich war oder nicht.
    Hinweis:
    Die Parameter opened_by und requested_for müssen an den Bestellleitfaden übergeben werden, und beide müssen gültige sys_id-Werte für den Anwenderdatensatz aufweisen.

    Wenn die Verarbeitung erfolgreich ist und eine Anforderung vom Bestellleitfaden erstellt wird, können Sie den Anforderungs-GlideRecord mit getRequest() abrufen.

    Wenn die Verarbeitung fehlschlägt, können Sie den Fehler-GlideRecord mit getFailure() abrufen und dann das Skript mit „reprocess“ zur erneuten Verarbeitung senden.

    reprocess(GlideRecord failure) Boolean Führt den Bestellleitfaden erneut aus, wobei der JSON-codierte Zeichenfolgenparameter verwendet wird, der im Fehler-GlideRecord gespeichert ist.
    getMessage() Zeichenfolge Ruft die nach der Verarbeitung oder erneuten Verarbeitung gefüllte Nachricht ab.
    getRequest() GlideRecord Ruft den Anforderungs-GlideRecord ab.
    getFailure() GlideRecord Ruft den Fehler-GlideRecord aus der Tabelle „Fehler im skriptfähigen Bestellleitfaden“ [sc_script_order_guide_failure] ab.

    Skriptbeispiel

    Dieses Skript verarbeitet einen Bestellleitfaden namens IT Onboarding SOG.
    // Creating the object to later be JSON encoded 
    var json = {"opened_by":"62826bf03710200044e0bfc8bcbe5df1","requested_for":"06826bf03710200044e0bfc8bcbe5d8a","department":"221f3db5c6112284009f4becd3039cc9"};
     
    var now_GR = new GlideRecord("sc_cat_item_guide");
    if (gr.get("name","IT Onboarding SOG")) {
      var sog = new SNC.ScriptableOrderGuide(gr.getValue("sys_id"));
      var result = sog.process(new JSON().encode(json));
      if(!result)
        gs.log("Processing the scriptable order guide failed with message: " + sog.getMessage());
      else { 
        var request = sog.getRequest();
        gs.log("Request created - " + request.sys_id); } }

    Bestellleitfäden über Workflows ausführen

    Das Ausführen eines Bestellleitfadens über einen Workflow ist geeignet, wenn Sie Bestellleitfäden als Teil eines umfassenderen Workflow-basierten Prozesses einschließen.

    Beispielsweise kann eine Aktivität in einem Onboarding-Workflow für einen neuen Mitarbeiter automatisch einen Bestellleitfaden ausführen, um Artikel für diesen Mitarbeiter zu bestellen.
    Hinweis:
    Wenn Bestellleitfäden automatisch ausgeführt werden, werden die UI-Richtlinien für Bestellleitfäden nicht durchgesetzt. Außerdem können Optionen im Bildschirm „Optionen auswählen“ nicht ausgewählt werden. Stellen Sie daher sicher, dass die Bestellleitfaden-Regeln sinnvolle Standardwerte für diese Optionen definieren, um Verarbeitungsfehler zu vermeiden.
    Verwenden Sie zum Ausführen von Bestellleitfäden über einen Workflow die Workflow-Aktivität Skriptfähiger Auftragsleitfaden.
    Tabelle : 1. Bestellleitfäden über Workflows ausführen
    Feld Beschreibung
    Bestellleitfaden Der Name des Bestellleitfadens, den diese Aktivität verarbeitet. Beispiel: Beispiel für das Onboarding von IT-Mitarbeitern.
    Skript Ein Skript, das Informationen an den Bestellleitfaden übergibt. Diese Informationen werden als JSON-codierter Zeichenfolgenparameter gesendet, der der Variablen answer zugewiesen ist.
    Das Skript muss diese Anforderungen erfüllen:
    • Die Namen der Variablen im Skript müssen mit den im Bestellleitfaden verwendeten Namen übereinstimmen. Wenn der Bestellleitfaden beispielsweise eine Abteilungsvariable in einer Regelbedingung verwendet, muss das Skript auch einen Parameter department übergeben.
    • Die Parameter opened_by und requested_for müssen an den Bestellleitfaden übergeben werden, und beide müssen gültige sys_id-Werte für den Anwenderdatensatz aufweisen.

    Ergebnisse

    • Erfolg: Die Aktivität hat den Bestellleitfaden erfolgreich verarbeitet. Dies bedeutet nicht, dass eine Anforderung erstellt wurde. Wenn eine Anforderung erstellt wurde, wird die sys_id der Anforderung dem Workflow-Scratchpad unter der Variablen sc_request hinzugefügt.
    • Fehler: Während der Verarbeitung des Bestellleitfadens ist ein Fehler aufgetreten, und ein Fehlerdatensatz wurde erstellt. Wenn die Verarbeitung fehlschlägt, können Sie den Fehlerdatensatz anzeigen und bearbeiten.

    Workflow-Beispiel

    Der Workflow Beispiel für das Onboarding von IT-Mitarbeitern verwendet dieses Beispiel, um im Rahmen eines Onboarding-Prozesses IT-Katalogelemente für einen neuen Mitarbeiter zu generieren.

    Die Aktivität verwendet dieses Skript für folgende Aufgaben:
    1. Verwenden einer zuvor generierten JSON-Zeichenfolge aus dem HR-Change Record.
    2. Fügen Sie die obligatorischen Parameter opened_by und requested_for an diese Zeichenfolge an.
    3. Senden der neuen Zeichenfolge zur Verarbeitung durch den Bestellleitfaden.
    var parameters  = new JSON().decode(current.payload);
     
    // Need to amend the json object to include additional values.
    parameters.opened_by = current.opened_by + "";
    parameters.requested_for = current.opened_for + "";
     
    answer = new JSON().encode(parameters);

    Fehler im Bestellleitfaden anzeigen

    Die Verarbeitung des Bestellleitfadens kann fehlschlagen, wenn beispielsweise der ausgeführte Bestellleitfaden nicht existiert. Wenn während der Auftragsabwicklung ein Fehler auftritt, können Sie mit dem Untermodul Fehler skriptfähiger Bestellleitfaden die Fehler überprüfen und erneut verarbeiten. Für jeden Fehler wird ein Datensatz erstellt. Wenn Sie die Fehler behoben haben, die den ersten Fehler verursacht haben, können Sie die fehlgeschlagenen Bestellleitfäden erneut verarbeiten.

    Warum und wann dieser Vorgang ausgeführt wird

    Wenn ein Fehler auftritt, wird in der Tabelle „Fehler im skriptfähigen Bestellleitfaden“ [sc_script_order_guide_failure] ein Fehlerdatensatz erstellt.

    Um Details zu einem Fehler anzuzeigen, navigieren Sie zu Servicekatalog > Katalogverwaltung > Fehler im skriptfähigen Bestellleitfaden, und öffnen Sie dann einen Fehlerdatensatz.

    Fehler bei erneuter Verarbeitung: Wenn Sie den Fehler behoben haben, der den ersten Fehler verursacht hat, können Sie fehlgeschlagene Bestellleitfäden erneut verarbeiten.

    Prozedur

    1. Navigieren zu Servicekatalog > Katalogverwaltung > Fehler im skriptfähigen Bestellleitfaden.
    2. Öffnen Sie den Fehlerdatensatz.
    3. Klicken Sie auf den zugehörigen Link Erneut verarbeiten.
      So verarbeiten Sie einen oder mehrere Fehler erneut:
      1. Navigieren zu Servicekatalog > Katalogverwaltung > Fehler im skriptfähigen Bestellleitfaden.
      2. Aktivieren Sie die Checkbox neben einem oder mehreren Datensätzen, die erneut verarbeitet werden sollen.
      3. Wählen Sie Erneut verarbeiten in der Auswahlliste Aktionen aus.