Hvis du vil kjøre en kommando eller kommandogruppe i en kjede gjentatte ganger, setter du opp en iterator.
Merk: For å konvertere en utdata fra en relasjonsdatabase eller ekstern webtjeneste til en JSON-array som skal brukes med en iterator, bruker du JSON-kontaktens CSV til JSON -kommando eller en JSON-variabeltransformasjon.
Sett opp en iterator
Med en iterator kan du gjenta en kommando eller en gruppe basert på:
- En statisk eller dynamisk liste med verdier
- Et eksakt antall verdier
- Basert på om det foreligger en tilstand
En iterator kan gjenta en kommando eller gruppe over:
- En statisk liste med verdier, for eksempel regioner eller enheter
- En dynamisk eller variabel liste med verdier, for eksempel fra en fil som er lastet opp som en arbeidsområde-ressurs, eller utdata fra en kommando tidligere i kjeden
Merk: En kommando eller gruppe er begrenset til 1000 iterasjoner.
Slik kjører du en iterator over en liste med verdier:
- I kjeden velger du kommandoen eller gruppen som skal kjøres gjentatte ganger, og klikker på Edit .
- På Iterations -fanen aktiverer du Iterator .
- I Velg modifikatortype, velg Liste.
- Skriv inn verdiene for iterasjonene:
- For en statisk liste skriver du inn verdien for hver iterasjon, og trykker på Enter etter hver iterasjon.
- For en dynamisk -liste på velger du utdataene fra den tidligere kommandoen med verdiene du vil bruke.
- For en statisk liste skriver du inn verdien for hver iterasjon, og trykker på Enter etter hver iterasjon.
En iterator kan gjenta en kommando eller gruppe over et eksakt antall verdier, for eksempel en sum av sider som er skrevet ut fra en kommando tidligere i kjeden.
Trinn 1. Sett opp en variabel for tallverdien
Opprett en dynamisk kjedevariabel for å angi antall iterasjoner:
- I kjeden legger du til en dynamisk variabel for antall iterasjoner, for eksempel Counter, uten startverdi.
- For å angi variabelens startverdi når kjeden kjøres, etter kommandoen som skriver ut antall iterasjoner, legg til en Set dynamic chain variable hendelse:
- Velg den dynamiske variabelen som er opprettet for antall iterasjoner.
- I Value, og skriv inn startverdien, for eksempel 1.
Trinn 2. Legg til en kommandogruppe
Legg til en kommandogruppe for å angi kommandoene som skal itereres, og iterasjonsregelen:
- Etter hendelsen Angi dynamisk kjedevariabel, legg til Kommandogruppe, og dra en kobling mellom dem.
- Velg gruppen, og klikk på Rediger.
- På gruppens Iterations -fane aktiverer du Iterator .
- I Velg modifikatortype, velg Gjenta til.
- Klikk på + Rule, velg datatypen Float, og angi når iterasjonene skal stoppes. Hvis du for eksempel vil iterere basert på Total records fra en tidligere kommando, kan du angi en regel som stopper iterasjoner når variabelverdien er større enn (>) Total records.
- Legg til kommandoene for å iterere i gruppen.
Trinn 3. Legg til en hendelse for å øke variabelverdien
For å øke variabelverdien for hver iterasjon:
- Som siste trinn i gruppen legger du til en annen Set dynamic chain-variabel hendelse:
- Velg den dynamiske variabelen som er opprettet for antall iterasjoner.
- I Value velger du den samme variabelen.
- For å transformere verdien, klikker du på variabelen i Value, og legger til en Parse Number -transformasjon.
- Legg til en Legg til -transformasjon med verdien 1, og klikk på Godta.
Hvis verdiene eller det nøyaktige antallet verdier er ukjent, kan du iterere basert på om bestemte betingelser er oppfylt. Du kan for eksempel gjenta en kommando mens eller til et spesifisert kriterium er oppfylt.
Trinn 1. Sett opp variabler for de betingede verdiene
For å representere betingelsene som angir verdier som skal itereres over, oppretter du dynamiske kjedevariabler. Hvis en kommando for eksempel inneholder en boolsk nøkkel for å angi om svaret inneholder flere sider, og en heltallsoffsetparameter for å identifisere hver side, kan du opprette variabler for disse verdiene:
- I kjeden legger til en dynamisk variabel for hver betingelse, uten startverdi.
- For å angi startverdiene for variablene når kjeden kjøres, legger du til en Angi dynamisk kjedevariabel hendelse etter kommandoen som skriver ut betingelsenes verdier, , velger de dynamiske variablene og angir startverdiene for dem.
Angi for eksempel verdien True for den boolske tasten og 0 for forskyvningsverdien.
Trinn 2. Legg til en kommandogruppe
Legg til en kommandogruppe for å angi kommandoene som skal itereres, og iterasjonsregelen:
- Etter hendelsen Sett dynamisk kjedevariabel, legg til Kommandogruppe, og dra en kobling mellom dem.
- Velg gruppen, og klikk på Rediger.
- På gruppens Iterasjoner -fane aktiverer du Iterator .
- I Velg modifikatortype, velg Gjenta til.
- Klikk på + Rule, og angi når iterasjonene skal stoppes, for eksempel når den boolske tasten er False.
- Legg til kommandoene for å iterere i gruppen.
Trinn 3. Angi variabelverdier for hver iterasjon
Som siste trinn i gruppen legger du til en ny Set dynamic chain variable -hendelse for å angi eller øke variabelverdiene for hver iterasjon.
- For å angi variabelverdier tilordner du hver variabel til de respektive utgangene fra den tidligere kommandoen. For eksempel, for variabelen Boolean velger du den boolske nøkkelutgangen; for variabelen Offset velger du heltalls-offsetparameteren.
- For å inkrementere en variabel, for eksempel Offset, klikker du på verdien, og deretter bruker du transformasjonen Parse Number og transformasjonen Add med verdien som skal inkrementeres for hver iterasjon.
Iterator-utganger
Du kan bruke en iterators utdata som en egenskap for andre kommandoer eller hendelser senere i kjeden. Utdataene avhenger av iteratormodifikatoren -Liste eller Gjenta til.
| Utdata | Beskrivelse |
|---|---|
| Kommandoiterasjon eller gruppeiterasjon | Variabelverdien for iterasjonen som behandles i løkken |
| Indeks | Det nullbaserte antallet som angir iterasjonen som er behandlet i løkken |
| Første iterasjon |
En boolsk verdi som angir om iterasjonen som behandles er den første i løkken |
| Siste iterasjon | Bare for en List iterator, en boolsk verdi for å angi om iterasjonen som behandles er den siste i løkken |
| Totalt antall iterasjoner | For en List iterator, kun en nullbasert opptelling av det totale antallet iterasjoner som løkken har behandlet |
Hvis du vil bruke en utdata som egenskap for en annen kommando eller hendelse, velger du den under henholdsvis Command Iterator eller Group Iterator.