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

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 5 Minuten Lesedauer
  • Generieren Sie ein Array von Objekten aus einer Liste von Anwenderdatensätzen. Erfahren Sie, wie Sie mit einem Skriptschritt eine Liste der Datensätze durchlaufen.

    Vorbereitungen

    Erforderliche Rolle: admin von flow_designer

    Warum und wann dieser Vorgang ausgeführt wird

    Verwenden Sie dieses Beispiel, um sich Demonstrationen dieser Vorgänge und Schritte anzusehen.
    • Erstellt eine Aktionseingabe für einen Abteilungsdatensatz.
    • Suchen Sie nach maximal drei Anwenderdatensätzen für die Aktionseingabe „Abteilung“.
    • Konfigurieren Sie einen Skriptschritt, um eine Liste von Anwenderdatensätzen zu verarbeiten.
    • Erstellen Sie eine Skripteingabevariable, die die Liste der Anwenderdatensätze enthält.
    • Schreiben Sie ein Skript, das ein leeres Kontakt-Array erstellt.
    • Schreiben Sie ein Skript, das die Liste der Anwenderdatensätze durchläuft.
    • Schreiben Sie ein Skript, das ein Kontaktobjekt erstellt und dem Kontaktobjekt Feldwerte für den Anwenderdatensatz zuordnet.
    • Schreiben Sie ein Skript, das das Kontakt-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.
    • Geben Sie das generierte Kontakte-Array von Objekten als Datenpille aus.
    • Testen Sie die Aktion mit einer Beispielabteilung.

    Prozedur

    1. Wahlweise: Erstellen Sie eine Anwendung zum Speichern Ihrer Arbeit.
      Mit App Engine Studio können Sie Anwendungen planen, erstellen und bereitstellen. Weitere Informationen zum Erstellen einer anwenderdefinierten Anwendung finden Sie unter Building apps in App Engine Studio.
      Erstellen Sie beispielsweise eine Anwendung mit der Bezeichnung My Application (Meine Anwendung).
    2. Navigieren zu Alle > Prozessautomatisierung > Workflow-Studio.
    3. Wählen Sie auf der Homepage Aktionen.
    4. Auswahlvorgang Neu > Aktion
      Das System zeigt das Dialogfeld Aktionseigenschaften an.
    5. Geben Sie diese Beispielwerte ein.
      Feld Wert
      Name Kontakt-Array von Objekten erstellen
      Anwendung Global
      Zugänglich von Nur dieser Applikationsumfang
      Hinweis:
      Wenn Sie eine Anwendung zum Speichern und Bereitstellen Ihrer anwenderdefinierten Aktion erstellt haben, verwenden Sie diese Anwendung anstelle der globalen.
    6. Wählen Sie Build-Aktionaus.
      Das System zeigt die Schnittstelle Workflow-Studio an.
    7. Wählen Sie in der Aktionsgliederung die Option aus Eingaben > Eingabe erstellen
      Das System zeigt eine neue Aktionseingabe an.
    8. Konfigurieren Sie die Aktionseingabe mit diesen Werten.

      Erstellen Sie eine Aktionseingabe, die einen Abteilungsdatensatz speichert.

      Feld Wert
      Bezeichnung Abteilung
      Typ Referenz.Abteilung [Reference.cmn_department]
      Obligatorisch Wahr
    9. Wählen Sie in der Aktionsgliederung die Option Neuen Schritt hinzufügen aus.
      Das System zeigt eine Liste der verfügbaren Schritte an.
    10. Wählen Sie Datensätze suchen aus
    11. Konfigurieren Sie den Schritt mit diesen Werten.

      Konfigurieren Sie die Schrittbedingung „Datensätze nachschlagen“ so, dass die Eingabevariable „Abteilung“ verwendet wird.

      Feld Wert
      Tabelle Benutzer [sys_user]
      Bedingungen [Abteilung][ist][Aktion->Abteilung]
      Hinweis:
      Wählen Sie die Datenpille Abteilung aus den Eingabevariablen aus.
      Anordnen 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.
    12. Wählen Sie in der Aktionsgliederung die Option Neuen Schritt hinzufügen aus.
      Das System zeigt eine Liste der verfügbaren Schritte an.
    13. Wählen Sie Skriptaus.
    14. Wählen Sie im Abschnitt Eingabevariablen die Option Variable erstellen aus.
    15. Konfigurieren Sie die Eingabevariable mit diesen Werten.

      Konfigurieren Sie die Schritteingabevariable Skript so, dass die Datenpille „Benutzerdatensätze“ aus dem Schritt „Datensätze nachschlagen“ verwendet wird.

      Feld Wert
      Name userRecords
      Wert [Schritt->Datensätze suchen Schritt->Benutzerdatensätze]
      Hinweis:
      Wählen Sie im Schritt „Datensätze nachschlagen“ die Datenpille „Benutzerdatensätze“ aus.
      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 erstellen aus.
    18. Konfigurieren Sie die Ausgabevariable mit diesen Werten.

      Erstellen Sie ein Array von Objekten, die als Kontakte bezeichnet werden. Erstellen Sie innerhalb des Arrays ein Objekt mit der Bezeichnung „Kontakt“. Erstellen Sie im Kontaktobjekt drei Zeichenfolgenvariablen für Vorname, Nachname und E-Mail-Adresse.

      Bezeichnung Name Typ Obligatorisch
      Kontakte Kontakte Array.Object wahr
    19. Erweitern Sie das Array.Object „Kontakte“, und benennen Sie das untergeordnete Objekt in Kontakt um.
    20. Wählen Sie in der Zeile für das Kontaktobjekt das Symbol „Untergeordnetes Element hinzufügen“.
    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 das Symbol „Untergeordnetes Element hinzufügen“.
    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 das Symbol „Untergeordnetes Element hinzufügen“.
    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 Erweiterte Eingaben ein/aus.
    27. Wählen Sie in den erweiterten Optionen die Option Als Vorlage speichern aus.
      Das System zeigt das Dialogfeld „Als Vorlage speichern“ an.
    28. Geben Sie für Geben Sie einen Namen einden Kontaktein.
      Speichern Sie die Objektvorlage unter dem Namen Kontakt.
    29. Klicken Sie auf Speichern.
    30. Wählen Sie in der Aktionsgliederung die Option aus Ausgaben > Ausgabe erstellen.
    31. Konfigurieren Sie die Aktionsausgabe mit diesen Werten.

      Erstellen Sie eine Aktionsausgabe mit der Bezeichnung „Kontakte“, um ein Array von Objekten zu speichern.

      Bezeichnung Name Typ Obligatorisch
      Kontakte Kontakte Array.Object wahr
    32. Erweitern Sie das Array.Object für Kontakte.
    33. Wählen Sie in der Zeile für das Kontaktobjekt Erweiterte Eingaben ein/aus.
    34. Wählen Sie in den Erweiterten Optionen die Option aus Struktur > Aus Vorlage starten.
      Das System zeigt Vorlagean.
    35. Wählen Sie für Vorlagedie zuvor gespeicherte Vorlage aus.
      Wählen Sie beispielsweise Global: contact (Global: Kontakt)aus.
    36. Wählen Sie Bearbeitungsmodus beenden aus.
      Das System zeigt die von Ihnen erstellten Ausgabefelder an.
    37. Wählen Sie für Kontakte[step->Script step->contacts]aus.

      Konfigurieren Sie die Aktionsausgabevariable so, dass die Kontaktdatenpille aus dem Skriptschritt verwendet wird.

      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:

      Wählen Sie die Entwicklungsabteilung aus, um Ihre Aktion zu testen.

      Eingabe Wert
      Abteilung Entwicklung
    41. Wählen Sie Test ausführen.
      Das System führt die Aktion mit den bereitgestellten Testwerten aus.
    42. Wählen Sie aus. Die Ausführung des Tests wurde abgeschlossen. Zeigen Sie die Details der Aktionsausführung an.
      Das System zeigt die Details der Aktionsausführung an.
    43. Überprüfen Sie den Laufzeitwert für die Aktion Ausgabedaten.

      Seite mit Ausführungsdetails für die Testergebnisse Ihrer anwenderdefinierten Aktion.

      Obwohl die Ausführungsdetails die Ausgabedaten als Zeichenfolge im JSON-Format anzeigen, ist der tatsächliche Ausgabedatentyp ein Array von Objekten. Wenn Sie eine Zeichenfolgenversion Ihrer Ausgabe benötigen, können Sie das Objekt mit der JSON-Klasse in eine Zeichenfolge konvertieren. Weitere Informationen zum Konvertieren eines JSON-Objekts in eine Zeichenfolge finden Sie unter Scoped JSON - stringify(Object jsonObject).
      In diesem Beispiel enthält das Kontaktobjekt 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 anwenderdefinierte Aktion, die nach den Anwendern für eine bestimmte Abteilung sucht und diese Anwender in ein Array von Kontaktobjekten konvertiert.

    Nächste Maßnahme

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