Bu belge yapay zeka tarafından çevrilmiştir. Doğru bilgi için İngilizce sürüme bakın.
NocoBase yerleşik yaygın veri işlemlerine (ekleme, silme, düzenleme, görüntüleme vb.) sahiptir. Bu işlemler karmaşık iş ihtiyaçlarını karşılayamadığında, bir iş akışında özel işlem olayını kullanabilir ve bu olayı bir sayfa bloğundaki "İş Akışını Tetikle" düğmesine bağlayabilirsiniz; kullanıcı tıkladığında özel bir işlem iş akışı tetiklenecektir.
Bir iş akışı oluştururken "Özel İşlem Olayı"nı seçin:

v1.6.0+
Bağlam türünün farklı olması, bu iş akışının hangi bloklardaki düğmelere bağlanabileceğini belirler:

Bağlam türü tek kayıt veya çoklu kayıt olduğunda, veri modelinin bağlanacağı koleksiyonu seçmeniz gerekir:

İş akışında tetikleyici veri satırının ilişkisel verilerini kullanmanız gerekiyorsa, buradan derin ilişkisel alanları seçebilirsiniz:

Bu alanlar, olay tetiklendikten sonra iş akışında kullanılabilmesi için otomatik olarak iş akışı bağlamına önceden yüklenecektir.
İş akışında yapılandırılan bağlam türüne bağlı olarak, farklı bloklardaki işlem düğmesi yapılandırmaları da farklılık gösterir.
v1.6.0+
İşlem panellerine ve diğer veri bloklarına "İş Akışını Tetikle" düğmesi eklenebilir:



Düğme eklendikten sonra, daha önce oluşturulan bağlamsız iş akışını bağlayın; işlem panelindeki düğmeyi örnek alırsak:


Herhangi bir veri bloğunda, tek kayıt işlemlerinin bulunduğu işlem çubuğuna "İş Akışını Tetikle" düğmesi eklenebilir; örneğin formlar, tablo veri satırları, detaylar vb.:



Düğme eklendikten sonra daha önce oluşturulan iş akışını bağlayın:


Bundan sonra bu düğmeye tıklandığında ilgili özel işlem olayı tetiklenecektir:

v1.6.0+
Tablo bloğunun işlem çubuğuna "İş Akışını Tetikle" düğmesi eklerken ek bir seçenek sunulur; bağlam türünü "Bağlamsız" veya "Çoklu kayıt" olarak seçebilirsiniz:

"Bağlamsız" seçildiğinde bu bir genel olaydır ve yalnızca bağlamsız türdeki iş akışları bağlanabilir.
"Çoklu kayıt" seçildiğinde, çoklu kayıt türündeki iş akışları bağlanabilir ve veriler çoklu seçildikten sonra toplu işlemler için kullanılabilir (şu anda yalnızca tablolar tarafından desteklenmektedir). Bu durumda seçilebilecek iş akışı kapsamı, yalnızca mevcut veri bloğunun koleksiyonuyla eşleşecek şekilde yapılandırılmış iş akışlarıdır:

Düğmeye tıklandığında tetikleme gerçekleşmesi için tablodaki bazı veri satırlarının seçilmiş olması gerekir, aksi takdirde iş akışı tetiklenmeyecektir:

Örneğin, bir "Numune" koleksiyonumuz olsun; "Toplandı" (durum) olan numuneler için bir "İncelemeye Gönder" işlemi sunmamız gerekiyor. İncelemeye gönderme işlemi önce numunenin temel bilgilerini kontrol edecek, ardından bir "İnceleme Kaydı" verisi oluşturacak ve numune durumunu "İncelemeye Gönderildi" olarak değiştirecektir. Bu süreçler dizisi basit "ekle, sil, düzenle, sorgula" düğme tıklamalarıyla tamamlanamaz; bu durumda gerçekleştirmek için özel işlem olayını kullanabiliriz.
Önce bir "Numune" koleksiyonu ve bir "İnceleme Kaydı" koleksiyonu oluşturun ve numune tablosuna temel test verilerini girin:

Ardından bir "Özel İşlem Olayı" iş akışı oluşturun; işlem sürecinden zamanında geri bildirim almanız gerekiyorsa senkron modu seçebilirsiniz (senkron modda manuel işlem gibi asenkron türdeki düğümler kullanılamaz):

Tetikleyici yapılandırmasında koleksiyon olarak "Numune"yi seçin:

İş ihtiyaçlarına göre süreçteki mantığı düzenleyin; örneğin gösterge parametresi 90'dan büyük olduğunda incelemeye göndermeye izin verin, aksi takdirde ilgili sorun hakkında uyarı verin:

"Yanıt Mesajı" düğümü, istemciye geri gönderilecek uyarı bilgileri için senkron özel işlem olaylarında kullanılabilir. Asenkron modda kullanılamaz.
Süreci yapılandırıp etkinleştirdikten sonra tablo arayüzüne dönün ve tablonun işlem sütununa "İş Akışını Tetikle" düğmesini ekleyin:

Ardından düğmenin yapılandırma menüsünden iş akışı bağlamayı seçin ve yapılandırma penceresini açın:

Daha önce etkinleştirilen iş akışını ekleyin:

Gönderdikten sonra düğme metnini "İncelemeye Gönder" gibi işlem adıyla değiştirin; yapılandırma süreci tamamlanmıştır.
Kullanırken, tabloda herhangi bir numune verisini seçin ve "İncelemeye Gönder" düğmesine tıklayarak özel işlem olayını tetikleyin. Daha önce düzenlenen mantığa göre, numune gösterge parametresi 90'dan küçükse tıklandığında aşağıdaki gibi bir uyarı verilecektir:

Gösterge parametresi 90'dan büyükse süreç normal şekilde yürütülecek, "İnceleme Kaydı" verisi oluşturulacak ve numune durumu "İncelemeye Gönderildi" olarak değiştirilecektir:

Böylece basit bir özel işlem olayı tamamlanmış olur. Benzer şekilde, sipariş işleme, rapor gönderme gibi karmaşık işlemleri olan işler için de özel işlem olayları aracılığıyla uygulama yapılabilir.
Özel işlem olaylarının tetiklenmesi yalnızca kullanıcı arayüzü işlemleriyle sınırlı değildir, HTTP API çağrıları aracılığıyla da tetiklenebilir. Özellikle özel işlem olayları, tüm koleksiyon işlemleri için iş akışlarını tetiklemek üzere yeni bir işlem türü sağlar: trigger; bu, NocoBase standart işlem API'si kullanılarak çağrılabilir.
Harici çağrılar da kullanıcı kimliğine dayanması gerektiğinden, HTTP API aracılığıyla çağrı yaparken normal arayüzden gönderilen isteklerle tutarlı olarak; Authorization istek başlığı veya token parametresi (oturum açarak elde edilen token) ve X-Role istek başlığı (kullanıcının mevcut rol adı) dahil olmak üzere kimlik doğrulama bilgilerinin sağlanması gerekir.
Bağlamsız iş akışlarının tetikleme işlemi workflows kaynağına yönelik olmalıdır:
Örnekteki gibi düğme ile tetiklenen bir iş akışı şu şekilde çağrılabilir:
Bu işlem tek bir veriye yönelik olduğundan, mevcut veriler üzerinde çağrı yaparken veri satırının ID'sini belirtmeniz ve URL'deki <:id> kısmını değiştirmeniz gerekir.
Eğer bir form üzerinden çağrılıyorsa (yeni ekleme veya güncelleme gibi), yeni veri ekleme formu için ID iletilmeyebilir ancak yürütme bağlamı verisi olarak gönderilen verilerin iletilmesi gerekir:
Güncelleme formu için hem veri satırının ID'sinin hem de güncellenen verilerin iletilmesi gerekir:
Hem ID hem de veri birlikte iletilirse, önce ID'ye karşılık gelen veri satırı yüklenecek, ardından nihai tetikleyici veri bağlamını elde etmek için iletilen veri nesnesindeki özellikler orijinal veri satırının üzerine yazılacaktır.
İlişkisel veriler iletilirse onlar da üzerine yazılacaktır; özellikle ilişkisel veri öğelerinin önceden yüklenmesi yapılandırılmışsa, ilişkisel verilerin beklenmedik şekilde üzerine yazılmasını önlemek için iletilen verilerin dikkatli bir şekilde işlenmesi gerekir.
Ayrıca, URL parametresi triggerWorkflows iş akışının key'idir; birden fazla iş akışı virgülle ayrılır. Bu key, iş akışı tuvalinin üst kısmındaki iş akışı adının üzerine fareyle gelindiğinde elde edilebilir:

Yukarıdaki çağrı başarılı olduktan sonra ilgili samples koleksiyonunun özel işlem olayı tetiklenecektir.
HTTP API çağrısı yoluyla bir işlem olayını tetiklerken, iş akışının etkinleştirme durumuna ve koleksiyon yapılandırmasının eşleşip eşleşmediğine de dikkat etmeniz gerekir; aksi takdirde çağrı başarılı olmayabilir veya hata oluşabilir.
Tek kayıt çağrı yöntemine benzer ancak iletilen verilerin yalnızca birden fazla birincil anahtar parametresine (filterByTk[]) ihtiyacı vardır ve data kısmının iletilmesine gerek yoktur:
Bu çağrı, çoklu kayıt modundaki özel işlem olayını tetikleyecek ve id'si 1 ve 2 olan verileri tetikleyici bağlamındaki veriler olarak kullanacaktır.