Schleife springe zurück auf Step

Hallo,


wir fragen uns, wie wir ein abarbeiten einer Schleife im Sinne von einem Zurückspringen in den vorherigen Schritt abarbeiten können. Gibt es dafür ein Beispiel, dir Doku sagt da nichts.

Hallo ennkii,


eine Abarbeitung in einer Schleife ist leider nicht möglich.


Viele Grüße

Torsten

Oje, dann skizziere ich euch mal das Problem, vielleicht gibt es eine simplere von euch sowieso schon angedachte Vorgehensweise.
Ein Post soll an eine SOAP-Schnittstelle gesendet werden mit der Statusabfrage einer Bestellung (GetOrderInfo), die Antwort soll dann verarbeitet werden und der Statuswechsel in den Datastore gespeichert werden. Jedoch gibt es keine Sammel-Spreadsheet-Methode bei dem viele OderIds gesendet werden. Wir hatten dafür den Step "SpreadsheetUrlDownload" vorgesehen, jedoch stehen wir jetzt vor dem Problem keine Schleife. Evtl gibt es einen anderen Step der dafür besser geeignet ist? Oder ein anderer Flow erledigt das unabhängig von dem aktuellen Flow, zeitlich gesteuert aller einer Minute, dass wäre momentan mein einziger Lösungsansatz.

Hallo ennkii,


wir sind uns noch nicht sicher ob wir euer Problem verstanden haben.

Der Ansatz mittels "SpreadsheetURLDownload" sollte ermöglichen das Ihr pro OrderID ein Call ausführen könnt. Mittels der Repsonse könnt ihr die entsprechenden Datensätze im DS umsetzen.



Viele Grüße

Der Synesty Support

Hallo,


ok und dann wird aus der Quelle dem input Spreadsheet zu jeder Zeile ein POST über "SpreadsheetURLDownload" gesendet? Alles klar, wohl ein Denkfehler.


Könnt ihr bitte trotzdem nochmal auf eine ander Schleife eingehen? In "SpreadsheetURLDownload" bzw. dem Feld requestBody soll für einen anderen Call Lines eingehangen werden (pro Oder die Artikel). Dafür müssten wir auf einen anderen Step zugreifen und von dem die Ergebnisse holen, diese dann gefiltert nach der aktuellen OderID ausgeben.

Habt ihr da ein freemaker muster?

Hallo,


so etwas lässt sich realisieren, indem die Datensätze (Order, OrderLines) vorher in einen (Parent-Variant) oder zwei (Master-Child) Datastore importiert werden. Sie können dann im RequestBody über


<#list row.variants() as line></#list>


oder


<#list row.children() as line></#list>


die Positionsdaten angebeben. Sie finden im Benutzerhandbuch unter Spreadsheets -> Auf Relationen zugreifen einige Hinweise dazu. Eine ähnlichen Use-Case finden sie in der plentymarkets openTRANS Auftragsexport Vorlage. Das Skript befindet sich hier im TextHTMLWriterMultiOutput.


Auf das Thema Anbindung von APIs insbesondere der Umgang mit den Steps APICall und SpreadsheetUrlDownload gehen wir auch auf unserer kommenden Schulung am 20.4. ein. Noch gibt es 5 Tickets :)