Değişkenler
Değişken, bir kez tanımlayıp workflow'un her yerinde tekrar kullandığınız bir değerdir. Aynı e-posta adresini, eşik değeri veya kalıp ifadeyi beş ayrı block'a tek tek yazmak — sonra değiştiğinde beşini birden düzeltmek — yerine, değeri bir değişkene koyar ve block'ları ona yönlendirirsiniz.
Değişkenler, üzerinde çalıştığınız workflow'a aittir. Her birinin bir adı, bir tipi ve bir değeri vardır; hepsini editördeki yüzen Variables panelinden yönetirsiniz.
Variables Panelini Açma
Workflow editörünün içinden paneli iki şekilde açabilirsiniz:
| Nasıl | Nerede |
|---|---|
| Variables butonu | Editörün üstündeki panel başlığında — bkz. Araç Çubuğu & Kontroller |
| Boş tuvale sağ tıklayın | Menüden Variables seçeneğini seçin |
Panel bir sekmede durmak yerine tuvalin üzerinde yüzer; böylece block'larınızla çalışırken açık tutabilirsiniz.
- Başlığından tutup sürükleyin, istediğiniz yere taşıyın. Pencerenin dışına çıkmaz ve bıraktığınız yeri hatırlar.
- Başlığındaki × ile kapatın.
Henüz bir şey eklemediyseniz panelde "No variables yet" yazar.
Değişken Ekleme
- Variables panelini açın.
- Panel başlığındaki + butonuna tıklayın.
- Düzenlemeye hazır yeni bir kart belirir; adı variable1 olur (sonra variable2 ve devamı).
- Name alanını doldurun, bir Type seçin ve bir Value girin.
- Save'e tıklayın.
Her değişken, açılıp kapanabilen küçük bir karttır. Açmak veya kapatmak için kartın başlığına tıklayın.
| Kartta | Ne gösterir |
|---|---|
| Başlık | Değişkenin adı |
| Tip rozeti | Tipi, başlığın sağında |
| Uyarı simgesi | O değişkende bir sorun varsa adın yanında belirir — kart kapalıyken bile fark edersiniz |
| Çöp kutusu simgesi | Değişkeni siler |
| Name / Type / Value | Kart açıkken görünen üç alan |
Değişkenler ada göre alfabetik sıralanır; bu yüzden bir kart, siz adını değiştirdikçe listede yer değiştirebilir.
Tipler
Tipi kart üzerindeki Type açılır listesinden seçersiniz.
| Tip | Ne için kullanılır | Örnek değer |
|---|---|---|
| Plain | Sıradan metin — bir ad, bir e-posta adresi, bir ifade | Weekly summary |
| Number | Tam ya da ondalıklı herhangi bir sayı | 0 |
| Boolean | Evet/hayır anahtarı — true veya false olmalı | true |
| Object | JSON ile yazılmış, adlandırılmış alanlardan oluşan bir küme | {} |
| Array | JSON ile yazılmış bir liste | [] |
Object ve Array için daha büyük, boyutu değiştirilebilir bir kutu açılır; böylece uzun JSON okunaklı kalır. Diğer tipler tek satırlık bir alan kullanır.
Değerin nasıl kullanılacağına uyan tipi seçin. Karşılaştırma yapacağınız bir eşik değeri Plain metne değil Number'a aittir — böylece sayı bekleyen bir block her seferinde sayı alır.
Adlandırma Kuralları
Değişkenin adı, sonradan ona nasıl atıfta bulunacağınızı belirler; bu yüzden panel adları sade ve tekil tutar.
| Kural | Kural bozulunca göreceğiniz mesaj |
|---|---|
| Ad boş olamaz | "Name cannot be empty" |
| Yalnızca harf, rakam ve alt çizgi kullanın — boşluk, nokta ya da noktalama olmaz | "Use letters, numbers, and underscore only" |
| Workflow içindeki her ad farklı olmalı | "Another variable already uses this name" |
Mesaj Name alanının altında görünür; kartın uyarı simgesi ise kart kapalıyken bile durur.
Adlarda boşluk ve nokta olmamalıdır, çünkü bir referans tek parça olarak yazılır — <variable.reportEmail>. Ortadaki bir boşluk veya nokta referansı bölerek bozar.
Değerler ve Doğrulama
Value alanı, siz yazarken tipine göre kontrol edilir. Tipine uymayan bir değer anında işaretlenir ve düzeltilene kadar kaydedemezsiniz.
| Tip | Neyi kabul eder | Uymazsa çıkan mesaj |
|---|---|---|
| Plain | Her türlü metin | — |
| Number | Bir sayı | "Must be a number" |
| Boolean | true veya false | "Must be true or false" |
| Object | Alan kümesi tanımlayan geçerli JSON | "Must be a JSON object" veya "Invalid JSON" |
| Array | Liste tanımlayan geçerli JSON | "Must be a JSON array" veya "Invalid JSON" |
Değeri boş bırakmak her tip için serbesttir — değişkeni şimdi tanımlayıp değerini sonra doldurmak istediğinizde işinize yarar.
Kaydetme
Değişken düzenlemeleri, siz açıkça kaydedene kadar panelde bekler. Panelin alt kısmı durumu size söyler.
| Alt bilgi yazısı | Ne anlama gelir |
|---|---|
Reference as <variable.name> | Her şey kayıtlı ve geçerli — bu satır, değişkenleri nasıl kullanacağınızı hatırlatır |
| Unsaved changes | Henüz kaydedilmemiş düzenlemeleriniz var |
| Fix errors to save | En az bir değişkende ad veya değer sorunu var. Uyarı simgesi taşıyan kartlara bakın |
Save butonu yalnızca kaydedilmemiş değişiklik varken ve hiç hata yokken kullanılabilir hale gelir. Kaydederken üzerinde "Saving…" yazar.
:::info Değişkenleri kaydetmek tuvalinize dokunmaz Panelin Save butonu yalnızca değişkenlerinizi kaydeder. Tuvaldeki block'lar ve bağlantılar olduğu gibi kalır; böylece akışı bozma endişesi olmadan değişkenlerinizi düzenleyebilirsiniz. :::
Kaydetme tamamlanamazsa bir mesaj çıkar: "Could not save variables. Please try again." Düzenlemeleriniz panelde kalır, hiçbir şey kaybolmaz.
Workflow başka bir yerde değiştiyse
Aynı workflow başka bir yerde değiştirildiyse — başka bir sekmede, başka bir cihazda ya da Copilot onu kurarken — panel o çalışmanın üzerine yazmayı reddeder. Bunun yerine bir bant belirir:
"This workflow changed elsewhere. Refresh to load the latest before saving."
Refresh'e tıklayıp en güncel sürümü panele yükleyin, ardından düzenlemelerinizi tekrar uygulayıp kaydedin.
Kaydedilmemiş düzenlemelerle kapatma
Kaydedilmemiş değişiklikleriniz varken paneli kapatırsanız onay istenir: Discard variable changes? — "You have unsaved variable changes. Close without saving?" Geri dönmek için Keep editing, kapatıp değişiklikleri atmak için Discard seçin.
Block'larınızda Değişken Kullanma
Bir değişken kaydedildikten sonra, adını açılı parantezler içinde variable önekiyle yazarak herhangi bir block'un alanlarından ona atıfta bulunun:
<variable.reportEmail>
Workflow çalıştığında bu referansın yerine değişkenin değeri geçer. Bir block'un değer aldığı her yerde kullanabilirsiniz — bir prompt, bir alıcı, bir URL, bir koşul, bir döngünün ayarları.
Üç referans türü
Değişkenler, bir block'u yönlendirebileceğiniz üç şeyden biridir. Üçü de aynı açılı parantez biçimini kullanır.
| Referans | Neyi gösterir | Örnek |
|---|---|---|
<variable.NAME> | Variables panelinde tanımladığınız bir değişken | <variable.reportEmail> |
<input.NAME> | Çalıştırmanın başladığı verideki bir alan — tetikleyicinin girdisi | <input.customerId> |
<blockName.field> | Daha önceki bir block'un çıktısı | <agent.content> |
<input.NAME>alanları tetikleyiciden gelir. Manuel Start block'unda bunları Name + Type olarak siz tanımlarsınız; webhook veya API tetikleyicisinde gelen istekle birlikte ulaşırlar. Bkz. Workflow Çalıştırma.<blockName.field>, block'un adını ve çıktılarından birinin adını kullanır — örneğin agent adlı bir Agent block'u cevabını<agent.content>olarak sunar. Her block'un çıktıları kendi yapılandırma ekranında listelenir. Bkz. Workflow Oluşturma.
:::tip Çalıştırma sorunlarının çoğu veri sorunudur Bir çalıştırma başarısız olduğunda genellikle bir block bozulmuş değildir — bir referans, orada olmayan bir değeri göstermektedir: adı değişmiş bir block, gelmemiş bir tetikleyici alanı, yanlış yazılmış bir değişken adı. Çalıştırmayı Loglar içinde açın ve başarısız adımın Input ile Output bilgisini okuyun. Beklediğiniz değerin eksik olduğunu tam orada görürsünüz. :::
Çalışma Sırasında Değişken Okuma ve Yazma
Değişkenler yalnızca sabit ayarlar değildir — bir workflow, block paletindeki Data kategorisinde yer alan Variables block'unu kullanarak çalışırken de değişken okuyup güncelleyebilir.
| Alan | Ne yapar |
|---|---|
| Operation | Read değişkenin güncel değerini getirir, Write değeri ayarlar |
| Variable name | Hangi değişkenin okunacağı veya yazılacağı |
| Value | İşlem Write olduğunda saklanacak değer |
Bu, bir döngü boyunca bir değeri taşımak ya da son bir block kullanmadan önce sonucu adım adım biriktirmek için işe yarar.
İyi Uygulamalar
- Klavye için değil, okuyan için adlandırın.
reportRecipientneyi tuttuğunu söyler;v2söylemez. - Tekrar edeceğiniz her şeyi bir değişkene koyun — e-posta adresleri, eşik değerleri, kalıp ifadeler, sabit bir etiket. Sonra tek bir düzenleme onu kullanan tüm block'ları günceller.
- Tipleri doğru tutun. Bir değer sayıysa onu Number yapın. Doğrulama, uyumsuzluğu çalıştırmadan önce yakalamak için vardır.
- Değişkenleri gizli bilgiler için kullanmayın. API anahtarları ve hesap girişleri, güvenle saklandıkları ve size geri gösterilmedikleri Bağlantılar bölümüne aittir.
- Adı dikkatli değiştirin. Bir değişkenin adını değiştirirseniz, eski adı kullanan tüm
<variable.…>referanslarını da güncelleyin; yoksa o block'lar artık var olmayan bir şeyi arar.