Voor elke loop (itereren)

De actie Voor elke-loop (herhalen) voert stappen uit voor elk artikel in een lijst, wanneer die actie is verbonden met de optie Voor elk artikel herhalen. Deze actie werkt alleen op lijsten, zoals orderregels in een bestelling, of lijsten die worden geretourneerd door acties van het type Gegevens ophalen, zoals Collectiegegevens ophalen, Klantgegevens ophalen of Productgegevens ophalen.

Nadat je de actie Voor elke-loop (herhalen) hebt toegevoegd, moet je extra stappen configureren voor hoe de loop elk artikel in de opgegeven lijst herhaalt. In tegenstelling tot de Waar/Onwaar-vertakking van voorwaarden, heeft de actie Voor elke-loop (herhalen) een gedefinieerde volgorde van bewerkingen voor de vertakkingen:

  1. De vertakking Voor elk artikel herhalen vindt als eerste plaats en herhaalt de stappen die moeten worden uitgevoerd voor elke vermelding in de lijst. De acties in deze vertakking vinden net zo vaak plaats als het aantal artikelen in de opgegeven lijst.
  2. De vertakking Na laatste artikel vindt als laatste plaats en hiermee kun je stappen definiëren om de workflow voort te zetten. Deze stap wordt uitgevoerd nadat alle acties die door Voor elk artikel herhalen voor elk artikel in de lijst zijn uitgevoerd, zijn voltooid.

Je maakt bijvoorbeeld een workflow aan die elke maandag wordt uitgevoerd. De workflow gebruikt de actie Bestelgegevens ophalen om bestellingen op te halen die in die week zijn geplaatst. De Voor elke-loop (herhalen) past vervolgens de tag Nieuwe bestelling toe op elke bestelling die wordt geretourneerd door de lijst getOrderData. Nadat alle bestellingen in de lijst zijn getagd, wordt er een interne e-mail verzonden die aangeeft dat het taggen is voltooid.

Voorbeeld van een workflow die een lijst ophaalt met bestellingen die in de afgelopen week zijn geplaatst, een tag toevoegt aan elke bestelling en vervolgens een e-mail verzendt.

Aandachtspunten voor het gebruik van de actie Voor elke-loop (herhalen)

Neem de volgende aandachtspunten door voordat je de actie Voor elke-loop (herhalen) gebruikt:

  • De lijst die je gebruikt in de actie Voor elke-loop (herhalen) mag niet meer dan 1.000 artikelen bevatten. Als de geselecteerde lijst meer dan 1.000 artikelen bevat, mislukt de workflow en worden alle acties na de actie Voor elke-loop (herhalen) niet uitgevoerd.
  • De volgende acties kunnen niet volgen op Voor elk artikel herhalen:
    • De actie Wachten.
    • Elke actie van het type Gegevens ophalen, zoals Bestelgegevens ophalen.
    • De actie Code uitvoeren.
  • Je kunt slechts 1 actie Voor elke-loop (herhalen) nesten binnen een andere actie Voor elke-loop (herhalen).

Velden

De actie Voor elke-loop (herhalen) bevat de volgende velden.

Velden die worden gebruikt in de actie 'Voor elke'.
VeldBeschrijving
LijstVereist. De lijst met artikelen waarop een actie moet worden uitgevoerd. Dit kan bijvoorbeeld een lijst zijn die wordt geretourneerd door een actie Gegevens ophalen of Code uitvoeren, of een lijst die wordt geretourneerd door een trigger, zoals een lijst met orderregels die worden geretourneerd door de trigger Bestelling aangemaakt.

Wanneer je een variabele selecteert, worden alleen array-objecten ([]) als selecteerbare opties weergegeven.

Triggers

De actie Voor elke-loop (herhalen) kan in elke workflow worden gebruikt.

Workflows controleren

Nadat een workflow is uitgevoerd, kun je de prestaties ervan bekijken op de pagina Activiteit van Shopify Flow. Het volgende geldt voor workflows die de actie Voor elke loop (itereren) bevatten:

  • De secties Status en Actie zijn van toepassing op alle acties die worden uitgevoerd door de actie Voor elke loop (itereren).
  • In het workflow-voorbeeld wordt aangegeven hoeveel artikelen in de loop een bepaald pad hebben gevolgd.
  • De sectie Run-gegevens, inclusief het voorbeeld van de workflow, geeft de resultaten van elke loop-iteratie weer. Gebruik het menu Artikel in de stapgegevens van de run om resultaten te filteren op uitgevoerde acties en fouten om zo snel problemen met loops op te lossen.

Voorbeeld van de stapgegevens voor een recente run met een 'Voor elke loop'. De voorbeeld-stapgegevens markeren het menu 'Artikelen', waarmee je kunt kiezen voor welk van de 7 artikelen je de stapgegevens wilt bekijken.

Templates

Orderregels toevoegen aan Google Sheets bij nieuwe bestellingen

Wanneer een nieuwe bestelling wordt aangemaakt, doorloopt een stap Voor elke loop (itereren) in een workflow elke orderregel om de productgegevens toe te voegen aan een rij in Google Sheets. Template bekijken.

Producten met een tag in de toekomst aan een collectie toevoegen

Op een later tijdstip alle producten met een bepaalde tag ophalen en deze vervolgens toevoegen aan een collectie. Template bekijken.

Bestellen toestaan voor bedrijven die zijn aangemaakt via aanvragen voor een bedrijfsaccount

Een besteltoestemming toewijzen wanneer een bedrijf wordt aangemaakt via een aanvraag voor een bedrijfsaccount. Template bekijken.

Bestellingen annuleren als een klant vandaag meer dan 5 bestellingen heeft geplaatst

Annuleert bestellingen als een klant meer dan 5 bestellingen binnen één dag plaatst. De workflow controleert het aantal bestellingen dat een klant in de afgelopen 24 uur heeft geplaatst en annuleert alle bestellingen die deze limiet overschrijden, waarbij de klant wordt getagd wegens mogelijke fraude. Template bekijken.

Een klantmetaveld omzetten in tags voor alle klanten

Deze workflow vult tags aan voor al je klanten op basis van een metaveldwaarde. De workflow wordt elk uur uitgevoerd en haalt maximaal 100 klanten op die geen processed-tag hebben. Voor elke klant wordt de waarde van een custom.test-metaveld bekeken en als tag toegevoegd. De workflow voegt ook een processed-tag toe, zodat de klant niet wordt geretourneerd in de volgende geplande run van de workflow. Om de workflow te gebruiken, moet je de naamruimte en sleutel van het metaveld wijzigen zodat deze overeenkomen met een metaveld in je winkel. Template bekijken.

Inactieve klanten verwijderen

Klantprofielen verwijderen die ouder zijn dan 5 jaar en nog nooit een bestelling hebben geplaatst. Template bekijken.

Inactieve producten verwijderen

Producten zonder voorraad verwijderen die al een jaar niet zijn bijgewerkt. Template bekijken.

Digitale artikelen in een bestelling afhandelen

Handelt alle artikelen af waarvoor geen fysieke bezorging nodig is, zoals digitale artikelen, of die overeenkomen met een lijst met SKU's. Wordt één keer uitgevoerd voor elke fulfilmentlocatie (de 'fulfilmentbestelling') voor een nieuwe bestelling. Template bekijken.

Fulfilments pauzeren als een klant binnen 24 uur meerdere bestellingen heeft geplaatst

Controleert of een klant meerdere bestellingen heeft geplaatst binnen een periode van 24 uur. Als dat zo is, worden de fulfilments gepauzeerd en wordt de verzending geconsolideerd. Template bekijken.

Bestellingen pauzeren als een klant in de afgelopen 24 uur meer dan 1 bestelling heeft geplaatst

Wanneer een bestelling wordt aangemaakt, wordt gecontroleerd of de klant in de afgelopen 24 uur nog andere bestellingen heeft geplaatst. Als dat zo is, worden alle bestellingen gepauzeerd. Template bekijken.

Producten met een bepaalde tag in de toekomst publiceren

Op een datum in de toekomst worden producten met een bepaalde tag opgehaald en gepubliceerd. Deze workflow gebruikt de trigger Geplande tijd en de actie Productgegevens ophalen. Template bekijken.

Fulfilmentpauze voor omruilartikelen vrijgeven wanneer de retourzending is gesloten

Wanneer een retourzending wordt gesloten, wordt gecontroleerd of er een openstaand saldo op de bestelling is. Als er geen bestelsaldo is, worden de omruilartikelen vrijgegeven. Template bekijken

Tag 'nieuw' verwijderen 90 dagen nadat een product is aangemaakt

Elke dag haalt de workflow maximaal 100 producten op die meer dan 90 dagen geleden zijn aangemaakt en die nog steeds de tag nieuw hebben. De workflow verwijdert die tags vervolgens voor elk product. Template bekijken.

Producten inplannen voor verwijdering uit de webshop op een specifieke datum en tijd

Op één enkele datum in de toekomst worden producten uit de webshop verwijderd op basis van tag, ID of SKU. Maakt gebruik van de trigger Geplande tijd en de actie Productgegevens ophalen. Template bekijken.

Factuur voor B2B-bestelling naar meerdere e-mailadressen verzenden

Verzendt facturen voor B2B-bestellingen naar meerdere e-mailadressen. Dit maakt gebruik van de e-mailadressen die zijn opgeslagen als metavelden op een bedrijfslocatie, als ze bestaan, of maakt eerst 3 metavelden aan (extra_invoice_recipient.email1, .email2 en .email3) als ze nog niet bestaan. Template bekijken.

Bestelling en orderregels naar Google Sheets verzenden

Voegt elke orderregel als een rij toe aan Google Sheets. Template bekijken.

Te late fulfilments taggen en een dagelijks overzicht verzenden

Tagt en verzendt elke dag een dagelijks e-mailoverzicht met het totale aantal en de dollarwaarde van alle bestellingen die niet voldoen aan een verzendgarantie van 2 dagen. Template bekijken.

Klanten met een terugboeking taggen

Elk uur haalt deze workflow bestellingen met terugboekingen op en voegt een tag toe aan de klant van de bestelling. Maakt gebruik van de trigger Geplande tijd en de actie Bestelgegevens ophalen. Template bekijken.

Bestellingen taggen met de bijbehorende UTM-campagne

Voegt tags toe aan bestellingen die de namen van bijbehorende UTM-campagnes bevatten. Template bekijken.

Openstaande bestellingen taggen die ouder zijn dan 2 dagen

Elke dag haalt de workflow alle openstaande bestellingen op die ouder zijn dan 2 dagen en voegt een tag toe aan de bestelling. Template bekijken.

Productvarianten in de uitverkoop volgen met een productmetaveld

Stelt een metaveld in voor een product als ten minste één van de varianten ervan in de uitverkoop is. Dit kan handig zijn om te volgen welke producten in de uitverkoop zijn. Template bekijken.