Bu belge yapay zeka tarafından çevrilmiştir. Doğru bilgi için İngilizce sürüme bakın.
Onay, ilgili verilerin durumuna karar vermek için insan tarafından başlatılan ve insan tarafından işlenen özel bir süreç formudur. Genellikle ofis otomasyonu veya diğer manuel karar verme işlerinin süreç yönetiminde kullanılır; örneğin "izin talebi", "masraf iadesi onayı" ve "hammadde satın alma onayı" gibi senaryolar için manuel süreçler oluşturulabilir ve yönetilebilir.
Onay eklentisi, özel bir iş akışı türü (tetikleyici) olan "Onay (olay)" ve bu sürece özel "Onay" düğümü sağlar. NocoBase'in benzersiz özel koleksiyonları ve özel bloklarıyla birleştiğinde, çeşitli onay senaryoları hızlı ve esnek bir şekilde oluşturulabilir ve yönetilebilir.
Bir iş akışı oluştururken "Onay" türünü seçerek bir onay iş akışı oluşturabilirsiniz:

Ardından, iş akışı yapılandırma arayüzünde tetikleyiciye tıklayarak daha fazla yapılandırma için açılır pencereyi açın.

NocoBase'in onay eklentisi esneklik üzerine tasarlanmıştır ve herhangi bir özel koleksiyon ile birlikte kullanılabilir. Yani onay yapılandırması için veri modelini tekrar yapılandırmaya gerek yoktur, doğrudan oluşturulmuş olan koleksiyonlar yeniden kullanılır. Bu nedenle, tetikleyici yapılandırmasına girdikten sonra, öncelikle bu sürecin hangi koleksiyonun verileri üzerinde onay yürüteceğini belirlemek için bir koleksiyon seçmeniz gerekir:

İş verileri için bir onay başlatırken aşağıdaki iki tetikleme yönteminden birini seçebilirsiniz:
Veri kaydedilmeden önce
Gönderilen veriler kaydedilmeden önce onayı başlatır. Verilerin ancak onaylandıktan sonra kaydedilmesi gereken senaryolar için uygundur. Bu modda, onay başlatıldığındaki veriler yalnızca geçici verilerdir ve ancak onay geçtikten sonra ilgili koleksiyona resmi olarak kaydedilir.
Veri kaydedildikten sonra
Gönderilen veriler kaydedildikten sonra onayı başlatır. Verilerin önce kaydedilip sonra onaylanabildiği senaryolar için uygundur. Bu modda, onay başlatıldığında veriler ilgili koleksiyona zaten kaydedilmiştir ve onay sürecindeki değişiklikler de kaydedilecektir.
Sistemde onayın başlatılabileceği konumu seçebilirsiniz:
Yalnızca veri bloklarında başlat
Bu koleksiyonun herhangi bir form bloğu eylemini bu iş akışına bağlayarak onay başlatabilir ve tek bir verinin onay bloğunda onay sürecini işleyip takip edebilirsiniz. Genellikle iş verileri için uygundur.
Hem veri bloklarında hem de Yapılacaklar Merkezi'nde başlatılabilir
Veri bloklarına ek olarak, genel Yapılacaklar Merkezi'nde de onay başlatabilir ve işleyebilirsiniz. Bu genellikle idari veriler için uygundur.
Hangi kullanıcıların bu onayı başlatabileceğine karar vermek için kullanıcı kapsamına dayalı izinler yapılandırabilirsiniz:
Tüm kullanıcılar
Sistemdeki tüm kullanıcılar bu onayı başlatabilir.
Yalnızca seçilen kullanıcılar
Yalnızca belirtilen kapsamdaki kullanıcıların bu onayı başlatmasına izin verilir, çoklu seçim yapılabilir.

Son olarak, başlatıcının form arayüzünü yapılandırmanız gerekir. Bu arayüz, onay merkezi bloğundan başlatırken ve kullanıcı geri çektikten sonra yeniden başlatırken yapılacak gönderim işlemleri için kullanılacaktır. Yapılandırma düğmesine tıklayarak açılır pencereyi açın:

Başlatıcının arayüzü için bağlı koleksiyona dayalı bir doldurma formu veya ipucu ve rehberlik amaçlı açıklama metni (Markdown) ekleyebilirsiniz. Formun eklenmesi zorunludur, aksi takdirde başlatıcı bu arayüze girdiğinde işlem yapamayacaktır.
Bir form bloğu ekledikten sonra, normal form yapılandırma arayüzünde olduğu gibi, ilgili koleksiyonun alan bileşenlerini ekleyebilir ve formun doldurulması gereken içeriğini düzenlemek için bunları istediğiniz gibi sıralayabilirsiniz:

Doğrudan gönder düğmesinden farklı olarak, geçici depolama süreçlerini desteklemek için "Taslak Kaydet" işlem düğmesi de ekleyebilirsiniz:

Eğer bir onay iş akışı başlatıcının geri çekmesine izin veriyorsa, başlatıcı arayüzü yapılandırmasında "Geri Çek" düğmesini etkinleştirmeniz gerekir:

Etkinleştirildikten sonra, bu iş akışından başlatılan onay, herhangi bir onaylayan işlem yapmadan önce başlatıcı tarafından geri çekilebilir. Ancak sonraki herhangi bir onay düğümünde yapılandırılan bir onaylayan işlem yaptıktan sonra artık geri çekilemez.
Geri çekme düğmesini etkinleştirdikten veya sildikten sonra, tetikleyici yapılandırma açılır penceresinde kaydet ve gönder düğmesine tıklamanız gerekir ki değişiklikler etkili olsun.
Yapılacaklar Merkezi'ndeki "Başvurularım" listesindeki görev kartlarını yapılandırmak için kullanılabilir.

Kart üzerinde gösterilmesini istediğiniz iş alanlarını (ilişki alanları hariç) veya onay ile ilgili bilgileri özgürce yapılandırabilirsiniz.
Onay başvurusu oluşturulduktan sonra, Yapılacaklar Merkezi listesinde özelleştirilmiş görev kartını görebilirsiniz:

Anlık Görüntü (Snapshot)
Onay sürecinde, başvuranın ve onaylayanların içeri girdiklerinde gördükleri kayıt durumu ve gönderimden sonra yalnızca kendi değiştirdikleri kaydı görmeleridir; başkalarının daha sonra yaptığı güncellemeleri görmezler.
En Güncel (Latest)
Onay sürecinde, başvuran ve onaylayanlar tüm süreç boyunca, işlem yapmadan önceki kayıt durumu ne olursa olsun, her zaman kaydın en güncel sürümünü görürler. Süreç bittikten sonra kaydın nihai sürümünü göreceklerdir.
Bir onay iş akışında, onaylayanların başlatılan onayı işlemesi (onaylama, reddetme veya geri gönderme) için operasyonel mantığı yapılandırmak üzere özel "Onay" düğümünü kullanmanız gerekir. "Onay" düğümü yalnızca onay iş akışlarında kullanılabilir. Ayrıntılar için Onay Düğümü bölümüne bakın.
Eğer bir onay iş akışında hiç "Onay" düğümü yoksa, bu süreç otomatik olarak onaylanmış sayılacaktır.
Bir onay iş akışını yapılandırıp etkinleştirdikten sonra, kullanıcıların gönderim sırasında onay başlatabilmesi için bu iş akışını ilgili koleksiyonun form gönder düğmesine bağlayabilirsiniz:

Bundan sonra, kullanıcının bu formu göndermesi ilgili onay iş akışını tetikleyecektir. Gönderilen veriler ilgili koleksiyona kaydedilmesinin yanı sıra, sonraki onay personelinin incelemesi için onay akışına anlık görüntü olarak kaydedilir.
Onay başlatma düğmesi şu anda yalnızca yeni ekleme veya güncelleme formlarındaki "Gönder" (veya "Kaydet") düğmesini desteklemektedir. "İş akışını tetikle" düğmesini desteklemez (bu düğme yalnızca "Özel eylem olayları"na bağlanabilir).
Yapılacaklar Merkezi, kullanıcıların yapılacak görevleri görüntülemesi ve işlemesi için birleşik bir giriş noktası sağlar. Mevcut kullanıcı tarafından başlatılan onaylara ve yapılacak görevlere üst araç çubuğundaki Yapılacaklar Merkezi'nden girilebilir ve sol taraftaki kategori navigasyonu aracılığıyla farklı türdeki görevler görüntülenebilir.





Veri bloğundan başlatırken şu şekilde çağrı yapabilirsiniz (posts koleksiyonu oluşturma düğmesi örneği):
Buradaki URL parametresi triggerWorkflows iş akışının key değeridir, 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:

Çağrı başarılı olduktan sonra, ilgili posts koleksiyonunun onay iş akışı tetiklenecektir.
Harici çağrılar da kullanıcı kimliğine dayanması gerektiğinden, HTTP API üzerinden çağrı yaparken normal arayüzden gönderilen isteklerle aynı şekilde kimlik doğrulama bilgileri sağlanmalıdır. Buna Authorization istek başlığı veya token parametresi (girişten elde edilen token) ve X-Role istek başlığı (kullanıcının mevcut rol adı) dahildir.
Eğer bu eylemdeki bire bir ilişki verileri (bire çok henüz desteklenmiyor) için bir olayı tetiklemeniz gerekiyorsa, parametrede ! kullanarak ilişki alanının tetikleyici verisini belirtebilirsiniz:
Yukarıdaki çağrı başarılı olduğunda, ilgili categories koleksiyonunun onay olayı tetiklenecektir.
HTTP API üzerinden eylem sonrası olayları tetiklerken, iş akışının etkin durumuna ve koleksiyon yapılandırmasının eşleşip eşleşmediğine dikkat etmelisiniz, aksi takdirde çağrı başarılı olmayabilir veya hata oluşabilir.
Parametreler
collectionName: Onay başlatılacak hedef koleksiyon adı, zorunlu.workflowId: Onay başlatmak için kullanılan iş akışı ID'si, zorunlu.data: Onay başlatılırken oluşturulan koleksiyon kaydı alanları, zorunlu.status: Onay başlatılırken oluşturulan kayıt durumu, zorunlu. Seçenekler:
0: Taslak, kaydedildiğini ancak onaya sunulmadığını belirtir.2: Onaya sun, başlatıcının onay başvurusunu gönderdiğini ve onaya girdiğini belirtir.Başlatılan (veya geri çekilen) onay taslak durumundayken, aşağıdaki arayüz üzerinden tekrar kaydedebilir veya gönderebilirsiniz:
Başlatıcı, şu anda onayda olan kayıtları aşağıdaki arayüz üzerinden geri çekebilir:
Parametreler
<approval id>: Geri çekilecek onay kaydı ID'si, zorunlu.Onay süreci bir onay düğümüne girdikten sonra, mevcut onaylayan için bir yapılacak görev oluşturulur. Onaylayan, onay görevini arayüz üzerinden tamamlayabileceği gibi HTTP API çağrısı ile de tamamlayabilir.
Yapılacak görevler onay işlem kayıtlarıdır, aşağıdaki arayüz üzerinden mevcut kullanıcının tüm onay işlem kayıtlarını alabilirsiniz:
Burada approvalRecords bir koleksiyon kaynağı olarak filter, sort, pageSize ve page gibi genel sorgu koşullarını da kullanabilir.
Parametreler
<record id>: İşlem yapılacak onay kaydı ID'si, zorunlu.status: Onay işlem durumu, 2 "Onayla", -1 "Reddet" anlamına gelir, zorunlu.comment: Onay işlemi açıklaması, isteğe bağlı.data: Onaylandıktan sonra mevcut onay düğümünün bulunduğu koleksiyon kaydında yapılan değişiklikleri belirtir, isteğe bağlı (yalnızca onaylandığında geçerlidir).v1.9.0 sürümünden önce, geri gönderme "Onayla" ve "Reddet" ile aynı arayüzü kullanıyordu ve "status": 1 geri göndermeyi temsil ediyordu.
v1.9.0 sürümünden itibaren geri gönderme için ayrı bir arayüz bulunmaktadır:
Parametreler
<record id>: İşlem yapılacak onay kaydı ID'si, zorunlu.returnToNodeKey: Geri gönderilecek hedef düğüm key'i, isteğe bağlı. Düğümde geri gönderilebilecek düğüm kapsamı yapılandırıldığında, bu parametre ile hangi düğüme geri gönderileceği belirlenebilir. Yapılandırılmadığında bu parametreye değer göndermeye gerek yoktur, varsayılan olarak başlangıç noktasına geri gönderilir ve başlatıcı tarafından yeniden sunulur.Parametreler
<record id>: İşlem yapılacak onay kaydı ID'si, zorunlu.assignee: Devredilecek kullanıcı ID'si, zorunlu.Parametreler
<record id>: İşlem yapılacak onay kaydı ID'si, zorunlu.assignees: Ek imza atacak kullanıcı ID listesi, zorunlu.order: Ek imza sırası, -1 "ben"den önce, 1 "ben"den sonra anlamına gelir.