Değişkenler
Değişken, bir kez tanımlayıp iş akışının her yerinde tekrar kullandığınız bir değerdir. Aynı e-posta adresini, eşik değerini veya kalıp ifadeyi beş ayrı bloğa tek tek yazmak — sonra değiştiğinde beşini birden düzeltmek — yerine, değeri bir değişkene koyar ve blokları ona yönlendirirsiniz.
Değişkenler, üzerinde çalıştığınız iş akışına aittir. Her birinin bir adı, bir türü ve bir değeri vardır; hepsini editördeki yüzen Değişkenler panelinden yönetirsiniz.
Bu sayfa genel olarak referansları da anlatır — bir bloğun bir değişkeni, bir tetikleyici girdisini veya önceki bir bloğun sonucunu nasıl okuduğunu ve editörün bunları yazmanız için sunduğu araçları.
Değişkenler Panelini Açma
İş akışı editörünün içinden paneli iki şekilde açabilirsiniz:
| Nasıl | Nerede |
|---|---|
| Değişkenler düğmesi | Editörün üstündeki panel başlığında — bkz. Araç Çubuğu ve Kontroller |
| Boş tuvale sağ tıklayın | Menüden Değişkenler'i seçin |
Panel bir sekmede durmak yerine tuvalin üzerinde yüzer; böylece blokları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 veya Esc tuşuna basarak kapatın.
Henüz bir şey eklemediyseniz panelde "Henüz değişken yok" yazar.
Değişken Ekleme
- Değişkenler panelini açın.
- Panel başlığındaki + düğmesine tıklayın.
- Düzenlemeye hazır yeni bir kart belirir; adı variable1 olur (sonra variable2 ve devamı).
- Ad alanını doldurun, bir Tür seçin ve bir Değer girin.
- Kaydet'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ı |
| Tür rozeti | Türü, 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 |
| Ad / Tür / Değer | 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.
Türler
Türü kart üzerindeki Tür açılır listesinden seçersiniz.
| Tür | Ne için kullanılır | Örnek değer |
|---|---|---|
| Düz | Sıradan metin — bir ad, bir e-posta adresi, bir ifade | Haftalık özet |
| Sayı | Tam ya da ondalıklı herhangi bir sayı | 0 |
| Boole | Evet/hayır anahtarı — true veya false olmalıdır | true |
| Nesne | JSON olarak yazılmış, adlandırılmış alanlar kümesi | {} |
| Dizi | JSON olarak yazılmış bir öğe listesi | [] |
Nesne ve Dizi için daha büyük, boyutu değiştirilebilen bir kutu açılır; böylece uzun JSON okunaklı kalır. Diğer türler tek satırlık bir alan kullanır.
Değerin nasıl kullanılacağına uyan türü seçin. Karşılaştırma yaptığınız bir eşik değeri Düz metinde değil Sayı türünde durmalıdır — böylece sayı bekleyen bir blok her zaman sayı alır.
Adlandırma Kuralları
Bir değişkenin adı, ona daha sonra nasıl başvuracağınızı belirler; bu yüzden panel adları yalın ve belirsizliğe yer bırakmayacak biçimde tutar.
| Kural | Kural bozulursa göreceğiniz mesaj |
|---|---|
| Ad boş olamaz | "Ad boş bırakılamaz" |
| Yalnızca harf, rakam ve alt çizgi kullanın — boşluk, nokta veya noktalama işareti olmaz | "Yalnızca harf, rakam ve alt çizgi kullanın" |
İş akışındaki her ad farklı olmalıdır. Büyük-küçük harf farkı sayılmaz — Total ile total çakışır | "Bu adı kullanan başka bir değişken var" |
Mesaj Ad alanının altında görünür; kartın uyarı simgesi ise kart kapalıyken de görünür kalır.
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ı bozar.
Değerler ve Doğrulama
Değer alanı siz yazdıkça türe göre kontrol edilir. Türüne uymayan bir değer hemen işaretlenir ve düzeltilene kadar kaydedemezsiniz.
| Tür | Ne kabul edilir | Uymazsa mesaj |
|---|---|---|
| Düz | Her türlü metin | — |
| Sayı | Bir sayı | "Sayı olmalı" |
| Boole | true veya false | "true ya da false olmalı" |
| Nesne | Bir alan kümesini tanımlayan geçerli JSON | "JSON nesnesi olmalı" veya "Geçersiz JSON" |
| Dizi | Bir listeyi tanımlayan geçerli JSON | "JSON dizisi olmalı" veya "Geçersiz JSON" |
Her türde değeri boş bırakabilirsiniz — değişkeni şimdi tanımlayıp sonra doldurmak istediğinizde işe yarar.
Kaydetme
Değişkenlerde yaptığınız düzenlemeler, siz açıkça kaydedene kadar panelde tutulur. Panelin alt kısmı hangi durumda olduğunuzu söyler.
| Alt kısımdaki metin | Ne anlama gelir |
|---|---|
Şöyle referans verin: <variable.name> | Her şey kayıtlı ve geçerli — bu, değişkenlerinizi nasıl kullanacağınızı hatırlatır |
| Kaydedilmemiş değişiklikler | Henüz kaydedilmemiş düzenlemeleriniz var |
| Kaydetmek için hataları düzeltin | En az bir değişkende ad veya değer sorunu var. Uyarı simgesi olan kartlara bakın |
Kaydet düğmesi yalnızca kaydedilmemiş değişiklik olduğunda ve hata yokken etkinleşir. Kaydederken üzerinde "Kaydediliyor..." yazar.
:::info Değişkenleri kaydetmek tuvalinize dokunmaz Paneldeki Kaydet yalnızca değişkenlerinizi kaydeder. Tuvaldeki bloklar ve bağlantılar olduğu gibi kalır; akışın kendisi için endişelenmeden değişkenleri düzenleyebilirsiniz. :::
Kaydetme gerçekleşmezse şu mesaj belirir: "Değişkenler kaydedilemedi. Lütfen tekrar deneyin." Düzenlemeleriniz panelde kalır, hiçbir şey kaybolmaz.
İş akışı başka bir yerde değiştiyse
Aynı iş akışı başka bir yerde değiştirildiyse — başka bir sekme, başka bir cihaz veya iş akışını kuran Copilot — panel o çalışmanın üzerine yazmayı reddeder. Bunun yerine bir uyarı bandı çıkar:
"Bu iş akışı başka bir yerde değişti. Kaydetmeden önce en güncel hâli yüklemek için yenileyin."
En güncel sürümü panele yüklemek için Yenile'ye tıklayın, ardından düzenlemelerinizi yeniden uygulayıp tekrar kaydedin.
Kaydedilmemiş düzenlemelerle kapatma
Kaydedilmemiş değişiklikleriniz varken paneli kapatırsanız onay istenir: Değişken düzenlemeleri atılsın mı? — "Kaydedilmemiş değişken düzenlemeleriniz var. Kaydetmeden kapatılsın mı?" Geri dönmek için Düzenlemeye devam et'i, kapatıp düzenlemeleri atmak için Vazgeç'i seçin.
Değişkeni Bloklarınızda Kullanma
Bir değişken kaydedildikten sonra, herhangi bir bloğun alanlarından ona başvurmak için adını açılı ayraçlar arasına, başına variable koyarak yazın:
<variable.reportEmail>
İş akışı çalıştığında bu referansın yerine değişkenin değeri konur. Bir bloğ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ürleri
Değişkenler, bir bloğu yönlendirebileceğiniz birkaç şeyden biridir. Hepsi aynı açılı ayraç biçimini kullanır.
| Referans | Neyi gösterir | Örnek |
|---|---|---|
<variable.NAME> | Değişkenler 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 bloğun çıktısı | <agent.content> |
<loop.index>, <loop.currentItem> | Bir döngü bloğunun içinde: geçerli turun numarası ve Her Öğe İçin bloğunda geçerli öğe | <loop.currentItem> |
<parallel.index>, <parallel.currentItem> | Aynısı, bir Paralel bloğunun içinde | <parallel.currentItem> |
<form.submitter.NAME> | Bir formla başlayan çalıştırmada: formu gönderen kişi — id, name veya email | <form.submitter.email> |
<input.NAME>alanları tetikleyiciden gelir. Elle çalışan Başlat bloğunda bunları Ad + Tür olarak kendiniz tanımlarsınız; bir webhook veya API tetikleyicisinde gelen istekle birlikte ulaşırlar. Bkz. İş Akışı Çalıştırma.<blockName.field>, bloğun adını ve çıktılarından birinin adını kullanır — örneğin agent adlı bir Ajan bloğu yanıtını<agent.content>olarak sunar. Blok adındaki büyük-küçük harf ve boşluklar önemli değildir: Arketic Parse File adlı bir blok<arketicparsefile.data>olarak okunur. Her bloğun çıktıları Bloklar sayfasında listelenir.<form.submitter.…>, form herkese açıkken boştur; çünkü kimse oturum açmaz. Bkz. Formlar.
loop, parallel, variable, input ve form sözcüklerinin bu özel anlamları olduğundan, bir bloğa bunlardan biri ad olarak verilemez.
Referansı yazmak yerine seçme
Blok ve alan adlarını ezberlemeniz gerekmez.
Bir alana @ yazın. Bir metin alanında — tek satır, daha uzun bir metin kutusu veya bir mesaj — başta veya bir boşluktan sonra @ yazın. Bu bloktan önce gelen blokları ve her birinin çıktı alanlarını içeren bir liste açılır; her satır ekleyeceği referansı gösterir.
| Tuş | Ne yapar |
|---|---|
| Yazmaya devam etmek | Listeyi blok veya alan adına göre daraltır |
| ↑ / ↓ | Listede gezinir |
| Enter veya Tab | Vurgulanan referansı ekler |
| Esc | Listeyi hiçbir şey eklemeden kapatır |
Liste yalnızca önceki blokları sunar. <variable.…> ve <input.…> referansları elle yazılır. Bir e-posta adresinin içindeki @ listeyi açmaz.
Bir alanı Yukarı akış görünümünden sürükleyin. Bir bloğun yapılandırma görünümünde Girdi sütununun iki görünümü vardır: Yukarı akış ve Çözümlenmiş. Yukarı akış, bu bloktan önce gelen her bloğun çıktılarını listeler. Oradan bir alanı düzenleyicideki bir alana sürükleyin; referansı bıraktığınız yere eklenir. İş akışı henüz çalışmadıysa liste her bloğun bilinen çıktı alanlarını şu notla gösterir: "Aşağıdaki alanlar her bloğun şemasından gelir. Gerçek değerleri ve önizlemeleri doldurmak için bir kez çalıştırın."
Çalıştırmadan önce referansı kontrol etme
İçinde referans bulunan bir alanın altında editör her referansı renkli bir noktayla ve — iş akışı bir kez çalıştıktan sonra — son çalıştırmadaki değeriyle listeler. Değerin tamamını görmek için satırın üzerine gelin. En çok dört referans listelenir; sonrasında "+2 referans daha" yazısını görürsünüz.
| Satırda ne yazıyor | Ne anlama gelir |
|---|---|
| "son çalıştırmadan çözümlendi" | Gösterilen değer, referansın son seferde ürettiği değerdir |
| "son çalıştırmadan — sonrasında iş akışı düzenlendi" | Değer son çalıştırmadan, ancak sonrasında iş akışını değiştirdiniz |
| "önizleme için bir kez çalıştırın" | İş akışı henüz çalışmadı, gösterilecek bir şey yok |
| "bu bloktan henüz çıktı yok" | Referansın gösterdiği blok son çalıştırmada bir şey üretmedi |
| "son çalıştırmada boştu" | Referans geçerli, ancak değer son seferde boştu |
| "“…” adında blok yok — düz metin olarak gönderilecek" | Bu adda bir blok yok — yazımı kontrol edin |
| "“…” içinde böyle bir alan yok — şunları deneyin: … — çalışma anında hiçbir şeye çözümlenir" | Blok var ama o adda bir çıktısı yok. Mesaj, bloğun sahip olduğu çıktıları önerir |
"input değeri — çalışma anında çözümlenir" (variable ve loop için de) | Değer yalnızca iş akışı çalışırken vardır, bu yüzden önizlenemez |
Referansta fonksiyonlar
Bir referans, sonuna bir fonksiyon eklenerek değerini kullanılmadan önce değiştirebilir:
<agent.content.upper()>
<input.orderDate.formatDate("dd.MM.yyyy")>
<variable.tags.join(", ")>
Yazmadan eklemek için alanın altındaki referans satırının sonunda bulunan fx düğmesine tıklayın ve listeden bir fonksiyon seçin. Fonksiyon o referansın sonuna eklenir.
| Fonksiyon | Ne yapar |
|---|---|
first() | Listenin ilk öğesi |
last() | Listenin son öğesi |
length() | Bir listede kaç öğe, bir metinde kaç karakter olduğu |
join(", ") | Listeyi, verdiğiniz ayırıcıyla tek satırda birleştirir |
split(",") | Metni bir ayırıcıdan bölerek listeye çevirir |
upper() | BÜYÜK HARF. Türkçe metinde dili belirtin: upper("tr") |
lower() | küçük harf. Türkçe metinde dili belirtin: lower("tr") |
trim() | Baştaki ve sondaki boşlukları siler |
replace("a", "b") | Bir metin parçasının geçtiği her yeri başkasıyla değiştirir |
default("—") | Asıl değer yoksa veya boşsa bunun yerine bu değeri kullanır |
formatDate("dd.MM.yyyy") | Tarihi biçimlendirir. Kalıp yyyy, MM, dd, HH, mm ve ss ile kurulur |
round() | Sayıyı yuvarlar; round(2) iki ondalık basamak bırakır |
Birkaç kural:
- Fonksiyonlar art arda eklenebilir ve soldan sağa çalışır:
<input.name.trim().upper("tr")>. - Parantezin içine tırnak içinde sabit metin veya bir sayı yazılır — başka bir referans yazılamaz.
- Fonksiyon en sonda gelir. Bir fonksiyondan sonra alan okunamaz:
<agent.items.first().name>çalışmaz. - Fonksiyonlar her tür referansta çalışır — blok çıktıları,
<input.…>,<variable.…>ve döngü değerleri. - Bir bloğa verilen referansta yanlış yazılmış bir fonksiyon, alanın altında hemen işaretlenir: "“…” adında bir fonksiyon yok. Kullanılabilir olanlar: …". Parantez içindeki değer sayısı yanlışsa bir örnekle birlikte "“…” … argüman alır, … verildi." mesajı çıkar. Referansın türü ne olursa olsun, yanlış bırakılan bir fonksiyon iş akışı çalıştığında adımın hata vermesine yol açar.
:::tip Çalıştırma sorunlarının çoğu veri sorunudur Bir çalıştırma başarısız olduğunda genellikle sorun bir bloğun bozulması değildir — bir referansın orada olmayan bir değeri göstermesidir: adı değiştirilmiş bir blok, ulaşmamış bir tetikleyici alanı, yanlış yazılmış bir değişken adı. Çalıştırmayı Kayıtlar bölümünde açın ve başarısız adımın Girdi ve Çıktı kısımlarını okuyun. Beklediğiniz değerin tam orada eksik olduğunu görürsünüz. :::
Çalıştırma Sırasında Değişken Okuma ve Yazma
Değişkenler yalnızca sabit ayarlar değildir — bir iş akışı çalışırken de onları okuyup güncelleyebilir. Bunun için blok paletinin Veri kategorisindeki Değişkenler bloğu kullanılır.
| Alan | Ne yapar |
|---|---|
| İşlem | Oku değişkenin o anki değerini getirir, Yaz değerini ayarlar |
| Değişken adı | Hangi değişkenin okunacağı veya yazılacağı |
| Değer (yalnız yazmada) | Saklanacak değer. Yalnızca işlem Yaz olduğunda görünür |
Bloğun sonucu value olur; sonraki bir adım bunu <blockName.value> ile okur.
Bu, bir değeri döngü boyunca taşımak veya son bir blok kullanmadan önce bir sonucu adım adım oluşturmak için kullanışlıdır.
İyi Uygulamalar
- Adı klavye için değil, okuyan için seçin.
reportRecipientne tuttuğunu söyler;v2söylemez. - Aksi halde tekrar edeceğiniz her şeyi bir değişkene koyun — e-posta adresleri, eşik değerleri, kalıp ifadeler, sabit bir etiket. Böylece tek bir düzenleme, onu kullanan tüm blokları günceller.
- Türleri doğru tutun. Bir değer sayıysa onu Sayı yapın. Doğrulama, uyumsuzluğu bir çalıştırmadan önce yakalamak için oradadır.
- Değişkenleri gizli bilgiler için kullanmayın. API anahtarları ve hesap oturumları Bağlantılar bölümüne aittir; orada güvenle saklanır ve size bir daha gösterilmez.
- Yeniden adlandırırken dikkatli olun. Bir değişkeni veya bloğu yeniden adlandırırsanız eski adı kullanan her referansı güncelleyin; aksi halde o bloklar artık var olmayan bir şeyi arar.