Gelöst Schleifen in Aktion, wann?

MaxWe

Sehr aktives Mitglied
6. August 2018
311
42
Hamburg
Moin Moin,

leider stoße ich mal wieder an die Grenzen der Workflows. Ich würde für einen einzelnen Auftrag gerne eine Aktion mehrfach ausführen (zbsp. für jede BestellPos), konkret geht es um die Aktion "Datei schreiben". Hier müsste ich eigentlich für jede Pos eine Datei schreiben. Ich könnte jetzt 10x die Aktion Datei schreiben reinhauen und irgendwie regeln, dass die verschiedenen Pos genutzt werden, aber was ist, wenn jemand 11 Pos hat... :D

Gibt es hier von JTL Pläne Schleifen zu integrieren? Vielleicht bereits in der 1.6?
So muss ich nun wieder eine komplizierte Lösung erarbeiten und kann diese auch nicht einfach mit der Community teilen (externe Lösungen nötig).

Grüße
 

Enrico W.

Administrator
Mitarbeiter
27. November 2014
8.218
1.608
Ist nicht geplant. Darf ich fragen, was es für ein Anwendungsszenario dafür gibt?
Es fällt uns gerade schwer, eine Notwendigkeit für 10 Dateien pro Auftrag o.ä. zu sehen.
 

MaxWe

Sehr aktives Mitglied
6. August 2018
311
42
Hamburg
In meinem Fall geht es darum, dass wir die Amazon Customize Daten in .json Dateien brauchen und dabei soll/muss jede Position eine eigene Datei haben. Diese Jsons werden in unserer Produktion benötigt.
 

sjk

Sehr aktives Mitglied
16. Januar 2019
364
130
Nur ne spontane Idee, aber ich denke das könnte man über die cmd line lösen! ( Workflow-Aktion --> Ausführen) Wenn es funktioniert wie ich mir das vorstelle hättest du einen einzigen cmd und damit jede beliebige Anzahl Positionen abgedeckt.

Man kann in cmds ja auch for-Schleifen bauen und damit eine Datei je Position erzeugen. Als einfacher proof of idea habe ich hier mal zwei Schleifen geschachtelt. Die erste Schleife ist für eine fortlaufende Nummerierung der Dateien, die zweite soll alle json-Inhalte enthalten und dann die Dateien befüllen (zum Testen mal die Artikelnummer).
for /l %A in (1,1,{{ Vorgang.AuftragsPositionen.ArtikelPositionen.Anzahl }}) do (for %B in ({% for Pos in Vorgang.AuftragsPositionen.ArtikelPositionen -%}{{ Pos.Artikelnummer }},{% endfor -%}) do (echo %B > [Speicherpfad]%A_Prod_{{ Vorgang.Stammdaten.Auftragsnummer }}.txt))

Was sind denn deine Anforderungen? Hab wenig Ahnung von json und null von Amazon Customize. Was muss ins json rein und wie liegen diese Daten vor? Kann das alles auf eine Zeile oder muss es "schön" json-formatiert sein? Wie sollen die Dateien benannt sein? Habt ihr nur customized Positionen oder muss man noch filtern?

cmd-line Schleifen
json Formatierung falls benötigt