Übung 02

Ziel: In dieser Übung baust du zwei Workflows, die Daten aus unterschiedlichen Quellen abrufen. Du wirst den Xentral-Konnektor für interne Daten und den REST-Konnektor für externe Daten verwenden. Im zweiten Teil implementierst du eine Schleife, um eine paginierte API vollständig auszulesen.

Voraussetzungen:

  • Eine funktionierende Xentral Connect Instanz, die mit einer Xentral Demoinstanz verbunden ist (Setup aus Lab 1).

Lab 2: Der Datensammler – Xentral & Externe APIs anzapfen


Teil 1: Xentral-Artikel abrufen

Szenario: Du benötigst eine Liste aller Artikel aus Xentral, um sie später in einem anderen System zu verarbeiten.

1

Workflow erstellen

Erstelle einen neuen Workflow mit dem Namen M02-Lab-Get-Articles.

2

Xentral-Konnektor hinzufügen

  • Füge einen Xentral-Knoten hinzu.

  • Konfiguriere ihn wie folgt:

    • Ressource: article

    • Operation: list

3

Workflow testen und Ergebnis prüfen

  • Speichere, aktiviere und teste den Workflow.

  • Gehe in die Lenses/Logs und prüfe das Ergebnis.

Erwartetes Ergebnis

  • Der Workflow läuft erfolgreich durch.

  • Im Output des Xentral-Knotens siehst du ein JSON-Array. Jedes Objekt in diesem Array repräsentiert einen Artikel aus deiner Xentral-Demoinstanz und enthält Felder wie name, nummer, preis, etc.

Beispiel-Ausschnitt aus dem Log:

[
  {
    "id": 1,
    "nummer": "ART-0001",
    "name": "Beispielartikel 1",
    "projekt": 1,
    ...
  },
  {
    "id": 2,
    "nummer": "ART-0002",
    "name": "Beispielartikel 2",
    "projekt": 1,
    ...
  }
]

Teil 2: Externe Produktdaten mit Pagination abrufen

Szenario: Du sollst alle Produkte von der öffentlichen Test-API dummyjson.com abrufen. Die API liefert standardmäßig nur 30 von insgesamt 100 Produkten zurück. Du musst also Pagination implementieren, um alle Produkte zu erhalten.

1

Workflow erstellen

Erstelle einen neuen Workflow mit dem Namen M02-Lab-Get-All-Products.

2

Schleife initialisieren

  • Füge einen Loop-Knoten (Schleife) hinzu. Wähle den Typ "For Loop" (Zählschleife).

  • Wir wissen, dass es 100 Produkte gibt und die API 30 pro Seite liefert. Wir brauchen also 4 Durchläufe (100 / 30 = 3.33 -> aufgerundet 4).

  • Konfiguriere die Schleife, um von 0 bis 3 zu laufen.

3

REST-Konnektor in der Schleife konfigurieren

  • Ziehe einen REST Request-Knoten in die Schleife.

  • URL: https://dummyjson.com/products

  • Query Parameters:

    • limit = 30

    • skip = dynamisch: füge eine Expression hinzu (Zahnrad → Add Expression) und nutze die Schleifendaten: {{$node["Loop"].context["index"] * 30}}

    • Die Expression berechnet den Offset (0, 30, 60, 90) für die vier Durchläufe.

4

Ergebnisse sammeln (optional, empfohlen)

  • Füge nach dem REST-Request einen Set-Knoten hinzu, um die Produkte aus jedem Durchlauf an eine Liste anzuhängen.

  • Für den Anfang reicht es, die Ergebnisse in den Logs zu beobachten.

5

Workflow testen

  • Speichere, aktiviere und teste den Workflow.

Erwartetes Ergebnis

  • Der Workflow führt die Schleife 4-mal aus.

  • In den Lenses/Logs siehst du 4 Ausführungen des REST-Request-Knotens.

  • Im Input des REST-Knotens ändert sich der skip-Parameter: 0, 30, 60, 90.

  • Der Output jedes REST-Requests enthält ein anderes Set von 30 Produkten.

Musterlösung (vereinfacht)

Hier die Logik als Diagramm:


Cleanup

Die erstellten Workflows können für spätere Referenz in der Instanz verbleiben. Es ist kein Cleanup notwendig.

Was this helpful?