Ana içeriğe geç

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ılNerede
Değişkenler düğmesiEditörün üstündeki panel başlığında — bkz. Araç Çubuğu ve Kontroller
Boş tuvale sağ tıklayınMenü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​

  1. Değişkenler panelini açın.
  2. Panel başlığındaki + düğmesine tıklayın.
  3. Düzenlemeye hazır yeni bir kart belirir; adı variable1 olur (sonra variable2 ve devamı).
  4. Ad alanını doldurun, bir Tür seçin ve bir Değer girin.
  5. 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.

KarttaNe gösterir
BaşlıkDeğişkenin adı
Tür rozetiTürü, başlığın sağında
Uyarı simgesiO değişkende bir sorun varsa adın yanında belirir — kart kapalıyken bile fark edersiniz
Çöp kutusu simgesiDeğişkeni siler
Ad / Tür / DeğerKart 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ürNe için kullanılırÖrnek değer
DüzSıradan metin — bir ad, bir e-posta adresi, bir ifadeHaftalık özet
SayıTam ya da ondalıklı herhangi bir sayı0
BooleEvet/hayır anahtarı — true veya false olmalıdırtrue
NesneJSON olarak yazılmış, adlandırılmış alanlar kümesi{}
DiziJSON 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.

ipucu

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.

KuralKural 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.

uyarı

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ürNe kabul edilirUymazsa mesaj
DüzHer türlü metin—
SayıBir sayı"Sayı olmalı"
Booletrue veya false"true ya da false olmalı"
NesneBir alan kümesini tanımlayan geçerli JSON"JSON nesnesi olmalı" veya "Geçersiz JSON"
DiziBir 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 metinNe 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şikliklerHenüz kaydedilmemiş düzenlemeleriniz var
Kaydetmek için hataları düzeltinEn 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.

ReferansNeyi 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 etmekListeyi blok veya alan adına göre daraltır
↑ / ↓Listede gezinir
Enter veya TabVurgulanan referansı ekler
EscListeyi 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ıyorNe 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.

FonksiyonNe 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.

AlanNe yapar
İşlemOku 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. reportRecipient ne tuttuğunu söyler; v2 sö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.

Sonraki Adımlar​