Erstellen Sie eine benutzerdefinierte Aktion, um ein Array von Objekten aus einer Liste von Datensätzen zu generieren

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 4 Minuten Lesedauer
  • Generiert ein Array von Objekten aus einer Liste von Benutzerdatensätzen. Erfahren Sie, wie Sie mit einem Skriptschritt eine Liste von Datensätzen durchlaufen.

    Vorbereitungen

    Erforderliche Rolle: admin

    Warum und wann dieser Vorgang ausgeführt wird

    Verwenden Sie dieses Beispiel, um Demonstrationen dieser Vorgänge und Schritte anzuzeigen.
    • Erstellen Sie eine Aktionseingabe für einen Abteilungsdatensatz.
    • Sucht nach maximal drei Benutzerdatensätzen für die Aktionseingabe Abteilung.
    • Konfigurieren Sie einen Skriptschritt, um eine Liste von Benutzerdatensätzen zu verarbeiten.
    • Erstellen Sie eine Skripteingabevariable, die die Liste der Benutzerdatensätze enthält.
    • Schreiben Sie ein Skript, das ein leeres Kontakt-Array erstellt.
    • Schreiben Sie ein Skript, das die Liste der Benutzerdatensätze durchläuft.
    • Schreiben Sie ein Skript, das ein Kontaktobjekt erstellt und Benutzerdatensatz-Feldwerte dem Kontaktobjekt zuordnet.
    • Schreiben Sie ein Skript, das das Kontakte-Array mit dem aktuellen Kontaktobjekt ausfüllt.
    • Erstellen Sie Skriptausgabevariablen für das Kontakte-Array und das untergeordnete Kontaktobjekt.
    • Speichern Sie das Kontaktobjekt als Vorlage.
    • Generiertes Kontakt-Array von Objekten als Datenpille ausgeben.
    • Testen Sie die Aktion mit einer Beispielabteilung.

    Prozedur

    1. Erstellen Sie eine Anwendung, um Ihre Arbeit zu speichern.
      Verwenden Sie den geführten App-Creator.
      Erstellen Sie beispielsweise Meine Anwendung.
    2. Navigieren zu Alle > Prozessautomatisierung > Flow Designer.
      Das System zeigt die Zielseite Flow Designer an.
    3. Auswahlvorgang Neu > Aktion
      Das System zeigt das Dialogfeld „Aktionseigenschaften“ an.
    4. Geben Sie diese Beispielwerte ein.
      Feld Wert
      Name Erstellt ein Kontakt-Array von Objekten
      Anwendung Meine Applikation
      Zugänglich von Alle Applikationsumfänge
    5. Wählen Sie Absenden aus.
      Das System zeigt die Schnittstelle Aktionsdesigner an.
    6. Wählen Sie in der Aktionsgliederung Eingaben > Eingabe erstellen
      Das System zeigt eine neue Aktionseingabe an.
    7. Konfigurieren Sie die Aktionseingabe mit diesen Werten.
      Feld Wert
      Bezeichnung Abteilung
      Typ Referenz.Abteilung [Reference.cmn_department]
      Obligatorisch Wahr
    8. Wählen Sie in der Aktionsgliederung die Option Neuen Schritt hinzufügenaus.
      Das System zeigt eine Liste der verfügbaren Schritte an.
    9. Wählen Sie Datensätze suchen aus
    10. Konfigurieren Sie den Schritt mit diesen Werten.
      Feld Wert
      Tabelle Benutzer [sys_user]
      Bedingungen [Abteilung][ist][Aktion->Abteilung]
      Reihenfolge nach Name
      Sortiertyp A bis Z
      Max. Ergebnisse 3
      Hinweis:
      In diesem Beispiel wird die Einstellung Max. Ergebnisse nur zu Demonstrationszwecken auf drei Datensätze beschränkt.
    11. Wählen Sie in der Aktionsgliederung die Option Neuen Schritt hinzufügenaus.
      Das System zeigt eine Liste der verfügbaren Schritte an.
    12. Wählen Sie Skript aus.
    13. Wählen Sie für Erforderliche Laufzeitdie Option Instanzaus.
    14. Wählen Sie im Abschnitt Eingabevariablen die Option Variable erstellenaus.
    15. Konfigurieren Sie die Eingabevariable mit diesen Werten.
      Feld Wert
      Name userRecords
      Wert [Schritt->Datensätze suchen Schritt->Benutzerdatensätze]
      Hinweis:
      Sie können die Datenpille Benutzerdatensätze im Datenbereich oder über die Schaltfläche Datenpillenauswahl auswählen.
    16. Geben Sie für Skriptden folgenden Text ein.
      (function execute(inputs, outputs) {
        //Create an empty array
        var contactsArray = [];
        var i = 0;
        //Iterate through the list of User records
        while(inputs.userRecords.next()) {
          //Create an empty object for each iteration
          var contactObject = {};
          //Query User records to assign object values
          contactObject.first_name = inputs.userRecords.getValue('first_name');
          contactObject.last_name = inputs.userRecords.getValue('last_name');
          contactObject.email_address = inputs.userRecords.getValue('email');
          //Add current object to array
          contactsArray[i] = contactObject;
          i += 1;
        }
        outputs.contacts = contactsArray;
      })(inputs, outputs);
    17. Wählen Sie unter Ausgabevariablen die Option Variable erstellenaus.
    18. Konfigurieren Sie die Ausgabevariable mit diesen Werten.
      Bezeichnung Name Typ Obligatorisch
      Kontakte Kontakte Array.Object Wahr
    19. Erweitern Sie die Kontakte Array.Object, und benennen Sie das untergeordnete Element in Kontakt um.
    20. Wählen Sie in der Zeile für das Kontaktobjekt die Option Untergeordnetes Element hinzufügenaus.
    21. Konfigurieren Sie das untergeordnete Element mit diesen Werten.
      Bezeichnung Name Typ Obligatorisch
      Vorname first_name Zeichenfolge Wahr
    22. Wählen Sie in der Zeile für das Kontaktobjekt die Option Untergeordnetes Element hinzufügenaus.
    23. Konfigurieren Sie das untergeordnete Element mit diesen Werten.
      Bezeichnung Name Typ Obligatorisch
      Nachname last_name Zeichenfolge Wahr
    24. Wählen Sie in der Zeile für das Kontaktobjekt die Option Untergeordnetes Element hinzufügenaus.
    25. Konfigurieren Sie das untergeordnete Element mit diesen Werten.
      Bezeichnung Name Typ Obligatorisch
      E-Mail-Adresse email_address Zeichenfolge Wahr
    26. Wählen Sie in der Zeile für das Kontaktobjekt Toggle Advanced Inputs(Erweiterte Eingaben umschalten) aus.
    27. Wählen Sie in den erweiterten Optionen die Option Als Vorlage speichernaus.
      Das System zeigt das Dialogfeld „Als Vorlage speichern“ an.
    28. Geben Sie für Enter a Name(Name eingeben) contactein.
    29. Klicken Sie auf Speichern.
    30. Wählen Sie in der Aktionsgliederung Ausgaben > Ausgabe erstellen.
    31. Konfigurieren Sie die Aktionsausgabe mit diesen Werten.
      Bezeichnung Name Typ Obligatorisch
      Kontakte Kontakte Array.Object Wahr
    32. Erweitern Sie die Kontakte Array.Object.
    33. Wählen Sie in der Zeile für das Kontaktobjekt Toggle Advanced Inputs(Erweiterte Eingaben umschalten) aus.
    34. Wählen Sie in den erweiterten Optionen aus Struktur > Aus Vorlage starten.
      Das System zeigt Vorlagean.
    35. Wählen Sie für Vorlagedie Vorlage aus, die Sie zuvor gespeichert haben.
      Wählen Sie beispielsweise Meine Anwendung: Kontaktaus.
    36. Wählen Sie Bearbeitungsmodus beenden.
      Das System zeigt die von Ihnen erstellten Ausgabefelder an.
    37. Wählen Sie für Kontakte[step->Script step->contacts]aus.
      Hinweis:
      Sie können die Datenpille Skriptschrittkontakte im Datenbereich oder über die Schaltfläche Datenpillenauswahl auswählen.
    38. Klicken Sie auf Speichern.
    39. Wählen Sie Testaus.
      Das System zeigt das Dialogfeld „Testaktion“ an.
    40. Geben Sie den folgenden Testwert ein:
      Eingabe Wert
      Abteilung Entwicklung
    41. Wählen Sie Test ausführen.
      Das System führt die Aktion mit den angegebenen Testwerten aus.
    42. Wählen Sie aus. Ihr Test wurde ausgeführt. Zeigen Sie die Ausführungsdetails der Aktion an.
      Das System zeigt die Ausführungsdetails der Aktion an.
    43. Überprüfen Sie den Laufzeitwert für die Aktion Ausgabedaten.
      Das System zeigt Ausgabedaten im JSON-Format an.
      In diesem Beispiel enthält das Kontakte-Objekt ein Array von Kontaktobjekten mit Vorname, Nachname und E-Mail-Informationen für drei Benutzer in der Entwicklungsabteilung.
      {
          "contacts": 
              "contact": [
                  {
                      "email_address": "allyson.gillispie@example.com",
                      "first_name": "Allyson",
                      "last_name": "Gillispie"
                  },
                  {
                      "email_address": "alva.pennigton@example.com",
                      "first_name": "Alva",
                      "last_name": "Pennigton"
                  },
                  {
                      "email_address": "andrew.och@example.com",
                      "first_name": "Andrew",
                      "last_name": "Och"
                  }
              ]
          }
      }
      

    Ergebnisse

    Sie haben eine benutzerdefinierte Aktion, die die Benutzer für eine bestimmte Abteilung sucht und diese Benutzer in ein Array von Kontaktobjekten konvertiert.

    Nächste Maßnahme

    Passen Sie diese Aktion an, um Ihre eigene Logik zu verwenden.