Bu belge AI tarafından çevrilmiştir. Herhangi bir yanlışlık için lütfen İngilizce sürümüne bakın
Döngü, programlama dillerindeki for/while/forEach gibi yapısal ifadelerle eşdeğerdir. Belirli sayıda veya belirli bir veri koleksiyonu (dizi) üzerinde işlemleri tekrarlamanız gerektiğinde döngü düğümünü kullanabilirsiniz.
Bu, yerleşik bir eklentidir ve kurulum gerektirmez.
İş akışı yapılandırma arayüzünde, akıştaki artı ("+") düğmesine tıklayarak bir "Döngü" düğümü ekleyin:

Bir döngü düğümü oluşturduktan sonra, döngü içinde bir dal oluşturulacaktır. Bu dala istediğiniz sayıda düğüm ekleyebilirsiniz. Bu düğümler, iş akışı bağlamındaki değişkenleri kullanmanın yanı sıra, döngü bağlamındaki yerel değişkenleri de kullanabilir. Örneğin, döngü koleksiyonunda her döngüde işlenen veri nesnesi veya döngü sayısının indeksi (indeks 0'dan başlar). Yerel değişkenlerin kapsamı yalnızca döngü içindedir. Eğer iç içe geçmiş birden fazla döngü varsa, her katmandaki belirli döngünün yerel değişkenlerini kullanabilirsiniz.

Döngü, döngü nesnesinin farklı veri tiplerini farklı şekillerde işler:
Dizi: En yaygın durumdur. Genellikle iş akışı bağlamından bir değişken seçebilirsiniz; örneğin, bir sorgu düğümünden gelen birden fazla veri sonucu veya önceden yüklenmiş bire çok ilişki verileri. Eğer bir dizi seçilirse, döngü düğümü dizideki her bir öğeyi dolaşır ve her yinelemede mevcut öğeyi döngü bağlamındaki yerel bir değişkene atar.
Sayı: Seçilen değişken bir sayı olduğunda, bu sayı yineleme sayısı olarak kullanılır. Sayı değeri yalnızca pozitif tam sayıları destekler; negatif sayılar döngüye girmez ve ondalık kısmın ondalık bölümü göz ardı edilir. Yerel değişkendeki döngü sayısının indeksi aynı zamanda döngü nesnesinin değeridir. Bu değer 0'dan başlar. Örneğin, döngü nesnesi sayısı 5 ise, her döngüdeki nesne ve indeks sırasıyla: 0, 1, 2, 3, 4 olacaktır.
Metin (String): Seçilen değişken bir metin olduğunda, metnin uzunluğu yineleme sayısı olarak kullanılır ve metindeki her karakter indeksine göre işlenir.
Diğer: Diğer değer türleri (nesne türleri dahil) yalnızca tek bir öğe olarak işlenen döngü nesnesi olarak kabul edilir ve yalnızca bir kez döngüye girer. Bu durum genellikle döngü kullanımını gerektirmez.
Değişken seçmenin yanı sıra, sayı ve metin türleri için doğrudan sabit değerler de girebilirsiniz. Örneğin, 5 (sayı türü) girildiğinde, döngü düğümü 5 kez yineler. abc (metin türü) girildiğinde, döngü düğümü 3 kez yineler ve sırasıyla a, b ve c karakterlerini işler. Değişken seçim aracında, kullanmak istediğiniz sabit değerin türünü seçin.
v1.4.0-beta sürümünden itibaren, döngü koşullarıyla ilgili yeni seçenekler eklenmiştir. Döngü koşullarını düğüm yapılandırmasında etkinleştirebilirsiniz.
Koşul
Koşul düğümündeki koşul yapılandırmasına benzer şekilde, yapılandırmaları birleştirebilir ve mevcut döngüdeki değişkenleri (örneğin, döngü nesnesi, döngü indeksi vb.) kullanabilirsiniz.
Kontrol Zamanlaması
Programlama dillerindeki while ve do/while yapılarına benzer şekilde, yapılandırılan koşulun hesaplanmasını her döngü başlamadan önce veya her döngü bittikten sonra seçebilirsiniz. Koşulun sonradan hesaplanması, koşul kontrolünden önce döngü gövdesindeki diğer düğümlerin bir kez çalışmasına olanak tanır.
Koşul Sağlanmadığında
Programlama dillerindeki break ve continue ifadelerine benzer şekilde, döngüden çıkmayı veya bir sonraki yinelemeye devam etmeyi seçebilirsiniz.
v1.4.0-beta sürümünden itibaren, döngü içindeki bir düğümün yürütülmesi başarısız olduğunda (koşullar karşılanmadığında, hata oluştuğunda vb.), sonraki akışı yapılandırma yoluyla belirleyebilirsiniz. Üç farklı işleme yöntemi desteklenir:
throw gibi)break gibi)continue gibi)Varsayılan olarak "İş akışından çık" seçeneği belirlidir. İhtiyacınıza göre değiştirebilirsiniz.
Örneğin, bir sipariş verildiğinde, siparişteki her ürün için stok kontrolü yapılması gerekir. Eğer stok yeterliyse, stok düşülür. Aksi takdirde, sipariş detayındaki ürün geçersiz olarak güncellenir.
Üç adet koleksiyon oluşturun: Ürünler <-(1:Ç)-- Sipariş Detayları --(Ç:1)-> Siparişler. Veri modeli aşağıdaki gibidir:
Siparişler Koleksiyonu
| Alan Adı | Alan Türü |
|---|---|
| Sipariş Detayları | Bire Çok (Sipariş Detayları) |
| Sipariş Toplam Fiyatı | Sayı |
Sipariş Detayları Koleksiyonu
| Alan Adı | Alan Türü |
|---|---|
| Ürün | Çoka Bir (Ürün) |
| Miktar | Sayı |
Ürünler Koleksiyonu
| Alan Adı | Alan Türü |
|---|---|
| Ürün Adı | Tek Satır Metin |
| Fiyat | Sayı |
| Stok | Tam Sayı |
Bir iş akışı oluşturun. Tetikleyici olarak "Koleksiyon Olayı"nı seçin ve "Siparişler" koleksiyonunu "Kayıt eklendikten sonra" tetiklenecek şekilde ayarlayın. Ayrıca, "Sipariş Detayları" koleksiyonunun ve detaylar altındaki "Ürünler" koleksiyonunun ilişki verilerini önceden yüklemek için yapılandırmanız gerekir:

Bir döngü düğümü oluşturun ve döngü nesnesi olarak "Tetikleyici veri / Sipariş Detayları"nı seçin. Bu, Sipariş Detayları koleksiyonundaki her bir kaydı işleyeceği anlamına gelir:

Döngü düğümünün içine, ürünün stokunun yeterli olup olmadığını kontrol etmek için bir "Koşul" düğümü oluşturun:

Eğer stok yeterliyse, "Evet" dalında bir "Hesaplama düğümü" ve bir "Kayıt güncelle" düğümü oluşturun. Hesaplanan düşülmüş stoğu ilgili ürün kaydına güncelleyin:


Aksi takdirde, "Hayır" dalında bir "Kayıt güncelle" düğümü oluşturun ve sipariş detayının durumunu "geçersiz" olarak güncelleyin:

Genel iş akışı yapısı aşağıdaki gibidir:

Bu iş akışını yapılandırıp etkinleştirdikten sonra, yeni bir sipariş oluşturulduğunda, sipariş detaylarındaki ürün stokları otomatik olarak kontrol edilecektir. Eğer stok yeterliyse, stok düşülür; aksi takdirde, sipariş detayındaki ürün geçersiz olarak güncellenir (geçerli bir sipariş toplam fiyatı hesaplanabilmesi için).