Otomasyon Modülü¶
Otomasyon Modülü, süreç içinde betikleri yürüterek veritabanı veya veri modeli güncellemeleri gibi işlemleri gerçekleştirir. Betikler genellikle görevin durumunu belirtmek için $WorkItem.SelectedAction özelliğine bir değer atayarak sona erer.
Otomasyon Betiği Örneği¶
Aşağıdaki JavaScript örneği bir otomasyon betiğini gösterir:
1 2 3 4 5 6 | |
Betik Nesneleri¶
Bu betik Emakin'in arka uç bağlamında yürütülür ve erişilebilir bir tarayıcı DOM bağlamı yoktur; bu nedenle jQuery gibi navigator tabanlı JavaScript kitaplıkları kullanılamaz.
Aşağıdaki nesneler kullanılabilir:
$WorkItemİşlenmekte olan mevcutWorkItemöğe.$InstanceMevcut iş akışı iş akışınınInstanceörneği.$TestModeİş akışının test modunda çalışıp çalışmadığını belirtir. Test modunda şu değeretrueeşitlenir.$PriorityMevcut iş akışı iş akışının iş akışı önceliği: 0 (en düşük) ile 5 (en yüksek)$Initiatorİş akışını başlatanı tanımlar. Bunun modül türündeki görevler içinnullgeçerli olmayabileceğini unutmayın.$Cultureİş akışı iş akışının geçerli kültürü. Başlatanın kültüründen alınır ancak üzerine yazılabilir. Kültür şu biçimdelanguagecode2-country/regioncode2belirtilir. Örnek: (en-USveyatr-TR)$TemplatesHavuz tanımında belirtilen şablonlara erişim sağlar. Metin içeriğini iş akışı iş akışının kültürüne göre oluşturmak için kullanılır.$XmlSüreç veri modeline veya iş akışı verilerine erişim sağlar.$Caseİş akışı bir vaka üzerinde başlatıldıysa, iş akışıCaseiş akışının örneği.$poolVariableAda göre özel tanımlanmış havuz değişkeni. Değişkenler Değişkenler$ServicesJSON veya XML içerik türleriyle SOAP hizmetlerinin çağrılmasını sağlar.$DecisionsSüreç üzerinde karar tablolarını ve modelleri yürütmenizi sağlar.$scriptModuleÖzel tanımlanmış betik modülü. Betik modülleri Betik Modülleri$DomainAlanadı bilgilerine ve iş akışı başlatma veya yeni vaka oluşturma gibi ilgili yöntemlere erişim sağlar.$ActivityStreamSistem tarafından oluşturulan aktivitelerin alanadı aktivite akışına eklenmesini sağlar.$MembershipKullanıcılara ve organizasyon veritabanı nesnelerine erişim sağlar.$Databaseİlişkisel veritabanı işlemlerini gerçekleştirmenizi sağlar.$CryptoKarma oluşturma ve şifreleme gibi kriptografik işlevlere erişim sağlar.$RestJSON veya XML içerik türlerini kullanarak REST hizmetleriyle etkileşim kurulmasını sağlar.$CalendarTakvim kurallarında tarih ekleme veya çıkarma gibi takvim işlevlerine erişim sağlar.$FilesTemel dosyalar için standart dosya deposuna erişim sağlar.$DocumentsBelge arşivine erişim sağlar.$DelegationKullanıcılar arasındaki vekâletleri yönetmek için yöntemler sağlar.$MessagesYeni e-postalar gönderme ve mevcut e-posta iletilerini ayrıştırma işlevi sağlar.$XmlRepositoryİlişkisel olmayan XML deposu veritabanına erişim sağlar.
İş Akışı İş Akışlarını Başlatma¶
Otomasyon Modülü görevleri, aşağıdaki yöntemlerle otomatik iş akışı başlatma için başlangıç noktası olarak kullanılabilir:
Zamanlanmış Değerlendirme: İş akışı değerlendirmesini iş akışlarını belirli aralıklarla başlatacak şekilde yapılandırın. Modül betiği açıkça ayarlamazsa $WorkItem.SelectedActioniş akışı geri alınır. İş akışının ilerlemesini yönetmek için betiğin gerekli işlemleri yaptığından emin olun.
Betikle Başlatma: Diğer süreçleri programlı olarak başlatmak için WorkItem.Initiate yöntemini kullanın.
Birleşim Durumu ve Devam Etme¶
Bir Otomasyon Modülü görevi başlangıç noktası olarak belirlenmemişse ve betik ayarlamıyorsa $WorkItem.SelectedAction, iş akışı bir "birleşim durumu"na geçer ve iş akışı iş akışını otomasyon görevinde süresiz olarak duraklatır. Devam etmek için şu yöntemler kullanılabilir:
Son Tarih: Göreve son tarih atanması, belirlenen zamanda iş akışını devam ettiren bir son tarih eylemini otomatik olarak tetikler.
Zamanlanmış Değerlendirme: Yapılandırılmış bir değerlendirme zamanlaması, koşulları düzenli aralıklarla inceleyerek iş akışının devam edip etmeyeceğini belirleyebilir.
Programatik Olarak Devam Ettirme: WorkItem.ProcessWorkItem yöntemi, duraklatılmış iş akışını zorla sürdürmek için diğer iş akışı iş akışlarından çağrılabilir.