BotreamDokümanlar Web sitesi English v0.1.1

Döngü komutları

loop · break · continue

loop Loop

İçindeki komutları tekrarlar.

Blok komutu: loop … endloop.

Tüm türlerde geçerli parametreler

ParametreDeğerVarsayılanAçıklama
--measuretrue / falsefalsePerformans raporu için her turu kaydet: başlangıç, bitiş, robot, birimler, insan süresine karşı robot süresi (Administration → Performance)
--unitcountsayı1Ölçülen turlar: bir turun işlediği iş işlemleri (ör. toplu işteki faturalar)
--humansecondssayıÖlçülen turlar: bir kişinin bu işin bir birimi için ihtiyaç duyduğu saniye
--businessunitmetinÖlçülen turlar: raporlanacak iş birimi (boşsa görevin birimi)

Türler (--type)

--type:range
ParametreDeğerVarsayılanAçıklama
--from zorunlusayı
--to zorunlusayı
--stepsayı1
--variable zorunludeğişken adıGeçerli sayı: --from, sonra --from + --step… --to değerine kadar
--type:times

İçindeki komutları belirli sayıda çalıştırır (0 veya daha az: hiç çalıştırmaz).

ParametreDeğerVarsayılanAçıklama
--times zorunlusayıKaç kez, ör. 5 veya $count$
--indexdeğişken adıTurun sırasını alan değişken, 0'dan başlar (ilk öğe 0'dır, $list[0]$ gibi)
--type:list
ParametreDeğerVarsayılanAçıklama
--list zorunlu$değişken$
--variable zorunludeğişken adı
--indexdeğişken adıTurun sırasını alan değişken, 0'dan başlar (ilk öğe 0'dır, $list[0]$ gibi)
--type:datatable

Bir veri tablosu değişkeninin her satırı için bir kez çalışır (ör. capture --action:gettable, database --action:query veya csv --action:read sonucu).

ParametreDeğerVarsayılanAçıklama
--table zorunlu$değişken$Veri tablosu değişkeni
--variable zorunludeğişken adıGeçerli satır: $row.Column$
--indexdeğişken adıTurun sırasını alan değişken, 0'dan başlar (ilk öğe 0'dır, $list[0]$ gibi)
--type:condition
ParametreDeğerVarsayılanAçıklama
--condition zorunlukoşul
--checkşunlardan biri: before, afterbeforebefore: koşul her turdan önce kontrol edilir (içerik hiç çalışmayabilir); after: içerik önce bir kez çalışır ve koşul her turdan sonra kontrol edilir (do-while)
--type:excelrows
ParametreDeğerVarsayılanAçıklama
--session zorunlumetinÇalışma kitabı açılırken verilen oturum adı Daha önce açılmış bir excel oturumunun adı.
--sheetmetinVarsayılan olarak etkin sayfa
--headertrue / falsetrueİlk satır sütun adlarını içerir
--variable zorunludeğişken adı
--indexdeğişken adıTurun sırasını alan değişken, 0'dan başlar (ilk öğe 0'dır, $list[0]$ gibi)
--type:eachfile
ParametreDeğerVarsayılanAçıklama
--folder zorunlumetinAjan makinesindeki bir klasör.
--filtermetin*.*
--subfoldertrue / falsefalseAlt klasörleri dahil et
--variable zorunludeğişken adı
--indexdeğişken adıTurun sırasını alan değişken, 0'dan başlar (ilk öğe 0'dır, $list[0]$ gibi)
--type:eachfolder
ParametreDeğerVarsayılanAçıklama
--folder zorunlumetinAjan makinesindeki bir klasör.
--subfoldertrue / falsefalseAlt klasörleri dahil et
--variable zorunludeğişken adı
--indexdeğişken adıTurun sırasını alan değişken, 0'dan başlar (ilk öğe 0'dır, $list[0]$ gibi)
--type:queue

Kuyruk boşalana kadar her turda bir tane olmak üzere kuyruktan iş öğeleri alır: turu normal biten öğe tamamlanır, turu başarısız olan öğe başarısız olarak işaretlenir (ve kuyruk izin verdiği sürece daha sonra yeniden denenir); döngü sonraki öğeyle devam eder.

ParametreDeğerVarsayılanAçıklama
--queue zorunlumetinİş kuyruğunun adı (Queues sayfası)
--variable zorunludeğişken adıİş öğesi: $item.Data.Field$, $item.Reference$, $item.Id$, $item.Attempt$
--indexdeğişken adıTurun sırasını alan değişken, 0'dan başlar (ilk öğe 0'dır, $list[0]$ gibi)
--type:mail

Bir posta kutusu klasöründe filtrelere uyan her e-posta için bir kez çalışır, en yeniden başlayarak. Mesajlar döngü başlarken okunur (mail --action:read gibi); içeride mail --action:saveattachments, move, markread veya delete --id:$msg.Id$ o anki mesaj üzerinde çalışır.

ParametreDeğerVarsayılanAçıklama
--server zorunlumetinIMAP sunucusu, ör. imap.gmail.com veya outlook.office365.com
--portsayı993TLS için 993 (olağan), STARTTLS veya şifresiz için 143
--vaultmetinPosta hesabını tutan kasa (Kasalar sayfası); --credential bu durumda içindeki kimlik bilgisinin adıdır
--credential zorunluherhangi bir değerPosta hesabı: --vault içindeki bir kimlik bilgisinin adı (Kasalar sayfasında tutulan kullanıcı adı ve parolası) veya bir kimlik bilgisi değişkeni ($cred$). Gmail, Outlook.com ve Yahoo uygulama şifresi ister; --authtype:oauth2 ile kimlik bilgisi uygulama kaydıdır (client id / client secret)
--securityşunlardan biri: auto, ssl, starttls, noneautoauto: 465/993 portlarında TLS, diğer portlarda sunucu sunuyorsa STARTTLS (parola asla şifrelenmeden gönderilmez); ssl: baştan TLS; starttls: TLS'ye geçmek zorunludur; none: şifresiz (yalnızca iç sunucular)
--ssltrue / false--security parametresinin eski biçimi: false = none, true = TLS veya STARTTLS (ikisi de ayarlıysa --security geçerlidir)
--timeoutsayı60Vazgeçmeden önce posta sunucusunun bekleneceği saniye
--ignoresslerrorstrue / falsefalseHer sunucu sertifikasını kabul et (kendinden imzalı sertifikalı iç sunucular); genel sunucular için false bırakın
--authtypeşunlardan biri: password, oauth2passwordoauth2: parolayla oturum açmanın kapalı olduğu posta kutuları için uygulama kaydıyla Microsoft 365 oturum açma (IMAP.AccessAsApp / SMTP.SendAsApp)
--tenantmetinoauth2: Microsoft 365 dizini, ör. contoso.onmicrosoft.com veya kimliği
--mailboxmetinoauth2: posta kutusu kullanılan adres (send: boşsa --from adresi)
--foldermetinINBOXPosta klasörü, ör. INBOX veya Processed (mail --action:folders bunları listeler)
--unreadtrue / falsetrueYalnızca okunmamış mesajlar
--frommetinYalnızca göndereni bunu içeren mesajlar
--tometinYalnızca alıcıları bunu içeren mesajlar
--subjectmetinYalnızca konusu bunu içeren mesajlar
--bodymetinYalnızca metni bunu içeren mesajlar
--sinceherhangi bir değerYalnızca bu tarihte veya sonrasında alınan mesajlar
--beforeherhangi bir değerYalnızca bu tarihten önce alınan mesajlar
--hasattachmentstrue / falsetrue: yalnızca ekli mesajlar; false: yalnızca eksiz mesajlar
--maxsayı50En fazla bu kadar mesaj
--markreadtrue / falsefalseDöngü başlarken (turlar çalışmadan önce) tüm mesajları okundu olarak işaretle
--variable zorunludeğişken adıO anki mesaj: $msg.Subject$, $msg.From$, $msg.FromName$, $msg.To$, $msg.Cc$, $msg.Date$, $msg.Body$, $msg.HtmlBody$, $msg.IsRead$, $msg.Attachments$, $msg.Id$
--indexdeğişken adıTurun sırasını alan değişken, 0'dan başlar (ilk öğe 0'dır, $list[0]$ gibi)

Örnekler

loop --type:range --from:1 --to:10 --step:1 --variable:i
    log --message:"Index: $i$"
endloop
loop --type:list --list:$myList$ --variable:item
    log --message:"Item: $item$"
endloop
loop --type:condition --condition:$counter$<100
    number --action:increment --name:counter --by:1
endloop

break Break

Geçerli döngüden çıkar.

continue Continue

Döngünün sonraki yinelemesine geçer.

Botream 0.1.1 · Oluşturulma 2026-10-14